/opt/cloudlinux/venv/lib/python3.11/site-packages/pylint/extensions
NameSizeModeActions
__pycache__/-0755rm
bad_builtin.py22690644editdlrm
broad_try_clause.py23020644editdlrm
check_elif.py21390644editdlrm
code_style.py128070644editdlrm
comparetozero.py31680644editdlrm
comparison_placement.py23520644editdlrm
confusing_elif.py20380644editdlrm
consider_refactoring_into_while_condition.py33120644editdlrm
consider_ternary_expression.py16980644editdlrm
dict_init_mutate.py21110644editdlrm
docparams.py259050644editdlrm
docstyle.py29430644editdlrm
dunder.py23860644editdlrm
emptystring.py29720644editdlrm
empty_comment.py19550644editdlrm
eq_without_hash.py14550644editdlrm
for_any_all.py58250644editdlrm
magic_value.py42380644editdlrm
mccabe.py70560644editdlrm
no_self_use.py37110644editdlrm
overlapping_exceptions.py33400644editdlrm
private_import.py112350644editdlrm
redefined_loop_name.py32200644editdlrm
redefined_variable_type.py40950644editdlrm
set_membership.py17960644editdlrm
typing.py203900644editdlrm
while_used.py10930644editdlrm
_check_docs_utils.py263600644editdlrm
__init__.py5750644editdlrm
Edit: /opt/cloudlinux/venv/lib/python3.11/site-packages/pylint/extensions/eq_without_hash.py (1455B)
# Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html # For details: https://github.com/PyCQA/pylint/blob/main/LICENSE # Copyright (c) https://github.com/PyCQA/pylint/blob/main/CONTRIBUTORS.txt """This is the remnant of the python3 checker. It was removed because the transition from python 2 to python3 is behind us, but some checks are still useful in python3 after all. See https://github.com/PyCQA/pylint/issues/5025 """ from astroid import nodes from pylint import checkers, interfaces from pylint.checkers import utils from pylint.lint import PyLinter class EqWithoutHash(checkers.BaseChecker): name = "eq-without-hash" msgs = { "W1641": ( "Implementing __eq__ without also implementing __hash__", "eq-without-hash", "Used when a class implements __eq__ but not __hash__. Objects get " "None as their default __hash__ implementation if they also implement __eq__.", ), } @utils.only_required_for_messages("eq-without-hash") def visit_classdef(self, node: nodes.ClassDef) -> None: locals_and_methods = set(node.locals).union(x.name for x in node.mymethods()) if "__eq__" in locals_and_methods and "__hash__" not in locals_and_methods: self.add_message("eq-without-hash", node=node, confidence=interfaces.HIGH) def register(linter: PyLinter) -> None: linter.register_checker(EqWithoutHash(linter))