Author: mattip <[email protected]>
Branch:
Changeset: r79816:d9a0ad02e94c
Date: 2015-09-25 09:21 +0300
http://bitbucket.org/pypy/pypy/changeset/d9a0ad02e94c/
Log: export, test ndarray.flags.num
diff --git a/pypy/module/micronumpy/boxes.py b/pypy/module/micronumpy/boxes.py
--- a/pypy/module/micronumpy/boxes.py
+++ b/pypy/module/micronumpy/boxes.py
@@ -147,7 +147,7 @@
def get_flags(self):
return (NPY.ARRAY_C_CONTIGUOUS | NPY.ARRAY_F_CONTIGUOUS |
- NPY.ARRAY_WRITEABLE | NPY.ARRAY_OWNDATA)
+ NPY.ARRAY_ALIGNED | NPY.ARRAY_OWNDATA)
def item(self, space):
return self.get_dtype(space).itemtype.to_builtin_type(space, self)
diff --git a/pypy/module/micronumpy/flagsobj.py
b/pypy/module/micronumpy/flagsobj.py
--- a/pypy/module/micronumpy/flagsobj.py
+++ b/pypy/module/micronumpy/flagsobj.py
@@ -57,6 +57,9 @@
self.flags & NPY.ARRAY_F_CONTIGUOUS or
self.flags & NPY.ARRAY_C_CONTIGUOUS ))
+ def descr_get_num(self, space):
+ return space.wrap(self.flags)
+
def descr_getitem(self, space, w_item):
key = space.str_w(w_item)
if key == "C" or key == "CONTIGUOUS" or key == "C_CONTIGUOUS":
@@ -122,4 +125,5 @@
aligned = GetSetProperty(W_FlagsObject.descr_get_aligned),
fnc = GetSetProperty(W_FlagsObject.descr_get_fnc),
forc = GetSetProperty(W_FlagsObject.descr_get_forc),
+ num = GetSetProperty(W_FlagsObject.descr_get_num),
)
diff --git a/pypy/module/micronumpy/test/test_flagsobj.py
b/pypy/module/micronumpy/test/test_flagsobj.py
--- a/pypy/module/micronumpy/test/test_flagsobj.py
+++ b/pypy/module/micronumpy/test/test_flagsobj.py
@@ -30,6 +30,7 @@
assert a.flags.forc == True
assert a.flags['FNC'] == False
assert a.flags['FORC'] == True
+ assert a.flags.num == 1287
raises(KeyError, "a.flags['blah']")
raises(KeyError, "a.flags['C_CONTIGUOUS'] = False")
raises((TypeError, AttributeError), "a.flags.c_contiguous = False")
@@ -38,6 +39,7 @@
import numpy as np
a = np.int32(2)
assert a.flags.c_contiguous == True
+ assert a.flags.num == 263
def test_compare(self):
import numpy as np
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit