Package com.google.gerrit.index.query
Class IndexPredicate<I>
java.lang.Object
com.google.gerrit.index.query.Predicate<T>
com.google.gerrit.index.query.OperatorPredicate<I>
com.google.gerrit.index.query.IndexPredicate<I>
- All Implemented Interfaces:
Matchable<I>
- Direct Known Subclasses:
ChangeIndexPredicate
,IntegerRangePredicate
,RegexPredicate
,TimestampRangePredicate
Predicate that is mapped to a field in the index.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.gerrit.index.query.Predicate
Predicate.Any<T>
-
Field Summary
Fields inherited from class com.google.gerrit.index.query.OperatorPredicate
name, value
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
IndexPredicate
(SchemaFieldDefs.SchemaField<I, ?> def, String value) protected
IndexPredicate
(SchemaFieldDefs.SchemaField<I, ?> def, String name, String value) -
Method Summary
Methods inherited from class com.google.gerrit.index.query.OperatorPredicate
copy, equals, getOperator, getValue, hashCode, toString
Methods inherited from class com.google.gerrit.index.query.Predicate
and, and, any, asMatchable, estimateCost, getChild, getChildCount, getChildren, getFlattenedPredicateList, getLeafCount, getPredicateString, isLeaf, isMatchable, not, or, or, supportedForQueries
-
Constructor Details
-
IndexPredicate
-
IndexPredicate
-
-
Method Details
-
getField
-
getType
-
match
This method matches documents without calling an index subsystem. For primitive fields (e.g. integer, long) , the matching logic is consistent across this method and all known index implementations. For text fields (i.e. prefix and full-text) the semantics vary between this implementation and known index implementations:- Prefix: Lucene as well as
match(Object)
matches terms as true prefixes (prefix:foo -> `foo bar` matches, but `baz foo bar` does not match). The index implementation at Google tokenizes both the query and the indexed text and matches tokens individually (prefix:fo ba -> `baz foo bar` matches).- Full text: Lucene uses a
PhraseQuery
to search for terms in full text fields in-order. The index implementation at Google as well asmatch(Object)
tokenizes both the query and the indexed text and matches tokens individually. - Prefix: Lucene as well as
-
getCost
public int getCost()Description copied from interface:Matchable
Returns a cost estimate to run this predicate, higher figures cost more.
-