### Virtual Method

# Gio Icon serialize

since: 2.38

#### Declaration

    GVariant*
    serialize (
      GIcon* icon
    )

#### Description

Serializes a `GIcon` into a `GVariant`. An equivalent `GIcon` can be retrieved back by calling `g_icon_deserialize()` on the returned value. As serialization will avoid using raw icon data when possible, it only makes sense to transfer the `GVariant` between processes on the same machine, (as opposed to over the network), and within the same file system namespace.

Available since: 2.38

#### Return value

Type: `GVariant`

A `GVariant`, or `NULL` when serialization fails. The `GVariant` will not be floating.

The caller of the function takes ownership of the data, and is responsible for freeing it.
The return value can be `NULL`.