Function
JsonBoxedDeserializeFunc
since: 0.10
Description [src]
Deserializes the contents of the passed JsonNode
into a GBoxed
, for instance:
static gpointer
my_point_deserialize (JsonNode *node)
{
double x = 0.0, y = 0.0;
if (JSON_NODE_HOLDS_ARRAY (node))
{
JsonArray *array = json_node_get_array (node);
if (json_array_get_length (array) == 2)
{
x = json_array_get_double_element (array, 0);
y = json_array_get_double_element (array, 1);
}
}
else if (JSON_NODE_HOLDS_OBJECT (node))
{
JsonObject *obj = json_node_get_object (node);
x = json_object_get_double_member_with_default (obj, "x", 0.0);
y = json_object_get_double_member_with_default (obj, "y", 0.0);
}
// my_point_new() is defined elsewhere
return my_point_new (x, y);
}
Available since: 0.10
Parameters
node
-
Type:
JsonNode
A node tree representing a boxed data.
The data is owned by the caller of the function.