mirror of
https://github.com/python/cpython.git
synced 2025-11-01 10:45:30 +00:00
PEP 415: Implement suppression of __context__ display with an exception attribute
This replaces the original PEP 409 implementation. See #14133.
This commit is contained in:
parent
d91dc62379
commit
d5a1c44455
12 changed files with 80 additions and 79 deletions
|
|
@ -471,10 +471,6 @@ Exception Objects
|
|||
set by ``raise ... from ...``) associated with the exception as a new
|
||||
reference, as accessible from Python through :attr:`__cause__`.
|
||||
|
||||
If there is no cause associated, this returns *NULL* (from Python
|
||||
``__cause__ is Ellipsis``). If the cause is :const:`None`, the default
|
||||
exception display routines stop showing the context chain.
|
||||
|
||||
|
||||
.. c:function:: void PyException_SetCause(PyObject *ex, PyObject *ctx)
|
||||
|
||||
|
|
@ -482,9 +478,7 @@ Exception Objects
|
|||
it. There is no type check to make sure that *ctx* is either an exception
|
||||
instance or :const:`None`. This steals a reference to *ctx*.
|
||||
|
||||
If the cause is set to :const:`None` the default exception display
|
||||
routines will not display this exception's context, and will not follow the
|
||||
chain any further.
|
||||
:attr:`__suppress_context__` is implicitly set to ``True`` by this function.
|
||||
|
||||
|
||||
.. _unicodeexceptions:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue