B
     S]>                 @   sR   d ddgZ ddlmZ dgZG dd deZdd  Zdd	dZG d
d deZdS )ClientListenerPipe    )QueueNc               @   sB   e Zd ZdddZdd Zdd Zed	d
 Zdd Zdd Z	dS )r   N   c             C   s   t || _d S )N)r   _backlog_queue)selfaddressZfamilyZbacklog r
   1lib/python3.7/multiprocessing/dummy/connection.py__init__   s    zListener.__init__c             C   s   t | j  S )N)
Connectionr   get)r   r
   r
   r   accept   s    zListener.acceptc             C   s
   d | _ d S )N)r   )r   r
   r
   r   close   s    zListener.closec             C   s   | j S )N)r   )r   r
   r
   r   r	      s    zListener.addressc             C   s   | S )Nr
   )r   r
   r
   r   	__enter__!   s    zListener.__enter__c             C   s   |    d S )N)r   )r   exc_type	exc_valueexc_tbr
   r
   r   __exit__$   s    zListener.__exit__)NNr   )
__name__
__module____qualname__r   r   r   propertyr	   r   r   r
   r
   r
   r   r      s   
c             C   s&   t  t   }}| ||f t||S )N)r   putr   )r	   _in_outr
   r
   r   r   (   s    Tc             C   s"   t  t   }}t||t||fS )N)r   r   )Zduplexabr
   r
   r   r   .   s    c               @   s6   e Zd Zdd ZdddZdd Zdd	 Zd
d ZdS )r   c             C   s,   || _ || _|j | _| _|j | _| _d S )N)r   r   r   sendZ
send_bytesr   ZrecvZ
recv_bytes)r   r   r   r
   r
   r   r   5   s    zConnection.__init__        c          	   C   sN   | j  dkrdS |dkrdS | j j | j j| W d Q R X | j  dkS )Nr   Tg        F)r   ZqsizeZ	not_emptywait)r   Ztimeoutr
   r
   r   poll;   s    
zConnection.pollc             C   s   d S )Nr
   )r   r
   r
   r   r   D   s    zConnection.closec             C   s   | S )Nr
   )r   r
   r
   r   r   G   s    zConnection.__enter__c             C   s   |    d S )N)r   )r   r   r   r   r
   r
   r   r   J   s    zConnection.__exit__N)r    )r   r   r   r   r"   r   r   r   r
   r
   r
   r   r   3   s
   
	r   )T)	__all__Zqueuer   Zfamiliesobjectr   r   r   r   r
   r
   r
   r   <module>
   s   

