Risk-Aware AI Code Review for Business-Critical Systems
LiveReview LiveReview Explore LiveReview

Author

       MongoDB, Inc

Description

bson_as_json_with_opts()  encodes bson as a UTF-8 string in the MongoDBExtendedJSONformat or libbson'sLegacyExtendedJSON.

       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.

       The opts structure is used to pass options for the encoding process. Please refer to the documentation of
       bson_json_opts_t for more details.

Example

          bson_t *b = BCON_NEW ("foo", BCON_INT32 (123));
          bson_json_opts_t *opts = bson_json_opts_new (BSON_JSON_MODE_CANONICAL, BSON_MAX_LEN_UNLIMITED);
          char *str = bson_as_json_with_opts (b, NULL, opts);
          printf ("Canonical Extended JSON: %s\n", str);
          // Prints:
          // Canonical Extended JSON: { "foo" : { "$numberInt" : "123" } }
          bson_free (str);
          bson_json_opts_destroy (opts);
          bson_destroy (b);

Parameters

       • bson: A bson_t.

       • length: An optional location for the length of the resulting string.

       • opts: A bson_json_opts_t.

Returns

       If successful, a newly allocated UTF-8 encoded string and length is set.

       Upon failure, NULL is returned.

Synopsis

          char *
          bson_as_json_with_opts (const bson_t *bson, size_t *length, const bson_json_opts_t *opts);

See Also