cpython/Doc/c-api
Vladimir Matveev 2b05361bf7
bpo-41756: Introduce PyGen_Send C API (GH-22196)
The new API allows to efficiently send values into native generators
and coroutines avoiding use of StopIteration exceptions to signal 
returns.

ceval loop now uses this method instead of the old "private"
_PyGen_Send C API. This translates to 1.6x increased performance
of 'await' calls in micro-benchmarks.

Aside from CPython core improvements, this new API will also allow 
Cython to generate more efficient code, benefiting high-performance
IO libraries like uvloop.
2020-09-18 18:38:38 -07:00
..
abstract.rst bpo-41103: Remove old buffer protocol support (#21117) 2020-06-26 08:07:22 +09:00
allocation.rst bpo-37432: Doc: Fix signature of PyObject_Del() (GH-14430) 2019-06-28 18:02:56 +09:00
apiabiversion.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
arg.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
bool.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
buffer.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
bytearray.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
bytes.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
call.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
capsule.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
cell.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
code.rst Fix the miscellaneous typo (GH-17700) 2019-12-25 07:39:35 -08:00
codec.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
complex.rst bpo-20092. Use __index__ in constructors of int, float and complex. (GH-13108) 2019-06-02 00:05:48 +03:00
concrete.rst bpo-41324 Add a minimal decimal capsule API (#21519) 2020-08-10 16:32:21 +02:00
contextvars.rst bpo-40428: Remove references to Py*_ClearFreeList in the docs (GH-19783) 2020-04-29 04:41:56 +02:00
conversion.rst bpo-36020: Require vsnprintf() to build Python (GH-20899) 2020-06-16 00:54:44 +02:00
coro.rst bpo-38600: NULL -> ``NULL``. (GH-17001) 2019-10-30 21:37:16 +02:00
datetime.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
decimal.rst bpo-41324 Add a minimal decimal capsule API (#21519) 2020-08-10 16:32:21 +02:00
descriptor.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
dict.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
exceptions.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
file.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
float.rst bpo-40428: Remove references to Py*_ClearFreeList in the docs (GH-19783) 2020-04-29 04:41:56 +02:00
function.rst bpo-38600: NULL -> ``NULL``. (GH-17001) 2019-10-30 21:37:16 +02:00
gcsupport.rst bpo-40170: Convert PyObject_IS_GC() macro to a function (GH-19464) 2020-04-14 20:11:20 +02:00
gen.rst bpo-41756: Introduce PyGen_Send C API (GH-22196) 2020-09-18 18:38:38 -07:00
import.rst bpo-38600: NULL -> ``NULL``. (GH-17001) 2019-10-30 21:37:16 +02:00
index.rst bpo-36763: Implement the PEP 587 (GH-13592) 2019-05-27 16:39:22 +02:00
init.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
init_config.rst Doc: Minor fix to init config C API documentation (GH-21198) 2020-07-01 11:32:54 +02:00
intro.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
iter.rst Minor C API documentation improvements. (GH-17696) 2019-12-24 22:25:56 -06:00
iterator.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
list.rst bpo-40428: Remove references to Py*_ClearFreeList in the docs (GH-19783) 2020-04-29 04:41:56 +02:00
long.rst bpo-41211: Doc: Fix PyLong_FromUnicodeObject (GH-21325) 2020-07-05 13:01:48 +09:00
mapping.rst bpo-39153: Clarify C API *SetItem refcounting semantics (GH-18220) 2020-01-29 21:20:53 +10:00
marshal.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
memory.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
memoryview.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
method.rst bpo-40428: Remove references to Py*_ClearFreeList in the docs (GH-19783) 2020-04-29 04:41:56 +02:00
module.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
none.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
number.rst bpo-40792: Make the result of PyNumber_Index() always having exact type int. (GH-20443) 2020-05-28 10:33:45 +03:00
object.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
objimpl.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
refcounting.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
reflection.rst bpo-40421: Add PyFrame_GetBack() function (GH-19765) 2020-04-29 03:28:46 +02:00
sequence.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
set.rst bpo-40428: Remove references to Py*_ClearFreeList in the docs (GH-19783) 2020-04-29 04:41:56 +02:00
slice.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00
stable.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
structures.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
sys.rst bpo-39882: Py_FatalError() logs the function name (GH-18819) 2020-03-07 00:54:20 +01:00
tuple.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
type.rst Note the buffer slots can be set with PyType_Spec with the unlimited API. (GH-22031) 2020-09-01 20:36:42 -05:00
typeobj.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
unicode.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
utilities.rst Doc: Replace the deprecated highlightlang directive by highlight. (#13377) 2019-05-17 15:25:34 +05:30
veryhigh.rst bpo-40204, doc: Fix syntax of C variables (GH-21846) 2020-08-13 22:11:50 +02:00
weakref.rst bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950) 2019-10-30 12:03:20 +02:00