Class ConstantFolding
- java.lang.Object
-
- org.apache.sling.scripting.sightly.impl.compiler.visitor.UniformVisitor
-
- org.apache.sling.scripting.sightly.impl.compiler.visitor.TrackingVisitor<EvalResult>
-
- org.apache.sling.scripting.sightly.impl.compiler.optimization.reduce.ConstantFolding
-
- All Implemented Interfaces:
CommandVisitor
,EmitterVisitor
public final class ConstantFolding extends TrackingVisitor<EvalResult> implements EmitterVisitor
Optimization which evaluates constant expressions during compilation-time
-
-
Field Summary
-
Fields inherited from class org.apache.sling.scripting.sightly.impl.compiler.visitor.TrackingVisitor
tracker
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected EvalResult
assignDefault(Command command)
PushStream
getOutputStream()
Get the output streamprotected void
onCommand(Command command)
static StreamTransformer
transformer()
void
visit(VariableBinding.Start variableBindingStart)
Process aVariableBinding.Start
command.-
Methods inherited from class org.apache.sling.scripting.sightly.impl.compiler.visitor.TrackingVisitor
visit, visit, visit
-
Methods inherited from class org.apache.sling.scripting.sightly.impl.compiler.visitor.UniformVisitor
visit, visit, visit, visit, visit, visit, visit, visit
-
-
-
-
Method Detail
-
transformer
public static StreamTransformer transformer()
-
visit
public void visit(VariableBinding.Start variableBindingStart)
Description copied from interface:CommandVisitor
Process aVariableBinding.Start
command.- Specified by:
visit
in interfaceCommandVisitor
- Overrides:
visit
in classTrackingVisitor<EvalResult>
- Parameters:
variableBindingStart
- the command
-
assignDefault
protected EvalResult assignDefault(Command command)
- Specified by:
assignDefault
in classTrackingVisitor<EvalResult>
-
onCommand
protected void onCommand(Command command)
- Specified by:
onCommand
in classUniformVisitor
-
getOutputStream
public PushStream getOutputStream()
Description copied from interface:EmitterVisitor
Get the output stream- Specified by:
getOutputStream
in interfaceEmitterVisitor
- Returns:
- the output stream of this visitor
-
-