From: Finn B. <bc...@us...> - 2001-12-18 12:50:30
|
Update of /cvsroot/jython/jython/org/python/core In directory usw-pr-cvs1:/tmp/cvs-serv4197 Modified Files: Py.java Log Message: Added formatException(..). To be used from PyFinalizableInstance.finalize() Index: Py.java =================================================================== RCS file: /cvsroot/jython/jython/org/python/core/Py.java,v retrieving revision 2.61 retrieving revision 2.62 diff -C2 -d -r2.61 -r2.62 *** Py.java 2001/12/16 13:04:02 2.61 --- Py.java 2001/12/18 12:50:27 2.62 *************** *** 962,984 **** } } PyObject typeName; if (type instanceof PyClass) { ! typeName = new PyString(((PyClass)type).__name__); } else { ! typeName = type; } if (value != Py.None) { ! stderr.print(typeName); ! stderr.print(": "); if (__builtin__.isinstance(value, (PyClass) Py.SyntaxError)) { ! stderr.println(value.__getitem__(0)); } else { ! stderr.println(value); } - } else { - stderr.println(typeName); } } /* Equivalent to Python's assert statement */ --- 962,988 ---- } } + stderr.println(formatException(type, value, tb)); + } + + static String formatException(PyObject type, PyObject value, PyObject tb) { + StringBuffer buf = new StringBuffer(); PyObject typeName; if (type instanceof PyClass) { ! buf.append(((PyClass) type).__name__); } else { ! buf.append(type.__str__()); } if (value != Py.None) { ! buf.append(": "); if (__builtin__.isinstance(value, (PyClass) Py.SyntaxError)) { ! buf.append(value.__getitem__(0).__str__()); } else { ! buf.append(value.__str__()); } } + return buf.toString(); } + /* Equivalent to Python's assert statement */ |