public class MethodWeaver
extends org.objectweb.asm.MethodAdapter
implements 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, 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, 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, INVOKEDYNAMIC_OWNER, 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, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7| Constructor and Description |
|---|
MethodWeaver(ClassWeaver tcw,
java.lang.String methodName,
java.lang.String methodDescriptor,
org.objectweb.asm.MethodVisitor mv) |
| Modifier and Type | Method and Description |
|---|---|
void |
visitAttribute(org.objectweb.asm.Attribute attr) |
void |
visitFieldInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc) |
void |
visitIincInsn(int var,
int increment) |
void |
visitInsn(int opcode) |
void |
visitIntInsn(int opcode,
int operand) |
void |
visitJumpInsn(int opcode,
org.objectweb.asm.Label label) |
void |
visitLabel(org.objectweb.asm.Label label) |
void |
visitLdcInsn(java.lang.Object cst) |
void |
visitLineNumber(int line,
org.objectweb.asm.Label start) |
void |
visitLocalVariable(java.lang.String name,
java.lang.String desc,
java.lang.String signature,
org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
int index) |
void |
visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
int[] keys,
org.objectweb.asm.Label[] labels) |
void |
visitMaxs(int maxStack,
int maxLocals) |
void |
visitMethodInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc) |
void |
visitMultiANewArrayInsn(java.lang.String desc,
int dims) |
void |
visitTableSwitchInsn(int min,
int max,
org.objectweb.asm.Label dflt,
org.objectweb.asm.Label[] labels) |
void |
visitTryCatchBlock(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
java.lang.String type) |
void |
visitTypeInsn(int opcode,
java.lang.String desc) |
void |
visitVarInsn(int opcode,
int var) |
void |
weaveAttributesIfRequired(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
Change GETFIELD and PUTFIELD for fields that use attribute access to make use of new convenience methods.
|
void |
weaveBeginningOfMethodIfRequired()
Makes modifications to the beginning of a method.
|
void |
weaveEndOfMethodIfRequired()
Modifies methods just before the return.
|
public MethodWeaver(ClassWeaver tcw, java.lang.String methodName, java.lang.String methodDescriptor, org.objectweb.asm.MethodVisitor mv)
public void visitInsn(int opcode)
visitInsn in interface org.objectweb.asm.MethodVisitorvisitInsn in class org.objectweb.asm.MethodAdapterpublic void visitIntInsn(int opcode,
int operand)
visitIntInsn in interface org.objectweb.asm.MethodVisitorvisitIntInsn in class org.objectweb.asm.MethodAdapterpublic void visitVarInsn(int opcode,
int var)
visitVarInsn in interface org.objectweb.asm.MethodVisitorvisitVarInsn in class org.objectweb.asm.MethodAdapterpublic void visitTypeInsn(int opcode,
java.lang.String desc)
visitTypeInsn in interface org.objectweb.asm.MethodVisitorvisitTypeInsn in class org.objectweb.asm.MethodAdapterpublic void visitFieldInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
visitFieldInsn in interface org.objectweb.asm.MethodVisitorvisitFieldInsn in class org.objectweb.asm.MethodAdapterpublic void visitMethodInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
visitMethodInsn in interface org.objectweb.asm.MethodVisitorvisitMethodInsn in class org.objectweb.asm.MethodAdapterpublic void visitJumpInsn(int opcode,
org.objectweb.asm.Label label)
visitJumpInsn in interface org.objectweb.asm.MethodVisitorvisitJumpInsn in class org.objectweb.asm.MethodAdapterpublic void visitLabel(org.objectweb.asm.Label label)
visitLabel in interface org.objectweb.asm.MethodVisitorvisitLabel in class org.objectweb.asm.MethodAdapterpublic void visitLdcInsn(java.lang.Object cst)
visitLdcInsn in interface org.objectweb.asm.MethodVisitorvisitLdcInsn in class org.objectweb.asm.MethodAdapterpublic void visitIincInsn(int var,
int increment)
visitIincInsn in interface org.objectweb.asm.MethodVisitorvisitIincInsn in class org.objectweb.asm.MethodAdapterpublic void visitTableSwitchInsn(int min,
int max,
org.objectweb.asm.Label dflt,
org.objectweb.asm.Label[] labels)
visitTableSwitchInsn in interface org.objectweb.asm.MethodVisitorvisitTableSwitchInsn in class org.objectweb.asm.MethodAdapterpublic void visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
int[] keys,
org.objectweb.asm.Label[] labels)
visitLookupSwitchInsn in interface org.objectweb.asm.MethodVisitorvisitLookupSwitchInsn in class org.objectweb.asm.MethodAdapterpublic void visitMultiANewArrayInsn(java.lang.String desc,
int dims)
visitMultiANewArrayInsn in interface org.objectweb.asm.MethodVisitorvisitMultiANewArrayInsn in class org.objectweb.asm.MethodAdapterpublic void visitTryCatchBlock(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
java.lang.String type)
visitTryCatchBlock in interface org.objectweb.asm.MethodVisitorvisitTryCatchBlock in class org.objectweb.asm.MethodAdapterpublic void visitMaxs(int maxStack,
int maxLocals)
visitMaxs in interface org.objectweb.asm.MethodVisitorvisitMaxs in class org.objectweb.asm.MethodAdapterpublic void visitLocalVariable(java.lang.String name,
java.lang.String desc,
java.lang.String signature,
org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
int index)
visitLocalVariable in interface org.objectweb.asm.MethodVisitorvisitLocalVariable in class org.objectweb.asm.MethodAdapterpublic void visitLineNumber(int line,
org.objectweb.asm.Label start)
visitLineNumber in interface org.objectweb.asm.MethodVisitorvisitLineNumber in class org.objectweb.asm.MethodAdapterpublic void visitAttribute(org.objectweb.asm.Attribute attr)
visitAttribute in interface org.objectweb.asm.MethodVisitorvisitAttribute in class org.objectweb.asm.MethodAdapterpublic void weaveAttributesIfRequired(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
public void weaveBeginningOfMethodIfRequired()
public void weaveEndOfMethodIfRequired()
EclipseLink 2.4.2, "build v20130514-5956486" API Reference