o
    �õ±jt  ã                   @   s   G d d„ dƒZ dS )c                   @   s>   e Zd Zdd„ Zdd„ Zddd„Zdd	„ Zd
d„ Zdd„ ZdS )ÚNetworkQueuec                 C   s"   d | _ d | _d| _d | _d | _d S )Nó    )Úin_queueÚ	out_queueÚbufferÚdata_in_evtÚpipe_broken_evt©Úself© r
   ú‰/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/asysocks/network/queue.pyÚ__init__   s
   
zNetworkQueue.__init__c              
   Ã   s8   �zW d S  t y } zt|ƒ W Y d }~d S d }~ww )N)Ú	ExceptionÚprint)r	   Úer
   r
   r   Úrun   s   €€ÿzNetworkQueue.runéÿÿÿÿc              
   Ã   s¬   �z=| j  ¡ r
W dS t| jƒdkr | j ¡ I d H  t| jƒdks|dkr-| j}d| _|W S | jd |… }| j|d … | _|W S  tyU } zt|ƒ W Y d }~d S d }~ww )Nr   é    r   )r   Úis_setÚlenr   r   Úwaitr   r   ©r	   ÚnÚtempr   r
   r
   r   Úread   s$   €
ÿ€ÿzNetworkQueue.readc              
   Ã   s¤   �z9| j  ¡ rtdƒ‚|dk rtdƒ‚t| jƒ|kr)| j ¡ I d H  t| jƒ|ks| jd |… }| j|d … | _|W S  tyQ } zt|ƒ W Y d }~d S d }~ww )NúPipe broken!é   z'Readexactly must be a positive integer!)r   r   r   r   r   r   r   r   r   r
   r
   r   Úreadexactly'   s    €
ÿ€ÿzNetworkQueue.readexactlyc              
   Ã   s¬   �z=| j  ¡ rtdƒ‚| j |¡dkr#| j ¡ I d H  | j |¡dks| j |¡t|ƒ }| jd |… }| j|d … | _|W S  tyU } zt|ƒ W Y d }~d S d }~ww )Nr   r   )	r   r   r   r   Úfindr   r   r   r   )r	   ÚpatternÚendr   r   r
   r
   r   Ú	readuntil9   s   €
ÿ€ÿzNetworkQueue.readuntilc                 Ã   s   �|   d¡I d H S )Nó   
)r    r   r
   r
   r   ÚreadlineI   s   €zNetworkQueue.readlineN)r   )	Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r    r"   r
   r
   r
   r   r      s    
r   N)r   r
   r
   r
   r   Ú<module>   s   