
    h                     x    S r SSKrSSKJr  SSKJr  SSKJr   SSKrS r	S r
S rS	 rS
 rg! \ a    Sr Nf = f)zCompatibility utilities.    N)NullHandler)promisewrapsc                    [         c  g [         R                  n[         R                   " U [         R                  5      nU(       a  X2-  nOX2) -  n[         R                   " U [         R
                  U5      $ ! [         a    [        S5      ef = f)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       2D:\TimeStamps\venv\Lib\site-packages\amqp/utils.pyset_cloexecr      s}    }
%%

 KKEMM*E;;r5==%00  
!?
 	

s   A6 6Bc                 0   ^  [        T 5      U 4S j5       nU$ )z,Decorator to mark generator as a co-routine.c                  .   > T" U 0 UD6n[        U5        U$ )N)next)argskwargscogens      r   _bootcoro.<locals>._boot#   s    $!&!R	    r   )r   r   s   ` r   coror   !   s     
3Z 
 Lr   c                 T    [        U [        5      (       a  U R                  SS5      $ U $ )zConvert str to bytes.utf-8surrogatepass)
isinstancestrencodess    r   str_to_bytesr&   ,   s%    !Sxx11Hr   c                 T    [        U [        5      (       a  U R                  SS5      $ U $ )zConvert bytes to str.r   r    )r!   bytesdecoder$   s    r   bytes_to_strr*   3   s%    !Uxx11Hr   c                     [        U [        5      (       a  [        R                  " U 5      n U R                  (       d  U R                  [        5       5        U $ )zGet logger by name.)r!   r"   logging	getLoggerhandlers
addHandlerr   )loggers    r   
get_loggerr1   :   s;    &#""6*??+-(Mr   )__doc__r,   r   viner   
vine.utilsr   r   ImportErrorr   r   r&   r*   r1    r   r   <module>r7      sN        
1$_  Es   . 99