| BSON_ARRAY_AS_CANONICAL_EXTENDED_JSON(3) | libbson | BSON_ARRAY_AS_CANONICAL_EXTENDED_JSON(3) |
char * bson_array_as_canonical_extended_json (const bson_t *bson, size_t *length);
The bson_array_as_canonical_extended_json() encodes bson as a UTF-8 string in the canonical MongoDB Extended JSON format, except the outermost element is encoded as a JSON array, rather than a JSON document.
The caller is responsible for freeing the resulting UTF-8 encoded string by calling bson_free() with the result.
If non-NULL, length will be set to the length of the result in bytes.
If successful, a newly allocated UTF-8 encoded string and length is set.
Upon failure, NULL is returned.
#include <bson/bson.h>
int main ()
{
bson_t bson;
char *str;
bson_init (&bson);
/* BSON array is a normal BSON document with integer values for the keys,
* starting with 0 and continuing sequentially
*/
BSON_APPEND_INT32 (&bson, "0", 1);
BSON_APPEND_UTF8 (&bson, "1", "bar");
str = bson_array_as_canonical_extended_json (&bson, NULL);
/* Prints
* [ { "$numberInt" : 1 }, "bar" ]
*/
printf ("%s\n", str);
bson_free (str);
bson_destroy (&bson);
}
MongoDB, Inc
2017-present, MongoDB, Inc
| March 31, 2024 | 1.26.0 |