
    c                        d dl mZ g dZd dlZd dlZd dlZd dlmZ d dlm	Z	 d dl
mZ dddZdddZdddZdddZdddZddZeZdS )    )annotations)__version__versionmodify_sys_path
run_pylintrun_epylintrun_symilarrun_pyreverseN)Sequence)NoReturn)r   argvSequence[str] | NonereturnNonec                    ddl m} 	  || pt          j        dd                    dS # t          $ r t          j        d           Y dS w xY w)zjRun pylint.

    argv can be a sequence of strings normally supplied as arguments on the command line
    r   Run   N)pylint.lintr   sysr   KeyboardInterruptexit)r   	PylintRuns     /lib/python3.11/site-packages/pylint/__init__.pyr   r      sn    
 -,,,,,	$&#(122,'''''   s   ) A
Ac                P    ddl m}  || pt          j        dd                    dS )zqRun pylint-config.

    argv can be a sequence of strings normally supplied as arguments on the command line
    r   )_PylintConfigRunr   N)pylint.lint.runr   r   r   )r   r   s     r   _run_pylint_configr   )   s<    
 100000T)SXabb\*****    r   c                `    ddl m} t          j        dt          d            ||            dS )zgRun epylint.

    argv can be a list of strings normally supplied as arguments on the command line
    r   r   zb'run_epylint' will be removed in pylint 3.0, use https://github.com/emacsorphanage/pylint instead.r   )
stacklevelN)pylint.epylintr   warningswarnDeprecationWarning)r   
EpylintRuns     r   r   r   3   sR    
 100000M	<	    Jtr   c                P    ddl m}  || pt          j        dd                    dS )zmRun pyreverse.

    argv can be a sequence of strings normally supplied as arguments on the command line
    r   r   r   N)pylint.pyreverse.mainr   r   r   )r   PyreverseRuns     r   r
   r
   C   s;    
 :99999L%!""&&&&&r   c                P    ddl m}  || pt          j        dd                    dS )zkRun symilar.

    argv can be a sequence of strings normally supplied as arguments on the command line
    r   r   r   N)pylint.checkers.similarr   r   r   )r   
SimilarRuns     r   r	   r	   M   s;    
 :99999Jt#sx|$$$$$r   c                    t          j                    } t          j        d         dd| fv rt          j                            d           t           j                            dd          }|                    d          r*|d|  dfvr!t          j                            d           d	S |                    d          r*||  ddfvr#t          j                            d           d	S d	S d	S )
a  Modify sys path for execution as Python module.

    Strip out the current working directory from sys.path.
    Having the working directory in `sys.path` means that `pylint` might
    inadvertently import user code from modules having the same name as
    stdlib or pylint's own modules.
    CPython issue: https://bugs.python.org/issue33053

    - Remove the first entry. This will always be either "" or the working directory
    - Remove the working directory from the second and third entries
      if PYTHONPATH includes a ":" at the beginning or the end.
      https://github.com/PyCQA/pylint/issues/3636
      Don't remove it if PYTHONPATH contains the cwd or '.' as the entry will
      only be added once.
    - Don't remove the working directory from the rest. It will be included
      if pylint is installed in an editable configuration (as the last item).
      https://github.com/PyCQA/pylint/issues/4161
    r    .
PYTHONPATH:z:.z.:r   N)	osgetcwdr   pathpopenvironget
startswithendswith)cwdenv_pythonpaths     r   r   r   W   s    & )++C
x{r3n$ QZ^^L"55N  %% .SD@Q*Q Q		 	 	%	% .CD@Q*Q Q   r   )N)r   r   r   r   )r   r   r   r   )r   r   )
__future__r   __all__r2   r   r#   collections.abcr   typingr   pylint.__pkginfo__r   r   r   r   r
   r	   r   r    r   r   <module>rB      s  
 # " " " " "   
			 



  $ $ $ $ $ $       * * * * * *

 
 
 
 
+ + + + +     ' ' ' ' '% % % % %   : r   