Class SourceFileIndexer


  • public class SourceFileIndexer
    extends java.lang.Object
    This class is used to index source files in a SLEIGH language module. The SLEIGH compiler records the index of the source file for a constructor rather than the file name. This is an optimization to avoid repeating the file name in the .sla files.
    • Constructor Summary

      Constructors 
      Constructor Description
      SourceFileIndexer()
      Creates a {code SourceFileIndexer} object with an empty index.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getFileName​(java.lang.Integer index)
      Returns the file name at a given index
      java.lang.Integer getIndex​(java.lang.String filename)
      Returns the index for a filename
      java.lang.Integer index​(Location loc)
      Adds the filename of a location to the index if it is not already present.
      void restoreXml​(XmlPullParser parser)
      Restore an index saved as to XML
      void saveXml​(java.io.PrintStream s)
      Save the index as XML
      • Methods inherited from class java.lang.Object

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

      • SourceFileIndexer

        public SourceFileIndexer()
        Creates a {code SourceFileIndexer} object with an empty index.
    • Method Detail

      • index

        public java.lang.Integer index​(Location loc)
        Adds the filename of a location to the index if it is not already present.
        Parameters:
        loc - location containing filename to add
        Returns:
        index associated with filename, or null if a null Location or a Location with a null filename was provided as input.
      • getIndex

        public java.lang.Integer getIndex​(java.lang.String filename)
        Returns the index for a filename
        Parameters:
        filename - file
        Returns:
        index or null if filename is not in the index.
      • getFileName

        public java.lang.String getFileName​(java.lang.Integer index)
        Returns the file name at a given index
        Parameters:
        index - index
        Returns:
        file name or null if there is no file with that index
      • saveXml

        public void saveXml​(java.io.PrintStream s)
        Save the index as XML
        Parameters:
        s - stream to write to
      • restoreXml

        public void restoreXml​(XmlPullParser parser)
        Restore an index saved as to XML
        Parameters:
        parser - xml parser