public abstract class PlanVisitor extends Object
Modifier and Type | Field and Description |
---|---|
protected PlanWalker |
currentWalker
Guaranteed to always point to the walker currently being used.
|
protected static String |
DEFAULT_SCOPE |
protected OperatorPlan |
plan |
Modifier | Constructor and Description |
---|---|
protected |
PlanVisitor(OperatorPlan plan,
PlanWalker walker) |
Modifier and Type | Method and Description |
---|---|
OperatorPlan |
getPlan() |
protected void |
popWalker()
Pop the next to previous walker off of the stack and set it as the current
walker.
|
protected void |
pushWalker(PlanWalker walker)
Push the current walker onto the stack of saved walkers and begin using
the newly passed walker as the current walker.
|
void |
visit()
Entry point for visiting the plan.
|
protected static final String DEFAULT_SCOPE
protected OperatorPlan plan
protected PlanWalker currentWalker
protected PlanVisitor(OperatorPlan plan, PlanWalker walker)
plan
- OperatorPlan this visitor will visit.walker
- PlanWalker this visitor will use to traverse the plan.public void visit() throws FrontendException
VisitorException
- if an error is encountered while visiting.FrontendException
public OperatorPlan getPlan()
protected void pushWalker(PlanWalker walker)
walker
- new walker to set as the current walker.protected void popWalker() throws FrontendException
VisitorException
- if there are no more walkers on the stack. In
this case the current walker is not reset.FrontendException
Copyright © 2007-2017 The Apache Software Foundation