U
    	f                     @   sH   d dl Z d dl mZ ddlmZ ddlmZmZmZ G dd deZdS )	    N)Optional   )current_async_library   )SOCKET_OPTIONAsyncNetworkBackendAsyncNetworkStreamc                   @   s~   e Zd ZddddZdeeee ee ejej	e
  edddZdeee ejej	e
  edd	d
ZeddddZdS )AutoBackendN)returnc                    sF   t | dsBt }|dkr.ddlm} | | _nddlm} | | _d S )N_backendtrior   )TrioBackend)AnyIOBackend)hasattrr   r   r   r   anyior   )selfbackendr   r    r   Z/var/www/html/apigroqsegura/apigroq/lib/python3.8/site-packages/httpcore/_backends/auto.py_init_backend	   s    

zAutoBackend._init_backend)hostporttimeoutlocal_addresssocket_optionsr
   c                    s*   |   I d H  | jj|||||dI d H S )N)r   r   r   )r   r   connect_tcp)r   r   r   r   r   r   r   r   r   r      s    zAutoBackend.connect_tcp)pathr   r   r
   c                    s&   |   I d H  | jj|||dI d H S )N)r   r   )r   r   connect_unix_socket)r   r   r   r   r   r   r   r   &   s      zAutoBackend.connect_unix_socket)secondsr
   c                    s    |   I d H  | j|I d H S )N)r   r   sleep)r   r   r   r   r   r   1   s    zAutoBackend.sleep)NNN)NN)__name__
__module____qualname__r   strintr   floattypingIterabler   r   r   r   r   r   r   r   r   r	      s*        r	   )	r&   r   _synchronizationr   baser   r   r   r	   r   r   r   r   <module>   s   