public abstract class GriffonArtifactASTTransformation extends AbstractASTTransformation implements BaseConstants
Modifier and Type | Field and Description |
---|---|
protected static String |
ERROR_CLASS_NODE_NULL |
protected static String |
ERROR_SOURCE_NULL |
COLLECTIONS_CLASS, GRIFFON_APPLICATION_TYPE, INJECT_TYPE, NAMED_TYPE
APPLICATION, BOOLEAN, GRIFFON_CORE_CALLABLEWITHARGS, GRIFFON_CORE_RUNNABLEWITHARGS, INT, JAVA_LANG_CLASS, JAVA_LANG_OBJECT, JAVA_LANG_RUNNABLE, JAVA_LANG_STRING, JAVA_NET_URL, JAVA_UTIL_COLLECTION, JAVA_UTIL_LIST, JAVA_UTIL_MAP, JAVAX_ANNOTATION_NONNULL, JAVAX_ANNOTATION_NULLABLE, JAVAX_INJECT_INJECT, JAVAX_INJECT_NAMED, NAME, R, T, VOID, WILDCARD
Constructor and Description |
---|
GriffonArtifactASTTransformation() |
Modifier and Type | Method and Description |
---|---|
protected abstract String |
getArtifactType() |
protected abstract ASTInjector[] |
getASTInjectors() |
protected abstract org.codehaus.groovy.ast.ClassNode |
getInterfaceNode() |
protected org.codehaus.groovy.ast.ClassNode |
getSuperClassNode(org.codehaus.groovy.ast.ClassNode classNode) |
protected void |
inject(org.codehaus.groovy.ast.ClassNode classNode,
org.codehaus.groovy.ast.ClassNode superClass) |
protected static boolean |
isArtifact(org.codehaus.groovy.ast.ClassNode classNode,
org.codehaus.groovy.control.SourceUnit source,
org.codehaus.groovy.ast.ClassNode artifactType) |
static boolean |
isOrImplements(org.codehaus.groovy.ast.ClassNode fieldType,
org.codehaus.groovy.ast.ClassNode interfaceType) |
protected abstract boolean |
matches(org.codehaus.groovy.ast.ClassNode classNode,
org.codehaus.groovy.control.SourceUnit source) |
protected void |
postInject(org.codehaus.groovy.ast.ClassNode classNode) |
protected void |
transform(org.codehaus.groovy.ast.ClassNode classNode) |
void |
visit(org.codehaus.groovy.ast.ASTNode[] nodes,
org.codehaus.groovy.control.SourceUnit source) |
addDelegateMethods, addError, applicationExpression, applicationProperty, checkNodesForAnnotationAndType, emptyMap, injectApplication, injectedField, injectedField, makeClassSafe, makeClassSafe, makeClassSafe, makeClassSafe0, makeClassSafeWithGenerics, makeClassSafeWithGenerics, makeClassSafeWithGenerics, makeGenericsType, makeGenericsType, makeGenericsType, memberHasValue, needsDelegate, newClass
protected static final String ERROR_CLASS_NODE_NULL
protected static final String ERROR_SOURCE_NULL
public static boolean isOrImplements(org.codehaus.groovy.ast.ClassNode fieldType, org.codehaus.groovy.ast.ClassNode interfaceType)
protected static boolean isArtifact(@Nonnull org.codehaus.groovy.ast.ClassNode classNode, @Nonnull org.codehaus.groovy.control.SourceUnit source, @Nonnull org.codehaus.groovy.ast.ClassNode artifactType)
public void visit(org.codehaus.groovy.ast.ASTNode[] nodes, org.codehaus.groovy.control.SourceUnit source)
visit
in interface org.codehaus.groovy.transform.ASTTransformation
protected void transform(org.codehaus.groovy.ast.ClassNode classNode)
protected void inject(org.codehaus.groovy.ast.ClassNode classNode, org.codehaus.groovy.ast.ClassNode superClass)
protected abstract String getArtifactType()
protected org.codehaus.groovy.ast.ClassNode getSuperClassNode(org.codehaus.groovy.ast.ClassNode classNode)
protected abstract org.codehaus.groovy.ast.ClassNode getInterfaceNode()
protected abstract boolean matches(org.codehaus.groovy.ast.ClassNode classNode, org.codehaus.groovy.control.SourceUnit source)
protected abstract ASTInjector[] getASTInjectors()
protected void postInject(org.codehaus.groovy.ast.ClassNode classNode)