
    ,h                        d dl mZ d dlZd dlmZ d dlmZmZ ej                  dk\  rd dlm	Z	 nd dl
m	Z	 d dlmZ  e	d      Z G d	 d
ee         Z G d d      Zy)    )annotationsN)Iterator)AnyProtocol)   
   )	ParamSpec)ASGIAppPc                      e Zd ZddZy)_MiddlewareFactoryc                    y N )selfappargskwargss       _/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/starlette/middleware/__init__.py__call__z_MiddlewareFactory.__call__   s        N)r   r
   r   P.argsr   P.kwargsreturnr
   )__name__
__module____qualname__r   r   r   r   r   r      s    Zr   r   c                  4    e Zd Z	 	 	 	 	 	 	 	 ddZddZddZy)
Middlewarec                .    || _         || _        || _        y r   )clsr   r   )r   r!   r   r   s       r   __init__zMiddleware.__init__   s     	r   c                ^    | j                   | j                  | j                  f}t        |      S r   )r!   r   r   iter)r   as_tuples     r   __iter__zMiddleware.__iter__    s$    HHdii5H~r   c                H   | j                   j                  }| j                  D cg c]  }| }}| j                  j	                         D cg c]  \  }}| d| }}}t        | j                  dd      }dj                  |g|z   |z         }| d| dS c c}w c c}}w )N=r    z, ())	__class__r   r   r   itemsgetattrr!   join)r   
class_namevalueargs_stringskeyoption_stringsname	args_reprs           r   __repr__zMiddleware.__repr__$   s    ^^,,
26))<5)<<?C{{?P?P?RSeSE5),SStxxR0IItf|3nDE	Qyk++	 =Ss   
BBN)r!   z_MiddlewareFactory[P]r   r   r   r   r   None)r   zIterator[Any])r   str)r   r   r   r"   r&   r7   r   r   r   r   r      s7    "  	
 
,r   r   )
__future__r   syscollections.abcr   typingr   r   version_infor	   typing_extensionsstarlette.typesr
   r   r   r   r   r   r   <module>rA      sM    " 
 $  w + #cN[! [, ,r   