Objek Byte Array
****************

type PyByteArrayObject

   Subtipe dari "PyObject" ini mewakili objek bytearray Python.

PyTypeObject PyByteArray_Type
    * Part of the Stable ABI.*

   Instance dari "PyTypeObject" mewakili tipe bytearray Python; itu
   adalah objek yang sama dengan "bytearray" di lapisan Python.


Makro cek tipe
==============

int PyByteArray_Check(PyObject *o)

   Mengembalikan nilai true jika objek *o* adalah objek bytearray atau
   turunan dari subtipe tipe bytearray. Fungsi ini selalu berhasil.

int PyByteArray_CheckExact(PyObject *o)

   Mengembalikan nilai true jika objek *o* adalah objek bytearray,
   tetapi bukan turunan dari subtipe tipe bytearray. Fungsi ini selalu
   berhasil.


Fungsi API langsung
===================

PyObject *PyByteArray_FromObject(PyObject *o)
    *Return value: New reference.** Part of the Stable ABI.*

   Mengembalikan objek bytearray baru dari objek apa pun, *o*, yang
   mengimplementasikan buffer protocol.

PyObject *PyByteArray_FromStringAndSize(const char *string, Py_ssize_t len)
    *Return value: New reference.** Part of the Stable ABI.*

   Membuat objek bytearray baru dari *string* dan panjangnya, *len*.
   Jika gagal, "NULL" dikembalikan.

PyObject *PyByteArray_Concat(PyObject *a, PyObject *b)
    *Return value: New reference.** Part of the Stable ABI.*

   Menyatukan bytearrays *a* dan *b* dan mengembalikan bytearray baru
   dengan hasilnya.

Py_ssize_t PyByteArray_Size(PyObject *bytearray)
    * Part of the Stable ABI.*

   Mengembalikan ukuran *bytearray* setelah memeriksa pointer "NULL".

char *PyByteArray_AsString(PyObject *bytearray)
    * Part of the Stable ABI.*

   Mengembalikan konten *bytearray* sebagai array karakter setelah
   memeriksa pointer "NULL". Array yang dikembalikan selalu memiliki
   byte null ekstra yang ditambahkan.

int PyByteArray_Resize(PyObject *bytearray, Py_ssize_t len)
    * Part of the Stable ABI.*

   Mengubah ukuran buffer internal *bytearray* menjadi *len*.


Makro
=====

Makro ini menukar keamanan dengan kecepatan dan tidak memeriksa
pointer.

char *PyByteArray_AS_STRING(PyObject *bytearray)

   Similar to "PyByteArray_AsString()", but without error checking.

Py_ssize_t PyByteArray_GET_SIZE(PyObject *bytearray)

   Similar to "PyByteArray_Size()", but without error checking.
