Author: Romain Guillebert <[email protected]>
Branch:
Changeset: r68977:d7c223f70bc3
Date: 2014-01-27 21:49 +0100
http://bitbucket.org/pypy/pypy/changeset/d7c223f70bc3/
Log: Add stub for ufunc.outer
diff --git a/pypy/module/micronumpy/interp_ufuncs.py
b/pypy/module/micronumpy/interp_ufuncs.py
--- a/pypy/module/micronumpy/interp_ufuncs.py
+++ b/pypy/module/micronumpy/interp_ufuncs.py
@@ -254,6 +254,13 @@
return out
return res
+ def descr_outer(self, space, __args__):
+ return self._outer(space, __args__)
+
+ def _outer(self, space, __args__):
+ raise OperationError(space.w_TypeError,
+ space.wrap("outer product only supported for
binary functions"))
+
class W_Ufunc1(W_Ufunc):
_immutable_fields_ = ["func", "bool_result"]
argcount = 1
@@ -432,6 +439,7 @@
nin = interp_attrproperty("argcount", cls=W_Ufunc),
reduce = interp2app(W_Ufunc.descr_reduce),
+ outer = interp2app(W_Ufunc.descr_outer),
)
diff --git a/pypy/module/micronumpy/test/test_ufuncs.py
b/pypy/module/micronumpy/test/test_ufuncs.py
--- a/pypy/module/micronumpy/test/test_ufuncs.py
+++ b/pypy/module/micronumpy/test/test_ufuncs.py
@@ -1052,3 +1052,8 @@
np.array([0, -1, -3, -6, -10])).all()
assert (np.divide.accumulate(todivide) ==
np.array([2., 4., 16.])).all()
+
+ def test_outer(self):
+ import numpy as np
+ from numpypy import absolute
+ assert raises(TypeError, np.absolute.outer, [-1, -2])
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit