File: //proc/self/root/usr/local/lib/python3.9/site-packages/kombu/__pycache__/compat.cpython-39.pyc
a
X>h` � @ s� d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl m
Z
mZ erTddlm
Z
d ZejZddd
�ZG dd� dej�ZG dd� dej�ZG dd� dej�ZdS )zYCarrot compatibility interface.
See https://pypi.org/project/carrot/ for documentation.
� )�annotations)�count)�
TYPE_CHECKING� )� messaging)�Exchange�Queue)�
TracebackType)� Publisher�ConsumerFNc c s8 |j |d� td�D ]}|r(||kr( q4| �� V qd S )N)�no_ackr )Zconsumer Zdrain_events)�
connection�consumerr �limit� iteration� r �6/usr/local/lib/python3.9/site-packages/kombu/compat.py�_iterconsume s
r c sv e Zd ZdZdZdZdZdZdZdZ d� fdd� Z
d d
� Z� fdd�Zd
d� Z
ddddd�dd�Zedd� �Z� ZS )r
zCarrot compatible producer.� �directTFNc s� |r|}|p| j | _ |p| j| _|p(| j| _|d ur:|| _|d urH|| _t| j t�srt| j | j| j| j| jd�| _ t� j|| j fi |�� d S )N)�name�type�routing_key�auto_delete�durable) �exchange�
exchange_typer r r �
isinstancer �super�__init__) �selfr
r r r r r �channel�kwargs�� __class__r r r ) s"