### Method

# GObject Object set_data_full

#### Declaration

    void
    g_object_set_data_full (
      GObject* object,
      const gchar* key,
      gpointer data,
      GDestroyNotify destroy
    )

#### Description

Like `g_object_set_data()` except it adds notification for when the association is destroyed, either by setting it to a different value or when the object is destroyed.

Note that the `destroy` callback is not called if `data` is `NULL`.

This method is not directly available to language bindings.

#### Parameters

`key`

  Type: `const gchar*`

  Name of the key.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`data`

  Type: `gpointer`

  Data to associate with that key.

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

`destroy`

  Type: `GDestroyNotify`

  Function to call when the association is destroyed.

  The argument can be `NULL`.