Package org.copperengine.core.instrument
Class BuildStackInfoAdapter
- java.lang.Object
-
- org.objectweb.asm.MethodVisitor
-
- org.copperengine.core.instrument.BuildStackInfoAdapter
-
- All Implemented Interfaces:
ByteCodeStackInfo
,org.objectweb.asm.Opcodes
public class BuildStackInfoAdapter extends org.objectweb.asm.MethodVisitor implements org.objectweb.asm.Opcodes, ByteCodeStackInfo
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
BuildStackInfoAdapter.LocalVariable
-
Field Summary
-
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_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, V9
-
-
Constructor Summary
Constructors Constructor Description BuildStackInfoAdapter(java.lang.String classType, boolean isStatic, java.lang.String methodName, java.lang.String arguments, java.lang.String extendedArguments)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StackInfo
getCurrentStackInfo()
org.objectweb.asm.Type[]
getLocalDescriptors(int lineNo, int count)
java.lang.String[]
getLocalNames(int lineNo, int count)
StackInfo
getPreviousStackInfo()
void
setMethodVisitor(org.objectweb.asm.MethodVisitor mVisitor)
org.objectweb.asm.AnnotationVisitor
visitAnnotation(java.lang.String arg0, boolean arg1)
org.objectweb.asm.AnnotationVisitor
visitAnnotationDefault()
void
visitAttribute(org.objectweb.asm.Attribute arg0)
void
visitCode()
void
visitEnd()
void
visitFieldInsn(int arg0, java.lang.String arg1, java.lang.String arg2, java.lang.String arg3)
void
visitFrame(int arg0, int arg1, java.lang.Object[] arg2, int arg3, java.lang.Object[] arg4)
void
visitIincInsn(int arg0, int arg1)
void
visitInsn(int arg0)
void
visitIntInsn(int arg0, int arg1)
void
visitInvokeDynamicInsn(java.lang.String name, java.lang.String descriptor, org.objectweb.asm.Handle bootstrapMethodHandle, java.lang.Object... bootstrapMethodArguments)
void
visitJumpInsn(int arg0, org.objectweb.asm.Label arg1)
void
visitLabel(org.objectweb.asm.Label arg0)
void
visitLdcInsn(java.lang.Object arg0)
void
visitLineNumber(int arg0, org.objectweb.asm.Label arg1)
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 arg0, int[] arg1, org.objectweb.asm.Label[] arg2)
void
visitMaxs(int arg0, int arg1)
void
visitMethodInsn(int opcode, java.lang.String owner, java.lang.String name, java.lang.String descriptor)
void
visitMethodInsn(int opcode, java.lang.String owner, java.lang.String name, java.lang.String descriptor, boolean isInterface)
void
visitMultiANewArrayInsn(java.lang.String arg0, int arg1)
org.objectweb.asm.AnnotationVisitor
visitParameterAnnotation(int arg0, java.lang.String arg1, boolean arg2)
void
visitTableSwitchInsn(int arg0, int arg1, org.objectweb.asm.Label arg2, org.objectweb.asm.Label... arg3)
void
visitTryCatchBlock(org.objectweb.asm.Label arg0, org.objectweb.asm.Label arg1, org.objectweb.asm.Label arg2, java.lang.String arg3)
void
visitTypeInsn(int arg0, java.lang.String arg1)
void
visitVarInsn(int arg0, int arg1)
-
-
-
Method Detail
-
setMethodVisitor
public void setMethodVisitor(org.objectweb.asm.MethodVisitor mVisitor)
-
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String arg0, boolean arg1)
- Overrides:
visitAnnotation
in classorg.objectweb.asm.MethodVisitor
-
visitAnnotationDefault
public org.objectweb.asm.AnnotationVisitor visitAnnotationDefault()
- Overrides:
visitAnnotationDefault
in classorg.objectweb.asm.MethodVisitor
-
visitAttribute
public void visitAttribute(org.objectweb.asm.Attribute arg0)
- Overrides:
visitAttribute
in classorg.objectweb.asm.MethodVisitor
-
visitCode
public void visitCode()
- Overrides:
visitCode
in classorg.objectweb.asm.MethodVisitor
-
visitEnd
public void visitEnd()
- Overrides:
visitEnd
in classorg.objectweb.asm.MethodVisitor
-
visitFieldInsn
public void visitFieldInsn(int arg0, java.lang.String arg1, java.lang.String arg2, java.lang.String arg3)
- Overrides:
visitFieldInsn
in classorg.objectweb.asm.MethodVisitor
-
visitFrame
public void visitFrame(int arg0, int arg1, java.lang.Object[] arg2, int arg3, java.lang.Object[] arg4)
- Overrides:
visitFrame
in classorg.objectweb.asm.MethodVisitor
-
visitIincInsn
public void visitIincInsn(int arg0, int arg1)
- Overrides:
visitIincInsn
in classorg.objectweb.asm.MethodVisitor
-
visitInsn
public void visitInsn(int arg0)
- Overrides:
visitInsn
in classorg.objectweb.asm.MethodVisitor
-
visitIntInsn
public void visitIntInsn(int arg0, int arg1)
- Overrides:
visitIntInsn
in classorg.objectweb.asm.MethodVisitor
-
visitJumpInsn
public void visitJumpInsn(int arg0, org.objectweb.asm.Label arg1)
- Overrides:
visitJumpInsn
in classorg.objectweb.asm.MethodVisitor
-
visitLabel
public void visitLabel(org.objectweb.asm.Label arg0)
- Overrides:
visitLabel
in classorg.objectweb.asm.MethodVisitor
-
visitLdcInsn
public void visitLdcInsn(java.lang.Object arg0)
- Overrides:
visitLdcInsn
in classorg.objectweb.asm.MethodVisitor
-
visitLineNumber
public void visitLineNumber(int arg0, org.objectweb.asm.Label arg1)
- Overrides:
visitLineNumber
in classorg.objectweb.asm.MethodVisitor
-
visitLocalVariable
public 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)
- Overrides:
visitLocalVariable
in classorg.objectweb.asm.MethodVisitor
-
visitLookupSwitchInsn
public void visitLookupSwitchInsn(org.objectweb.asm.Label arg0, int[] arg1, org.objectweb.asm.Label[] arg2)
- Overrides:
visitLookupSwitchInsn
in classorg.objectweb.asm.MethodVisitor
-
visitMaxs
public void visitMaxs(int arg0, int arg1)
- Overrides:
visitMaxs
in classorg.objectweb.asm.MethodVisitor
-
visitMethodInsn
public void visitMethodInsn(int opcode, java.lang.String owner, java.lang.String name, java.lang.String descriptor)
- Overrides:
visitMethodInsn
in classorg.objectweb.asm.MethodVisitor
-
visitMethodInsn
public void visitMethodInsn(int opcode, java.lang.String owner, java.lang.String name, java.lang.String descriptor, boolean isInterface)
- Overrides:
visitMethodInsn
in classorg.objectweb.asm.MethodVisitor
-
visitInvokeDynamicInsn
public void visitInvokeDynamicInsn(java.lang.String name, java.lang.String descriptor, org.objectweb.asm.Handle bootstrapMethodHandle, java.lang.Object... bootstrapMethodArguments)
- Overrides:
visitInvokeDynamicInsn
in classorg.objectweb.asm.MethodVisitor
-
visitMultiANewArrayInsn
public void visitMultiANewArrayInsn(java.lang.String arg0, int arg1)
- Overrides:
visitMultiANewArrayInsn
in classorg.objectweb.asm.MethodVisitor
-
visitParameterAnnotation
public org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int arg0, java.lang.String arg1, boolean arg2)
- Overrides:
visitParameterAnnotation
in classorg.objectweb.asm.MethodVisitor
-
visitTableSwitchInsn
public void visitTableSwitchInsn(int arg0, int arg1, org.objectweb.asm.Label arg2, org.objectweb.asm.Label... arg3)
- Overrides:
visitTableSwitchInsn
in classorg.objectweb.asm.MethodVisitor
-
visitTryCatchBlock
public void visitTryCatchBlock(org.objectweb.asm.Label arg0, org.objectweb.asm.Label arg1, org.objectweb.asm.Label arg2, java.lang.String arg3)
- Overrides:
visitTryCatchBlock
in classorg.objectweb.asm.MethodVisitor
-
visitTypeInsn
public void visitTypeInsn(int arg0, java.lang.String arg1)
- Overrides:
visitTypeInsn
in classorg.objectweb.asm.MethodVisitor
-
visitVarInsn
public void visitVarInsn(int arg0, int arg1)
- Overrides:
visitVarInsn
in classorg.objectweb.asm.MethodVisitor
-
getPreviousStackInfo
public StackInfo getPreviousStackInfo()
- Specified by:
getPreviousStackInfo
in interfaceByteCodeStackInfo
-
getCurrentStackInfo
public StackInfo getCurrentStackInfo()
- Specified by:
getCurrentStackInfo
in interfaceByteCodeStackInfo
-
getLocalNames
public java.lang.String[] getLocalNames(int lineNo, int count)
- Specified by:
getLocalNames
in interfaceByteCodeStackInfo
-
getLocalDescriptors
public org.objectweb.asm.Type[] getLocalDescriptors(int lineNo, int count)
- Specified by:
getLocalDescriptors
in interfaceByteCodeStackInfo
-
-