Author: Carl Friedrich Bolz <cfb...@gmx.de>
Branch: space-newtext
Changeset: r88075:dd3d24ec655b
Date: 2016-11-02 13:21 +0100
http://bitbucket.org/pypy/pypy/changeset/dd3d24ec655b/

Log:    _codecs, _multibytecodec

diff --git a/pypy/module/_codecs/interp_codecs.py 
b/pypy/module/_codecs/interp_codecs.py
--- a/pypy/module/_codecs/interp_codecs.py
+++ b/pypy/module/_codecs/interp_codecs.py
@@ -42,16 +42,16 @@
                 w_input = space.newunicode(input)
             w_exc =  space.call_function(
                 w_cls,
-                space.wrap(encoding),
+                space.newtext(encoding),
                 w_input,
-                space.wrap(startpos),
-                space.wrap(endpos),
-                space.wrap(reason))
+                space.newint(startpos),
+                space.newint(endpos),
+                space.newtext(reason))
             w_res = space.call_function(w_errorhandler, w_exc)
             if (not space.isinstance_w(w_res, space.w_tuple)
                 or space.len_w(w_res) != 2
                 or not space.isinstance_w(
-                                 space.getitem(w_res, space.wrap(0)),
+                                 space.getitem(w_res, space.newint(0)),
                                  space.w_unicode)):
                 raise oefmt(space.w_TypeError,
                             "%s error handler must return (unicode, int) "
@@ -86,7 +86,7 @@
             return self.unicodedata_handler
         try:
             w_unicodedata = space.getbuiltinmodule("unicodedata")
-            w_getcode = space.getattr(w_unicodedata, space.wrap("_get_code"))
+            w_getcode = space.getattr(w_unicodedata, 
space.newtext("_get_code"))
         except OperationError:
             return None
         else:
@@ -140,9 +140,9 @@
 def _lookup_codec_loop(space, encoding, normalized_encoding):
     state = space.fromcache(CodecState)
     if state.codec_need_encodings:
-        w_import = space.getattr(space.builtin, space.wrap("__import__"))
+        w_import = space.getattr(space.builtin, space.newtext("__import__"))
         # registers new codecs
-        space.call_function(w_import, space.wrap("encodings"))
+        space.call_function(w_import, space.newtext("encodings"))
         state.codec_need_encodings = False
         if len(state.codec_search_path) == 0:
             raise oefmt(space.w_LookupError,
@@ -150,7 +150,7 @@
                         "encoding")
     for w_search in state.codec_search_path:
         w_result = space.call_function(w_search,
-                                       space.wrap(normalized_encoding))
+                                       space.newtext(normalized_encoding))
         if not space.is_w(w_result, space.w_None):
             if not (space.isinstance_w(w_result, space.w_tuple) and
                     space.len_w(w_result) == 4):
@@ -167,9 +167,9 @@
 
 def check_exception(space, w_exc):
     try:
-        w_start = space.getattr(w_exc, space.wrap('start'))
-        w_end = space.getattr(w_exc, space.wrap('end'))
-        w_obj = space.getattr(w_exc, space.wrap('object'))
+        w_start = space.getattr(w_exc, space.newtext('start'))
+        w_end = space.getattr(w_exc, space.newtext('end'))
+        w_obj = space.getattr(w_exc, space.newtext('object'))
     except OperationError as e:
         if not e.match(space, space.w_AttributeError):
             raise
@@ -189,23 +189,23 @@
 
 def ignore_errors(space, w_exc):
     check_exception(space, w_exc)
-    w_end = space.getattr(w_exc, space.wrap('end'))
-    return space.newtuple([space.wrap(u''), w_end])
+    w_end = space.getattr(w_exc, space.newtext('end'))
+    return space.newtuple([space.newunicode(u''), w_end])
 
 def replace_errors(space, w_exc):
     check_exception(space, w_exc)
-    w_start = space.getattr(w_exc, space.wrap('start'))
-    w_end = space.getattr(w_exc, space.wrap('end'))
+    w_start = space.getattr(w_exc, space.newtext('start'))
+    w_end = space.getattr(w_exc, space.newtext('end'))
     size = space.int_w(w_end) - space.int_w(w_start)
     if space.isinstance_w(w_exc, space.w_UnicodeEncodeError):
         text = u'?' * size
-        return space.newtuple([space.wrap(text), w_end])
+        return space.newtuple([space.newunicode(text), w_end])
     elif space.isinstance_w(w_exc, space.w_UnicodeDecodeError):
         text = u'\ufffd'
