3
���h � @ s� d Z dddgZddljjZddlmZmZ ddl Z ddl
Z
dd� Zd d
� Zdd� Z
edd
d��Zeeddd�e
ddd���Zeeddd�e
ddd���Zeeddd�e
ddd���ZdS )zr
Module of functions that are like ufuncs in acting on arrays and optionally
storing results in an output array.
�fix�isneginf�isposinf� N)�array_function_dispatch�ARRAY_FUNCTION_ENABLEDc s t j� �d� fdd� �}|S )z|
Allow the out argument to be passed as the name `y` (deprecated)
In future, this decorator should be removed.
Nc sV d|krBd|kr t dj� j���|jd�}tjdj� j�tdd� � | fd|i|��S )N�y�outz-{} got multiple values for argument 'out'/'y'zXThe name of the out argument to {} has changed from `y` to `out`, to match other ufuncs.� )�
stacklevel)� TypeError�format�__name__�pop�warnings�warn�DeprecationWarning)�xr �kwargs)�f� �4/tmp/pip-build-5_djhm0z/numpy/numpy/lib/ufunclike.py�func s
z$_deprecate_out_named_y.<locals>.func)N)� functools�wraps)r r r )r r �_deprecate_out_named_y s r c s t j� �d� fdd� �}|S )z�
Allow the out argument to be passed as the name `y` (deprecated)
This decorator should only be used if _deprecate_out_named_y is used on
a corresponding dispatcher function.
Nc s& |