
    k7i
                         S SK r S SKJr  S SKJrJr  S SKJrJrJ	r	  \(       a  S SK
Jr  S\S\4S jr\ " S	 S
5      5       rg)    N)TYPE_CHECKING)definefield)ArgumentArgumentCollectionToken)Appsreturnc                     U R                  5       R                  SS5      R                  SS5      R                  S5      $ )N-_.)upperreplacelstrip)r
   s    N/home/james-whalen/.local/lib/python3.13/site-packages/cyclopts/config/_env.py
_transformr      s3    779S#&..sC8??DD    c                       \ rS rSr% Sr\\S'   \" SSS9r\\S'   \" SSS9r	\
\S'   \" SSS9r\
\S	'   S
\\S4   S\4S jrS
\\S4   S\S\4S jrSSS
\\S4   S\4S jrSrg)Env    prefixenvT)defaultkw_onlysourcecommandshowcommands.r   c                     U R                   nU R                  (       a%  U(       a  USR                  S U 5       5      S-   -  nU$ )Nr   c              3   @   #    U  H  oR                  5       v   M     g 7fN)r   .0xs     r   	<genexpr>Env._prefix.<locals>.<genexpr>   s     ;(Qwwyy(   )r   r   join)selfr!   r   s      r   _prefixEnv._prefix   s7    <<Hchh;(;;cAAFr   argumentc                 P    U R                  U5      [        UR                  5      -   $ )zZFor generating environment variable names for the help-page.

Internal Cyclopts use only.
)r-   r   name)r,   r!   r/   s      r   _convert_argumentEnv._convert_argument   s!    
 ||H%
8==(AAAr   appr	   	argumentsc           
         [        5       nU R                  U5      n[        R                   Vs/ s H  ofR	                  U5      (       d  M  UPM     nnUR                  5         SnU H  n	 UR                  U	[        U5      S  [        US9u  pn[        U
R                  5      U-
  (       a  MG  U
R                  (       d  U(       a  UR                  U5      4n[        S U 5       5      n[        U
R                  [        R                  U	   5      5       H<  u  p[!        XU R"                  XS9nU
R%                  U5        UR'                  U5        M>     M     g s  snf ! [         a     GM  f = f)Nr   )	transform	delimiterc              3   @   #    U  H  oR                  5       v   M     g 7fr$   )lowerr%   s     r   r(   Env.__call__.<locals>.<genexpr>A   s     "En7799nr*   )keywordvaluer   indexkeys)setr-   osenviron
startswithsortmatchlenr   
ValueErrortokenschildrenr+   tuple	enumerateenv_var_splitr   r   appendadd)r,   r4   r!   r5   added_tokensr   r'   candidate_env_keysr8   candidate_env_keyr/   remaining_keysr   ir=   tokens                   r   __call__Env.__call__%   s9   uh')+LA||F7KaL!	!3.7oo%c&km4(' /> /+! 8??#l2 $$"+.."@!B""En"EEN%h&<&<RZZHY=Z&[\&7T[[`aw&  ' ]+ "4 M  s   EE+$E
E.-E. N)__name__
__module____qualname____firstlineno__r   str__annotations__r   r   r   boolr    rJ   r-   r   r2   r   rU   __static_attributes__rW   r   r   r   r      s    FCt4FC4$5GT5tT2D$2c3h C B%S/ BX BRU B (E  (U38_  (I[  (r   r   )rA   typingr   attrsr   r   cyclopts.argumentr   r   r   cyclopts.corer	   r\   r   r   rW   r   r   <module>rd      sI    	    A A!E# E# E 4( 4( 4(r   