
    hp                        S SK r S SKrS SKrS SKrS SKJrJr  S SKJr  S SK	J
r
Jr  S SKJrJrJrJrJrJrJrJrJrJrJrJr  S SKJr  S SKJr  SS	KJr  \(       a  SS
KJ r   SSK!J"r"  SSK#J$r$J%r%  SSK&J'r'  O
S=r$=r%=r r'Sr" " S S\5      r( " S S\5      r) " S S\5      r* " S S\5      r+ " S S\5      r,\(       a	  \\\-      r.O\r.\S/\/4   r0 " S S\\.5      r1 " S S\5      r2 " S S\5      r3g)    N)ABCabstractmethod)Sized)
BaseCookieMorsel)TYPE_CHECKINGAny	AwaitableCallableDict	GeneratorIterableListOptionalTuple	TypedDictUnion)CIMultiDict)URL   )LooseCookies)Application)HTTPException)BaseRequestRequest)StreamResponsec                   n    \ rS rSrSS jrS\SS4S jr\S\4S j5       r	SS jr
\S	\SS
4S j5       rSrg)AbstractRouter&   returnNc                     SU l         g )NF_frozenselfs    =/var/www/html/env/lib/python3.13/site-packages/aiohttp/abc.py__init__AbstractRouter.__init__'   s	        appc                     g)zPost init stage.

Not an abstract method for sake of backward compatibility,
but if the router wants to be aware of the application
it can override this.
N r%   r*   s     r&   	post_initAbstractRouter.post_init*       r)   c                     U R                   $ Nr"   r$   s    r&   frozenAbstractRouter.frozen2   s    ||r)   c                     SU l         g)zFreeze router.TNr"   r$   s    r&   freezeAbstractRouter.freeze6   s	    r)   requestAbstractMatchInfoc                    #    g7f)z#Return MATCH_INFO for given requestNr,   r%   r8   s     r&   resolveAbstractRouter.resolve:           r"   r    N)__name__
__module____qualname____firstlineno__r'   r   r.   propertyboolr3   r6   r   r   r<   __static_attributes__r,   r)   r&   r   r   &   s]    [ T     2W 21D 2 2r)   r   c                   ,   \ rS rSrSr\\S\\/\	\
   4   4S j5       5       r\\S\\/\	\\
      4   4S j5       5       r\\S\\   4S j5       5       r\S\\\4   4S j5       r\\S\\S4   4S	 j5       5       r\S
\SS4S j5       r\SS j5       rSrg)r9   ?   r,   r    c                     g)zExecute matched request handlerNr,   r$   s    r&   handlerAbstractMatchInfo.handlerC   r0   r)   c                     g)z*Expect handler for 100-continue processingNr,   r$   s    r&   expect_handler AbstractMatchInfo.expect_handlerH   r0   r)   c                     g)z<HTTPException instance raised on router's resolving, or NoneNr,   r$   s    r&   http_exception AbstractMatchInfo.http_exceptionO   r0   r)   c                     g)z;Return a dict with additional info useful for introspectionNr,   r$   s    r&   get_infoAbstractMatchInfo.get_infoT   r0   r)   .c                     g)zLStack of nested applications.

Top level application is left-most element.

Nr,   r$   s    r&   appsAbstractMatchInfo.appsX   r0   r)   r*   Nc                     g)z)Add application to the nested apps stack.Nr,   r-   s     r&   add_appAbstractMatchInfo.add_appa   r0   r)   c                     g)zoFreeze the match info.

The method is called after route resolution.

After the call .add_app() is forbidden.

Nr,   r$   s    r&   r6   AbstractMatchInfo.freezee   r0   r)   r@   )rA   rB   rC   rD   	__slots__rE   r   r   r   r
   r   rK   r   rN   r   rQ   r   strr	   rT   r   r   rW   rZ   r6   rG   r,   r)   r&   r9   r9   ?   s'   I.7)Y~-F"FG .  . 9	7)Yx'?@@	A9  9
 K 7 K  K J$sCx. J J eK,-    8; 84 8 8  r)   r9   c                   f    \ rS rSrSrS\SS4S jr\S\4S j5       r\	S\
\S\4   4S j5       rS	rg)
AbstractViewp   zAbstract class based view.r8   r    Nc                     Xl         g r2   _requestr;   s     r&   r'   AbstractView.__init__s   s    r)   c                     U R                   $ )zRequest instance.rd   r$   s    r&   r8   AbstractView.requestv   s     }}r)   c                     g)zExecute the view handler.Nr,   r$   s    r&   	__await__AbstractView.__await__{   r0   r)   rd   )rA   rB   rC   rD   __doc__r   r'   rE   r8   r   r   r	   r   rj   rG   r,   r)   r&   ra   ra   p   sZ    $   D      (9S$%>? ( (r)   ra   c                   V    \ rS rSr% Sr\\S'   \\S'   \\S'   \\S'   \\S'   \\S'   S	rg
)ResolveResult   aq  Resolve result.

This is the result returned from an AbstractResolver's
resolve method.

:param hostname: The hostname that was provided.
:param host: The IP address that was resolved.
:param port: The port that was resolved.
:param family: The address family that was resolved.
:param proto: The protocol that was resolved.
:param flags: The flags that were resolved.
hostnamehostportfamilyprotoflagsr,   N)	rA   rB   rC   rD   rl   r_   __annotations__intrG   r,   r)   r&   rn   rn      s'     M
I
IKJJr)   rn   c                       \ rS rSrSr\S\R                  4S\S\	S\R                  S\\   4S jj5       r\SS
 j5       rSrg	)AbstractResolver   zAbstract DNS resolver.r   rq   rr   rs   r    c                    #    g7f)z$Return IP address for given hostnameNr,   )r%   rq   rr   rs   s       r&   r<   AbstractResolver.resolve   r>   r?   Nc                    #    g7f)zRelease resolverNr,   r$   s    r&   closeAbstractResolver.close   r>   r?   r,   r@   )rA   rB   rC   rD   rl   r   socketAF_INETr_   rw   AddressFamilyr   rn   r<   r~   rG   r,   r)   r&   ry   ry      s_     %&v~~33"3060D0D3	m	3 3
  r)   ry   zMorsel[str]c                       \ rS rSrSrSS.S\\R                     SS4S jjr\	\
