Class TrackingVisitor<T>
- java.lang.Object
-
- org.apache.sling.scripting.sightly.impl.compiler.visitor.UniformVisitor
-
- org.apache.sling.scripting.sightly.impl.compiler.visitor.TrackingVisitor<T>
-
- All Implemented Interfaces:
CommandVisitor
- Direct Known Subclasses:
ConstantFolding,DeadCodeRemoval,SyntheticMapRemoval,UnusedVariableRemoval
public abstract class TrackingVisitor<T> extends UniformVisitor
Command visitor which tracks variables in commands.
-
-
Field Summary
Fields Modifier and Type Field Description protected VariableTracker<T>tracker
-
Constructor Summary
Constructors Constructor Description TrackingVisitor()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract TassignDefault(Command command)voidvisit(Loop.End loopEnd)Process aLoop.Endcommand.voidvisit(Loop.Start loopStart)Process aLoop.Startcommand.voidvisit(VariableBinding.End variableBindingEnd)Process aVariableBinding.Endcommand.voidvisit(VariableBinding.Start variableBindingStart)Process aVariableBinding.Startcommand.
-
-
-
Field Detail
-
tracker
protected final VariableTracker<T> tracker
-
-
Method Detail
-
visit
public void visit(VariableBinding.Start variableBindingStart)
Description copied from interface:CommandVisitorProcess aVariableBinding.Startcommand.- Specified by:
visitin interfaceCommandVisitor- Overrides:
visitin classUniformVisitor- Parameters:
variableBindingStart- the command
-
visit
public void visit(VariableBinding.End variableBindingEnd)
Description copied from interface:CommandVisitorProcess aVariableBinding.Endcommand.- Specified by:
visitin interfaceCommandVisitor- Overrides:
visitin classUniformVisitor- Parameters:
variableBindingEnd- the command
-
visit
public void visit(Loop.Start loopStart)
Description copied from interface:CommandVisitorProcess aLoop.Startcommand.- Specified by:
visitin interfaceCommandVisitor- Overrides:
visitin classUniformVisitor- Parameters:
loopStart- the command
-
visit
public void visit(Loop.End loopEnd)
Description copied from interface:CommandVisitorProcess aLoop.Endcommand.- Specified by:
visitin interfaceCommandVisitor- Overrides:
visitin classUniformVisitor- Parameters:
loopEnd- the command
-
-