Author: Ronan Lamy <[email protected]>
Branch: PyBuffer
Changeset: r91127:bf5037061e5f
Date: 2017-04-25 18:32 +0100
http://bitbucket.org/pypy/pypy/changeset/bf5037061e5f/

Log:    More buffer -> view renamings

diff --git a/pypy/interpreter/buffer.py b/pypy/interpreter/buffer.py
--- a/pypy/interpreter/buffer.py
+++ b/pypy/interpreter/buffer.py
@@ -187,7 +187,7 @@
         return space.newmemoryview(self)
 
 
-class SimpleBuffer(BufferView):
+class SimpleView(BufferView):
     _attrs_ = ['readonly', 'data']
     _immutable_ = True
 
@@ -250,7 +250,7 @@
 
     def new_slice(self, start, step, slicelength):
         if step == 1:
-            return SimpleBuffer(SubBuffer(self.data, start, slicelength))
+            return SimpleView(SubBuffer(self.data, start, slicelength))
         else:
             return BufferSlice(self, start, step, slicelength)
 
@@ -258,47 +258,48 @@
         idx = self.get_offset(space, 0, idx)
         self.data[idx] = space.byte_w(w_obj)
 
+
 class BufferSlice(BufferView):
     _immutable_ = True
-    _attrs_ = ['buf', 'readonly', 'shape', 'strides', 'start', 'step']
+    _attrs_ = ['parent', 'readonly', 'shape', 'strides', 'start', 'step']
 
-    def __init__(self, buf, start, step, length):
-        self.buf = buf
-        self.readonly = self.buf.readonly
-        self.strides = buf.getstrides()[:]
+    def __init__(self, parent, start, step, length):
+        self.parent = parent
+        self.readonly = self.parent.readonly
+        self.strides = parent.getstrides()[:]
         self.start = start
         self.step = step
         self.strides[0] *= step
-        self.shape = buf.getshape()[:]
+        self.shape = parent.getshape()[:]
         self.shape[0] = length
 
     def getlength(self):
         return self.shape[0] * self.getitemsize()
 
     def getbytes(self, start, size):
-        offset = self.start * self.buf.getstrides()[0]
-        return self.buf.getbytes(offset + start, size)
+        offset = self.start * self.parent.getstrides()[0]
+        return self.parent.getbytes(offset + start, size)
 
     def setbytes(self, start, string):
         if len(string) == 0:
             return        # otherwise, adding self.offset might make 'start'
                           # out of bounds
-        offset = self.start * self.buf.getstrides()[0]
-        self.buf.setbytes(offset + start, string)
+        offset = self.start * self.parent.getstrides()[0]
+        self.parent.setbytes(offset + start, string)
 
     def get_raw_address(self):
         from rpython.rtyper.lltypesystem import rffi
-        offset = self.start * self.buf.getstrides()[0]
-        return rffi.ptradd(self.buf.get_raw_address(), offset)
+        offset = self.start * self.parent.getstrides()[0]
+        return rffi.ptradd(self.parent.get_raw_address(), offset)
 
     def getformat(self):
-        return self.buf.getformat()
+        return self.parent.getformat()
 
     def getitemsize(self):
-        return self.buf.getitemsize()
+        return self.parent.getitemsize()
 
     def getndim(self):
-        return self.buf.getndim()
+        return self.parent.getndim()
 
     def getshape(self):
         return self.shape
@@ -310,12 +311,12 @@
         return self.start + self.step * idx
 
     def w_getitem(self, space, idx):
-        return self.buf.w_getitem(space, self.parent_index(idx))
+        return self.parent.w_getitem(space, self.parent_index(idx))
 
     def new_slice(self, start, step, slicelength):
         real_start = start + self.start
         real_step = self.step * step
-        return BufferSlice(self.buf, real_start, real_step, slicelength)
+        return BufferSlice(self.parent, real_start, real_step, slicelength)
 
     def setitem_w(self, space, idx, w_obj):
