B
    0*\(                 @   sx   d Z G dd dZG dd deZG dd deZG dd deeZG d	d
 d
eZG dd deZG dd deZdS ))BaseTransportReadTransportWriteTransport	TransportDatagramTransportSubprocessTransportc               @   s@   e Zd ZdddZdddZdd Zdd	 Zd
d Zdd ZdS )r   Nc             C   s   |d kri }|| _ d S )N)_extra)selfextra r
   =C:\ALexclude\prg\programme\Python37\Lib\asyncio\transports.py__init__   s    zBaseTransport.__init__c             C   s   | j ||S )N)r   get)r   namedefaultr
   r
   r   get_extra_info   s    zBaseTransport.get_extra_infoc             C   s   t d S )N)NotImplementedError)r   r
   r
   r   
is_closing   s    zBaseTransport.is_closingc             C   s   t d S )N)r   )r   r
   r
   r   close   s    zBaseTransport.closec             C   s   t d S )N)r   )r   protocolr
   r
   r   set_protocol#   s    zBaseTransport.set_protocolc             C   s   t d S )N)r   )r   r
   r
   r   get_protocol'   s    zBaseTransport.get_protocol)N)N)	__name__
__module____qualname__r   r   r   r   r   r   r
   r
   r
   r   r   	   s   


r   c               @   s$   e Zd Zdd Zdd Zdd ZdS )r   c             C   s   t d S )N)r   )r   r
   r
   r   
is_reading/   s    zReadTransport.is_readingc             C   s   t d S )N)r   )r   r
   r
   r   pause_reading3   s    zReadTransport.pause_readingc             C   s   t d S )N)r   )r   r
   r
   r   resume_reading;   s    zReadTransport.resume_readingN)r   r   r   r   r   r   r
   r
   r
   r   r   ,   s   r   c               @   sF   e Zd ZdddZdd Zdd Zdd	 Zd
d Zdd Zdd Z	dS )r   Nc             C   s   t d S )N)r   )r   highlowr
   r
   r   set_write_buffer_limitsG   s    z&WriteTransport.set_write_buffer_limitsc             C   s   t d S )N)r   )r   r
   r
   r   get_write_buffer_size\   s    z$WriteTransport.get_write_buffer_sizec             C   s   t d S )N)r   )r   datar
   r
   r   write`   s    zWriteTransport.writec             C   s   d |}| | d S )N    )joinr"   )r   Zlist_of_datar!   r
   r
   r   
writelinesh   s    
zWriteTransport.writelinesc             C   s   t d S )N)r   )r   r
   r
   r   	write_eofq   s    zWriteTransport.write_eofc             C   s   t d S )N)r   )r   r
   r
   r   can_write_eofz   s    zWriteTransport.can_write_eofc             C   s   t d S )N)r   )r   r
   r
   r   abort~   s    zWriteTransport.abort)NN)
r   r   r   r   r    r"   r%   r&   r'   r(   r
   r
   r
   r   r   D   s   
		r   c               @   s   e Zd ZdS )r   N)r   r   r   r
   r
   r
   r   r      s   r   c               @   s   e Zd ZdddZdd ZdS )r   Nc             C   s   t d S )N)r   )r   r!   Zaddrr
   r
   r   sendto   s    zDatagramTransport.sendtoc             C   s   t d S )N)r   )r   r
   r
   r   r(      s    zDatagramTransport.abort)N)r   r   r   r)   r(   r
   r
   r
   r   r      s   

r   c               @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )r   c             C   s   t d S )N)r   )r   r
   r
   r   get_pid   s    zSubprocessTransport.get_pidc             C   s   t d S )N)r   )r   r
   r
   r   get_returncode   s    z"SubprocessTransport.get_returncodec             C   s   t d S )N)r   )r   fdr
   r
   r   get_pipe_transport   s    z&SubprocessTransport.get_pipe_transportc             C   s   t d S )N)r   )r   signalr
   r
   r   send_signal   s    zSubprocessTransport.send_signalc             C   s   t d S )N)r   )r   r
   r
   r   	terminate   s    zSubprocessTransport.terminatec             C   s   t d S )N)r   )r   r
   r
   r   kill   s    	zSubprocessTransport.killN)	r   r   r   r*   r+   r-   r/   r0   r1   r
   r
   r
   r   r      s   r   c                   sR   e Zd Zd fdd	Zdd Zdd Zdd	 Zdd
dZdddZdd Z	  Z
S )_FlowControlMixinNc                s$   t  | || _d| _|   d S )NF)superr   _loop_protocol_paused_set_write_buffer_limits)r   r	   Zloop)	__class__r
   r   r      s    z_FlowControlMixin.__init__c          
   C   sp   |   }|| jkrd S | jsld| _y| j  W n: tk
rj } z| jd|| | jd W d d }~X Y nX d S )NTzprotocol.pause_writing() failed)message	exception	transportr   )r    _high_waterr5   	_protocolZpause_writing	Exceptionr4   call_exception_handler)r   sizeexcr
   r
   r   _maybe_pause_protocol  s    
z'_FlowControlMixin._maybe_pause_protocolc          
   C   sh   | j rd|  | jkrdd| _ y| j  W n: tk
rb } z| jd|| | jd W d d }~X Y nX d S )NFz protocol.resume_writing() failed)r8   r9   r:   r   )r5   r    
_low_waterr<   Zresume_writingr=   r4   r>   )r   r@   r
   r
   r   _maybe_resume_protocol  s    z(_FlowControlMixin._maybe_resume_protocolc             C   s   | j | jfS )N)rB   r;   )r   r
   r
   r   get_write_buffer_limits  s    z)_FlowControlMixin.get_write_buffer_limitsc             C   sj   |d kr|d krd}nd| }|d kr.|d }||  krBdksZn t d|d|d|| _|| _d S )Ni          zhigh (z) must be >= low (z) must be >= 0)
ValueErrorr;   rB   )r   r   r   r
   r
   r   r6   "  s    z*_FlowControlMixin._set_write_buffer_limitsc             C   s   | j ||d |   d S )N)r   r   )r6   rA   )r   r   r   r
   r
   r   r   2  s    z)_FlowControlMixin.set_write_buffer_limitsc             C   s   t d S )N)r   )r   r
   r
   r   r    6  s    z'_FlowControlMixin.get_write_buffer_size)NN)NN)NN)r   r   r   r   rA   rC   rD   r6   r   r    __classcell__r
   r
   )r7   r   r2      s   

r2   N)__all__r   r   r   r   r   r   r2   r
   r
   r
   r   <module>   s   #D4