/pypy/module/exceptions/__init__.py

https://github.com/alemacgo/pypy · Python · 67 lines · 62 code · 5 blank · 0 comment · 4 complexity · e2633f0af7b4d5d814d1acb0476d0cf3 MD5 · raw file

  1. import sys
  2. from pypy.interpreter.mixedmodule import MixedModule
  3. class Module(MixedModule):
  4. appleveldefs = {}
  5. interpleveldefs = {
  6. 'ArithmeticError' : 'interp_exceptions.W_ArithmeticError',
  7. 'AssertionError' : 'interp_exceptions.W_AssertionError',
  8. 'AttributeError' : 'interp_exceptions.W_AttributeError',
  9. 'BaseException' : 'interp_exceptions.W_BaseException',
  10. 'BufferError' : 'interp_exceptions.W_BufferError',
  11. 'BytesWarning' : 'interp_exceptions.W_BytesWarning',
  12. 'DeprecationWarning' : 'interp_exceptions.W_DeprecationWarning',
  13. 'EOFError' : 'interp_exceptions.W_EOFError',
  14. 'EnvironmentError' : 'interp_exceptions.W_EnvironmentError',
  15. 'Exception' : 'interp_exceptions.W_Exception',
  16. 'FloatingPointError' : 'interp_exceptions.W_FloatingPointError',
  17. 'FutureWarning' : 'interp_exceptions.W_FutureWarning',
  18. 'GeneratorExit' : 'interp_exceptions.W_GeneratorExit',
  19. 'IOError' : 'interp_exceptions.W_IOError',
  20. 'ImportError' : 'interp_exceptions.W_ImportError',
  21. 'ImportWarning' : 'interp_exceptions.W_ImportWarning',
  22. 'IndentationError' : 'interp_exceptions.W_IndentationError',
  23. 'IndexError' : 'interp_exceptions.W_IndexError',
  24. 'KeyError' : 'interp_exceptions.W_KeyError',
  25. 'KeyboardInterrupt' : 'interp_exceptions.W_KeyboardInterrupt',
  26. 'LookupError' : 'interp_exceptions.W_LookupError',
  27. 'MemoryError' : 'interp_exceptions.W_MemoryError',
  28. 'NameError' : 'interp_exceptions.W_NameError',
  29. 'NotImplementedError' : 'interp_exceptions.W_NotImplementedError',
  30. 'OSError' : 'interp_exceptions.W_OSError',
  31. 'OverflowError' : 'interp_exceptions.W_OverflowError',
  32. 'PendingDeprecationWarning' : 'interp_exceptions.W_PendingDeprecationWarning',
  33. 'ReferenceError' : 'interp_exceptions.W_ReferenceError',
  34. 'RuntimeError' : 'interp_exceptions.W_RuntimeError',
  35. 'RuntimeWarning' : 'interp_exceptions.W_RuntimeWarning',
  36. 'StandardError' : 'interp_exceptions.W_StandardError',
  37. 'StopIteration' : 'interp_exceptions.W_StopIteration',
  38. 'SyntaxError' : 'interp_exceptions.W_SyntaxError',
  39. 'SyntaxWarning' : 'interp_exceptions.W_SyntaxWarning',
  40. 'SystemExit' : 'interp_exceptions.W_SystemExit',
  41. 'SystemError' : 'interp_exceptions.W_SystemError',
  42. 'TabError' : 'interp_exceptions.W_TabError',
  43. 'TypeError' : 'interp_exceptions.W_TypeError',
  44. 'UnboundLocalError' : 'interp_exceptions.W_UnboundLocalError',
  45. 'UnicodeDecodeError' : 'interp_exceptions.W_UnicodeDecodeError',
  46. 'UnicodeEncodeError' : 'interp_exceptions.W_UnicodeEncodeError',
  47. 'UnicodeError' : 'interp_exceptions.W_UnicodeError',
  48. 'UnicodeTranslateError' : 'interp_exceptions.W_UnicodeTranslateError',
  49. 'UnicodeWarning' : 'interp_exceptions.W_UnicodeWarning',
  50. 'UserWarning' : 'interp_exceptions.W_UserWarning',
  51. 'ValueError' : 'interp_exceptions.W_ValueError',
  52. 'Warning' : 'interp_exceptions.W_Warning',
  53. 'ZeroDivisionError' : 'interp_exceptions.W_ZeroDivisionError',
  54. }
  55. if sys.platform.startswith("win"):
  56. interpleveldefs['WindowsError'] = 'interp_exceptions.W_WindowsError'
  57. def setup_after_space_initialization(self):
  58. from pypy.objspace.std.transparent import register_proxyable
  59. from pypy.module.exceptions import interp_exceptions
  60. for name, exc in interp_exceptions.__dict__.items():
  61. if isinstance(exc, type) and issubclass(exc, interp_exceptions.W_BaseException):
  62. register_proxyable(self.space, exc)