org.apache.pig.newplan
Class DepthFirstWalker

java.lang.Object
  extended by org.apache.pig.newplan.PlanWalker
      extended by org.apache.pig.newplan.DepthFirstWalker

public class DepthFirstWalker
extends PlanWalker

Do a depth first traversal of the graph.


Field Summary
 
Fields inherited from class org.apache.pig.newplan.PlanWalker
plan
 
Constructor Summary
DepthFirstWalker(OperatorPlan plan)
           
 
Method Summary
 PlanWalker spawnChildWalker(OperatorPlan plan)
          Return a new instance of this same type of walker for a subplan.
 void walk(PlanVisitor visitor)
          Begin traversing the graph.
 
Methods inherited from class org.apache.pig.newplan.PlanWalker
getPlan, setPlan
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DepthFirstWalker

public DepthFirstWalker(OperatorPlan plan)
Method Detail

spawnChildWalker

public PlanWalker spawnChildWalker(OperatorPlan plan)
Description copied from class: PlanWalker
Return a new instance of this same type of walker for a subplan. When this method is called the same type of walker with the provided plan set as the plan, must be returned. This can then be used to walk subplans. This allows abstract visitors to clone walkers without knowning the type of walker their subclasses used.

Specified by:
spawnChildWalker in class PlanWalker
Parameters:
plan - Plan for the new walker.
Returns:
Instance of the same type of walker with plan set to plan.

walk

public void walk(PlanVisitor visitor)
          throws FrontendException
Begin traversing the graph.

Specified by:
walk in class PlanWalker
Parameters:
visitor - Visitor this walker is being used by.
Throws:
FrontendException - if an error is encountered while walking.


Copyright © 2007-2012 The Apache Software Foundation