
    bCi<                     ^    S SK r S SKJrJr  SSKJr  SSKJr   " S S\ R                  5      r	g)    N)Optionalcast   )set_exception)tcp_nodelayc                       \ rS rSrSrS\R                  SS4S jr\S\	4S j5       r
SS jrSS	 jrSS
 jrSS jrS\R                  SS4S jrS\\   SS4S jrSS jrSrg)BaseProtocol   )_loop_paused_drain_waiter_connection_lost_reading_paused	transportloopreturnNc                 H    Xl         SU l        S U l        SU l        S U l        g NF)r   r   r   r   r   )selfr   s     O/home/james-whalen/.local/lib/python3.13/site-packages/aiohttp/base_protocol.py__init__BaseProtocol.__init__   s%    04
=A$6:    c                     U R                   SL$ )z&Return True if the connection is open.N)r   r   s    r   	connectedBaseProtocol.connected   s     ~~T))r   c                 8    U R                   (       a   eSU l         g NT)r   r   s    r   pause_writingBaseProtocol.pause_writing   s    <<r   c                     U R                   (       d   eSU l         U R                  nUb/  S U l        UR                  5       (       d  UR                  S 5        g g g r   )r   r   done
set_resultr   waiters     r   resume_writingBaseProtocol.resume_writing#   sQ    |||##!%D;;==!!$' ! r   c                     U R                   (       d1  U R                  b#   U R                  R                  5         SU l         g g g ! [        [        [
        4 a     N!f = fr   )r   r   pause_readingAttributeErrorNotImplementedErrorRuntimeErrorr   s    r   r*   BaseProtocol.pause_reading-   sX    ##(B,,. $(D  )C# #$7F    A AAc                     U R                   (       a1  U R                  b#   U R                  R                  5         SU l         g g g ! [        [        [
        4 a     N!f = fr   )r   r   resume_readingr+   r,   r-   r   s    r   r1   BaseProtocol.resume_reading5   sW    DNN$>--/ $)D  %? #$7F r/   r   c                 \    [        [        R                  U5      n[        US5        X l        g r   )r   asyncio	Transportr   r   )r   r   trs      r   connection_madeBaseProtocol.connection_made=   s#    '##Y/Br   excc                     S U l         U R                  (       d  g U R                  nUc  g S U l        UR                  5       (       a  g Uc  UR	                  S 5        g [        U[        S5      U5        g NzConnection lost)r   r   r   r#   r$   r   ConnectionError)r   r9   r&   s      r   connection_lostBaseProtocol.connection_lostB   sf    ||##>!;;==;d# 12r   c                   #    U R                   (       d  [        S5      eU R                  (       d  g U R                  nUc   U R                  R                  5       nXl        [        R                  " U5      I S h  vN   g  N7fr;   )r   ConnectionResetErrorr   r   r   create_futurer4   shieldr%   s     r   _drain_helperBaseProtocol._drain_helperV   s\     ~~&'899||##>ZZ--/F!'nnV$$$s   A7B9A?:B)r   r   r   r   r   )r   N)__name__
__module____qualname____firstlineno__	__slots__r4   AbstractEventLoopr   propertyboolr   r    r'   r*   r1   BaseTransportr7   r   BaseExceptionr=   rC   __static_attributes__ r   r   r	   r	      s    I;W66 ;4 ; *4 * *(())>)> 4 
8M#: t (	%r   r	   )
r4   typingr   r   helpersr   tcp_helpersr   Protocolr	   rP   r   r   <module>rU      s%     ! " $W%7## W%r   