File: //home/arjun/projects/env/lib64/python3.10/site-packages/amqp/__pycache__/utils.cpython-310.pyc
o
%we� � @ s� d Z ddlZddlmZ ddlmZ ddlmZ zddlZW n ey) dZY nw dd� Z dd � Z
d
d� Zdd
� Zdd� Z
dS )zCompatibility utilities.� N)�NullHandler)�promise��wrapsc C sd t du rdS zt j}W n ty td��w t � | t j�}|r%||O }n|| M }t � | t j|�S )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 �flags� r �C/home/arjun/projects/env/lib/python3.10/site-packages/amqp/utils.py�set_cloexec s
��
r c s t � �� fdd��}|S )z,Decorator to mark generator as a co-routine.c s � | i |��}t |� |S )N)�next)�args�kwargs�co��genr r �_boot# s zcoro.<locals>._bootr )r r r r r �coro! s r c C � t | t�r| �dd�S | S )zConvert str to bytes.�utf-8�
surrogatepass)�
isinstance�str�encode��sr r r �str_to_bytes, �
r"