← back to Atmos Game

assets/gen/.venv/lib/python3.12/site-packages/filelock/__pycache__/_async.cpython-312.pyc

38 lines

�

c�bjY��"�dZddlmZddlZddlZddlZddlmZddl	m
Z
ddlmZddl
mZmZmZmZmZer
ddlmZmZmZed	�ZGd
�de�Ze
d�
�Gd�dee��ZGd�d�Zdd�Zdd�Zdd�Zdd�Zdd�Z gd�Z!y)zKSeparate caller cancellation from backend task and executor-future results.�)�annotationsN)�Future)�	dataclass)�Lock)�
TYPE_CHECKING�Final�Generic�TypeVar�cast)�
AsyncIterator�	Awaitable�Callable�_Tc��eZdZy)� _AsyncTransitionUnavailableErrorN)�__name__�
__module__�__qualname__���f/Users/macstudio3/Projects/atmos-game/assets/gen/.venv/lib/python3.12/site-packages/filelock/_async.pyrrs��rrT)�frozenc�*�eZdZUdZded<dZded<y)�_BackendOutcomeNz	_T | None�valuezBaseException | None�error)rrrr�__annotations__rrrrrrs���E�9��"&�E��&rrc��eZdZdd�Zej
dd��Zej
										d	d��Ze												d
d��Z	dd�Z
y)�_AsyncTransitionGatec�0�t�|_d|_y�N)r�
_tail_lock�_tail)�selfs r�__init__z_AsyncTransitionGate.__init__s��'+�v���48��
rc���K�t���j5�j}��_ddd��'	tt	j
|���d{���	d����j��y#1swY�JxYw7�(#tj$r|j��fd���wxYw#�j��wxYw�w)Nc�&���j��Sr!��_leave��_predecessorr$�tickets ��r�<lambda>z+_AsyncTransitionGate.hold.<locals>.<lambda>,����4�;�;�v�CVr)	�ConcurrentFuturer"r#�_wait_until_done�asyncio�wrap_future�CancelledError�add_done_callbackr))r$�predecessorr,s` @r�holdz_AsyncTransitionGate.hold"s������)9�);��
�_�_��*�*�K��D�J���"�
�&�w�':�':�;�'G�H�H�H�	 ���K�K����_��
I���)�)�
��-�-�.V�W��
��
�K�K���sV�C	�A8�
C	�!B�B�B�!B3�&C	�8B�=C	�B�*B0�0C	�3C�C	c���K�t���j5�j}��_ddd��/|j�s	�j	|||||���d{���	d����j��y#1swY�RxYw7�(#t
$r|j
��fd���wxYw#�j��wxYw�w)N)�blocking�cancel_check�deadline�
poll_intervalc�&���j��Sr!r(r*s ��rr-z7_AsyncTransitionGate.hold_for_acquire.<locals>.<lambda>Jr.r)r/r"r#�done�_wait_for_predecessor�
BaseExceptionr4r))r$r8r9r:r;r5r,s`     @r�hold_for_acquirez%_AsyncTransitionGate.hold_for_acquire3s������*:�);��
�_�_��*�*�K��D�J���"�;�+;�+;�+=�

��0�0��%�!-�%�"/�1����	 ���K�K���%�_��
��!�
��-�-�.V�W��
��
�K�K���sW�C�B�C�
B�#B�$B�)B1�.C�B	�C�B� B.�.C�1C�Cc��bK�|st�tj|�}|j�s||�
|�rt�|�3|t	j
�z
x}dkrt�|�t
||�n|}n|�|nd}tj|f|���d{���|j�s�{yy7��w)Nr)�timeout)rr1r2r=�time�perf_counter�min�wait)r5r8r9r:r;�waiter�	remaining�
wait_intervals        rr>z*_AsyncTransitionGate._wait_for_predecessorQs������2�2��$�$�[�1���"�"�$��'�L�N�6�6��#�!)�D�,=�,=�,?�!?�?�I�A�E�:�:�AM�AY��M�9� =�_h�
�1=�1I�
�t�
��,�,��y�-�@�@�@��"�"�$�
A�s�BB/�B-�B/�+B/c��|j5|j|urd|_ddd�|jd�y#1swY�xYwr!)r"r#�
set_result)r$r,s  rr)z_AsyncTransitionGate._leavehs9��
�_�_��z�z�V�#�!��
��	���$���_�s	�=�AN)�return�None)rL�AsyncIterator[None])
r8�boolr9�Callable[[], bool] | Noner:�float | Noner;�floatrLrN)r5�ConcurrentFuture[None]r8rOr9rPr:rQr;rRrLrM)r,rSrLrM)rrrr%�
contextlib�asynccontextmanagerr6r@�staticmethodr>r)rrrrrs���9��#�#� �$� � �#�#� �� �0�	 �
� ��
 �
� �$� �:�A�+�A��A�0�	A�
�A��
A�
�A��A�, rrc���K�|j�sPtjtj�5t|��d{���ddd�|j�s�Pt
|�S7�(#1swY�'xYw�wr!)r=rT�suppressr1r3r0�_future_result��futures r�
_drain_futurer\os\�����k�k�m�
�
 �
 ��!7�!7�
8�"�6�*�*�*�9��k�k�m��&�!�!�
+��9�
8�s4�4A<�A0�A.�A0�
A<�#A<�.A0�0A9�5A<c��nK�|j�stj|f��d{���yy7��wr!)r=r1rFrZs rr0r0vs+�����;�;�=��l�l�F�9�%�%�%��%�s�*5�3�5c��|j�}|jx}�td|j�S|j}	|�#t
$r	||_�wxYw)Nr)�resultrrr�__context__r?)r[�outcomer�contexts    rrYrY{s\���m�m�o�G������'��D�'�-�-�(�(����G�������#���
��s�A�Ac�j�	t|���S#t$r}t|��cYd}~Sd}~wwxYw�N)r)r�rr?)�funcrs  r�
_capture_callrg�s/��,��T�V�,�,���,��U�+�+��,�s��	2�-�2�2c��|K�	t|�d{�����S7�	#t$r}t|��cYd}~Sd}~wwxYw�wrdre)�	awaitablers  r�_capture_awaitablerj�s4����,��9�_�5�5�_���,��U�+�+��,�s0�<�
���<��	9�4�9�<�9�<)rrrrjrgr\rYr0)r[z#asyncio.Future[_BackendOutcome[_T]]rLr)r[zasyncio.Future[_T]rLrM)rfzCallable[[], _T]rL�_BackendOutcome[_T])riz
Awaitable[_T]rLrk)"�__doc__�
__future__rr1rTrC�concurrent.futuresrr/�dataclassesr�	threadingr�typingrrr	r
r�collections.abcrr
rr�	Exceptionrrrr\r0rYrgrj�__all__rrr�<module>rus���Q�"����9�!��?�?��B�B��T�]��	�y�	��$��'�g�b�k�'��'�
O �O �d"�&�
	�,�,�	�r