
    yi
                     R    d dl Z d dlmZmZ ddlmZ  G d de j                        Zy)    N)Optionalcast   )tcp_nodelayc                       e Zd ZdZdej
                  ddfdZedefd       Z	ddZ
ddZdd	Zdd
Zdej                  ddfdZdee   ddfdZddZy)BaseProtocol)_loop_paused_drain_waiter_connection_lost_reading_paused	transportloopreturnNc                 J    || _         d| _        d | _        d| _        d | _        y NF)r	   r
   r   r   r   )selfr   s     P/root/polymarket_arb/.venv/lib/python3.12/site-packages/aiohttp/base_protocol.py__init__zBaseProtocol.__init__   s'    04
=A$6:    c                     | j                   duS )z&Return True if the connection is open.N)r   r   s    r   	connectedzBaseProtocol.connected   s     ~~T))r   c                 .    | j                   rJ d| _         y NT)r
   r   s    r   pause_writingzBaseProtocol.pause_writing   s    <<r   c                     | j                   sJ d| _         | j                  }|*d | _        |j                         s|j                  d        y y y r   )r
   r   done
set_resultr   waiters     r   resume_writingzBaseProtocol.resume_writing"   sO    |||##!%D;;=!!$' ! r   c                     | j                   s0| j                  #	 | j                  j                          d| _         y y y # t        t        t
        f$ r Y  w xY wr   )r   r   pause_readingAttributeErrorNotImplementedErrorRuntimeErrorr   s    r   r$   zBaseProtocol.pause_reading,   sX    ##(B,,. $(D  )C# #$7F    > AAc                     | j                   r0| j                  #	 | j                  j                          d| _         y y y # t        t        t
        f$ r Y  w xY wr   )r   r   resume_readingr%   r&   r'   r   s    r   r*   zBaseProtocol.resume_reading4   sW    DNN$>--/ $)D  %? #$7F r(   r   c                 ^    t        t        j                  |      }t        |d       || _        y r   )r   asyncio	Transportr   r   )r   r   trs      r   connection_madezBaseProtocol.connection_made<   s%    '##Y/Br   excc                     d | _         | j                  sy | j                  }|y d | _        |j                         ry ||j	                  d        y |j                  |       y )N)r   r
   r   r   r   set_exception)r   r0   r!   s      r   connection_lostzBaseProtocol.connection_lostA   s[    ||##>!;;=;d#  %r   c                    K   | j                   st        d      | j                  sy | j                  }|!| j                  j                         }|| _        t        j                  |       d {    y 7 w)NzConnection lost)r   ConnectionResetErrorr
   r   r	   create_futurer,   shieldr    s     r   _drain_helperzBaseProtocol._drain_helperQ   s_     ~~&'899||##>ZZ--/F!'DnnV$$$s   A,A6.A4/A6)r   N)__name__
__module____qualname__	__slots__r,   AbstractEventLoopr   propertyboolr   r   r"   r$   r*   BaseTransportr/   r   BaseExceptionr3   r8    r   r   r   r      s    I;W66 ;4 ; *4 * *(())>)> 4 
&8M#: &t & 	%r   r   )r,   typingr   r   tcp_helpersr   Protocolr   rB   r   r   <module>rF      s"     ! $S%7## S%r   