o
    Þý°j
  ã                   @   sŠ  U d dl mZmZmZmZ d dlZd dlZej 	d¡r�d dl
mZ d dlmZ d dlmZ d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d dlmZ dZdd„ Zdd„ ZdeefiZeeeeef f ed< ej 	d¡r—d dlZd dlmZ d dlm Z  d dlm!Z! dd„ Z"dd„ Z#e"e#fed< d'dd„Z$ndZG dd „ d ƒZ%G d!d"„ d"ƒZG d#d$„ d$ƒZG d%d&„ d&ƒZeee&e&f  Z'dS )(é    )ÚAnyÚDictÚListÚTupleNÚdoq©ÚNullContext)ÚAsyncioQuicConnection©ÚAsyncioQuicManager)ÚAsyncioQuicStream)ÚAsyncQuicConnection)ÚAsyncQuicManager)ÚSyncQuicConnection)ÚSyncQuicStream)ÚSyncQuicManagerTc                  O   s   t d ƒS ©Nr   )ÚargsÚkwargs© r   ú„/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/dns/quic/__init__.pyÚnull_factory   s   r   c                 O   s   t |i |¤ŽS r   r
   ©Úcontextr   r   r   r   r   Ú_asyncio_manager_factory   s   r   ÚasyncioÚ_async_factoriesÚtrio)ÚTrioQuicConnection©ÚTrioQuicManager)ÚTrioQuicStreamc                   C   s   t  ¡ S r   )r   Úopen_nurseryr   r   r   r   Ú_trio_context_factory/   s   r#   c                 O   s   t | g|¢R i |¤ŽS r   r   r   r   r   r   Ú_trio_manager_factory2   s   r$   c                 C   s   | d u r	t j ¡ } t|  ¡  S r   )ÚdnsÚasyncbackendÚget_default_backendr   Úname)Úbackendr   r   r   Úfactories_for_backend7   s   
r*   Fc                   @   ó   e Zd ZdS )ÚAsyncQuicStreamN©Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r,   ?   ó    r,   c                   @   ó   e Zd Zdefdd„ZdS )r   Úreturnc                 Ã   s   �t ‚r   ©ÚNotImplementedError©Úselfr   r   r   Úmake_streamC   s   €zAsyncQuicConnection.make_streamN©r.   r/   r0   r   r8   r   r   r   r   r   B   ó    r   c                   @   r+   )r   Nr-   r   r   r   r   r   F   r1   r   c                   @   r2   )r   r3   c                 C   s   t ‚r   r4   r6   r   r   r   r8   J   s   zSyncQuicConnection.make_streamNr9   r   r   r   r   r   I   r:   r   r   )(Útypingr   r   r   r   Údns._featuresr%   Údns.asyncbackendÚ	_featuresÚhaveÚdns._asyncbackendr   Údns.quic._asyncior	   r   r   Údns.quic._commonr   r   Údns.quic._syncr   r   r   Ú	have_quicr   r   r   ÚstrÚ__annotations__r   Údns.quic._trior   r    r!   r#   r$   r*   r,   ÚbytesÚHeadersr   r   r   r   Ú<module>   sB   	ÿ