Interface Bindable
-
- All Known Subinterfaces:
ExpressionRef<T>
,PredicateWithValue
,QueryPlan<T>
,QueryPredicate
,RecordQueryPlan
,RecordQueryPlanWithChild
,RecordQueryPlanWithChildren
,RecordQueryPlanWithComparisons
,RecordQueryPlanWithIndex
,RecordQueryPlanWithNoChildren
,RecordQueryPlanWithRequiredFields
,RelationalExpression
,RelationalExpressionWithChildren
,RelationalExpressionWithPredicate
,TypeFilterExpression
- All Known Implementing Classes:
AndOrPredicate
,AndPredicate
,ComposedBitmapIndexQueryPlan
,ConstantPredicate
,ExistsPredicate
,ExplodeExpression
,FullUnorderedScanExpression
,GroupExpressionRef
,IndexScanExpression
,LogicalDistinctExpression
,LogicalFilterExpression
,LogicalIntersectionExpression
,LogicalSortExpression
,LogicalTypeFilterExpression
,LogicalUnorderedUnionExpression
,MatchableSortExpression
,MatchPartition
,NotPredicate
,OrPredicate
,PartialMatch
,PrimaryScanExpression
,Quantifier
,Quantifier.Existential
,Quantifier.ForEach
,Quantifier.Physical
,QueryComponentPredicate
,RecordQueryCoveringIndexPlan
,RecordQueryFetchFromPartialRecordPlan
,RecordQueryFilterPlan
,RecordQueryIndexPlan
,RecordQueryInJoinPlan
,RecordQueryInParameterJoinPlan
,RecordQueryIntersectionPlan
,RecordQueryInValuesJoinPlan
,RecordQueryLoadByKeysPlan
,RecordQueryPredicateFilterPlan
,RecordQueryScanPlan
,RecordQueryScoreForRankPlan
,RecordQueryTextIndexPlan
,RecordQueryTypeFilterPlan
,RecordQueryUnionPlan
,RecordQueryUnionPlanBase
,RecordQueryUnorderedDistinctPlan
,RecordQueryUnorderedPrimaryKeyDistinctPlan
,RecordQueryUnorderedUnionPlan
,SelectExpression
,ValueComparisonRangePredicate
,ValueComparisonRangePredicate.Placeholder
,ValueComparisonRangePredicate.Sargable
,ValuePredicate
@API(EXPERIMENTAL) public interface Bindable
A planner type that supports rule binding. BothRelationalExpression
andExpressionRef
implementBindable
to allow binding to both concrete expressions and groups.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Stream<PlannerBindings>
bindTo(PlannerBindings outerBindings, ExpressionMatcher<? extends Bindable> matcher)
Attempt to match the matcher to this bindable object.
-
-
-
Method Detail
-
bindTo
@Nonnull Stream<PlannerBindings> bindTo(@Nonnull PlannerBindings outerBindings, @Nonnull ExpressionMatcher<? extends Bindable> matcher)
Attempt to match the matcher to this bindable object.- Parameters:
outerBindings
- existing bindings to be used by the matchermatcher
- the matcher to match against- Returns:
- a map of bindings if the match succeeded, or an empty
Optional
if it failed
-
-