Objetos de Código

Os objetos de código são um detalhe de baixo nível da implementação do CPython. Cada um representa um pedaço de código executável que ainda não foi vinculado a uma função.

PyCodeObject

A estrutura C dos objetos usados para descrever objetos de código. Os campos deste tipo estão sujeitos a alterações a qualquer momento.

PyTypeObject PyCode_Type

Esta é uma instância de: c: digite: PyTypeObject representando o tipo Python: class:` code`.

int PyCode_Check(PyObject *co)

Retorna True se co for um objeto code.

int PyCode_GetNumFree(PyObject *co)

Retorna o número de variáveis livres em co.

PyCodeObject *PyCode_New(int argcount, int nlocals, int stacksize, int flags, PyObject *code, PyObject *consts, PyObject *names, PyObject *varnames, PyObject *freevars, PyObject *cellvars, PyObject *filename, PyObject *name, int firstlineno, PyObject *lnotab)

Retornar um novo objeto de código. Se você precisa de um objeto código fictício para criar um quadro, use: c: func: PyCode_NewEmpty no caso. Chamando: c: func: PyCode_New diretamente pode vinculá-lo a uma versão precisa do Python, uma vez que a definição do bytecode muda frequentemente.

int PyCode_NewEmpty(const char *filename, const char *funcname, int firstlineno)

Return a new empty code object with the specified filename, function name, and first line number. It is illegal to exec or eval() the resulting code object.