Interface IDexDebugInfo
public interface IDexDebugInfo
This interface represents Dex debug information for a method. Debug information can be forged
and should not be trusted.
This interface offers a medium-level and high-level view of debug information available for a
given method:
- medium-level: use getVariables(int)
and getLineInfo(int)
- high-level (most clients will want to use that): use
getKnownVariablesMap(IDexMethod)
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
-
Method Summary
Modifier and TypeMethodDescriptionRetrieve a map of variables defined at a given instruction point.getLineInfo
(int address) Get the information for the line of code associated with a given bytecode address.int[]
Get the name indexes for the parameters of the method.getVariables
(int address)
-
Field Details
-
DBG_END_SEQUENCE
static final int DBG_END_SEQUENCE- See Also:
-
DBG_ADVANCE_PC
static final int DBG_ADVANCE_PC- See Also:
-
DBG_ADVANCE_LINE
static final int DBG_ADVANCE_LINE- See Also:
-
DBG_START_LOCAL
static final int DBG_START_LOCAL- See Also:
-
DBG_START_LOCAL_EXTENDED
static final int DBG_START_LOCAL_EXTENDED- See Also:
-
DBG_END_LOCAL
static final int DBG_END_LOCAL- See Also:
-
DBG_RESTART_LOCAL
static final int DBG_RESTART_LOCAL- See Also:
-
DBG_SET_PROLOGUE_END
static final int DBG_SET_PROLOGUE_END- See Also:
-
DBG_SET_EPILOGUE_BEGIN
static final int DBG_SET_EPILOGUE_BEGIN- See Also:
-
DBG_SET_FILE
static final int DBG_SET_FILE- See Also:
-
DBG_FIRST_SPECIAL
static final int DBG_FIRST_SPECIAL- See Also:
-
DBG_LINE_BASE
static final int DBG_LINE_BASE- See Also:
-
DBG_LINE_RANGE
static final int DBG_LINE_RANGE- See Also:
-
-
Method Details
-
getParameterNameIndexes
int[] getParameterNameIndexes()Get the name indexes for the parameters of the method.- Returns:
- the list of name indexes, or null if none
-
getLineInfo
Get the information for the line of code associated with a given bytecode address.- Parameters:
address
- offset in method in 16-bit code units- Returns:
- the line information object, null if none
-
getVariables
- Parameters:
address
- offset in method in 16-bit code units- Returns:
- a list of variables, possibly empty
-
getKnownVariablesMap
Retrieve a map of variables defined at a given instruction point.- Returns:
- on error, an empty map; else a map of: key= method offset (in bytes); value= list of all debug variables existing (having a definition) at that instruction
-