§
    ÷yIfF"  ã            	      ó4  — U d Z ddlmZ ddlZddlmZmZ ddlmZ ddl	m
Z
mZ ddlmZmZ ddlmZmZmZmZmZmZ dd	lmZ dd
lmZ e
rddlmZ d.d„Zd/d„Zd0d„Zd0d„Zd0d„Z d0d„Z!d0d„Z"d0d„Z#d ed!fd ed"fd e dfd e!d#fd$e"d"fd$e"d%fd$e#d&fd'œZ$d(e%d)<   d1d-„Z&dS )2z1Utils for arguments/options parsing and handling.é    )ÚannotationsN)ÚCallableÚSequence)ÚPath)ÚTYPE_CHECKINGÚAny)Ú
extensionsÚutils)Ú_CallableArgumentÚ_ExtendArgumentÚ_StoreArgumentÚ_StoreNewNamesArgumentÚ_StoreOldNamesArgumentÚ_StoreTrueArgument)Ú_CallbackAction)ÚArgumentPreprocessingError)ÚRunÚoptÚstrÚoptdictúdict[str, Any]Úreturnú{_StoreArgument | _StoreTrueArgument | _CallableArgument | _StoreOldNamesArgument | _StoreNewNamesArgument | _ExtendArgumentc                ó|  — d| › �g}d|v r|d|d         › �gz  }|                      dd¦  «        }|dk    ret          |||                      dd¦  «        |                      d	d
¦  «        |                      dd¦  «        |                      dd¦  «        ¬¦  «        S t          |t          ¦  «        s�t	          |t
          ¦  «        rzt          |||                      d	d
¦  «        |                      di ¦  «        |                      dd¦  «        |                      dd¦  «        |                      dd¦  «        ¬¦  «        S |d         }|dk    r›t          |||€g n||d         |                      dd¦  «        |                      d	d
¦  «        |                      dd
¦  «        |                      dd¦  «        |                      dd¦  «        |                      dd¦  «        ¬¦
  «
        S d|v �r@d|d         v r–t          |||d         |                      dd¦  «        |                      d	d
¦  «        |                      dd
¦  «        |                      dd¦  «        |                      di ¦  «        |                      dd¦  «        ¬¦	  «	        S d|d         v r–t          |||d         |                      dd¦  «        |                      d	d
¦  «        |                      dd
¦  «        |                      dd¦  «        |                      di ¦  «        |                      dd¦  «        ¬¦	  «	        S d|v r‹t          |||d         |                      dd¦  «        |                      d	d
¦  «        |                      dd
¦  «        |                      dd¦  «        d|d         gi|                      dd¦  «        ¬¦	  «	        S t          ||||d         |                      dd¦  «        |                      d	d
¦  «        |                      dd
¦  «        |                      dd¦  «        |                      dd¦  «        ¬¦	  «	        S )z1Convert an optdict to an Argument class instance.z--Úshortú-ÚactionÚstoreÚ
store_trueÚdefaultTÚhelpÚ ÚhideFÚgroupN)Úflagsr   r    Úarg_helpÚ	hide_helpÚsectionÚkwargsÚmetavar)r%   r   r&   r)   r'   r(   r*   ÚextendÚtypeÚchoicesÚdest)
r%   r   r    Úarg_typer-   r&   r*   r'   r(   r.   Ú	old_names)	r%   r    r/   r-   r&   r*   r'   r)   r(   Ú	new_names)	r%   r   r    r/   r-   r&   r*   r'   r(   )Úgetr   Ú
isinstancer   Ú
issubclassr   r   r   r   r   r   )r   r   r%   r   r    s        úG/var/www/piapp/venv/lib/python3.11/site-packages/pylint/config/utils.pyÚ_convert_option_to_argumentr6      sQ  € ð �#ˆZˆZˆL€EØ�'ÐÐØÐ(�g˜gÔ&Ð(Ð(Ð)Ñ)ˆð �[Š[˜ 7Ñ+Ô+€Fà�ÒÐÝ!ØØØ—K’K 	¨4Ñ0Ô0Ø—[’[ ¨Ñ,Ô,Ø—k’k &¨%Ñ0Ô0Ø—K’K ¨Ñ.Ô.ð
ñ 
ô 
ð 	
õ �f�cÑ"Ô"ð 	
¥z°&½/Ñ'JÔ'Jð 	
Ý ØØØ—[’[ ¨Ñ,Ô,Ø—;’;˜x¨Ñ,Ô,Ø—k’k &¨%Ñ0Ô0Ø—K’K ¨Ñ.Ô.Ø—K’K 	¨4Ñ0Ô0ð
ñ 
ô 
ð 	
ð �iÔ €Gà�ÒÐÝØØØ!˜/�B�B¨wØ˜V”_Ø—K’K 	¨4Ñ0Ô0Ø—[’[ ¨Ñ,Ô,Ø—K’K 	¨2Ñ.Ô.Ø—k’k &¨%Ñ0Ô0Ø—K’K ¨Ñ.Ô.Ø—’˜V TÑ*Ô*ð
ñ 
ô 
ð 	
ð �7ÐÑØ˜' (Ô+Ð+Ð+Ý)ØØØ  œØŸš I¨tÑ4Ô4Ø Ÿš V¨RÑ0Ô0ØŸš I¨rÑ2Ô2Ø!Ÿ+š+ f¨eÑ4Ô4Ø—{’{ 8¨RÑ0Ô0ØŸš G¨TÑ2Ô2ð
ñ 
ô 
ð 
ð ˜' (Ô+Ð+Ð+Ý)ØØØ  œØŸš I¨tÑ4Ô4Ø Ÿš V¨RÑ0Ô0ØŸš I¨rÑ2Ô2Ø!Ÿ+š+ f¨eÑ4Ô4Ø—{’{ 8¨RÑ0Ô0ØŸš G¨TÑ2Ô2ð
ñ 
ô 
ð 
ð �ÐÐÝ%ØØØ˜V”_Ø—K’K 	¨4Ñ0Ô0Ø—[’[ ¨Ñ,Ô,Ø—K’K 	¨2Ñ.Ô.Ø—k’k &¨%Ñ0Ô0Ø '¨&¤/Ð!2Ð3Ø—K’K ¨Ñ.Ô.ð

ñ 

ô 

ð 
	
õ ØØØØ˜”Ø—’˜I tÑ,Ô,Ø—’˜V RÑ(Ô(Ø—’˜I rÑ*Ô*Ø—+’+˜f eÑ,Ô,Ø—’˜G TÑ*Ô*ð
ñ 
ô 
ð 
ó    Úvaluer   c                ó~  — t          | t          t          f¦  «        rd                     d„ | D ¦   «         ¦  «        S t          | t          j        ¦  «        rt          | j        ¦  «        S t          | t          ¦  «        r1d                     d„ |  	                    ¦   «         D ¦   «         ¦  «        S t          | ¦  «        S )z%Parse rich (toml) types into strings.ú,c              3  ó4   K  — | ]}t          |¦  «        V — Œd S )N)Ú_parse_rich_type_value)Ú.0Úis     r5   ú	<genexpr>z)_parse_rich_type_value.<locals>.<genexpr>‰   s+   è è € ÐAÐA°aÕ.¨qÑ1Ô1ÐAÐAÐAÐAÐAÐAr7   c              3  ó*   K  — | ]\  }}|› d |› �V — ŒdS )ú:N© )r=   ÚkÚvs      r5   r?   z)_parse_rich_type_value.<locals>.<genexpr>�   s0   è è € Ð=Ð=¡t q¨!˜1˜
˜
˜q˜
˜
Ð=Ð=Ð=Ð=Ð=Ð=r7   )
r3   ÚlistÚtupleÚjoinÚreÚPatternr   ÚpatternÚdictÚitems)r8   s    r5   r<   r<   †   s¥   € å�%�$¥˜Ñ'Ô'ð BØ�xŠxÐAÐA¸5ÐAÑAÔAÑAÔAÐAÝ�%�œÑ$Ô$ð "Ý�5”=Ñ!Ô!Ð!Ý�%�ÑÔð >Ø�xŠxÐ=Ð=¨u¯{ª{©}¬}Ð=Ñ=Ô=Ñ=Ô=Ð=Ýˆu‰:Œ:Ðr7   Úrunr   ú
str | NoneÚNonec                ó,   — |€J ‚t          |¦  «         dS )zhExecute arbitrary code from the init_hook.

    This can be used to set the 'sys.path' for example.
    N)Úexec©rM   r8   s     r5   Ú
_init_hookrS   ’   s   € ð
 ÐÐÐÝˆ�K„K€K€K€Kr7   c                ó   — |€J ‚|| _         dS )zSet the rcfile.N)Ú_rcfilerR   s     r5   Ú_set_rcfilerV   ›   ó   € àÐÐÐØ€C„K€K€Kr7   c                ó   — |€J ‚|| _         dS )zSet the output.N)Ú_outputrR   s     r5   Ú_set_outputrZ   ¡   rW   r7   c                óf   — |€J ‚| j                              t          j        |¦  «        ¦  «         dS )z,Add plugins to the list of loadable plugins.N)Ú_pluginsr+   r
   Ú_splitstriprR   s     r5   Ú_add_pluginsr^   §   s5   € àÐÐÐØ„L×Ò�Ô)¨%Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1r7   c                ó   — |�J ‚d| _         d S )NT)ÚverboserR   s     r5   Ú_set_verbose_modera   ­   s   € Øˆ=ˆ=ˆ=Ø€C„K€K€Kr7   c                ó  — |�J ‚t          t          j        ¦  «        j                             ¦   «         D ]T}|j        dk    rG|j                             d¦  «        s-d|j        › �}|| j        vr| j         	                    |¦  «         ŒUdS )zEnable all extensions.Nz.pyÚ_zpylint.extensions.)
r   r	   Ú__file__ÚparentÚiterdirÚsuffixÚstemÚ
startswithr\   Úappend)rM   r8   ÚfilenameÚextension_names       r5   Ú_enable_all_extensionsrm   ²   s“   € àˆ=ˆ=ˆ=Ý�Ô,Ñ-Ô-Ô4×<Ò<Ñ>Ô>ð 4ð 4ˆØŒ?˜eÒ#Ð#¨H¬M×,DÒ,DÀSÑ,IÔ,IÐ#ØA°(´-ÐAÐAˆNØ S¤\Ð1Ð1Ø”×#Ò# NÑ3Ô3Ð3øð	4ð 4r7   Té   é   é   Fé   é	   )z--init-hookz--rcfilez--outputz--load-pluginsz	--verbosez-vz--enable-all-extensionsz>dict[str, tuple[bool, Callable[[Run, str | None], None], int]]ÚPREPROCESSABLE_OPTIONSÚargsúSequence[str]ú	list[str]c                ó,  — g }d}|t          |¦  «        k     �r{||         }|                     d¦  «        s|                     |¦  «         |dz  }ŒL	 |                     dd¦  «        \  }}n# t          $ r |d}}Y nw xY wd}t
                               ¦   «         D ];\  }}	|	d         }
|
dk    r	||k    r|}Œ|                     |d|
…         ¦  «        r|}Œ<|€|                     |¦  «         |dz  }Œït
          |         \  }}}|rQ|€O|dz  }|t          |¦  «        k    s||                              d¦  «        rt          d|› d�¦  «        ‚||         }n|s|�t          d|› d	�¦  «        ‚ || |¦  «         |dz  }|t          |¦  «        k     �°{|S )
z;Pre-process options before full config parsing has started.r   r   é   ú=Nrq   zOption z expects a valuez doesn't expect a value)Úlenri   rj   ÚsplitÚ
ValueErrorrs   rL   r   )rM   rt   Úprocessed_argsr>   ÚargumentÚoptionr8   Úmatched_optionÚoption_nameÚdataÚto_matchÚtakeargÚcbrc   s                 r5   Ú_preprocess_optionsr†   ×   s   € à "€Nà	€AØ
�c�$‰iŒiŠ-‰-Ø˜”7ˆØ×"Ò" 3Ñ'Ô'ð 	Ø×!Ò! (Ñ+Ô+Ð+Ø�‰FˆAØð	+Ø$ŸNšN¨3°Ñ2Ô2‰MˆF�E�EøÝð 	+ð 	+ð 	+Ø$ d�EˆFˆFˆFð	+øøøð ˆÝ!7×!=Ò!=Ñ!?Ô!?ð 	-ð 	-ÑˆK˜Ø˜A”wˆHØ˜1Š}ˆ}Ø˜[Ò(Ð(Ø%0�NøØ×"Ò" ;¨y°¨yÔ#9Ñ:Ô:ð -Ø!,�øàÐ!Ø×!Ò! (Ñ+Ô+Ð+Ø�‰FˆAØå/°Ô?‰ˆ��Qàð 	X�u�}Ø�‰FˆAØ•C˜‘I”IŠ~ˆ~  a¤×!3Ò!3°CÑ!8Ô!8ˆ~Ý0Ð1S¸6Ð1SÐ1SÐ1SÑTÔTÐTØ˜”GˆEˆEØð 	X˜UÐ.Ý,Ð-V°vÐ-VÐ-VÐ-VÑWÔWÐWà
ˆˆ3�‰ŒˆØ	ˆQ‰ˆðK �c�$‰iŒiŠ-‰-ðN Ðs   ÁA, Á,A=Á<A=)r   r   r   r   r   r   )r8   r   r   r   )rM   r   r8   rN   r   rO   )rM   r   rt   ru   r   rv   )'Ú__doc__Ú
__future__r   rH   Úcollections.abcr   r   Úpathlibr   Útypingr   r   Úpylintr	   r
   Úpylint.config.argumentr   r   r   r   r   r   Úpylint.config.callback_actionsr   Úpylint.config.exceptionsr   Úpylint.lint.runr   r6   r<   rS   rV   rZ   r^   ra   rm   rs   Ú__annotations__r†   rB   r7   r5   ú<module>r’      sF  ðð
 8Ð 7Ð 7à "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ø Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à $Ð $Ð $Ð $Ð $Ð $Ð $Ð $ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ;Ð :Ð :Ð :Ð :Ð :Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?àð $Ø#Ð#Ð#Ð#Ð#Ð#ðeð eð eð eðPð ð ð ðð ð ð ðð ð ð ðð ð ð ð2ð 2ð 2ð 2ðð ð ð ð
4ð 4ð 4ð 4ð* ˜* aÐ(à�{ AÐ&à�{ AÐ&à˜\¨1Ð-àÐ*¨AÐ.ØÐ# QÐ
'à %Ð'=¸qÐAð)ð ð ð ð ð ñ ð6,ð ,ð ,ð ,ð ,ð ,r7   