Class LineNumberTable


  • public class LineNumberTable
    extends Attribute
    LineNumberTable is an attribute of a code attribute. A LineNumberTable stores information that relates indices into the code array (instructions) to the lines of code in the source file from which they were compiled. This optional attribute is used with debuggers (duh) and consists of an array of reflect.LineNumberDebugInfo.
    See Also:
    Code, LineNumberDebugInfo
    • Constructor Summary

      Constructors 
      Constructor Description
      LineNumberTable​(java.io.DataInputStream in, int nameIndex, int length)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object clone()  
      int length()
      Get the length of the attribute.
      LineNumberDebugInfo[] lineNumbers()
      Get the line number debug info for the code.
      void setLineNumbers​(LineNumberDebugInfo[] lineNumbers)
      Set the line number debug info for the code.
      java.lang.String toString()
      Returns a string representation of the attribute.
      void writeData​(java.io.DataOutputStream out)
      Write the attribute to a data stream.
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • LineNumberTable

        public LineNumberTable​(java.io.DataInputStream in,
                               int nameIndex,
                               int length)
                        throws java.io.IOException
        Constructor. Create an attribute from a data stream.
        Parameters:
        in - The data stream of the class file.
        nameIndex - The index into the constant pool of the name of the attribute.
        length - The length of the attribute, excluding the header.
        Throws:
        java.io.IOException - If an error occurs while reading.
    • Method Detail

      • lineNumbers

        public LineNumberDebugInfo[] lineNumbers()
        Get the line number debug info for the code.
        Returns:
        The line number debug info for the code.
      • setLineNumbers

        public void setLineNumbers​(LineNumberDebugInfo[] lineNumbers)
        Set the line number debug info for the code.
        Parameters:
        lineNumbers - The line number debug info for the code.
      • length

        public int length()
        Get the length of the attribute.
        Overrides:
        length in class Attribute
        Returns:
        The length of the attribute.
      • toString

        public java.lang.String toString()
        Description copied from class: Attribute
        Returns a string representation of the attribute.
        Overrides:
        toString in class Attribute
      • writeData

        public void writeData​(java.io.DataOutputStream out)
                       throws java.io.IOException
        Write the attribute to a data stream.
        Specified by:
        writeData in class Attribute
        Parameters:
        out - The data stream of the class file.
        Throws:
        java.io.IOException - If an error occurs while writing.
      • clone

        public java.lang.Object clone()
        Overrides:
        clone in class Attribute