public class ClassBands extends BandSet
class_bands
set of bands in the pack200 specification)BandSet.BandAnalysisResults, BandSet.BandData
segmentHeader
Constructor and Description |
---|
ClassBands(Segment segment,
int numClasses,
int effort,
boolean stripDebug) |
Modifier and Type | Method and Description |
---|---|
void |
addAnnotation(int context,
String desc,
boolean visible,
List nameRU,
List t,
List values,
List caseArrayN,
List nestTypeRS,
List nestNameRU,
List nestPairN) |
void |
addAnnotationDefault(List nameRU,
List t,
List values,
List caseArrayN,
List nestTypeRS,
List nestNameRU,
List nestPairN) |
void |
addClass(int major,
int flags,
String className,
String signature,
String superName,
String[] interfaces) |
void |
addClassAttribute(NewAttribute attribute) |
void |
addCode() |
void |
addCodeAttribute(NewAttribute attribute) |
void |
addEnclosingMethod(String owner,
String name,
String desc) |
void |
addField(int flags,
String name,
String desc,
String signature,
Object value) |
void |
addFieldAttribute(NewAttribute attribute) |
void |
addHandler(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
String type) |
void |
addLineNumber(int line,
org.objectweb.asm.Label start) |
void |
addLocalVariable(String name,
String desc,
String signature,
org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
int indx) |
void |
addMaxStack(int maxStack,
int maxLocals) |
void |
addMethod(int flags,
String name,
String desc,
String signature,
String[] exceptions) |
void |
addMethodAttribute(NewAttribute attribute) |
void |
addParameterAnnotation(int parameter,
String desc,
boolean visible,
List nameRU,
List t,
List values,
List caseArrayN,
List nestTypeRS,
List nestNameRU,
List nestPairN) |
void |
addSourceFile(String source) |
protected static int |
countArgs(String descriptor) |
void |
currentClassReferencesInnerClass(CPClass inner) |
void |
doBciRenumbering(IntList bciRenumbering,
Map labelsToOffsets) |
void |
endOfClass() |
void |
endOfMethod() |
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.
|
boolean |
isAnySyntheticClasses() |
boolean |
isAnySyntheticFields() |
boolean |
isAnySyntheticMethods() |
int |
numClassesProcessed() |
void |
pack(OutputStream out)
Write the packed set of bands to the given output stream
|
void |
removeCurrentClass()
Remove all entries for the current class
|
cpEntryListToArray, cpEntryOrNullListToArray, encodeBandInt, encodeFlags, encodeFlags, encodeScalar, encodeScalar, integerListToArray, longListToArray
public ClassBands(Segment segment, int numClasses, int effort, boolean stripDebug) throws IOException
IOException
public void addClass(int major, int flags, String className, String signature, String superName, String[] interfaces)
public void currentClassReferencesInnerClass(CPClass inner)
public void finaliseBands()
public void pack(OutputStream out) throws IOException, Pack200Exception
BandSet
pack
in class BandSet
out
- TODOIOException
- If an I/O error occurs.Pack200Exception
- TODOpublic void addMethod(int flags, String name, String desc, String signature, String[] exceptions)
public void endOfMethod()
public void endOfClass()
public void addSourceFile(String source)
public void addEnclosingMethod(String owner, String name, String desc)
public void addClassAttribute(NewAttribute attribute)
public void addFieldAttribute(NewAttribute attribute)
public void addMethodAttribute(NewAttribute attribute)
public void addCodeAttribute(NewAttribute attribute)
public void addMaxStack(int maxStack, int maxLocals)
public void addCode()
public void addHandler(org.objectweb.asm.Label start, org.objectweb.asm.Label end, org.objectweb.asm.Label handler, String type)
public void addLineNumber(int line, org.objectweb.asm.Label start)
public void addLocalVariable(String name, String desc, String signature, org.objectweb.asm.Label start, org.objectweb.asm.Label end, int indx)
public void doBciRenumbering(IntList bciRenumbering, Map labelsToOffsets)
public boolean isAnySyntheticClasses()
public boolean isAnySyntheticFields()
public boolean isAnySyntheticMethods()
public void addParameterAnnotation(int parameter, String desc, boolean visible, List nameRU, List t, List values, List caseArrayN, List nestTypeRS, List nestNameRU, List nestPairN)
public void addAnnotation(int context, String desc, boolean visible, List nameRU, List t, List values, List caseArrayN, List nestTypeRS, List nestNameRU, List nestPairN)
public void addAnnotationDefault(List nameRU, List t, List values, List caseArrayN, List nestTypeRS, List nestNameRU, List nestPairN)
public void removeCurrentClass()
public int numClassesProcessed()
Copyright © 2002–2020 The Apache Software Foundation. All rights reserved.