# Camada de Objetos Abstratos

As funções neste capítulo interagem com os objetos do Python independentemente do tipo deles ou com classes amplas dos tipos de objetos (por exemplo, todos os tipos numéricos ou todos os tipos de sequência). Quando usado nos tipos de objetos pros quais eles não se aplicam eles levantarão uma exceção no Python.

Não é possível usar estas funções em objetos que não estão apropriadamente inicializados, tal como uma objeto de lista que foi criado por `PyList_New()`, mas cujos itens não foram definidos como algum valor não `NULL` ainda.

- Protocolo de objeto
- Protocolo de chamada
  - O protocolo tp_call
  - O protocolo vectorcall
    - Controle de recursão
    - API de suporte à chamada de vetores
  - API de chamada de objetos
  - API de suporte a chamadas
- Protocolo de número
- Protocolo de sequência
- Protocolo de mapeamento
- Protocolo Iterador
- Protocolo de Buffer
  - Estrutura de Buffer
  - Tipos de solicitação do buffer
    - campos independentes do pedido
    - apenas em formato
    - forma, avanços, suboffsets
    - requisições contíguas
    - requisições compostas
  - Vetores Complexos
    - Estilo NumPy: forma e avanços
    - Estilo-PIL: forma, avanços e suboffsets
  - Funções relacionadas ao Buffer