Class DirectiveNode.IfNode
java.lang.Object
com.google.auto.value.processor.escapevelocity.Node
com.google.auto.value.processor.escapevelocity.DirectiveNode
com.google.auto.value.processor.escapevelocity.DirectiveNode.IfNode
- Enclosing class:
DirectiveNode
A node in the parse tree representing an
#if construct. All instances of this class
have a true subtree and a false subtree. For a plain #if (cond) body
#end, the false subtree will be empty. For #if (cond1) body1 #elseif (cond2) body2
#else body3 #end, the false subtree will contain a nested IfNode, as if #else
#if had been used instead of #elseif.-
Nested Class Summary
Nested classes/interfaces inherited from class DirectiveNode
DirectiveNode.ForEachNode, DirectiveNode.IfNode, DirectiveNode.MacroCallNode, DirectiveNode.SetNode -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ExpressionNodeprivate final Nodeprivate final NodeFields inherited from class Node
lineNumber, resourceName -
Constructor Summary
ConstructorsConstructorDescriptionIfNode(String resourceName, int lineNumber, ExpressionNode condition, Node trueNode, Node falseNode) -
Method Summary
Modifier and TypeMethodDescription(package private) Objectevaluate(EvaluationContext context) Returns the result of evaluating this node in the given context.Methods inherited from class Node
cons, emptyNode, evaluationException, evaluationException
-
Field Details
-
condition
-
truePart
-
falsePart
-
-
Constructor Details
-
IfNode
IfNode(String resourceName, int lineNumber, ExpressionNode condition, Node trueNode, Node falseNode)
-
-
Method Details
-
evaluate
Description copied from class:NodeReturns the result of evaluating this node in the given context. This result may be used as part of a further operation, for example evaluating2 + 3to 5 in order to set$xto 5 in#set ($x = 2 + 3). Or it may be used directly as part of the template output, for example evaluating replacingnamebyFredinMy name is $name..
-