Scroll to navigation

BSON_ITER_T(3) Library Functions Manual BSON_ITER_T(3)

NAME

bson_iter_t - BSON Document Iterator

SYNOPSIS


#include <bson.h> typedef struct { /*< private >*/ } bson_iter_t;

DESCRIPTION

bson_iter_t is a structure used to iterate through the elements of a bson_t

The bson_t

MUST be valid for the lifetime of the iter and it is an error to modify the bson_t while using the iter.

EXAMPLES


bson_iter_t iter; if (bson_iter_init (&iter, my_bson_doc)) { while (bson_iter_next (&iter)) { printf ("Found a field named: %s\n", bson_iter_key (&iter)); } }


bson_iter_t iter; if (bson_iter_init (&iter, my_bson_doc) && bson_iter_find (&iter, "my_field")) { printf ("Found the field named: %s\n", bson_iter_key (&iter)); }


bson_iter_t iter; bson_iter_t sub_iter; if (bson_iter_init_find (&iter, my_bson_doc, "mysubdoc") && (BSON_ITER_HOLDS_DOCUMENT (&iter) || BSON_ITER_HOLDS_ARRAY (&iter)) && bson_iter_recurse (&iter, &sub_iter)) { while (bson_iter_next (&sub_iter)) { printf ("Found key \"%s\" in sub document.\n", bson_iter_key (&sub_iter)); } }


bson_iter_t iter; if (bson_iter_init (&iter, my_doc) && bson_iter_find_descendant (&iter, "a.b.c.d", &sub_iter)) { printf ("The type of a.b.c.d is: %d\n", (int)bson_iter_type (&sub_iter)); }

COLOPHON

This page is part of libbson. Please report any bugs at https://jira.mongodb.org/browse/CDRIVER.
2016‐10‐12 libbson