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
Expression categorization:
- isAnnotationConstantExpression
- Determines if argument is an
AnnotationConstantExpression
- isArgumentListExpression
- Determines if argument is an
ArgumentListExpression
- isArrayExpression
- Determines if argument is an
ArrayExpression
- isAttributeExpression
- Determines if argument is an
AttributeExpression
- isBinaryExpression
- Determines if argument is a
BinaryExpression
- isBitwiseNegationExpression
- Determines if argument is a
BitwiseNegationExpression
- isBooleanExpression
- Determines if argument is a
BooleanExpression
- isCastExpression
- Determines if argument is a
CastExpression
- isClassExpression
- Determines if argument is a
ClassExpression
- isClosureExpression
- Determines if argument is a
ClosureExpression
- isConstantExpression
- Determines if argument is a
ConstantExpression
- isConstructorCallExpression
- Determines if argument is a
ConstructorCallExpression
- isDeclarationExpression
- Determines if argument is a
DeclarationExpression
- isElvisOperatorExpression
- Determines if argument is an
ElvisOperatorExpression
- isEmptyExpression
- Determines if argument is an
EmptyExpression
- isFieldExpression
- Determines if argument is a
FieldExpression
- isGStringExpression
- Determines if argument is a
GStringExpression
- isListExpression
- Determines if argument is a
ListExpression
- isMapExpression
- Determines if argument is a
MapExpression
- isMapEntryExpression
- Determines if argument is a
MapEntryExpression
- isMethodCallExpression
- Determines if argument is a
MethodCallExpression
- isMethodPointerExpression
- Determines if argument is a
MethodPointerExpression
- isNamedArgumentListExpression
- Determines if argument is a
NamedArgumentListExpression
- isNotExpression
- Determines if argument is a
NotExpression
- isPostfixExpression
- Determines if argument is a
PostfixExpression
- isPrefixExpression
- Determines if argument is a
PrefixExpression
- isPropertyExpression
- Determines if argument is a
PropertyExpression
- isRangeExpression
- Determines if argument is a
RangeExpression
- isSpreadExpression
- Determines if argument is a
SpreadExpression
- isSpreadMapExpression
- Determines if argument is a
SpreadMapExpression
- isStaticMethodCallExpression
- Determines if argument is a
StaticMethodCallExpression
- isTernaryExpression
- Determines if argument is a
TernaryExpression
- isTupleExpression
- Determines if argument is a
TupleExpression
- isUnaryMinusExpression
- Determines if argument is a
UnaryMinusExpression
- isUnaryPlusExpression
- Determines if argument is a
UnaryPlusExpression
- isVariableExpression
- Determines if argument is a
VariableExpression
General utility: