On Fri, Apr 2, 2021 at 12:43 PM Brandt Bucher <brandtbuc...@gmail.com>
wrote:

> Mark Shannon wrote:
> > On 02/04/2021 7:19 am, Brandt Bucher wrote:
> > > I agree that self-matching classes should absolutely allow keyword
> matches. I had no idea the PEP forbade it.
> > PEP 634 allows it.
>
> PEP 634 says:
>
> > For a number of built-in types (specified below), a single positional
> subpattern is accepted which will match the entire subject; for these types
> no keyword patterns are accepted.
>
> (https://www.python.org/dev/peps/pep-0634/#class-patterns)
>

But that's not what the implementation does. It still supports keyword
patterns for these types -- and (as I've said earlier in this thread) I
think the implementation is correct.


> > Most checks are cheap though.
> > Checking for duplicates in `__match_args__` can be done at class
> creation time, and checking for duplicates in the pattern can be done at
> compile time.
>
> I assume the compile-time check only works for named keyword attributes.
> The current implementation already does this.
>
> -1 on checking `__match_args__` anywhere other than the match block itself.
>

Agreed.

-- 
--Guido van Rossum (python.org/~guido)
*Pronouns: he/him **(why is my pronoun here?)*
<http://feministing.com/2015/02/03/how-using-they-as-a-singular-pronoun-can-change-the-world/>
_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/S45E7DCDXU2LTBSNYYXSIDH6CL7CVDIK/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to