SnowballFilter (Lucene 10.5.0 common API)
Description: declaration: package: org.apache.lucene.analysis.snowball, class: SnowballFilter

Package org.apache.lucene.analysis.snowball

# Class SnowballFilter

java.lang.Object
org.apache.lucene.util.AttributeSource
org.apache.lucene.analysis.TokenStream
org.apache.lucene.analysis.TokenFilter
org.apache.lucene.analysis.snowball.SnowballFilter

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`, `Unwrappable<TokenStream>`

public final class SnowballFilter extends TokenFilter
A filter that stems words using a Snowball-generated stemmer.

Available stemmers are listed in `org.tartarus.snowball.ext`.

NOTE: SnowballFilter expects lowercased text.

- For the Turkish language, see `TurkishLowerCaseFilter`.
- For other languages, see `LowerCaseFilter`.

Note: This filter is aware of the `KeywordAttribute`. To prevent certain terms from being passed to the stemmer `KeywordAttribute.isKeyword()` should be set to `true` in a previous `TokenStream`.

Note: For including the original term as well as the stemmed version, see `KeywordRepeatFilterFactory`

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource

  `AttributeSource.State`

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.analysis.TokenFilter

  `input`

  ### Fields inherited from class org.apache.lucene.analysis.TokenStream

  `DEFAULT_TOKEN_ATTRIBUTE_FACTORY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SnowballFilter(TokenStream in, String name)`
  Construct the named stemming filter.
  `SnowballFilter(TokenStream input, SnowballStemmer stemmer)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final boolean`
  `incrementToken()`
  Returns the next input Token, after being stemmed

  ### Methods inherited from class org.apache.lucene.analysis.TokenFilter

  `close, end, reset, unwrap`

  ### Methods inherited from class org.apache.lucene.util.AttributeSource

  `addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, endAttributes, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, removeAllAttributes, restoreState, toString`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### SnowballFilter

    public SnowballFilter(TokenStream input, SnowballStemmer stemmer)

  - ### SnowballFilter

    public SnowballFilter(TokenStream in, String name)
    Construct the named stemming filter.

    Available stemmers are listed in `org.tartarus.snowball.ext`. The name of a stemmer is the part of the class name before "Stemmer", e.g., the stemmer in `EnglishStemmer` is named "English".

    Parameters:
      `in` - the input tokens to stem
      `name` - the name of a stemmer

- ## Method Details

  - ### incrementToken

    public final boolean incrementToken() throws IOException
    Returns the next input Token, after being stemmed
    Specified by:
      `incrementToken` in class `TokenStream`
    Throws:
      `IOException`