Objetos Geradores¶
Objetos geradores são o que o Python usa para implementar iteradores geradores. Eles são normalmente criados por iteração sobre uma função que produz valores, em vez de invocar explicitamente PyGen_New() ou PyGen_NewWithQualName().
-
type PyGenObject¶
A estrutura C usada para objetos geradores.
-
PyTypeObject PyGen_Type¶
O objeto de tipo correspondendo a objetos geradores.
-
int PyGen_Check(PyObject *ob)¶
Retorna verdadeiro se ob for um objeto gerador; ob não deve ser
NULL. Esta função sempre tem sucesso.
-
int PyGen_CheckExact(PyObject *ob)¶
Retorna verdadeiro se o tipo do ob é
PyGen_Type; ob não deve serNULL. Esta função sempre tem sucesso.
-
PyObject *PyGen_New(PyFrameObject *frame)¶
- Retorna valor: Nova referência.
Cria e retorna um novo objeto gerador com base no objeto frame. Uma referência a quadro é roubada por esta função. O argumento não deve ser
NULL.
-
PyObject *PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
- Retorna valor: Nova referência.
Cria e retorna um novo objeto gerador com base no objeto frame, com
__name__e__qualname__definidos como name e qualname. Uma referência a frame é roubada por esta função. O argumento frame não deve serNULL.
-
PyCodeObject *PyGen_GetCode(PyGenObject *gen)¶
Retorna uma nova referência forte ao objeto de código encapsulado por gen. Esta função sempre tem sucesso.
Objetos geradores assíncronos¶
Ver também
-
PyTypeObject PyAsyncGen_Type¶
O objeto de tipo correspondente aos objetos geradores assíncronos. Está disponível como
types.AsyncGeneratorTypena camada Python.Adicionado na versão 3.6.
-
PyObject *PyAsyncGen_New(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
Cria um novo gerador assíncrono que encapsule frame, com
__name__e__qualname__definidos como name e qualname. frame é apropriado por esta função e não deve serNULL.Em caso de sucesso, esta função retorna uma referência forte ao novo gerador assíncrono. Em caso de falha, esta função retorna
NULLcom uma exceção definida.Adicionado na versão 3.6.