org.codehaus.groovy.classgen
Interface Verifier
Verifies the AST node and adds any defaulted AST code before
bytecode generation occurs.
- author:
- James Strachan
- version:
- $Revision: 13427 $
Method Summary |
void |
addClosureCode(InnerClassNode node)
|
void |
addCovariantMethods(ClassNode classNode)
|
void |
addCovariantMethods(ClassNode classNode, List declaredMethods, Map methodsToAdd, Map oldGenericsSpec)
|
void |
addDefaultParameterConstructors(ClassNode node)
|
void |
addDefaultParameterMethods(ClassNode node)
Creates a new helper method for each combination of default parameter expressions
|
void |
addDefaultParameters(List methods, DefaultArgsAction action)
Creates a new helper method for each combination of default parameter expressions
|
void |
addFieldInitialization(List list, List staticList, FieldNode fieldNode)
|
void |
addInitialization(ClassNode node)
|
void |
addInitialization(ClassNode node, ConstructorNode constructorNode)
|
void |
addPropertyMethod(MethodNode method)
|
void |
addTimeStamp(ClassNode node)
|
void |
call(ArgumentListExpression arguments, def newParams, MethodNode method)
|
static String |
capitalize(String name)
Capitalizes the start of the given bean property name
|
void |
checkReturnInObjectInitializer(List init)
|
def |
cleanParameters(def parameters)
|
ClassNode |
correctToGenericsSpec(Map genericsSpec, GenericsType type)
|
ClassNode |
correctToGenericsSpec(Map genericsSpec, ClassNode type)
|
Map |
createGenericsSpec(ClassNode current, Map oldSpec)
|
Statement |
createGetterBlock(PropertyNode propertyNode, FieldNode field)
|
Statement |
createSetterBlock(PropertyNode propertyNode, FieldNode field)
|
boolean |
equalParametersNormal(MethodNode m1, MethodNode m2)
|
boolean |
equalParametersWithGenerics(MethodNode m1, MethodNode m2, Map genericsSpec)
|
Statement |
filterStatement(Statement statement)
|
List |
filterStatements(List list)
Filters the given statements
|
ClassNode |
getClassNode()
|
MethodNode |
getCovariantImplementation(MethodNode oldMethod, MethodNode overridingMethod, Map genericsSpec)
|
ConstructorCallExpression |
getFirstIfSpecialConstructorCall(Statement code)
|
FieldNode |
getMetaClassField(ClassNode node)
|
MethodNode |
getMethodNode()
|
static long |
getTimestamp(Class clazz)
|
boolean |
isAssignable(ClassNode node, ClassNode testNode)
|
boolean |
methodNeedsReplacement(MethodNode m)
|
FieldNode |
setMetaClassFieldIfNotExists(ClassNode node, FieldNode metaClassField)
|
void |
storeMissingCovariantMethods(ClassNode current, MethodNode method, Map methodsToAdd, Map genericsSpec)
|
void |
visitClass(ClassNode node)
add code to implement GroovyObject
|
void |
visitConstructor(ConstructorNode node)
|
void |
visitField(FieldNode node)
|
void |
visitGenericType(GenericsType genericsType)
|
void |
visitMethod(MethodNode node)
|
void |
visitProperty(PropertyNode node)
|
addClosureCode
void addClosureCode(InnerClassNode node)
-
addCovariantMethods
void addCovariantMethods(ClassNode classNode)
-
addCovariantMethods
void addCovariantMethods(ClassNode classNode, List declaredMethods, Map methodsToAdd, Map oldGenericsSpec)
-
addDefaultParameterConstructors
void addDefaultParameterConstructors(ClassNode node)
-
addDefaultParameterMethods
void addDefaultParameterMethods(ClassNode node)
- Creates a new helper method for each combination of default parameter expressions
addDefaultParameters
void addDefaultParameters(List methods, DefaultArgsAction action)
- Creates a new helper method for each combination of default parameter expressions
addFieldInitialization
void addFieldInitialization(List list, List staticList, FieldNode fieldNode)
-
addInitialization
void addInitialization(ClassNode node)
-
addInitialization
void addInitialization(ClassNode node, ConstructorNode constructorNode)
-
addPropertyMethod
void addPropertyMethod(MethodNode method)
-
addTimeStamp
void addTimeStamp(ClassNode node)
-
call
public void call(ArgumentListExpression arguments, def newParams, MethodNode method)
-
capitalize
public static String capitalize(String name)
- Capitalizes the start of the given bean property name
checkReturnInObjectInitializer
void checkReturnInObjectInitializer(List init)
-
cleanParameters
def cleanParameters(def parameters)
-
correctToGenericsSpec
ClassNode correctToGenericsSpec(Map genericsSpec, GenericsType type)
-
correctToGenericsSpec
ClassNode correctToGenericsSpec(Map genericsSpec, ClassNode type)
-
createGenericsSpec
Map createGenericsSpec(ClassNode current, Map oldSpec)
-
createGetterBlock
Statement createGetterBlock(PropertyNode propertyNode, FieldNode field)
-
createSetterBlock
Statement createSetterBlock(PropertyNode propertyNode, FieldNode field)
-
equalParametersNormal
boolean equalParametersNormal(MethodNode m1, MethodNode m2)
-
equalParametersWithGenerics
boolean equalParametersWithGenerics(MethodNode m1, MethodNode m2, Map genericsSpec)
-
filterStatement
Statement filterStatement(Statement statement)
-
filterStatements
List filterStatements(List list)
- Filters the given statements
getClassNode
public ClassNode getClassNode()
-
getCovariantImplementation
MethodNode getCovariantImplementation(MethodNode oldMethod, MethodNode overridingMethod, Map genericsSpec)
-
getFirstIfSpecialConstructorCall
ConstructorCallExpression getFirstIfSpecialConstructorCall(Statement code)
-
getMetaClassField
FieldNode getMetaClassField(ClassNode node)
-
getMethodNode
public MethodNode getMethodNode()
-
getTimestamp
public static long getTimestamp(Class clazz)
-
isAssignable
boolean isAssignable(ClassNode node, ClassNode testNode)
-
methodNeedsReplacement
boolean methodNeedsReplacement(MethodNode m)
-
setMetaClassFieldIfNotExists
FieldNode setMetaClassFieldIfNotExists(ClassNode node, FieldNode metaClassField)
-
storeMissingCovariantMethods
void storeMissingCovariantMethods(ClassNode current, MethodNode method, Map methodsToAdd, Map genericsSpec)
-
visitClass
public void visitClass(ClassNode node)
- add code to implement GroovyObject
- param:
- node
visitConstructor
public void visitConstructor(ConstructorNode node)
-
visitField
public void visitField(FieldNode node)
-
visitGenericType
public void visitGenericType(GenericsType genericsType)
-
visitMethod
public void visitMethod(MethodNode node)
-
visitProperty
public void visitProperty(PropertyNode node)
-