Class Record

  • All Implemented Interfaces:
    java.lang.Cloneable, Node

    public final class Record
    extends Attribute
    Extends Attribute and records the classes and interfaces that are authorized to claim membership in the nest hosted by the current class or interface. There may be at most one Record attribute in a ClassFile structure.
    Since:
    6.9.0
    See Also:
    Attribute
    • Constructor Detail

      • Record

        public Record​(int nameIndex,
                      int length,
                      RecordComponentInfo[] classes,
                      ConstantPool constantPool)
        Constructs a new instance using components.
        Parameters:
        nameIndex - Index in constant pool
        length - Content length in bytes
        classes - Array of Record Component Info elements
        constantPool - Array of constants
    • Method Detail

      • accept

        public void accept​(Visitor v)
        Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class. For example, the hierarchy of methods, fields, attributes, etc. spawns a tree of objects.
        Specified by:
        accept in interface Node
        Specified by:
        accept in class Attribute
        Parameters:
        v - Visitor object
      • copy

        public Attribute copy​(ConstantPool constantPool)
        Copies this instance and its components.
        Specified by:
        copy in class Attribute
        Parameters:
        constantPool - constant pool to save.
        Returns:
        a deep copy of this instance and its components.
      • dump

        public void dump​(java.io.DataOutputStream file)
                  throws java.io.IOException
        Dumps this instance into a file stream in binary format.
        Overrides:
        dump in class Attribute
        Parameters:
        file - output stream.
        Throws:
        java.io.IOException - if an I/O error occurs.
      • toString

        public java.lang.String toString()
        Converts this instance to a String suitable for debugging.
        Overrides:
        toString in class Attribute
        Returns:
        String a String suitable for debugging.