
    ia
                         S SK r S SKJrJr  S SKJrJr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	5      5       r\ " S
 S5      5       rg)    N)	dataclassfield)AnyCallableDictList)type_str)is_type_matching)QuotedString)HydraExceptionc                   D    \ rS rSr% \\S'   \\   \S'   \\\4   \S'   Sr	g)FunctionCall   nameargskwargs N)
__name__
__module____qualname____firstlineno__str__annotations__r   r   r   __static_attributes__r       `/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/hydra/_internal/grammar/functions.pyr   r      s    
I
s)OcNr   r   c                       \ rS rSr% \" \S9r\\\	R                  4   \S'   \" \S9r\\\S\4   4   \S'   S\S\S\4   SS	4S
 jrS\S\4S jrSrg	)	Functions   )default_factorydefinitions.	functionsr   funcreturnNc                     XR                   ;   a  [        SU S35      e[        R                  " U5      U R                   U'   X R                  U'   g )NzFunction named 'z' is already registered)r!   r   inspect	signaturer"   )selfr   r#   s      r   registerFunctions.register   sK    ### #3D69P!QRR!(!2!24!8#tr   c                    UR                   U R                  ;  aL  [        SUR                    SSR                  [	        U R                  R                  5       5      5       S35      eU R                  UR                      n/ nUR                   H5  n[        U[        5      (       a  UR                  nUR                  U5        M7     0 nUR                  R                  5        H*  u  pg[        U[        5      (       a  UR                  nXuU'   M,     UR                  " U0 UD6n[        UR                  R                  5       5       H  u  pUS   n
US   nUR                   U
   R"                  nUR                   U
   R$                  [&        R(                  R*                  :X  aX  [        U5       HG  u  p[-        X5      (       a  M  [/        SU
 SU S	[1        [3        U5      5       S
[1        U5       35      e   M  [-        X5      (       a  M  [/        SU
 S[1        [3        U5      5       S
[1        U5       35      e   U R4                  UR                      " UR                  0 UR                  D6$ )NzUnknown function 'z'
Available: ,
r      zmismatch type argument [z]: z is incompatible with z: )r   r!   r   joinsortedkeysr   
isinstancer   textappendr   itemsbind	enumerate	arguments
parameters
annotationkindr&   	ParameterVAR_POSITIONALr
   	TypeErrorr	   typer"   )r(   r#   sigr   argr   keyvalboundidxr   valueexpected_typeiidxvs                  r   evalFunctions.eval    s1   99D,,, $TYYK 0  #0@0@0E0E0G)H IJ"N  tyy) 99C#|,,hhKK  ))+HC#|,,hh3K ,
 $)&)!%//"7"7"9:HCq6DFENN40;;M~~d#((G,=,=,L,LL(/GD+A=='5dV1TF C  (a 122HR_I`Hac   0 (==#1$ 8$T%[122HR_I`Hac  ;& ~~dii(%**EEEr   r   )r   r   r   r   r   dictr!   r   r   r&   	Signaturer   r"   r   r   r)   r   rK   r   r   r   r   r   r      s|    05d0KKc7,,,-K/4T/JItC#s(++,J$S $c(: $t $+F +F# +Fr   r   )r&   dataclassesr   r   typingr   r   r   r   omegaconf._utilsr	   hydra._internal.grammar.utilsr
    hydra.core.override_parser.typesr   hydra.errorsr   r   r   r   r   r   <module>rU      sR     ( , , % : 9 '    6F 6F 6Fr   