Author: Armin Rigo <ar...@tunes.org> Branch: fix-strbuf Changeset: r78664:586fe659736b Date: 2015-07-26 11:48 +0200 http://bitbucket.org/pypy/pypy/changeset/586fe659736b/
Log: (fijal, arigo) push push push diff --git a/pypy/objspace/std/bytearrayobject.py b/pypy/objspace/std/bytearrayobject.py --- a/pypy/objspace/std/bytearrayobject.py +++ b/pypy/objspace/std/bytearrayobject.py @@ -77,11 +77,13 @@ def _op_val(space, w_other): return space.buffer_w(w_other, space.BUF_SIMPLE).as_str() - def _chr(self, char): + @staticmethod + def _chr(char): assert len(char) == 1 - return str(char)[0] + return char[0] - def _multi_chr(self, char): + @staticmethod + def _multi_chr(char): return [char] @staticmethod diff --git a/pypy/objspace/std/bytesobject.py b/pypy/objspace/std/bytesobject.py --- a/pypy/objspace/std/bytesobject.py +++ b/pypy/objspace/std/bytesobject.py @@ -483,7 +483,7 @@ @staticmethod def _use_rstr_ops(space, w_other): from pypy.objspace.std.unicodeobject import W_UnicodeObject - return (isinstance(w_other, W_BytesObject) or + return (isinstance(w_other, W_AbstractBytesObject) or isinstance(w_other, W_UnicodeObject)) @staticmethod @@ -495,9 +495,10 @@ raise return space.charbuf_w(w_other) - def _chr(self, char): + @staticmethod + def _chr(char): assert len(char) == 1 - return str(char)[0] + return char[0] _builder = StringBuilder 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 @@ -28,7 +28,8 @@ start, end = unwrap_start_stop(space, lenself, w_start, w_end) return (value, start, end) - def _multi_chr(self, c): + @staticmethod + def _multi_chr(c): return c def descr_len(self, space): diff --git a/pypy/objspace/std/unicodeobject.py b/pypy/objspace/std/unicodeobject.py --- a/pypy/objspace/std/unicodeobject.py +++ b/pypy/objspace/std/unicodeobject.py @@ -117,9 +117,10 @@ return unicode_from_encoded_object( space, w_other, None, "strict")._value - def _chr(self, char): + @staticmethod + def _chr(char): assert len(char) == 1 - return unicode(char)[0] + return unichr(ord(char[0])) _builder = UnicodeBuilder _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit