[Python-Dev] Requesting that a class be a new-style class
Phillip J. Eby
pje at telecommunity.com
Sun Feb 20 18:15:44 CET 2005
At 09:15 AM 2/20/05 +0100, Alex Martelli wrote:
>This is because types.ClassType turns somersaults to enable this: in this
>latter construct, Python's mechanisms determine ClassType as the metaclass
>(it's the metaclass of the first base class), but then ClassType in turn
>sniffs around for another metaclass to delegate to, among the supplied
>bases, and having found one washes its hands of the whole business;-).
To be pedantic, the actual algorithm in 2.2+ has nothing to do with the
first base class; that's the pre-2.2 algorithm. The 2.2 algorithm looks
for the most-derived metaclass of the base classes, and simply ignores
classic bases altogether.
More information about the Python-Dev