[pypy-svn] r69237 - pypy/branch/faster-raise/pypy/module/exceptions

fijal at codespeak.net fijal at codespeak.net
Thu Nov 12 18:53:07 CET 2009


Author: fijal
Date: Thu Nov 12 18:53:06 2009
New Revision: 69237

Modified:
   pypy/branch/faster-raise/pypy/module/exceptions/__init__.py
Log:
(arigo, fijal, pedronis)
Make Exceptions proxyable (again)


Modified: pypy/branch/faster-raise/pypy/module/exceptions/__init__.py
==============================================================================
--- pypy/branch/faster-raise/pypy/module/exceptions/__init__.py	(original)
+++ pypy/branch/faster-raise/pypy/module/exceptions/__init__.py	Thu Nov 12 18:53:06 2009
@@ -37,8 +37,8 @@
         'StopIteration' : 'interp_exceptions.W_StopIteration',
         'SyntaxError' : 'interp_exceptions.W_SyntaxError',
         'SyntaxWarning' : 'interp_exceptions.W_SyntaxWarning',
-        'SystemError' : 'interp_exceptions.W_SystemError',
         'SystemExit' : 'interp_exceptions.W_SystemExit',
+        'SystemError' : 'interp_exceptions.W_SystemError',
         'TabError' : 'interp_exceptions.W_TabError',
         'TypeError' : 'interp_exceptions.W_TypeError',
         'UnboundLocalError' : 'interp_exceptions.W_UnboundLocalError',
@@ -55,3 +55,11 @@
 
     if sys.platform.startswith("win"):
         interpleveldefs['WindowsError'] = 'interp_exceptions.W_WindowsError'
+
+    def setup_after_space_initialization(self):
+        from pypy.objspace.std.transparent import register_proxyable
+        from pypy.module.exceptions import interp_exceptions
+
+        for name, exc in interp_exceptions.__dict__.items():
+            if isinstance(exc, type) and issubclass(exc, interp_exceptions.W_BaseException):
+                register_proxyable(self.space, exc)



More information about the Pypy-commit mailing list