com.tibbo.aggregate.common.expression

## Class Evaluator

- java.lang.Object
- - com.tibbo.aggregate.common.expression.Evaluator

-     public class Evaluator
      extends java.lang.Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `Evaluator.EvaluationStatistics`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Evaluator(ContextManager cm, CallerController caller)`
    `Evaluator(ContextManager cm, CallerController caller, boolean loggerRequest)`
    `Evaluator(ContextManager cm, Context defaultContext, DataTable defaultTable, CallerController caller)`
    `Evaluator(DataTable defaultTable)`
    `Evaluator(ReferenceResolver resolver)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `evaluate(Expression expression)`
    `java.lang.Object` | `evaluate(Expression expression, EvaluationEnvironment environment)`
    `java.lang.Object` | `evaluate(Expression expression, EvaluationEnvironment environment, EvaluationPoint point, Reference holder)`
    `java.lang.Object` | `evaluate(Expression expression, EvaluationPoint point, Reference holder)`
    `AttributedObject` | `evaluateAttributed(Expression expression)`
    `AttributedObject` | `evaluateAttributed(Expression expression, EvaluationEnvironment environment)`
    `java.lang.Boolean` | `evaluateToBoolean(Expression expression)`
    `java.lang.Boolean` | `evaluateToBoolean(Expression expression, boolean validate, boolean allowNull, EvaluationPoint point, Reference holder)`
    `java.lang.Boolean` | `evaluateToBoolean(Expression expression, EvaluationEnvironment environment)`
    `java.lang.Boolean` | `evaluateToBoolean(Expression expression, EvaluationPoint point, Reference holder)`
    `java.lang.Boolean` | `evaluateToBooleanOrNull(Expression expression)`
    `java.awt.Color` | `evaluateToColor(Expression expression)`
    `java.awt.Color` | `evaluateToColor(Expression expression, EvaluationPoint point, Reference holder)`
    `java.lang.Comparable` | `evaluateToComparable(Expression expression)`
    `Data` | `evaluateToData(Expression expression)`
    `DataTable` | `evaluateToDataTable(Expression expression)`
    `DataTable` | `evaluateToDataTable(Expression expression, EvaluationEnvironment environment)`
    `java.util.Date` | `evaluateToDate(Expression expression)`
    `java.lang.Number` | `evaluateToNumber(Expression expression)`
    `java.lang.Number` | `evaluateToNumber(Expression expression, boolean validate, boolean allowNull)`
    `java.lang.Number` | `evaluateToNumber(Expression expression, boolean validate, boolean allowNull, EvaluationPoint point, Reference holder)`
    `java.lang.Number` | `evaluateToNumber(Expression expression, EvaluationPoint point, Reference holder)`
    `java.lang.String` | `evaluateToString(Expression expression)`
    `java.lang.String` | `evaluateToString(Expression expression, EvaluationPoint point, Reference holder)`
    `java.lang.String` | `evaluateToStringOrNull(Expression expression)`
    `java.util.Map<java.lang.String,Function>` | `getAllFunctions()`
    `Function` | `getCustomFunction(java.lang.String name)`
    `ReferenceResolver` | `getDefaultResolver()`
    `EnvironmentReferenceResolver` | `getEnvironmentResolver()`
    `java.util.concurrent.ExecutorService` | `getExecutorService()`
    `java.lang.Object` | `getPreviousResult()`
    `ReferenceResolver` | `getResolver(java.lang.String schema)`
    `java.util.Map<java.lang.String,ReferenceResolver>` | `getResolvers()`
    `Tracer` | `getTracer()`
    `boolean` | `isLoggerRequest()`
    `void` | `registerCustomFunction(java.lang.String name, Function impl)`
    `void` | `restorePreviousResult(java.lang.Object previousResult)`
    `void` | `setDefaultContext(Context aContext)`
    `void` | `setDefaultTable(DataTable oldValue)`
    `void` | `setPreviousResult(java.lang.Object previousResult)`
    `void` | `setResolver(java.lang.String schema, ReferenceResolver resolver)`
    `void` | `setTracer(Tracer tracer)`

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

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

