§
    ÷yIf˜0  ã                  óü   — d dl mZ d dlmZmZmZ d dlmZ  G d„ de¦  «        Z G d„ de¦  «        Z	 G d„ d	e¦  «        Z
 G d
„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ d¦  «        Zdd„ZdS )é    )Úannotations)ÚLiteralÚ	TypedDictÚcast)ÚMessageTypesFullNamec                  ó–   — 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S )ÚBadNamesz7TypedDict to store counts of node types with bad names.ÚintÚargumentÚattrÚklassÚclass_attributeÚclass_constÚconstÚ	inlinevarÚfunctionÚmethodÚmoduleÚvariableÚtypevarÚ	typealiasN©Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__© ó    úL/var/www/piapp/venv/lib/python3.11/site-packages/pylint/utils/linterstats.pyr	   r	      s‘   € € € € € € ØAÐAà€M€M�MØ€I€I�IØ€J€J�JØÐÐÑØÐÐÑØ€J€J�JØ€N€N�NØ€M€M�MØ€K€K�KØ€K€K�KØ€M€M�MØ€L€L�LØ€N€N�N€N€Nr   r	   c                  óF   — e Zd ZU dZded<   ded<   ded<   ded<   ded<   dS )	ÚCodeTypeCountz1TypedDict to store counts of lines of code types.r
   ÚcodeÚcommentÚ	docstringÚemptyÚtotalNr   r   r   r    r"   r"      sC   € € € € € € Ø;Ð;à€I€I�IØ€L€L�LØ€N€N�NØ€J€J�JØ€J€J�J€J€Jr   r"   c                  ó(   — e Zd ZU dZded<   ded<   dS )ÚDuplicatedLinesz6TypedDict to store counts of lines of duplicated code.r
   Únb_duplicated_linesÚfloatÚpercent_duplicated_linesNr   r   r   r    r)   r)   (   s0   € € € € € € Ø@Ð@àÐÐÑØ#Ð#Ð#Ñ#Ð#Ð#r   r)   c                  ó<   — e Zd ZU dZded<   ded<   ded<   ded<   dS )Ú	NodeCountz6TypedDict to store counts of different types of nodes.r
   r   r   r   r   Nr   r   r   r    r.   r.   /   s:   € € € € € € Ø@Ð@à€M€M�MØ€J€J�JØ€K€K�KØ€K€K�K€K€Kr   r.   c                  ó<   — e Zd ZU dZded<   ded<   ded<   ded<   dS )ÚUndocumentedNodesz5TypedDict to store counts of undocumented node types.r
   r   r   r   r   Nr   r   r   r    r0   r0   8   s:   € € € € € € Ø?Ð?à€M€M�MØ€J€J�JØ€K€K�KØ€K€K�K€K€Kr   r0   c                  óZ   — 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
S )ÚModuleStatsz>TypedDict to store counts of types of messages and statements.r
   Ú
conventionÚerrorÚfatalÚinfoÚrefactorÚ	statementÚwarningNr   r   r   r    r2   r2   A   sU   € € € € € € ØHÐHà€O€O�OØ€J€J�JØ€J€J�JØ€I€I�IØ€M€M�MØ€N€N�NØ€L€L�L€L€Lr   r2   c                  ó¼   — e Zd ZdZ	 	 	 	 	 	 	 	 d4d5d„Zd6d„Zd6d„Zd7d„Zd8d„Zd9d „Z	d:d!„Z
d;d$„Zd:d%„Zd:d&„Zd<d(„Zd:d)„Zd=d+„Zd:d,„Zd>d-„Zd?d/„Zd@d0„ZdAd2„Zd:d3„ZdS )BÚLinterStatszClass used to linter stats.NÚ	bad_namesúBadNames | NoneÚ	by_moduleúdict[str, ModuleStats] | NoneÚby_msgúdict[str, int] | NoneÚcode_type_countúCodeTypeCount | NoneÚdependenciesúdict[str, set[str]] | NoneÚduplicated_linesúDuplicatedLines | NoneÚ
node_countúNodeCount | NoneÚundocumentedúUndocumentedNodes | NoneÚreturnÚNonec	                óÜ  — |pt          ddddddddddddd¬¦  «        | _        |pi | _        |pi | _        |pt	          ddddd¬¦  «        | _        |pi | _        |pt          dd¬¦  «        | _        |pt          dddd¬¦  «        | _
        |pt          dddd¬¦  «        | _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d S )Nr   ©r   r   r   r   r   r   r   r   r   r   r   r   r   ©r#   r$   r%   r&   r'   ç        ©r*   r,   ©r   r   r   r   )r	   r<   r>   r@   r"   rB   rD   r)   rF   r.   rH   r0   rJ   r3   r4   r5   r6   r7   r8   r9   Úglobal_noter*   r,   )	Úselfr<   r>   r@   rB   rD   rF   rH   rJ   s	            r    Ú__init__zLinterStats.__init__Q   s^  € ð #ð 
¥hØØØØØØØØØØØØØð'
ñ '
ô '
ˆŒð 2;°¸bˆŒØ&, l°ˆŒØ.ð  
µ-Ø˜A¨°!¸1ð3
ñ 3
ô 3
ˆÔð 2>Ð1CÀˆÔØ 0ð !
µOØ !¸Cð5
ñ 5
ô 5
ˆÔð %ð 
­	Ø˜a¨°!ð)
ñ )
ô )
ˆŒð )ð 
Õ,=Ø˜a¨°!ð-
ñ -
ô -
ˆÔð ˆŒØˆŒ
ØˆŒ
ØˆŒ	ØˆŒØˆŒØˆŒàˆÔØ#$ˆÔ Ø(+ˆÔ%Ð%Ð%r   Ústrc                ó    — t          | ¦  «        S )N)rW   ©rU   s    r    Ú__repr__zLinterStats.__repr__ˆ   s   € Ý�4‰yŒyÐr   c                ó6  — d                      g | j        › ‘d‘t          | j                             ¦   «         ¦  «        › ‘d‘t          | j                             ¦   «         ¦  «        › ‘d‘| j        › ‘d‘t          | j                             ¦   «         ¦  «        › ‘d‘| j        › ‘d‘| j	        › ‘d‘| j
        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘d‘| j        › ‘¦  «        S )NÚ z	
        )Újoinr<   Úsortedr>   Úitemsr@   rB   rD   rF   rJ   r3   r4   r5   r6   r7   r8   r9   rT   r*   r,   rY   s    r    Ú__str__zLinterStats.__str__‹   s"  € ð+÷ +ò +ð +�D”Nð +ð +ð +ð +Ý	�”×$Ò$Ñ&Ô&Ñ	'Ô	'ð+ð +ð +ð +å	�”×!Ò!Ñ#Ô#Ñ	$Ô	$ð+ð +ð +ð +ð 
Ô	ð+ð +ð +ð +õ 
�Ô!×'Ò'Ñ)Ô)Ñ	*Ô	*ð	+ð +ð +ð +ð
 
Ô	ð+ð +ð +ð +ð 
Ô	ð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Œð+ð +ð +ð +ð 
Ô	ð+ð +ð +ð +ð 
Ô	!ð+ð +ð +ð +ð  
Ô	&ð!+ð +ñ +ô +ð 	+r   Úmodule_namec           	     óB   — t          ddddddd¬¦  «        | j        |<   dS )z`Use through PyLinter.set_current_module so PyLinter.current_name is
        consistent.
        r   )r3   r4   r5   r6   r7   r8   r9   N)r2   r>   )rU   ra   s     r    Úinit_single_modulezLinterStats.init_single_modulež   s5   € õ '2Ø ¨°¸QÈ!ÐUVð'
ñ '
ô '
ˆŒ�{Ñ#Ð#Ð#r   Ú	node_nameú Literal['argument', 'attr', 'class', 'class_attribute', 'class_const', 'const', 'inlinevar', 'function', 'method', 'module', 'variable', 'typevar', 'typealias']r
   c                óz   — |dk    r| j                              dd¦  «        S | j                              |d¦  «        S )zGet a bad names node count.Úclassr   r   )r<   Úget©rU   rd   s     r    Úget_bad_nameszLinterStats.get_bad_names¦   s?   € ð& ˜ÒÐØ”>×%Ò% g¨qÑ1Ô1Ð1ØŒ~×!Ò! )¨QÑ/Ô/Ð/r   Úincreasec                óÆ   — |dvrt          d¦  «        ‚t          t          d         |¦  «        }|dk    r| j        dxx         |z  cc<   dS | j        |xx         |z  cc<   dS )z Increase a bad names node count.>   r   rg   r   r   r   r   r   r   r   r   r   r   r   z(Node type not part of the bad_names stat)r   r   rg   r   r   r   r   r   r   r   r   r   r   rg   r   N)Ú
ValueErrorr   r   r<   )rU   rd   rk   s      r    Úincrease_bad_namezLinterStats.increase_bad_name½   s›   € àð 
ð 
ð 
õ ÐGÑHÔHÐHåÝðôð ñ!
ô 
ˆ	ð$ ˜ÒÐØŒN˜7Ð#Ð#Ô# xÑ/Ð#Ð#Ñ#Ð#Ð#àŒN˜9Ð%Ð%Ô%¨Ñ1Ð%Ð%Ñ%Ð%Ð%r   c                óH   — t          ddddddddddddd¬¦  «        | _        dS )zResets the bad_names attribute.r   rO   N)r	   r<   rY   s    r    Úreset_bad_nameszLinterStats.reset_bad_namesç   sC   € å!ØØØØØØØØØØØØØð
ñ 
ô 
ˆŒˆˆr   Ú	type_nameú9Literal['code', 'comment', 'docstring', 'empty', 'total']c                ó8   — | j                              |d¦  «        S )zGet a code type count.r   )rB   rh   ©rU   rq   s     r    Úget_code_countzLinterStats.get_code_countù   s   € ð Ô#×'Ò'¨	°1Ñ5Ô5Ð5r   c                ó8   — t          ddddd¬¦  «        | _        dS )z%Resets the code_type_count attribute.r   rP   N)r"   rB   rY   s    r    Úreset_code_countzLinterStats.reset_code_countÿ   s*   € å,Ø˜A¨°!¸1ð 
ñ  
ô  
ˆÔÐÐr   c                ó2   — t          dd¬¦  «        | _        dS )z&Resets the duplicated_lines attribute.r   rQ   rR   N)r)   rF   rY   s    r    Úreset_duplicated_linesz"LinterStats.reset_duplicated_lines  s$   € å /Ø !¸Cð!
ñ !
ô !
ˆÔÐÐr   ú0Literal['function', 'class', 'method', 'module']c                óz   — |dk    r| j                              dd¦  «        S | j                              |d¦  «        S )z6Get a node count while handling some extra conditions.rg   r   r   )rH   rh   ri   s     r    Úget_node_countzLinterStats.get_node_count  s?   € ð ˜ÒÐØ”?×&Ò& w°Ñ2Ô2Ð2ØŒ×"Ò" 9¨aÑ0Ô0Ð0r   c                ó6   — t          dddd¬¦  «        | _        dS )z Resets the node count attribute.r   rS   N)r.   rH   rY   s    r    Úreset_node_countzLinterStats.reset_node_count  s   € å#¨Q°aÀÈ!ÐLÑLÔLˆŒˆˆr   r+   c                óB   — |dk    r| j         d         S | j         |         S )zGet a undocumented node count.rg   r   )rJ   ri   s     r    Úget_undocumentedzLinterStats.get_undocumented  s+   € ð ˜ÒÐØÔ$ WÔ-Ð-ØÔ  Ô+Ð+r   c                ó6   — t          dddd¬¦  «        | _        dS )z"Resets the undocumented attribute.r   rS   N)r0   rJ   rY   s    r    Úreset_undocumentedzLinterStats.reset_undocumented  s"   € å-°qÀÈ!ÐTUÐVÑVÔVˆÔÐÐr   c                ó$   — t          | |d¦  «        S )zGet a global message count.r   )Úgetattrrt   s     r    Úget_global_message_countz$LinterStats.get_global_message_count#  s   € å�t˜Y¨Ñ*Ô*Ð*r   Úmodnamec                ó:   — t          | j        |         |d¦  «        S )zGet a module message count.r   )r„   r>   )rU   r†   rq   s      r    Úget_module_message_countz$LinterStats.get_module_message_count'  s   € å�t”~ gÔ.°	¸1Ñ=Ô=Ð=r   c                óJ   — t          | |t          | |¦  «        |z   ¦  «         dS )z>Increase the message type count of an individual message type.N)Úsetattrr„   )rU   rq   rk   s      r    Úincrease_single_message_countz)LinterStats.increase_single_message_count+  s)   € å��i¥¨¨yÑ!9Ô!9¸HÑ!DÑEÔEÐEÐEÐEr   r   c                ó<   — | j         |         |xx         |z  cc<   dS )z[Increase the message type count of an individual message type of a
        module.
        N)r>   )rU   r†   rq   rk   s       r    Ú$increase_single_module_message_countz0LinterStats.increase_single_module_message_count/  s-   € ð 	Œ�wÔ 	Ð*Ð*Ô*¨hÑ6Ð*Ð*Ñ*Ð*Ð*r   c                óZ   — d| _         d| _        d| _        d| _        d| _        d| _        dS )z2Resets the message type count of the stats object.r   N)r3   r4   r5   r6   r7   r9   rY   s    r    Úreset_message_countzLinterStats.reset_message_count7  s0   € àˆŒØˆŒ
ØˆŒ
ØˆŒ	ØˆŒØˆŒˆˆr   )NNNNNNNN)r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   )rL   rW   )ra   rW   rL   rM   )rd   re   rL   r
   )rd   rW   rk   r
   rL   rM   )rL   rM   )rq   rr   rL   r
   )rd   rz   rL   r
   )rd   rz   rL   r+   )rq   rW   rL   r
   )r†   rW   rq   rW   rL   r
   )rq   rW   rk   r
   rL   rM   )r†   rW   rq   r   rk   r
   rL   rM   )r   r   r   r   rV   rZ   r`   rc   rj   rn   rp   ru   rw   ry   r|   r~   r€   r‚   r…   rˆ   r‹   r�   r�   r   r   r    r;   r;   N   sÃ  € € € € € Ø%Ð%ð &*Ø37Ø(,Ø04Ø37Ø37Ø'+Ø15ð5,ð 5,ð 5,ð 5,ð 5,ðnð ð ð ð+ð +ð +ð +ð&
ð 
ð 
ð 
ð0ð 0ð 0ð 0ð.(2ð (2ð (2ð (2ðT
ð 
ð 
ð 
ð$6ð 6ð 6ð 6ð
ð 
ð 
ð 
ð
ð 
ð 
ð 
ð1ð 1ð 1ð 1ðMð Mð Mð Mð,ð ,ð ,ð ,ðWð Wð Wð Wð+ð +ð +ð +ð>ð >ð >ð >ðFð Fð Fð Fð7ð 7ð 7ð 7ðð ð ð ð ð r   r;   Ústatsúlist[LinterStats]rL   c                ó$
  — t          ¦   «         }| D �]ý}|j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        d	xx         |j        d	         z  cc<   |j        d
xx         |j        d
         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j                             ¦   «         D ]\  }}||j        |<   Œ|j                             ¦   «         D ]5\  }}	 |j        |xx         |z  cc<   Œ# t
          $ r ||j        |<   Y Œ2w xY w|j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j                             ¦   «         D ]@\  }}	 |j        |                              |¦  «         Œ'# t
          $ r ||j        |<   Y Œ=w xY w|j	        dxx         |j	        d         z  cc<   |j	        dxx         |j	        d         z  cc<   |j
        dxx         |j
        d         z  cc<   |j
        dxx         |j
        d         z  cc<   |j
        d	xx         |j
        d	         z  cc<   |j
        d
xx         |j
        d
         z  cc<   |j        dxx         |j        d         z  cc<   |j        dxx         |j        d         z  cc<   |j        d	xx         |j        d	         z  cc<   |j        d
xx         |j        d
         z  cc<   |xj        |j        z  c_        |xj        |j        z  c_        |xj        |j        z  c_        |xj        |j        z  c_        |xj        |j        z  c_        |xj        |j        z  c_        |xj        |j        z  c_        |xj        |j        z  c_        �Œÿ|S )zaUsed to merge multiple stats objects into a new one when pylint is run in
    parallel mode.
    r   r   r   r   r   r   r   r   r   r   r   r   r   r#   r$   r%   r&   r'   r*   r,   )r;   r<   r>   r_   r@   ÚKeyErrorrB   rD   ÚupdaterF   rH   rJ   r3   r4   r5   r6   r7   r8   r9   rT   )	r�   ÚmergedÚstatÚmod_keyÚ	mod_valueÚmsg_keyÚ	msg_valueÚdep_keyÚ	dep_values	            r    Úmerge_statsr�   A  s'  € õ ‰]Œ]€FØð =/ñ =/ˆØÔ˜Ð$Ð$Ô$¨¬°zÔ(BÑBÐ$Ð$Ñ$ØÔ˜Ð Ð Ô  D¤N°6Ô$:Ñ:Ð Ð Ñ ØÔ˜Ð!Ð!Ô! T¤^°GÔ%<Ñ<Ð!Ð!Ñ!ØÔÐ*Ð+Ð+Ô+¨t¬~Ð>OÔ/PÑPÐ+Ð+Ñ+ØÔ˜Ð'Ð'Ô'¨4¬>¸-Ô+HÑHÐ'Ð'Ñ'ØÔ˜Ð!Ð!Ô! T¤^°GÔ%<Ñ<Ð!Ð!Ñ!ØÔ˜Ð%Ð%Ô%¨¬¸Ô)DÑDÐ%Ð%Ñ%ØÔ˜Ð$Ð$Ô$¨¬°zÔ(BÑBÐ$Ð$Ñ$ØÔ˜Ð"Ð"Ô" d¤n°XÔ&>Ñ>Ð"Ð"Ñ"ØÔ˜Ð"Ð"Ô" d¤n°XÔ&>Ñ>Ð"Ð"Ñ"ØÔ˜Ð$Ð$Ô$¨¬°zÔ(BÑBÐ$Ð$Ñ$ØÔ˜Ð#Ð#Ô# t¤~°iÔ'@Ñ@Ð#Ð#Ñ#ØÔ˜Ð%Ð%Ô%¨¬¸Ô)DÑDÐ%Ð%Ñ%à"&¤.×"6Ò"6Ñ"8Ô"8ð 	2ð 	2ÑˆG�YØ(1ˆFÔ˜WÑ%Ð%à"&¤+×"3Ò"3Ñ"5Ô"5ð 	3ð 	3ÑˆG�Yð3Ø”˜gÐ&Ð&Ô&¨)Ñ3Ð&Ð&Ñ&Ð&øÝð 3ð 3ð 3Ø)2�”˜gÑ&Ð&Ð&ð3øøøð 	Ô˜vÐ&Ð&Ô&¨$Ô*>¸vÔ*FÑFÐ&Ð&Ñ&ØÔ˜yÐ)Ð)Ô)¨TÔ-AÀ)Ô-LÑLÐ)Ð)Ñ)ØÔ˜{Ð+Ð+Ô+¨tÔ/CÀKÔ/PÑPÐ+Ð+Ñ+ØÔ˜wÐ'Ð'Ô'¨4Ô+?ÀÔ+HÑHÐ'Ð'Ñ'ØÔ˜wÐ'Ð'Ô'¨4Ô+?ÀÔ+HÑHÐ'Ð'Ñ'à"&Ô"3×"9Ò"9Ñ";Ô";ð 	9ð 	9ÑˆG�Yð9ØÔ# GÔ,×3Ò3°IÑ>Ô>Ð>Ð>øÝð 9ð 9ð 9Ø/8�Ô# GÑ,Ð,Ð,ð9øøøð 	ÔÐ 5Ð6Ð6Ô6¸$Ô:OØ!ô;
ñ 	
Ð6Ð6Ñ6ð 	ÔÐ :Ð;Ð;Ô;¸tÔ?TØ&ô@
ñ 	
Ð;Ð;Ñ;ð 	Ô˜*Ð%Ð%Ô%¨¬¸Ô)DÑDÐ%Ð%Ñ%ØÔ˜'Ð"Ð"Ô" d¤o°gÔ&>Ñ>Ð"Ð"Ñ"ØÔ˜(Ð#Ð#Ô# t¤°xÔ'@Ñ@Ð#Ð#Ñ#ØÔ˜(Ð#Ð#Ô# t¤°xÔ'@Ñ@Ð#Ð#Ñ#àÔ˜JÐ'Ð'Ô'¨4Ô+<¸ZÔ+HÑHÐ'Ð'Ñ'ØÔ˜GÐ$Ð$Ô$¨Ô(9¸'Ô(BÑBÐ$Ð$Ñ$ØÔ˜HÐ%Ð%Ô%¨Ô):¸8Ô)DÑDÐ%Ð%Ñ%ØÔ˜HÐ%Ð%Ô%¨Ô):¸8Ô)DÑDÐ%Ð%Ñ%àÐÔ˜Tœ_Ñ,ÐÔØˆŒ˜œ
Ñ"ˆŒØˆŒ˜œ
Ñ"ˆŒØˆŒ�t”yÑ ˆŒØˆŒ˜4œ=Ñ(ˆŒØÐÔ˜DœNÑ*ÐÔØˆŒ˜$œ,Ñ&ˆŒàÐÔ˜dÔ.Ñ.ÐÔÑØ€Ms$   Ç<HÈH)È(H)Ë+ LÌL#Ì"L#N)r�   r‘   rL   r;   )Ú
__future__r   Útypingr   r   r   Úpylint.typingr   r	   r"   r)   r.   r0   r2   r;   r�   r   r   r    ú<module>r¡      sš  ðð
 #Ð "Ð "Ð "Ð "Ð "à +Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ð +à .Ð .Ð .Ð .Ð .Ð .ðð ð ð ð ˆyñ ô ð ð$ð ð ð ð �Iñ ô ð ð$ð $ð $ð $ð $�iñ $ô $ð $ðð ð ð ð �	ñ ô ð ðð ð ð ð ˜	ñ ô ð ð	ð 	ð 	ð 	ð 	�)ñ 	ô 	ð 	ðpð pð pð pð pñ pô pð pðfCð Cð Cð Cð Cð Cr   