##// END OF EJS Templates
Speedup builtin_trap enter/exit by reducing object creation....
Speedup builtin_trap enter/exit by reducing object creation. Most of the work that was being done on *every* enter/exit cycle could be done statically only once, at object creation time. This trap is used on every single code execution, so we need it to be fast. In the long run we probably want to rethink this system altogether, but for now at least we want it fast.

File last commit:

r1234:52b55407
r2957:ec9984dc
Show More
error.py
41 lines | 1.2 KiB | text/x-python | PythonLexer
# encoding: utf-8
"""
error.py
We declare here a class hierarchy for all exceptions produced by IPython, in
cases where we don't just raise one from the standard library.
"""
__docformat__ = "restructuredtext en"
#-------------------------------------------------------------------------------
# Copyright (C) 2008 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Imports
#-------------------------------------------------------------------------------
class IPythonError(Exception):
"""Base exception that all of our exceptions inherit from.
This can be raised by code that doesn't have any more specific
information."""
pass
# Exceptions associated with the controller objects
class ControllerError(IPythonError): pass
class ControllerCreationError(ControllerError): pass
# Exceptions associated with the Engines
class EngineError(IPythonError): pass
class EngineCreationError(EngineError): pass