-        return space.newtuple([space.wrap(text), w_end])
+        return space.newtuple([space.newunicode(text), w_end])
     elif space.isinstance_w(w_exc, space.w_UnicodeTranslateError):
         text = u'\ufffd' * size
-        return space.newtuple([space.wrap(text), w_end])
+        return space.newtuple([space.newunicode(text), w_end])
     else:
         raise oefmt(space.w_TypeError,
                     "don't know how to handle %T in error callback", w_exc)
@@ -213,9 +213,9 @@
 def xmlcharrefreplace_errors(space, w_exc):
     check_exception(space, w_exc)
     if space.isinstance_w(w_exc, space.w_UnicodeEncodeError):
-        obj = space.realunicode_w(space.getattr(w_exc, space.wrap('object')))
-        start = space.int_w(space.getattr(w_exc, space.wrap('start')))
-        w_end = space.getattr(w_exc, space.wrap('end'))
+        obj = space.realunicode_w(space.getattr(w_exc, 
space.newtext('object')))
+        start = space.int_w(space.getattr(w_exc, space.newtext('start')))
+        w_end = space.getattr(w_exc, space.newtext('end'))
         end = space.int_w(w_end)
         builder = UnicodeBuilder()
         pos = start
@@ -231,7 +231,7 @@
             builder.append(unicode(str(code)))
             builder.append(u";")
             pos += 1
-        return space.newtuple([space.wrap(builder.build()), w_end])
+        return space.newtuple([space.newunicode(builder.build()), w_end])
     else:
         raise oefmt(space.w_TypeError,
                     "don't know how to handle %T in error callback", w_exc)
@@ -239,9 +239,9 @@
 def backslashreplace_errors(space, w_exc):
     check_exception(space, w_exc)
     if space.isinstance_w(w_exc, space.w_UnicodeEncodeError):
-        obj = space.realunicode_w(space.getattr(w_exc, space.wrap('object')))
-        start = space.int_w(space.getattr(w_exc, space.wrap('start')))
-        w_end = space.getattr(w_exc, space.wrap('end'))
+        obj = space.realunicode_w(space.getattr(w_exc, 
space.newtext('object')))
+        start = space.int_w(space.getattr(w_exc, space.newtext('start')))
+        w_end = space.getattr(w_exc, space.newtext('end'))
         end = space.int_w(w_end)
         builder = UnicodeBuilder()
         pos = start
@@ -263,7 +263,7 @@
                 builder.append_multiple_char(u'0', nb)
             builder.append_slice(unicode(num), 2, lnum)
             pos += 1
-        return space.newtuple([space.wrap(builder.build()), w_end])
+        return space.newtuple([space.newunicode(builder.build()), w_end])
     else:
         raise oefmt(space.w_TypeError,
                     "don't know how to handle %T in error callback", w_exc)
@@ -309,19 +309,19 @@
         encoding = space.sys.defaultencoding
     else:
         encoding = space.str_w(w_encoding)
-    w_encoder = space.getitem(lookup_codec(space, encoding), space.wrap(0))
-    w_res = space.call_function(w_encoder, w_obj, space.wrap(errors))
-    return space.getitem(w_res, space.wrap(0))
+    w_encoder = space.getitem(lookup_codec(space, encoding), space.newint(0))
+    w_res = space.call_function(w_encoder, w_obj, space.newtext(errors))
+    return space.getitem(w_res, space.newint(0))
 
 @unwrap_spec(errors='str_or_None')
 def readbuffer_encode(space, w_data, errors='strict'):
     s = space.getarg_w('s#', w_data)
-    return space.newtuple([space.newbytes(s), space.wrap(len(s))])
+    return space.newtuple([space.newbytes(s), space.newint(len(s))])
 
 @unwrap_spec(errors='str_or_None')
 def charbuffer_encode(space, w_data, errors='strict'):
     s = space.getarg_w('t#', w_data)
-    return space.newtuple([space.wrap(s), space.wrap(len(s))])
+    return space.newtuple([space.newbytes(s), space.newint(len(s))])
 
 @unwrap_spec(errors=str)
 def decode(space, w_obj, w_encoding=None, errors='strict'):
@@ -338,13 +338,13 @@
         encoding = space.sys.defaultencoding
     else:
         encoding = space.str_w(w_encoding)
-    w_decoder = space.getitem(lookup_codec(space, encoding), space.wrap(1))
+    w_decoder = space.getitem(lookup_codec(space, encoding), space.newint(1))
     if space.is_true(w_decoder):
