X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Forg%2Fz3950%2Fzing%2Fcql%2FCQLLexer.java;h=2cb88522cf6d22b926018f892d53997779c980bb;hb=06247838399c68f3aacacaba75714e25d22d9992;hp=90f2167d847e909a0e24a7ea953ab58f819d34b9;hpb=be49dd9d16950f348cfd3ef6ba214e5d89a5c1fc;p=cql-java-moved-to-github.git diff --git a/src/org/z3950/zing/cql/CQLLexer.java b/src/org/z3950/zing/cql/CQLLexer.java index 90f2167..2cb8852 100644 --- a/src/org/z3950/zing/cql/CQLLexer.java +++ b/src/org/z3950/zing/cql/CQLLexer.java @@ -1,4 +1,4 @@ -// $Id: CQLLexer.java,v 1.8 2006-05-19 17:45:36 mike Exp $ +// $Id: CQLLexer.java,v 1.9 2007-06-07 16:15:22 mike Exp $ package org.z3950.zing.cql; import java.io.StreamTokenizer; @@ -84,7 +84,6 @@ class CQLLexer extends StreamTokenizer { CQLLexer(String cql, boolean lexdebug) { super(new StringReader(cql)); - ordinaryChars ('0', '9'); wordChars('!', '?'); // ASCII-dependency! wordChars('[', '`'); // ASCII-dependency! quoteChar('"'); @@ -95,6 +94,7 @@ class CQLLexer extends StreamTokenizer { ordinaryChar('('); ordinaryChar(')'); wordChars('\'', '\''); // prevent this from introducing strings + parseNumbers(); DEBUG = lexdebug; } @@ -188,7 +188,11 @@ class CQLLexer extends StreamTokenizer { if (token == TT_EOF) { return "EOF"; } else if (token == TT_NUMBER) { - return new Double((double) nval).toString(); + if ((double) nval == (int) nval) { + return new Integer((int) nval).toString(); + } else { + return new Double((double) nval).toString(); + } } else if (token == TT_WORD) { return "word: " + sval; } else if (token == '"') {