Ë
    šQj°  ã                   óv   — d Z ddlZddlmZ ddlmZ ddlmZ 	 ddlZd„ Z	d„ Z
d„ Zd	„ Zd
„ Zy# e$ r dZY Œw xY w)zCompatibility utilities.é    N)ÚNullHandler)Úpromise©Úwrapsc                 ó  — t         €y	 t         j                  }t        j                   | t         j                  «      }|r||z  }n|| z  }t        j                   | t         j
                  |«      S # t        $ r t        d«      ‚w xY w)z Set flag to close fd after exec.Nz1close-on-exec flag not supported on this platform)ÚfcntlÚ
FD_CLOEXECÚAttributeErrorÚNotImplementedErrorÚF_GETFDÚF_SETFD)ÚfdÚcloexecr	   Úflagss       úF/var/www/html/truck-me/venv/lib/python3.12/site-packages/amqp/utils.pyÚset_cloexecr      s�   € ä€}Øð
Ü×%Ñ%ˆ
ô
 �K‰K˜œEŸM™MÓ*€EÙØ�Ñ‰à�*�ÑˆÜ�;‰;�rœ5Ÿ=™=¨%Ó0Ð0øô ò 
Ü!Ø?ó
ð 	
ð
ús   ‰A0 Á0Bc                 ó.   ‡ — t        ‰ «      ˆ fd„«       }|S )z,Decorator to mark generator as a co-routine.c                  ó.   •—  ‰| i |¤Ž}t        |«       |S )N)Únext)ÚargsÚkwargsÚcoÚgens      €r   Ú_bootzcoro.<locals>._boot#   s   ø€ á�$Ð!˜&Ñ!ˆÜˆRŒØˆ	ó    r   )r   r   s   ` r   Úcoror   !   s    ø€ ä
ˆ3ƒZóó ðð
 €Lr   c                 óJ   — t        | t        «      r| j                  dd«      S | S )zConvert str to bytes.úutf-8Úsurrogatepass)Ú
isinstanceÚstrÚencode©Úss    r   Ústr_to_bytesr%   ,   s"   € ä�!”SÔØ�x‰x˜ Ó1Ð1Ø€Hr   c                 óJ   — t        | t        «      r| j                  dd«      S | S )zConvert bytes to str.r   r   )r    ÚbytesÚdecoder#   s    r   Úbytes_to_strr)   3   s"   € ä�!”UÔØ�x‰x˜ Ó1Ð1Ø€Hr   c                 óš   — t        | t        «      rt        j                  | «      } | j                  s| j                  t        «       «       | S )zGet logger by name.)r    r!   ÚloggingÚ	getLoggerÚhandlersÚ
addHandlerr   )Úloggers    r   Ú
get_loggerr0   :   s8   € ä�&œ#ÔÜ×"Ñ" 6Ó*ˆØ�?Š?Ø×Ñœ+›-Ô(Ø€Mr   )Ú__doc__r+   r   Úviner   Ú
vine.utilsr   r   ÚImportErrorr   r   r%   r)   r0   © r   r   ú<module>r6      sN   ðÙ Û Ý õ Ý ðÛò
1ò$òòóøð_ ò Ø‚Eðús   š. ®8·8