-        w_res = space.call_function(w_decoder, w_obj, space.wrap(errors))
+        w_res = space.call_function(w_decoder, w_obj, space.newtext(errors))
         if (not space.isinstance_w(w_res, space.w_tuple) or space.len_w(w_res) 
!= 2):
             raise oefmt(space.w_TypeError,
                         "encoder must return a tuple (object, integer)")
-        return space.getitem(w_res, space.wrap(0))
+        return space.getitem(w_res, space.newint(0))
     else:
         assert 0, "XXX, what to do here?"
 
@@ -379,7 +379,7 @@
         state = space.fromcache(CodecState)
         func = getattr(runicode, rname)
         result = func(uni, len(uni), errors, state.encode_error_handler)
-        return space.newtuple([space.newbytes(result), space.wrap(len(uni))])
+        return space.newtuple([space.newbytes(result), space.newint(len(uni))])
     wrap_encoder.func_name = rname
     globals()[name] = wrap_encoder
 
@@ -396,7 +396,7 @@
         func = getattr(runicode, rname)
         result, consumed = func(string, len(string), errors,
                                 final, state.decode_error_handler)
-        return space.newtuple([space.wrap(result), space.wrap(consumed)])
+        return space.newtuple([space.newunicode(result), 
space.newint(consumed)])
     wrap_decoder.func_name = rname
     globals()[name] = wrap_decoder
 
@@ -444,7 +444,7 @@
     result = runicode.unicode_encode_utf_8(
         uni, len(uni), errors, state.encode_error_handler,
         allow_surrogates=True)
-    return space.newtuple([space.wrap(result), space.wrap(len(uni))])
+    return space.newtuple([space.newbytes(result), space.newint(len(uni))])
 
 @unwrap_spec(string='bufferstr', errors='str_or_None',
              w_final = WrappedDefault(False))
@@ -457,7 +457,7 @@
         string, len(string), errors,
         final, state.decode_error_handler,
         allow_surrogates=True)
-    return space.newtuple([space.wrap(result), space.wrap(consumed)])
+    return space.newtuple([space.newunicode(result), space.newint(consumed)])
 
 @unwrap_spec(data='bufferstr', errors='str_or_None', byteorder=int,
              w_final=WrappedDefault(False))
@@ -477,8 +477,8 @@
         consumed = 0
     res, consumed, byteorder = runicode.str_decode_utf_16_helper(
         data, len(data), errors, final, state.decode_error_handler, byteorder)
-    return space.newtuple([space.wrap(res), space.wrap(consumed),
-                           space.wrap(byteorder)])
+    return space.newtuple([space.newunicode(res), space.newint(consumed),
+                           space.newtext(byteorder)])
 
 @unwrap_spec(data='bufferstr', errors='str_or_None', byteorder=int,
              w_final=WrappedDefault(False))
@@ -496,8 +496,8 @@
         consumed = 0
     res, consumed, byteorder = runicode.str_decode_utf_32_helper(
         data, len(data), errors, final, state.decode_error_handler, byteorder)
-    return space.newtuple([space.wrap(res), space.wrap(consumed),
-                           space.wrap(byteorder)])
+    return space.newtuple([space.newunicode(res), space.newint(consumed),
+                           space.newtext(byteorder)])
 
 # ____________________________________________________________
 # Charmap
@@ -583,7 +583,7 @@
     if errors is None:
         errors = 'strict'
     if len(string) == 0:
-        return space.newtuple([space.wrap(u''), space.wrap(0)])
+        return space.newtuple([space.newunicode(u''), space.newint(0)])
 
     if space.is_none(w_mapping):
         mapping = None
@@ -595,7 +595,7 @@
     result, consumed = runicode.str_decode_charmap(
         string, len(string), errors,
         final, state.decode_error_handler, mapping)
-    return space.newtuple([space.wrap(result), space.wrap(consumed)])
+    return space.newtuple([space.newunicode(result), space.newint(consumed)])
 
 @unwrap_spec(uni=unicode, errors='str_or_None')
 def charmap_encode(space, uni, errors="strict", w_mapping=None):
@@ -610,7 +610,7 @@
     result = runicode.unicode_encode_charmap(
         uni, len(uni), errors,
         state.encode_error_handler, mapping)
-    return space.newtuple([space.newbytes(result), space.wrap(len(uni))])
+    return space.newtuple([space.newbytes(result), space.newint(len(uni))])
 
 
 @unwrap_spec(chars=unicode)
