Package jadx.core.dex.visitors
Class ShadowFieldVisitor
java.lang.Object
jadx.core.dex.visitors.AbstractVisitor
jadx.core.dex.visitors.ShadowFieldVisitor
- All Implemented Interfaces:
IDexTreeVisitor
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classprivate static enum -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidfixFieldAccess(MethodNode mth, FieldInfo fieldInfo, ShadowFieldVisitor.FieldFixType fieldFixType, InsnArg arg) private static voidfixShadowFieldAccess(MethodNode mth, Map<String, ShadowFieldVisitor.FieldFixInfo> fixInfoMap) private static @Nullable FieldInfogetFieldInfo(InsnNode insn) groupByName(List<FieldNode> allFields) voidCalled after loading dex tree, but before visitor traversal.private static voidprocessInsn(MethodNode mth, InsnNode insn, Map<String, ShadowFieldVisitor.FieldFixInfo> fixInfoMap) private static Map<FieldInfo, ShadowFieldVisitor.FieldFixType> searchShadowedFields(ClassNode thisCls) voidvisit(MethodNode mth) Visit methodMethods inherited from class jadx.core.dex.visitors.AbstractVisitor
getName, toString, visit
-
Field Details
-
fixInfoMap
-
-
Constructor Details
-
ShadowFieldVisitor
public ShadowFieldVisitor()
-
-
Method Details
-
init
Description copied from interface:IDexTreeVisitorCalled after loading dex tree, but before visitor traversal.- Specified by:
initin interfaceIDexTreeVisitor- Overrides:
initin classAbstractVisitor
-
visit
Description copied from interface:IDexTreeVisitorVisit method- Specified by:
visitin interfaceIDexTreeVisitor- Overrides:
visitin classAbstractVisitor- Throws:
JadxException
-
searchShadowedFields
private static Map<FieldInfo,ShadowFieldVisitor.FieldFixType> searchShadowedFields(ClassNode thisCls) -
groupByName
-
collectAllInstanceFields
-
fixShadowFieldAccess
private static void fixShadowFieldAccess(MethodNode mth, Map<String, ShadowFieldVisitor.FieldFixInfo> fixInfoMap) -
processInsn
private static void processInsn(MethodNode mth, InsnNode insn, Map<String, ShadowFieldVisitor.FieldFixInfo> fixInfoMap) -
getFieldInfo
-
fixFieldAccess
private static void fixFieldAccess(MethodNode mth, FieldInfo fieldInfo, ShadowFieldVisitor.FieldFixType fieldFixType, InsnArg arg)
-