Class NewAttributeBands
- java.lang.Object
-
- org.apache.commons.compress.harmony.pack200.BandSet
-
- org.apache.commons.compress.harmony.pack200.NewAttributeBands
-
public class NewAttributeBands extends BandSet
Set of bands relating to a non-predefined attribute that has had a layout definition given to pack200 (e.g. via one of the -C, -M, -F or -D command line options)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
NewAttributeBands.AttributeLayoutElement
An AttributeLayoutElement is a part of an attribute layout and has one or more bands associated with it, which transmit the AttributeElement data for successive Attributes of this type.class
NewAttributeBands.Call
class
NewAttributeBands.Callable
class
NewAttributeBands.Integral
class
NewAttributeBands.LayoutElement
class
NewAttributeBands.Reference
Constant Pool Referenceclass
NewAttributeBands.Replication
A replication is an array of layout elements, with an associated countclass
NewAttributeBands.Union
A Union is a type of layout element where the tag value acts as a selector for one of the union casesclass
NewAttributeBands.UnionCase
A Union case-
Nested classes/interfaces inherited from class org.apache.commons.compress.harmony.pack200.BandSet
BandSet.BandAnalysisResults, BandSet.BandData
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List
attributeLayoutElements
-
Fields inherited from class org.apache.commons.compress.harmony.pack200.BandSet
segmentHeader
-
-
Constructor Summary
Constructors Constructor Description NewAttributeBands(int effort, CpBands cpBands, SegmentHeader header, AttributeDefinitionBands.AttributeDefinition def)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAttribute(NewAttribute attribute)
java.lang.String
getAttributeName()
int
getFlagIndex()
boolean
isUsedAtLeastOnce()
int[]
numBackwardsCalls()
void
pack(java.io.OutputStream out)
Write the packed set of bands to the given output streamvoid
renumberBci(IntList bciRenumbering, java.util.Map labelsToOffsets)
Renumber any bytecode indexes or offsets as described in section 5.5.2 of the pack200 specification-
Methods inherited from class org.apache.commons.compress.harmony.pack200.BandSet
cpEntryListToArray, cpEntryOrNullListToArray, encodeBandInt, encodeFlags, encodeFlags, encodeScalar, encodeScalar, integerListToArray, longListToArray
-
-
-
-
Field Detail
-
attributeLayoutElements
protected java.util.List attributeLayoutElements
-
-
Constructor Detail
-
NewAttributeBands
public NewAttributeBands(int effort, CpBands cpBands, SegmentHeader header, AttributeDefinitionBands.AttributeDefinition def) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
addAttribute
public void addAttribute(NewAttribute attribute)
-
pack
public void pack(java.io.OutputStream out) throws java.io.IOException, Pack200Exception
Description copied from class:BandSet
Write the packed set of bands to the given output stream- Specified by:
pack
in classBandSet
- Parameters:
out
- TODO- Throws:
java.io.IOException
- If an I/O error occurs.Pack200Exception
- TODO
-
getAttributeName
public java.lang.String getAttributeName()
-
getFlagIndex
public int getFlagIndex()
-
numBackwardsCalls
public int[] numBackwardsCalls()
-
isUsedAtLeastOnce
public boolean isUsedAtLeastOnce()
-
renumberBci
public void renumberBci(IntList bciRenumbering, java.util.Map labelsToOffsets)
Renumber any bytecode indexes or offsets as described in section 5.5.2 of the pack200 specification- Parameters:
bciRenumbering
- TODOlabelsToOffsets
- TODO
-
-