@@ -633,7 +633,7 @@
     def call(self, name):
         space = self.space
         try:
-            w_code = space.call_function(self.w_getcode, space.wrap(name))
+            w_code = space.call_function(self.w_getcode, space.newtext(name))
         except OperationError as e:
             if not e.match(space, space.w_KeyError):
                 raise
@@ -655,7 +655,7 @@
         final, state.decode_error_handler,
         unicode_name_handler)
 
-    return space.newtuple([space.wrap(result), space.wrap(consumed)])
+    return space.newtuple([space.newunicode(result), space.newint(consumed)])
 
 # ____________________________________________________________
 # Unicode-internal
@@ -671,14 +671,14 @@
     string = space.readbuf_w(w_string).as_str()
 
     if len(string) == 0:
-        return space.newtuple([space.wrap(u''), space.wrap(0)])
+        return space.newtuple([space.newunicode(u''), space.newint(0)])
 
     final = True
     state = space.fromcache(CodecState)
     result, consumed = runicode.str_decode_unicode_internal(
         string, len(string), errors,
         final, state.decode_error_handler)
-    return space.newtuple([space.wrap(result), space.wrap(consumed)])
+    return space.newtuple([space.newunicode(result), space.newint(consumed)])
 
 # ____________________________________________________________
 # support for the "string escape" codec
@@ -691,11 +691,11 @@
     start = 1
     end = len(result) - 1
     assert end >= 0
-    w_result = space.wrap(result[start:end])
-    return space.newtuple([w_result, space.wrap(len(data))])
+    w_result = space.newbytes(result[start:end])
+    return space.newtuple([w_result, space.newint(len(data))])
 
 @unwrap_spec(data=str, errors='str_or_None')
 def escape_decode(space, data, errors='strict'):
     from pypy.interpreter.pyparser.parsestring import PyString_DecodeEscape
     result = PyString_DecodeEscape(space, data, errors, None)
-    return space.newtuple([space.newbytes(result), space.wrap(len(data))])
+    return space.newtuple([space.newbytes(result), space.newint(len(data))])
diff --git a/pypy/module/_multibytecodec/interp_multibytecodec.py 
b/pypy/module/_multibytecodec/interp_multibytecodec.py
--- a/pypy/module/_multibytecodec/interp_multibytecodec.py
+++ b/pypy/module/_multibytecodec/interp_multibytecodec.py
@@ -24,8 +24,8 @@
             raise wrap_unicodedecodeerror(space, e, input, self.name)
         except RuntimeError:
             raise wrap_runtimeerror(space)
-        return space.newtuple([space.wrap(output),
-                               space.wrap(len(input))])
+        return space.newtuple([space.newunicode(output),
+                               space.newint(len(input))])
 
     @unwrap_spec(input=unicode, errors="str_or_None")
     def encode(self, space, input, errors=None):
@@ -41,7 +41,7 @@
         except RuntimeError:
             raise wrap_runtimeerror(space)
         return space.newtuple([space.newbytes(output),
-                               space.wrap(len(input))])
+                               space.newint(len(input))])
 
 
 MultibyteCodec.typedef = TypeDef(
@@ -58,28 +58,28 @@
         codec = c_codecs.getcodec(name)
     except KeyError:
         raise oefmt(space.w_LookupError, "no such codec is supported.")
-    return space.wrap(MultibyteCodec(name, codec))
+    return MultibyteCodec(name, codec)
 
 
 def wrap_unicodedecodeerror(space, e, input, name):
     return OperationError(
         space.w_UnicodeDecodeError,
         space.newtuple([
-            space.wrap(name),
+            space.newtext(name),
             space.newbytes(input),
-            space.wrap(e.start),
-            space.wrap(e.end),
-            space.wrap(e.reason)]))
+            space.newint(e.start),
+            space.newint(e.end),
+            space.newtext(e.reason)]))
 
 def wrap_unicodeencodeerror(space, e, input, name):
     raise OperationError(
         space.w_UnicodeEncodeError,
         space.newtuple([
-            space.wrap(name),
-            space.wrap(input),
-            space.wrap(e.start),
-            space.wrap(e.end),
-            space.wrap(e.reason)]))
+            space.newtext(name),
+            space.newunicode(input),
+            space.newint(e.start),
+            space.newint(e.end),
+            space.newtext(e.reason)]))
 
 def wrap_runtimeerror(space):
     raise oefmt(space.w_RuntimeError, "internal codec error")
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to