Vedran Čačić added the comment:

I suppose you'll also forbid adding new members to Flags, just like Enum does, 
right? 
(https://docs.python.org/3/library/enum.html#restricted-subclassing-of-enumerations)
 Otherwise cropping -1 at a fixed number of bits might be very counterintuitive.

But still, your "simple algorithm" seems too simple. You might easily produce 
values you won't be able to interpret.

    class ThirdBitMustBeSet(Flags):
        FIRST = 5
        SECOND = 6

    >>> ThirdBitMustBeSet.FIRST | ThirdBitMustBeSet.SECOND

produces error when printing, but otherwise works completely fine. A debugging 
nightmare. :-/ I'd at least ensure each bit has a separate name if you're going 
to use that scheme.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue23591>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to