Объекты массива байтов

PyTypeObject PyByteArray_Type

Этот сущность PyTypeObject представляет тип Python bytearray; это тот же объект, что и bytearray в слое Python.

Введите макросы проверки

int PyByteArray_Check(PyObject *o)

Возвращает true, если o объекта является объектом bytearray или сущностью подтипа типа bytearray.

int PyByteArray_CheckExact(PyObject *o)

Возвращает true, если o объекта является объектом bytearray, но не сущностью подтипа типа bytearray.

Прямые функции API

PyObject* PyByteArray_FromObject(PyObject *o)
Return value: New reference.

Возвращает новый объект bytearray из любого объекта o, реализующего буферный протокол.

PyObject* PyByteArray_FromStringAndSize(const char *string, Py_ssize_t len)
Return value: New reference.

Создать новый объект bytearray из string и его длины len. При отказе вернуть NULL.

PyObject* PyByteArray_Concat(PyObject *a, PyObject *b)
Return value: New reference.

Конкатенация bytearrays a и b и вернуть новый bytearray с результатом.

Py_ssize_t PyByteArray_Size(PyObject *bytearray)

Возвращает размер bytearray после проверки NULL указателя.

char* PyByteArray_AsString(PyObject *bytearray)

Возвращает содержимое bytearray в виде массива символов после проверки NULL указателя. Массив возвращенный всегда имеет добавленный дополнительный байт NULL.

int PyByteArray_Resize(PyObject *bytearray, Py_ssize_t len)

Изменить размер внутреннего буфера bytearray на len.

Макрос

Эти макросы торгуют безопасностью ради скорости и не проверяют указатели.

char* PyByteArray_AS_STRING(PyObject *bytearray)

Макро-версия PyByteArray_AsString().

Py_ssize_t PyByteArray_GET_SIZE(PyObject *bytearray)

Макро-версия PyByteArray_Size().