org.apache.commons.compress.harmony.pack200

## Class ClassBands

- java.lang.Object
- - org.apache.commons.compress.harmony.pack200.BandSet
  - - org.apache.commons.compress.harmony.pack200.ClassBands

-     public class ClassBands
      extends BandSet

  Class bands (corresponds to the `class_bands` set of bands in the pack200 specification)

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.commons.compress.harmony.pack200.BandSet

      `BandSet.BandAnalysisResults, BandSet.BandData`

  - ### Field Summary

    - ### Fields inherited from class org.apache.commons.compress.harmony.pack200.BandSet

      `segmentHeader`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ClassBands(Segment segment, int numClasses, int effort, boolean stripDebug)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addAnnotation(int context, String desc, boolean visible, List<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> nestPairN)`
    `void` | `addAnnotationDefault(List<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> 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<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> nestPairN)`
    `void` | `addSourceFile(String source)`
    `protected static int` | `countArgs(String descriptor)`
    `void` | `currentClassReferencesInnerClass(CPClass inner)`
    `void` | `doBciRenumbering(IntList bciRenumbering, Map<org.objectweb.asm.Label,Integer> 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

    - ### Methods inherited from class org.apache.commons.compress.harmony.pack200.BandSet

      `cpEntryListToArray, cpEntryOrNullListToArray, encodeBandInt, encodeFlags, encodeFlags, encodeScalar, encodeScalar, integerListToArray, longListToArray`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ClassBands

          public ClassBands(Segment segment,
                            int numClasses,
                            int effort,
                            boolean stripDebug)
                     throws IOException

      Throws:
        `IOException`

  - ### Method Detail

    - #### countArgs

          protected static int countArgs(String descriptor)

    - #### addAnnotation

          public void addAnnotation(int context,
                                    String desc,
                                    boolean visible,
                                    List<String> nameRU,
                                    List<String> tags,
                                    List<Object> values,
                                    List<Integer> caseArrayN,
                                    List<String> nestTypeRS,
                                    List<String> nestNameRU,
                                    List<Integer> nestPairN)

    - #### addAnnotationDefault

          public void addAnnotationDefault(List<String> nameRU,
                                           List<String> tags,
                                           List<Object> values,
                                           List<Integer> caseArrayN,
                                           List<String> nestTypeRS,
                                           List<String> nestNameRU,
                                           List<Integer> nestPairN)

    - #### addClass

          public void addClass(int major,
                               int flags,
                               String className,
                               String signature,
                               String superName,
                               String[] interfaces)

    - #### addClassAttribute

          public void addClassAttribute(NewAttribute attribute)

    - #### addCode

          public void addCode()

    - #### addCodeAttribute

          public void addCodeAttribute(NewAttribute attribute)

    - #### addEnclosingMethod

          public void addEnclosingMethod(String owner,
                                         String name,
                                         String desc)

    - #### addField

          public void addField(int flags,
                               String name,
                               String desc,
                               String signature,
                               Object value)

    - #### addFieldAttribute

          public void addFieldAttribute(NewAttribute attribute)

    - #### addHandler

          public void addHandler(org.objectweb.asm.Label start,
                                 org.objectweb.asm.Label end,
                                 org.objectweb.asm.Label handler,
                                 String type)

    - #### addLineNumber

          public void addLineNumber(int line,
                                    org.objectweb.asm.Label start)

    - #### addLocalVariable

          public void addLocalVariable(String name,
                                       String desc,
                                       String signature,
                                       org.objectweb.asm.Label start,
                                       org.objectweb.asm.Label end,
                                       int indx)

    - #### addMaxStack

          public void addMaxStack(int maxStack,
                                  int maxLocals)

    - #### addMethod

          public void addMethod(int flags,
                                String name,
                                String desc,
                                String signature,
                                String[] exceptions)

    - #### addMethodAttribute

          public void addMethodAttribute(NewAttribute attribute)

    - #### addParameterAnnotation

          public void addParameterAnnotation(int parameter,
                                             String desc,
                                             boolean visible,
                                             List<String> nameRU,
                                             List<String> tags,
                                             List<Object> values,
                                             List<Integer> caseArrayN,
                                             List<String> nestTypeRS,
                                             List<String> nestNameRU,
                                             List<Integer> nestPairN)

    - #### addSourceFile

          public void addSourceFile(String source)

    - #### currentClassReferencesInnerClass

          public void currentClassReferencesInnerClass(CPClass inner)

    - #### doBciRenumbering

          public void doBciRenumbering(IntList bciRenumbering,
                                       Map<org.objectweb.asm.Label,Integer> labelsToOffsets)

    - #### endOfClass

          public void endOfClass()

    - #### endOfMethod

          public void endOfMethod()

    - #### 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.

    - #### isAnySyntheticClasses

          public boolean isAnySyntheticClasses()

    - #### isAnySyntheticFields

          public boolean isAnySyntheticFields()

    - #### isAnySyntheticMethods

          public boolean isAnySyntheticMethods()

    - #### numClassesProcessed

          public int numClassesProcessed()

    - #### pack

          public void pack(OutputStream out)
                    throws IOException,
                           Pack200Exception

      Description copied from class: `BandSet`
      Write the packed set of bands to the given output stream
      Specified by:
        `pack` in class `BandSet`
      Parameters:
        `out` - TODO
      Throws:
        `IOException` - If an I/O error occurs.
        `Pack200Exception` - TODO

    - #### removeCurrentClass

          public void removeCurrentClass()

      Remove all entries for the current class

Copyright © 2002–2022 The Apache Software Foundation. All rights reserved.