BSON_CONTEXT_T(3)

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.

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;
    }

AUTHOR
MongoDB, Inc

COPYRIGHT
2009-present, MongoDB, Inc.