
    i                         S SK r S SKJrJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJr  S\4S	 jrS
\S\4S jr " S S5      r " S S5      r " S S5      rg)    N)AnyOptional)version)deprecation_warning)GlobalHydra)	Singleton)_UNSPECIFIED_returnc                      [         [        R                  ;   a+  [        R                  " [        R                  [            5      $ g N)r   r   
_instancescopydeepcopy     \/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/hydra/experimental/initialize.pyget_gh_backupr      s-    i***}}Y11+>??r   
_gh_backupc                 d    U c  [         R                  [        	 g U [         R                  [        '   g r   )r   r   r   )r   s    r   restore_gh_from_backupr      s&      -,6	[)r   c            	           \ rS rSr\SS4S\\   S\\   S\SS4S jjrS	\	S
\	SS4S jr
S\	S\	S\	SS4S jrS\4S jrSrg)
initialize   N   config_pathjob_namecaller_stack_depthr
   c                     SSK Jn  Sn[        R                  " S5      (       a  [	        U5      e[        US9  U" UUUS-   S9U l        g )Nr   )r   zQhydra.experimental.initialize() is no longer experimental. Use hydra.initialize()1.2messager   )r   r   r   )hydrar   r   base_at_leastImportErrorr   delegate)selfr   r   r   real_initializer!   s         r   __init__initialize.__init__   sQ     	8% 	
   ''g&&G,'#1A5
r   argskwargsc                 <    U R                   R                  " U0 UD6  g r   r%   	__enter__r&   r*   r+   s      r   r.   initialize.__enter__3       00r   exc_typeexc_valexc_tbc                 <    U R                   R                  XU5        g r   r%   __exit__r&   r2   r3   r4   s       r   r7   initialize.__exit__6       x&9r   c                     g)Nzhydra.experimental.initialize()r   r&   s    r   __repr__initialize.__repr__9   s    0r   r%   )__name__
__module____qualname____firstlineno__r	   r   strintr(   r   r.   r7   r=   __static_attributes__r   r   r   r   r      s     &3"&"#	
c]
 3-
  	

 

01s 1c 1d 1: :s :C :D :1# 1r   r   c                   p    \ rS rSrSrSS\S\SS4S jjrS\S	\SS4S
 jrS\S\S\SS4S jr	S\4S jr
Srg)initialize_config_module=   a#  
Initializes Hydra and add the config_module to the config search path.
The config module must be importable (an __init__.py must exist at its top level)
:param config_module: absolute module name, for example "foo.bar.conf".
:param job_name: the value for hydra.job.name (default is 'app')
config_moduler   r
   Nc                     SSK Jn  Sn[        R                  " S5      (       a  [	        U5      e[        US9  U" XS9U l        g )Nr   )rH   znhydra.experimental.initialize_config_module() is no longer experimental. Use hydra.initialize_config_module().r   r    )rJ   r   )r"   rH   r   r#   r$   r   r%   )r&   rJ   r   real_initialize_config_moduler!   s        r   r(   !initialize_config_module.__init__E   sD    S4 	
   ''g&&G,5'
r   r*   r+   c                 <    U R                   R                  " U0 UD6  g r   r-   r/   s      r   r.   "initialize_config_module.__enter__V   r1   r   r2   r3   r4   c                 <    U R                   R                  XU5        g r   r6   r8   s       r   r7   !initialize_config_module.__exit__Y   r:   r   c                     g)Nz-hydra.experimental.initialize_config_module()r   r<   s    r   r=   !initialize_config_module.__repr__\   s    >r   r?   appr@   rA   rB   rC   __doc__rD   r(   r   r.   r7   r=   rF   r   r   r   rH   rH   =   sh    
c 
S 
T 
"1s 1c 1d 1: :s :C :D :?# ?r   rH   c                   p    \ rS rSrSrSS\S\SS4S jjrS\S	\SS4S
 jrS\S\S\SS4S jr	S\4S jr
Srg)initialize_config_dir`   a>  
Initializes Hydra and add an absolute config dir to the to the config search path.
The config_dir is always a path on the file system and is must be an absolute path.
Relative paths will result in an error.
:param config_dir: absolute file system path
:param job_name: the value for hydra.job.name (default is 'app')

config_dirr   r
   Nc                     SSK Jn  Sn[        R                  " S5      (       a  [	        U5      e[        US9  U" XS9U l        g )Nr   )rY   zhhydra.experimental.initialize_config_dir() is no longer experimental. Use hydra.initialize_config_dir().r   r    )r[   r   )r"   rY   r   r#   r$   r   r%   )r&   r[   r   real_initialize_config_dirr!   s        r   r(   initialize_config_dir.__init__i   sD    M1 	
   ''g&&G,2!
r   r*   r+   c                 <    U R                   R                  " U0 UD6  g r   r-   r/   s      r   r.   initialize_config_dir.__enter__z   r1   r   r2   r3   r4   c                 <    U R                   R                  XU5        g r   r6   r8   s       r   r7   initialize_config_dir.__exit__}   r:   r   c                     g)Nz*hydra.experimental.initialize_config_dir()r   r<   s    r   r=   initialize_config_dir.__repr__   s    ;r   r?   rT   rV   r   r   r   rY   rY   `   sh    
3 
# 
$ 
"1s 1c 1d 1: :s :C :D :<# <r   rY   )r   typingr   r   r"   r   #hydra._internal.deprecation_warningr   hydra.core.global_hydrar   hydra.core.singletonr   hydra.initializer	   r   r   r   rH   rY   r   r   r   <module>rj      sY        C / * *s 7s 7s 7 1  1F ?  ?F!< !<r   