Objetos Generadores

Los objetos generadores son lo que Python usa para implementar iteradores generadores. Normalmente se crean iterando sobre una función que produce valores, en lugar de llamar explícitamente PyGen_New() o PyGen_NewWithQualName().

PyGenObject

La estructura en C utilizada para los objetos generadores.

PyTypeObject PyGen_Type

El objeto tipo correspondiente a los objetos generadores.

int PyGen_Check(PyObject *ob)

Retorna verdadero si ob es un objeto generador; ob no debe ser NULL. Esta función siempre finaliza con éxito.

int PyGen_CheckExact(PyObject *ob)

Retorna verdadero si el tipo de ob es PyGen_Type; ob no debe ser NULL. Esta función siempre finaliza con éxito.

PyObject* PyGen_New(PyFrameObject *frame)
Return value: New reference.

Crea y retorna un nuevo objeto generador basado en el objeto frame. Una referencia a frame es robada por esta función. El argumento no debe ser NULL.

PyObject* PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)
Return value: New reference.

Crea y retorna un nuevo objeto generador basado en el objeto frame, con __name__ y __qualname__ establecido en name y qualname. Una referencia a frame es robada por esta función. El argumento frame no debe ser NULL.