Class MultiTrie2


  • public class MultiTrie2
    extends MultiTrie
    The MultiTrie is a Trie of Tries.

    It stores words and their associated patch commands. The MultiTrie handles patch commands broken into their constituent parts, as a MultiTrie does, but the commands are delimited by the skip command.

    • Constructor Detail

      • MultiTrie2

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

        public MultiTrie2​(boolean forward)
        Constructor for the MultiTrie2 object
        Parameters:
        forward - set to true if the elements should be read left to right
    • Method Detail

      • getFully

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

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

        public void store​(DataOutput os)
                   throws IOException
        Write this data structure to the given output stream.
        Overrides:
        store in class MultiTrie
        Parameters:
        os - the output stream
        Throws:
        IOException - if an I/O error occurs
      • add

        public void add​(CharSequence key,
                        CharSequence cmd)
        Add an element to this structure consisting of the given key and patch command.

        This method will return without executing if the cmd parameter's length is 0.

        Overrides:
        add in class MultiTrie
        Parameters:
        key - the key
        cmd - the patch command
      • decompose

        public CharSequence[] decompose​(CharSequence cmd)
        Break the given patch command into its constituent pieces. The pieces are delimited by NOOP commands.
        Parameters:
        cmd - the patch command
        Returns:
        an array containing the pieces of the command
      • reduce

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