o
    ?D©i¨  ã                   @   s0   d dl mZmZ d dlmZ 	 G dd„ dƒZdS )é    )ÚStringIOÚ
TextIOBase)ÚUnionc                   @   sV   e Zd Zddeeef deddfdd„Zdefd	d
„Zddee	df de
fdd„ZdS )ÚBytesIOWrapperúutf-8ÚbufferÚencodingÚreturnNc                 C   s   || _ || _d| _d S )Nó    )r   r   Úoverflow)Úselfr   r   © r   úP/var/www/Datamplify/venv/lib/python3.10/site-packages/duckdb/bytes_io_wrapper.pyÚ__init__*   s   
zBytesIOWrapper.__init__Úattrc                 C   s   t | j|ƒS )N)Úgetattrr   )r   r   r   r   r   Ú__getattr__3   s   zBytesIOWrapper.__getattr__éÿÿÿÿÚnc                 C   sp   | j d usJ ‚| j  |¡ | j¡}| j| }|d u s$|dk s$|t|ƒkr)d| _|S |d |… }||d … | _|S )Nr   r
   )r   ÚreadÚencoder   r   Úlen)r   r   Ú
bytestringÚcombined_bytestringÚ	to_returnr   r   r   r   6   s   
zBytesIOWrapper.read)r   )r   )Ú__name__Ú
__module__Ú__qualname__r   r   r   Ústrr   r   ÚintÚbytesr   r   r   r   r   r   '   s     	 r   N)Úior   r   Útypingr   r   r   r   r   r   Ú<module>   s    #