com.swabunga.spell.engine

Interface SpellDictionary

public interface SpellDictionary

An interface for all dictionary implementations. It defines the most basic operations on a dictionary: adding words, checking if a word is correct, and getting a list of suggestions for misspelled words.
Method Summary
voidaddWord(String word)
Add a word permanently to the dictionary.
ListgetSuggestions(String sourceWord, int scoreThreshold)
Returns a list of Word objects that are the suggestions to any word.
ListgetSuggestions(String sourceWord, int scoreThreshold, int[][] matrix)
Returns a list of Word objects that are the suggestions to any word.
booleanisCorrect(String word)
Evaluates if the word is correctly spelled against the dictionary.

Method Detail

addWord

public void addWord(String word)
Add a word permanently to the dictionary.

Parameters: word The word to add to the dictionary

getSuggestions

public List getSuggestions(String sourceWord, int scoreThreshold)
Returns a list of Word objects that are the suggestions to any word. If the word is correctly spelled, then this method could return just that one word, or it could still return a list of words with similar spellings.
Each suggested word has a score, which is an integer that represents how different the suggested word is from the sourceWord. If the words are the exactly the same, then the score is 0. You can get the dictionary to only return the most similar words by setting an appropriately low threshold value. If you set the threshold value too low, you may get no suggestions for a given word.

This method is only needed to provide backward compatibility.

Parameters: sourceWord the string that we want to get a list of spelling suggestions for scoreThreshold Any words that have score less than this number are returned.

Returns: List a List of suggested words

See Also: (String, int, int[][])

getSuggestions

public List getSuggestions(String sourceWord, int scoreThreshold, int[][] matrix)
Returns a list of Word objects that are the suggestions to any word. If the word is correctly spelled, then this method could return just that one word, or it could still return a list of words with similar spellings.
Each suggested word has a score, which is an integer that represents how different the suggested word is from the sourceWord. If the words are the exactly the same, then the score is 0. You can get the dictionary to only return the most similar words by setting an appropriately low threshold value. If you set the threshold value too low, you may get no suggestions for a given word.

Parameters: sourceWord the string that we want to get a list of spelling suggestions for scoreThreshold Any words that have score less than this number are returned. Two dimensional int array used to calculate edit distance. Allocating this memory outside of the function will greatly improve efficiency.

Returns: List a List of suggested words

See Also: Word

isCorrect

public boolean isCorrect(String word)
Evaluates if the word is correctly spelled against the dictionary.

Parameters: word The word to verify if it's spelling is OK.

Returns: Indicates if the word is present in the dictionary.