org.springframework.expression.spel.ast

## Class OperatorBetween

- java.lang.Object
- - org.springframework.expression.spel.ast.SpelNodeImpl
  - - org.springframework.expression.spel.ast.Operator
    - - org.springframework.expression.spel.ast.OperatorBetween

- All Implemented Interfaces:
    SpelNode

      public class OperatorBetween
      extends Operator

  Represents the between operator. The left operand to between must be a single value and the right operand must be a list - this operator returns true if the left operand is between (using the registered comparator) the two elements in the list. The definition of between being inclusive follows the SQL BETWEEN definition.
  Since:
    3.0
  Author:
    Andy Clement

- - ### Field Summary

    - ### Fields inherited from class org.springframework.expression.spel.ast.SpelNodeImpl

      `children, pos`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `OperatorBetween(int pos, SpelNodeImpl... operands)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `BooleanTypedValue` | `getValueInternal(ExpressionState state)` Returns a boolean based on whether a value is in the range expressed.

    - ### Methods inherited from class org.springframework.expression.spel.ast.Operator

      `equalityCheck, getLeftOperand, getOperatorName, getRightOperand, toStringAST`

    - ### Methods inherited from class org.springframework.expression.spel.ast.SpelNodeImpl

      `getChild, getChildCount, getEndPosition, getObjectClass, getPreviousChild, getStartPosition, getTypedValue, getValue, getValue, getValueRef, isWritable, nextChildIs, setValue`

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

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

- - ### Constructor Detail

    - #### OperatorBetween

          public OperatorBetween(int pos,
                                 SpelNodeImpl... operands)

  - ### Method Detail

    - #### getValueInternal

          public BooleanTypedValue getValueInternal(ExpressionState state)
                                             throws EvaluationException

      Returns a boolean based on whether a value is in the range expressed. The first operand is any value whilst the second is a list of two values - those two values being the bounds allowed for the first operand (inclusive).
      Specified by:
        `getValueInternal` in class `SpelNodeImpl`
      Parameters:
        `state` - the expression state
      Returns:
        true if the left operand is in the range specified, false otherwise
      Throws:
        `EvaluationException` - if there is a problem evaluating the expression