Class AstRightValue
java.lang.Object
de.odysseus.el.tree.impl.ast.AstNode
de.odysseus.el.tree.impl.ast.AstRightValue
- All Implemented Interfaces:
ExpressionNode, Node
- Direct Known Subclasses:
AstBinary, AstChoice, AstComposite, AstFunction, AstLiteral, AstNested, AstParameters, AstUnary
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal javax.el.MethodInfogetMethodInfo(Bindings bindings, javax.el.ELContext context, Class<?> returnType, Class<?>[] paramTypes) Get method information.final Class<?> according to the spec, the result is undefined for rvalues, so answernullfinal javax.el.ValueReferencegetValueReference(Bindings bindings, javax.el.ELContext context) Get value reference.final Objectinvoke(Bindings bindings, javax.el.ELContext context, Class<?> returnType, Class<?>[] paramTypes, Object[] paramValues) Invoke method.final booleanfinal booleanAnswerfalsebooleanfinal booleanisReadOnly(Bindings bindings, javax.el.ELContext context) non-lvalues are always readonly, so answertruefinal voidnon-lvalues are always readonly, so throw an exceptionMethods inherited from class AstNode
appendStructure, eval, findAccessibleMethod, getStructuralId, getValueMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Node
getCardinality, getChild
-
Constructor Details
-
AstRightValue
public AstRightValue()
-
-
Method Details
-
isLiteralText
public final boolean isLiteralText()Answerfalse- Returns:
trueif this node represents literal text
-
getType
-
isReadOnly
non-lvalues are always readonly, so answertrue- Parameters:
bindings- bindings containing variables and functionscontext- evaluation context- Returns:
trueif this a read-only expression node
-
setValue
-
getMethodInfo
public final javax.el.MethodInfo getMethodInfo(Bindings bindings, javax.el.ELContext context, Class<?> returnType, Class<?>[] paramTypes) Description copied from interface:ExpressionNodeGet method information. If this is a non-lvalue node, answernull.- Parameters:
bindings- bindings containing variables and functionscontext- evaluation contextreturnType- expected method return type (may benullmeaning don't care)paramTypes- expected method argument types- Returns:
- method information or
null
-
invoke
public final Object invoke(Bindings bindings, javax.el.ELContext context, Class<?> returnType, Class<?>[] paramTypes, Object[] paramValues) Description copied from interface:ExpressionNodeInvoke method.- Parameters:
bindings- bindings containing variables and functionscontext- evaluation contextreturnType- expected method return type (may benullmeaning don't care)paramTypes- expected method argument typesparamValues- parameter values- Returns:
- result of the method invocation
-
isLeftValue
public final boolean isLeftValue()- Returns:
trueif the subtree rooted at this node could be used as an lvalue expression (identifier or property sequence with non-literal prefix).
-
isMethodInvocation
public boolean isMethodInvocation()- Returns:
trueif the subtree rooted at this node is a method invocation.
-
getValueReference
public final javax.el.ValueReference getValueReference(Bindings bindings, javax.el.ELContext context) Description copied from interface:ExpressionNodeGet value reference.- Parameters:
bindings-context-- Returns:
- value reference
-