private static class SubstitutionVisitor.FilterToFilterUnifyRule extends SubstitutionVisitor.AbstractUnifyRule
SubstitutionVisitor.UnifyRule that matches a
MutableFilter.| Modifier and Type | Field and Description |
|---|---|
static SubstitutionVisitor.FilterToFilterUnifyRule |
INSTANCE |
queryOperand, slotCount, targetOperand| Modifier | Constructor and Description |
|---|---|
private |
FilterToFilterUnifyRule() |
| Modifier and Type | Method and Description |
|---|---|
SubstitutionVisitor.UnifyResult |
apply(SubstitutionVisitor.UnifyRuleCall call)
Applies this rule to a particular node in a query.
|
(package private) MutableFilter |
createFilter(SubstitutionVisitor.UnifyRuleCall call,
MutableFilter query,
MutableFilter target) |
any, isValid, operand, query, targetcopy, matchpublic static final SubstitutionVisitor.FilterToFilterUnifyRule INSTANCE
public SubstitutionVisitor.UnifyResult apply(SubstitutionVisitor.UnifyRuleCall call)
SubstitutionVisitor.UnifyRuleApplies this rule to a particular node in a query. The goal is
to convert query into target. Before the rule is
invoked, Calcite has made sure that query's children are equivalent
to target's children.
There are 3 possible outcomes:
query already exactly matches target; returns
targetquery is sufficiently close to a match for
target; returns targetquery cannot be made to match target; returns
nullREVIEW: Is possible that we match query PLUS one or more of its ancestors?
apply in class SubstitutionVisitor.UnifyRulecall - Input parametersMutableFilter createFilter(SubstitutionVisitor.UnifyRuleCall call, MutableFilter query, MutableFilter target)
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.