Class ClassBands


  • public class ClassBands
    extends BandSet
    Class bands (corresponds to the class_bands set of bands in the pack200 specification)
    • Constructor Detail

      • ClassBands

        public ClassBands​(Segment segment,
                          int numClasses,
                          int effort,
                          boolean stripDebug)
                   throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • addClass

        public void addClass​(int major,
                             int flags,
                             java.lang.String className,
                             java.lang.String signature,
                             java.lang.String superName,
                             java.lang.String[] interfaces)
      • addField

        public void addField​(int flags,
                             java.lang.String name,
                             java.lang.String desc,
                             java.lang.String signature,
                             java.lang.Object value)
      • 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.
      • 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 class BandSet
        Parameters:
        out - TODO
        Throws:
        java.io.IOException - If an I/O error occurs.
        Pack200Exception - TODO
      • addMethod

        public void addMethod​(int flags,
                              java.lang.String name,
                              java.lang.String desc,
                              java.lang.String signature,
                              java.lang.String[] exceptions)
      • countArgs

        protected static int countArgs​(java.lang.String descriptor)
      • addSourceFile

        public void addSourceFile​(java.lang.String source)
      • addEnclosingMethod

        public void addEnclosingMethod​(java.lang.String owner,
                                       java.lang.String name,
                                       java.lang.String desc)
      • addMaxStack

        public void addMaxStack​(int maxStack,
                                int maxLocals)
      • addHandler

        public void addHandler​(org.objectweb.asm.Label start,
                               org.objectweb.asm.Label end,
                               org.objectweb.asm.Label handler,
                               java.lang.String type)
      • addLineNumber

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

        public void addLocalVariable​(java.lang.String name,
                                     java.lang.String desc,
                                     java.lang.String signature,
                                     org.objectweb.asm.Label start,
                                     org.objectweb.asm.Label end,
                                     int indx)
      • addParameterAnnotation

        public void addParameterAnnotation​(int parameter,
                                           java.lang.String desc,
                                           boolean visible,
                                           java.util.List nameRU,
                                           java.util.List t,
                                           java.util.List values,
                                           java.util.List caseArrayN,
                                           java.util.List nestTypeRS,
                                           java.util.List nestNameRU,
                                           java.util.List nestPairN)
      • addAnnotation

        public void addAnnotation​(int context,
                                  java.lang.String desc,
                                  boolean visible,
                                  java.util.List nameRU,
                                  java.util.List t,
                                  java.util.List values,
                                  java.util.List caseArrayN,
                                  java.util.List nestTypeRS,
                                  java.util.List nestNameRU,
                                  java.util.List nestPairN)
      • addAnnotationDefault

        public void addAnnotationDefault​(java.util.List nameRU,
                                         java.util.List t,
                                         java.util.List values,
                                         java.util.List caseArrayN,
                                         java.util.List nestTypeRS,
                                         java.util.List nestNameRU,
                                         java.util.List nestPairN)
      • removeCurrentClass

        public void removeCurrentClass()
        Remove all entries for the current class