
    Mi9                    .   S SK Jr  S SKrS SKrS SKrS SKJr  S SKJr  S SKJ	r	  S SKJ
r
  \R                  " SS5      r\R                  r " S	 S
\	5      r\\
\\4   S4   r\
\\\4   r\\\\4   S4   rSS jr\R*                   S     SS jj5       rg)    )annotationsN)	Generator)MutableMapping)
NamedTuple)Union_UnsetUNSETc                  .    \ rS rSr% S\S'   SrS\S'   Srg)Var   strname default N)__name__
__module____qualname____firstlineno____annotations__r   __static_attributes__r       o/var/www/eduai.edurigo.com/storigo/production/storigo_env/lib/python3.13/site-packages/pre_commit/envcontext.pyr   r      s    
IGSr   r   .c                :   ^ SR                  U4S jU  5       5      $ )Nr   c              3     >#    U  HB  n[        U[        5      (       a&  TR                  UR                  UR                  5      OUv   MD     g 7fN)
isinstancer   getr   r   ).0partenvs     r   	<genexpr>format_env.<locals>.<genexpr>   s<      D -7tS,A,A		4<<(tKs   A
A)join)partsr!   s    `r   
format_envr&      s!    77   r   c              #    #    Uc  [         R                  OUn[        U5      nU  HJ  u  pEU[        L a  UR	                  US5        M"  [        U[        5      (       a  [        XS5      X$'   MF  XRU'   ML      Sv   UR                  5         UR                  U5        g! UR                  5         UR                  U5        f = f7f)a  In this context, `os.environ` is modified according to `patch`.

`patch` is an iterable of 2-tuples (key, value):
    `key`: string
    `value`:
        - string: `environ[key] == value` inside the context.
        - UNSET: `key not in environ` inside the context.
        - template: A template is a tuple of strings and Var which will be
          replaced with the previous environment
N)
osenvirondictr	   popr   tupler&   clearupdate)patch_envr!   beforekvs         r   
envcontextr4       s      "**$C#YF:GGAt5!!*CFF 		

6 			

6s   A1C 4B 8"C #B==C )r%   SubstitutionTr!   zMutableMapping[str, str]returnr   r   )r/   PatchesTr0   zMutableMapping[str, str] | Noner6   zGenerator[None])
__future__r   
contextlibenumr(   collections.abcr   r   typingr   r   Enumr   r	   r   r,   r   r5   ValueTr7   r&   contextmanagerr4   r   r   r   <module>r@      s    "   	 % *  	8W	%* 
 eCHos*+	sFM)	*sF{#S()  15-  r   