U
    Wi                     @  s   d dl mZ d dlmZmZmZmZmZ d dlm	Z	 d dlm
Z G dd deZddd	d
dZdddddZedZdddddZdS )    )annotations)AnyTypeTypeVarcast
get_origin)AsyncClient)Clientc                   @  s   e Zd ZddddZdS )
SyncClientNone)returnc                 C  s   |    d S N)close)self r   U/home/afrizal/public_html/fastapi/venv/lib/python3.8/site-packages/postgrest/utils.pyaclose
   s    zSyncClient.acloseN)__name__
__module____qualname__r   r   r   r   r   r
   	   s   r
   r   str)paramr   c                   s2   t |  d}t fdd|D r.d  dS  S )Nz,:()c                 3  s   | ]}| kV  qd S r   r   ).0charZ	param_strr   r   	<genexpr>   s     z!sanitize_param.<locals>.<genexpr>")r   any)r   Zreserved_charsr   r   r   sanitize_param   s
    r   )patternr   c                 C  s   t | ddS )N%*)r   replace)r   r   r   r   sanitize_pattern_param   s    r#   _Tztype[type[_T]]ztype[_T])typr   c                 C  s   t tt t| S r   )r   r   r$   r   )r%   r   r   r   get_origin_and_cast   s    r&   N)
__future__r   typingr   r   r   r   r   Zhttpxr   r	   Z
BaseClientr
   r   r#   r$   r&   r   r   r   r   <module>   s   