- java.lang.Object
-
- kala.compress.harmony.pack200.BandSet
-
- kala.compress.harmony.pack200.CpBands
-
public class CpBands extends BandSet
Pack200 Constant Pool Bands
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class kala.compress.harmony.pack200.BandSet
BandSet.BandAnalysisResults, BandSet.BandData
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<CPClass>cp_Classprivate java.util.Set<CPNameAndType>cp_Descrprivate java.util.Set<CPDouble>cp_Doubleprivate java.util.Set<CPMethodOrField>cp_Fieldprivate java.util.Set<CPFloat>cp_Floatprivate java.util.Set<CPMethodOrField>cp_Imethodprivate java.util.Set<CPInt>cp_Intprivate java.util.Set<CPLong>cp_Longprivate java.util.Set<CPMethodOrField>cp_Methodprivate java.util.Set<CPSignature>cp_Signatureprivate java.util.Set<CPString>cp_Stringprivate java.util.Set<CPUTF8>cp_Utf8private java.util.Set<java.lang.String>defaultAttributeNamesprivate java.util.Map<java.lang.Object,CPConstant<?>>objectsToCPConstantprivate Segmentsegmentprivate java.util.Map<java.lang.String,CPClass>stringsToCpClassprivate java.util.Map<java.lang.String,CPMethodOrField>stringsToCpFieldprivate java.util.Map<java.lang.String,CPMethodOrField>stringsToCpIMethodprivate java.util.Map<java.lang.String,CPMethodOrField>stringsToCpMethodprivate java.util.Map<java.lang.String,CPNameAndType>stringsToCpNameAndTypeprivate java.util.Map<java.lang.String,CPSignature>stringsToCpSignatureprivate java.util.Map<java.lang.String,CPUTF8>stringsToCpUtf8-
Fields inherited from class kala.compress.harmony.pack200.BandSet
effort, segmentHeader
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddCharacters(java.util.List<java.lang.Character> chars, char[] charArray)voidaddCPClass(java.lang.String className)(package private) voidaddCPUtf8(java.lang.String utf8)private voidaddIndices()booleanexistsCpClass(java.lang.String className)voidfinaliseBands()All input classes for the segment have now been read in, so this method is called so that this class can calculate/complete anything it could not do while classes were being read.CPConstant<?>getConstant(java.lang.Object value)CPClassgetCPClass(java.lang.String className)CPMethodOrFieldgetCPField(java.lang.String owner, java.lang.String name, java.lang.String desc)CPMethodOrFieldgetCPField(CPClass cpClass, java.lang.String name, java.lang.String desc)CPMethodOrFieldgetCPIMethod(java.lang.String owner, java.lang.String name, java.lang.String desc)CPMethodOrFieldgetCPIMethod(CPClass cpClass, java.lang.String name, java.lang.String desc)CPMethodOrFieldgetCPMethod(java.lang.String owner, java.lang.String name, java.lang.String desc)CPMethodOrFieldgetCPMethod(CPClass cpClass, java.lang.String name, java.lang.String desc)CPNameAndTypegetCPNameAndType(java.lang.String name, java.lang.String signature)CPSignaturegetCPSignature(java.lang.String signature)CPUTF8getCPUtf8(java.lang.String utf8)voidpack(java.io.OutputStream out)Write the packed set of bands to the given output streamprivate voidremoveCpUtf8(java.lang.String string)private voidremoveSignaturesFromCpUTF8()private voidwriteCpClass(java.io.OutputStream out)private voidwriteCpDescr(java.io.OutputStream out)private voidwriteCpDouble(java.io.OutputStream out)private voidwriteCpFloat(java.io.OutputStream out)private voidwriteCpInt(java.io.OutputStream out)private voidwriteCpLong(java.io.OutputStream out)private voidwriteCpMethodOrField(java.util.Set<CPMethodOrField> cp, java.io.OutputStream out, java.lang.String name)private voidwriteCpSignature(java.io.OutputStream out)private voidwriteCpString(java.io.OutputStream out)private voidwriteCpUtf8(java.io.OutputStream out)-
Methods inherited from class kala.compress.harmony.pack200.BandSet
cpEntryListToArray, cpEntryOrNullListToArray, encodeBandInt, encodeFlags, encodeFlags, encodeScalar, encodeScalar, integerListToArray, longListToArray
-
-
-
-
Field Detail
-
defaultAttributeNames
private final java.util.Set<java.lang.String> defaultAttributeNames
-
cp_Utf8
private final java.util.Set<CPUTF8> cp_Utf8
-
cp_Int
private final java.util.Set<CPInt> cp_Int
-
cp_Float
private final java.util.Set<CPFloat> cp_Float
-
cp_Long
private final java.util.Set<CPLong> cp_Long
-
cp_Double
private final java.util.Set<CPDouble> cp_Double
-
cp_String
private final java.util.Set<CPString> cp_String
-
cp_Class
private final java.util.Set<CPClass> cp_Class
-
cp_Signature
private final java.util.Set<CPSignature> cp_Signature
-
cp_Descr
private final java.util.Set<CPNameAndType> cp_Descr
-
cp_Field
private final java.util.Set<CPMethodOrField> cp_Field
-
cp_Method
private final java.util.Set<CPMethodOrField> cp_Method
-
cp_Imethod
private final java.util.Set<CPMethodOrField> cp_Imethod
-
stringsToCpUtf8
private final java.util.Map<java.lang.String,CPUTF8> stringsToCpUtf8
-
stringsToCpNameAndType
private final java.util.Map<java.lang.String,CPNameAndType> stringsToCpNameAndType
-
stringsToCpClass
private final java.util.Map<java.lang.String,CPClass> stringsToCpClass
-
stringsToCpSignature
private final java.util.Map<java.lang.String,CPSignature> stringsToCpSignature
-
stringsToCpMethod
private final java.util.Map<java.lang.String,CPMethodOrField> stringsToCpMethod
-
stringsToCpField
private final java.util.Map<java.lang.String,CPMethodOrField> stringsToCpField
-
stringsToCpIMethod
private final java.util.Map<java.lang.String,CPMethodOrField> stringsToCpIMethod
-
objectsToCPConstant
private final java.util.Map<java.lang.Object,CPConstant<?>> objectsToCPConstant
-
segment
private final Segment segment
-
-
Constructor Detail
-
CpBands
public CpBands(Segment segment, int effort)
-
-
Method Detail
-
addCharacters
private void addCharacters(java.util.List<java.lang.Character> chars, char[] charArray)
-
addCPClass
public void addCPClass(java.lang.String className)
-
addCPUtf8
void addCPUtf8(java.lang.String utf8)
-
addIndices
private void addIndices()
-
existsCpClass
public boolean existsCpClass(java.lang.String className)
-
finaliseBands
public void finaliseBands()
All input classes for the segment have now been read in, so this method is called so that this class can calculate/complete anything it could not do while classes were being read.
-
getConstant
public CPConstant<?> getConstant(java.lang.Object value)
-
getCPClass
public CPClass getCPClass(java.lang.String className)
-
getCPField
public CPMethodOrField getCPField(CPClass cpClass, java.lang.String name, java.lang.String desc)
-
getCPField
public CPMethodOrField getCPField(java.lang.String owner, java.lang.String name, java.lang.String desc)
-
getCPIMethod
public CPMethodOrField getCPIMethod(CPClass cpClass, java.lang.String name, java.lang.String desc)
-
getCPIMethod
public CPMethodOrField getCPIMethod(java.lang.String owner, java.lang.String name, java.lang.String desc)
-
getCPMethod
public CPMethodOrField getCPMethod(CPClass cpClass, java.lang.String name, java.lang.String desc)
-
getCPMethod
public CPMethodOrField getCPMethod(java.lang.String owner, java.lang.String name, java.lang.String desc)
-
getCPNameAndType
public CPNameAndType getCPNameAndType(java.lang.String name, java.lang.String signature)
-
getCPSignature
public CPSignature getCPSignature(java.lang.String signature)
-
getCPUtf8
public CPUTF8 getCPUtf8(java.lang.String utf8)
-
pack
public void pack(java.io.OutputStream out) throws java.io.IOException, Pack200ExceptionDescription copied from class:BandSetWrite the packed set of bands to the given output stream- Specified by:
packin classBandSet- Parameters:
out- TODO- Throws:
java.io.IOException- If an I/O error occurs.Pack200Exception- TODO
-
removeCpUtf8
private void removeCpUtf8(java.lang.String string)
-
removeSignaturesFromCpUTF8
private void removeSignaturesFromCpUTF8()
-
writeCpClass
private void writeCpClass(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpDescr
private void writeCpDescr(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpDouble
private void writeCpDouble(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpFloat
private void writeCpFloat(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpInt
private void writeCpInt(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpLong
private void writeCpLong(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpMethodOrField
private void writeCpMethodOrField(java.util.Set<CPMethodOrField> cp, java.io.OutputStream out, java.lang.String name) throws java.io.IOException, Pack200Exception
- Throws:
java.io.IOExceptionPack200Exception
-
writeCpSignature
private void writeCpSignature(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpString
private void writeCpString(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
writeCpUtf8
private void writeCpUtf8(java.io.OutputStream out) throws java.io.IOException, Pack200Exception- Throws:
java.io.IOExceptionPack200Exception
-
-