Package org.codehaus.groovy.transform
Class AbstractASTTransformation
java.lang.Object
org.codehaus.groovy.transform.AbstractASTTransformation
- All Implemented Interfaces:
ASTTransformation,org.objectweb.asm.Opcodes
- Direct Known Subclasses:
AutoCloneASTTransformation,BaseScriptASTTransformation,BuilderASTTransformation,CanonicalASTTransformation,DelegateASTTransformation,EqualsAndHashCodeASTTransformation,ExternalizeMethodsASTTransformation,ExternalizeVerifierASTTransformation,ImmutableASTTransformation,IndexedPropertyASTTransformation,InheritConstructorsASTTransformation,LazyASTTransformation,LogASTTransformation,MemoizedASTTransformation,MixinASTTransformation,NotYetImplementedASTTransformation,PackageScopeASTTransformation,ReadWriteLockASTTransformation,SingletonASTTransformation,SortableASTTransformation,SourceURIASTTransformation,SynchronizedASTTransformation,ToStringASTTransformation,TraitASTTransformation,TupleConstructorASTTransformation
public abstract class AbstractASTTransformation
extends Object
implements org.objectweb.asm.Opcodes, ASTTransformation
-
Field Summary
FieldsFields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_RECORD, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM10_EXPERIMENTAL, ASM4, ASM5, ASM6, ASM7, ASM8, ASM9, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SOURCE_DEPRECATED, SOURCE_MASK, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V9 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected booleancheckIncludeExclude(AnnotationNode node, List<String> excludes, List<String> includes, String typeName) protected voidcheckIncludeExclude(AnnotationNode node, List<String> excludes, List<String> includes, List<ClassNode> excludeTypes, List<ClassNode> includeTypes, String typeName) protected booleancheckNotInterface(ClassNode cNode, String annotationName) protected List<AnnotationNode>copyAnnotatedNodeAnnotations(AnnotatedNode annotatedNode, String myTypeName) Copies all candidateAnnotations with retention policyRetentionPolicy.RUNTIMEandRetentionPolicy.CLASS.static booleandeemedInternalName(String name) getClassList(AnnotationNode anno, String name) getMemberClassValue(AnnotationNode node, String name) getMemberClassValue(AnnotationNode node, String name, ClassNode defaultValue) intgetMemberIntValue(AnnotationNode node, String name) getMemberList(AnnotationNode anno, String name) static StringgetMemberStringValue(AnnotationNode node, String name) static StringgetMemberStringValue(AnnotationNode node, String name, String defaultValue) getMemberValue(AnnotationNode node, String name) booleanhasAnnotation(ClassNode cNode, ClassNode annotation) protected voidinit(ASTNode[] nodes, SourceUnit sourceUnit) booleanmemberHasValue(AnnotationNode node, String name, Object value) static ClassNodenonGeneric(ClassNode type) Deprecated.use GenericsUtils#nonGenericstatic booleanstatic booleanshouldSkipOnDescriptor(boolean checkReturn, Map genericsSpec, MethodNode mNode, List<ClassNode> excludeTypes, List<ClassNode> includeTypes) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.codehaus.groovy.transform.ASTTransformation
visit
-
Field Details
-
RETENTION_CLASSNODE
-
sourceUnit
-
-
Constructor Details
-
AbstractASTTransformation
public AbstractASTTransformation()
-
-
Method Details
-
copyAnnotatedNodeAnnotations
protected List<AnnotationNode> copyAnnotatedNodeAnnotations(AnnotatedNode annotatedNode, String myTypeName) Copies all candidateAnnotations with retention policyRetentionPolicy.RUNTIMEandRetentionPolicy.CLASS.Annotations with
GeneratedClosuremembers are not supported for now. -
init
-
memberHasValue
-
getMemberValue
-
getMemberStringValue
-
getMemberStringValue
-
getMemberIntValue
-
getMemberClassValue
-
getMemberClassValue
-
getMemberList
-
getClassList
-
addError
-
checkNotInterface
-
hasAnnotation
-
tokenize
-
deemedInternalName
-
shouldSkip
-
shouldSkipOnDescriptor
-
checkIncludeExclude
-
checkIncludeExclude
-
nonGeneric
Deprecated.use GenericsUtils#nonGeneric
-