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':