[Java] Class DefaultTypeCheckingExtension
- org.codehaus.groovy.transform.stc.DefaultTypeCheckingExtension
The default type checking handler is used by the standard type checker and doesn't handle any of the type checking errors by default. This just means that whenever a type checking error is detected, there's no additional information available to the type checker that could help it. The default handler is also capable of handling a collection of delegate handlers. If a list of delegates is set, then the type checker will try all the delegates until one is capable of handling an error.
- Authors:
- Cedric Champeau
- Since:
- 2.1.0
Field Summary
Modifiers | Name | Description |
---|---|---|
protected List<TypeCheckingExtension> | handlers |
Fields inherited from class | Fields |
---|---|
class TypeCheckingExtension | typeCheckingVisitor |
Constructor Summary
Constructor and description |
---|
DefaultTypeCheckingExtension
(StaticTypeCheckingVisitor typeCheckingVisitor) |
Methods Summary
Inherited Methods Summary
Field Detail
protected final List<TypeCheckingExtension> handlers
Constructor Detail
public DefaultTypeCheckingExtension(StaticTypeCheckingVisitor typeCheckingVisitor)
Method Detail
public void addHandler(TypeCheckingExtension handler)
@Override public void afterMethodCall(MethodCall call)
@Override public void afterVisitClass(ClassNode node)
@Override public void afterVisitMethod(MethodNode node)
@Override public boolean beforeMethodCall(MethodCall call)
@Override public boolean beforeVisitClass(ClassNode node)
@Override public boolean beforeVisitMethod(MethodNode node)
@Override public void finish()
@Override public List<MethodNode> handleAmbiguousMethods(List<MethodNode> nodes, Expression origin)
@Override public boolean handleIncompatibleAssignment(ClassNode lhsType, ClassNode rhsType, Expression assignmentExpression)
@Override public boolean handleIncompatibleReturnType(ReturnStatement returnStatement, ClassNode inferredReturnType)
public List<MethodNode> handleMissingMethod(ClassNode receiver, String name, ArgumentListExpression argumentList, ClassNode[] argumentTypes, MethodCall call)
public boolean handleUnresolvedAttribute(AttributeExpression aexp)
public boolean handleUnresolvedProperty(PropertyExpression pexp)
public boolean handleUnresolvedVariableExpression(VariableExpression vexp)
@Override public void onMethodSelection(Expression expression, MethodNode target)
public void removeHandler(TypeCheckingExtension handler)
@Override public void setup()
© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.4.21/html/gapi/org/codehaus/groovy/transform/stc/DefaultTypeCheckingExtension.html