Class Literal
java.lang.Object
org.springframework.expression.spel.ast.SpelNodeImpl
org.springframework.expression.spel.ast.Literal
- Direct Known Subclasses:
- BooleanLiteral,- FloatLiteral,- IntLiteral,- LongLiteral,- NullLiteral,- RealLiteral,- StringLiteral
Common superclass for nodes representing literals (boolean, string, number, etc).
- Author:
- Andy Clement, Juergen Hoeller
- 
Field SummaryFields inherited from class org.springframework.expression.spel.ast.SpelNodeImplchildren, exitTypeDescriptorFields inherited from interface org.springframework.asm.OpcodesAALOAD, 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_RECORD, 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, ASM10_EXPERIMENTAL, ASM4, ASM5, ASM6, ASM7, ASM8, ASM9, 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, V16, V17, V18, V19, V20, V21, V22, V9
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionstatic LiteralgetIntLiteral(String numberToken, int startPos, int endPos, int radix) Process the string form of a number, using the specified base if supplied and return an appropriate literal to hold it.abstract TypedValuestatic LiteralgetLongLiteral(String numberToken, int startPos, int endPos, int radix) final Stringstatic LiteralgetRealLiteral(String numberToken, int startPos, int endPos, boolean isFloat) final TypedValuegetValueInternal(ExpressionState state) toString()Return the string form of this AST node.Methods inherited from class org.springframework.expression.spel.ast.SpelNodeImplgenerateCode, generateCodeForArgument, generateCodeForArguments, getChild, getChildCount, getEndPosition, getExitDescriptor, getObjectClass, getStartPosition, getTypedValue, getValue, getValue, getValueRef, isCompilable, isWritable, nextChildIs, setValue, setValueInternal
- 
Constructor Details- 
Literal
 
- 
- 
Method Details- 
getOriginalValue
- 
getValueInternal- Specified by:
- getValueInternalin class- SpelNodeImpl
- Throws:
- SpelEvaluationException
 
- 
toString
- 
toStringASTDescription copied from interface:SpelNodeReturn the string form of this AST node.- Returns:
- the string form
 
- 
getLiteralValue
- 
getIntLiteralProcess the string form of a number, using the specified base if supplied and return an appropriate literal to hold it. Any suffix to indicate a long will be taken into account (either 'l' or 'L' is supported).- Parameters:
- numberToken- the token holding the number as its payload (eg. 1234 or 0xCAFE)
- radix- the base of number
- Returns:
- a subtype of Literal that can represent it
 
- 
getLongLiteral
- 
getRealLiteral
 
-