Package jadx.core.dex.instructions.args
Class InsnArg
java.lang.Object
jadx.core.dex.attributes.AttrNode
jadx.core.dex.instructions.args.Typed
jadx.core.dex.instructions.args.InsnArg
- All Implemented Interfaces:
IAttributeNode
- Direct Known Subclasses:
InsnWrapArg,LiteralArg,NamedArg,RegisterArg
Instruction argument.
Can be: register, literal, instruction or name
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Loggerprotected @Nullable("Null for method arguments") InsnNode -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final <T extends InsnArg>
TcopyCommonParams(T copy) abstract InsnArgprivate static intgetArgIndex(InsnNode parent, InsnArg arg) @Nullable InsnNodebooleanReturn true for 'this' from other classes (often occur in anonymous classes)booleanisConst()booleanisFalse()booleanbooleanbooleanisNamed()booleanbooleanisSameCodeVar(RegisterArg arg) booleanisSameConst(InsnArg other) booleanisSameVar(RegisterArg arg) booleanbooleanisThis()booleanisTrue()booleanisUseVar(RegisterArg arg) booleanbooleanstatic LiteralArgstatic LiteralArgstatic RegisterArgstatic RegisterArgstatic RegisterArgvoidsetParentInsn(@Nullable InsnNode parentInsn) static RegisterArgtypeImmutableIfKnownReg(InsnData insn, int argNum, ArgType type) static RegisterArgtypeImmutableReg(int regNum, ArgType type) static RegisterArgtypeImmutableReg(InsnData insn, int argNum, ArgType type) unwrap()private static InsnWrapArgstatic InsnArgPreferwrapInsnIntoArg(InsnNode).static @NotNull InsnArgwrapInsnIntoArg(InsnNode insn) @Nullable("if wrap failed") InsnArgwrapInstruction(MethodNode mth, InsnNode insn) @Nullable("if wrap failed") InsnArgwrapInstruction(MethodNode mth, InsnNode insn, boolean unbind) Methods inherited from class jadx.core.dex.instructions.args.Typed
getType, isTypeImmutable, setTypeMethods inherited from class jadx.core.dex.attributes.AttrNode
add, addAttr, addAttr, addAttr, addAttrs, clearAttributes, contains, contains, copyAttributeFrom, copyAttributesFrom, get, getAll, getAnnotation, getAttributesString, getAttributesStringsList, isAttrStorageEmpty, remove, remove, removeAttr, rewriteAttributeFrom, unloadAttributes
-
Field Details
-
LOG
private static final org.slf4j.Logger LOG -
parentInsn
@Nullable("Null for method arguments") protected @Nullable("Null for method arguments") InsnNode parentInsn
-
-
Constructor Details
-
InsnArg
public InsnArg()
-
-
Method Details
-
reg
-
reg
-
typeImmutableIfKnownReg
-
typeImmutableReg
-
typeImmutableReg
-
reg
-
lit
-
lit
-
wrap
-
isRegister
public boolean isRegister() -
isLiteral
public boolean isLiteral() -
isInsnWrap
public boolean isInsnWrap() -
isNamed
public boolean isNamed() -
getParentInsn
-
setParentInsn
-
wrapInstruction
@Nullable("if wrap failed") public @Nullable("if wrap failed") InsnArg wrapInstruction(MethodNode mth, InsnNode insn) -
wrapInstruction
@Nullable("if wrap failed") public @Nullable("if wrap failed") InsnArg wrapInstruction(MethodNode mth, InsnNode insn, boolean unbind) -
getArgIndex
-
wrapInsnIntoArg
-
wrapArg
PreferwrapInsnIntoArg(InsnNode).This method don't support MOVE and CONST insns!
-
isZeroLiteral
public boolean isZeroLiteral() -
isZeroConst
public boolean isZeroConst() -
isFalse
public boolean isFalse() -
isTrue
public boolean isTrue() -
isThis
public boolean isThis() -
isAnyThis
public boolean isAnyThis()Return true for 'this' from other classes (often occur in anonymous classes) -
unwrap
-
isConst
public boolean isConst() -
isSameConst
-
isSameVar
-
isSameVar
-
isSameCodeVar
-
isUseVar
-
copyCommonParams
-
duplicate
-
toShortString
-