com.android.dx.dex.file
Class ClassDefsSection

java.lang.Object
  extended by com.android.dx.dex.file.Section
      extended by com.android.dx.dex.file.UniformItemSection
          extended by com.android.dx.dex.file.ClassDefsSection

public final class ClassDefsSection
extends UniformItemSection

Class definitions list section of a .dex file.


Constructor Summary
ClassDefsSection(DexFile file)
          Constructs an instance.
 
Method Summary
 void add(ClassDefItem clazz)
          Adds an element to this instance.
 IndexedItem get(Constant cst)
          Gets the item corresponding to the given Constant.
 Collection<? extends Item> items()
          Gets the collection of all the items in this section.
protected  void orderItems()
          Alters or picks the order for items in this instance if desired, so that subsequent calls to Section.items() will yield a so-ordered collection.
 void writeHeaderPart(AnnotatedOutput out)
          Writes the portion of the file header that refers to this instance.
 
Methods inherited from class com.android.dx.dex.file.UniformItemSection
getAbsoluteItemOffset, prepare0, writeSize, writeTo0
 
Methods inherited from class com.android.dx.dex.file.Section
align, getAbsoluteOffset, getAlignment, getFile, getFileOffset, getName, prepare, setFileOffset, throwIfNotPrepared, throwIfPrepared, validateAlignment, writeTo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassDefsSection

public ClassDefsSection(DexFile file)
Constructs an instance. The file offset is initially unknown.

Parameters:
file - non-null; file that this instance is part of
Method Detail

items

public Collection<? extends Item> items()
Gets the collection of all the items in this section. It is not valid to attempt to change the returned list.

Specified by:
items in class Section
Returns:
non-null; the items

get

public IndexedItem get(Constant cst)
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.

Specified by:
get in class UniformItemSection
Parameters:
cst - non-null; constant to look for
Returns:
non-null; the corresponding item found in this instance

writeHeaderPart

public void writeHeaderPart(AnnotatedOutput out)
Writes the portion of the file header that refers to this instance.

Parameters:
out - non-null; where to write

add

public void add(ClassDefItem clazz)
Adds an element to this instance. It is illegal to attempt to add more than one class with the same name.

Parameters:
clazz - non-null; the class def to add

orderItems

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

Specified by:
orderItems in class UniformItemSection


Copyright © 2015. All rights reserved.