property1.property2.methodOne() or
property1?.property2?.methodOne() when the null-safe navigation
operator is used.
May also contain array/collection/map indexers, such as
property1[0].property2['key'].
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public void | generateCode(MethodVisitor
the ASM MethodVisitor into which code should be generated mv, CodeFlow a context object with info about what is on the stack cf)Overrides org. Generate the bytecode for this node into the supplied visitor. |
| public TypedValue | Returns: the final value from the last piece of the compound expressionthe state in which the expression is being evaluated state)Implements abstract org. Evaluates a compound expression. |
| protected ValueRef | |
| public boolean | isCompilable()
Overrides org. Check whether a node can be compiled to bytecode. |
| public boolean | isWritable(ExpressionState
the current expression state (includes the context) state)Overrides org. Implements org. Determine if this expression node will support a setValue() call. |
| public TypedValue | setValueInternal(ExpressionState
the current expression state (includes the context) state, Supplier<TypedValue> a supplier of the new value valueSupplier)Overrides org. Evaluate the expression to a node and then set the new value created by the
specified |
| public String | toStringAST()
Implements org. Return the string form of this AST node. |
| CompoundExpression | back to summary |
|---|---|
| public CompoundExpression(int startPos, int endPos, SpelNodeImpl... expressionComponents) | |
| generateCode | back to summary |
|---|---|
| public void generateCode(MethodVisitor mv, CodeFlow cf) Overrides org. Doc from org. Generate the bytecode for this node into the supplied visitor. Context info about the current expression being compiled is available in the codeflow object, e.g. including information about the type of the object currently on the stack.
| |
| getValueInternal | back to summary |
|---|---|
| public TypedValue getValueInternal(ExpressionState state) throws EvaluationException Implements abstract org. Evaluates a compound expression. This involves evaluating each piece in turn and the return value from each piece is the active context object for the subsequent piece.
| |
| getValueRef | back to summary |
|---|---|
| protected ValueRef getValueRef(ExpressionState state) throws EvaluationException Overrides org.
| |
| isCompilable | back to summary |
|---|---|
| public boolean isCompilable() Overrides org. Doc from org. Check whether a node can be compiled to bytecode. The reasoning in each node may be different but will typically involve checking whether the exit type descriptor of the node is known and any relevant child nodes are compilable.
| |
| isWritable | back to summary |
|---|---|
| public boolean isWritable(ExpressionState state) throws EvaluationException Overrides org. Implements org. Doc from org. Determine if this expression node will support a setValue() call.
| |
| setValueInternal | back to summary |
|---|---|
| public TypedValue setValueInternal(ExpressionState state, Supplier<TypedValue> valueSupplier) throws EvaluationException Overrides org. Doc from org. Evaluate the expression to a node and then set the new value created by the
specified For example, if the expression evaluates to a property reference, then the property will be set to the new value. Favor this method over By default, this method throws a
| |
| toStringAST | back to summary |
|---|---|
| public String toStringAST() Implements org. Doc from org. Return the string form of this AST node. | |