U
    dª/e¨  ã                   @   s4   d dl mZmZ dd„ Zdd„ Zdd„ Zdd	„ Zd
S )é    )ÚisliceÚteec                 c   s€   t | ttfƒrLd}| ||| … }|r|t|ƒV  ||7 }| ||| … }q"n0t| ƒ}tt||ƒƒ}|r||V  tt||ƒƒ}qbd S )Nr   )Ú
isinstanceÚlistÚtupleÚiterr   )ÚseqÚnÚiÚitemÚit© r   úB/tmp/pip-unpacked-wheel-mds_o03w/clickhouse_driver/util/helpers.pyÚchunks   s    
r   c                 C   s    t | ƒ\}}t|d ƒ t||ƒS )N)r   ÚnextÚzip)ÚiterableÚaÚbr   r   r   Úpairwise   s    
r   c                 #   s`   | D ]$}t |ttfƒstd t|ƒ¡ƒ‚q‡ fdd„| D ƒ}dd„ |D ƒ}t|ƒsTq\|V  q<d S )Nz7Unsupported column type: {}. list or tuple is expected.c                    s   g | ]}t |ˆ ƒ‘qS r   )r   ©Ú.0Úcolumn©r	   r   r   Ú
<listcomp>%   s     z!column_chunks.<locals>.<listcomp>c                 S   s   g | ]}t |g ƒ‘qS r   )r   r   r   r   r   r   )   s     )r   r   r   Ú	TypeErrorÚformatÚtypeÚany)Úcolumnsr	   r   Úgr   r   r   r   Úcolumn_chunks   s    ÿÿr!   c                 C   sB   t | tƒr:|  ¡  ¡ } | dkr"dS | dkr.dS td|  ƒ‚t| ƒS )N)ÚtrueÚyesÚonÚyÚtÚ1T)ÚfalseÚnoÚoffr	   ÚfÚ0FzString is not true/false: %r)r   ÚstrÚstripÚlowerÚ
ValueErrorÚbool)Úobjr   r   r   Úasbool0   s    
r3   N)Ú	itertoolsr   r   r   r   r!   r3   r   r   r   r   Ú<module>   s   