`#qH d Z ddlmZ ddlZddlmZ ddlmZ ddlm Z ddl
mZ ddlm
Z
erdd lmZ G d
de j ZddZdS )z'Looks for comparisons to empty string. )annotationsN)
TYPE_CHECKING)nodes)checkers)utils)HIGH)PyLinterc R e Zd ZdZddiZdZ ej d dd Zd
S )CompareToEmptyStringCheckercompare-to-empty-stringC1901)z;"%s" can be simplified to "%s" as an empty string is falseyr z@Used when Pylint detects comparison to an empty string constant. node
nodes.ComparereturnNonec l h d}d|j fg}| |j t | }t t j | }t t | dz
D ]}|| }||dz }||dz }d} ||||vr+d}
t j
| rd} | }
n*t j
| rd} | }
| r=|dv rd |
n|
}| d
| |f|t dS )a Checks for comparisons to empty string.
Most of the time you should use the fact that empty strings are false.
An exception to this rule is when an empty string value is allowed in the program
and has a different meaning than None!
> !=is notis== FNT> r r znot r )argsr
confidence)leftextendopsiterlist itertoolschainrangelenr is_empty_str_literal as_stringadd_messager )selfr
_operatorsr iter_opsops_idxop_1op_2op_3error_detected node_name
suggestions o/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/pylint/extensions/emptystring.py
visit_comparez)CompareToEmptyStringChecker.visit_compare" sp 211
8:49o5F
48999?H-..SXX\** G(+GDGaK(D(+GaK(8D"N|t|t:/E/EI)$//
-!% NN,, +D11
-!% NN,,
37<3G3G/I///Y
-..**J7# ! % N)r r r r ) __name__
__module____qualname__namemsgsoptionsr only_required_for_messagesr4 r r5 r3 r r s] $D
D G%U%&?@@' ' ' A@' ' 'r5 r linterr r r c J | t | d S )N)register_checkerr )r= s r3 registerr@ M s%
7??@@@@@r5 )r= r r r )__doc__
__future__r r" typingr astroidr pylintr pylint.checkersr pylint.interfacesr pylint.lintr BaseCheckerr r@ r r5 r3