Class Selection
- java.lang.Object
- org.springframework.expression.spel.ast.SpelNodeImpl
- org.springframework.expression.spel.ast.Selection
public class Selection extends SpelNodeImpl
Represents selection over a map or collection. For example: {1,2,3,4,5,6,7,8,9,10}.?{#isEven(#this) == 'y'} returns [2, 4, 6, 8, 10]Basically a subset of the input data is returned based on the evaluation of the expression supplied as selection criteria.
- Since:
- 3.0
- Author:
- Andy Clement, Mark Fisher, Sam Brannen, Juergen Hoeller
Field Summary
Fields Modifier and Type Field Description static intALLAll items (?[]).static intFIRSTThe first item (^[]).static intLASTThe last item ($[]).Fields inherited from class org.springframework.expression.spel.ast.SpelNodeImpl
children, exitTypeDescriptor
Fields inherited from interface org.springframework.asm.Opcodes
AALOAD, 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, ASM7, ASM8_EXPERIMENTAL, 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, SOURCE_DEPRECATED, SOURCE_MASK, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V15, V9
Constructor Summary
Constructors Constructor Description Selection(boolean nullSafe, int variant, int startPos, int endPos, SpelNodeImpl expression)
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TypedValuegetValueInternal(ExpressionState state)protected ValueRefgetValueRef(ExpressionState state)StringtoStringAST()Return the string form the this AST node.Methods inherited from class org.springframework.expression.spel.ast.SpelNodeImpl
generateCode, generateCodeForArgument, generateCodeForArguments, getChild, getChildCount, getEndPosition, getExitDescriptor, getObjectClass, getStartPosition, getTypedValue, getValue, getValue, isCompilable, isWritable, nextChildIs, setValue
Field Detail
ALL
public static final int ALL
All items (?[]).- See Also:
- Constant Field Values
FIRST
public static final int FIRST
The first item (^[]).- See Also:
- Constant Field Values
LAST
public static final int LAST
The last item ($[]).- See Also:
- Constant Field Values
Constructor Detail
Selection
public Selection(boolean nullSafe, int variant, int startPos, int endPos, SpelNodeImpl expression)
Method Detail
getValueInternal
public TypedValue getValueInternal(ExpressionState state) throws EvaluationException
- Specified by:
getValueInternalin classSpelNodeImpl- Throws:
EvaluationException
getValueRef
protected ValueRef getValueRef(ExpressionState state) throws EvaluationException
- Overrides:
getValueRefin classSpelNodeImpl- Throws:
EvaluationException
toStringAST
public String toStringAST()
Description copied from interface:SpelNodeReturn the string form the this AST node.- Returns:
- the string form