Class ConstructorMethodTransformer

  • All Implemented Interfaces:
    org.objectweb.asm.Opcodes

    public final class ConstructorMethodTransformer
    extends org.objectweb.asm.commons.AdviceAdapter
    DataClay constructor transformer.
    • Field Summary

      • Fields inherited from class org.objectweb.asm.commons.AdviceAdapter

        methodAccess, methodDesc
      • Fields inherited from class org.objectweb.asm.commons.GeneratorAdapter

        ADD, AND, DIV, EQ, GE, GT, LE, LT, MUL, NE, NEG, OR, REM, SHL, SHR, SUB, USHR, XOR
      • Fields inherited from class org.objectweb.asm.commons.LocalVariablesSorter

        firstLocal, nextLocal
      • Fields inherited from class org.objectweb.asm.MethodVisitor

        api, mv
      • 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_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, ASM4, ASM5, ASM6, ASM7, 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, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V9
    • Constructor Summary

      Constructors 
      Constructor Description
      ConstructorMethodTransformer​(org.objectweb.asm.MethodVisitor next, int accessFlags, String methodName, String methodDescriptor, String newclassDesc, boolean newisExecClass, boolean theparentIsObject)
      Constructs a new method visitor
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void onMethodEnter()  
      protected void onMethodExit​(int opcode)  
      void visitFieldInsn​(int opcode, String owner, String name, String desc)  
      void visitMaxs​(int maxStack, int maxLocals)  
      void visitMethodInsn​(int opcode, String owner, String name, String desc, boolean itf)  
      • Methods inherited from class org.objectweb.asm.commons.AdviceAdapter

        visitCode, visitInsn, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLookupSwitchInsn, visitMultiANewArrayInsn, visitTableSwitchInsn, visitTryCatchBlock, visitTypeInsn, visitVarInsn
      • Methods inherited from class org.objectweb.asm.commons.GeneratorAdapter

        arrayLength, arrayLoad, arrayStore, box, cast, catchException, checkCast, dup, dup2, dup2X1, dup2X2, dupX1, dupX2, endMethod, getAccess, getArgumentTypes, getField, getLocalType, getName, getReturnType, getStatic, goTo, ifCmp, ifICmp, ifNonNull, ifNull, ifZCmp, iinc, instanceOf, invokeConstructor, invokeDynamic, invokeInterface, invokeStatic, invokeVirtual, loadArg, loadArgArray, loadArgs, loadArgs, loadLocal, loadLocal, loadThis, mark, mark, math, monitorEnter, monitorExit, newArray, newInstance, newLabel, not, pop, pop2, push, push, push, push, push, push, push, push, push, putField, putStatic, ret, returnValue, setLocalType, storeArg, storeLocal, storeLocal, swap, swap, tableSwitch, tableSwitch, throwException, throwException, unbox, valueOf
      • Methods inherited from class org.objectweb.asm.commons.LocalVariablesSorter

        newLocal, newLocalMapping, updateNewLocals, visitFrame, visitIincInsn, visitLocalVariable, visitLocalVariableAnnotation
      • Methods inherited from class org.objectweb.asm.MethodVisitor

        visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitEnd, visitInsnAnnotation, visitLineNumber, visitMethodInsn, visitParameter, visitParameterAnnotation, visitTryCatchAnnotation, visitTypeAnnotation
    • Constructor Detail

      • ConstructorMethodTransformer

        public ConstructorMethodTransformer​(org.objectweb.asm.MethodVisitor next,
                                            int accessFlags,
                                            String methodName,
                                            String methodDescriptor,
                                            String newclassDesc,
                                            boolean newisExecClass,
                                            boolean theparentIsObject)
        Constructs a new method visitor
        Parameters:
        next - Method visitor this method should delegate to.
        accessFlags - Access flags
        methodName - Method name
        methodDescriptor - Method descriptor
        newclassDesc - Class descriptor
        newisExecClass - Indicates if method must be transformed into an execution class or not.
        theparentIsObject - Indicates if parent is object
    • Method Detail

      • visitMethodInsn

        public void visitMethodInsn​(int opcode,
                                    String owner,
                                    String name,
                                    String desc,
                                    boolean itf)
        Overrides:
        visitMethodInsn in class org.objectweb.asm.commons.AdviceAdapter
      • onMethodEnter

        protected void onMethodEnter()
        Overrides:
        onMethodEnter in class org.objectweb.asm.commons.AdviceAdapter
      • onMethodExit

        protected void onMethodExit​(int opcode)
        Overrides:
        onMethodExit in class org.objectweb.asm.commons.AdviceAdapter
      • visitMaxs

        public void visitMaxs​(int maxStack,
                              int maxLocals)
        Overrides:
        visitMaxs in class org.objectweb.asm.commons.LocalVariablesSorter
      • visitFieldInsn

        public void visitFieldInsn​(int opcode,
                                   String owner,
                                   String name,
                                   String desc)
        Overrides:
        visitFieldInsn in class org.objectweb.asm.commons.AdviceAdapter