S\4S j5       5       r\
SS	\\   SS4S
 jj5       r\
S\SS4S j5       r\
\" 5       4S\S\SS4S jj5       r\
S\SS4S j5       rSrg)AbstractCookieJar   zAbstract Cookie Jar.N)loopr   r    c                J    U=(       d    [         R                  " 5       U l        g r2   )asyncioget_running_loop_loop)r%   r   s     r&   r'   AbstractCookieJar.__init__   s    7W557
r)   c                     g)z(Return True if cookies should be quoted.Nr,   r$   s    r&   quote_cookieAbstractCookieJar.quote_cookie   r0   r)   	predicatec                     g)z,Clear all cookies if no predicate is passed.Nr,   )r%   r   s     r&   clearAbstractCookieJar.clear   r0   r)   domainc                     g)z0Clear all cookies for domain and all subdomains.Nr,   )r%   r   s     r&   clear_domainAbstractCookieJar.clear_domain   r0   r)   cookiesresponse_urlc                     g)zUpdate cookies.Nr,   )r%   r   r   s      r&   update_cookies AbstractCookieJar.update_cookies   r0   r)   request_urlzBaseCookie[str]c                     g)z6Return the jar's cookies filtered by their attributes.Nr,   )r%   r   s     r&   filter_cookies AbstractCookieJar.filter_cookies   r0   r)   )r   r2   )rA   rB   rC   rD   rl   r   r   AbstractEventLoopr'   rE   r   rF   r   ClearCookiePredicater   r_   r   r   r   r   r   rG   r,   r)   r&   r   r      s    FJ 8)B)B C 8t 8 7d 7  7 ;x(<= ; ; ; ?3 ?4 ? ? HK l # RV   E# E2C E Er)   r   c                      \ rS rSr% SrSr\\S'   Sr\\S'   Sr	\
\   \S'   \S\\\\4   SS	4S
 j5       r\SS\SS	4S jj5       r\SS j5       r\S\R(                  4S\S\SS	4S jj5       r\SS j5       r\S\SSSS	4S j5       rSrg	)AbstractStreamWriter   zAbstract stream writer.r   buffer_sizeoutput_sizelengthchunkr    Nc                    #    g7f)zWrite chunk into stream.Nr,   r%   r   s     r&   writeAbstractStreamWriter.write   r>   r?   c                    #    g7f)zWrite last chunk.Nr,   r   s     r&   	write_eofAbstractStreamWriter.write_eof   r>   r?   c                    #    g7f)zFlush the write buffer.Nr,   r$   s    r&   drainAbstractStreamWriter.drain   r>   r?   deflateencodingstrategyc                     g)zEnable HTTP body compressionNr,   )r%   r   r   s      r&   enable_compression'AbstractStreamWriter.enable_compression   r0   r)   c                     g)zEnable HTTP chunked modeNr,   r$   s    r&   enable_chunking$AbstractStreamWriter.enable_chunking   r0   r)   status_lineheaderszCIMultiDict[str]c                    #    g7f)zWrite HTTP headersNr,   )r%   r   r   s      r&   write_headers"AbstractStreamWriter.write_headers   r>   r?   r,   )r)   r@   )rA   rB   rC   rD   rl   r   rw   rv   r   r   r   r   r   bytes	bytearray
memoryviewr   r   r   zlibZ_DEFAULT_STRATEGYr_   r   r   r   rG   r,   r)   r&   r   r      s    !KKFHSM'ui'C!D ' ' '  U  T     & & '9P9P++36+	+ +
 ' ' !!);!	! !r)   r   c            	           \ rS rSrSrSrS\R                  S\SS4S jr	\
S	\S
\S\SS4S j5       r\S\4S j5       rSrg)AbstractAccessLogger   zAbstract writer to access log.logger
log_formatr   r   r    Nc                     Xl         X l        g r2   r   )r%   r   r   s      r&   r'   AbstractAccessLogger.__init__   s    $r)   r8   responsetimec                     g)zEmit log to logger.Nr,   )r%   r8   r   r   s       r&   logAbstractAccessLogger.log   r0   r)   c                     g)zCheck if logger is enabled.Tr,   r$   s    r&   enabledAbstractAccessLogger.enabled   s     r)   )r   r   )rA   rB   rC   rD   rl   r^   loggingLoggerr_   r'   r   r   r   floatr   rE   rF   r   rG   r,   r)   r&   r   r      st    ((I%w~~ %3 %4 % "; ". " "RV " "   r)   r   )4r   r   r   r   abcr   r   collections.abcr   http.cookiesr   r   typingr   r	   r
   r   r   r   r   r   r   r   r   r   	multidictr   yarlr   typedefsr   web_appr   web_exceptionsr   web_requestr   r   web_responser   r   r9   ra   rn   ry   r_   IterableBaserF   r   r   r   r   r,   r)   r&   <module>r      s        # ! +    "  "$-1,;??K?'?K.M2S 22. .b(3 ( I ,s  F3K(LL   56 E| E8!!3 !!H3 r)   