Interface IExpressionNode

All Superinterfaces:
Serializable
All Known Implementing Classes:
AllExpression, ArithmeticExpression, ConditionExpression, ConstExpression, ConversionExpression, DimensionExpression, EachExpression, ExistsExpression, FieldVariableExpression, FunctionExpression, InstanceOfExpression, InversionExpression, IsActiveExpression, ListArithmeticExpression, ListConditionExpression, ListExpression, LogicalExpression, NamedVariableExpression, NotExpression, RootExpression, SelectExpression, TemplateExpression, TypeOfExpression, UnknownExpression, VariableExpression

public interface IExpressionNode extends Serializable
The expression node interface defines the methods that all nodes from the optimizer should implement.
Since:
6.4
Author:
O. Kerpershoek
  • Method Summary

    Modifier and Type
    Method
    Description
    This method evaluates the node using the environment passed as argument and returns the result as a value or null if the result is unknown.
  • Method Details

    • evaluate

      IValue evaluate(IValueEnvironment environment)
      This method evaluates the node using the environment passed as argument and returns the result as a value or null if the result is unknown.
      Parameters:
      environment - The environment that should be used when evaluating the node.
      Returns:
      The result of the evaluation, or null if the result is unknown.
      Throws:
      ExpressionException - This exception is thrown when the node could not be evaluated due to an unexpected error.