### Function

# GLib dataset_id_set_data_full

since: 2.0

#### Declaration

    void
    g_dataset_id_set_data_full (
      gconstpointer dataset_location,
      GQuark key_id,
      gpointer data,
      GDestroyNotify destroy_func
    )

#### Description

Sets the data element associated with the given `GQuark` id, and also the function to call when the data element is destroyed. Any previous data with the same key is removed, and its destroy function is called.

Available since: 2.0

This function is not directly available to language bindings.

#### Parameters

`dataset_location`

  Type: `gconstpointer`

  The location identifying the dataset.

  The data is owned by the caller of the function.

`key_id`

  Type: `GQuark`

  The `GQuark` id to identify the data element.

`data`

  Type: `gpointer`

  The data element.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`destroy_func`

  Type: `GDestroyNotify`

  The function to call when the data element is removed. This function will be called with the data element and can be used to free any memory allocated for it.