bson_string_t — libbson 1.6.3

- libbson 1.6.3 »
- API Reference

# bson_string_t

String Building Abstraction

## Synopsis

    #include <bson.h>

    typedef struct {
       char *str;
       uint32_t len;
       uint32_t alloc;
    } bson_string_t;

## Description

bson_string_t is an abstraction for building strings. As chunks are added to the string, allocations are performed in powers of two.

This API is useful if you need to build UTF-8 encoded strings.

## Functions

- bson_snprintf()
- bson_strdup()
- bson_strdup_printf()
- bson_strdupv_printf()
- bson_strfreev()
- bson_string_append()
- bson_string_append_c()
- bson_string_append_printf()
- bson_string_append_unichar()
- bson_string_free()
- bson_string_new()
- bson_string_truncate()
- bson_strncpy()
- bson_strndup()
- bson_strnlen()
- bson_utf8_escape_for_json()
- bson_utf8_from_unichar()
- bson_utf8_get_char()
- bson_utf8_next_char()
- bson_utf8_validate()
- bson_vsnprintf()

## Example

    bson_string_t *str;

    str = bson_string_new (NULL);
    bson_string_append_printf (str, "%d %s %f\n", 0, "some string", 0.123);
    printf ("%s\n", str->str);

    bson_string_free (str, true);

Created using Sphinx 1.5.3, based on Sphinx Readable Theme.