com.pnfsoftware.jeb.core.units.code.android.dex.IDexCodeItem |
This interface represents a DEX code_item
object. Those objects hold, among other
things, the bytecode of a method.
It holds the body of a method. They are referenced by IDexMethodData
objects for
internal, non-abstract, non-native methods.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
abstract CFG<IDalvikInstruction> |
getControlFlowGraph()
Returns the CFG for this method.
| ||||||||||
abstract IDexDebugInfo |
getDebugInfo()
Get the debug information for the method.
| ||||||||||
abstract int |
getDexFileIndex()
Retrieve the index of the dex file that defines this code item.
| ||||||||||
abstract List<? extends IDexExceptionItem> |
getExceptionItems()
Get the exception items for the method.
| ||||||||||
abstract Map<Integer, byte[]> |
getGaps()
Retrieve the gaps in the method's bytecode.
| ||||||||||
abstract int |
getInputArgumentCount()
Get the number of incoming arguments for the method.
| ||||||||||
abstract IDalvikInstruction |
getInstruction(int index)
Get the instruction at the provided index.
| ||||||||||
abstract IDalvikInstruction |
getInstructionAt(int offsetInMethod)
Get the instruction at the provided byte offset in the method.
| ||||||||||
abstract List<? extends IDalvikInstruction> |
getInstructions()
Get the list of parsed bytecode instructions, ordered by ascending offset.
| ||||||||||
abstract int |
getInstructionsOffset()
Get the DEX file offset where the bytecode for the method starts.
| ||||||||||
abstract int |
getInstructionsSize()
Get the size of the method's bytecode, in bytes.
| ||||||||||
abstract int |
getOutputArgumentCount()
Get the number of outgoing arguments for the method.
| ||||||||||
abstract List<DalvikParserError> |
getParsingErrors()
Retrieve the list of parsing errors, if any.
| ||||||||||
abstract int |
getRegisterCount()
Get the number of registers used by the method.
| ||||||||||
abstract boolean |
hasParsingErrors()
Determine whether the method's bytecode was successfully parsed.
| ||||||||||
abstract boolean |
isCompleteBytecode()
This method is deprecated.
use
!hasParsingErrors()
|
Returns the CFG for this method. It may be null if the parser did not produce a control flow graph.
Get the debug information for the method.
Note: debug metadata can be forged and should not be trusted.
Retrieve the index of the dex file that defines this code item.
getDexFiles()
(of the owner , or -1 if unknown or not
defined
Get the exception items for the method.
Retrieve the gaps in the method's bytecode. The gaps are areas within the bytecode that are not directly used as instruction as pseudo-instruction's data (switch or array data).
Get the number of incoming arguments for the method.
Get the instruction at the provided index.
Get the instruction at the provided byte offset in the method.
offsetInMethod | method's code offset in byte |
---|
Get the list of parsed bytecode instructions, ordered by ascending offset.
This method provides the original array of instructions, not a copy. The caller should not try to modify it.
Get the DEX file offset where the bytecode for the method starts.
Get the size of the method's bytecode, in bytes.
Get the number of outgoing arguments for the method.
Retrieve the list of parsing errors, if any.
Get the number of registers used by the method.
Determine whether the method's bytecode was successfully parsed.
This method is deprecated.
use !hasParsingErrors()
Determine whether the method's bytecode was fully parsed.