Update of /cvsroot/jython/jython/org/python/core
In directory usw-pr-cvs1:/tmp/cvs-serv27820
Modified Files:
PyString.java
Log Message:
Speedup common string predicates: isspace(), isalpha() etc.
Index: PyString.java
===================================================================
RCS file: /cvsroot/jython/jython/org/python/core/PyString.java,v
retrieving revision 2.39
retrieving revision 2.40
diff -C2 -r2.39 -r2.40
*** PyString.java 2001/02/07 09:23:52 2.39
--- PyString.java 2001/02/16 18:12:02 2.40
***************
*** 50,53 ****
--- 50,67 ----
case 3:
return s.__repr__();
+ case 4:
+ return Py.newBoolean(s.islower());
+ case 5:
+ return Py.newBoolean(s.isalpha());
+ case 6:
+ return Py.newBoolean(s.isdigit());
+ case 7:
+ return Py.newBoolean(s.isupper());
+ case 8:
+ return Py.newBoolean(s.isspace());
+ case 9:
+ return Py.newBoolean(s.istitle());
+ case 10:
+ return Py.newBoolean(s.isnumeric());
case 101:
return new PyString(s.lower());
***************
*** 235,238 ****
--- 249,259 ----
dict.__setitem__("__len__", new StringFuncs("__len__", 2, 0));
dict.__setitem__("__repr__", new StringFuncs("__repr__", 3, 0));
+ dict.__setitem__("islower", new StringFuncs("islower", 4, 0));
+ dict.__setitem__("isalpha", new StringFuncs("isalpha", 5, 0));
+ dict.__setitem__("isdigit", new StringFuncs("isdigit", 6, 0));
+ dict.__setitem__("isupper", new StringFuncs("isupper", 7, 0));
+ dict.__setitem__("isspace", new StringFuncs("isspace", 8, 0));
+ dict.__setitem__("istitle", new StringFuncs("istitle", 9, 0));
+ dict.__setitem__("isnumeric", new StringFuncs("isnumeric", 10, 0));
dict.__setitem__("__cmp__", new StringFuncs("__cmp__", 11, 1));
dict.__setitem__("__add__", new StringFuncs("__add__", 12, 1));
|