Class LocalVariableTableAttribute


  • public class LocalVariableTableAttribute
    extends Attribute
    The LocalVariableTable attribute: name, type, slot, and live range of each local variable.
    • Constructor Detail

      • LocalVariableTableAttribute

        public LocalVariableTableAttribute​(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
      • LocalVariableTableAttribute

        public LocalVariableTableAttribute​(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

      • setLocalVariableTable

        public void setLocalVariableTable​(List<LocalVariableTableEntry> localVariableTable)
        Sets the entries (used when emitting a table during lowering rather than reading one from bytecode).
        Parameters:
        localVariableTable - the entries to emit
      • 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