Package javassist.convert
Class TransformFieldAccess
- java.lang.Object
-
- javassist.convert.Transformer
-
- javassist.convert.TransformFieldAccess
-
- All Implemented Interfaces:
Opcode
public final class TransformFieldAccess extends Transformer
-
-
Field Summary
Fields Modifier and Type Field Description private ConstPoolconstPoolprivate CtClassfieldClassprivate java.lang.Stringfieldnameprivate booleanisPrivateprivate java.lang.StringnewClassnameprivate java.lang.StringnewFieldnameprivate intnewIndex-
Fields inherited from interface javassist.bytecode.Opcode
AALOAD, AASTORE, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DLOAD_0, DLOAD_1, DLOAD_2, DLOAD_3, DMUL, DNEG, DREM, DRETURN, DSTORE, DSTORE_0, DSTORE_1, DSTORE_2, DSTORE_3, 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, FLOAD_0, FLOAD_1, FLOAD_2, FLOAD_3, FMUL, FNEG, FREM, FRETURN, FSTORE, FSTORE_0, FSTORE_1, FSTORE_2, FSTORE_3, FSUB, GETFIELD, GETSTATIC, GOTO, GOTO_W, 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, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMUL, INEG, INSTANCEOF, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, IUSHR, IXOR, JSR, JSR_W, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_W, LDC2_W, LDIV, LLOAD, LLOAD_0, LLOAD_1, LLOAD_2, LLOAD_3, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSTORE_0, LSTORE_1, LSTORE_2, LSTORE_3, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, STACK_GROW, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, WIDE
-
-
Constructor Summary
Constructors Constructor Description TransformFieldAccess(Transformer next, CtField field, java.lang.String newClassname, java.lang.String newFieldname)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidinitialize(ConstPool cp, CodeAttribute attr)inttransform(CtClass clazz, int pos, CodeIterator iterator, ConstPool cp)Modify GETFIELD, GETSTATIC, PUTFIELD, and PUTSTATIC so that a different field is accessed.-
Methods inherited from class javassist.convert.Transformer
clean, extraLocals, extraStack, getNext, initialize
-
-
-
-
Field Detail
-
newClassname
private java.lang.String newClassname
-
newFieldname
private java.lang.String newFieldname
-
fieldname
private java.lang.String fieldname
-
fieldClass
private CtClass fieldClass
-
isPrivate
private boolean isPrivate
-
newIndex
private int newIndex
-
constPool
private ConstPool constPool
-
-
Constructor Detail
-
TransformFieldAccess
public TransformFieldAccess(Transformer next, CtField field, java.lang.String newClassname, java.lang.String newFieldname)
-
-
Method Detail
-
initialize
public void initialize(ConstPool cp, CodeAttribute attr)
- Overrides:
initializein classTransformer
-
transform
public int transform(CtClass clazz, int pos, CodeIterator iterator, ConstPool cp)
Modify GETFIELD, GETSTATIC, PUTFIELD, and PUTSTATIC so that a different field is accessed. The new field must be declared in a superclass of the class in which the original field is declared.- Specified by:
transformin classTransformer
-
-