Skip to content

Commit 9463929

Browse files
authored
Make visit method arguments pos-only (#18361)
Extracted from #18356. Make `visit_*` method arguments positional only to ensure better LSP compatibility. Also update some visitors which don't have violations yet but are base classes for other ones, like `TypeTranslator` and `TypeQuery`.
1 parent d79d89e commit 9463929

File tree

7 files changed

+477
-477
lines changed

7 files changed

+477
-477
lines changed

mypy/mixedtraverser.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@ def __init__(self) -> None:
3030

3131
# Symbol nodes
3232

33-
def visit_var(self, var: Var) -> None:
33+
def visit_var(self, var: Var, /) -> None:
3434
self.visit_optional_type(var.type)
3535

36-
def visit_func(self, o: FuncItem) -> None:
36+
def visit_func(self, o: FuncItem, /) -> None:
3737
super().visit_func(o)
3838
self.visit_optional_type(o.type)
3939

40-
def visit_class_def(self, o: ClassDef) -> None:
40+
def visit_class_def(self, o: ClassDef, /) -> None:
4141
# TODO: Should we visit generated methods/variables as well, either here or in
4242
# TraverserVisitor?
4343
super().visit_class_def(o)
@@ -46,67 +46,67 @@ def visit_class_def(self, o: ClassDef) -> None:
4646
for base in info.bases:
4747
base.accept(self)
4848

49-
def visit_type_alias_expr(self, o: TypeAliasExpr) -> None:
49+
def visit_type_alias_expr(self, o: TypeAliasExpr, /) -> None:
5050
super().visit_type_alias_expr(o)
5151
self.in_type_alias_expr = True
5252
o.node.target.accept(self)
5353
self.in_type_alias_expr = False
5454

55-
def visit_type_var_expr(self, o: TypeVarExpr) -> None:
55+
def visit_type_var_expr(self, o: TypeVarExpr, /) -> None:
5656
super().visit_type_var_expr(o)
5757
o.upper_bound.accept(self)
5858
for value in o.values:
5959
value.accept(self)
6060

61-
def visit_typeddict_expr(self, o: TypedDictExpr) -> None:
61+
def visit_typeddict_expr(self, o: TypedDictExpr, /) -> None:
6262
super().visit_typeddict_expr(o)
6363
self.visit_optional_type(o.info.typeddict_type)
6464

65-
def visit_namedtuple_expr(self, o: NamedTupleExpr) -> None:
65+
def visit_namedtuple_expr(self, o: NamedTupleExpr, /) -> None:
6666
super().visit_namedtuple_expr(o)
6767
assert o.info.tuple_type
6868
o.info.tuple_type.accept(self)
6969

70-
def visit__promote_expr(self, o: PromoteExpr) -> None:
70+
def visit__promote_expr(self, o: PromoteExpr, /) -> None:
7171
super().visit__promote_expr(o)
7272
o.type.accept(self)
7373

74-
def visit_newtype_expr(self, o: NewTypeExpr) -> None:
74+
def visit_newtype_expr(self, o: NewTypeExpr, /) -> None:
7575
super().visit_newtype_expr(o)
7676
self.visit_optional_type(o.old_type)
7777

7878
# Statements
7979

80-
def visit_assignment_stmt(self, o: AssignmentStmt) -> None:
80+
def visit_assignment_stmt(self, o: AssignmentStmt, /) -> None:
8181
super().visit_assignment_stmt(o)
8282
self.visit_optional_type(o.type)
8383

84-
def visit_for_stmt(self, o: ForStmt) -> None:
84+
def visit_for_stmt(self, o: ForStmt, /) -> None:
8585
super().visit_for_stmt(o)
8686
self.visit_optional_type(o.index_type)
8787

88-
def visit_with_stmt(self, o: WithStmt) -> None:
88+
def visit_with_stmt(self, o: WithStmt, /) -> None:
8989
super().visit_with_stmt(o)
9090
for typ in o.analyzed_types:
9191
typ.accept(self)
9292

9393
# Expressions
9494

95-
def visit_cast_expr(self, o: CastExpr) -> None:
95+
def visit_cast_expr(self, o: CastExpr, /) -> None:
9696
super().visit_cast_expr(o)
9797
o.type.accept(self)
9898

99-
def visit_assert_type_expr(self, o: AssertTypeExpr) -> None:
99+
def visit_assert_type_expr(self, o: AssertTypeExpr, /) -> None:
100100
super().visit_assert_type_expr(o)
101101
o.type.accept(self)
102102

103-
def visit_type_application(self, o: TypeApplication) -> None:
103+
def visit_type_application(self, o: TypeApplication, /) -> None:
104104
super().visit_type_application(o)
105105
for t in o.types:
106106
t.accept(self)
107107

108108
# Helpers
109109

110-
def visit_optional_type(self, t: Type | None) -> None:
110+
def visit_optional_type(self, t: Type | None, /) -> None:
111111
if t:
112112
t.accept(self)

0 commit comments

Comments
 (0)