Parses a Variant from a text representation.
A single Variant is parsed from the content of
The format is described here.
The memory at
limit will never be accessed and the parser behaves as if the character at
limit is the nul terminator.
This has the effect of bounding
endptr is non-null then
text is permitted to contain data following the value
that this function parses and
endptr will be updated to point to the first character past the end of the text parsed by this
endptr is null and there is extra data then an error is returned.
type is non-null then the value will be parsed to have that type. This may result in
additional parse errors (in the case that the parsed value doesn't fit the type) but may also result in fewer errors (in the case that the type
would have been ambiguous, such as with empty arrays).
In the event that the parsing is successful, the resulting Variant is returned. It is
never floating, and must be freed with
In case of any error, null will be returned. If throws is non- null then it will be set to reflect the error that occurred.
Officially, the language understood by the parser is "any string produced by print ".
There may be implementation specific restrictions on deeply nested values, which would result in a g_variant_parse_error_recursion error. Variant is guaranteed to handle nesting up to at least 64 levels.
a VariantType, or null
a string containing a GVariant in text form
a pointer to the end of
a location to store the end pointer, or null
a non-floating reference to a Variant, or null