§
    ÕóÉjü  ã                   ó¢   — d dl mZ d dlmZ ddlmZ ej        Zej        Z	 G d„ d¦  «        Z
 G d„ de
¦  «        Zd	ed
dfd„Zdd„Zdd
efd„ZdS )é    ©Úwraps)Úprotoné   )Úflagsc                   ó6   — e Zd ZdZdeddfd„Zd„ Zd	d„Zd„ ZdS )
Ústateaz  
    A context manager and decorator for entering and exiting a state.

    Usage:
        context manager:
        ```python
        with proton.state("test0"):
            foo[1,](x, y)
        ```

        decorator:
        ```python
        @proton.state("test0")
        def foo(x, y):
            ...
        ```

    Args:
        name (str): The name of the state.
    ÚnameÚreturnNc                 ó   — || _         d S ©N©r
   )Úselfr
   s     úz/home/lighthouse/badge-speaker-benchmark/.benchmark-venv-community/lib64/python3.11/site-packages/triton/profiler/state.pyÚ__init__zstate.__init__    s   € ØˆŒ	ˆ	ˆ	ó    c                 óT   — t           j        s| S t          j        | j        ¦  «         | S r   )r   Úprofiling_onÚ	libprotonÚenter_stater
   )r   s    r   Ú	__enter__zstate.__enter__#   s*   € ÝÔ!ð 	ØˆKÝÔ˜dœiÑ(Ô(Ð(Øˆr   c                 óH   — t           j        sd S t          j        ¦   «          d S r   )r   r   r   Ú
exit_state)r   Úexc_typeÚ	exc_valueÚ	tracebacks       r   Ú__exit__zstate.__exit__)   s'   € ÝÔ!ð 	ØˆFÝÔÑÔÐÐÐr   c                 ó@   ‡ ‡— t          ‰¦  «        ˆˆ fd„¦   «         }|S )Nc                  ó    •— t           j        rt          j        ‰j        ¦  «          ‰| i |¤Ž}t           j        rt          j        ¦   «          |S r   )r   r   r   r   r
   r   )ÚargsÚkwargsÚretÚfuncr   s      €€r   Úwrapperzstate.__call__.<locals>.wrapper0   sT   ø€ åÔ!ð 1ÝÔ% d¤iÑ0Ô0Ð0Ø�$˜Ð' Ð'Ð'ˆCÝÔ!ð 'ÝÔ$Ñ&Ô&Ð&ØˆJr   r   )r   r#   r$   s   `` r   Ú__call__zstate.__call__.   s9   øø€ å	ˆt‰Œð	ð 	ð 	ð 	ð 	ñ 
Œð	ð ˆr   ©r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   r   r%   © r   r   r	   r	   
   sr   € € € € € ðð ð*˜Sð  Tð ð ð ð ðð ð ðð ð ð ð
ð ð ð ð r   r	   c                   ó"   ‡ — e Zd Zddˆ fd„Zˆ xZS )Úmetadata_stateNr   c                 ód   •— t          ¦   «                              t          |¦  «        ¦  «         d S r   )Úsuperr   Úget_metadata_state_name)r   Úkernel_nameÚ	__class__s     €r   r   zmetadata_state.__init__>   s*   ø€ Ý‰Œ×ÒÕ0°Ñ=Ô=Ñ>Ô>Ð>Ð>Ð>r   r   r&   )r'   r(   r)   r   Ú__classcell__)r3   s   @r   r.   r.   <   sB   ø€ € € € € ð?ð ?ð ?ð ?ð ?ð ?ð ?ð ?ð ?ð ?ð ?r   r.   r
   r   Nc                 ó.   — t          j        | ¦  «         d S r   )r   r   r   s    r   r   r   B   s   € ÝÔ˜$ÑÔÐÐÐr   c                  ó,   — t          j        ¦   «          d S r   )r   r   r,   r   r   r   r   F   s   € ÝÔÑÔÐÐÐr   c                 ó*   — | st           S t          › | › �S r   )ÚCOMPUTE_METADATA_SCOPE_NAMEÚCOMPUTE_METADATA_SCOPE_PREFIX)r2   s    r   r1   r1   J   s!   € Øð +Ý*Ð*Ý+Ð:¨[Ð:Ð:Ð:r   r&   r   )Ú	functoolsr   Útriton._C.libprotonr   r   r   Úmetadata_scope_namer8   Úmetadata_scope_prefixr9   r	   r.   r+   r   r   r1   r,   r   r   ú<module>r>      s   ðØ Ð Ð Ð Ð Ð à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø Ð Ð Ð Ð Ð à'Ô;Ð Ø )Ô ?Ð ð/ð /ð /ð /ð /ñ /ô /ð /ðd?ð ?ð ?ð ?ð ?�Uñ ?ô ?ð ?ð �cð  ˜dð  ð  ð  ð  ðð ð ð ð;ð ;°ð ;ð ;ð ;ð ;ð ;ð ;r   