o
    ?D©iä  ã                   @   sT   d dl mZmZ d dlmZmZ ddlmZ d dlm	Z	 dd„ Z
G dd	„ d	eƒZd
S )é    )Ú
filesystemÚAbstractFileSystem)ÚMemoryFileSystemÚ
MemoryFileé   )ÚBytesIOWrapper)Ú
TextIOBasec                 C   s   t | dƒo	t | dƒS )NÚreadÚseek)Úhasattr)Úobj© r   úJ/var/www/Datamplify/venv/lib/python3.10/site-packages/duckdb/filesystem.pyÚis_file_like   s   r   c                   @   s$   e Zd ZdZeejjƒZdd„ ZdS )ÚModifiedMemoryFileSystem)ÚDUCKDB_INTERNAL_OBJECTSTOREc                 C   sF   t |ƒstdƒ‚|  |¡}t|tƒrt|ƒ}t| || ¡ ƒ| j|< d S )Nz(Can not read from a non file-like object)	r   Ú
ValueErrorÚ_strip_protocolÚ
isinstancer   r   r   r	   Ústore)ÚselfÚobjectÚpathr   r   r   Úadd_file   s   

z!ModifiedMemoryFileSystem.add_fileN)	Ú__name__Ú
__module__Ú__qualname__ÚprotocolÚclassmethodr   r   Ú__func__r   r   r   r   r   r      s    r   N)Úfsspecr   r   Úfsspec.implementations.memoryr   r   Úbytes_io_wrapperr   Úior   r   r   r   r   r   r   Ú<module>   s    