public abstract class TypeCheckerPlugin
extends java.lang.Object
Constructor and Description |
---|
TypeCheckerPlugin() |
Modifier and Type | Method and Description |
---|---|
java.util.List<MethodNode> |
findMethod(ClassNode receiver,
java.lang.String name,
ClassNode... args)
This method is called by the type checker whenever it fails to find a method on a receiver.
|
ClassNode |
resolveDynamicVariableType(DynamicVariable variable)
This method is called when the type checker finds a dynamic variable which is not supposed
to be allowed.
|
PropertyNode |
resolveProperty(ClassNode receiver,
java.lang.String propertyName)
This method is called when the type checker cannot find a property on a receiver.
|
protected static Parameter[] |
toParameterArray(ClassNode[] types) |
public java.util.List<MethodNode> findMethod(ClassNode receiver, java.lang.String name, ClassNode... args)
receiver
- a class node for with an undefined method is calledname
- the name of the methodargs
- the inferred arguments types of the method.public ClassNode resolveDynamicVariableType(DynamicVariable variable)
variable
- the dynamic variable for which we want the plugin to resolve the typepublic PropertyNode resolveProperty(ClassNode receiver, java.lang.String propertyName)
receiver
- a class node for which a property wasn't foundpropertyName
- the name of the property