public class CompoundExpression extends SpelNodeImpl
children, exitTypeDescriptor, posAALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM4, ASM5, ASM6, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V1_9| Constructor and Description |
|---|
CompoundExpression(int pos,
SpelNodeImpl... expressionComponents) |
| Modifier and Type | Method and Description |
|---|---|
void |
generateCode(org.springframework.asm.MethodVisitor mv,
CodeFlow cf)
Generate the bytecode for this node into the supplied visitor.
|
TypedValue |
getValueInternal(ExpressionState state)
Evaluates a compound expression.
|
protected ValueRef |
getValueRef(ExpressionState state) |
boolean |
isCompilable()
Check whether a node can be compiled to bytecode.
|
boolean |
isWritable(ExpressionState state)
Determine if this expression node will support a setValue() call.
|
void |
setValue(ExpressionState state,
java.lang.Object value)
Evaluate the expression to a node and then set the new value on that node.
|
java.lang.String |
toStringAST() |
generateCodeForArgument, generateCodeForArguments, getChild, getChildCount, getEndPosition, getExitDescriptor, getObjectClass, getPreviousChild, getStartPosition, getTypedValue, getValue, getValue, nextChildIspublic CompoundExpression(int pos,
SpelNodeImpl... expressionComponents)
protected ValueRef getValueRef(ExpressionState state) throws EvaluationException
getValueRef in class SpelNodeImplEvaluationExceptionpublic TypedValue getValueInternal(ExpressionState state) throws EvaluationException
getValueInternal in class SpelNodeImplstate - the state in which the expression is being evaluatedEvaluationExceptionpublic void setValue(ExpressionState state, java.lang.Object value) throws EvaluationException
SpelNodesetValue in interface SpelNodesetValue in class SpelNodeImplstate - the current expression state (includes the context)value - the new valueEvaluationException - if any problem occurs evaluating the expression or
setting the new valuepublic boolean isWritable(ExpressionState state) throws EvaluationException
SpelNodeisWritable in interface SpelNodeisWritable in class SpelNodeImplstate - the current expression state (includes the context)EvaluationException - if something went wrong trying to determine
if the node supports writingpublic java.lang.String toStringAST()
public boolean isCompilable()
SpelNodeImplisCompilable in class SpelNodeImpltrue if this node can be compiled to bytecodepublic void generateCode(org.springframework.asm.MethodVisitor mv,
CodeFlow cf)
SpelNodeImplgenerateCode in class SpelNodeImplmv - the ASM MethodVisitor into which code should be generatedcf - a context object with info about what is on the stack