org.codehaus.groovy.transform
Class PackageScopeASTTransformation

java.lang.Object
  extended by org.codehaus.groovy.transform.PackageScopeASTTransformation
All Implemented Interfaces:
ASTTransformation, org.objectweb.asm.Opcodes

public class PackageScopeASTTransformation
extends java.lang.Object
implements ASTTransformation, org.objectweb.asm.Opcodes

Handles transformation for the @PackageScope annotation. This is experimental, use at your own risk.

Author:
Paul King

Field Summary
private static java.lang.Class MY_CLASS
           
private static ClassNode MY_TYPE
           
private static java.lang.String MY_TYPE_NAME
           
 
Fields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, 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, 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, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6
 
Constructor Summary
PackageScopeASTTransformation()
           
 
Method Summary
private  void revertVisibility(FieldNode fNode)
           
 void visit(ASTNode[] nodes, SourceUnit source)
          The call made when the compiler encounters an AST Transformation Annotation
private  void visitClassNode(ClassNode cNode)
           
private  void visitFieldNode(FieldNode fNode)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MY_CLASS

private static final java.lang.Class MY_CLASS

MY_TYPE

private static final ClassNode MY_TYPE

MY_TYPE_NAME

private static final java.lang.String MY_TYPE_NAME
Constructor Detail

PackageScopeASTTransformation

public PackageScopeASTTransformation()
Method Detail

visit

public void visit(ASTNode[] nodes,
                  SourceUnit source)
Description copied from interface: ASTTransformation
The call made when the compiler encounters an AST Transformation Annotation

Specified by:
visit in interface ASTTransformation
Parameters:
nodes - The ASTnodes when the call was triggered
source - The source unit being compiled

visitClassNode

private void visitClassNode(ClassNode cNode)

visitFieldNode

private void visitFieldNode(FieldNode fNode)

revertVisibility

private void revertVisibility(FieldNode fNode)


Copyright © ${year} The Codehaus. All Rights Reserved.