final public ConstantExpression literal()

in qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/parser/SelectorParserImpl.java [466:512]


    final public ConstantExpression literal() throws ParseException {
        Token t;
        String s;
        ConstantExpression left = null;
        switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
            case STRING_LITERAL:
                s = stringLitteral();
                left = new ConstantExpression(s);
                break;
            case DECIMAL_LITERAL:
                t = jj_consume_token(DECIMAL_LITERAL);
                left = ConstantExpression.createFromDecimal(t.image);
                break;
            case HEX_LITERAL:
                t = jj_consume_token(HEX_LITERAL);
                left = ConstantExpression.createFromHex(t.image);
                break;
            case OCTAL_LITERAL:
                t = jj_consume_token(OCTAL_LITERAL);
                left = ConstantExpression.createFromOctal(t.image);
                break;
            case FLOATING_POINT_LITERAL:
                t = jj_consume_token(FLOATING_POINT_LITERAL);
                left = ConstantExpression.createFloat(t.image);
                break;
            case TRUE:
                jj_consume_token(TRUE);
                left = ConstantExpression.TRUE;
                break;
            case FALSE:
                jj_consume_token(FALSE);
                left = ConstantExpression.FALSE;
                break;
            case NULL:
                jj_consume_token(NULL);
                left = ConstantExpression.NULL;
                break;
            default:
                jj_consume_token(-1);
                throw new ParseException();
        }
        {
            if (true)
                return left;
        }
        throw new Error("Missing return statement in function");
    }