DOKK / manpages / debian 12 / libbson-doc / bson_append_array_begin.3.en
BSON_APPEND_ARRAY_BEGIN(3) libbson BSON_APPEND_ARRAY_BEGIN(3)

bson_append_array_begin - bson_append_array_begin()

#define BSON_APPEND_ARRAY_BEGIN(b, key, child) \

bson_append_array_begin (b, key, (int) strlen (key), child) bool bson_append_array_begin (bson_t *bson,
const char *key,
int key_length,
bson_t *child);


  • bson: A bson_t.
  • key: A string containing the name for the key.
  • key_length: The length of key or -1 to call strlen().
  • child: A bson_t.

The bson_append_array_begin() function shall begin appending an array field to bson. This allows for incrementally building a sub-array. Doing so will generally yield better performance as you will serialize to a single buffer. When done building the sub-array, the caller MUST call bson_append_array_end().

For generating array element keys, see bson_uint32_to_string().

Returns true if the operation was applied successfully. The function will fail if appending the array grows bson larger than INT32_MAX.

MongoDB, Inc

2017-present, MongoDB, Inc

October 20, 2022 1.23.1