Ë
    ci§  ã                  óˆ   — U d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
  e
dd¬«      Zded	<    G d
„ d«      Z G d„ d«      Zy)é    )Úannotations)ÚCallableÚOptional)ÚExecutorÚas_completedÚFuture)Ú
ContextVarÚasync_compile_active_modeN)Údefaultz&ContextVar[Optional[AsyncCompileMode]]Úactive_modec                  ó   — e Zd Zdd„Zd„ Zy)ÚFutureKernelc                ó.   — || _         d | _        || _        y ©N)Úfinalize_compileÚkernelÚfuture)Úselfr   r   s      úW/var/www/html/engine/venv/lib/python3.12/site-packages/triton/runtime/_async_compile.pyÚ__init__zFutureKernel.__init__   s   € Ø 0ˆÔØˆŒØˆó    c                óš   — | j                   | j                   S | j                  j                  «       }| j                  |«       || _         |S r   )r   r   Úresultr   )r   r   s     r   r   zFutureKernel.result   sB   € Ø;‰;Ð"Ø—;‘;Ðà—‘×#Ñ#Ó%ˆØ×Ñ˜fÔ%ØˆŒØˆr   N)r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__r   r   © r   r   r   r   	   s   „ óó
r   r   c                  ó&   — e Zd Zdd„Zd„ Zd„ Zd„ Zy)ÚAsyncCompileModec                ó.   — || _         g | _        i | _        y r   )ÚexecutorÚraw_futuresÚfuture_kernels)r   r!   s     r   r   zAsyncCompileMode.__init__   s   € Ø ˆŒØˆÔØ ˆÕr   c                óô   — | j                   j                  |«      }||S | j                  j                  |«      }||_        | j
                  j                  |«       t        ||«      }|| j                   |<   |S r   )r#   Úgetr!   ÚsubmitÚ_keyr"   Úappendr   )r   ÚkeyÚ
compile_fnÚfinalize_fnr   Úfuture_kernels         r   r&   zAsyncCompileMode.submit!   st   € Ø×$Ñ$×(Ñ(¨Ó-ˆØÐØˆMà—‘×%Ñ% jÓ1ˆØˆŒØ×Ñ×Ñ Ô'Ü$ [°&Ó9ˆØ#0ˆ×Ñ˜CÑ ØÐr   c                ón   — t         j                  «       t        d«      ‚t         j                  | «       | S )Nz*Another AsyncCompileMode is already active)r   r%   ÚRuntimeErrorÚset)r   s    r   Ú	__enter__zAsyncCompileMode.__enter__-   s,   € Ü?‰?ÓÐ(ÜÐKÓLÐLÜ‰˜ÔØˆr   c                ó°   — t        | j                  «      D ])  }| j                  |j                     j	                  «        Œ+ t
        j                  d «       y r   )r   r"   r#   r'   r   r   r/   )r   Úexc_typeÚ	exc_valueÚ	tracebackr   s        r   Ú__exit__zAsyncCompileMode.__exit__3   sC   € ä" 4×#3Ñ#3Ó4ò 	6ˆFØ×Ñ §¡Ñ,×3Ñ3Õ5ð	6ä‰˜Õr   N)r!   r   )r   r   r   r   r&   r0   r5   r   r   r   r   r      s   „ ó!ò

òór   r   )Ú
__future__r   Útypingr   r   Úconcurrent.futuresr   r   r   Úcontextvarsr	   r   Ú__annotations__r   r   r   r   r   ú<module>r;      s<   ðÞ "ß %ß =Ñ =Ý "á6@ÐA\ÐfjÔ6k€Ð3Ó k÷ñ ÷"ò r   