[Numpy-discussion] ufunc delegation to object method
Thu Feb 2 00:21:10 CST 2012
Yes. This is the behavior. It was part of the original Numeric implementation. In the code generator file:
ufuncs with a registered type of 'P' have this behavior. There is a long list of them.
On Feb 2, 2012, at 12:04 AM, Warren Weckesser wrote:
> On Mon, Jan 30, 2012 at 1:17 AM, Warren Weckesser <email@example.com> wrote:
> In the following code, numpy.sin() calls the object's sin() function:
> In : class Foo(object):
> ...: def sin(self):
> ...: return "spam"
> In : f = Foo()
> In : np.sin(f)
> Out: 'spam'
> Is this, in fact, guaranteed behavior for a ufunc? It does not appear to be documented.
> This question came up in the discussion of SciPy pull request 138 (https://github.com/scipy/scipy/pull/138), where the idea is to add numpy unary ufunc support to SciPy's sparse arrays.
> (Sorry if this email shows up twice. I sent it the first time while the Enthought servers were down, and eventually got an email back saying it had not been sent.)
> NumPy-Discussion mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion