Author: Matti Picus <matti.pi...@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?
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to