|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.android.dx.dex.file.Item
com.android.dx.dex.file.OffsettedItem
com.android.dx.dex.file.ClassDataItem
public final class ClassDataItem
Representation of all the parts of a Dalvik class that are generally
"inflated" into an in-memory representation at runtime. Instances of
this class are represented in a compact streamable form in a
dex file, as opposed to a random-access form.
| Constructor Summary | |
|---|---|
ClassDataItem(CstType thisClass)
Constructs an instance. |
|
| Method Summary | |
|---|---|
void |
addContents(DexFile file)
Populates a DexFile with items from within this instance. |
void |
addDirectMethod(EncodedMethod method)
Adds a direct ( static and/or private) method. |
void |
addInstanceField(EncodedField field)
Adds an instance field. |
void |
addStaticField(EncodedField field,
Constant value)
Adds a static field. |
void |
addVirtualMethod(EncodedMethod method)
Adds a virtual method. |
void |
debugPrint(Writer out,
boolean verbose)
Prints out the contents of this instance, in a debugging-friendly way. |
ArrayList<EncodedMethod> |
getMethods()
Gets all the methods in this class. |
CstArray |
getStaticValuesConstant()
Gets a CstArray corresponding to staticValues if
it contains any non-zero non-null values. |
boolean |
isEmpty()
Returns whether this instance is empty. |
ItemType |
itemType()
Returns the item type for this instance. |
protected void |
place0(Section addedTo,
int offset)
Does additional work required when placing an instance. |
String |
toHuman()
Gets a short human-readable string representing this instance. |
void |
writeTo0(DexFile file,
AnnotatedOutput out)
Performs the actual write of the contents of this instance to the given data section. |
| Methods inherited from class com.android.dx.dex.file.OffsettedItem |
|---|
compareTo, compareTo0, equals, getAbsoluteOffset, getAbsoluteOffsetOr0, getAlignment, getRelativeOffset, offsetString, place, setWriteSize, writeSize, writeTo |
| Methods inherited from class com.android.dx.dex.file.Item |
|---|
typeName |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public ClassDataItem(CstType thisClass)
thisClass - non-null; what class this data is for, just
for listing generation| Method Detail |
|---|
public ItemType itemType()
itemType in class Itemnon-null; the item typepublic String toHuman()
toHuman in class OffsettedItemnon-null; the human formpublic boolean isEmpty()
true if this instance is empty or
false if at least one element has been added to it
public void addStaticField(EncodedField field,
Constant value)
field - non-null; the field to addvalue - null-ok; initial value for the field, if anypublic void addInstanceField(EncodedField field)
field - non-null; the field to addpublic void addDirectMethod(EncodedMethod method)
static and/or private) method.
method - non-null; the method to addpublic void addVirtualMethod(EncodedMethod method)
method - non-null; the method to addpublic ArrayList<EncodedMethod> getMethods()
non-null; list of all methods
public void debugPrint(Writer out,
boolean verbose)
out - non-null; where to output toverbose - whether to be verbose with the outputpublic 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 CstArray getStaticValuesConstant()
CstArray corresponding to staticValues if
it contains any non-zero non-null values.
null-ok; the corresponding constant or null if
there are no values to encode
protected 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 placed
public 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 to
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||