Package com.googlecode.d2j.dex
Class Dex2IrAdapter
- java.lang.Object
-
- com.googlecode.d2j.visitors.DexCodeVisitor
-
- com.googlecode.d2j.dex.Dex2IrAdapter
-
- All Implemented Interfaces:
com.googlecode.d2j.DexConstants,org.objectweb.asm.Opcodes
public class Dex2IrAdapter extends com.googlecode.d2j.visitors.DexCodeVisitor implements org.objectweb.asm.Opcodes, com.googlecode.d2j.DexConstants
-
-
Field Summary
Fields Modifier and Type Field Description protected com.googlecode.dex2jar.ir.IrMethodirMethod-
Fields inherited from interface com.googlecode.d2j.DexConstants
ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_CONSTRUCTOR, ACC_DECLARED_SYNCHRONIZED, ACC_DEX_HIDDEN_BIT, ACC_DEX_HIDDEN_BIT_NATIVE, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VISIBILITY_FLAGS, ACC_VOLATILE, ANNOTATION_DEFAULT_TYPE, ANNOTATION_ENCLOSING_CLASS_TYPE, ANNOTATION_ENCLOSING_METHOD_TYPE, ANNOTATION_INNER_CLASS_TYPE, ANNOTATION_MEMBER_CLASSES_TYPE, ANNOTATION_SIGNATURE_TYPE, ANNOTATION_THROWS_TYPE, DEX_035, DEX_036, DEX_037, DEX_038, DEX_039, DEX_040
-
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, V19, V20, V21, V22, V23, V9
-
-
Constructor Summary
Constructors Constructor Description Dex2IrAdapter(boolean isStatic, com.googlecode.d2j.Method method)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.googlecode.dex2jar.ir.IrMethodconvert(com.googlecode.d2j.node.DexCodeNode codeNode)voidvisitConstStmt(com.googlecode.d2j.reader.Op op, int toReg, java.lang.Object value)voidvisitEnd()voidvisitFieldStmt(com.googlecode.d2j.reader.Op op, int a, int b, com.googlecode.d2j.Field field)voidvisitFillArrayDataStmt(com.googlecode.d2j.reader.Op op, int ra, java.lang.Object array)voidvisitFilledNewArrayStmt(com.googlecode.d2j.reader.Op opc, int[] args, java.lang.String type)voidvisitJumpStmt(com.googlecode.d2j.reader.Op op, int a, int b, com.googlecode.d2j.DexLabel label)voidvisitLabel(com.googlecode.d2j.DexLabel label)voidvisitMethodStmt(com.googlecode.d2j.reader.Op op, int[] args, com.googlecode.d2j.Method method)voidvisitPackedSwitchStmt(com.googlecode.d2j.reader.Op op, int aA, int firstCase, com.googlecode.d2j.DexLabel[] labels)voidvisitRegister(int total)voidvisitSparseSwitchStmt(com.googlecode.d2j.reader.Op op, int aA, int[] cases, com.googlecode.d2j.DexLabel[] labels)voidvisitStmt0R(com.googlecode.d2j.reader.Op op)voidvisitStmt1R(com.googlecode.d2j.reader.Op op, int reg)voidvisitStmt2R(com.googlecode.d2j.reader.Op op, int a, int b)voidvisitStmt2R1N(com.googlecode.d2j.reader.Op op, int a, int b, int content)voidvisitStmt3R(com.googlecode.d2j.reader.Op op, int a, int b, int c)voidvisitTryCatch(com.googlecode.d2j.DexLabel start, com.googlecode.d2j.DexLabel end, com.googlecode.d2j.DexLabel[] handlers, java.lang.String[] types)voidvisitTypeStmt(com.googlecode.d2j.reader.Op op, int a, int b, java.lang.String type)
-
-
-
Method Detail
-
visitRegister
public void visitRegister(int total)
- Overrides:
visitRegisterin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitStmt2R1N
public void visitStmt2R1N(com.googlecode.d2j.reader.Op op, int a, int b, int content)- Overrides:
visitStmt2R1Nin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitStmt3R
public void visitStmt3R(com.googlecode.d2j.reader.Op op, int a, int b, int c)- Overrides:
visitStmt3Rin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitTypeStmt
public void visitTypeStmt(com.googlecode.d2j.reader.Op op, int a, int b, java.lang.String type)- Overrides:
visitTypeStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitFillArrayDataStmt
public void visitFillArrayDataStmt(com.googlecode.d2j.reader.Op op, int ra, java.lang.Object array)- Overrides:
visitFillArrayDataStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitConstStmt
public void visitConstStmt(com.googlecode.d2j.reader.Op op, int toReg, java.lang.Object value)- Overrides:
visitConstStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitEnd
public void visitEnd()
- Overrides:
visitEndin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitFieldStmt
public void visitFieldStmt(com.googlecode.d2j.reader.Op op, int a, int b, com.googlecode.d2j.Field field)- Overrides:
visitFieldStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitFilledNewArrayStmt
public void visitFilledNewArrayStmt(com.googlecode.d2j.reader.Op opc, int[] args, java.lang.String type)- Overrides:
visitFilledNewArrayStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitJumpStmt
public void visitJumpStmt(com.googlecode.d2j.reader.Op op, int a, int b, com.googlecode.d2j.DexLabel label)- Overrides:
visitJumpStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitLabel
public void visitLabel(com.googlecode.d2j.DexLabel label)
- Overrides:
visitLabelin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitSparseSwitchStmt
public void visitSparseSwitchStmt(com.googlecode.d2j.reader.Op op, int aA, int[] cases, com.googlecode.d2j.DexLabel[] labels)- Overrides:
visitSparseSwitchStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitMethodStmt
public void visitMethodStmt(com.googlecode.d2j.reader.Op op, int[] args, com.googlecode.d2j.Method method)- Overrides:
visitMethodStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitStmt1R
public void visitStmt1R(com.googlecode.d2j.reader.Op op, int reg)- Overrides:
visitStmt1Rin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitStmt2R
public void visitStmt2R(com.googlecode.d2j.reader.Op op, int a, int b)- Overrides:
visitStmt2Rin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitStmt0R
public void visitStmt0R(com.googlecode.d2j.reader.Op op)
- Overrides:
visitStmt0Rin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitPackedSwitchStmt
public void visitPackedSwitchStmt(com.googlecode.d2j.reader.Op op, int aA, int firstCase, com.googlecode.d2j.DexLabel[] labels)- Overrides:
visitPackedSwitchStmtin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
visitTryCatch
public void visitTryCatch(com.googlecode.d2j.DexLabel start, com.googlecode.d2j.DexLabel end, com.googlecode.d2j.DexLabel[] handlers, java.lang.String[] types)- Overrides:
visitTryCatchin classcom.googlecode.d2j.visitors.DexCodeVisitor
-
convert
public com.googlecode.dex2jar.ir.IrMethod convert(com.googlecode.d2j.node.DexCodeNode codeNode)
-
-