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