
    çg                     z    d dl Z d dlmZ ddlmZ  G d de          Z G d de          Z G d	 d
e          ZdS )    N)Optional   )TritonErrorc                   f    e Zd ZdZdZdefdZddee         dej	        dee         fd	Z
d
 Zd ZdS )CompilationErrorz3Base class for all errors raised during compilation   returnc                    | j         }| j        d}nt          |d          rp| j                            d          d |j                 | j         d          }|r6|                    d|j        z  dz              d                    |          }n
d}n| j        }t          |d          r!d	                    |j        |j        |          n|}| j
        r|d| j
        z   z  }|S )Nz <source unavailable>lineno
 ^z <source empty>zat {}:{}:
{})nodesrchasattrsplitr    source_line_count_max_in_messageappend
col_offsetjoinformaterror_message)selfr   source_excerptmessages       R/var/www/html/ai-engine/env/lib/python3.11/site-packages/triton/compiler/errors.py_format_messagez CompilationError._format_message
   s    y84NNtX&& *!%!5!5lt{l!CTEjDjDkDk!l! 7"))#*?#*EFFF%)YY~%>%>NN%6NN!%Za([ [ 0/((do~VVV!/ 	 	1td000G    Nr   r   r   c                 b    || _         || _        || _        |                                 | _        d S N)r   r   r   r   r   )r   r   r   r   s       r   __init__zCompilationError.__init__   s/    	*++--r   c                     | j         S r    )r   r   s    r   __str__zCompilationError.__str__%   s
    |r   c                 H    t          |           | j        | j        | j        ffS r    )typer   r   r   r#   s    r   
__reduce__zCompilationError.__reduce__(   s!    DzzDHdi1CDDDr   r    )__name__
__module____qualname____doc__r   strr   r   astASTr!   r$   r'    r   r   r   r      s        ==')$    *. .HSM . .RU . . . .  E E E E Er   r   c                       e Zd ZdZdS )CompileTimeAssertionFailurezBSpecific exception for failed tests in `static_assert` invocationsN)r(   r)   r*   r+   r/   r   r   r1   r1   -   s        LLDr   r1   c                       e Zd ZdS )UnsupportedLanguageConstructN)r(   r)   r*   r/   r   r   r3   r3   2   s        Dr   r3   )r-   typingr   errorsr   r   r1   r3   r/   r   r   <module>r6      s    



                  $E $E $E $E $E{ $E $E $EN	 	 	 	 	"2 	 	 	
	 	 	 	 	#3 	 	 	 	 	r   