Class AstEval

java.lang.Object
org.camunda.bpm.impl.juel.AstNode
org.camunda.bpm.impl.juel.AstEval
All Implemented Interfaces:
ExpressionNode, Node

public final class AstEval extends AstNode
  • Constructor Details

    • AstEval

      public AstEval(AstNode child, boolean deferred)
  • Method Details

    • isDeferred

      public boolean isDeferred()
    • isLeftValue

      public 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.
    • getValueReference

      public jakarta.el.ValueReference getValueReference(Bindings bindings, jakarta.el.ELContext context)
      Description copied from interface: ExpressionNode
      Get value reference.
      Returns:
      value reference
    • eval

      public Object eval(Bindings bindings, jakarta.el.ELContext context)
      Specified by:
      eval in class AstNode
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • appendStructure

      public void appendStructure(StringBuilder b, Bindings bindings)
      Specified by:
      appendStructure in class AstNode
    • getMethodInfo

      public jakarta.el.MethodInfo getMethodInfo(Bindings bindings, jakarta.el.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 Object invoke(Bindings bindings, jakarta.el.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
    • getType

      public Class<?> getType(Bindings bindings, jakarta.el.ELContext context)
      Description copied from interface: ExpressionNode
      Parameters:
      bindings - bindings containing variables and functions
      context - evaluation context
      Returns:
      accepted type or null for non-lvalue nodes
    • isLiteralText

      public boolean isLiteralText()
      Returns:
      true if this node represents literal text
    • isReadOnly

      public boolean isReadOnly(Bindings bindings, jakarta.el.ELContext context)
      Description copied from interface: ExpressionNode
      Determine whether ExpressionNode.setValue(Bindings, ELContext, Object) will throw a PropertyNotWritableException.
      Parameters:
      bindings - bindings containing variables and functions
      context - evaluation context
      Returns:
      true if this a read-only expression node
    • setValue

      public void setValue(Bindings bindings, jakarta.el.ELContext context, Object value)
      Description copied from interface: ExpressionNode
      Assign value.
      Parameters:
      bindings - bindings containing variables and functions
      context - evaluation context
      value - value to set
    • getCardinality

      public int getCardinality()
      Description copied from interface: Node
      Get the node's number of children.
    • getChild

      public AstNode getChild(int i)
      Description copied from interface: Node
      Get i'th child