##// END OF EJS Templates
Fix miss-capturing of assign statement after a dedent....
Fix miss-capturing of assign statement after a dedent. closes #11415 This fixes a bug where assign statement were miscaptured when occuring after a dedent. This was due to the fact that : >>> '' in '({[' True That is to say the empty string is in any strings. Add a couple of integration tests and unit tests as well, and also add a warning to public function when not used properly, in particular, check that lines passed to make_tokens_by_line do end with an endline marker (at least for the first line), otherwise the function does not behave properly.

File last commit:

r17799:40708d45
r24728:dd15f28f
Show More
error.py
60 lines | 1.7 KiB | text/x-python | PythonLexer
# encoding: utf-8
"""
Global exception classes for IPython.core.
Authors:
* Brian Granger
* Fernando Perez
* Min Ragan-Kelley
Notes
-----
"""
#-----------------------------------------------------------------------------
# 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
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Exception classes
#-----------------------------------------------------------------------------
class IPythonCoreError(Exception):
pass
class TryNext(IPythonCoreError):
"""Try next hook exception.
Raise this in your hook function to indicate that the next hook handler
should be used to handle the operation.
"""
class UsageError(IPythonCoreError):
"""Error in magic function arguments, etc.
Something that probably won't warrant a full traceback, but should
nevertheless interrupt a macro / batch file.
"""
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.
"""
class InputRejected(Exception):
"""Input rejected by ast transformer.
Raise this in your NodeTransformer to indicate that InteractiveShell should
not execute the supplied input.
"""