bson_append_symbol()

Synopsis

#define BSON_APPEND_SYMBOL(b, key, val) \
   bson_append_symbol (b, key, (int) strlen (key), val, (int) strlen (val))

bool
bson_append_symbol (bson_t *bson,
                    const char *key,
                    int key_length,
                    const char *value,
                    int length);

Parameters

  • bson: A bson_t.
  • key: An ASCII C string containing the name of the field.
  • key_length: The length of key in bytes, or -1 to determine the length with strlen().
  • value: The symbol.
  • length: A length of symbol in bytes, or -1 to determine the length with strlen().

Description

Appends a new field to bson of type BSON_TYPE_SYMBOL. This BSON type is deprecated and should not be used in new code.

Due to legacy behavior, passing NULL for value appends a null value, not a symbol value. To append a null value directly, prefer using bson_append_null().

Returns

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