Class StackMapTableAttribute


  • public class StackMapTableAttribute
    extends Attribute
    The StackMapTable attribute: verification frames describing local and stack types at branch targets.
    • Constructor Detail

      • StackMapTableAttribute

        public StackMapTableAttribute​(String name,
                                      MemberEntry parent,
                                      int nameIndex,
                                      int length)
        Creates the attribute shell for parsing, attached to a member.
        Parameters:
        name - the attribute name
        parent - the member the attribute belongs to
        nameIndex - constant-pool index of the name Utf8
        length - the attribute length in bytes
      • StackMapTableAttribute

        public StackMapTableAttribute​(String name,
                                      ClassFile parent,
                                      int nameIndex,
                                      int length)
        Creates the attribute shell for parsing, attached to a class.
        Parameters:
        name - the attribute name
        parent - the class the attribute belongs to
        nameIndex - constant-pool index of the name Utf8
        length - the attribute length in bytes
    • Method Detail

      • getNumberOfEntries

        public int getNumberOfEntries()
        Returns:
        the number of entries
      • setFrames

        public void setFrames​(List<StackMapFrame> frames)
        Sets the frames for this StackMapTable.
        Parameters:
        frames - The list of StackMapFrame entries
      • create

        public static StackMapTableAttribute create​(String name,
                                                    MemberEntry parent,
                                                    int nameIndex,
                                                    List<StackMapFrame> frames)
        Creates a new StackMapTableAttribute with the given frames.
        Parameters:
        name - The attribute name ("StackMapTable")
        parent - The parent MemberEntry (method)
        nameIndex - The constant pool index for the attribute name
        frames - The list of frames
        Returns:
        A new StackMapTableAttribute
      • read

        public void read​(ClassFile classFile,
                         int length)
        Description copied from class: Attribute
        Reads the attribute data from the class file.
        Specified by:
        read in class Attribute
        Parameters:
        classFile - The ClassFile utility to read data.
        length - The length of the attribute.
      • updateLength

        public void updateLength()
        Description copied from class: Attribute
        Recomputes the attribute length field from the current in-memory content.
        Specified by:
        updateLength in class Attribute