com.android.dx.rop.cst
Interface ConstantPool

All Known Implementing Classes:
StdConstantPool

public interface ConstantPool

Interface for constant pools, which are, more or less, just lists of Constant objects.


Method Summary
 Constant get(int n)
          Get the nth entry in the constant pool, which must be valid.
 Constant get0Ok(int n)
          Get the nth entry in the constant pool, which must be valid unless n == 0, in which case null is returned.
 Constant[] getEntries()
          Get all entries in this constant pool.
 Constant getOrNull(int n)
          Get the nth entry in the constant pool, or null if the index is in-range but invalid.
 int size()
          Get the "size" of the constant pool.
 

Method Detail

size

int size()
Get the "size" of the constant pool. This corresponds to the class file field constant_pool_count, and is in fact always at least one more than the actual size of the constant pool, as element 0 is always invalid.

Returns:
>= 1; the size

get

Constant get(int n)
Get the nth entry in the constant pool, which must be valid.

Parameters:
n - n >= 0, n < size(); the constant pool index
Returns:
non-null; the corresponding entry
Throws:
IllegalArgumentException - thrown if n is in-range but invalid

get0Ok

Constant get0Ok(int n)
Get the nth entry in the constant pool, which must be valid unless n == 0, in which case null is returned.

Parameters:
n - n >= 0, n < size(); the constant pool index
Returns:
null-ok; the corresponding entry, if n != 0
Throws:
IllegalArgumentException - thrown if n is in-range and non-zero but invalid

getOrNull

Constant getOrNull(int n)
Get the nth entry in the constant pool, or null if the index is in-range but invalid. In particular, null is returned for index 0 as well as the index after any entry which is defined to take up two slots (that is, Long and Double entries).

Parameters:
n - n >= 0, n < size(); the constant pool index
Returns:
null-ok; the corresponding entry, or null if the index is in-range but invalid

getEntries

Constant[] getEntries()
Get all entries in this constant pool.

Returns:
the returned array may contain null entries.


Copyright © 2015. All rights reserved.