Class CommonGramsQueryFilter
Wrap a CommonGramsFilter optimizing phrase queries by only returning single words when they are not a member of a bigram.
Example:
- query input to CommonGramsFilter: "the rain in spain falls mainly"
- output of CommomGramsFilter/input to CommonGramsQueryFilter: |"the, "the-rain"|"rain" "rain-in"|"in, "in-spain"|"spain"|"falls"|"mainly"
- output of CommonGramsQueryFilter:"the-rain", "rain-in" ,"in-spain", "falls", "mainly"
Inheritance
Implements
Inherited Members
Namespace: Lucene.Net.Analysis.CommonGrams
Assembly: Lucene.Net.Analysis.Common.dll
Syntax
public sealed class CommonGramsQueryFilter : TokenFilter, IDisposable
Remarks
See:http://hudson.zones.apache.org/hudson/job/Lucene-trunk/javadoc//all/org/apache/lucene/analysis/TokenStream.html and http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/package.html?revision=718798
Constructors
| Improve this Doc View SourceCommonGramsQueryFilter(CommonGramsFilter)
Constructs a new CommonGramsQueryFilter based on the provided CommomGramsFilter
Declaration
public CommonGramsQueryFilter(CommonGramsFilter input)
Parameters
| Type | Name | Description |
|---|---|---|
| CommonGramsFilter | input | CommonGramsFilter the QueryFilter will use |
Properties
| Improve this Doc View SourceIsGramType
Convenience method to check if the current type is a gram type
Declaration
public bool IsGramType { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
Methods
| Improve this Doc View SourceIncrementToken()
Output bigrams whenever possible to optimize queries. Only output unigrams when they are not a member of a bigram. Example:
- input: "the rain in spain falls mainly"
- output:"the-rain", "rain-in" ,"in-spain", "falls", "mainly"
Declaration
public override bool IncrementToken()
Returns
| Type | Description |
|---|---|
| System.Boolean |
Overrides
Reset()
This method is called by a consumer before it begins consumption using IncrementToken().
Resets this stream to a clean state. Stateful implementations must implement this method so that they can be reused, just as if they had been created fresh.
If you override this method, always call base.Reset(), otherwise
some internal state will not be correctly reset (e.g., Lucene.Net.Analysis.Tokenizer will
throw System.InvalidOperationException on further usage).
Declaration
public override void Reset()
Overrides
Remarks
NOTE:
The default implementation chains the call to the input Lucene.Net.Analysis.TokenStream, so
be sure to call base.Reset() when overriding this method.