home | help
BSON_ITER_INIT(3)		     libbson		       BSON_ITER_INIT(3)

SYNOPSIS
	bool
	bson_iter_init (bson_iter_t *iter, const bson_t *bson);

PARAMETERS
     * iter: A bson_iter_t.

     * bson: A bson_t.

DESCRIPTION
     The  bson_iter_init()  function  shall  initialize iter to iterate upon the
     BSON document bson. Upon initialization, iter is placed  before  the  first
     element.	Callers   must	 call	bson_iter_next(),  bson_iter_find(),  or
     bson_iter_find_case() to advance to an element.

RETURNS
     Returns true if the iter was successfully initialized.

EXAMPLE
	static void
	print_doc_id (const bson_t *doc)
	{
	   bson_iter_t iter;
	   bson_oid_t oid;
	   char oidstr[25];

	   if (bson_iter_init (&iter, doc) && bson_iter_find (&iter, "_id") &&
	       BSON_ITER_HOLDS_OID (&iter)) {
	      bson_iter_oid (&iter, &oid);
	      bson_oid_to_string (&oid, oidstr);
	      printf ("%s\n", oidstr);
	   } else {
	      printf ("Document is missing _id.\n");
	   }
	}

	/* alternatively */

	static void
	print_doc_id (const bson_t *doc)
	{
	   bson_iter_t iter;
	   bson_oid_t oid;
	   char oidstr[25];

	   if (bson_iter_init_find (&iter, doc, "_id") && BSON_ITER_HOLDS_OID (&iter)) {
	      bson_iter_oid (&iter, &oid);
	      bson_oid_to_string (&oid, oidstr);
	      printf ("%s\n", oidstr);
	   } else {
	      printf ("Document is missing _id.\n");
	   }
	}

AUTHOR
     MongoDB, Inc

COPYRIGHT
     2009-present, MongoDB, Inc.

1.30.8				  Aug 27, 2026		       BSON_ITER_INIT(3)

home | help