error.py
66 lines
| 1.9 KiB
| text/x-python
|
PythonLexer
Brian Granger
|
r2205 | # encoding: utf-8 | ||
""" | ||||
Global exception classes for IPython.core. | ||||
Authors: | ||||
* Brian Granger | ||||
* Fernando Perez | ||||
MinRK
|
r4952 | * Min Ragan-Kelley | ||
Brian Granger
|
r2205 | |||
Notes | ||||
----- | ||||
""" | ||||
#----------------------------------------------------------------------------- | ||||
Matthias BUSSONNIER
|
r5390 | # Copyright (C) 2008-2011 The IPython Development Team | ||
Brian Granger
|
r2205 | # | ||
# Distributed under the terms of the BSD License. The full license is in | ||||
# the file COPYING, distributed as part of this software. | ||||
#----------------------------------------------------------------------------- | ||||
#----------------------------------------------------------------------------- | ||||
# Imports | ||||
#----------------------------------------------------------------------------- | ||||
#----------------------------------------------------------------------------- | ||||
# Exception classes | ||||
#----------------------------------------------------------------------------- | ||||
class IPythonCoreError(Exception): | ||||
pass | ||||
class TryNext(IPythonCoreError): | ||||
"""Try next hook exception. | ||||
Bernardo B. Marques
|
r4872 | |||
Brian Granger
|
r2205 | Raise this in your hook function to indicate that the next hook handler | ||
should be used to handle the operation. If you pass arguments to the | ||||
constructor those arguments will be used by the next hook instead of the | ||||
original ones. | ||||
Thomas Kluyver
|
r6721 | |||
A _msg argument will not be passed on, so it can be used as a displayable | ||||
error message. | ||||
Brian Granger
|
r2205 | """ | ||
Thomas Kluyver
|
r6721 | def __init__(self, _msg="", *args, **kwargs): | ||
Brian Granger
|
r2205 | self.args = args | ||
self.kwargs = kwargs | ||||
Thomas Kluyver
|
r6721 | self.msg = _msg | ||
def __str__(self): | ||||
return str(self.msg) | ||||
Brian Granger
|
r2205 | |||
class UsageError(IPythonCoreError): | ||||
"""Error in magic function arguments, etc. | ||||
Bernardo B. Marques
|
r4872 | |||
Brian Granger
|
r2205 | Something that probably won't warrant a full traceback, but should | ||
Bernardo B. Marques
|
r4872 | nevertheless interrupt a macro / batch file. | ||
Thomas Spura
|
r4574 | """ | ||
MinRK
|
r4952 | |||
class StdinNotImplementedError(IPythonCoreError, NotImplementedError): | ||||
"""raw_input was requested in a context where it is not supported | ||||
For use in IPython kernels, where only some frontends may support | ||||
stdin requests. | ||||
""" | ||||