
    c
                        d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
mZ d dlmZ  ed           G d	 d
                      ZdS )    )annotations)asdict	dataclass)warn)	MSG_TYPES)	UNDEFINED
Confidence)MessageLocationTupleT)unsafe_hashc                      e Zd ZU dZded<   ded<   ded<   ded<   ded<   ded	<   ded
<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ddZd dZed!d            ZdS )"Messagez=This class represent a message to be issued by the reporters.strmsg_idsymbolmsgCcategoryr	   
confidenceabspathpathmoduleobjintlinecolumnz
int | Noneend_line
end_columnlocation:tuple[str, str, str, str, int, int] | MessageLocationTupleConfidence | NonereturnNonec           
     "   t          |t                    sQt          dt          d           t          |d         |d         |d         |d         |d         |d         d d           }|| _        || _        || _        |d         | _        t          |d                  | _	        |pt          | _        |j        | _        |j        | _        |j        | _        |j        | _        |j        | _        |j        | _        |j        | _        |j        | _        d S )	NzUIn pylint 3.0, Messages will only accept a MessageLocationTuple as location parameter   )
stacklevelr               )
isinstancer
   r   DeprecationWarningr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )selfr   r   r   r   r   s         6lib/python3.11/site-packages/pylint/message/message.py__init__zMessage.__init__"   s    ($899 	g"   
 ,	 	H !&),$1	'M	o<M	o )"-    templatec                6     |j         di t          |           S )zFormat the message according to the given template.

        The template format is the one of the format method :
        cf. https://docs.python.org/2/library/string.html#formatstrings
         )formatr   )r,   r0   s     r-   r3   zMessage.formatJ   s"     x.....r/   r
   c           
     ~    t          | j        | j        | j        | j        | j        | j        | j        | j                  S )N)	r
   r   r   r   r   r   r   r   r   )r,   s    r-   r   zMessage.locationR   s<    #LIKHIKMO	
 	
 		
r/   N)r   r   r   r   r   r   r   r   r   r    r!   r"   )r0   r   r!   r   )r!   r
   )	__name__
__module____qualname____doc____annotations__r.   r3   propertyr   r2   r/   r-   r   r      s         GGKKKKKKHHH
FFFMMMLLLIIIKKKHHHIIIKKK&. &. &. &.P/ / / / 

 

 

 X

 

 

r/   r   N)
__future__r   dataclassesr   r   warningsr   pylint.constantsr   pylint.interfacesr   r	   pylint.typingr
   r   r2   r/   r-   <module>rA      s   
 # " " " " " ) ) ) ) ) ) ) )       & & & & & & 3 3 3 3 3 3 3 3 . . . . . . tM
 M
 M
 M
 M
 M
 M
 M
 M
 M
r/   