- - ### Constructor Detail

    - #### Evaluator

          public Evaluator(ContextManager cm,
                           CallerController caller)

    - #### Evaluator

          public Evaluator(ContextManager cm,
                           CallerController caller,
                           boolean loggerRequest)

    - #### Evaluator

          public Evaluator(DataTable defaultTable)

    - #### Evaluator

          public Evaluator(ContextManager cm,
                           Context defaultContext,
                           DataTable defaultTable,
                           CallerController caller)

    - #### Evaluator

          public Evaluator(ReferenceResolver resolver)

  - ### Method Detail

    - #### evaluate

          public java.lang.Object evaluate(Expression expression)
                                    throws SyntaxErrorException,
                                           EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluate

          public java.lang.Object evaluate(Expression expression,
                                           EvaluationEnvironment environment)
                                    throws SyntaxErrorException,
                                           EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluate

          public java.lang.Object evaluate(Expression expression,
                                           EvaluationPoint point,
                                           Reference holder)
                                    throws SyntaxErrorException,
                                           EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluate

          public java.lang.Object evaluate(Expression expression,
                                           EvaluationEnvironment environment,
                                           EvaluationPoint point,
                                           Reference holder)
                                    throws SyntaxErrorException,
                                           EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateAttributed

          public AttributedObject evaluateAttributed(Expression expression)
                                              throws SyntaxErrorException,
                                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateAttributed

          public AttributedObject evaluateAttributed(Expression expression,
                                                     EvaluationEnvironment environment)
                                              throws SyntaxErrorException,
                                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToString

          public java.lang.String evaluateToString(Expression expression)
                                            throws SyntaxErrorException,
                                                   EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToString

          public java.lang.String evaluateToString(Expression expression,
                                                   EvaluationPoint point,
                                                   Reference holder)
                                            throws SyntaxErrorException,
                                                   EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToData

          public Data evaluateToData(Expression expression)
                              throws SyntaxErrorException,
                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToStringOrNull

          public java.lang.String evaluateToStringOrNull(Expression expression)
                                                  throws SyntaxErrorException,
                                                         EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToBoolean

          public java.lang.Boolean evaluateToBoolean(Expression expression,
                                                     EvaluationEnvironment environment)
                                              throws SyntaxErrorException,
                                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToBoolean

          public java.lang.Boolean evaluateToBoolean(Expression expression)
                                              throws SyntaxErrorException,
                                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToBoolean

          public java.lang.Boolean evaluateToBoolean(Expression expression,
                                                     EvaluationPoint point,
                                                     Reference holder)
                                              throws SyntaxErrorException,
                                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToBooleanOrNull

          public java.lang.Boolean evaluateToBooleanOrNull(Expression expression)
                                                    throws SyntaxErrorException,
                                                           EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToBoolean

          public java.lang.Boolean evaluateToBoolean(Expression expression,
                                                     boolean validate,
                                                     boolean allowNull,
                                                     EvaluationPoint point,
                                                     Reference holder)
                                              throws SyntaxErrorException,
                                                     EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToNumber

          public java.lang.Number evaluateToNumber(Expression expression,
                                                   EvaluationPoint point,
                                                   Reference holder)
                                            throws SyntaxErrorException,
                                                   EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToNumber

          public java.lang.Number evaluateToNumber(Expression expression)
                                            throws SyntaxErrorException,
                                                   EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToNumber

          public java.lang.Number evaluateToNumber(Expression expression,
                                                   boolean validate,
                                                   boolean allowNull)
                                            throws SyntaxErrorException,
                                                   EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToNumber

          public java.lang.Number evaluateToNumber(Expression expression,
                                                   boolean validate,
                                                   boolean allowNull,
                                                   EvaluationPoint point,
                                                   Reference holder)
                                            throws SyntaxErrorException,
                                                   EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToComparable

          public java.lang.Comparable evaluateToComparable(Expression expression)
                                                    throws SyntaxErrorException,
                                                           EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToDataTable

          public DataTable evaluateToDataTable(Expression expression)
                                        throws SyntaxErrorException,
                                               EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToDataTable

          public DataTable evaluateToDataTable(Expression expression,
                                               EvaluationEnvironment environment)
                                        throws SyntaxErrorException,
                                               EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToDate

          public java.util.Date evaluateToDate(Expression expression)
                                        throws SyntaxErrorException,
                                               EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToColor

          public java.awt.Color evaluateToColor(Expression expression)
                                         throws SyntaxErrorException,
                                                EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### evaluateToColor

          public java.awt.Color evaluateToColor(Expression expression,
                                                EvaluationPoint point,
                                                Reference holder)
                                         throws SyntaxErrorException,
                                                EvaluationException

      Throws:
        `SyntaxErrorException`
        `EvaluationException`

    - #### getResolver

          public ReferenceResolver getResolver(java.lang.String schema)

    - #### getDefaultResolver

          public ReferenceResolver getDefaultResolver()

    - #### setResolver

          public void setResolver(java.lang.String schema,
                                  ReferenceResolver resolver)

    - #### getResolvers

          public java.util.Map<java.lang.String,ReferenceResolver> getResolvers()

    - #### getPreviousResult

          public java.lang.Object getPreviousResult()

    - #### setPreviousResult

          public void setPreviousResult(java.lang.Object previousResult)

    - #### registerCustomFunction

          public void registerCustomFunction(java.lang.String name,
                                             Function impl)

    - #### getAllFunctions

          public java.util.Map<java.lang.String,Function> getAllFunctions()

    - #### getCustomFunction

          public Function getCustomFunction(java.lang.String name)

    - #### getEnvironmentResolver

          public EnvironmentReferenceResolver getEnvironmentResolver()

    - #### getTracer

          public Tracer getTracer()

    - #### setTracer

          public void setTracer(Tracer tracer)

    - #### restorePreviousResult

          public void restorePreviousResult(java.lang.Object previousResult)

    - #### isLoggerRequest

          public boolean isLoggerRequest()

    - #### setDefaultTable

          public void setDefaultTable(DataTable oldValue)

    - #### setDefaultContext

          public void setDefaultContext(Context aContext)

    - #### getExecutorService

          public java.util.concurrent.ExecutorService getExecutorService()