Function

GLibVariantnew_maybe

Declaration

GVariant*
g_variant_new_maybe (
  const GVariantType* child_type,
  GVariant* child
)

Description

Depending on if child is NULL, either wraps child inside of a maybe container or creates a Nothing instance for the given type.

At least one of child_type and child must be non-NULL. If child_type is non-NULL then it must be a definite type. If they are both non-NULL then child_type must be the type of child.

If child is a floating reference (see g_variant_ref_sink()), the new instance takes ownership of child.

Available since:2.24

Parameters

child_type GVariantType
 

The GVariantType of the child, or NULL.

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

The child value, or NULL.

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

Return value

Returns: GVariant
 

A floating reference to a new GVariant maybe instance.

 The data is owned by the called function.