Class ReferenceNode.PlainReferenceNode
- java.lang.Object
-
- com.google.auto.value.processor.escapevelocity.Node
-
- com.google.auto.value.processor.escapevelocity.ExpressionNode
-
- com.google.auto.value.processor.escapevelocity.ReferenceNode
-
- com.google.auto.value.processor.escapevelocity.ReferenceNode.PlainReferenceNode
-
- Enclosing class:
- ReferenceNode
static class ReferenceNode.PlainReferenceNode extends ReferenceNode
A node in the parse tree that is a plain reference such as$x
. This node may appear inside a more complex reference like$x.foo
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.google.auto.value.processor.escapevelocity.ReferenceNode
ReferenceNode.IndexReferenceNode, ReferenceNode.MemberReferenceNode, ReferenceNode.MethodReferenceNode, ReferenceNode.PlainReferenceNode
-
Nested classes/interfaces inherited from class com.google.auto.value.processor.escapevelocity.ExpressionNode
ExpressionNode.BinaryExpressionNode, ExpressionNode.NotExpressionNode
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.lang.String
id
-
Fields inherited from class com.google.auto.value.processor.escapevelocity.Node
lineNumber, resourceName
-
-
Constructor Summary
Constructors Constructor Description PlainReferenceNode(java.lang.String resourceName, int lineNumber, java.lang.String id)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) java.lang.Object
evaluate(EvaluationContext context)
Returns the result of evaluating this node in the given context.(package private) boolean
isDefinedAndTrue(EvaluationContext context)
True if this is a defined value and it evaluates to true.-
Methods inherited from class com.google.auto.value.processor.escapevelocity.ReferenceNode
invokeMethod, visibleMethod
-
Methods inherited from class com.google.auto.value.processor.escapevelocity.ExpressionNode
intValue, isTrue
-
Methods inherited from class com.google.auto.value.processor.escapevelocity.Node
cons, emptyNode, evaluationException, evaluationException
-
-
-
-
Method Detail
-
evaluate
java.lang.Object evaluate(EvaluationContext context)
Description copied from class:Node
Returns the result of evaluating this node in the given context. This result may be used as part of a further operation, for example evaluating2 + 3
to 5 in order to set$x
to 5 in#set ($x = 2 + 3)
. Or it may be used directly as part of the template output, for example evaluating replacingname
byFred
inMy name is $name.
.
-
isDefinedAndTrue
boolean isDefinedAndTrue(EvaluationContext context)
Description copied from class:ExpressionNode
True if this is a defined value and it evaluates to true. This is the same asExpressionNode.isTrue(com.google.auto.value.processor.escapevelocity.EvaluationContext)
except that it is allowed for this to be undefined variable, in which it evaluates to false. The method is overridden for plain references so that undefined is the same as false. The reason is to support Velocity's idiom#if ($var)
, where it is not an error if$var
is undefined.- Overrides:
isDefinedAndTrue
in classExpressionNode
-
-