org.springframework.expression.spel.ast
Class FunctionReference
java.lang.Object
org.springframework.expression.spel.ast.SpelNodeImpl
org.springframework.expression.spel.ast.FunctionReference
- All Implemented Interfaces:
- SpelNode
public class FunctionReference
- extends SpelNodeImpl
A function reference is of the form "#someFunction(a,b,c)". Functions may be defined in the context prior to the
expression being evaluated or within the expression itself using a lambda function definition. For example: Lambda
function definition in an expression: "(#max = {|x,y|$x>$y?$x:$y};max(2,3))" Calling context defined function:
"#isEven(37)". Functions may also be static java methods, registered in the context prior to invocation of the
expression.
Functions are very simplistic, the arguments are not part of the definition (right now),
so the names must be unique.
- Since:
- 3.0
- Author:
- Andy Clement
| Methods inherited from class org.springframework.expression.spel.ast.SpelNodeImpl |
getChild, getChildCount, getEndPosition, getObjectClass, getPreviousChild, getStartPosition, getTypedValue, getValue, getValue, isWritable, nextChildIs, setValue |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FunctionReference
public FunctionReference(String functionName,
int pos,
SpelNodeImpl... arguments)
getValueInternal
public TypedValue getValueInternal(ExpressionState state)
throws EvaluationException
- Specified by:
getValueInternal in class SpelNodeImpl
- Throws:
EvaluationException
toStringAST
public String toStringAST()
- Specified by:
toStringAST in interface SpelNode- Specified by:
toStringAST in class SpelNodeImpl
- Returns:
- the string form of this AST node