
    e                    b    d Z ddlmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ddZ G d d	e      Zy
)zwClasses and functions used to mimic normal pylint runs.

This module is considered private and can change at any time.
    )annotations)Sequence)Run)BaseReporter)PYLINTRCc                \    t        d | D              s| j                  ddt                | S )zGAdd a default pylintrc with the rcfile option in a list of pylint args.c              3  $   K   | ]  }d |v  
 yw)z--rcfileN ).0args     7/usr/lib/python3/dist-packages/pylint/testutils/_run.py	<genexpr>z/_add_rcfile_default_pylintrc.<locals>.<genexpr>   s     1SzS 1s   r   z	--rcfile=)anyinsertr   )argss    r   _add_rcfile_default_pylintrcr      s*    1D11A8*-.K    c                  8     e Zd ZdZ	 	 d	 	 	 	 	 	 	 d fdZ xZS )_Runa  Like Run, but we're using an explicitly set empty pylintrc.

    We don't want to use the project's pylintrc during tests, because
    it means that a change in our config could break tests.
    But we want to see if the changes to the default break tests.
    c                P    t        t        |            }t        |   |||       y )N)r   listsuper__init__)selfr   reporterexit	__class__s       r   r   z_Run.__init__#   s$     ,DJ7x.r   )NT)r   zSequence[str]r   zBaseReporter | Noner   boolreturnNone)__name__
__module____qualname____doc__r   __classcell__)r   s   @r   r   r      s@     )-	// &/ 	/
 
/ /r   r   N)r   	list[str]r   r&   )r$   
__future__r   collections.abcr   pylint.lintr   LintRunpylint.reporters.base_reporterr   !pylint.testutils.lint_module_testr   r   r   r
   r   r   <module>r-      s,   

 # $ & 7 6/7 /r   