A API C pública

A API C pública é composta por funções definidas em todos os arquivos de cabeçalho C no diretório py/. A maioria das APIs C importantes do runtime principal é exposta em runtime.h e obj.h.

O exemplo a seguir mostra funções da API pública de obj.h:

mp_obj_t mp_obj_new_list(size_t n, mp_obj_t *items);
mp_obj_t mp_obj_list_append(mp_obj_t self_in, mp_obj_t arg);
mp_obj_t mp_obj_list_remove(mp_obj_t self_in, mp_obj_t value);
void mp_obj_list_get(mp_obj_t self_in, size_t *len, mp_obj_t **items);

Em sua essência, quaisquer funções e macros nos arquivos de cabeçalho compõem a API pública e podem ser usadas para acessar detalhes de muito baixo nível do MicroPython. Funções static inline em arquivos de cabeçalho também são adequadas; tais funções serão incorporadas (inlined) no código quando usadas.

Os arquivos de cabeçalho no diretório ports são expostos apenas à funcionalidade específica de uma determinada porta.