diff --git a/pep-0634.rst b/pep-0634.rst index f11564d2b71..740cb9a8b79 100644 --- a/pep-0634.rst +++ b/pep-0634.rst @@ -492,10 +492,10 @@ as follows: the entire subject; for these types no keyword patterns are accepted. - The equivalent of ``getattr(cls, "__match_args__", ()))`` is called. - If this raises an exception the exception bubbles up. -- If the returned value is not a list or tuple, the conversion fails +- If the returned value is not a tuple, the conversion fails and ``TypeError`` is raised. - If there are more positional patterns than the length of - ``__match_args__``` (as obtained using ``len()``), ``TypeError`` is raised. + ``__match_args__`` (as obtained using ``len()``), ``TypeError`` is raised. - Otherwise, positional pattern ``i`` is converted to a keyword pattern using ``__match_args__[i]`` as the keyword, provided it the latter is a string; @@ -513,7 +513,7 @@ positional subpatterns is different: This behavior is roughly equivalent to the following:: class C: - __match_args__ = ["__match_self_prop__"] + __match_args__ = ("__match_self_prop__",) @property def __match_self_prop__(self): return self