Method

GObjectValuetake_variant

Declaration

void
g_value_take_variant (
  GValue* value,
  GVariant* variant
)

Description

Set the contents of a variant GValue to variant, and takes over the ownership of the caller’s reference to variant; the caller doesn’t have to unref it any more (i.e. the reference count of the variant is not increased).

If variant was floating then its floating reference is converted to a hard reference.

If you want the GValue to hold its own reference to variant, use g_value_set_variant() instead.

This is an internal function introduced mainly for C marshallers.

Available since:2.26

Parameters

variant GVariant
 

A GVariant, or NULL.

 The argument can be NULL.
 The instance takes ownership of the data, and is responsible for freeing it.