# Package org.apache.lucene.analysis.hunspell

package org.apache.lucene.analysis.hunspell
A Java implementation of Hunspell stemming and spell-checking algorithms (`Hunspell`), and a stemming TokenFilter (`HunspellStemFilter`) based on it.

For dictionaries, see e.g. LibreOffice repository or Titus Wormer's collection (UTF)

- Class
  Description
  AffixedWord
  An object representing the analysis result of a simple (non-compound) word
  AffixedWord.Affix
  An object representing a prefix or a suffix applied to a word stem
  DictEntries
  An object representing homonym dictionary entries.
  DictEntry
  An object representing *.dic file entry with its word, flags and morphological data.
  Dictionary
  In-memory structure for the dictionary (.dic) and affix (.aff) data of a hunspell dictionary.
  EntrySuggestion
  Suggestion to add/edit dictionary entries to generate a given list of words created by `WordFormGenerator.compress(java.util.List<java.lang.String>, java.util.Set<java.lang.String>, java.lang.Runnable)`.
  FragmentChecker
  An oracle for quickly checking that a specific part of a word can never be a valid word.
  Hunspell
  A spell checker based on Hunspell dictionaries.
  HunspellStemFilter
  TokenFilter that uses hunspell affix rules and words to stem tokens.
  HunspellStemFilterFactory
  TokenFilterFactory that creates instances of `HunspellStemFilter`.
  NGramFragmentChecker
  A `FragmentChecker` based on all character n-grams possible in a certain language, keeping them in a relatively memory-efficient, but probabilistic data structure.
  NGramFragmentChecker.NGramConsumer
  A callback for n-gram ranges in words
  SortingStrategy
  The strategy defining how a Hunspell dictionary should be loaded, with different tradeoffs.
  Suggester
  A generator for misspelled word corrections based on Hunspell flags.
  SuggestionTimeoutException
  An exception thrown when `Hunspell.suggest(java.lang.String)` call takes too long, if `TimeoutPolicy.THROW_EXCEPTION` is used.
  TimeoutPolicy
  A strategy determining what to do when Hunspell API calls take too much time
  WordFormGenerator
  A utility class used for generating possible word forms by adding affixes to stems (`WordFormGenerator.getAllWordForms(String, String, Runnable)`), and suggesting stems and flags to generate the given set of words (`WordFormGenerator.compress(List, Set, Runnable)`).