
    sg                        U d Z ddlZddlZddlmZmZmZ ddlZ G d d      Z e       Z	d Z
d Zej                  j                         Zi Zeee   ee   f   ed<   i Zeeee   f   ed	<   d
 Zd Zd Zd Z ej.                         Zej.                  ed<    ej.                         Zej.                  ed<   d Zd Zd Zd Zy)zJIT-related state.

This module stores various pieces of Python-global state relating to the JIT.

This is not intended to be imported directly; please the exposed
functionalities in `torch.jit`.
    N)AnyDictTypec                   $    e Zd ZdZddZd Zd Zy)EnabledProxyzyStores whether the JIT is enabled or not.

    This is just a wrapper for a bool, so that we get reference semantics
    Nc                 6    | j                  dddd      | _        y )NPYTORCH_JITTz> Using PyTorch JITz> PyTorch JIT DISABLED)	parse_envenabledselfs    C/var/www/html/venv/lib/python3.12/site-packages/torch/jit/_state.py__init__zEnabledProxy.__init__   s    ~~4!68P
    c                     t         j                  j                  |      }||S |j                         dv ry|j                         dv ry|dk(  rt	        |       y|dk(  rt	        |       yt        d| d      )	N>   1yestrueT>   0nofalseF1v0vzUnknown setting of z. Try using 0 or 1.)osenvirongetlowerprint
ValueError)r   namedefaulttrue_messagefalse_messagevalues         r   r
   zEnabledProxy.parse_env   s|    

t$=N;;=00[[]22D=,d]- .tf4GHIIr   c                     | j                   S N)r   r   s    r   __bool__zEnabledProxy.__bool__+   s    ||r   )returnN)__name__
__module____qualname____doc__r   r
   r'    r   r   r   r      s    


J r   r   c                      dt         _        y )NF_enabledr   r-   r   r   disabler1   2   s
    Hr   c                      dt         _        y )NTr/   r-   r   r   enabler3   6   s
    Hr   _script_classes_name_to_pyclassc                 D    |t         | <   | t        |j                         <   y r&   )r4   r5   qualified_name)python_classscript_classs     r   _add_script_classr:   E   s     $0OL!6B\0023r   c                 b    t        | dd       }|t        |      } t        j                  | d       S )N_jit_override_qualname)getattr_get_python_classr4   r   )r8   overrides     r   _get_script_classr@   J   s4    |%=tDH(2|T22r   c                 .    t         j                  | d       S r&   )r5   r   )r7   s    r   r>   r>   Q   s    55r   c                  T    t         j                          t        j                          y r&   )r4   clearr5   r-   r   r   _clear_class_staterD   U   s    r   _jit_caching_layer_jit_function_overload_cachingc                     t         j                  | d       }|r#|D cg c]  }t        j                  |       c}S y c c}w r&   )rF   r   
_python_cufind_function)key
qual_names	qual_names      r   _try_get_jit_cached_overloadsrM   f   s<    /33C>JEOP	
((3PP Qs   =c                 P    |D cg c]  }|j                    c}t        | <   y c c}w r&   )r7   rF   )rJ   compiled_fnsfns      r   _set_jit_overload_cacherQ   n   s!    GS*T2+<+<*T"3'*Ts   #c                 ~    t        | dd      du ry t        j                  | d       }|rt        j	                  |      S y )N __disable_jit_function_caching__FT)r=   rE   r   rH   rI   )rJ   rL   s     r   _try_get_jit_cached_functionrT   r   s@    s6>$F"&&sD1I''	22r   c                 v    t        |t        j                  j                        sJ |j                  t
        | <   y r&   )
isinstancetorchjitScriptFunctionr7   rE   )rJ   r$   s     r   _set_jit_function_cacherZ   |   s-    eUYY55666#22sr   )r,   r   weakreftypingr   r   r   rW   r   r0   r1   r3   _CCompilationUnitrH   r4   __annotations__r5   strr:   r@   r>   rD   WeakKeyDictionaryrE   rF   rM   rQ   rT   rZ   r-   r   r   <module>rb      s    
  " "  > > XX%%'
 /1d3ic*+ 0)+ $sDI~& +C
36 1J0I0I0K G-- K<UG<U<U<W  9 9 WU3r   