Package org.apache.solr.analysis
Class ReversedWildcardFilter
- java.lang.Object
-
- org.apache.lucene.util.AttributeSource
-
- org.apache.lucene.analysis.TokenStream
-
- org.apache.lucene.analysis.TokenFilter
-
- org.apache.solr.analysis.ReversedWildcardFilter
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,org.apache.lucene.util.Unwrappable<org.apache.lucene.analysis.TokenStream>
public final class ReversedWildcardFilter extends org.apache.lucene.analysis.TokenFilter
This class produces a special form of reversed tokens, suitable for better handling of leading wildcards. Tokens from the input TokenStream are reversed and prepended with a special "reversed" marker character. IfwithOriginal
argument istrue
then first the original token is returned, and then the reversed token (withpositionIncrement == 0
) is returned. Otherwise only reversed tokens are returned.Note: this filter doubles the number of tokens in the input stream when
withOriginal == true
, which proportionally increases the size of postings and term dictionary in the index.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
incrementToken()
void
reset()
static void
reverse(char[] buffer, int start, int len)
Partially reverses the given input buffer in-place from the given offset up to the given length, keeping surrogate pairs in the correct (non-reversed) order.-
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
-
-
-
-
Method Detail
-
incrementToken
public boolean incrementToken() throws IOException
- Specified by:
incrementToken
in classorg.apache.lucene.analysis.TokenStream
- Throws:
IOException
-
reverse
public static void reverse(char[] buffer, int start, int len)
Partially reverses the given input buffer in-place from the given offset up to the given length, keeping surrogate pairs in the correct (non-reversed) order.- Parameters:
buffer
- the input char array to reversestart
- the offset from where to reverse the bufferlen
- the length in the buffer up to where the buffer should be reversed
-
reset
public void reset() throws IOException
- Overrides:
reset
in classorg.apache.lucene.analysis.TokenFilter
- Throws:
IOException
-
-