
    gL                     <    d dl Z d Zd Zd Zd Zd Zd Zd Zd	 Zy)
    Nc                        fd}|S )Nc                 B    D ]  }t        | |t        |              | S N)setattr_make_delegate_methodcls	attr_nameattrss     N/var/www/openai/venv/lib/python3.12/site-packages/aiofiles/threadpool/utils.pycls_builderz)delegate_to_executor.<locals>.cls_builder   s$    IC$9)$DE 
     r   r   s   ` r   delegate_to_executorr          
 r   c                        fd}|S )Nc                 B    D ]  }t        | |t        |              | S r   )r   _make_proxy_methodr   s     r   r   z*proxy_method_directly.<locals>.cls_builder   s$    IC$6y$AB 
r   r   r   s   ` r   proxy_method_directlyr      r   r   c                        fd}|S )Nc                 B    D ]  }t        | |t        |              | S r   )r   _make_proxy_propertyr   s     r   r   z,proxy_property_directly.<locals>.cls_builder   s$    IC$8$CD 
r   r   r   s   ` r   proxy_property_directlyr      r   r   c                        fd}|S )Nc                 B    D ]  }t        | |t        |              | S r   )r   _make_cond_delegate_methodr   s     r   r   z.cond_delegate_to_executor.<locals>.cls_builder    s$    IC$>y$IJ 
r   r   r   s   ` r   cond_delegate_to_executorr      r   r   c                       fd}|S )Nc                    K   t        j                  t        | j                        g|i |}| j                  j                  | j                  |       d {   S 7 wr   )	functoolspartialgetattr_file_looprun_in_executor	_executorselfargskwargscbr
   s       r   methodz%_make_delegate_method.<locals>.method)   sM     wtzz9=OOOZZ//CCCCs   AA!AA!r   r
   r-   s   ` r   r   r   (   s    D Mr   c                       fd}|S )Nc                 <     t        | j                        |i |S r   r#   r$   )r)   r*   r+   r
   s      r   r-   z"_make_proxy_method.<locals>.method1   s     -wtzz9-t>v>>r   r   r.   s   ` r   r   r   0   s    ? Mr   c                 $      fd}t        |      S )Nc                 0    t        | j                        S r   r1   )r)   r
   s    r   proxy_propertyz,_make_proxy_property.<locals>.proxy_property8   s    tzz9--r   )property)r
   r4   s   ` r   r   r   7   s    . N##r   c                       fd}|S )z>For spooled temp files, delegate only if rolled to file objectc                 *  K   | j                   j                  r[t        j                  t	        | j                         g|i |}| j
                  j                  | j                  |       d {   S  t	        | j                         |i |S 7  wr   )r$   _rolledr!   r"   r#   r%   r&   r'   r(   s       r   r-   z*_make_cond_delegate_method.<locals>.methodA   sz     ::""74::y#ASDSFSB33DNNBGGG174::y14B6BB Hs   A-B0B1!Br   r.   s   ` r   r   r   >   s    C Mr   )	r!   r   r   r   r   r   r   r   r   r   r   r   <module>r9      s0    $
r   