/* Destroys the dataset, freeing all memory allocated, and calling any destroy functions set for data elements.  */
void g_dataset_destroy(gconstpointer dataset_location)
/* Destroys the dataset, freeing all memory allocated, and calling any destroy functions set for data elements.  */
void g_dataset_destroy(gconstpointer dataset_location)
{
  g_return_if_fail (dataset_location != NULL);
  G_LOCK (g_dataset_global);
  if (g_dataset_location_ht)
    {
      GDataset *dataset;
      dataset = g_dataset_lookup (dataset_location);
      if (dataset)
	g_dataset_destroy_internal (dataset);
    }
  G_UNLOCK (g_dataset_global);
}