-        return self.buf.setitem_w(space, self.parent_index(idx), w_obj)
+        return self.parent.setitem_w(space, self.parent_index(idx), w_obj)
diff --git a/pypy/module/__pypy__/bytebuffer.py 
b/pypy/module/__pypy__/bytebuffer.py
--- a/pypy/module/__pypy__/bytebuffer.py
+++ b/pypy/module/__pypy__/bytebuffer.py
@@ -2,9 +2,9 @@
 # A convenient read-write buffer.  Located here for want of a better place.
 #
 
-from pypy.interpreter.buffer import SimpleBuffer, ByteBuffer
+from pypy.interpreter.buffer import SimpleView, ByteBuffer
 from pypy.interpreter.gateway import unwrap_spec
 
 @unwrap_spec(length=int)
 def bytebuffer(space, length):
-    return SimpleBuffer(ByteBuffer(length)).wrap(space)
+    return SimpleView(ByteBuffer(length)).wrap(space)
diff --git a/pypy/module/_cffi_backend/cbuffer.py 
b/pypy/module/_cffi_backend/cbuffer.py
--- a/pypy/module/_cffi_backend/cbuffer.py
+++ b/pypy/module/_cffi_backend/cbuffer.py
@@ -5,7 +5,7 @@
 from pypy.module._cffi_backend import cdataobj, ctypeptr, ctypearray
 from pypy.module._cffi_backend import ctypestruct
 
-from pypy.interpreter.buffer import SimpleBuffer, BinaryBuffer
+from pypy.interpreter.buffer import SimpleView, BinaryBuffer
 from rpython.rtyper.annlowlevel import llstr
 from rpython.rtyper.lltypesystem import rffi
 from rpython.rtyper.lltypesystem.rstr import copy_string_to_raw
@@ -47,7 +47,7 @@
         self.keepalive = keepalive
 
     def buffer_w(self, space, flags):
-        return SimpleBuffer(self.buffer)
+        return SimpleView(self.buffer)
 
     def descr_len(self, space):
         return space.newint(self.buffer.getlength())
diff --git a/pypy/module/_io/interp_bufferedio.py 
b/pypy/module/_io/interp_bufferedio.py
--- a/pypy/module/_io/interp_bufferedio.py
+++ b/pypy/module/_io/interp_bufferedio.py
@@ -7,7 +7,7 @@
 from pypy.interpreter.typedef import (
     TypeDef, GetSetProperty, generic_new_descr, interp_attrproperty_w)
 from pypy.interpreter.gateway import interp2app, unwrap_spec, WrappedDefault
-from pypy.interpreter.buffer import SimpleBuffer, BinaryBuffer, SubBuffer
+from pypy.interpreter.buffer import SimpleView, BinaryBuffer, SubBuffer
 from rpython.rlib.rgc import (
     nonmoving_raw_ptr_for_resizable_list, resizable_list_supporting_raw_ptr)
 from rpython.rlib.rstring import StringBuilder
@@ -584,7 +584,7 @@
         assert buffer is not None
         length = intmask(length)
         start = intmask(start)
-        w_view = SimpleBuffer(SubBuffer(buffer, start, length)).wrap(space)
+        w_view = SimpleView(SubBuffer(buffer, start, length)).wrap(space)
         while True:
             try:
                 w_size = space.call_method(self.w_raw, "readinto", w_view)
diff --git a/pypy/module/_io/interp_bytesio.py 
b/pypy/module/_io/interp_bytesio.py
--- a/pypy/module/_io/interp_bytesio.py
+++ b/pypy/module/_io/interp_bytesio.py
@@ -2,7 +2,7 @@
 from pypy.interpreter.typedef import (
     TypeDef, generic_new_descr, GetSetProperty)
 from pypy.interpreter.gateway import interp2app, unwrap_spec
-from pypy.interpreter.buffer import SimpleBuffer, BinaryBuffer
+from pypy.interpreter.buffer import SimpleView, BinaryBuffer
 from rpython.rlib.rStringIO import RStringIO
 from rpython.rlib.rarithmetic import r_longlong
 from rpython.rlib.objectmodel import import_from_mixin
@@ -124,7 +124,7 @@
 
     def getbuffer_w(self, space):
         self._check_closed(space)
-        return SimpleBuffer(BytesIOBuffer(self)).wrap(space)
+        return SimpleView(BytesIOBuffer(self)).wrap(space)
 
     def getvalue_w(self, space):
         self._check_closed(space)
diff --git a/pypy/module/_rawffi/interp_rawffi.py 
b/pypy/module/_rawffi/interp_rawffi.py
--- a/pypy/module/_rawffi/interp_rawffi.py
+++ b/pypy/module/_rawffi/interp_rawffi.py
@@ -1,6 +1,6 @@
 import sys
 from pypy.interpreter.baseobjspace import W_Root
-from pypy.interpreter.buffer import SimpleBuffer
+from pypy.interpreter.buffer import SimpleView
 from pypy.interpreter.error import OperationError, oefmt, wrap_oserror
 from pypy.interpreter.gateway import interp2app, unwrap_spec
 from pypy.interpreter.typedef import interp_attrproperty
@@ -380,7 +380,7 @@
         self._ll_buffer = self.ll_buffer
 
     def buffer_w(self, space, flags):
-        return SimpleBuffer(RawFFIBuffer(self))
+        return SimpleView(RawFFIBuffer(self))
 
     def getrawsize(self):
         raise NotImplementedError("abstract base class")
diff --git a/pypy/module/cpyext/memoryobject.py 
b/pypy/module/cpyext/memoryobject.py
--- a/pypy/module/cpyext/memoryobject.py
+++ b/pypy/module/cpyext/memoryobject.py
@@ -42,15 +42,15 @@
     assert isinstance(w_obj, W_MemoryView)
     py_obj = rffi.cast(PyMemoryViewObject, py_obj)
     view = py_obj.c_view
-    ndim = w_obj.buf.getndim()
+    ndim = w_obj.getndim()
     if ndim >= Py_MAX_NDIMS:
         # XXX warn?
         return
-    fill_Py_buffer(space, w_obj.buf, view)
+    fill_Py_buffer(space, w_obj.view, view)
     try:
-        view.c_buf = rffi.cast(rffi.VOIDP, w_obj.buf.get_raw_address())
+        view.c_buf = rffi.cast(rffi.VOIDP, w_obj.view.get_raw_address())
         view.c_obj = make_ref(space, w_userdata)
-        rffi.setintfield(view, 'c_readonly', w_obj.buf.readonly)
+        rffi.setintfield(view, 'c_readonly', w_obj.view.readonly)
     except ValueError:
         w_s = w_obj.descr_tobytes(space)
         view.c_obj = make_ref(space, w_s)
diff --git a/pypy/module/cpyext/test/test_memoryobject.py 
b/pypy/module/cpyext/test/test_memoryobject.py
--- a/pypy/module/cpyext/test/test_memoryobject.py
+++ b/pypy/module/cpyext/test/test_memoryobject.py
@@ -3,7 +3,7 @@
 from rpython.rtyper.lltypesystem import rffi
 from pypy.module.cpyext.test.test_api import BaseApiTest
 from pypy.module.cpyext.test.test_cpyext import AppTestCpythonExtensionBase
-from pypy.interpreter.buffer import SimpleBuffer, StringBuffer
+from pypy.interpreter.buffer import SimpleView, StringBuffer
 from pypy.module.cpyext.pyobject import from_ref
 from pypy.module.cpyext.memoryobject import PyMemoryViewObject
 
@@ -11,7 +11,7 @@
 
 class TestMemoryViewObject(BaseApiTest):
     def test_frombuffer(self, space, api):
-        w_view = SimpleBuffer(StringBuffer("hello")).wrap(space)
+        w_view = SimpleView(StringBuffer("hello")).wrap(space)
         c_memoryview = rffi.cast(
             PyMemoryViewObject, api.PyMemoryView_FromObject(w_view))
         w_memoryview = from_ref(space, c_memoryview)
