summaryrefslogtreecommitdiff
path: root/pylint/extensions/code_style.py
diff options
context:
space:
mode:
authorDaniƫl van Noord <13665637+DanielNoord@users.noreply.github.com>2022-04-14 11:07:21 +0200
committerGitHub <noreply@github.com>2022-04-14 11:07:21 +0200
commit47e168cf607e2069b103fc466edfe1c6522e2fb2 (patch)
tree97d7b67b673d1147f4b8c9321b6247c117195060 /pylint/extensions/code_style.py
parent99ef057978e2ddd332bdd436fd5fd884deebdc53 (diff)
downloadpylint-git-47e168cf607e2069b103fc466edfe1c6522e2fb2.tar.gz
Use ``python-typing-update`` on ``pylint/extensions`` directory (#6308)
Diffstat (limited to 'pylint/extensions/code_style.py')
-rw-r--r--pylint/extensions/code_style.py22
1 files changed, 12 insertions, 10 deletions
diff --git a/pylint/extensions/code_style.py b/pylint/extensions/code_style.py
index 7c254ecd3..ba9e9d3d2 100644
--- a/pylint/extensions/code_style.py
+++ b/pylint/extensions/code_style.py
@@ -2,8 +2,10 @@
# For details: https://github.com/PyCQA/pylint/blob/main/LICENSE
# Copyright (c) https://github.com/PyCQA/pylint/blob/main/CONTRIBUTORS.txt
+from __future__ import annotations
+
import sys
-from typing import TYPE_CHECKING, List, Optional, Set, Tuple, Type, Union, cast
+from typing import TYPE_CHECKING, Tuple, Type, Union, cast
from astroid import nodes
@@ -125,7 +127,7 @@ class CodeStyleChecker(BaseChecker):
KeyTupleT = Tuple[Type[nodes.NodeNG], str]
# Makes sure all keys are 'Const' string nodes
- keys_checked: Set[KeyTupleT] = set()
+ keys_checked: set[KeyTupleT] = set()
for _, dict_value in node.items:
dict_value = cast(nodes.Dict, dict_value)
for key, _ in dict_value.items:
@@ -141,13 +143,13 @@ class CodeStyleChecker(BaseChecker):
keys_checked.add(key_tuple)
# Makes sure all subdicts have at least 1 common key
- key_tuples: List[Tuple[KeyTupleT, ...]] = []
+ key_tuples: list[tuple[KeyTupleT, ...]] = []
for _, dict_value in node.items:
dict_value = cast(nodes.Dict, dict_value)
key_tuples.append(
tuple((type(key), key.as_string()) for key, _ in dict_value.items)
)
- keys_intersection: Set[KeyTupleT] = set(key_tuples[0])
+ keys_intersection: set[KeyTupleT] = set(key_tuples[0])
for sub_key_tuples in key_tuples[1:]:
keys_intersection.intersection_update(sub_key_tuples)
if not keys_intersection:
@@ -194,7 +196,7 @@ class CodeStyleChecker(BaseChecker):
Note: Assignment expressions were added in Python 3.8
"""
# Check if `node.test` contains a `Name` node
- node_name: Optional[nodes.Name] = None
+ node_name: nodes.Name | None = None
if isinstance(node.test, nodes.Name):
node_name = node.test
elif (
@@ -249,8 +251,8 @@ class CodeStyleChecker(BaseChecker):
@staticmethod
def _check_prev_sibling_to_if_stmt(
- prev_sibling: Optional[nodes.NodeNG], name: Optional[str]
- ) -> TypeGuard[Union[nodes.Assign, nodes.AnnAssign]]:
+ prev_sibling: nodes.NodeNG | None, name: str | None
+ ) -> TypeGuard[nodes.Assign | nodes.AnnAssign]:
"""Check if previous sibling is an assignment with the same name.
Ignore statements which span multiple lines.
@@ -275,7 +277,7 @@ class CodeStyleChecker(BaseChecker):
@staticmethod
def _check_ignore_assignment_expr_suggestion(
- node: nodes.If, name: Optional[str]
+ node: nodes.If, name: str | None
) -> bool:
"""Return True if suggestion for assignment expr should be ignored.
@@ -283,7 +285,7 @@ class CodeStyleChecker(BaseChecker):
(multiple conditions).
"""
if isinstance(node.test, nodes.Compare):
- next_if_node: Optional[nodes.If] = None
+ next_if_node: nodes.If | None = None
next_sibling = node.next_sibling()
if len(node.orelse) == 1 and isinstance(node.orelse[0], nodes.If):
# elif block
@@ -306,5 +308,5 @@ class CodeStyleChecker(BaseChecker):
return False
-def register(linter: "PyLinter") -> None:
+def register(linter: PyLinter) -> None:
linter.register_checker(CodeStyleChecker(linter))