void _mongoc_cursor_cursorid_destroy (mongoc_cursor_t *cursor) { ENTRY; bson_free (cursor->interface_data); _mongoc_cursor_destroy (cursor); EXIT; }
void _mongoc_cursor_array_destroy (mongoc_cursor_t *cursor) { ENTRY; bson_free (cursor->iface_data); _mongoc_cursor_destroy (cursor); EXIT; }
void mongoc_cursor_destroy (mongoc_cursor_t *cursor) { BSON_ASSERT(cursor); if (cursor->interface.destroy) { cursor->interface.destroy(cursor); } else { _mongoc_cursor_destroy(cursor); } EXIT; }
static void _mongoc_cursor_cursorid_destroy (mongoc_cursor_t *cursor) { mongoc_cursor_cursorid_t *cid; ENTRY; cid = (mongoc_cursor_cursorid_t *)cursor->iface_data; BSON_ASSERT (cid); bson_destroy (&cid->array); bson_free (cid); _mongoc_cursor_destroy (cursor); EXIT; }
static void _mongoc_cursor_array_destroy (mongoc_cursor_t *cursor) { mongoc_cursor_array_t *arr; ENTRY; arr = (mongoc_cursor_array_t *)cursor->iface_data; if (arr->has_synthetic_bson) { bson_destroy(&arr->bson); } bson_free (cursor->iface_data); _mongoc_cursor_destroy (cursor); EXIT; }
static void _mongoc_cursor_transform_destroy (mongoc_cursor_t *cursor) { mongoc_cursor_transform_t *transform; ENTRY; transform = cursor->iface_data; if (transform->dtor) { transform->dtor (transform->ctx); } bson_destroy (&transform->tmp); bson_free (cursor->iface_data); _mongoc_cursor_destroy (cursor); EXIT; }