Clean up + fix another call site
diff --git a/mypy/nodes.py b/mypy/nodes.py
index 7272550..0a059d6 100644
--- a/mypy/nodes.py
+++ b/mypy/nodes.py
@@ -1625,9 +1625,9 @@
return visitor.visit_member_expr(self)
-# Kinds of arguments
@unique
class ArgKind(Enum):
+ """Kinds of arguments"""
# Positional argument
ARG_POS = 0
# Positional, optional argument (functions only, not calls)
@@ -1642,28 +1642,32 @@
ARG_NAMED_OPT = 5
-def is_positional(self: ArgKind, star: bool = False) -> bool:
+def is_positional(kind: ArgKind, star: bool = False) -> bool:
return (
- self == ARG_POS
- or self == ARG_OPT
- or (star and self == ARG_STAR)
+ kind == ARG_POS
+ or kind == ARG_OPT
+ or (star and kind == ARG_STAR)
)
-def is_named(self: ArgKind, star: bool = False) -> bool:
+
+def is_named(kind: ArgKind, star: bool = False) -> bool:
return (
- self == ARG_NAMED
- or self == ARG_NAMED_OPT
- or (star and self == ARG_STAR2)
+ kind == ARG_NAMED
+ or kind == ARG_NAMED_OPT
+ or (star and kind == ARG_STAR2)
)
-def is_required(self: ArgKind) -> bool:
- return self == ARG_POS or self == ARG_NAMED
-def is_optional(self: ArgKind) -> bool:
- return self == ARG_OPT or self == ARG_NAMED_OPT
+def is_required(kind: ArgKind) -> bool:
+ return kind == ARG_POS or kind == ARG_NAMED
-def is_star(self: ArgKind) -> bool:
- return self == ARG_STAR or self == ARG_STAR2
+
+def is_optional(kind: ArgKind) -> bool:
+ return kind == ARG_OPT or kind == ARG_NAMED_OPT
+
+
+def is_star(kind: ArgKind) -> bool:
+ return kind == ARG_STAR or kind == ARG_STAR2
ARG_POS: Final = ArgKind.ARG_POS
diff --git a/mypy/semanal.py b/mypy/semanal.py
index f58f533..8b65bfa 100644
--- a/mypy/semanal.py
+++ b/mypy/semanal.py
@@ -76,8 +76,7 @@
get_nongen_builtins, get_member_expr_fullname, REVEAL_TYPE,
REVEAL_LOCALS, is_final_node, TypedDictExpr, type_aliases_source_versions,
EnumCallExpr, RUNTIME_PROTOCOL_DECOS, FakeExpression, Statement, AssignmentExpr,
- ParamSpecExpr, EllipsisExpr,
- FuncBase, implicit_module_attrs,
+ ParamSpecExpr, EllipsisExpr, FuncBase, implicit_module_attrs, is_named
)
from mypy.tvar_scope import TypeVarLikeScope
from mypy.typevars import fill_typevars
@@ -3142,7 +3141,7 @@
contravariant = False
upper_bound: Type = self.object_type()
for param_value, param_name, param_kind in zip(args, names, kinds):
- if not param_kind.is_named():
+ if not is_named(param_kind):
self.fail("Unexpected argument to TypeVar()", context)
return None
if param_name == 'covariant':