Class ModifyingSuggester
- java.lang.Object
-
- org.apache.lucene.analysis.hunspell.ModifyingSuggester
-
class ModifyingSuggester extends java.lang.ObjectA class that modifies the given misspelled word in various ways to get correct suggestions
-
-
Field Summary
Fields Modifier and Type Field Description private static intMAX_CHAR_DISTANCEprivate java.lang.Stringmisspelledprivate java.util.LinkedHashSet<Suggestion>resultprivate Hunspellspellerprivate char[]tryCharsprivate WordCasewordCase
-
Constructor Summary
Constructors Constructor Description ModifyingSuggester(Hunspell speller, java.util.LinkedHashSet<Suggestion> result, java.lang.String misspelled, WordCase wordCase)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private SuggestioncapitalizeAfterSpace(java.lang.String candidate)private java.util.List<Suggestion>checkDictionaryForSplitSuggestions(java.lang.String word)private booleancheckSimpleWord(java.lang.String part)private SuggestioncreateSuggestion(java.lang.String candidate)private voidenumerateMapReplacements(java.lang.String word, java.lang.String accumulated, int offset)private booleanshouldSplitByDash()(package private) booleansuggest()private voidtryAddingChar(java.lang.String word)private voidtryDoubleSwapForShortWords(java.lang.String word, int length)private voidtryLongSwap(java.lang.String word)private voidtryMovingChar(java.lang.String word)private voidtryNeighborKeys(java.lang.String word)private voidtryRemovingChar(java.lang.String word)private booleantryRep(java.lang.String word)private voidtryReplacingChar(java.lang.String word)private voidtrySplitting(java.lang.String word)private booleantrySuggestion(java.lang.String candidate)private voidtrySwappingChars(java.lang.String word)private voidtryTwoDuplicateChars(java.lang.String word)private booleantryVariationsOf(java.lang.String word)
-
-
-
Field Detail
-
MAX_CHAR_DISTANCE
private static final int MAX_CHAR_DISTANCE
- See Also:
- Constant Field Values
-
result
private final java.util.LinkedHashSet<Suggestion> result
-
misspelled
private final java.lang.String misspelled
-
wordCase
private final WordCase wordCase
-
tryChars
private final char[] tryChars
-
speller
private final Hunspell speller
-
-
Constructor Detail
-
ModifyingSuggester
ModifyingSuggester(Hunspell speller, java.util.LinkedHashSet<Suggestion> result, java.lang.String misspelled, WordCase wordCase)
-
-
Method Detail
-
suggest
boolean suggest()
- Returns:
- whether any of the added suggestions are considered "good"
-
createSuggestion
private Suggestion createSuggestion(java.lang.String candidate)
-
capitalizeAfterSpace
private Suggestion capitalizeAfterSpace(java.lang.String candidate)
-
tryVariationsOf
private boolean tryVariationsOf(java.lang.String word)
-
tryRep
private boolean tryRep(java.lang.String word)
-
enumerateMapReplacements
private void enumerateMapReplacements(java.lang.String word, java.lang.String accumulated, int offset)
-
checkSimpleWord
private boolean checkSimpleWord(java.lang.String part)
-
trySwappingChars
private void trySwappingChars(java.lang.String word)
-
tryDoubleSwapForShortWords
private void tryDoubleSwapForShortWords(java.lang.String word, int length)
-
tryNeighborKeys
private void tryNeighborKeys(java.lang.String word)
-
tryLongSwap
private void tryLongSwap(java.lang.String word)
-
tryRemovingChar
private void tryRemovingChar(java.lang.String word)
-
tryAddingChar
private void tryAddingChar(java.lang.String word)
-
tryMovingChar
private void tryMovingChar(java.lang.String word)
-
tryReplacingChar
private void tryReplacingChar(java.lang.String word)
-
tryTwoDuplicateChars
private void tryTwoDuplicateChars(java.lang.String word)
-
checkDictionaryForSplitSuggestions
private java.util.List<Suggestion> checkDictionaryForSplitSuggestions(java.lang.String word)
-
trySplitting
private void trySplitting(java.lang.String word)
-
shouldSplitByDash
private boolean shouldSplitByDash()
-
trySuggestion
private boolean trySuggestion(java.lang.String candidate)
-
-