class VolcanoRuleMatch extends VolcanoRuleCall
Modifier and Type | Field and Description |
---|---|
private double |
cachedImportance |
private java.lang.String |
digest |
private RelSet |
targetSet |
private RelSubset |
targetSubset |
volcanoPlanner
id, LOGGER, nodeInputs, operand0, rels, rule
Constructor and Description |
---|
VolcanoRuleMatch(VolcanoPlanner volcanoPlanner,
RelOptRuleOperand operand0,
RelNode[] rels,
java.util.Map<RelNode,java.util.List<RelNode>> nodeInputs)
Creates a
VolcanoRuleMatch . |
Modifier and Type | Method and Description |
---|---|
private static <E> boolean |
allNotNull(E[] es,
Litmus litmus)
Returns whether all elements of a given array are not-null;
fails if any are null.
|
(package private) void |
clearCachedImportance()
Clears the cached importance value of this rule match.
|
private java.lang.String |
computeDigest()
Computes a string describing this rule match.
|
(package private) double |
computeImportance()
Computes the importance of this rule match.
|
(package private) double |
getImportance()
Returns the importance of this rule.
|
private RelSubset |
guessSubset()
Returns a guess as to which subset (that is equivalence class of
relational expressions combined with a set of physical traits) the result
of this rule will belong to.
|
void |
recomputeDigest()
Recomputes the digest of this VolcanoRuleMatch.
|
java.lang.String |
toString() |
match, onMatch, transformTo
builder, getChildRels, getMetadataQuery, getOperand0, getParents, getPlanner, getRelList, getRels, getRule, rel, setChildRels, transformTo
private final RelSet targetSet
private RelSubset targetSubset
private java.lang.String digest
private double cachedImportance
VolcanoRuleMatch(VolcanoPlanner volcanoPlanner, RelOptRuleOperand operand0, RelNode[] rels, java.util.Map<RelNode,java.util.List<RelNode>> nodeInputs)
VolcanoRuleMatch
.operand0
- Primary operandrels
- List of targets; copied by the constructor, so the client
can modify it laternodeInputs
- Map from relational expressions to their inputspublic java.lang.String toString()
toString
in class java.lang.Object
void clearCachedImportance()
getImportance()
is called.double getImportance()
Calls computeImportance()
the first time, thereafter uses a
cached value until clearCachedImportance()
is called.
double computeImportance()
private java.lang.String computeDigest()
public void recomputeDigest()
private RelSubset guessSubset()
private static <E> boolean allNotNull(E[] es, Litmus litmus)
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.