
    wg                     H    d dl mZ ddlmZ  G d de      Z G d de      Zy)	   )TritonError    )Optionalc                   ,    e Zd Zddee   fdZdefdZy)InterpreterErrorNerror_messagec                     || _         y Nr   )selfr   s     Z/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/triton/runtime/errors.py__init__zInterpreterError.__init__   s
    *    returnc                 "    | j                   xs dS )N r   r   s    r   __str__zInterpreterError.__str__
   s    !!'R'r   r
   )__name__
__module____qualname__r   strr   r    r   r   r   r      s    +hsm +( (r   r   c                   $    e Zd Zd ZdefdZd Zy)OutOfResourcesc                 .    || _         || _        || _        y r
   )requiredlimitname)r   r   r   r   s       r   r   zOutOfResources.__init__   s     
	r   r   c                 V    d| j                    d| j                   d| j                   dS )Nzout of resource: z, Required: z, Hardware limit: z0. Reducing block sizes or `num_stages` may help.)r   r   r   r   s    r   r   zOutOfResources.__str__   s9    "499+\$--HZ[_[e[eZf  gW  X  	Xr   c                 ^    t        |       | j                  | j                  | j                  ffS r
   )typer   r   r   r   s    r   
__reduce__zOutOfResources.__reduce__   s$    T
T]]DJJ		BCCr   N)r   r   r   r   r   r   r#   r   r   r   r   r      s    
X XDr   r   N)errorsr   typingr   r   r   r   r   r   <module>r&      s%      ({ (D[ Dr   