logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

typedef struct _bson_mem_vtable_t {

Author

       MongoDB, Inc

Description

       This function shall install a new memory allocator to be used by Libbson.

       For backwards compatibility, if vtable->aligned_alloc is not set, calls to vtable->aligned_alloc will use
       vtable->malloc instead.

       WARNING:
          This  function  MUST be called at the beginning of the process. Failure to do so will result in memory
          being freed by the wrong allocator.

Parameters

vtable: A bson_mem_vtable_t with every non-padding field set.

Synopsis

          typedef struct _bson_mem_vtable_t {
             void *(*malloc) (size_t num_bytes);
             void *(*calloc) (size_t n_members, size_t num_bytes);
             void *(*realloc) (void *mem, size_t num_bytes);
             void (*free) (void *mem);
             void *(*aligned_alloc) (size_t alignment, size_t num_bytes);
             void *padding[3];
          } bson_mem_vtable_t;

          void
          bson_mem_set_vtable (const bson_mem_vtable_t *vtable);

See Also