o
    ec                     @   s  d Z ddlZddlZddlmZmZ ddlmZmZm	Z	m
Z
mZmZ ddlmZ ddlmZ dd	lmZmZmZmZ dd
lmZmZ eZdZ							d)dddddZe							d)dddddZedddddZeedddddZee
eedddddZee	eedddddZeedddddZeddddd dZ edddd d dZ!ed!ddd"d dZ"ed#ddd$d dZ#ed%ddd&d dZ$ed'ddd(d dZ%dS )*z*Handle files using a thread pool executor.    N)partialsingledispatch)BufferedIOBaseBufferedRandomBufferedReaderBufferedWriterFileIO
TextIOBase)	coroutine   )AiofilesContextManager   )AsyncBufferedIOBaseAsyncBufferedReaderAsyncFileIOAsyncIndirectBufferedIOBase)AsyncTextIndirectIOWrapperAsyncTextIOWrapper)openstdinstdoutstderrstdin_bytesstdout_bytesstderr_bytesrTloopexecutorc          
      C   s    t t| |||||||||	d
S )N)	mode	bufferingencodingerrorsnewlineclosefdopenerr   r   )r   _open)
filer    r!   r"   r#   r$   r%   r&   r   r    r)   LD:\Projects\ConvertPro\env\Lib\site-packages\aiofiles/threadpool/__init__.pyr   %   s   r   c                c   sL    |du r	t  }tt| |||||||d	}
||	|
E dH }t|||	dS )zOpen an asyncio file.N)r    r!   r"   r#   r$   r%   r&   r   )asyncioget_running_loopr   	sync_openrun_in_executorwrap)r(   r    r!   r"   r#   r$   r%   r&   r   r   cbfr)   r)   r*   r'   B   s    r'   c                C   s   t d| )NzUnsupported io type: {}.)	TypeErrorformatr(   r   r   r)   r)   r*   r/   c      r/   c                C      t | ||dS Nr   )r   r4   r)   r)   r*   _h   r5   r8   c                C   r6   r7   )r   r4   r)   r)   r*   r8   m      c                C   r6   r7   )r   r4   r)   r)   r*   r8   s   r9   c                C   r6   r7   )r   r4   r)   r)   r*   r8   y   r5   z	sys.stdinc                   C      t jS N)sysr   r)   r)   r)   r*   <lambda>~       r=   )Zindirectz
sys.stdoutc                   C   r:   r;   )r<   r   r)   r)   r)   r*   r=      r>   z
sys.stderrc                   C   r:   r;   )r<   r   r)   r)   r)   r*   r=      r>   zsys.stdin.bufferc                   C      t jjS r;   )r<   r   bufferr)   r)   r)   r*   r=          zsys.stdout.bufferc                   C   r?   r;   )r<   r   r@   r)   r)   r)   r*   r=      rA   zsys.stderr.bufferc                   C   r?   r;   )r<   r   r@   r)   r)   r)   r*   r=      rA   )r   r   NNNTN)&__doc__r+   r<   	functoolsr   r   ior   r   r   r   r   r	   typesr
   baser   binaryr   r   r   r   textr   r   r   r-   __all__r'   r/   registerr8   r   r   r   r   r   r   r)   r)   r)   r*   <module>   s|     

 
