Package com.googlecode.d2j.dex
Class Dex2Asm
- java.lang.Object
-
- com.googlecode.d2j.dex.Dex2Asm
-
- Direct Known Subclasses:
ExDex2Asm
public class Dex2Asm extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classDex2Asm.Clzstatic classDex2Asm.ClzCtx
-
Field Summary
Fields Modifier and Type Field Description protected static intACC_INTERFACE_ABSTRACTprotected static com.googlecode.dex2jar.ir.ts.AggTransformerT_AGGprotected static com.googlecode.dex2jar.ir.ts.CleanLabelT_CLEAN_LABELprotected static com.googlecode.dex2jar.ir.ts.DeadCodeTransformerT_DEAD_CODEprotected static com.googlecode.dex2jar.ir.ts.EndRemoverT_END_REMOVEprotected static com.googlecode.dex2jar.ir.ts.array.FillArrayTransformerT_FILL_ARRAYprotected static com.googlecode.dex2jar.ir.ts.Ir2JRegAssignTransformerT_IR_2_J_REG_ASSIGNprotected static com.googlecode.dex2jar.ir.ts.MultiArrayTransformerT_MULTI_ARRAYprotected static com.googlecode.dex2jar.ir.ts.NewTransformerT_NEWprotected static com.googlecode.dex2jar.ir.ts.NpeTransformerT_NPEprotected static com.googlecode.dex2jar.ir.ts.RemoveConstantFromSSAT_REMOVE_CONSTprotected static com.googlecode.dex2jar.ir.ts.RemoveLocalFromSSAT_REMOVE_LOCALprotected static com.googlecode.dex2jar.ir.ts.ExceptionHandlerTrimT_TRIM_EXprotected static com.googlecode.dex2jar.ir.ts.TypeTransformerT_TYPEprotected static com.googlecode.dex2jar.ir.ts.UnSSATransformerT_UNSSAprotected static com.googlecode.dex2jar.ir.ts.VoidInvokeTransformerT_VOID_INVOKEprotected static com.googlecode.dex2jar.ir.ts.ZeroTransformerT_ZERO
-
Constructor Summary
Constructors Constructor Description Dex2Asm()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static 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(java.util.List<com.googlecode.d2j.node.DexAnnotationNode.Item> items, org.objectweb.asm.AnnotationVisitor av)static voidaccept(java.util.List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.ClassVisitor cv)static voidaccept(java.util.List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.FieldVisitor fv)static voidaccept(java.util.List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.MethodVisitor mv)static voidacceptParameter(com.googlecode.d2j.node.DexAnnotationNode ann, int index, org.objectweb.asm.MethodVisitor v)protected static java.util.Map<java.lang.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, java.util.Map<java.lang.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, java.util.Map<java.lang.String,Dex2Asm.Clz> classes)voidconvertClass(com.googlecode.d2j.node.DexFileNode dfn, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, java.util.Map<java.lang.String,Dex2Asm.Clz> classes)voidconvertCode(com.googlecode.d2j.node.DexMethodNode methodNode, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx)static java.lang.ObjectconvertConstantValue(java.lang.Object ele)static java.lang.Object[]convertConstantValues(java.lang.Object[] v)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 java.lang.ObjectfindAnnotationAttribute(com.googlecode.d2j.node.DexAnnotationNode ann, java.lang.String name)protected java.io.InputStreamgetHexClassAsStream()voidir2j(com.googlecode.dex2jar.ir.IrMethod irMethod, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx)voidoptimize(com.googlecode.dex2jar.ir.IrMethod irMethod)protected static java.lang.StringtoInternalName(com.googlecode.d2j.DexType type)protected static java.lang.StringtoInternalName(java.lang.String desc)
-
-
-
Field Detail
-
ACC_INTERFACE_ABSTRACT
protected static final int ACC_INTERFACE_ABSTRACT
- See Also:
- Constant Field Values
-
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
-
-
Method Detail
-
toInternalName
protected static java.lang.String toInternalName(com.googlecode.d2j.DexType type)
-
toInternalName
protected static java.lang.String toInternalName(java.lang.String desc)
-
accept
public static void accept(com.googlecode.d2j.node.DexAnnotationNode ann, org.objectweb.asm.ClassVisitor v)
-
accept
public static void accept(java.util.List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.ClassVisitor cv)
-
accept
public static void accept(java.util.List<com.googlecode.d2j.node.DexAnnotationNode> anns, org.objectweb.asm.FieldVisitor fv)
-
accept
public static void accept(java.util.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(java.util.List<com.googlecode.d2j.node.DexAnnotationNode.Item> items, org.objectweb.asm.AnnotationVisitor av)
-
collectClzInfo
protected static java.util.Map<java.lang.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
public void convertClass(com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf)
-
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, java.util.Map<java.lang.String,Dex2Asm.Clz> classes)
-
convertClass
public void convertClass(com.googlecode.d2j.node.DexFileNode dfn, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, java.util.Map<java.lang.String,Dex2Asm.Clz> classes)
-
convertClass
public void convertClass(int dexVersion, com.googlecode.d2j.node.DexClassNode classNode, ClassVisitorFactory cvf, java.util.Map<java.lang.String,Dex2Asm.Clz> classes)
-
getHexClassAsStream
protected java.io.InputStream getHexClassAsStream()
-
convertCode
public void convertCode(com.googlecode.d2j.node.DexMethodNode methodNode, org.objectweb.asm.MethodVisitor mv, Dex2Asm.ClzCtx clzCtx)
-
convertDex
public void convertDex(com.googlecode.d2j.node.DexFileNode fileNode, ClassVisitorFactory cvf)
-
convertField
public void convertField(com.googlecode.d2j.node.DexClassNode classNode, com.googlecode.d2j.node.DexFieldNode fieldNode, org.objectweb.asm.ClassVisitor cv)
-
convertConstantValues
public static java.lang.Object[] convertConstantValues(java.lang.Object[] v)
-
convertConstantValue
public static java.lang.Object convertConstantValue(java.lang.Object ele)
-
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
protected static java.lang.Object findAnnotationAttribute(com.googlecode.d2j.node.DexAnnotationNode ann, java.lang.String name)
-
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)
-
-