public final class AnnotationsDirectoryItem extends OffsettedItem
| Constructor and Description |
|---|
AnnotationsDirectoryItem()
Constructs an empty instance.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addContents(DexFile file)
Populates a
DexFile with items from within this instance. |
void |
addFieldAnnotations(CstFieldRef field,
Annotations annotations,
DexFile dexFile)
Adds a field annotations item to this instance.
|
void |
addMethodAnnotations(CstMethodRef method,
Annotations annotations,
DexFile dexFile)
Adds a method annotations item to this instance.
|
void |
addParameterAnnotations(CstMethodRef method,
AnnotationsList list,
DexFile dexFile)
Adds a parameter annotations item to this instance.
|
int |
compareTo0(OffsettedItem other)
Compares this instance to another which is guaranteed to be of
the same class.
|
Annotations |
getMethodAnnotations(CstMethodRef method)
Gets the method annotations for a given method, if any.
|
AnnotationsList |
getParameterAnnotations(CstMethodRef method)
Gets the parameter annotations for a given method, if any.
|
int |
hashCode() |
boolean |
isEmpty()
Returns whether this item is empty (has no contents).
|
boolean |
isInternable()
Returns whether this item is a candidate for interning.
|
ItemType |
itemType()
Returns the item type for this instance.
|
protected void |
place0(Section addedTo,
int offset)
Does additional work required when placing an instance.
|
void |
setClassAnnotations(Annotations annotations,
DexFile dexFile)
Sets the direct annotations on this instance.
|
java.lang.String |
toHuman()
Gets a short human-readable string representing this instance.
|
protected void |
writeTo0(DexFile file,
AnnotatedOutput out)
Performs the actual write of the contents of this instance to
the given data section.
|
compareTo, equals, getAbsoluteOffset, getAbsoluteOffsetOr0, getAlignment, getRelativeOffset, offsetString, place, setWriteSize, writeSize, writeTopublic AnnotationsDirectoryItem()
public ItemType itemType()
public boolean isEmpty()
true if this item is empty, or false
if notpublic boolean isInternable()
true if this is an interning candidate, or
false if notpublic int hashCode()
hashCode in class java.lang.Objectpublic int compareTo0(OffsettedItem other)
Note:: This throws an exception if this item is not internable.
compareTo0 in class OffsettedItemother - non-null; instance to compare to-1, 0, or 1, depending
on the sort order of this instance and the otherisInternable()public void setClassAnnotations(Annotations annotations, DexFile dexFile)
annotations - non-null; annotations to set for this classdexFile - non-null; dex outputpublic void addFieldAnnotations(CstFieldRef field, Annotations annotations, DexFile dexFile)
field - non-null; field in questionannotations - non-null; associated annotations to adddexFile - non-null; dex outputpublic void addMethodAnnotations(CstMethodRef method, Annotations annotations, DexFile dexFile)
method - non-null; method in questionannotations - non-null; associated annotations to adddexFile - non-null; dex outputpublic void addParameterAnnotations(CstMethodRef method, AnnotationsList list, DexFile dexFile)
method - non-null; method in questionlist - non-null; associated list of annotation sets to adddexFile - non-null; dex outputpublic Annotations getMethodAnnotations(CstMethodRef method)
method - non-null; the methodnull-ok; the method annotations, if anypublic AnnotationsList getParameterAnnotations(CstMethodRef method)
method - non-null; the methodnull-ok; the parameter annotations, if anypublic 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 toHuman()
toHuman in class OffsettedItemnon-null; the human formprotected 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.