§
    ƒÛgg  ã                   óT   — d dl Z d dlZd dlmZ  G d„ dej        ¦  «        Zd„ Zd„ ZdS )é    N)Ú_dynfuncc                   ób   — e Zd ZdZdZ ej        ¦   «         Zed„ ¦   «         Z	d„ Z
d„ Zd„ Zd„ ZdS )	ÚEnvironmentz~Stores globals and constant pyobjects for runtime.

    It is often needed to convert b/w nopython objects and pyobjects.
    )Úenv_nameÚ__weakref__c                 ó¼   — 	 | j         |j                 S # t          $ r=  | |                     ¦   «         ¦  «        }|j        |_        || j         |j        <   |cY S w xY w©N)Ú_memor   ÚKeyErrorÚlookup_globals)ÚclsÚfndescÚinsts      úL/granary/edev/quantum/lib/python3.11/site-packages/numba/core/environment.pyÚfrom_fndesczEnvironment.from_fndesc   sl   € ð	à”9˜Vœ_Ô-Ð-øÝð 	ð 	ð 	Ø�3�v×,Ò,Ñ.Ô.Ñ/Ô/ˆDØ"œOˆDŒMØ)-ˆCŒI�f”oÑ&ØˆKˆKˆKð		øøøs   ‚ ”AAÁAc                 ó   — d| j         v}| S ©NÚ__name__)Úglobals)ÚselfÚis_dyns     r   Ú	can_cachezEnvironment.can_cache   s   € Ø 4¤<Ð/ˆØˆzÐó    c                 ó^   — t           | j                             d¦  «        | j        | j        ffS r   )Ú_rebuild_envr   ÚgetÚconstsr   ©r   s    r   Ú
__reduce__zEnvironment.__reduce__    s1   € ÝØŒL×Ò˜ZÑ(Ô(ØŒKØŒMð
ð 
ð 	
r   c                 ó   — d S r	   © r   s    r   Ú__del__zEnvironment.__del__'   s   € Øˆr   c                 ó   — d| j         ›d�S )Nz<Environment z >©r   r   s    r   Ú__repr__zEnvironment.__repr__*   s   € Ø2˜tœ}Ð2Ð2Ð2Ð2r   N)r   Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__ÚweakrefÚWeakValueDictionaryr
   Úclassmethodr   r   r   r"   r%   r!   r   r   r   r      sŒ   € € € € € ðð ð ,€Ið (ˆGÔ'Ñ)Ô)€Eàðð ñ „[ððð ð ð
ð 
ð 
ðð ð ð3ð 3ð 3ð 3ð 3r   r   c                 óÀ   — t          |¦  «        }|�|S t          j        | ¦  «        }t          |j        ¦  «        }||j        d d …<   ||_        |t          j        |<   |S r	   )Úlookup_environmentÚ	importlibÚimport_moduler   Ú__dict__r   r   r
   )Úmodnamer   r   ÚenvÚmods        r   r   r   .   s`   € Ý
˜XÑ
&Ô
&€CØ
€Øˆ
å
Ô
! 'Ñ
*Ô
*€CÝ
�c”lÑ
#Ô
#€CØ€C„Jˆqˆqˆq�MØ€C„Là"%…KÔ�hÑØ€Jr   c                 ó@   — t           j                             | ¦  «        S )zPReturns the Environment object for the given name;
    or None if not found
    )r   r
   r   r$   s    r   r.   r.   <   s   € õ Ô× Ò  Ñ*Ô*Ð*r   )r*   r/   Únumbar   r   r   r.   r!   r   r   ú<module>r7      s‚   ðØ €€€Ø Ð Ð Ð à Ð Ð Ð Ð Ð ð$3ð $3ð $3ð $3ð $3�(Ô&ñ $3ô $3ð $3ðNð ð ð+ð +ð +ð +ð +r   