Interface ParserContext

All Known Implementing Classes:
FluentParserContext, NullParserContext, SimpleParserContext

public interface ParserContext
Input provided to an expression parser that can influence an expression parsing/compilation routine.
Author:
Keith Donald
  • Method Details

    • getEvaluationContextType

      Class<?> getEvaluationContextType()
      Returns the type of context object the parsed expression will evaluate in. An expression parser may use this value to install custom variable resolves for that particular type of context.
      Returns:
      the evaluation context type
    • getExpectedEvaluationResultType

      Class<?> getExpectedEvaluationResultType()
      Returns the expected type of object returned from evaluating the parsed expression. An expression parser may use this value to coerce an raw evaluation result before it is returned.
      Returns:
      the expected evaluation result type
    • getExpressionVariables

      ExpressionVariable[] getExpressionVariables()
      Returns additional expression variables or aliases that can be referenced during expression evaluation. An expression parser will register these variables for reference during evaluation.
    • isTemplate

      boolean isTemplate()
      Whether or not the expression being parsed is a template. A template expression consists of literal text that can be mixed with evaluatable blocks. Some examples:
                 Some literal text
           Hello #{name.firstName}!
           #{3 + 4}
       
      Returns:
      true if the expression is a template, false otherwise