mirror of
https://github.com/python/cpython.git
synced 2025-07-24 19:54:21 +00:00
bpo-14911: Corrected generator.throw() documentation (GH-32207)
Co-authored-by: Andrew Svetlov <andrew.svetlov@gmail.com>
This commit is contained in:
parent
a00518d9ad
commit
8be7c2bc5a
4 changed files with 28 additions and 8 deletions
|
@ -2984,7 +2984,8 @@ generators, coroutines do not directly support iteration.
|
|||
:exc:`StopIteration`, or other exception) is the same as when
|
||||
iterating over the :meth:`__await__` return value, described above.
|
||||
|
||||
.. method:: coroutine.throw(type[, value[, traceback]])
|
||||
.. method:: coroutine.throw(value)
|
||||
coroutine.throw(type[, value[, traceback]])
|
||||
|
||||
Raises the specified exception in the coroutine. This method delegates
|
||||
to the :meth:`~generator.throw` method of the iterator that caused
|
||||
|
|
|
@ -561,14 +561,27 @@ is already executing raises a :exc:`ValueError` exception.
|
|||
could receive the value.
|
||||
|
||||
|
||||
.. method:: generator.throw(type[, value[, traceback]])
|
||||
.. method:: generator.throw(value)
|
||||
generator.throw(type[, value[, traceback]])
|
||||
|
||||
Raises an exception of type ``type`` at the point where the generator was paused,
|
||||
Raises an exception at the point where the generator was paused,
|
||||
and returns the next value yielded by the generator function. If the generator
|
||||
exits without yielding another value, a :exc:`StopIteration` exception is
|
||||
raised. If the generator function does not catch the passed-in exception, or
|
||||
raises a different exception, then that exception propagates to the caller.
|
||||
|
||||
In typical use, this is called with a single exception instance similar to the
|
||||
way the :keyword:`raise` keyword is used.
|
||||
|
||||
For backwards compatability, however, the second signature is
|
||||
supported, following a convention from older versions of Python.
|
||||
The *type* argument should be an exception class, and *value*
|
||||
should be an exception instance. If the *value* is not provided, the
|
||||
*type* constructor is called to get an instance. If *traceback*
|
||||
is provided, it is set on the exception, otherwise any existing
|
||||
:attr:`~BaseException.__traceback__` attribute stored in *value* may
|
||||
be cleared.
|
||||
|
||||
.. index:: exception: GeneratorExit
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue