Author: Brian Kearns <[email protected]>
Branch: 
Changeset: r67654:e81d9905b8c7
Date: 2013-10-28 13:22 -0400
http://bitbucket.org/pypy/pypy/changeset/e81d9905b8c7/

Log:    provide itemsize attribute for numpy scalars

diff --git a/pypy/module/micronumpy/interp_boxes.py 
b/pypy/module/micronumpy/interp_boxes.py
--- a/pypy/module/micronumpy/interp_boxes.py
+++ b/pypy/module/micronumpy/interp_boxes.py
@@ -260,6 +260,9 @@
         raise OperationError(space.w_NotImplementedError, space.wrap(
             "view not implelemnted yet"))
 
+    def descr_get_itemsize(self, space):
+        return self.get_dtype(space).descr_get_itemsize(space)
+
 class W_BoolBox(W_GenericBox, PrimitiveBox):
     descr__new__, _get_dtype, descr_reduce = new_dtype_getter("bool")
 
@@ -508,6 +511,7 @@
     round = interp2app(W_GenericBox.descr_round),
     conjugate = interp2app(W_GenericBox.descr_conjugate),
     view = interp2app(W_GenericBox.descr_view),
+    itemsize = GetSetProperty(W_GenericBox.descr_get_itemsize),
 )
 
 W_BoolBox.typedef = TypeDef("bool_", W_GenericBox.typedef,
@@ -630,7 +634,7 @@
     __module__ = "numpypy",
     __new__ = interp2app(W_Complex64Box.descr__new__.im_func),
     __reduce__ = interp2app(W_Complex64Box.descr_reduce),
-    real = GetSetProperty(W_ComplexFloatingBox .descr_get_real),
+    real = GetSetProperty(W_ComplexFloatingBox.descr_get_real),
     imag = GetSetProperty(W_ComplexFloatingBox.descr_get_imag),
 )
 
diff --git a/pypy/module/micronumpy/test/test_scalar.py 
b/pypy/module/micronumpy/test/test_scalar.py
--- a/pypy/module/micronumpy/test/test_scalar.py
+++ b/pypy/module/micronumpy/test/test_scalar.py
@@ -37,3 +37,6 @@
         exc = raises(AttributeError, 'b.round()')
         assert exc.value[0] == "'bool' object has no attribute 'round'"
 
+    def test_itemsize(self):
+        import numpypy as np
+        assert np.int64(0).itemsize == 8
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to