File: //lib/python3/dist-packages/keyring/util/__pycache__/__init__.cpython-38.pyc
U
ܦ�\b � @ s d dl Z dd� Zefdd�ZdS )� Nc s � fdd�}t �� �|�S )a6
Decorate func so it's only ever called the first time.
This decorator can ensure that an expensive or non-idempotent function
will not be expensive on subsequent calls and is idempotent.
>>> func = once(lambda a: a+3)
>>> func(3)
6
>>> func(9)
6
>>> func('12')
6
c s t � d�s� | |�� _� jS )N�always_returns)�hasattrr )�args�kwargs��func� �7/usr/lib/python3/dist-packages/keyring/util/__init__.py�wrapper s
zonce.<locals>.wrapper)� functools�wraps)r r
r r r �once s r
c c s0 | D ]&}z|� V W q |k
r( Y qX qdS )zk
yield the results of calling each element of callables, suppressing
any indicated exceptions.
Nr )Z callables�
exceptions�callabler r r �suppress_exceptions s
r )r r
� Exceptionr r r r r �<module> s