private static class RuleQueue.PhaseMatchList
extends java.lang.Object
rule-matches
for a particular
phase of the planner's execution
.Modifier and Type | Field and Description |
---|---|
(package private) java.util.List<VolcanoRuleMatch> |
list
Current list of VolcanoRuleMatches for this phase.
|
(package private) com.google.common.collect.Multimap<RelSubset,VolcanoRuleMatch> |
matchMap
Multi-map of RelSubset to VolcanoRuleMatches.
|
(package private) java.util.Set<java.lang.String> |
names
A set of rule-match names contained in
list . |
(package private) VolcanoPlannerPhase |
phase
The VolcanoPlannerPhase that this PhaseMatchList is used in.
|
Constructor and Description |
---|
PhaseMatchList(VolcanoPlannerPhase phase) |
Modifier and Type | Method and Description |
---|---|
(package private) void |
clear() |
final VolcanoPlannerPhase phase
final java.util.List<VolcanoRuleMatch> list
Use a hunkList because ArrayList
does not implement
remove(0) efficiently.
final java.util.Set<java.lang.String> names
list
. Allows fast
detection of duplicate rule-matches.final com.google.common.collect.Multimap<RelSubset,VolcanoRuleMatch> matchMap
clear
the rule-match's
cached importance when the importance of a related RelSubset is modified
(e.g., due to invocation of
RuleQueue.boostImportance(Collection, double)
).PhaseMatchList(VolcanoPlannerPhase phase)
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.