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
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.
If withOriginal argument is true
then first the
original token is returned, and then the reversed token (with
positionIncrement == 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.
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource |
org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State |
Fields inherited from class org.apache.lucene.analysis.TokenFilter |
input |
Constructor Summary |
protected |
ReversedWildcardFilter(org.apache.lucene.analysis.TokenStream input,
boolean withOriginal,
char markerChar)
|
Method Summary |
boolean |
incrementToken()
|
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.analysis.TokenFilter |
close, end, reset |
Methods inherited from class org.apache.lucene.util.AttributeSource |
addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState, toString |
ReversedWildcardFilter
protected ReversedWildcardFilter(org.apache.lucene.analysis.TokenStream input,
boolean withOriginal,
char markerChar)
incrementToken
public boolean incrementToken()
throws IOException
- Specified by:
incrementToken
in class org.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
Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.