[pypy-commit] pypy space-newtext: _collections, _file, _sha, bz2
cfbolz
pypy.commits at gmail.com
Wed Nov 2 09:03:35 EDT 2016
Author: Carl Friedrich Bolz <cfbolz at gmx.de>
Branch: space-newtext
Changeset: r88067:7ece5e8fb99c
Date: 2016-11-02 12:04 +0100
http://bitbucket.org/pypy/pypy/changeset/7ece5e8fb99c/
Log: _collections, _file, _sha, bz2
diff --git a/pypy/module/__builtin__/operation.py b/pypy/module/__builtin__/operation.py
--- a/pypy/module/__builtin__/operation.py
+++ b/pypy/module/__builtin__/operation.py
@@ -20,7 +20,7 @@
char = __builtin__.chr(space.int_w(w_ascii))
except ValueError: # chr(out-of-range)
raise oefmt(space.w_ValueError, "character code not in range(256)")
- return space.wrap(char)
+ return space.wrap(char) # YYY
@unwrap_spec(code=int)
def unichr(space, code):
diff --git a/pypy/module/_collections/__init__.py b/pypy/module/_collections/__init__.py
--- a/pypy/module/_collections/__init__.py
+++ b/pypy/module/_collections/__init__.py
@@ -21,5 +21,5 @@
# been used... otherwise, some code is not happy about seeing
# this code object twice
space = self.space
- space.getattr(self, space.wrap('defaultdict')) # force importing
- space.delattr(self, space.wrap('__missing__'))
+ space.getattr(self, space.newtext('defaultdict')) # force importing
+ space.delattr(self, space.newtext('__missing__'))
diff --git a/pypy/module/_collections/interp_defaultdict.py b/pypy/module/_collections/interp_defaultdict.py
--- a/pypy/module/_collections/interp_defaultdict.py
+++ b/pypy/module/_collections/interp_defaultdict.py
@@ -4,7 +4,7 @@
# An interp-level version of this method. This is mostly only
# useful because it can be executed atomically in the presence of
# threads.
- w_default_factory = space.getattr(w_self, space.wrap('default_factory'))
+ w_default_factory = space.getattr(w_self, space.newtext('default_factory'))
if space.is_w(w_default_factory, space.w_None):
raise OperationError(space.w_KeyError, space.newtuple([w_key]))
w_value = space.call_function(w_default_factory)
diff --git a/pypy/module/_collections/interp_deque.py b/pypy/module/_collections/interp_deque.py
--- a/pypy/module/_collections/interp_deque.py
+++ b/pypy/module/_collections/interp_deque.py
@@ -156,13 +156,13 @@
if index >= BLOCKLEN:
block = block.rightlink
index = 0
- return space.wrap(result)
+ return space.newint(result)
def extend(self, w_iterable):
"Extend the right side of the deque with elements from the iterable"
# Handle case where id(deque) == id(iterable)
space = self.space
- if space.is_w(space.wrap(self), w_iterable):
+ if space.is_w(self, w_iterable):
w_iterable = space.call_function(space.w_list, w_iterable)
#
w_iter = space.iter(w_iterable)
@@ -177,13 +177,13 @@
def iadd(self, w_iterable):
self.extend(w_iterable)
- return self.space.wrap(self)
+ return self
def extendleft(self, w_iterable):
"Extend the left side of the deque with elements from the iterable"
# Handle case where id(deque) == id(iterable)
space = self.space
- if space.is_w(space.wrap(self), w_iterable):
+ if space.is_w(self, w_iterable):
w_iterable = space.call_function(space.w_list, w_iterable)
#
space = self.space
@@ -307,7 +307,7 @@
return W_DequeRevIter(self)
def length(self):
- return self.space.wrap(self.len)
+ return self.space.newint(self.len)
def repr(self):
space = self.space
@@ -315,14 +315,14 @@
w_currently_in_repr = ec._py_repr
if w_currently_in_repr is None:
w_currently_in_repr = ec._py_repr = space.newdict()
- return dequerepr(space, w_currently_in_repr, space.wrap(self))
+ return dequerepr(space, w_currently_in_repr, self)
@specialize.arg(2)
def compare(self, w_other, op):
space = self.space
if not isinstance(w_other, W_Deque):
return space.w_NotImplemented
- return space.compare_by_iteration(space.wrap(self), w_other, op)
+ return space.compare_by_iteration(self, w_other, op)
def lt(self, w_other):
return self.compare(w_other, 'lt')
@@ -394,13 +394,13 @@
return space.call_function(space.type(self), self)
else:
return space.call_function(space.type(self), self,
- space.wrap(self.maxlen))
+ space.newint(self.maxlen))
def reduce(self):
"Return state information for pickling."
space = self.space
w_type = space.type(self)
- w_dict = space.findattr(self, space.wrap('__dict__'))
+ w_dict = space.findattr(self, space.newtext('__dict__'))
w_list = space.call_function(space.w_list, self)
if w_dict is None:
if self.maxlen == sys.maxint:
@@ -408,12 +408,12 @@
w_type, space.newtuple([w_list])]
else:
result = [
- w_type, space.newtuple([w_list, space.wrap(self.maxlen)])]
+ w_type, space.newtuple([w_list, space.newint(self.maxlen)])]
else:
if self.maxlen == sys.maxint:
w_len = space.w_None
else:
- w_len = space.wrap(self.maxlen)
+ w_len = space.newint(self.maxlen)
result = [
w_type, space.newtuple([w_list, w_len]), w_dict]
return space.newtuple(result)
@@ -422,7 +422,7 @@
if self.maxlen == sys.maxint:
return self.space.w_None
else:
- return self.space.wrap(self.maxlen)
+ return self.space.newint(self.maxlen)
app = gateway.applevel("""
@@ -506,10 +506,10 @@
check_nonneg(self.index)
def iter(self):
- return self.space.wrap(self)
+ return self
def length(self):
- return self.space.wrap(self.counter)
+ return self.space.newint(self.counter)
def next(self):
space = self.space
@@ -548,10 +548,10 @@
check_nonneg(self.index)
def iter(self):
- return self.space.wrap(self)
+ return self
def length(self):
- return self.space.wrap(self.counter)
+ return self.space.newint(self.counter)
def next(self):
space = self.space
diff --git a/pypy/module/_file/interp_stream.py b/pypy/module/_file/interp_stream.py
--- a/pypy/module/_file/interp_stream.py
+++ b/pypy/module/_file/interp_stream.py
@@ -114,13 +114,13 @@
result = self.stream.%(name)s(%(args)s)
except streamio.StreamError, e:
raise OperationError(space.w_ValueError,
- space.wrap(e.message))
+ space.newtext(e.message))
except OSError, e:
raise wrap_oserror_as_ioerror(space, e)
finally:
if acquired:
self.release_lock()
- return space.wrap(result)
+ return space.wrap(result) # YYY
%(name)s.unwrap_spec = [W_Stream, ObjSpace] + argtypes
""" % locals()).compile() in globals()
diff --git a/pypy/module/_file/readinto.py b/pypy/module/_file/readinto.py
--- a/pypy/module/_file/readinto.py
+++ b/pypy/module/_file/readinto.py
@@ -79,4 +79,4 @@
raise OSError(err, "read error")
keepalive_until_here(rwbuffer)
- return self.space.wrap(target_pos)
+ return self.space.newint(target_pos)
diff --git a/pypy/module/_pypyjson/interp_decoder.py b/pypy/module/_pypyjson/interp_decoder.py
--- a/pypy/module/_pypyjson/interp_decoder.py
+++ b/pypy/module/_pypyjson/interp_decoder.py
@@ -142,14 +142,14 @@
self.ll_chars[i+5] == 't' and
self.ll_chars[i+6] == 'y'):
self.pos = i+7
- return self.space.wrap(rfloat.INFINITY * sign)
+ return self.space.newfloat(rfloat.INFINITY * sign)
self._raise("Error when decoding Infinity at char %d", i)
def decode_nan(self, i):
if (self.ll_chars[i] == 'a' and
self.ll_chars[i+1] == 'N'):
self.pos = i+2
- return self.space.wrap(rfloat.NAN)
+ return self.space.newfloat(rfloat.NAN)
self._raise("Error when decoding NaN at char %d", i)
def decode_numeric(self, i):
@@ -168,7 +168,7 @@
return self.decode_int_slow(start)
self.pos = i
- return self.space.wrap(intval)
+ return self.space.newint(intval)
def decode_float(self, i):
from rpython.rlib import rdtoa
@@ -176,7 +176,7 @@
floatval = rdtoa.dg_strtod(start, self.end_ptr)
diff = rffi.cast(rffi.LONG, self.end_ptr[0]) - rffi.cast(rffi.LONG, start)
self.pos = i + diff
- return self.space.wrap(floatval)
+ return self.space.newfloat(floatval)
def decode_int_slow(self, i):
start = i
@@ -186,7 +186,7 @@
i += 1
s = self.getslice(start, i)
self.pos = i
- return self.space.call_function(self.space.w_int, self.space.wrap(s))
+ return self.space.call_function(self.space.w_int, self.space.newtext(s))
@always_inline
def parse_integer(self, i):
@@ -306,7 +306,7 @@
content_unicode = strslice2unicode_latin1(self.s, start, i-1)
self.last_type = TYPE_STRING
self.pos = i
- return self.space.wrap(content_unicode)
+ return self.space.newunicode(content_unicode)
elif ch == '\\':
content_so_far = self.getslice(start, i-1)
self.pos = i-1
@@ -327,7 +327,7 @@
content_unicode = unicodehelper.decode_utf8(self.space, content_utf8)
self.last_type = TYPE_STRING
self.pos = i
- return self.space.wrap(content_unicode)
+ return self.space.newunicode(content_unicode)
elif ch == '\\':
i = self.decode_escape_sequence(i, builder)
elif ch == '\0':
diff --git a/pypy/module/_sha/interp_sha.py b/pypy/module/_sha/interp_sha.py
--- a/pypy/module/_sha/interp_sha.py
+++ b/pypy/module/_sha/interp_sha.py
@@ -20,15 +20,15 @@
self.update(string)
def digest_w(self):
- return self.space.wrap(self.digest())
+ return self.space.newbytes(self.digest())
def hexdigest_w(self):
- return self.space.wrap(self.hexdigest())
+ return self.space.newtext(self.hexdigest())
def copy_w(self):
clone = W_SHA(self.space)
clone._copyfrom(self)
- return self.space.wrap(clone)
+ return clone
@unwrap_spec(initialdata='bufferstr')
diff --git a/pypy/module/bz2/interp_bz2.py b/pypy/module/bz2/interp_bz2.py
--- a/pypy/module/bz2/interp_bz2.py
+++ b/pypy/module/bz2/interp_bz2.py
@@ -277,9 +277,6 @@
head = "closed"
else:
head = "open"
- w_name = self.w_name
- if w_name is None:
- w_name = self.space.wrap('?')
info = "%s bz2.BZ2File %s, mode '%s'" % (head, self.getdisplayname(),
self.mode)
return self.getrepr(self.space, info)
@@ -287,7 +284,7 @@
def descr_bz2file__new__(space, w_subtype, __args__):
bz2file = space.allocate_instance(W_BZ2File, w_subtype)
W_BZ2File.__init__(bz2file, space)
- return space.wrap(bz2file)
+ return bz2file
same_attributes_as_in_file = list(W_File._exposed_method_names)
same_attributes_as_in_file.remove('__init__')
@@ -504,9 +501,8 @@
@unwrap_spec(compresslevel=int)
def descr_compressor__new__(space, w_subtype, compresslevel=9):
x = space.allocate_instance(W_BZ2Compressor, w_subtype)
- x = space.interp_w(W_BZ2Compressor, x)
W_BZ2Compressor.__init__(x, space, compresslevel)
- return space.wrap(x)
+ return x
class W_BZ2Compressor(W_Root):
"""BZ2Compressor([compresslevel=9]) -> compressor object
@@ -614,9 +610,8 @@
def descr_decompressor__new__(space, w_subtype):
x = space.allocate_instance(W_BZ2Decompressor, w_subtype)
- x = space.interp_w(W_BZ2Decompressor, x)
W_BZ2Decompressor.__init__(x, space)
- return space.wrap(x)
+ return x
class W_BZ2Decompressor(W_Root):
@@ -750,7 +745,7 @@
res = out.make_result_string()
BZ2_bzCompressEnd(bzs)
- return space.wrap(res)
+ return space.newbytes(res)
@unwrap_spec(data='bufferstr')
def decompress(space, data):
@@ -761,7 +756,7 @@
in_bufsize = len(data)
if in_bufsize == 0:
- return space.wrap("")
+ return space.newbytes("")
with lltype.scoped_alloc(bz_stream.TO, zero=True) as bzs:
with rffi.scoped_nonmovingbuffer(data) as in_buf:
@@ -790,4 +785,4 @@
res = out.make_result_string()
BZ2_bzDecompressEnd(bzs)
- return space.wrap(res)
+ return space.newbytes(res)
More information about the pypy-commit
mailing list