� ��^i� ���ddlZddlZejr ddlZddlmZGd�dej��ZGd�de��ZGd�de��Z Gd �d e��Z e ��Z Gd �d e��Z Gd �de��Z Gd�de��ZdS)�N)�RetryCallStatec�L�eZdZdZejdddefd���Zd d�Zd d �Z d S)� stop_basez(Abstract base class for stop strategies.� retry_stater�returnc��dS�N���selfrs ��/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/tenacity/stop.py�__call__zstop_base.__call__s�� ���other�stop_allc�"�t||��Sr )r�r rs r �__and__zstop_base.__and__ �����e�$�$�$r�stop_anyc�"�t||��Sr )rrs r �__or__zstop_base.__or__#rrN)rrrr)rrrr) �__name__� __module__� __qualname__�__doc__�abc�abstractmethod�boolrrrr rr rrss������2�2��� �$4� �� � � ��� �%�%�%�%�%�%�%�%�%�%rrc�2�eZdZdZdeddfd�Zdddefd�ZdS) rz+Stop if any of the stop condition is valid.�stopsrNc��||_dSr �r!�r r!s r �__init__zstop_any.__init__*� ���� � � rrrc�D��t�fd�|jD����S)Nc3�.�K�|]}|���V��dSr r ��.0�xrs �r � z$stop_any.__call__...�+�����6�6�a�1�1�[�>�>�6�6�6�6�6�6r)�anyr!r s `r rzstop_any.__call__-�(����6�6�6�6�4�:�6�6�6�6�6�6r�rrrrrr%rrr rr rr's_������5�5��y��T�����7�$4�7��7�7�7�7�7�7rrc�2�eZdZdZdeddfd�Zdddefd�ZdS) rz*Stop if all the stop conditions are valid.r!rNc��||_dSr r#r$s r r%zstop_all.__init__4r&rrrc�D��t�fd�|jD����S)Nc3�.�K�|]}|���V��dSr r r)s �r r,z$stop_all.__call__..8r-r)�allr!r s `r rzstop_all.__call__7r/rr0r rr rr1s_������4�4��y��T�����7�$4�7��7�7�7�7�7�7rrc�"�eZdZdZdddefd�ZdS)� _stop_neverz Never stop.rrrc��dS)NFr r s r rz_stop_never.__call__>s���urN)rrrrrrr rr r7r7;s=���������$4��������rr7c�*�eZdZdZd d�Zdddefd �ZdS) �stop_when_event_setz!Stop when the given event is set.�event�threading.EventrNc��||_dSr )r;)r r;s r r%zstop_when_event_set.__init__Hr&rrrc�4�|j���Sr )r;�is_setr s r rzstop_when_event_set.__call__Ks���z� � �"�"�"r)r;r<rN)rrrrr%rrr rr r:r:EsQ������+�+�����#�$4�#��#�#�#�#�#�#rr:c�2�eZdZdZdeddfd�Zdddefd�ZdS) �stop_after_attemptz.Stop when the previous attempt >= max_attempt.�max_attempt_numberrNc��||_dSr )rB)r rBs r r%zstop_after_attempt.__init__Rs��"4����rrrc�"�|j|jkSr )�attempt_numberrBr s r rzstop_after_attempt.__call__Us���)�T�-D�D�Dr)rrrr�intr%rrr rr rArAOsg������8�8�5�3�5�4�5�5�5�5�E�$4�E��E�E�E�E�E�ErrAc�2�eZdZdZdeddfd�Zdddefd�ZdS) �stop_after_delayz3Stop when the time from the first attempt >= limit.� max_delayrNc��||_dSr )rI)r rIs r r%zstop_after_delay.__init__\s ��"����rrrc�"�|j|jkSr )�seconds_since_startrIr s r rzstop_after_delay.__call___s���.�$�.�@�@r)rrrr�floatr%rrr rr rHrHYsg������=�=�#�%�#�D�#�#�#�#�A�$4�A��A�A�A�A�A�ArrH)r�typing� TYPE_CHECKING� threading�pip._vendor.tenacityr�ABCrrrr7� stop_neverr:rArHr rr �rTs���  � � � � � � � � ��4�����3�3�3�3�3�3� %� %� %� %� %��� %� %� %�7�7�7�7�7�y�7�7�7�7�7�7�7�7�y�7�7�7������)�����[�]�]� �#�#�#�#�#�)�#�#�#�E�E�E�E�E��E�E�E�A�A�A�A�A�y�A�A�A�A�Ar