public class SpanTermQuery extends SpanQuery
Modifier and Type | Class and Description |
---|---|
class |
SpanTermQuery.SpanTermWeight |
Modifier and Type | Field and Description |
---|---|
private static float |
PHRASE_TO_SPAN_TERM_POSITIONS_COST
A guess of
the relative cost of dealing with the term positions
when using a SpanNearQuery instead of a PhraseQuery.
|
protected Term |
term |
private static int |
TERM_OPS_PER_POS |
private static int |
TERM_POSNS_SEEK_OPS_PER_DOC |
protected TermStates |
termStates |
Constructor and Description |
---|
SpanTermQuery(Term term)
Construct a SpanTermQuery matching the named term's spans.
|
SpanTermQuery(Term term,
TermStates termStates)
Expert: Construct a SpanTermQuery matching the named term's spans, using
the provided TermStates
|
Modifier and Type | Method and Description |
---|---|
SpanWeight |
createWeight(IndexSearcher searcher,
ScoreMode scoreMode,
float boost)
Expert: Constructs an appropriate Weight implementation for this query.
|
boolean |
equals(java.lang.Object other)
Override and implement query instance equivalence properly in a subclass.
|
java.lang.String |
getField()
Returns the name of the field matched by this query.
|
Term |
getTerm()
Return the term whose spans are matched.
|
TermStates |
getTermStates()
Returns the
TermStates passed to the constructor, or null if it was not passed. |
int |
hashCode()
Override and implement query hash code properly in a subclass.
|
(package private) static float |
termPositionsCost(TermsEnum termsEnum)
Returns an expected cost in simple operations
of processing the occurrences of a term
in a document that contains the term.
|
java.lang.String |
toString(java.lang.String field)
Prints a query to a string, with
field assumed to be the
default field and omitted. |
void |
visit(QueryVisitor visitor)
Recurse through the query tree, visiting any child queries
|
getTermStates, getTermStates
classHash, rewrite, sameClassAs, toString
protected final Term term
protected final TermStates termStates
private static final float PHRASE_TO_SPAN_TERM_POSITIONS_COST
private static final int TERM_POSNS_SEEK_OPS_PER_DOC
private static final int TERM_OPS_PER_POS
public SpanTermQuery(Term term)
public SpanTermQuery(Term term, TermStates termStates)
public Term getTerm()
public TermStates getTermStates()
TermStates
passed to the constructor, or null if it was not passed.public java.lang.String getField()
SpanQuery
public SpanWeight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws java.io.IOException
Query
Only implemented by primitive queries, which re-write to themselves.
createWeight
in class SpanQuery
scoreMode
- How the produced scorers will be consumed.boost
- The boost that is propagated by the parent queries.java.io.IOException
public void visit(QueryVisitor visitor)
Query
static float termPositionsCost(TermsEnum termsEnum) throws java.io.IOException
termsEnum
- The term is the term at which this TermsEnum is positioned.
This is a copy of org.apache.lucene.search.PhraseQuery.termPositionsCost().
TODO: keep only a single copy of this method and the constants used in it
when SpanTermQuery moves to the o.a.l.search package.
java.io.IOException
public java.lang.String toString(java.lang.String field)
Query
field
assumed to be the
default field and omitted.public int hashCode()
Query
QueryCache
works properly.hashCode
in class Query
Query.equals(Object)
public boolean equals(java.lang.Object other)
Query
QueryCache
works properly.
Typically a query will be equal to another only if it's an instance of
the same class and its document-filtering properties are identical that other
instance. Utility methods are provided for certain repetitive code.equals
in class Query
Query.sameClassAs(Object)
,
Query.classHash()