public final class CodeItem extends OffsettedItem
dex file.| Constructor and Description |
|---|
CodeItem(CstMethodRef ref,
DalvCode code,
boolean isStatic,
TypeList throwsList)
Constructs an instance.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addContents(DexFile file)
Populates a
DexFile with items from within this instance. |
void |
debugPrint(java.io.PrintWriter out,
java.lang.String prefix,
boolean verbose)
Does a human-friendly dump of this instance.
|
CstMethodRef |
getRef()
Gets the reference to the method this instance implements.
|
ItemType |
itemType()
Returns the item type for this instance.
|
protected void |
place0(Section addedTo,
int offset)
Does additional work required when placing an instance.
|
java.lang.String |
toHuman()
Gets a short human-readable string representing this instance.
|
java.lang.String |
toString() |
protected void |
writeTo0(DexFile file,
AnnotatedOutput out)
Performs the actual write of the contents of this instance to
the given data section.
|
compareTo, compareTo0, equals, getAbsoluteOffset, getAbsoluteOffsetOr0, getAlignment, getRelativeOffset, offsetString, place, setWriteSize, writeSize, writeTopublic CodeItem(CstMethodRef ref, DalvCode code, boolean isStatic, TypeList throwsList)
ref - non-null; method that this code implementscode - non-null; the underlying codeisStatic - whether this instance is for a static
methodthrowsList - non-null; list of possibly-thrown exceptions,
just used in generating debugging output (listings)public ItemType itemType()
public void addContents(DexFile file)
DexFile with items from within this instance.
This will not add an item to the file for this instance itself
(which should have been done by whatever refers to this instance).
Note: Subclasses must override this to do something appropriate.
addContents in class Itemfile - non-null; the file to populatepublic java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String toHuman()
toHuman in class OffsettedItemnon-null; the human formpublic CstMethodRef getRef()
non-null; the method referencepublic void debugPrint(java.io.PrintWriter out,
java.lang.String prefix,
boolean verbose)
out - non-null; where to dumpprefix - non-null; per-line prefix to useverbose - whether to be verbose with the outputprotected void place0(Section addedTo, int offset)
place0 in class OffsettedItemaddedTo - non-null; the section this instance has been added tooffset - >= 0; the offset from the start of the
section where this instance was placedprotected void writeTo0(DexFile file, AnnotatedOutput out)
OffsettedItem.writeTo(com.android.dx.dex.file.DexFile, com.android.dx.util.AnnotatedOutput),
which will have taken care of ensuring alignment.writeTo0 in class OffsettedItemfile - non-null; the file to use for referenceout - non-null; where to write toCopyright © 2020. All Rights Reserved.