Objetos de tipo¶
-
PyTypeObject
¶ A estrutura C dos objetos usados para descrever tipos embutidos.
-
PyObject*
PyType_Type
¶ Este é o objeto de tipo para objetos tipo; é o mesmo objeto que
type
na camada Python.
-
int
PyType_Check
(PyObject *o)¶ Return true if the object o is a type object, including instances of types derived from the standard type object. Return false in all other cases.
-
int
PyType_CheckExact
(PyObject *o)¶ Return true if the object o is a type object, but not a subtype of the standard type object. Return false in all other cases.
-
unsigned int
PyType_ClearCache
()¶ Limpa o cache de pesquisa interno. Retorna a marcação de versão atual.
-
unsigned long
PyType_GetFlags
(PyTypeObject* type)¶ Retorna o membro
tp_flags
de type. Esta função deve ser usada principalmente com Py_LIMITED_API; os bits sinalizadores individuais têm garantia de estabilidade em todas as versões do Python, mas o acesso atp_flags
não faz parte da API limitada.Novo na versão 3.2.
Alterado na versão 3.4: O tipo de retorno é agora um
unsigned long
em vez de umlong
.
-
void
PyType_Modified
(PyTypeObject *type)¶ Invalida o cache de pesquisa interna para o tipo e todos os seus subtipos. Esta função deve ser chamada após qualquer modificação manual dos atributos ou classes bases do tipo.
-
int
PyType_HasFeature
(PyTypeObject *o, int feature)¶ Return true if the type object o sets the feature feature. Type features are denoted by single bit flags.
-
int
PyType_IS_GC
(PyTypeObject *o)¶ Retorna verdadeiro se o objeto tipo incluir suporte para o detector de ciclo; isso testa o sinalizador de tipo
Py_TPFLAGS_HAVE_GC
.
-
int
PyType_IsSubtype
(PyTypeObject *a, PyTypeObject *b)¶ Retorna verdadeiro se a for um subtipo de b.
Esta função só verifica pelos subtipos, o que significa que
__subclasscheck__()
não é chamado em b. ChamePyObject_IsSubclass()
para fazer a mesma verificação queissubclass()
faria.
-
PyObject*
PyType_GenericAlloc
(PyTypeObject *type, Py_ssize_t nitems)¶ - Return value: New reference.
Manipulador genérico para o slot
tp_alloc
de um objeto tipo. Use o mecanismo de alocação de memória padrão do Python para alocar uma nova instância e inicializar todo o seu conteúdo paraNULL
.
-
PyObject*
PyType_GenericNew
(PyTypeObject *type, PyObject *args, PyObject *kwds)¶ - Return value: New reference.
Manipulador genérico para o slot
tp_new
de um objeto tipo. Cria uma nova instância usando o slottp_alloc
do tipo.
-
int
PyType_Ready
(PyTypeObject *type)¶ Finaliza um objeto tipo. Isso deve ser chamado em todos os objetos tipo para finalizar sua inicialização. Esta função é responsável por adicionar slots herdados da classe base de um tipo. Retorna
0
em caso de sucesso, ou retorna-1
e define uma exceção em caso de erro.
-
PyObject*
PyType_FromSpec
(PyType_Spec *spec)¶ - Return value: New reference.
Creates and returns a heap type object from the spec passed to the function.
-
PyObject*
PyType_FromSpecWithBases
(PyType_Spec *spec, PyObject *bases)¶ - Return value: New reference.
Creates and returns a heap type object from the spec. In addition to that, the created heap type contains all types contained by the bases tuple as base types. This allows the caller to reference other heap types as base types.
Novo na versão 3.3.
-
void*
PyType_GetSlot
(PyTypeObject *type, int slot)¶ Retorna o ponteiro de função armazenado no slot fornecido. Se o resultado for
NULL
, isso indica que o slot éNULL
ou que a função foi chamada com parâmetros inválidos. Os chamadores normalmente lançarão o ponteiro do resultado no tipo de função apropriado.Novo na versão 3.4.