[pypy-commit] pypy default: addded __pos__ and __invert__ to numpy boxes
alex_gaynor
noreply at buildbot.pypy.org
Wed Feb 8 17:24:25 CET 2012
Author: Alex Gaynor <alex.gaynor at gmail.com>
Branch:
Changeset: r52246:69d95ab3a482
Date: 2012-02-08 11:24 -0500
http://bitbucket.org/pypy/pypy/changeset/69d95ab3a482/
Log: addded __pos__ and __invert__ to numpy boxes
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
@@ -96,8 +96,10 @@
descr_rmul = _binop_right_impl("multiply")
descr_rpow = _binop_right_impl("power")
+ descr_pos = _unaryop_impl("positive")
descr_neg = _unaryop_impl("negative")
descr_abs = _unaryop_impl("absolute")
+ descr_invert = _unaryop_impl("invert")
def item(self, space):
return self.get_dtype(space).itemtype.to_builtin_type(space, self)
@@ -194,8 +196,10 @@
__gt__ = interp2app(W_GenericBox.descr_gt),
__ge__ = interp2app(W_GenericBox.descr_ge),
+ __pos__ = interp2app(W_GenericBox.descr_pos),
__neg__ = interp2app(W_GenericBox.descr_neg),
__abs__ = interp2app(W_GenericBox.descr_abs),
+ __invert__ = interp2app(W_GenericBox.descr_invert),
tolist = interp2app(W_GenericBox.item),
)
diff --git a/pypy/module/micronumpy/test/test_dtypes.py b/pypy/module/micronumpy/test/test_dtypes.py
--- a/pypy/module/micronumpy/test/test_dtypes.py
+++ b/pypy/module/micronumpy/test/test_dtypes.py
@@ -410,3 +410,7 @@
assert 2 ** int_(3) == int_(8)
assert int_(3) & int_(1) == int_(1)
raises(TypeError, lambda: float64(3) & 1)
+
+ assert +int_(3) == int_(3)
+ assert ~int_(3) == int_(-4)
+
More information about the pypy-commit
mailing list