[pypy-svn] r7495 - pypy/trunk/src/pypy/interpreter
arigo at codespeak.net
arigo at codespeak.net
Sat Nov 20 11:45:28 CET 2004
Author: arigo
Date: Sat Nov 20 11:45:27 2004
New Revision: 7495
Modified:
pypy/trunk/src/pypy/interpreter/miscutils.py
pypy/trunk/src/pypy/interpreter/pyopcode.py
Log:
unclean hacking to make the translator ignore __initclass__
Modified: pypy/trunk/src/pypy/interpreter/miscutils.py
==============================================================================
--- pypy/trunk/src/pypy/interpreter/miscutils.py (original)
+++ pypy/trunk/src/pypy/interpreter/miscutils.py Sat Nov 20 11:45:27 2004
@@ -44,11 +44,10 @@
subclasses) by calling __initclass__() as a class method."""
def __init__(self, name, bases, dict):
super(InitializedClass, self).__init__(name, bases, dict)
- if hasattr(self, '__initclass__'):
- raw = dict.get('__initclass__')
+ for basecls in self.__mro__:
+ raw = basecls.__dict__.get('__initclass__')
if isinstance(raw, types.FunctionType):
- self.__initclass__ = classmethod(raw)
- self.__initclass__()
+ raw(self) # call it as a class method
class RwDictProxy(object):
Modified: pypy/trunk/src/pypy/interpreter/pyopcode.py
==============================================================================
--- pypy/trunk/src/pypy/interpreter/pyopcode.py (original)
+++ pypy/trunk/src/pypy/interpreter/pyopcode.py Sat Nov 20 11:45:27 2004
@@ -769,6 +769,7 @@
__metaclass__ = InitializedClass
def __initclass__(cls):
+ "NOT_RPYTHON"
# create the 'cls.dispatch_table' attribute
import dis
dispatch_table = []
More information about the Pypy-commit
mailing list