[Python-Dev] Default metaclass in Python 3.0 modules
Ben Finney
bignose+hates-spam at benfinney.id.au
Tue Jul 15 12:26:41 CEST 2008
Eric Smith <eric+python-dev at trueblade.com> writes:
> Ben Finney wrote:
> > "Benjamin Peterson" <musiccomposition at gmail.com> writes:
> >> Line 94-95 in unittest.py (trunk):
> >> # All classes defined herein are 'new-style' classes, allowing use of 'super()'
> >> __metaclass__ = type
> >
> > Hmm, you're right; I see that in Python 2.5.2 'unittest.py'.
> >
> > Why is it not there in 3.0's 'unittest.py'? Is this achieved some
> > other way?
>
> In 3.0 there are only new-style classes, so nothing needs to be done
> there.
What makes that happen in the case where a class declares no
superclass? Is there an invisible enforced "__metaclass__ = type" for
every module? Where can I read about this change?
--
\ “The apparent lesson of the Inquisition is that insistence on |
`\ uniformity of belief is fatal to intellectual, moral, and |
_o__) spiritual health.” —_The Uses Of The Past_, Herbert J. Muller |
Ben Finney
More information about the Python-Dev
mailing list