org.egothor.stemmer
Class MultiTrie2

java.lang.Object
  extended byorg.egothor.stemmer.Trie
      extended byorg.egothor.stemmer.MultiTrie
          extended byorg.egothor.stemmer.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 commmands broken into their constituent parts, as a MultiTrie does, but the commands are delimited by the skip command.

Author:
Leo Galambos

Constructor Summary
MultiTrie2(boolean forward)
          Constructor for the MultiTrie2 object
MultiTrie2(java.io.DataInput is)
          Constructor for the MultiTrie object.
 
Method Summary
 void add(java.lang.String key, java.lang.String cmd)
          Add an element to this structure consisting of the given key and patch command.
 java.lang.String[] decompose(java.lang.String cmd)
          Break the given patch command into its constituent pieces.
 java.lang.String getFully(java.lang.String key)
          Return the element that is stored in a cell associated with the given key.
 java.lang.String getLastOnPath(java.lang.String key)
          Return the element that is stored as last on a path belonging to the given key.
 Trie reduce(Reduce by)
          Remove empty rows from the given Trie and return the newly reduced Trie.
 void store(java.io.DataOutput os)
          Write this data structure to the given output stream.
 
Methods inherited from class org.egothor.stemmer.MultiTrie
printInfo
 
Methods inherited from class org.egothor.stemmer.Trie
getAll, getCells, getCellsPnt, getCellsVal
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiTrie2

public MultiTrie2(java.io.DataInput is)
           throws java.io.IOException
Constructor for the MultiTrie object.

Parameters:
is - the input stream
Throws:
java.io.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 java.lang.String getFully(java.lang.String 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 java.lang.String getLastOnPath(java.lang.String 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(java.io.DataOutput os)
           throws java.io.IOException
Write this data structure to the given output stream.

Overrides:
store in class MultiTrie
Parameters:
os - the output stream
Throws:
java.io.IOException - if an I/O error occurs

add

public void add(java.lang.String key,
                java.lang.String 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 java.lang.String[] decompose(java.lang.String 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