Package org.apache.cayenne.template.parser

# Class ASTExpression

java.lang.Object
org.apache.cayenne.template.parser.SimpleNode
org.apache.cayenne.template.parser.ASTExpression

All Implemented Interfaces:
  `ExpressionNode`, `Node`

Direct Known Subclasses:
  `ASTArray`

public class ASTExpression extends SimpleNode implements ExpressionNode

Since:
  4.1

- ## Field Summary

  ### Fields inherited from class org.apache.cayenne.template.parser.SimpleNode

  `children, id, parent`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ASTExpression(int id)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `evaluate(Context context)`
  `boolean`
  `evaluateAsBoolean(Context context)`
  `double`
  `evaluateAsDouble(Context context)`
  `long`
  `evaluateAsLong(Context context)`
  `Object`
  `evaluateAsObject(Context context)`
  `String`
  `evaluateAsString(Context context)`
  `protected ExpressionNode`
  `getChildAsExpressionNode(int child)`

  ### Methods inherited from class org.apache.cayenne.template.parser.SimpleNode

  `dump, jjtAddChild, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtSetParent, toString, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### ASTExpression

    public ASTExpression(int id)

- ## Method Details

  - ### getChildAsExpressionNode

    protected ExpressionNode getChildAsExpressionNode(int child)

  - ### evaluate

    public void evaluate(Context context)
    Specified by:
      `evaluate` in interface `Node`

  - ### evaluateAsString

    public String evaluateAsString(Context context)
    Specified by:
      `evaluateAsString` in interface `ExpressionNode`

  - ### evaluateAsObject

    public Object evaluateAsObject(Context context)
    Specified by:
      `evaluateAsObject` in interface `ExpressionNode`

  - ### evaluateAsLong

    public long evaluateAsLong(Context context)
    Specified by:
      `evaluateAsLong` in interface `ExpressionNode`

  - ### evaluateAsDouble

    public double evaluateAsDouble(Context context)
    Specified by:
      `evaluateAsDouble` in interface `ExpressionNode`

  - ### evaluateAsBoolean

    public boolean evaluateAsBoolean(Context context)
    Specified by:
      `evaluateAsBoolean` in interface `ExpressionNode`