Class AstRightValue

    • Constructor Detail

      • AstRightValue

        public AstRightValue()
    • Method Detail

      • isLiteralText

        public final boolean isLiteralText()
        Answer false
        Returns:
        true if this node represents literal text
      • getType

        public final Class<?> getType​(Bindings bindings,
                                      ELContext context)
        according to the spec, the result is undefined for rvalues, so answer null
        Parameters:
        bindings - bindings containing variables and functions
        context - evaluation context
        Returns:
        accepted type or null for non-lvalue nodes
      • isReadOnly

        public final boolean isReadOnly​(Bindings bindings,
                                        ELContext context)
        non-lvalues are always readonly, so answer true
        Parameters:
        bindings - bindings containing variables and functions
        context - evaluation context
        Returns:
        true if this a read-only expression node
      • setValue

        public final void setValue​(Bindings bindings,
                                   ELContext context,
                                   Object value)
        non-lvalues are always readonly, so throw an exception
        Parameters:
        bindings - bindings containing variables and functions
        context - evaluation context
        value - value to set
      • getMethodInfo

        public final MethodInfo getMethodInfo​(Bindings bindings,
                                              ELContext context,
                                              Class<?> returnType,
                                              Class<?>[] paramTypes)
        Description copied from interface: ExpressionNode
        Get method information. If this is a non-lvalue node, answer null.
        Parameters:
        bindings - bindings containing variables and functions
        context - evaluation context
        returnType - expected method return type (may be null meaning don't care)
        paramTypes - expected method argument types
        Returns:
        method information or null
      • invoke

        public final Object invoke​(Bindings bindings,
                                   ELContext context,
                                   Class<?> returnType,
                                   Class<?>[] paramTypes,
                                   Object[] paramValues)
        Description copied from interface: ExpressionNode
        Invoke method.
        Parameters:
        bindings - bindings containing variables and functions
        context - evaluation context
        returnType - expected method return type (may be null meaning don't care)
        paramTypes - expected method argument types
        paramValues - parameter values
        Returns:
        result of the method invocation
      • isLeftValue

        public final boolean isLeftValue()
        Returns:
        true if 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:
        true if the subtree rooted at this node is a method invocation.