� ��g���$�ddlZddlZddlmZddlmZejrddlmZGd�de��Zejeej dgej e ffZ Gd�d e��Z Gd �d e��ZGd �d e��ZGd�de��ZdS)�N)�_utils)� retry_base)�RetryCallStatec�|�eZdZdZejdddefd���Z dd �Z dd �Z dd �Z dd �Z dS)�async_retry_basez/Abstract base class for async retry strategies.� retry_stater�returnc�� K�dS�N���selfrs �f/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/tenacity/asyncio/retry.py�__call__zasync_retry_base.__call__s ���� ���other�*typing.Union[retry_base, async_retry_base]� retry_allc�"�t||��Sr �r�rrs r�__and__zasync_retry_base.__and__!�����u�%�%�%rc�"�t||��Sr rrs r�__rand__zasync_retry_base.__rand__&������%�%�%r� retry_anyc�"�t||��Sr �rrs r�__or__zasync_retry_base.__or__+rrc�"�t||��Sr rrs r�__ror__zasync_retry_base.__ror__0rrN)rrr r)rrr r) �__name__� __module__� __qualname__�__doc__�abc�abstractmethod�boolrrrr r"r rrrrs�������9�9��� �*:� �t� � � ��� �&�A�&� �&�&�&�&� &�A�&� �&�&�&�&� &�A�&� �&�&�&�&� &�A�&� �&�&�&�&�&�&rrrc�d�eZdZdZdejegejefddfd�Z dddefd�Z dS) �retry_if_exceptionzARetry strategy that retries if an exception verifies a predicate.� predicater Nc��||_dSr �r,�rr,s r�__init__zretry_if_exception.__init__>���#����rrrc���K�|j�td���|jjrE|j���}|�td���|�|���d{V��SdS)N�(__call__() called before outcome was setz(outcome failed but the exception is NoneF)�outcome� RuntimeError�failed� exceptionr,)rrr7s rrzretry_if_exception.__call__Cs~���� � � &��I�J�J� J� � � %� �#�+�5�5�7�7�I�� �"�#M�N�N�N���� �2�2�2�2�2�2�2�2� 2��5r) r#r$r%r&�typing�Callable� BaseException� Awaitabler)r0rr rrr+r+;sw������K�K�#���-��&�:J�4�:P�)P�Q�#� �#�#�#�#� �*:� �t� � � � � � rr+c�n�eZdZdZdejejgejefddfd�Z dddefd�Z dS) �retry_if_resultz+Retries if the result verifies a predicate.r,r Nc��||_dSr r.r/s rr0zretry_if_result.__init__Sr1rrrc��K�|j�td���|jjs2|�|j������d{V��SdS)Nr3F)r4r5r6r,�resultr s rrzretry_if_result.__call__Xsd���� � � &��I�J�J� J��"�)� ���� �(;�(B�(B�(D�(D�E�E�E�E�E�E�E�E� E��5r) r#r$r%r&r8r9�Anyr;r)r0rr rrr=r=Psy������5�5�#���&�*��v�7G��7M�)M�N�#� �#�#�#�#� �*:��t������rr=c�L�eZdZdZdejeefddfd�Zddde fd�Z dS) rz1Retries if any of the retries condition is valid.�retriesr Nc��||_dSr �rC�rrCs rr0zretry_any.__init__e� ���� � � rrrc��tK�d}|jD]+}|p"tj|��|���d{V��}|rn�,|S)NF�rCr�wrap_to_async_func�rrr@�rs rrzretry_any.__call__hse�������� � �A��N�%A�V�%>�q�%A�%A�+�%N�%N�N�N�N�N�N�N�F�� ��� �� r� r#r$r%r&r8�Unionrrr0r)rr rrrrbsm������;�;����j�:J�.J�!K��PT������*:��t������rrc�L�eZdZdZdejeefddfd�Zddde fd�Z dS) rz/Retries if all the retries condition are valid.rCr Nc��||_dSr rErFs rr0zretry_all.__init__trGrrrc��tK�d}|jD]+}|o"tj|��|���d{V��}|sn�,|S)NTrIrKs rrzretry_all.__call__wse�������� � �A��O�&B�f�&?��&B�&B�;�&O�&O� O� O� O� O� O� O�F�� ��� �� rrMr rrrrqsm������9�9����j�:J�.J�!K��PT������*:��t������rr)r'r8�tenacityrr� TYPE_CHECKINGrrrNr9r;r)� RetryBaseTr+r=rrr rr�<module>rUsh��  � � � � � � � ������������� ��(�'�'�'�'�'�'�&�&�&�&�&�z�&�&�&�8�\��f�o�'7�&8�&�:J�4�:P�&P�Q�Q�� � �����)����*�����&����$ � � � � � � � � � � � � � � � � � � � r
Memory