Class QuantifierMatcher<T extends Quantifier>
- java.lang.Object
-
- com.apple.foundationdb.record.query.plan.temp.matchers.TypeMatcher<T>
-
- com.apple.foundationdb.record.query.plan.temp.matchers.QuantifierMatcher<T>
-
- Type Parameters:
T
- the type ofQuantifier
to match against
- All Implemented Interfaces:
ExpressionMatcher<T>
public class QuantifierMatcher<T extends Quantifier> extends TypeMatcher<T>
Matches a subclass ofQuantifier
and a given matcher against the children.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static QuantifierMatcher<Quantifier.Existential>
existential(ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches aQuantifier.Existential
quantifier together with the given matcher for itsrangesOver()
.static QuantifierMatcher<Quantifier.ForEach>
forEach(ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches aQuantifier.ForEach
quantifier together with the given matcher for itsrangesOver()
.static <Q extends Quantifier>
QuantifierMatcher<Q>ofKind(Class<? extends Q> quantifierClass, ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches a subclass ofQuantifier
together with the given matcher for itsrangesOver()
.static QuantifierMatcher<Quantifier.Physical>
physical(ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches aQuantifier.Physical
quantifier together with the given matcher for itsrangesOver()
.-
Methods inherited from class com.apple.foundationdb.record.query.plan.temp.matchers.TypeMatcher
getChildrenMatcher, getRootClass, matchWith, matchWith, matchWith, matchWith, of, of, of
-
-
-
-
Method Detail
-
forEach
@Nonnull public static QuantifierMatcher<Quantifier.ForEach> forEach(@Nonnull ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches aQuantifier.ForEach
quantifier together with the given matcher for itsrangesOver()
.- Parameters:
rangesOverMatcher
- matcher for the rangesOver expression reference- Returns:
- a matcher matching a for each quantifier together with the given matcher for reference it ranges over.
-
existential
@Nonnull public static QuantifierMatcher<Quantifier.Existential> existential(@Nonnull ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches aQuantifier.Existential
quantifier together with the given matcher for itsrangesOver()
.- Parameters:
rangesOverMatcher
- matcher for the rangesOver expression reference- Returns:
- a matcher matching an existential quantifier together with the given matcher for the reference it ranges over
-
physical
@Nonnull public static QuantifierMatcher<Quantifier.Physical> physical(@Nonnull ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches aQuantifier.Physical
quantifier together with the given matcher for itsrangesOver()
.- Parameters:
rangesOverMatcher
- matcher for the rangesOver expression reference- Returns:
- a matcher matching a physical quantifier together with the given matcher for the reference it ranges over
-
ofKind
@Nonnull public static <Q extends Quantifier> QuantifierMatcher<Q> ofKind(@Nonnull Class<? extends Q> quantifierClass, @Nonnull ExpressionMatcher<? extends Bindable> rangesOverMatcher)
Matches a subclass ofQuantifier
together with the given matcher for itsrangesOver()
.- Type Parameters:
Q
- class of specific flavor of quantifier to match- Parameters:
quantifierClass
- class specific flavor of quantifier to matchrangesOverMatcher
- matcher for the rangesOver expression reference- Returns:
- a matcher matching a for each quantifier together with the given matcher for the reference it ranges over
-
-