
    cE                    z    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
 erddlmZ  G d d	e          ZddZdS )zCheck for use of while loops.    )annotations)TYPE_CHECKING)nodes)BaseChecker)only_required_for_messages)PyLinterc                  D    e Zd ZdZddiZ ed          dd	            Zd
S )WhileChecker
while_usedW0149)zUsed `while` loop
while-usedzUnbounded `while` loops can often be rewritten as bounded `for` loops. Exceptions can be made for cases such as event loops, listeners, etc.r   nodenodes.WhilereturnNonec                4    |                      d|           d S )Nr   )r   )add_message)selfr   s     <lib/python3.11/site-packages/pylint/extensions/while_used.pyvisit_whilezWhileChecker.visit_while   s!    D11111    N)r   r   r   r   )__name__
__module____qualname__namemsgsr   r    r   r   r
   r
      sT        D 
D  --2 2 2 .-2 2 2r   r
   linterr   r   r   c                J    |                      t          |                      d S )N)register_checkerr
   )r   s    r   registerr!   $   s$    
L0011111r   N)r   r   r   r   )__doc__
__future__r   typingr   astroidr   pylint.checkersr   pylint.checkers.utilsr   pylint.lintr   r
   r!   r   r   r   <module>r)      s   
 $ # " " " " " "                   ' ' ' ' ' ' < < < < < < %$$$$$$2 2 2 2 2; 2 2 2 2 2 2 2 2 2r   