diff --git a/pypy/module/mmap/interp_mmap.py b/pypy/module/mmap/interp_mmap.py
--- a/pypy/module/mmap/interp_mmap.py
+++ b/pypy/module/mmap/interp_mmap.py
@@ -2,7 +2,7 @@
 from pypy.interpreter.baseobjspace import W_Root
 from pypy.interpreter.typedef import TypeDef, GetSetProperty, 
make_weakref_descr
 from pypy.interpreter.gateway import interp2app, unwrap_spec, WrappedDefault
-from pypy.interpreter.buffer import BinaryBuffer, SimpleBuffer
+from pypy.interpreter.buffer import BinaryBuffer, SimpleView
 from rpython.rlib import rmmap, rarithmetic, objectmodel
 from rpython.rlib.rmmap import RValueError, RTypeError, RMMapError
 from rpython.rlib.rstring import StringBuilder
@@ -24,7 +24,7 @@
         write_required = bool(flags & space.BUF_WRITABLE)
         if write_required and readonly:
             raise oefmt(space.w_BufferError, "Object is not writable.")
-        return SimpleBuffer(MMapBuffer(self.space, self.mmap, readonly))
+        return SimpleView(MMapBuffer(self.space, self.mmap, readonly))
 
     def close(self):
         self.mmap.close()
diff --git a/pypy/objspace/fake/objspace.py b/pypy/objspace/fake/objspace.py
--- a/pypy/objspace/fake/objspace.py
+++ b/pypy/objspace/fake/objspace.py
@@ -11,7 +11,7 @@
 from pypy.tool.option import make_config
 from pypy.interpreter import argument, gateway
 from pypy.interpreter.baseobjspace import W_Root, ObjSpace, SpaceCache
-from pypy.interpreter.buffer import StringBuffer, SimpleBuffer
+from pypy.interpreter.buffer import StringBuffer, SimpleView
 from pypy.interpreter.typedef import TypeDef, GetSetProperty
 from pypy.objspace.std.sliceobject import W_SliceObject
 
@@ -42,7 +42,7 @@
         is_root(w_subtype)
 
     def buffer_w(self, space, flags):
-        return SimpleBuffer(StringBuffer("foobar"))
+        return SimpleView(StringBuffer("foobar"))
 
     def text_w(self, space):
         return NonConstant("foobar")
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
@@ -16,7 +16,7 @@
 from pypy.objspace.std.bytesobject import makebytesdata_w, newbytesdata_w
 from pypy.interpreter.gateway import WrappedDefault, interp2app, unwrap_spec
 from pypy.interpreter.typedef import TypeDef
-from pypy.interpreter.buffer import SimpleBuffer, BinaryBuffer
+from pypy.interpreter.buffer import SimpleView, BinaryBuffer
 from pypy.objspace.std.sliceobject import W_SliceObject, unwrap_start_stop
 from pypy.objspace.std.stringmethods import StringMethods, _get_buffer
 from pypy.objspace.std.stringmethods import _descr_getslice_slowpath
@@ -51,7 +51,7 @@
                            ''.join(self._data[self._offset:]))
 
     def buffer_w(self, space, flags):
-        return SimpleBuffer(BytearrayBuffer(self))
+        return SimpleView(BytearrayBuffer(self))
 
     def bytearray_list_of_chars_w(self, space):
         return self.getdata()
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
@@ -7,7 +7,7 @@
 from rpython.rlib.rstring import StringBuilder
 
 from pypy.interpreter.baseobjspace import W_Root
-from pypy.interpreter.buffer import SimpleBuffer, StringBuffer
+from pypy.interpreter.buffer import SimpleView, StringBuffer
 from pypy.interpreter.error import OperationError, oefmt
 from pypy.interpreter.gateway import (
     WrappedDefault, interp2app, interpindirect2app, unwrap_spec)
@@ -419,7 +419,7 @@
 
     def buffer_w(self, space, flags):
         space.check_buf_flags(flags, True)
-        return SimpleBuffer(StringBuffer(self._value))
+        return SimpleView(StringBuffer(self._value))
 
     def descr_getbuffer(self, space, w_flags):
         #from pypy.objspace.std.bufferobject import W_Buffer
diff --git a/pypy/objspace/std/memoryobject.py 
b/pypy/objspace/std/memoryobject.py
--- a/pypy/objspace/std/memoryobject.py
+++ b/pypy/objspace/std/memoryobject.py
@@ -5,12 +5,11 @@
 
 from rpython.rlib.objectmodel import compute_hash
 from pypy.interpreter.baseobjspace import W_Root
-from pypy.interpreter.buffer import BufferView, SimpleBuffer, SubBuffer
+from pypy.interpreter.buffer import BufferView, SubBuffer
 from pypy.interpreter.error import OperationError, oefmt
 from pypy.interpreter.gateway import interp2app
 from pypy.interpreter.typedef import TypeDef, GetSetProperty,  
make_weakref_descr
 from rpython.rlib.unroll import unrolling_iterable
-from rpython.rlib.objectmodel import always_inline
 
 MEMORYVIEW_MAX_DIM = 64
 MEMORYVIEW_SCALAR   = 0x0001
@@ -25,60 +24,60 @@
     an interp-level buffer.
     """
 
-    def __init__(self, buf):
-        assert isinstance(buf, BufferView)
-        self.buf = buf
+    def __init__(self, view):
+        assert isinstance(view, BufferView)
+        self.view = view
         self._hash = -1
         self.flags = 0
         self._init_flags()
 
     def getndim(self):
-        return self.buf.getndim()
+        return self.view.getndim()
 
     def getshape(self):
-        return self.buf.getshape()
+        return self.view.getshape()
 
     def getstrides(self):
-        return self.buf.getstrides()
+        return self.view.getstrides()
 
     def getitemsize(self):
-        return self.buf.getitemsize()
+        return self.view.getitemsize()
 
     def getformat(self):
-        return self.buf.getformat()
+        return self.view.getformat()
 
     def buffer_w(self, space, flags):
         self._check_released(space)
-        space.check_buf_flags(flags, self.buf.readonly)
-        return self.buf
+        space.check_buf_flags(flags, self.view.readonly)
+        return self.view
 
     @staticmethod
     def descr_new_memoryview(space, w_subtype, w_object):
         if isinstance(w_object, W_MemoryView):
             w_object._check_released(space)
             return W_MemoryView.copy(w_object)
-        buf = space.buffer_w(w_object, space.BUF_FULL_RO)
-        return buf.wrap(space)
+        view = space.buffer_w(w_object, space.BUF_FULL_RO)
+        return view.wrap(space)
 
     def _make_descr__cmp(name):
         def descr__cmp(self, space, w_other):
-            if self.buf is None:
+            if self.view is None:
                 return space.newbool(getattr(operator, name)(self, w_other))
             if isinstance(w_other, W_MemoryView):
                 # xxx not the most efficient implementation
-                str1 = self.buf.as_str()
-                str2 = w_other.buf.as_str()
+                str1 = self.view.as_str()
+                str2 = w_other.view.as_str()
                 return space.newbool(getattr(operator, name)(str1, str2))
 
             try:
-                buf = space.buffer_w(w_other, space.BUF_CONTIG_RO)
+                view = space.buffer_w(w_other, space.BUF_CONTIG_RO)
             except OperationError as e:
                 if not e.match(space, space.w_TypeError):
                     raise
                 return space.w_NotImplemented
             else:
-                str1 = self.buf.as_str()
-                str2 = buf.as_str()
+                str1 = self.view.as_str()
+                str2 = view.as_str()
                 return space.newbool(getattr(operator, name)(str1, str2))
         descr__cmp.func_name = name
         return descr__cmp
@@ -87,21 +86,21 @@
     descr_ne = _make_descr__cmp('ne')
 
     def getlength(self):
-        return self.buf.getlength()
+        return self.view.getlength()
 
     def descr_tobytes(self, space):
         self._check_released(space)
-        return space.newbytes(self.buf.as_str())
+        return space.newbytes(self.view.as_str())
 
     def descr_tolist(self, space):
         self._check_released(space)
-        return self.buf.w_tolist(space)
+        return self.view.w_tolist(space)
 
     def _start_from_tuple(self, space, w_tuple):
         from pypy.objspace.std.tupleobject import W_AbstractTupleObject
         start = 0
 
-        view = self.buf
+        view = self.view
         length = space.len_w(w_tuple)
         dim = view.getndim()
         dim = 0
@@ -109,15 +108,12 @@
         while dim < length:
             w_obj = w_tuple.getitem(space, dim)
             index = space.getindex_w(w_obj, space.w_IndexError)
-            start += self.buf.get_offset(space, dim, index)
+            start += self.view.get_offset(space, dim, index)
             dim += 1
         return start
 
     def _getitem_tuple_indexed(self, space, w_index):
-        view = self.buf
-
-        fmt = view.getformat() # TODO adjust format?
-
+        view = self.view
         length = space.len_w(w_index)
         ndim = view.getndim()
         if length < ndim:
@@ -151,16 +147,15 @@
         start, stop, step, slicelength = self._decode_index(space, w_index, 
is_slice)
         # ^^^ for a non-slice index, this returns (index, 0, 0, 1)
         if step == 0:  # index only
-            itemsize = self.getitemsize()
             dim = self.getndim()
             if dim == 0:
                 raise oefmt(space.w_TypeError, "invalid indexing of 0-dim 
memory")
             elif dim == 1:
-                return self.buf.w_getitem(space, start)
+                return self.view.w_getitem(space, start)
             else:
                 raise oefmt(space.w_NotImplementedError, "multi-dimensional 
sub-views are not implemented")
         elif is_slice:
-            return self.buf.new_slice(start, step, slicelength).wrap(space)
+            return self.view.new_slice(start, step, slicelength).wrap(space)
         # multi index is handled at the top of this function
         else:
             raise TypeError("memoryview: invalid slice key")
@@ -177,14 +172,14 @@
         return length * self.getitemsize()
 
     @staticmethod
-    def copy(view):
+    def copy(w_view):
         # TODO suboffsets
-        buf = view.buf
-        return W_MemoryView(buf)
+        view = w_view.view
+        return W_MemoryView(view)
 
     def descr_setitem(self, space, w_index, w_obj):
         self._check_released(space)
-        if self.buf.readonly:
+        if self.view.readonly:
             raise oefmt(space.w_TypeError, "cannot modify read-only memory")
         if space.isinstance_w(w_index, space.w_tuple):
             raise oefmt(space.w_NotImplementedError, "")
@@ -193,13 +188,13 @@
         start, stop, step, slicelength = self._decode_index(space, w_index, 
is_slice)
         itemsize = self.getitemsize()
         if step == 0:  # index only
-            self.buf.setitem_w(space, start, w_obj)
+            self.view.setitem_w(space, start, w_obj)
         elif step == 1:
             value = space.buffer_w(w_obj, space.BUF_CONTIG_RO)
             if value.getlength() != slicelength * itemsize:
                 raise oefmt(space.w_ValueError,
                             "cannot modify size of memoryview object")
-            self.buf.setbytes(start * itemsize, value.as_str())
+            self.view.setbytes(start * itemsize, value.as_str())
         else:
             if self.getndim() != 1:
                 raise oefmt(space.w_NotImplementedError,
@@ -213,7 +208,7 @@
             dst_strides = self.getstrides()
             dim = 0
             dst = SubBuffer(
-                self.buf.as_binary_rw(),
+                self.view.as_binary_rw(),
                 start * itemsize, slicelength * itemsize)
             src_stride0 = dst_strides[dim]
 
@@ -255,7 +250,7 @@
 
     def w_is_readonly(self, space):
         self._check_released(space)
-        return space.newbool(bool(self.buf.readonly))
+        return space.newbool(bool(self.view.readonly))
 
     def w_get_shape(self, space):
         self._check_released(space)
@@ -271,7 +266,7 @@
         return space.newtuple([])
 
     def descr_repr(self, space):
-        if self.buf is None:
+        if self.view is None:
             return self.getrepr(space, u'released memory')
         else:
             return self.getrepr(space, u'memory')
@@ -279,17 +274,17 @@
     def descr_hash(self, space):
         if self._hash == -1:
             self._check_released(space)
-            if not self.buf.readonly:
+            if not self.view.readonly:
                 raise oefmt(space.w_ValueError,
                             "cannot hash writable memoryview object")
-            self._hash = compute_hash(self.buf.as_str())
+            self._hash = compute_hash(self.view.as_str())
         return space.newint(self._hash)
 
     def descr_release(self, space):
-        self.buf = None
+        self.view = None
 
     def _check_released(self, space):
-        if self.buf is None:
+        if self.view is None:
             raise oefmt(space.w_ValueError,
                         "operation forbidden on released memoryview object")
 
@@ -298,17 +293,18 @@
         return self
 
     def descr_exit(self, space, __args__):
-        self.buf = None
+        self.view = None
         return space.w_None
 
     def descr_pypy_raw_address(self, space):
         from rpython.rtyper.lltypesystem import lltype, rffi
         try:
-            ptr = self.buf.get_raw_address()
+            ptr = self.view.get_raw_address()
         except ValueError:
-            # report the error using the RPython-level internal repr of 
self.buf
+            # report the error using the RPython-level internal repr of
+            # self.view
             msg = ("cannot find the underlying address of buffer that "
-                   "is internally %r" % (self.buf,))
+                   "is internally %r" % (self.view,))
             raise OperationError(space.w_ValueError, space.newtext(msg))
         return space.newint(rffi.cast(lltype.Signed, ptr))
 
@@ -343,9 +339,9 @@
 
     def _zero_in_shape(self):
         # this method could be moved to the class BufferView
-        buf = self.buf
-        shape = buf.getshape()
-        for i in range(buf.getndim()):
+        view = self.view
+        shape = view.getshape()
+        for i in range(view.getndim()):
             if shape[i] == 0:
                 return True
         return False
@@ -358,7 +354,7 @@
                         "memoryview: format argument must be a string")
 
         fmt = space.text_w(w_format)
-        buf = self.buf
+        view = self.view
         ndim = 1
 
         if not memory_view_c_contiguous(space, self.flags):
@@ -366,7 +362,7 @@
                         "memoryview: casts are restricted"
                         " to C-contiguous views")
 
-        if (w_shape or buf.getndim() != 1) and self._zero_in_shape():
+        if (w_shape or view.getndim() != 1) and self._zero_in_shape():
             raise oefmt(space.w_TypeError,
                         "memoryview: cannot casts view with"
                         " zeros in shape or strides")
@@ -379,11 +375,11 @@
                 raise oefmt(space.w_ValueError, \
                         "memoryview: number of dimensions must not exceed %d",
                         ndim)
-            if ndim > 1 and buf.getndim() != 1:
+            if ndim > 1 and view.getndim() != 1:
                 raise oefmt(space.w_TypeError,
                             "memoryview: cast must be 1D -> ND or ND -> 1D")
 
-        newview = self._cast_to_1D(space, buf, fmt)
+        newview = self._cast_to_1D(space, view, fmt)
         if w_shape:
             fview = space.fixedview(w_shape)
             shape = [space.int_w(w_obj) for w_obj in fview]
@@ -391,7 +387,6 @@
         return newview.wrap(space)
 
     def _init_flags(self):
-        buf = self.buf
         ndim = self.getndim()
         flags = 0
         if ndim == 0:
@@ -419,21 +414,21 @@
 
         self.flags = flags
 
-    def _cast_to_1D(self, space, buf, fmt):
+    def _cast_to_1D(self, space, view, fmt):
         itemsize = self.get_native_fmtchar(fmt)
         if itemsize < 0:
-            raise oefmt(space.w_ValueError, "memoryview: destination" \
-                    " format must be a native single character format 
prefixed" \
+            raise oefmt(space.w_ValueError, "memoryview: destination"
+                    " format must be a native single character format prefixed"
                     " with an optional '@'")
 
-        origfmt = buf.getformat()
+        origfmt = view.getformat()
         if self.get_native_fmtchar(origfmt) < 0 or \
            (not is_byte_format(fmt) and not is_byte_format(origfmt)):
             raise oefmt(space.w_TypeError,
-                    "memoryview: cannot cast between" \
+                    "memoryview: cannot cast between"
                     " two non-byte formats")
 
-        if buf.getlength() % itemsize != 0:
+        if view.getlength() % itemsize != 0:
             raise oefmt(space.w_TypeError,
                     "memoryview: length is not a multiple of itemsize")
 
@@ -441,7 +436,7 @@
         if not newfmt:
             raise oefmt(space.w_RuntimeError,
                     "memoryview: internal error")
-        return BufferView1D(buf, newfmt, itemsize)
+        return BufferView1D(view, newfmt, itemsize)
 
     def get_native_fmtstr(self, fmt):
         lenfmt = len(fmt)
@@ -449,7 +444,7 @@
         if lenfmt == 0:
             return None
         elif lenfmt == 1:
-            format = fmt[0] # fine!
+            format = fmt[0]  # fine!
         elif lenfmt == 2:
             if fmt[0] == '@':
                 nat = True
@@ -459,8 +454,8 @@
         else:
             return None
 
-        chars = ['c','b','B','h','H','i','I','l','L','q',
-                 'Q','n','N','f','d','?','P']
+        chars = ['c', 'b', 'B', 'h', 'H', 'i', 'I', 'l', 'L', 'q',
+                 'Q', 'n', 'N', 'f', 'd', '?', 'P']
         for c in unrolling_iterable(chars):
             if c == format:
                 if nat:
@@ -470,16 +465,16 @@
 
         return None
 
-    def _cast_to_ND(self, space, buf, shape, ndim):
-        length = itemsize = buf.getitemsize()
+    def _cast_to_ND(self, space, view, shape, ndim):
+        length = itemsize = view.getitemsize()
         for i in range(ndim):
             length *= shape[i]
-        if length != buf.getlength():
+        if length != view.getlength():
             raise oefmt(space.w_TypeError,
                         "memoryview: product(shape) * itemsize != buffer size")
 
         strides = self._strides_from_shape(shape, itemsize)
-        return BufferViewND(buf, ndim, shape, strides)
+        return BufferViewND(view, ndim, shape, strides)
 
     @staticmethod
     def _strides_from_shape(shape, itemsize):
@@ -497,7 +492,7 @@
     def descr_hex(self, space):
         from pypy.objspace.std.bytearrayobject import _array_to_hexstring
         self._check_released(space)
-        return _array_to_hexstring(space, self.buf.as_binary(), 0, 1, 
self.getlength())
+        return _array_to_hexstring(space, self.view.as_binary(), 0, 1, 
self.getlength())
 
 def is_byte_format(char):
     return char == 'b' or char == 'B' or char == 'c'
@@ -580,7 +575,7 @@
     elif (fort == 'F'):
         return _IsFortranContiguous(ndim, shape, strides, itemsize)
     elif (fort == 'A'):
-        return (_IsCContiguous(ndim, shape, strides, itemsize) or \
+        return (_IsCContiguous(ndim, shape, strides, itemsize) or
                 _IsFortranContiguous(ndim, shape, strides, itemsize))
     return 0
 
diff --git a/pypy/objspace/std/strbufobject.py 
b/pypy/objspace/std/strbufobject.py
--- a/pypy/objspace/std/strbufobject.py
+++ b/pypy/objspace/std/strbufobject.py
@@ -4,7 +4,7 @@
 
 from pypy.objspace.std.bytesobject import W_AbstractBytesObject, W_BytesObject
 from pypy.interpreter.gateway import interp2app, unwrap_spec
-from pypy.interpreter.buffer import SimpleBuffer, StringBuffer
+from pypy.interpreter.buffer import SimpleView, StringBuffer
 from pypy.interpreter.error import OperationError
 from rpython.rlib.rstring import StringBuilder
 
@@ -38,7 +38,7 @@
         return self.force()
 
     def buffer_w(self, space, flags):
-        return SimpleBuffer(StringBuffer(self.force()))
+        return SimpleView(StringBuffer(self.force()))
 
     def descr_len(self, space):
         return space.newint(self.length)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to