- org.codehaus.groovy.transform.stc.GroovyTypeCheckingExtensionSupport
-
Base class for type checking extensions written in Groovy. Compared to its superclass, TypeCheckingExtension,
this class adds a number of utility methods aimed at leveraging the syntax of the Groovy language to improve
expressivity and conciseness.
- Since:
- 2.1.0
-
-
Nested Class Summary
Nested classes
Modifiers |
Name |
Description |
static class |
GroovyTypeCheckingExtensionSupport.TypeCheckingDSL |
Event handler registration:
- setup
- Registers closure that runs after the type checker finishes initialization
- finish
- Registers closure that runs after the type checker completes type checking
- beforeVisitClass
- Registers closure that runs before type checking a class
- afterVisitClass
- Registers closure that runs after having finished the visit of a type checked class
- beforeVisitMethod
- Registers closure that runs before type checking a method body
- afterVisitMethod
- Registers closure that runs after type checking a method body
- beforeMethodCall
- Registers closure that runs before the type checker starts type checking a method call
- afterMethodCall
- Registers closure that runs once the type checker has finished type checking a method call
- methodNotFound
- Registers closure that runs when it fails to find an appropriate method for a method call
- ambiguousMethods
- Registers closure that runs when the type checker cannot choose between several candidate methods
- onMethodSelection
- Registers closure that runs when it finds a method appropriate for a method call
- unresolvedVariable
- Registers closure that runs when the type checker finds an unresolved variable
- unresolvedProperty
- Registers closure that runs when the type checker cannot find a property on the receiver
- unresolvedAttribute
- Registers closure that runs when the type checker cannot find an attribute on the receiver
- incompatibleAssignment
- Registers closure that runs when the type checker thinks that the right-hand side of an assignment is incompatible with the left-hand side
- incompatibleReturnType
- Registers closure that runs when the type checker thinks that a return value is incompatibe with the return type
|
-
Methods Summary
-
Inherited Methods Summary
Inherited Methods
Methods inherited from class |
Name |
class AbstractTypeCheckingExtension |
argTypeMatches, argTypeMatches, argTypesMatches, argTypesMatches, delegatesTo, delegatesTo, delegatesTo, firstArgTypesMatches, firstArgTypesMatches, getArguments, getCurrentScope, getEnclosingBinaryExpression, getEnclosingBinaryExpressionStack, getEnclosingClassNode, getEnclosingClassNodes, getEnclosingClosure, getEnclosingClosureStack, getEnclosingMethod, getEnclosingMethodCall, getEnclosingMethodCalls, getEnclosingMethods, getGeneratedMethods, isAnnotatedBy, isAnnotatedBy, isDynamic, isExtensionMethod, isGenerated, isMethodCall, log, makeDynamic, makeDynamic, makeDynamic, makeDynamic, makeDynamic, makeDynamic, newMethod, newMethod, newMethod, newScope, newScope, popEnclosingBinaryExpression, popEnclosingClassNode, popEnclosingClosure, popEnclosingMethod, popEnclosingMethodCall, popTemporaryTypeInfo, pushEnclosingBinaryExpression, pushEnclosingClassNode, pushEnclosingClosureExpression, pushEnclosingMethod, pushEnclosingMethodCall, pushTemporaryTypeInfo, safeCall, scopeExit, scopeExit, setHandled, unique, withTypeChecker |
class TypeCheckingExtension |
addStaticTypeError, afterMethodCall, afterVisitClass, afterVisitMethod, beforeMethodCall, beforeVisitClass, beforeVisitMethod, buildListType, buildMapType, classNodeFor, classNodeFor, existsProperty, existsProperty, extractStaticReceiver, finish, getArgumentTypes, getTargetMethod, getType, handleAmbiguousMethods, handleIncompatibleAssignment, handleIncompatibleReturnType, handleMissingMethod, handleUnresolvedAttribute, handleUnresolvedProperty, handleUnresolvedVariableExpression, isStaticMethodCallOnClass, lookupClassNodeFor, onMethodSelection, parameterizedType, setup, storeType |
-
-
Method Detail
-
public void setDebug(boolean debug)
Copyright © 2003-2021 The Apache Software Foundation. All rights reserved.