public class NewAttributeBands extends BandSet
Modifier and Type | Class and Description |
---|---|
class |
NewAttributeBands.Call |
static class |
NewAttributeBands.Callable |
class |
NewAttributeBands.Integral |
class |
NewAttributeBands.Reference
Constant Pool Reference
|
class |
NewAttributeBands.Replication
A replication is an array of layout elements, with an associated count
|
class |
NewAttributeBands.Union
A Union is a type of layout element where the tag value acts as a selector for one of the union cases
|
class |
NewAttributeBands.UnionCase
A Union case
|
Modifier and Type | Field and Description |
---|---|
protected java.util.List |
attributeLayoutElements |
Constructor and Description |
---|
NewAttributeBands(Segment segment,
AttributeLayout attributeLayout) |
Modifier and Type | Method and Description |
---|---|
int |
getBackwardsCallCount() |
BHSDCodec |
getCodec(java.lang.String layoutElement)
Returns the
BHSDCodec that should be used for the given layout element. |
java.util.List |
parseAttributes(java.io.InputStream in,
int occurrenceCount)
Parse the bands relating to this AttributeLayout and return the correct class file attributes as a List of
Attribute . |
void |
read(java.io.InputStream in) |
void |
setBackwardsCalls(int[] backwardsCalls)
Once the attribute bands have been read the callables can be informed about the number of times each is subject
to a backwards call.
|
void |
unpack() |
decodeBandInt, decodeBandInt, getReferences, getReferences, parseCPClassReferences, parseCPDescriptorReferences, parseCPDoubleReferences, parseCPFieldRefReferences, parseCPFloatReferences, parseCPInterfaceMethodRefReferences, parseCPIntReferences, parseCPLongReferences, parseCPMethodRefReferences, parseCPSignatureReferences, parseCPSignatureReferences, parseCPStringReferences, parseCPUTF8References, parseCPUTF8References, parseFlags, parseFlags, parseFlags, parseFlags, parseReferences, parseReferences, unpack
protected java.util.List attributeLayoutElements
public NewAttributeBands(Segment segment, AttributeLayout attributeLayout) throws java.io.IOException
java.io.IOException
public void read(java.io.InputStream in) throws java.io.IOException, Pack200Exception
read
in class BandSet
java.io.IOException
Pack200Exception
public java.util.List parseAttributes(java.io.InputStream in, int occurrenceCount) throws java.io.IOException, Pack200Exception
Attribute
.in
- parse source.occurrenceCount
- TODOAttribute
.java.io.IOException
- If an I/O error occurs.Pack200Exception
- TODOpublic BHSDCodec getCodec(java.lang.String layoutElement)
BHSDCodec
that should be used for the given layout element.layoutElement
- TODOBHSDCodec
that should be used for the given layout element.public int getBackwardsCallCount()
public void setBackwardsCalls(int[] backwardsCalls) throws java.io.IOException
backwardsCalls
- one int for each backwards callable, which contains the number of times that callable is
subject to a backwards call.java.io.IOException
- If an I/O error occurs.public void unpack() throws java.io.IOException, Pack200Exception
unpack
in class BandSet
java.io.IOException
Pack200Exception