Package io.pebbletemplates.pebble.node
Class ForNode
- java.lang.Object
-
- io.pebbletemplates.pebble.node.AbstractRenderableNode
-
- io.pebbletemplates.pebble.node.ForNode
-
- All Implemented Interfaces:
Node
,RenderableNode
public class ForNode extends AbstractRenderableNode
Represents a "for" loop within the template.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
ForNode.ArrayIterable
Adapts an array to an Iterableprivate class
ForNode.EnumerationIterable
Adapts an Enumeration to an Iterablestatic class
ForNode.LoopVariables
-
Field Summary
Fields Modifier and Type Field Description private BodyNode
body
private BodyNode
elseBody
private Expression<?>
iterableExpression
private java.lang.String
variableName
-
Constructor Summary
Constructors Constructor Description ForNode(int lineNumber, java.lang.String variableName, Expression<?> iterableExpression, BodyNode body, BodyNode elseBody)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(NodeVisitor visitor)
BodyNode
getBody()
BodyNode
getElseBody()
Expression<?>
getIterable()
java.lang.String
getIterationVariable()
void
render(PebbleTemplateImpl self, java.io.Writer writer, EvaluationContextImpl context)
private java.lang.Iterable<java.lang.Object>
toIterable(java.lang.Object obj)
-
Methods inherited from class io.pebbletemplates.pebble.node.AbstractRenderableNode
getLineNumber, setLineNumber
-
-
-
-
Field Detail
-
variableName
private final java.lang.String variableName
-
iterableExpression
private final Expression<?> iterableExpression
-
body
private final BodyNode body
-
elseBody
private final BodyNode elseBody
-
-
Constructor Detail
-
ForNode
public ForNode(int lineNumber, java.lang.String variableName, Expression<?> iterableExpression, BodyNode body, BodyNode elseBody)
-
-
Method Detail
-
render
public void render(PebbleTemplateImpl self, java.io.Writer writer, EvaluationContextImpl context) throws java.io.IOException
- Specified by:
render
in interfaceRenderableNode
- Specified by:
render
in classAbstractRenderableNode
- Throws:
java.io.IOException
-
accept
public void accept(NodeVisitor visitor)
- Specified by:
accept
in interfaceNode
- Specified by:
accept
in classAbstractRenderableNode
-
getIterationVariable
public java.lang.String getIterationVariable()
-
getIterable
public Expression<?> getIterable()
-
getBody
public BodyNode getBody()
-
getElseBody
public BodyNode getElseBody()
-
toIterable
private java.lang.Iterable<java.lang.Object> toIterable(java.lang.Object obj)
-
-