Документация Python неофициальный перевод

Объекты-генераторыGenerator Objects

Объекты-генераторы – это то, что Python использует для реализации итераторов генераторов. Обычно они создаются путём итерации по функции, которая возвращает значения, а не явным вызовом PyGen_New() или PyGen_NewWithQualName().

PyGenObject

C-структура, используемая для объектов-генераторов.

PyTypeObject PyGen_Type

Объект типа, соответствующий объектам-генераторам.

int PyGen_Check(PyObject *ob)

Возвращает истину, если ob является объектом-генератором; ob не должен быть NULL. Эта функция всегда завершается успешно.

int PyGen_CheckExact(PyObject *ob)

Возвращает истину, если тип obPyGen_Type; ob не должен быть NULL. Эта функция всегда завершается успешно.

PyObject* PyGen_New(PyFrameObject *frame)
Возвращаемое значение: новая ссылка.

Создаёт и возвращает новый объект-генератор на основе объекта frame. Функция забирает ссылку на frame. Аргумент не должен быть NULL.

PyObject* PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)
Возвращаемое значение: новая ссылка.

Создаёт и возвращает новый объект-генератор на основе объекта frame, при этом __name__ и __qualname__ устанавливаются в name и qualname. Функция забирает ссылку на frame. Аргумент frame не должен быть NULL.