[pypy-commit] pypy py3k-memoryview: Define format/itemsize on each Buffer subclass.
Manuel Jacob
noreply at buildbot.pypy.org
Mon Mar 4 22:53:44 CET 2013
Author: Manuel Jacob
Branch: py3k-memoryview
Changeset: r62026:61e3a8d0d557
Date: 2013-03-04 22:53 +0100
http://bitbucket.org/pypy/pypy/changeset/61e3a8d0d557/
Log: Define format/itemsize on each Buffer subclass.
diff --git a/pypy/interpreter/buffer.py b/pypy/interpreter/buffer.py
--- a/pypy/interpreter/buffer.py
+++ b/pypy/interpreter/buffer.py
@@ -218,6 +218,8 @@
def __init__(self, value):
self.value = value
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return len(self.value)
@@ -246,6 +248,8 @@
def __init__(self, space, w_obj):
self.space = space
self.w_obj = w_obj
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
space = self.space
@@ -284,6 +288,8 @@
self.buffer = buffer
self.offset = offset
self.size = size
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
at_most = self.buffer.getlength() - self.offset
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
@@ -10,6 +10,8 @@
def __init__(self, len):
self.data = ['\x00'] * len
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return len(self.data)
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
@@ -14,6 +14,8 @@
def __init__(self, raw_cdata, size):
self.raw_cdata = raw_cdata
self.size = size
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return self.size
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
@@ -124,6 +124,8 @@
self.buf = buf
self.start = start
self.length = length
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return self.length
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
@@ -18,6 +18,8 @@
class BytesIOBuffer(RWBuffer):
def __init__(self, w_bytesio):
self.w_bytesio = w_bytesio
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return int(self.w_bytesio.string_size)
diff --git a/pypy/module/_rawffi/buffer.py b/pypy/module/_rawffi/buffer.py
--- a/pypy/module/_rawffi/buffer.py
+++ b/pypy/module/_rawffi/buffer.py
@@ -7,6 +7,8 @@
def __init__(self, datainstance):
self.datainstance = datainstance
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return self.datainstance.getrawsize()
diff --git a/pypy/module/cpyext/buffer.py b/pypy/module/cpyext/buffer.py
--- a/pypy/module/cpyext/buffer.py
+++ b/pypy/module/cpyext/buffer.py
@@ -20,6 +20,8 @@
self.c_buf = c_buf
self.c_len = c_len
self.w_obj = w_obj
+ self.format = 'B'
+ self.itemsize = 1
def destructor(self):
assert isinstance(self, CBufferMixin)
diff --git a/pypy/module/cpyext/slotdefs.py b/pypy/module/cpyext/slotdefs.py
--- a/pypy/module/cpyext/slotdefs.py
+++ b/pypy/module/cpyext/slotdefs.py
@@ -235,6 +235,8 @@
self.ptr = ptr
self.size = size
self.w_obj = w_obj # kept alive
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return self.size
diff --git a/pypy/module/micronumpy/arrayimpl/concrete.py b/pypy/module/micronumpy/arrayimpl/concrete.py
--- a/pypy/module/micronumpy/arrayimpl/concrete.py
+++ b/pypy/module/micronumpy/arrayimpl/concrete.py
@@ -411,6 +411,9 @@
class ArrayBuffer(RWBuffer):
def __init__(self, impl):
self.impl = impl
+ #XXX
+ self.format = 'B'
+ self.itemsize = 1
def getitem(self, item):
return raw_storage_getitem(lltype.Char, self.impl.storage, item)
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
@@ -662,6 +662,8 @@
class BytearrayBuffer(RWBuffer):
def __init__(self, data):
self.data = data
+ self.format = 'B'
+ self.itemsize = 1
def getlength(self):
return len(self.data)
More information about the pypy-commit
mailing list