# Package org.springframework.expression.spel.ast

Interface Summary
Interface | Description
--- | ---
ValueRef | Represents a reference to a value.

Class Summary
Class | Description
--- | ---
Assign | Represents assignment.
AstUtils | Utilities methods for use in the Ast classes.
BeanReference | Represents a bean reference to a type, for example "@foo" or "@'foo.bar'"
BooleanLiteral | Represents the literal values TRUE and FALSE.
CompoundExpression | Represents a DOT separated expression sequence, such as 'property1.property2.methodOne()'
ConstructorReference | Represents the invocation of a constructor.
Elvis | Represents the elvis operator ?:.
FloatLiteral | Expression language AST node that represents a float literal.
FormatHelper | Utility methods (formatters, etc) used during parsing and evaluation.
FunctionReference | A function reference is of the form "#someFunction(a,b,c)".
Identifier |
Indexer | An Indexer can index into some proceeding structure to access a particular piece of it.
InlineList | Represent a list in an expression, e.g.
IntLiteral | Expression language AST node that represents an integer literal.
Literal | Common superclass for nodes representing literals (boolean, string, number, etc).
LongLiteral | Expression language AST node that represents a long integer literal.
MethodReference |
NullLiteral |
OpAnd | Represents the boolean AND operation.
OpDec | Decrement operator.
OpDivide | Implements division operator.
OpEQ | Implements equality operator.
Operator | Common supertype for operators that operate on either one or two operands.
OperatorBetween | Represents the between operator.
OperatorInstanceof | The operator 'instanceof' checks if an object is of the class specified in the right hand operand, in the same way that `instanceof` does in Java.
OperatorMatches | Implements the matches operator.
OperatorNot | Represents a NOT operation.
OperatorPower | The power operator.
OpGE | Implements greater-than-or-equal operator.
OpGT | Implements greater-than operator.
OpInc | Increment operator.
OpLE | Implements the less-than-or-equal operator.
OpLT | Implements the less-than operator.
OpMinus | The minus operator supports: subtraction of doubles (floats are represented as doubles) subtraction of longs subtraction of integers subtraction of an int from a string of one character (effectively decreasing that character), so 'd'-3='a' It can be used as a unary operator for numbers (double/long/int).
OpModulus | Implements the modulus operator.
OpMultiply | Implements the `multiply` operator.
OpNE | Implements the not-equal operator.
OpOr | Represents the boolean OR operation.
OpPlus | The plus operator will: add doubles (floats are represented as doubles) add longs add integers concatenate strings It can be used as a unary operator for numbers (double/long/int).
Projection | Represents projection, where a given operation is performed on all elements in some input sequence, returning a new sequence of the same size.
PropertyOrFieldReference | Represents a simple property or field reference.
QualifiedIdentifier | Represents a dot separated sequence of strings that indicate a package qualified type reference.
RealLiteral |
Selection | Represents selection over a map or collection.
SpelNodeImpl | The common supertype of all AST nodes in a parsed Spring Expression Language format expression.
StringLiteral |
Ternary | Represents a ternary expression, for example: "someCheck()?true:false".
TypeReference | Represents a reference to a type, for example "T(String)" or "T(com.somewhere.Foo)"
ValueRef.NullValueRef | A ValueRef for the null value.
ValueRef.TypedValueHolderValueRef | A ValueRef holder for a single value, which cannot be set.
VariableReference | Represents a variable reference, eg.

Enum Summary
Enum | Description
--- | ---
TypeCode | Captures primitive types and their corresponding class objects, plus one special entry that represents all reference (non-primitive) types.