Class Trie

  • Direct Known Subclasses:
    MultiTrie

    public class Trie
    extends Object
    A Trie is used to store a dictionary of words and their stems.

    Actually, what is stored are words with their respective patch commands. A trie can be termed forward (keys read from left to right) or backward (keys read from right to left). This property will vary depending on the language for which a Trie is constructed.

    • Constructor Detail

      • Trie

        public Trie​(DataInput is)
             throws IOException
        Constructor for the Trie object.
        Parameters:
        is - the input stream
        Throws:
        IOException - if an I/O error occurs
      • Trie

        public Trie​(boolean forward)
        Constructor for the Trie object.
        Parameters:
        forward - set to true
      • Trie

        public Trie​(boolean forward,
                    int root,
                    List<CharSequence> cmds,
                    List<Row> rows)
        Constructor for the Trie object.
        Parameters:
        forward - true if read left to right, false if read right to left
        root - index of the row that is the root node
        cmds - the patch commands to store
        rows - a Vector of Vectors. Each inner Vector is a node of this Trie
    • Method Detail

      • getAll

        public CharSequence[] getAll​(CharSequence key)
        Gets the all attribute of the Trie object
        Parameters:
        key - Description of the Parameter
        Returns:
        The all value
      • getCells

        public int getCells()
        Return the number of cells in this Trie object.
        Returns:
        the number of cells
      • getCellsPnt

        public int getCellsPnt()
        Gets the cellsPnt attribute of the Trie object
        Returns:
        The cellsPnt value
      • getCellsVal

        public int getCellsVal()
        Gets the cellsVal attribute of the Trie object
        Returns:
        The cellsVal value
      • getFully

        public CharSequence getFully​(CharSequence key)
        Return the element that is stored in a cell associated with the given key.
        Parameters:
        key - the key
        Returns:
        the associated element
      • getLastOnPath

        public CharSequence getLastOnPath​(CharSequence key)
        Return the element that is stored as last on a path associated with the given key.
        Parameters:
        key - the key associated with the desired element
        Returns:
        the last on path element
      • store

        public void store​(DataOutput os)
                   throws IOException
        Write this Trie to the given output stream.
        Parameters:
        os - the output stream
        Throws:
        IOException - if an I/O error occurs
      • reduce

        public Trie reduce​(Reduce by)
        Remove empty rows from the given Trie and return the newly reduced Trie.
        Parameters:
        by - the Trie to reduce
        Returns:
        the newly reduced Trie
      • printInfo

        public void printInfo​(PrintStream out,
                              CharSequence prefix)
        writes debugging info to the printstream