Ë
    7^(hB  ã                   óT   — d dl mZ ddlmZ d dlmZ  G d„ d«      Zdedd	fd
„Z	dd„Z
y	)é    )Úprotoné   )Úget_profiling_on©Úwrapsc                   ó4   — e Zd ZdZdeddfd„Zd„ Zd	d„Zd„ Zy)
Ú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                 ó   — || _         y ©N©r
   )Úselfr
   s     úS/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/triton/profiler/state.pyÚ__init__zstate.__init__   s	   € Øˆ�	ó    c                 ó\   — t        «       s| S t        j                  | j                  «       | S r   )r   Ú	libprotonÚenter_stater
   )r   s    r   Ú	__enter__zstate.__enter__   s$   € ÜÔ!ØˆKÜ×Ñ˜dŸi™iÔ(Øˆr   c                 óB   — t        «       sy t        j                  «        y r   )r   r   Ú
exit_state)r   Úexc_typeÚ	exc_valueÚ	tracebacks       r   Ú__exit__zstate.__exit__%   s   € ÜÔ!ØÜ×ÑÕr   c                 ó2   ‡ ‡— t        ‰«      ˆˆ fd„«       }|S )Nc                  ó¦   •— t        «       rt        j                  ‰j                  «        ‰| i |¤Ž}t        «       rt        j                  «        |S r   )r   r   r   r
   r   )ÚargsÚkwargsÚretÚfuncr   s      €€r   Úwrapperzstate.__call__.<locals>.wrapper,   sA   ø€ äÔ!Ü×%Ñ% d§i¡iÔ0Ù˜Ð' Ñ'ˆCÜÔ!Ü×$Ñ$Ô&ØˆJr   r   )r   r"   r#   s   `` r   Ú__call__zstate.__call__*   s    ù€ ä	ˆt‹ô	ó 
ð	ð ˆr   ©r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   r   r$   © r   r   r	   r	      s)   „ ñð*˜Sð  Tó òóó
r   r	   r
   r   Nc                 ó.   — t        j                  | «       y r   )r   r   r   s    r   r   r   8   s   € Ü×Ñ˜$Õr   c                  ó,   — t        j                  «        y r   )r   r   r+   r   r   r   r   <   s   € Ü×ÑÕr   r%   )Útriton._C.libprotonr   r   Úflagsr   Ú	functoolsr   r	   r*   r   r   r+   r   r   ú<module>r1      s1   ðÝ 3Ý #Ý ÷/ñ /ðd �cð  ˜dó  ôr   