Author: Manuel Jacob
Branch: refactor-str-types
Changeset: r65793:f0078474599f
Date: 2013-07-29 16:33 +0200
http://bitbucket.org/pypy/pypy/changeset/f0078474599f/
Log: Use space.listview_{str,unicode} in descr_join().
diff --git a/pypy/objspace/std/stringmethods.py
b/pypy/objspace/std/stringmethods.py
--- a/pypy/objspace/std/stringmethods.py
+++ b/pypy/objspace/std/stringmethods.py
@@ -387,11 +387,21 @@
@specialize.argtype(0)
def descr_join(self, space, w_list):
- #l = space.listview_str(w_list)
- #if l is not None:
- # if len(l) == 1:
- # return space.wrap(l[0])
- # return space.wrap(self._val(space).join(l))
+ from pypy.objspace.std.bytesobject import W_BytesObject
+ from pypy.objspace.std.unicodeobject import W_UnicodeObject
+
+ if isinstance(self, W_BytesObject):
+ l = space.listview_str(w_list)
+ if l is not None:
+ if len(l) == 1:
+ return space.wrap(l[0])
+ return space.wrap(self._val(space).join(l))
+ elif isinstance(self, W_UnicodeObject):
+ l = space.listview_unicode(w_list)
+ if l is not None:
+ if len(l) == 1:
+ return space.wrap(l[0])
+ return space.wrap(self._val(space).join(l))
list_w = space.listview(w_list)
size = len(list_w)
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit