[pypy-commit] pypy numpypy-nditer: handle scalars with existing ArrayIter

mattip noreply at buildbot.pypy.org
Thu Apr 17 15:02:05 CEST 2014


Author: Matti Picus <matti.picus at gmail.com>
Branch: numpypy-nditer
Changeset: r70695:ec34892bca6f
Date: 2014-04-17 09:32 +0300
http://bitbucket.org/pypy/pypy/changeset/ec34892bca6f/

Log:	handle scalars with existing ArrayIter

diff --git a/pypy/module/micronumpy/iterators.py b/pypy/module/micronumpy/iterators.py
--- a/pypy/module/micronumpy/iterators.py
+++ b/pypy/module/micronumpy/iterators.py
@@ -45,19 +45,6 @@
 from pypy.module.micronumpy.strides import calc_strides
 from pypy.module.micronumpy.base import W_NDimArray
 
-class ScalarIter(object):
-    def __init__(self, array):
-        self.array = array
-
-    def done(self):
-        return True
-
-    def next(self):
-        pass
-
-    def getitem(self):
-        return self.array.getitem(0)
-
 class PureShapeIter(object):
     def __init__(self, shape, idx_w):
         self.shape = shape
diff --git a/pypy/module/micronumpy/nditer.py b/pypy/module/micronumpy/nditer.py
--- a/pypy/module/micronumpy/nditer.py
+++ b/pypy/module/micronumpy/nditer.py
@@ -206,7 +206,7 @@
     imp = arr.implementation.astype(space, dtype)
     backward = is_backward(imp, order)
     if arr.is_scalar():
-        return ScalarIter(imp)
+        return ArrayIter(imp, 1, [], [], [])
     if (imp.strides[0] < imp.strides[-1] and not backward) or \
        (imp.strides[0] > imp.strides[-1] and backward):
         # flip the strides. Is this always true for multidimension?


More information about the pypy-commit mailing list