[Python-Dev] PEP: Ordered Class Definition Namespace

Ethan Furman ethan at stoneleaf.us
Fri Jun 10 00:57:45 EDT 2016


On 06/07/2016 11:13 AM, Eric Snow wrote:
> On Tue, Jun 7, 2016 at 11:01 AM, Ethan Furman <ethan at stoneleaf.us> wrote:
>> On 06/07/2016 10:51 AM, Eric Snow wrote:
>>> Specification
>>> =============
>>
>>
>>>     * types for which `__prepare__()`` returned something other than
>>>       ``OrderedDict`` (or a subclass) have their ``__definition_order__``
>>>       set to ``None``
>>
>>
>> I assume this check happens in type.__new__?  If a non-OrderedDict is used
>> as the namespace, but a __definition_order__ key and value are supplied, is
>> it used or still set to None?
>
> A __definition_order__ in the class body always takes precedence.  So
> a supplied value will be honored (and not replaced with None).

Nice.  I'll add it to the Enum, enum34, and aenum as soon as it lands 
(give or take a couple months ;)

--
~Ethan~


More information about the Python-Dev mailing list