Packages

t

com.jafpl.runtime

ExpressionEvaluator

trait ExpressionEvaluator extends AnyRef

Evaluate expressions (for variable bindings and the alternatives in a choose).

The expression evaluator is responsible for taking the string form of an expression and evaluating it. The runtime is agnostic to the form of the expressions or their results. In order to support choose steps, it's necessary for the evaluator to be able to return a boolean result for an expression.

The evaluator may throw a com.jafpl.exceptions.JafplException if the specified expression is invalid or, in the case of a request for a boolean, if it has no boolean value.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExpressionEvaluator
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def booleanValue(expr: Any, context: List[Message], bindings: Map[String, Message], params: Option[BindingParams]): Boolean

    Evaluate an expression and cast the result to a boolean.

    Evaluate an expression and cast the result to a boolean.

    expr

    The expression to evaluate.

    context

    The expression context.

    bindings

    Any variable bindings that are provided for the expression.

    returns

    The boolean value of the computed expression.

  2. abstract def newInstance(): ExpressionEvaluator

    Obtain a new instance of the expression evaluator.

    Obtain a new instance of the expression evaluator.

    If the evalauator is reentrant then it can simply return itself. However, if it has local state, then it must return a new instance ready to evaluate an expression.

    returns

    An instance of itself.

  3. abstract def singletonValue(expr: Any, context: List[Message], bindings: Map[String, Message], params: Option[BindingParams]): Message

    Evaluate an expression that is expected to return a single value.

    Evaluate an expression that is expected to return a single value.

    The expr is evaluated according to whatever grammar the evaluator supports. The context is an item from the pipeline. The bindings are variable bindings from the pipeline.

    expr

    The expression to evaluate.

    context

    The expression context.

    bindings

    Any variable bindings that are provided for the expression.

    returns

    The computed value of the expression.

  4. abstract def value(expr: Any, context: List[Message], bindings: Map[String, Message], params: Option[BindingParams]): Message

    Evaluate an expression.

    Evaluate an expression. The expression may return any number of results, including none.

    The expr is evaluated according to whatever grammar the evaluator supports. The context is an item from the pipeline. The bindings are variable bindings from the pipeline.

    expr

    The expression to evaluate.

    context

    The expression context.

    bindings

    Any variable bindings that are provided for the expression.

    returns

    The computed value of the expression.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  16. def toString(): String
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped