
    c                        d Z ddlmZ ddlZddlZddlmZ ddlmZ  G d dej	                  Z
 G d d	ej	                  ZdS )
zDeprecated option actions.    )annotationsN)Sequence)Anyc                  D     e Zd ZdZ	 	 	 	 	 	 	 	 	 d d! fdZ	 d"d#dZ xZS )$_OldNamesActionz3Store action that also sets the value to old names.NF option_stringsSequence[str]deststrnargsNoneconstdefaulttypechoicesrequiredboolhelpmetavar	old_nameslist[str] | Nonereturnc                r    |sJ || _         t                                          ||d||||||	|

  
         d S N   )r   super__init__)selfr	   r   r   r   r   r   r   r   r   r   r   	__class__s               Alib/python3.11/site-packages/pylint/config/deprecation_actions.pyr   z_OldNamesAction.__init__   \     "	
 	
 	
 	
 	
    parserargparse.ArgumentParser	namespaceargparse.Namespacevaluesstr | Sequence[Any] | Noneoption_string
str | Nonec                    t          |t                    sJ t          || j        |d                    | j        D ]}t          |||d                    d S )Nr   )
isinstancelistsetattrr   r   )r   r$   r&   r(   r*   old_names         r!   __call__z_OldNamesAction.__call__1   sf     &$'''''	49fQi000 	4 	4HIx3333	4 	4r#   	NNNNNFr   r   N)r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   N
r$   r%   r&   r'   r(   r)   r*   r+   r   r   __name__
__module____qualname____doc__r   r1   __classcell__r    s   @r!   r   r      s        == &*
 
 
 
 
 
 
D %)
4 
4 
4 
4 
4 
4 
4 
4 
4r#   r   c                  D     e Zd ZdZ	 	 	 	 	 	 	 	 	 d d! fdZ	 d"d#dZ xZS )$_NewNamesActionzDStore action that also emits a deprecation warning about a new name.NFr   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   	new_namesr   r   c                r    |sJ || _         t                                          ||d||||||	|

  
         d S r   )r>   r   r   )r   r	   r   r   r   r   r   r   r   r   r   r>   r    s               r!   r   z_NewNamesAction.__init__A   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   c                    t          |t                    sJ t          || j        |d                    t	          j        | j        d          dd                    | j                   dt                     d S )Nr   zK has been deprecated. Please look into using any of the following options: z, .)
r-   r.   r/   r   warningswarnr	   joinr>   DeprecationWarning)r   r$   r&   r(   r*   s        r!   r1   z_NewNamesAction.__call__^   s     &$'''''	49fQi000"1% P P3799T^3L3LP P P	
 	
 	
 	
 	
r#   r2   )r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r>   r   r   r   r3   r4   r5   r;   s   @r!   r=   r=   >   s        NN &*
 
 
 
 
 
 
D %)
 
 
 
 
 
 
 
 
r#   r=   )r9   
__future__r   argparserB   collections.abcr   typingr   _StoreActionr   r=    r#   r!   <module>rL      s    !   " " " " " "   $ $ $ $ $ $      *4 *4 *4 *4 *4h+ *4 *4 *4Z-
 -
 -
 -
 -
h+ -
 -
 -
 -
 -
r#   