
    s<g	              
          d dl Z d dlZd dlmZ d dlmZ ddlmZ ddlmZ  ej                  d      Z
d Zeeeeeee ed      hZd	ej*                  ej,                  d   df   d
dfdZ	 	 	 	 ddZd	dd
ej2                  d   fdZy)    N)WRAPPER_ASSIGNMENTS)wraps   )_PassArg)pass_eval_contextVc                       fd}|S )Nc                     t        j                        }|d u |t         j                  u rdt        j                  dt
        fdndt        j                  dt
        fdd}t        t        t              j                  |            }t        |      t         |d       fd	              }rt        |      }d
|_        |S )Nargsreturnc                 P    t        j                  t        | d   j                        S Nr   )tcastboolis_asyncr   s    P/home/kevstigneev/proxy/myenv/lib/python3.12/site-packages/jinja2/async_utils.pyr   z2async_variant.<locals>.decorator.<locals>.is_async   s    vvdDG$4$455    c                 d    t        j                  t        | d   j                  j                        S r   )r   r   r   environmentr   r   s    r   r   z2async_variant.<locals>.decorator.<locals>.is_async   s#    vvdDG$7$7$@$@AAr   )
__module____name____qualname__)assigned )r   updatedc                  F     |       }r| dd  } |r | i |S  | i |S )Nr   r   )r   kwargsb
async_funcr   need_eval_contextnormal_funcs      r   wrapperz1async_variant.<locals>.decorator.<locals>.wrapper"   s?     A ABx!42622///r   T)r   from_objr   r   Anyr   tuplesetr   
differencer   r   jinja_async_variant)r!   pass_argasync_func_attrsnormal_func_attrsr$   r   r"   r#   s   `    @@r   	decoratorz async_variant.<locals>.decorator   s    $$[1$,x+++6quu 6 6
Bquu B B F!#&9":"E"EFV"WX	{%6	7	z$4b	A		0 
B 
8		0 '0G&*#r   r   )r#   r.   s   ` r   async_variantr/      s    &P r   valuer   c                    K   t        |       t        v rt        j                  d|       S t	        j
                  |       rt        j                  d|        d {   S t        j                  d|       S 7 w)Nr   zt.Awaitable[V])type_common_primitivesr   r   inspectisawaitable)r0   s    r   
auto_awaitr6   ;   s]     E{((vvc5!!5!VV,e44466#u 5s   AA5A3A5*t.Union[t.AsyncIterable[V], t.Iterable[V]]c                   K   t        | d      r%t        j                  d|       2 3 d {   }| | D ]  }| 	 y 7 6 y w)N	__aiter__zt.AsyncIterable[V])hasattrr   r   )iterableitems     r   
auto_aiterr=   F   sO      x%&&!5x@ 	 	$J 	DJ		@s%   #AAAAAAAc                 V   K   t        |       2 cg c3 d {   }|7 6 c}S c c}w w)N)r=   )r0   xs     r   auto_to_listr@   Q   s(      (.//A////s$   )$ 
 $ $))r;   r7   r   zt.AsyncIterator[V])r4   typingr   	functoolsr   r   utilsr   r   TypeVarr   r/   intfloatr   strlistdictr'   r2   r3   Union	Awaitabler6   r=   Listr@   r   r   r   <module>rM      s      )   $AIIcN)X 5$T4T
K AGGAKK$4c$9: s :070VVC[0r   