[Pydev-cvs] org.python.pydev.parser/src/org/python/pydev/parser/grammar25 build.xml, 1.3, 1.4 Tree
Brought to you by:
fabioz
From: Fabio Z. <fa...@us...> - 2007-01-15 21:55:46
|
Update of /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30078/src/org/python/pydev/parser/grammar25 Modified Files: build.xml TreeBuilder25.java PythonGrammar25TokenManager.java python.jjt PythonGrammar25.java PythonGrammar25TreeConstants.java Log Message: Applied Num patch. Index: build.xml =================================================================== RCS file: /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25/build.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** build.xml 15 Sep 2006 01:29:39 -0000 1.3 --- build.xml 14 Jan 2007 10:54:48 -0000 1.4 *************** *** 2,6 **** <property name="javaccHome" value="E:\install\Dev.JavaCC\javacc-4.0" /> ! <property name="basedir" value="e:\eclipse_workspace\org.python.pydev.parser\src\org\python\pydev\parser\grammar25" /> <property name="parser.dir" value="${basedir}" /> --- 2,6 ---- <property name="javaccHome" value="E:\install\Dev.JavaCC\javacc-4.0" /> ! <property name="basedir" value="X:\org.python.pydev.parser\src\org\python\pydev\parser\grammar25" /> <property name="parser.dir" value="${basedir}" /> Index: PythonGrammar25.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25/PythonGrammar25.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** PythonGrammar25.java 21 Sep 2006 23:02:05 -0000 1.12 --- PythonGrammar25.java 14 Jan 2007 10:54:48 -0000 1.13 *************** *** 8,11 **** --- 8,12 ---- import org.python.pydev.parser.jython.ast.Str; import org.python.pydev.parser.jython.ast.Import; + import org.python.pydev.parser.jython.ast.Num; import org.python.pydev.parser.jython.ast.Yield; import org.python.pydev.parser.jython.ast.Tuple; *************** *** 204,211 **** ! Object makeInt(String s, int radix) { if (s.endsWith("L") || s.endsWith("l")) { s = s.substring(0, s.length()-1); ! return hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)); } int ndigits = s.length(); --- 205,212 ---- ! Object[] makeInt(String s, int radix, String token) { if (s.endsWith("L") || s.endsWith("l")) { s = s.substring(0, s.length()-1); ! return new Object[]{hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)), Num.Long, token}; } int ndigits = s.length(); *************** *** 214,238 **** i++; if ((ndigits - i) > 11) { ! return hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)); } long l = Long.valueOf(s, radix).longValue(); if (l > 0xffffffffl || (radix == 10 && l > Integer.MAX_VALUE)) { ! return hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)); } ! return hostLiteralMkr.newInteger((int) l); } ! Object makeFloat(String s) { ! return hostLiteralMkr.newFloat(Double.valueOf(s).doubleValue()); } ! Object makeLong(String s) { ! return hostLiteralMkr.newLong(s); } ! Object makeComplex(String s) { ! s = s.substring(0, s.length() - 1); ! return hostLiteralMkr.newImaginary(Double.valueOf(s).doubleValue()); } --- 215,239 ---- i++; if ((ndigits - i) > 11) { ! return new Object[]{hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)), Num.Long, token}; } long l = Long.valueOf(s, radix).longValue(); if (l > 0xffffffffl || (radix == 10 && l > Integer.MAX_VALUE)) { ! return new Object[]{hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)), Num.Long, token}; } ! return new Object[]{hostLiteralMkr.newInteger((int) l), Num.Int, token}; } ! Object[] makeFloat(String s) { ! return new Object[]{hostLiteralMkr.newFloat(Double.valueOf(s).doubleValue()), Num.Float, s}; } ! Object[] makeLong(String s) { ! return new Object[]{hostLiteralMkr.newLong(s), Num.Long, s}; } ! Object[] makeComplex(String s) { ! String compNumber = s.substring(0, s.length() - 1); ! return new Object[]{hostLiteralMkr.newImaginary(Double.valueOf(compNumber).doubleValue()), Num.Comp, s}; } *************** *** 6653,6657 **** t = jj_consume_token(HEXNUMBER); String s = t.image.substring(2, t.image.length()); ! jjtn000.setImage(makeInt(s, 16)); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; --- 6654,6658 ---- t = jj_consume_token(HEXNUMBER); String s = t.image.substring(2, t.image.length()); ! jjtn000.setImage(makeInt(s, 16, t.image)); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; *************** *** 6661,6676 **** case OCTNUMBER: t = jj_consume_token(OCTNUMBER); ! jjtn000.setImage(makeInt(t.image, 8)); ! jjtree.closeNodeScope(jjtn000, true); ! jjtc000 = false; ! jjtreeCloseNodeScope(jjtn000); break; case DECNUMBER: t = jj_consume_token(DECNUMBER); ! jjtn000.setImage(makeInt(t.image, 10)); ! jjtree.closeNodeScope(jjtn000, true); ! jjtc000 = false; ! jjtreeCloseNodeScope(jjtn000); break; --- 6662,6677 ---- case OCTNUMBER: t = jj_consume_token(OCTNUMBER); ! jjtn000.setImage(makeInt(t.image, 8, t.image)); ! jjtree.closeNodeScope(jjtn000, true); ! jjtc000 = false; ! jjtreeCloseNodeScope(jjtn000); break; case DECNUMBER: t = jj_consume_token(DECNUMBER); ! jjtn000.setImage(makeInt(t.image, 10, t.image)); ! jjtree.closeNodeScope(jjtn000, true); ! jjtc000 = false; ! jjtreeCloseNodeScope(jjtn000); break; *************** *** 7703,7711 **** } - final private boolean jj_3R_103() { - if (jj_scan_token(EXCEPT)) return true; - return false; - } - final private boolean jj_3R_102() { if (jj_scan_token(TRY)) return true; --- 7704,7707 ---- *************** *** 8889,8892 **** --- 8885,8893 ---- } + final private boolean jj_3R_103() { + if (jj_scan_token(EXCEPT)) return true; + return false; + } + public PythonGrammar25TokenManager token_source; public Token token, jj_nt; Index: TreeBuilder25.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25/TreeBuilder25.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** TreeBuilder25.java 9 Dec 2006 10:23:52 -0000 1.9 --- TreeBuilder25.java 14 Jan 2007 10:54:48 -0000 1.10 *************** *** 167,172 **** return name; case JJTNUM: ! //throw new RuntimeException("how to handle this? -- fabio") ! return new Num(n.getImage()); case JJTUNICODE: case JJTSTRING: --- 167,172 ---- return name; case JJTNUM: ! Object[] numimage = (Object[]) n.getImage(); ! return new Num(numimage[0], (Integer)numimage[1], (String)numimage[2]); case JJTUNICODE: case JJTSTRING: Index: PythonGrammar25TreeConstants.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25/PythonGrammar25TreeConstants.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PythonGrammar25TreeConstants.java 21 Sep 2006 23:02:05 -0000 1.3 --- PythonGrammar25TreeConstants.java 14 Jan 2007 10:54:48 -0000 1.4 *************** *** 1,3 **** ! /* Generated By:JJTree: Do not edit this line. D:\workspace with spaces\org.python.pydev.parser\src\org\python\pydev\parser\grammar25\PythonGrammar25TreeConstants.java */ package org.python.pydev.parser.grammar25; --- 1,3 ---- ! /* Generated By:JJTree: Do not edit this line. X:\org.python.pydev.parser\src\org\python\pydev\parser\grammar25\PythonGrammar25TreeConstants.java */ package org.python.pydev.parser.grammar25; Index: python.jjt =================================================================== RCS file: /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25/python.jjt,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** python.jjt 21 Sep 2006 23:02:05 -0000 1.13 --- python.jjt 14 Jan 2007 10:54:48 -0000 1.14 *************** *** 29,32 **** --- 29,33 ---- import org.python.pydev.parser.jython.ast.Str; import org.python.pydev.parser.jython.ast.Import; + import org.python.pydev.parser.jython.ast.Num; import org.python.pydev.parser.jython.ast.Yield; import org.python.pydev.parser.jython.ast.Tuple; *************** *** 226,233 **** ! Object makeInt(String s, int radix) { if (s.endsWith("L") || s.endsWith("l")) { s = s.substring(0, s.length()-1); ! return hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)); } int ndigits = s.length(); --- 227,234 ---- ! Object[] makeInt(String s, int radix, String token) { if (s.endsWith("L") || s.endsWith("l")) { s = s.substring(0, s.length()-1); ! return new Object[]{hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)), Num.Long, token}; } int ndigits = s.length(); *************** *** 236,260 **** i++; if ((ndigits - i) > 11) { ! return hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)); } long l = Long.valueOf(s, radix).longValue(); if (l > 0xffffffffl || (radix == 10 && l > Integer.MAX_VALUE)) { ! return hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)); } ! return hostLiteralMkr.newInteger((int) l); } ! Object makeFloat(String s) { ! return hostLiteralMkr.newFloat(Double.valueOf(s).doubleValue()); } ! Object makeLong(String s) { ! return hostLiteralMkr.newLong(s); } ! Object makeComplex(String s) { ! s = s.substring(0, s.length() - 1); ! return hostLiteralMkr.newImaginary(Double.valueOf(s).doubleValue()); } --- 237,261 ---- i++; if ((ndigits - i) > 11) { ! return new Object[]{hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)), Num.Long, token}; } long l = Long.valueOf(s, radix).longValue(); if (l > 0xffffffffl || (radix == 10 && l > Integer.MAX_VALUE)) { ! return new Object[]{hostLiteralMkr.newLong(new java.math.BigInteger(s, radix)), Num.Long, token}; } ! return new Object[]{hostLiteralMkr.newInteger((int) l), Num.Int, token}; } ! Object[] makeFloat(String s) { ! return new Object[]{hostLiteralMkr.newFloat(Double.valueOf(s).doubleValue()), Num.Float, s}; } ! Object[] makeLong(String s) { ! return new Object[]{hostLiteralMkr.newLong(s), Num.Long, s}; } ! Object[] makeComplex(String s) { ! String compNumber = s.substring(0, s.length() - 1); ! return new Object[]{hostLiteralMkr.newImaginary(Double.valueOf(compNumber).doubleValue()), Num.Comp, s}; } *************** *** 1469,1480 **** t=<HEXNUMBER> { String s = t.image.substring(2, t.image.length()); ! jjtThis.setImage(makeInt(s, 16)); } {} ) | ( ! t=<OCTNUMBER> { jjtThis.setImage(makeInt(t.image, 8)); } {} ) | ( ! t=<DECNUMBER> { jjtThis.setImage(makeInt(t.image, 10)); } {} ) | ( --- 1470,1481 ---- t=<HEXNUMBER> { String s = t.image.substring(2, t.image.length()); ! jjtThis.setImage(makeInt(s, 16, t.image)); } {} ) | ( ! t=<OCTNUMBER> { jjtThis.setImage(makeInt(t.image, 8, t.image)); } {} ) | ( ! t=<DECNUMBER> { jjtThis.setImage(makeInt(t.image, 10, t.image)); } {} ) | ( Index: PythonGrammar25TokenManager.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev.parser/src/org/python/pydev/parser/grammar25/PythonGrammar25TokenManager.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** PythonGrammar25TokenManager.java 16 Sep 2006 22:19:53 -0000 1.4 --- PythonGrammar25TokenManager.java 14 Jan 2007 10:54:48 -0000 1.5 *************** *** 8,11 **** --- 8,12 ---- import org.python.pydev.parser.jython.ast.Str; import org.python.pydev.parser.jython.ast.Import; + import org.python.pydev.parser.jython.ast.Num; import org.python.pydev.parser.jython.ast.Yield; import org.python.pydev.parser.jython.ast.Tuple; |