Package com.googlecode.d2j.dex
Class Dex2Asm
java.lang.Object
com.googlecode.d2j.dex.Dex2Asm
- Direct Known Subclasses:
ExDex2Asm
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final intprotected static final com.googlecode.dex2jar.ir.ts.AggTransformerprotected static final com.googlecode.dex2jar.ir.ts.CleanLabelprotected static final com.googlecode.dex2jar.ir.ts.DeadCodeTransformerprotected static final com.googlecode.dex2jar.ir.ts.EndRemoverprotected static final com.googlecode.dex2jar.ir.ts.array.FillArrayTransformerprotected static final com.googlecode.dex2jar.ir.ts.Ir2JRegAssignTransformerprotected static final com.googlecode.dex2jar.ir.ts.MultiArrayTransformerprotected static final com.googlecode.dex2jar.ir.ts.NewTransformerprotected static final com.googlecode.dex2jar.ir.ts.NpeTransformerprotected static final com.googlecode.dex2jar.ir.ts.RemoveConstantFromSSAprotected static final com.googlecode.dex2jar.ir.ts.RemoveLocalFromSSAprotected static final com.googlecode.dex2jar.ir.ts.ExceptionHandlerTrimprotected static final com.googlecode.dex2jar.ir.ts.TypeTransformerprotected static final com.googlecode.dex2jar.ir.ts.UnSSATransformerprotected static final com.googlecode.dex2jar.ir.ts.VoidInvokeTransformerprotected static final com.googlecode.dex2jar.ir.ts.ZeroTransformer -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidaccept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.ClassVisitor v) static voidaccept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.FieldVisitor v) static voidaccept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.MethodVisitor v) static voidaccept(List<com.googlecode.d2j.node.DexAnnotationNode.Item> items, org.objectweb.asm.AnnotationVisitor av) static voidstatic voidstatic voidstatic voidacceptParameter(com.googlecode.d2j.node.DexAnnotationNode ann, int index, org.objectweb.asm.MethodVisitor v) protected static Map<String, Dex2Asm.Clz> collectClzInfo(com.googlecode.d2j.node.DexFileNode fileNode) voidconvertClass(int dexVersion, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf) voidconvertClass(int dexVersion, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, Map<String, Dex2Asm.Clz> classes) voidconvertClass(com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf) voidconvertClass(com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, com.googlecode.d2j.node.DexFileNode fileNode) voidconvertClass(com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, Map<String, Dex2Asm.Clz> classes) voidconvertClass(com.googlecode.d2j.node.DexFileNode dfn, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, Map<String, Dex2Asm.Clz> classes) voidconvertCode(com.googlecode.d2j.node.DexMethodNode methodNode, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx) static Objectstatic Object[]voidconvertDex(com.googlecode.d2j.node.DexFileNode fileNode, ClassVisitorFactory cvf) voidconvertField(com.googlecode.d2j.node.DexClassNode classNode, com.googlecode.d2j.node.DexFieldNode fieldNode, org.objectweb.asm.ClassVisitor cv) static org.objectweb.asm.HandleconvertHandler(com.googlecode.d2j.MethodHandle ele) voidconvertMethod(com.googlecode.d2j.node.DexClassNode classNode, com.googlecode.d2j.node.DexMethodNode methodNode, org.objectweb.asm.ClassVisitor cv, Dex2Asm.ClzCtx clzCtx) com.googlecode.dex2jar.ir.IrMethoddex2ir(com.googlecode.d2j.node.DexMethodNode methodNode) protected static ObjectfindAnnotationAttribute(com.googlecode.d2j.node.DexAnnotationNode ann, String name) protected InputStreamvoidir2j(com.googlecode.dex2jar.ir.IrMethod irMethod, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx) voidoptimize(com.googlecode.dex2jar.ir.IrMethod irMethod) protected static StringtoInternalName(com.googlecode.d2j.DexType type) protected static StringtoInternalName(String desc)
-
Field Details
-
ACC_INTERFACE_ABSTRACT
protected static final int ACC_INTERFACE_ABSTRACT- See Also:
-
T_CLEAN_LABEL
protected static final com.googlecode.dex2jar.ir.ts.CleanLabel T_CLEAN_LABEL -
T_END_REMOVE
protected static final com.googlecode.dex2jar.ir.ts.EndRemover T_END_REMOVE -
T_IR_2_J_REG_ASSIGN
protected static final com.googlecode.dex2jar.ir.ts.Ir2JRegAssignTransformer T_IR_2_J_REG_ASSIGN -
T_NEW
protected static final com.googlecode.dex2jar.ir.ts.NewTransformer T_NEW -
T_REMOVE_CONST
protected static final com.googlecode.dex2jar.ir.ts.RemoveConstantFromSSA T_REMOVE_CONST -
T_REMOVE_LOCAL
protected static final com.googlecode.dex2jar.ir.ts.RemoveLocalFromSSA T_REMOVE_LOCAL -
T_TRIM_EX
protected static final com.googlecode.dex2jar.ir.ts.ExceptionHandlerTrim T_TRIM_EX -
T_TYPE
protected static final com.googlecode.dex2jar.ir.ts.TypeTransformer T_TYPE -
T_DEAD_CODE
protected static final com.googlecode.dex2jar.ir.ts.DeadCodeTransformer T_DEAD_CODE -
T_FILL_ARRAY
protected static final com.googlecode.dex2jar.ir.ts.array.FillArrayTransformer T_FILL_ARRAY -
T_AGG
protected static final com.googlecode.dex2jar.ir.ts.AggTransformer T_AGG -
T_UNSSA
protected static final com.googlecode.dex2jar.ir.ts.UnSSATransformer T_UNSSA -
T_ZERO
protected static final com.googlecode.dex2jar.ir.ts.ZeroTransformer T_ZERO -
T_VOID_INVOKE
protected static final com.googlecode.dex2jar.ir.ts.VoidInvokeTransformer T_VOID_INVOKE -
T_NPE
protected static final com.googlecode.dex2jar.ir.ts.NpeTransformer T_NPE -
T_MULTI_ARRAY
protected static final com.googlecode.dex2jar.ir.ts.MultiArrayTransformer T_MULTI_ARRAY
-
-
Constructor Details
-
Dex2Asm
public Dex2Asm()
-
-
Method Details
-
toInternalName
-
toInternalName
-
accept
public static void accept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.ClassVisitor v) -
accept
public static void accept(List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.ClassVisitor cv) -
accept
public static void accept(List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.FieldVisitor fv) -
accept
public static void accept(List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.MethodVisitor mv) -
accept
public static void accept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.MethodVisitor v) -
acceptParameter
public static void acceptParameter(com.googlecode.d2j.node.DexAnnotationNode ann, int index, org.objectweb.asm.MethodVisitor v) -
accept
public static void accept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.FieldVisitor v) -
accept
public static void accept(List<com.googlecode.d2j.node.DexAnnotationNode.Item> items, org.objectweb.asm.AnnotationVisitor av) -
collectClzInfo
protected static Map<String,Dex2Asm.Clz> collectClzInfo(com.googlecode.d2j.node.DexFileNode fileNode) -
convertClass
public void convertClass(com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, com.googlecode.d2j.node.DexFileNode fileNode) -
convertClass
-
convertClass
public void convertClass(int dexVersion, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf) -
convertClass
public void convertClass(com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, Map<String, Dex2Asm.Clz> classes) -
convertClass
public void convertClass(com.googlecode.d2j.node.DexFileNode dfn, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, Map<String, Dex2Asm.Clz> classes) -
convertClass
public void convertClass(int dexVersion, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, Map<String, Dex2Asm.Clz> classes) -
getHexClassAsStream
-
convertCode
public void convertCode(com.googlecode.d2j.node.DexMethodNode methodNode, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx) -
convertDex
-
convertField
public void convertField(com.googlecode.d2j.node.DexClassNode classNode, com.googlecode.d2j.node.DexFieldNode fieldNode, org.objectweb.asm.ClassVisitor cv) -
convertConstantValues
-
convertConstantValue
-
convertHandler
public static org.objectweb.asm.Handle convertHandler(com.googlecode.d2j.MethodHandle ele) -
convertMethod
public void convertMethod(com.googlecode.d2j.node.DexClassNode classNode, com.googlecode.d2j.node.DexMethodNode methodNode, org.objectweb.asm.ClassVisitor cv, Dex2Asm.ClzCtx clzCtx) -
dex2ir
public com.googlecode.dex2jar.ir.IrMethod dex2ir(com.googlecode.d2j.node.DexMethodNode methodNode) -
findAnnotationAttribute
-
ir2j
public void ir2j(com.googlecode.dex2jar.ir.IrMethod irMethod, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx) -
optimize
public void optimize(com.googlecode.dex2jar.ir.IrMethod irMethod)
-