On 5/28/21 12:43 AM, Petr Viktorin wrote:
> On 28. 05. 21 5:24, Ethan Furman wrote:
>> class FlagWithMasks(IntFlag):
>> DEFAULT = 0x0
>>
>> FIRST_MASK = 0xF
>> FIRST_ROUND = 0x0
>> FIRST_CEIL = 0x1
>> FIRST_TRUNC = 0x2
>>
>> SECOND_MASK = 0xF0
>> SECOND_RECALC = 0x00
>> SECOND_NO_RECALC = 0x10
>>
>> THIRD_MASK = 0xF00
>> THIRD_DISCARD = 0x000
>> THIRD_KEEP = 0x100
>>
>> Here we have three flags (FIRST_MASK, SECOND_MASK, THIRD_MASK) that are
aliasing values
>> that don't exist, but it seems intentional and not an error.
>
> Are you looking for a decorator for the whole Enum, or a way to mark
individual *values* as masks?
The decorator is for whole enum. The issue is not that some values are masks, but whether the absence of named bits
covered by the mask is an error.
--
~Ethan~
_______________________________________________
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/OM5M774MP5QPLFXZ7OVGBPR7ZFB6X35A/
Code of Conduct: http://python.org/psf/codeofconduct/