### Method

# GLib Variant byteswap

since: 2.24

#### Declaration

    GVariant*
    g_variant_byteswap (
      GVariant* value
    )

#### Description

Performs a byteswapping operation on the contents of `value`. The result is that all multi-byte numeric data contained in `value` is byteswapped. That includes 16, 32, and 64bit signed and unsigned integers as well as file handles and double precision floating point values.

This function is an identity mapping on any value that does not contain multi-byte numeric data. That include strings, booleans, bytes and containers containing only these things (recursively).

While this function can safely handle untrusted, non-normal data, it is recommended to check whether the input is in normal form beforehand, using g_variant_is_normal_form(), and to reject non-normal inputs if your application can be strict about what inputs it rejects.

The returned value is always in normal form and is marked as trusted. A full, not floating, reference is returned.

Available since: 2.24

#### Return value

Type: `GVariant`

The byteswapped form of `value`.

The caller of the method takes ownership of the returned data, and is responsible for freeing it.