new_from_data
Description:
public static Variant new_from_data<T> (VariantType type, uchar[] data, bool trusted, owned T owner = null)
Creates a new Variant instance from serialized data.
type
is the type of Variant instance that will be constructed. The
interpretation of data
depends on knowing the type.
data
is not modified by this function and must remain valid with an unchanging value until such a time as notify
is
called with user_data
. If the contents of data
change before that time then the result is undefined.
If data
is trusted to be serialized data in normal form then trusted
should be true
. This applies to serialized data created within this process or read from a trusted location on the disk (such as a file installed in /usr/lib
alongside your application). You should set trusted to false if data
is read from the network, a
file in the user's home directory, etc.
If data
was not stored in this machine's native endianness, any multi-byte numeric values in the returned variant will also be in
non-native endianness. byteswap can be used to recover the original values.
notify
will be called with user_data
when data
is no longer needed. The exact time of this call is
unspecified and might even be before this function returns.
Note: data
must be backed by memory that is aligned appropriately for the type
being loaded. Otherwise this function
will internally create a copy of the memory (since GLib 2.60) or (in older versions) fail and exit the process.
Parameters:
type |
a definite VariantType |
data |
the serialized data |
trusted |
true if |
notify |
function to call when |
size |
the size of |
user_data |
data for |
Returns:
a new floating Variant of type |