Top Description Fields Constructors Methods
org.droidparts.dexmaker.dx.dex.file

public final Class TypeIdsSection

extends UniformItemSection
Class Inheritance
Imports
org.droidparts.dexmaker.dx.rop.cst.Constant, .CstType, org.droidparts.dexmaker.dx.rop.type.Type, org.droidparts.dexmaker.dx.util.AnnotatedOutput, .Hex, java.util.Collection, .TreeMap

Type identifiers list section of a .dex file.

Field Summary

Modifier and TypeField and Description
private final TreeMap<Type, TypeIdItem>
typeIds

non-null; map from types to TypeIdItem instances

Constructor Summary

AccessConstructor and Description
public
TypeIdsSection(DexFile
non-null; file that this instance is part of
file
)

Constructs an instance.

Method Summary

Modifier and TypeMethod and Description
public IndexedItem
get(Constant
non-null; constant to look for
cst
)

Implements abstract org.droidparts.dexmaker.dx.dex.file.UniformItemSection.get.

Gets the item corresponding to the given Constant.
public int

Returns:

>= 0; the reference's index
indexOf
(Type
non-null; the type to look up
type
)

Gets the index of the given type, which must have been added to this instance.

public int

Returns:

>= 0; the reference's index
indexOf
(CstType
non-null; the type to look up
type
)

Gets the index of the given type, which must have been added to this instance.

public TypeIdItem

Returns:

non-null; the interned reference
intern
(Type
non-null; the type to intern
type
)

Interns an element into this instance.

public TypeIdItem

Returns:

non-null; the interned reference
intern
(CstType
non-null; the type to intern
type
)

Interns an element into this instance.

public Collection<? extends Item>
items()

Implements abstract org.droidparts.dexmaker.dx.dex.file.Section.items.

Gets the collection of all the items in this section.
protected void
orderItems()

Implements abstract org.droidparts.dexmaker.dx.dex.file.UniformItemSection.orderItems.

Alters or picks the order for items in this instance if desired, so that subsequent calls to items will yield a so-ordered collection.
public void
writeHeaderPart(AnnotatedOutput
non-null; where to write
out
)

Writes the portion of the file header that refers to this instance.

Inherited from org.droidparts.dexmaker.dx.dex.file.UniformItemSection:
getAbsoluteItemOffsetprepare0writeSizewriteTo0

Field Detail

typeIdsback to summary
private final TreeMap<Type, TypeIdItem> typeIds

non-null; map from types to TypeIdItem instances

Constructor Detail

TypeIdsSectionback to summary
public TypeIdsSection(DexFile file)

Constructs an instance. The file offset is initially unknown.

Parameters
file:DexFile

non-null; file that this instance is part of

Method Detail

getback to summary
public IndexedItem get(Constant cst)

Implements abstract org.droidparts.dexmaker.dx.dex.file.UniformItemSection.get.

Doc from org.droidparts.dexmaker.dx.dex.file.UniformItemSection.get.

Gets the item corresponding to the given Constant. This will throw an exception if the constant is not found, including if this instance isn't the sort that maps constants to IndexedItem instances.

Parameters
cst:Constant

non-null; constant to look for

Returns:IndexedItem

non-null; the corresponding item found in this instance

Annotations
@Override
indexOfback to summary
public int indexOf(Type type)

Gets the index of the given type, which must have been added to this instance.

Parameters
type:Type

non-null; the type to look up

Returns:int

>= 0; the reference's index

indexOfback to summary
public int indexOf(CstType type)

Gets the index of the given type, which must have been added to this instance.

Parameters
type:CstType

non-null; the type to look up

Returns:int

>= 0; the reference's index

internback to summary
public TypeIdItem intern(Type type)

Interns an element into this instance.

Parameters
type:Type

non-null; the type to intern

Returns:TypeIdItem

non-null; the interned reference

internback to summary
public TypeIdItem intern(CstType type)

Interns an element into this instance.

Parameters
type:CstType

non-null; the type to intern

Returns:TypeIdItem

non-null; the interned reference

itemsback to summary
public Collection<? extends Item> items()

Implements abstract org.droidparts.dexmaker.dx.dex.file.Section.items.

Doc from org.droidparts.dexmaker.dx.dex.file.Section.items.

Gets the collection of all the items in this section. It is not valid to attempt to change the returned list.

Returns:Collection<? extends Item>

non-null; the items

Annotations
@Override
orderItemsback to summary
protected void orderItems()

Implements abstract org.droidparts.dexmaker.dx.dex.file.UniformItemSection.orderItems.

Doc from org.droidparts.dexmaker.dx.dex.file.UniformItemSection.orderItems.

Alters or picks the order for items in this instance if desired, so that subsequent calls to items will yield a so-ordered collection. If the items in this instance are indexed, then this method should also assign indices.

Annotations
@Override
writeHeaderPartback to summary
public void writeHeaderPart(AnnotatedOutput out)

Writes the portion of the file header that refers to this instance.

Parameters
out:AnnotatedOutput

non-null; where to write