bson_context_t#
BSON OID Generation Context
Synopsis#
#include <bson/bson.h>
typedef enum {
BSON_CONTEXT_NONE = 0,
BSON_CONTEXT_DISABLE_PID_CACHE = (1 << 2),
} bson_context_flags_t;
typedef struct _bson_context_t bson_context_t;
bson_context_t *
bson_context_get_default (void);
bson_context_t *
bson_context_new (bson_context_flags_t flags);
void
bson_context_destroy (bson_context_t *context);
Description#
The bson_context_t structure is context for generation of BSON Object
IDs. This context allows overriding behavior of generating ObjectIDs. The flags
BSON_CONTEXT_NONE
, BSON_CONTEXT_THREAD_SAFE
, and BSON_CONTEXT_DISABLE_PID_CACHE
are the only ones used. The others have no effect.
Functions#
Example#
#include <bson/bson.h>
int
main (int argc, char *argv[])
{
bson_context_t *ctx = NULL;
bson_oid_t oid;
/* use default context, via bson_context_get_default() */
bson_oid_init (&oid, NULL);
/* specify a local context for additional control */
ctx = bson_context_new (BSON_CONTEXT_NONE);
bson_oid_init (&oid, ctx);
bson_context_destroy (ctx);
return 0;
}