o
    ED©i  ã                   @   sˆ   d dl Z ddlmZ dZdZdd„ Zdd	„ Zd
d„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ ZdS ) é    Né   )Úwrite_varintl   ÿÿÿÿ l   ÿÿÿÿ c                 C   s
   t | fƒS ©N)Úbytes)Úb© r   úQ/var/www/Datamplify/venv/lib/python3.10/site-packages/clickhouse_driver/writer.pyÚ_byte
   s   
r	   c                 C   s   |   d¡} t| |ƒ d S )Nzutf-8)ÚencodeÚwrite_binary_bytes©ÚtextÚbufr   r   r   Úwrite_binary_str   s   
r   c                 C   s   t t| ƒ|ƒ | | ¡ d S r   )r   ÚlenÚwriter   r   r   r   r      s   r   c                 C   s   d| }|  t || ¡¡ dS )z6
    Writes int from buffer with provided format.
    ú<N)r   ÚstructÚpack)Únumberr   Úfmtr   r   r   Úwrite_binary_int   s   r   c                 C   ó   t | |dƒ d S )Nr   ©r   ©r   r   r   r   r   Úwrite_binary_int8    ó   r   c                 C   r   )NÚhr   r   r   r   r   Úwrite_binary_int16$   r   r   c                 C   r   )NÚir   r   r   r   r   Úwrite_binary_int32(   r   r    c                 C   r   )NÚqr   r   r   r   r   Úwrite_binary_int64,   r   r"   c                 C   r   )NÚBr   r   r   r   r   Úwrite_binary_uint80   r   r$   c                 C   r   )NÚHr   r   r   r   r   Úwrite_binary_uint164   r   r&   c                 C   r   )NÚIr   r   r   r   r   Úwrite_binary_uint328   r   r(   c                 C   r   )NÚQr   r   r   r   r   Úwrite_binary_uint64<   r   r*   c                 C   s,   d}t  || d? t@ | t@ ¡}| |¡ d S )Nz<QQé@   )r   r   Ú
MAX_UINT64r   )r   r   r   Úpackedr   r   r   Úwrite_binary_uint128@   s   r.   )r   Úvarintr   r,   Ú	MAX_INT64r	   r   r   r   r   r   r    r"   r$   r&   r(   r*   r.   r   r   r   r   Ú<module>   s"    