[glibmm] Regenerate the XML of the C documentation.



commit 4865ceac2198894ef031c904230d2e8b3794db3d
Author: Murray Cumming <murrayc murrayc com>
Date:   Tue Feb 15 09:56:09 2011 +0100

    Regenerate the XML of the C documentation.
    
    	* gio/src/gio_docs.xml:
    	* glib/src/glib_docs.xml: Regenerated with docextract_to_xml.py.

 ChangeLog              |    7 +
 gio/src/gio_docs.xml   |33003 +++++++++++++++++++++-----------------
 glib/src/glib_docs.xml |42021 +++++++++++++++++++++---------------------------
 3 files changed, 36473 insertions(+), 38558 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index edb4a31..3aa3847 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2011-02-15  Murray Cumming  <murrayc murrayc com>
 
+	Regenerate the XML of the C documentation.
+
+	* gio/src/gio_docs.xml:
+	* glib/src/glib_docs.xml: Regenerated with docextract_to_xml.py.
+
+2011-02-15  Murray Cumming  <murrayc murrayc com>
+
 	Require glib 2.28.0.
 
 	* configure.ac: Update the version check.
diff --git a/gio/src/gio_docs.xml b/gio/src/gio_docs.xml
index cd72d2d..9379706 100644
--- a/gio/src/gio_docs.xml
+++ b/gio/src/gio_docs.xml
@@ -1,566 +1,596 @@
 <root>
-<function name="g_file_attribute_info_list_add">
+<function name="fen_add">
 <description>
-Adds a new attribute with @name to the @list, setting
-its @type and @flags.
+Won't hold a ref, we have a timout callback to clean unused node_t.
+If there is no value for a key, add it and return it; else return the old
+one.
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GFileAttributeInfoList.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the attribute to add.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the #GFileAttributeType for the attribute.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> #GFileAttributeInfoFlags for the attribute.
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mount_guess_content_type">
+<function name="fen_init">
 <description>
-Tries to guess the type of content stored on @mount. Returns one or
-more textual identifiers of well-known content types (typically
-prefixed with &quot;x-content/&quot;), e.g. x-content/image-dcf for camera 
-memory cards. See the &lt;ulink url=&quot;http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec&quot;&gt;shared-mime-info&lt;/ulink&gt;
-specification for more on x-content types.
-
-This is an asynchronous operation (see
-g_mount_guess_content_type_sync() for the synchronous version), and
-is finished by calling g_mount_guess_content_type_finish() with the
- mount and #GAsyncResult data returned in the @callback.
-
-Since: 2.18
+FEN subsystem initializing.
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount
-</parameter_description>
-</parameter>
-<parameter name="force_rescan">
-<parameter_description> Whether to force a rescan of the content. 
-Otherwise a cached result will be used if available
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_memory_input_stream_add_data">
+<function name="g_action_activate">
 <description>
-Appends @data to data that can be read from the input stream
+Activates the action.
+
+ parameter must be the correct type of parameter for the action (ie:
+the parameter type given at construction time).  If the parameter
+type was %NULL then @parameter must also be %NULL.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GMemoryInputStream
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> input data
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> length of the data, may be -1 if @data is a nul-terminated string
-</parameter_description>
-</parameter>
-<parameter name="destroy">
-<parameter_description> function that is called to free @data, or %NULL
+<parameter name="parameter">
+<parameter_description> the parameter to the activation
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_input_stream_clear_pending">
+<function name="g_action_get_enabled">
 <description>
-Clears the pending flag on @stream.
+Checks if @action is currently enabled.
+
+An action must be enabled in order to be activated or in order to
+have its state changed from outside callers.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> input stream
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> whether the action is enabled
+
+</return>
 </function>
 
-<function name="g_dbus_proxy_get_cached_property">
+<function name="g_action_get_name">
 <description>
-Looks up the value for a property from the cache. This call does no
-blocking IO.
-
-If @proxy has an expected interface (see
-#GDBusProxy:g-interface-info), then @property_name (for existence)
-is checked against it.
+Queries the name of @action.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> Property name.
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> A reference to the #GVariant instance that holds the value
-for @property_name or %NULL if the value is not in the cache. The
-returned reference must be freed with g_variant_unref().
+<return> the name of the action
 
 </return>
 </function>
 
-<function name="g_file_enumerator_is_closed">
+<function name="g_action_get_parameter_type">
 <description>
-Checks if the file enumerator has been closed.
+Queries the type of the parameter that must be given when activating
+ action 
 
+When activating the action using g_action_activate(), the #GVariant
+given to that function must be of the type returned by this function.
+
+In the case that this function returns %NULL, you must not give any
+#GVariant, but %NULL instead.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @enumerator is closed.
+<return> the parameter type
+
 </return>
 </function>
 
-<function name="g_srv_target_get_port">
+<function name="g_action_get_state">
 <description>
-Gets @target's port
+Queries the current state of @action.
 
-Since: 2.22
+If the action is not stateful then %NULL will be returned.  If the
+action is stateful then the type of the return value is the type
+given by g_action_get_state_type().
+
+The return value (if non-%NULL) should be freed with
+g_variant_unref() when it is no longer required.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GSrvTarget
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> @target's port
+<return> the current state of the action
 
 </return>
 </function>
 
-<function name="g_mount_eject">
+<function name="g_action_get_state_hint">
 <description>
-Ejects a mount. This is an asynchronous operation, and is 
-finished by calling g_mount_eject_finish() with the @mount 
-and #GAsyncResult data returned in the @callback.
+Requests a hint about the valid range of values for the state of
+ action 
 
-Deprecated: 2.22: Use g_mount_eject_with_operation() instead.
+If %NULL is returned it either means that the action is not stateful
+or that there is no hint about the valid range of values for the
+state of the action.
+
+If a #GVariant array is returned then each item in the array is a
+possible value for the state.  If a #GVariant pair (ie: two-tuple) is
+returned then the tuple specifies the inclusive lower and upper bound
+of valid values for the state.
+
+In any case, the information is merely a hint.  It may be possible to
+have a state value outside of the hinted range and setting a value
+within the range may fail.
+
+The return value (if non-%NULL) should be freed with
+g_variant_unref() when it is no longer required.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the unmount if required for eject
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the state range hint
+
+</return>
 </function>
 
-<function name="g_dbus_error_get_remote_error">
+<function name="g_action_get_state_type">
 <description>
-Gets the D-Bus error name used for @error, if any.
+Queries the type of the state of @action.
 
-This function is guaranteed to return a D-Bus error name for all
-#GError&lt;!-- --&gt;s returned from functions handling remote method
-calls (e.g. g_dbus_connection_call_finish()) unless
-g_dbus_error_strip_remote_error() has been used on @error.
+If the action is stateful (ie: was created with
+g_action_new_stateful()) then this function returns the #GVariantType
+of the state.  This is the type of the initial value given as the
+state.  All calls to g_action_set_state() must give a #GVariant of
+this type and g_action_get_state() will return a #GVariant of the
+same type.
 
-Since: 2.26
+If the action is not stateful (ie: created with g_action_new()) then
+this function will return %NULL.  In that case, g_action_get_state()
+will return %NULL and you must not call g_action_set_state().
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> A #GError.
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> An allocated string or %NULL if the D-Bus error name could not be found. Free with g_free().
+<return> the state type, if the action is stateful
 
 </return>
 </function>
 
-<function name="g_io_extension_get_type">
+<function name="g_action_group_action_added">
 <description>
-Gets the type associated with @extension.
+Emits the #GActionGroup::action-added signal on @action_group.
 
+This function should only be called by #GActionGroup implementations.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="extension">
-<parameter_description> a #GIOExtension
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
+</parameter_description>
+</parameter>
+<parameter name="action_name">
+<parameter_description> the name of an action in the group
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type of @extension
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_backend_keys_changed">
+<function name="g_action_group_action_enabled_changed">
 <description>
-Signals that a list of keys have possibly changed.  Backend
-implementations should call this if keys have possibly changed their
-values.
+Emits the #GActionGroup::action-enabled-changed signal on @action_group.
 
- path must be a valid path (ie: starting and ending with a slash and
-not containing '//').  Each string in @items must form a valid key
-name when @path is prefixed to it (ie: each item must not start or
-end with '/' and must not contain '//').
+This function should only be called by #GActionGroup implementations.
 
-The meaning of this signal is that any of the key names resulting
-from the contatenation of @path with each item in @items may have
-changed.
-
-The same rules for when notifications must occur apply as per
-g_settings_backend_changed().  These two calls can be used
-interchangeably if exactly one item has changed (although in that
-case g_settings_backend_changed() is definitely preferred).
-
-For efficiency reasons, the implementation should strive for @path to
-be as long as possible (ie: the longest common prefix of all of the
-keys that were changed) but this is not strictly required.
-
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #GSettingsBackend implementation
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> the path containing the changes
-</parameter_description>
-</parameter>
-<parameter name="items">
-<parameter_description> the %NULL-terminated list of changed keys
+<parameter name="action_name">
+<parameter_description> the name of an action in the group
 </parameter_description>
 </parameter>
-<parameter name="origin_tag">
-<parameter_description> the origin tag
+<parameter name="enabled">
+<parameter_description> whether or not the action is now enabled
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_is_media_check_automatic">
+<function name="g_action_group_action_removed">
 <description>
-Checks if @drive is capabable of automatically detecting media changes.
+Emits the #GActionGroup::action-removed signal on @action_group.
+
+This function should only be called by #GActionGroup implementations.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
+</parameter_description>
+</parameter>
+<parameter name="action_name">
+<parameter_description> the name of an action in the group
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive is capabable of automatically detecting 
-media changes, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_proxy_set_default_timeout">
+<function name="g_action_group_action_state_changed">
 <description>
-Sets the timeout to use if -1 (specifying default timeout) is
-passed as @timeout_msec in the g_dbus_proxy_call() and
-g_dbus_proxy_call_sync() functions.
+Emits the #GActionGroup::action-state-changed signal on @action_group.
 
-See the #GDBusProxy:g-default-timeout property for more details.
+This function should only be called by #GActionGroup implementations.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="timeout_msec">
-<parameter_description> Timeout in milliseconds.
+<parameter name="action_name">
+<parameter_description> the name of an action in the group
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> the new state of the named action
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_async_initable_new_async">
+<function name="g_action_group_activate_action">
 <description>
-Helper function for constructing #GAsyncInitiable object. This is
-similar to g_object_new() but also initializes the object asynchronously.
+Activate the named action within @action_group.
 
-When the initialization is finished, @callback will be called. You can
-then call g_async_initable_new_finish() to get the new object and check
-for any errors.
+If the action is expecting a parameter, then the correct type of
+parameter must be given as @parameter.  If the action is expecting no
+parameters then @parameter must be %NULL.  See
+g_action_group_get_parameter_type().
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> a #GType supporting #GAsyncInitable.
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the operation.
+<parameter name="action_name">
+<parameter_description> the name of the action to activate
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the initialization is
-finished
+<parameter name="parameter">
+<parameter_description> parameters to the activation
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+</parameters>
+<return></return>
+</function>
+
+<function name="g_action_group_change_action_state">
+<description>
+Request for the state of the named action within @action_group to be
+changed to @value.
+
+The action must be stateful and @value must be of the correct type.
+See g_action_group_get_state_type().
+
+This call merely requests a change.  The action may refuse to change
+its state or may change its state to something other than @value.
+See g_action_group_get_state_hint().
+
+If the @value GVariant is floating, it is consumed.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of the first property, or %NULL if no
-properties
+<parameter name="action_name">
+<parameter_description> the name of the action to request the change on
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description>  the value of the first property, followed by other property
-value pairs, and ended by %NULL.
+<parameter name="value">
+<parameter_description> the new state
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_interface_info_lookup_method">
+<function name="g_action_group_get_action_enabled">
 <description>
-Looks up information about a method.
+Checks if the named action within @action_group is currently enabled.
 
-This cost of this function is O(n) in number of methods.
+An action must be enabled in order to be activated or in order to
+have its state changed from outside callers.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo.
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> A D-Bus method name (typically in CamelCase)
+<parameter name="action_name">
+<parameter_description> the name of the action to query
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMethodInfo or %NULL if not found. Do not free, it is owned by @info.
+<return> whether or not the action is currently enabled
 
 </return>
 </function>
 
-<function name="g_socket_client_connect_to_service_async">
+<function name="g_action_group_get_action_parameter_type">
 <description>
-This is the asynchronous version of
-g_socket_client_connect_to_service().
+Queries the type of the parameter that must be given when activating
+the named action within @action_group.
 
-Since: 2.22
+When activating the action using g_action_group_activate(), the
+#GVariant given to that function must be of the type returned by this
+function.
+
+In the case that this function returns %NULL, you must not give any
+#GVariant, but %NULL instead.
+
+The parameter type of a particular action will never change but it is
+possible for an action to be removed and for a new action to be added
+with the same name but a different parameter type.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> a domain name
-</parameter_description>
-</parameter>
-<parameter name="service">
-<parameter_description> the name of the service to connect to
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="action_name">
+<parameter_description> the name of the action to query
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback
+</parameters>
+<return> the parameter type
+
+</return>
+</function>
+
+<function name="g_action_group_get_action_state">
+<description>
+Queries the current state of the named action within @action_group.
+
+If the action is not stateful then %NULL will be returned.  If the
+action is stateful then the type of the return value is the type
+given by g_action_group_get_state_type().
+
+The return value (if non-%NULL) should be freed with
+g_variant_unref() when it is no longer required.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data for the callback
+<parameter name="action_name">
+<parameter_description> the name of the action to query
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the current state of the action
+
+</return>
 </function>
 
-<function name="g_application_add_action">
+<function name="g_action_group_get_action_state_hint">
 <description>
-Adds an action @name to the list of exported actions of @application.
+Requests a hint about the valid range of values for the state of the
+named action within @action_group.
 
-It is an error to call this function if @application is a proxy for
-a remote application.
+If %NULL is returned it either means that the action is not stateful
+or that there is no hint about the valid range of values for the
+state of the action.
 
-You can invoke an action using g_application_invoke_action().
+If a #GVariant array is returned then each item in the array is a
+possible value for the state.  If a #GVariant pair (ie: two-tuple) is
+returned then the tuple specifies the inclusive lower and upper bound
+of valid values for the state.
 
-The newly added action is enabled by default; you can call
-g_application_set_action_enabled() to disable it.
+In any case, the information is merely a hint.  It may be possible to
+have a state value outside of the hinted range and setting a value
+within the range may fail.
 
-Since: 2.26
+The return value (if non-%NULL) should be freed with
+g_variant_unref() when it is no longer required.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the action name
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="description">
-<parameter_description> the action description; can be a translatable
-string
+<parameter name="action_name">
+<parameter_description> the name of the action to query
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the state range hint
+
+</return>
 </function>
 
-<function name="g_dbus_message_set_header">
+<function name="g_action_group_get_action_state_type">
 <description>
-Sets a header field on @message.
+Queries the type of the state of the named action within
+ action_group 
 
-If @value is floating, @message assumes ownership of @value.
+If the action is stateful then this function returns the
+#GVariantType of the state.  All calls to g_action_group_set_state()
+must give a #GVariant of this type and g_action_group_get_state()
+will return a #GVariant of the same type.
 
-Since: 2.26
+If the action is not stateful then this function will return %NULL.
+In that case, g_action_group_get_state() will return %NULL and you
+must not call g_action_group_set_state().
+
+The state type of a particular action will never change but it is
+possible for an action to be removed and for a new action to be added
+with the same name but a different state type.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="header_field">
-<parameter_description> A 8-bit unsigned integer (typically a value from the #GDBusMessageHeaderField enumeration)
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> A #GVariant to set the header field or %NULL to clear the header field.
+<parameter name="action_name">
+<parameter_description> the name of the action to query
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the state type, if the action is stateful
+
+</return>
 </function>
 
-<function name="g_dbus_node_info_unref">
+<function name="g_action_group_has_action">
 <description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
+Checks if the named action exists within @action_group.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusNodeInfo.
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
+</parameter_description>
+</parameter>
+<parameter name="action_name">
+<parameter_description> the name of the action to check for
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> whether the named action exists
+
+</return>
 </function>
 
-<function name="g_app_info_delete">
+<function name="g_action_group_list_actions">
 <description>
-Tries to delete a #GAppInfo.
+Lists the actions contained within @action_group.
 
-On some platforms, there may be a difference between user-defined
-#GAppInfo&lt;!-- --&gt;s which can be deleted, and system-wide ones which
-cannot. See g_app_info_can_delete().
+The caller is responsible for freeing the list with g_strfreev() when
+it is no longer required.
 
-Since: 2.20
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo
+<parameter name="action_group">
+<parameter_description> a #GActionGroup
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @appinfo has been deleted
+<return> a %NULL-terminated array of the names of the
+actions in the groupb
 
 </return>
 </function>
 
-<function name="g_socket_service_is_active">
+<function name="g_action_set_state">
 <description>
-Check whether the service is active or not. An active
-service will accept new clients that connect, while
-a non-active service will let connecting clients queue
-up until the service is started.
+Request for the state of @action to be changed to @value.
 
-Since: 2.22
+The action must be stateful and @value must be of the correct type.
+See g_action_get_state_type().
+
+This call merely requests a change.  The action may refuse to change
+its state or may change its state to something other than @value.
+See g_action_get_state_hint().
+
+If the @value GVariant is floating, it is consumed.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="service">
-<parameter_description> a #GSocketService
+<parameter name="action">
+<parameter_description> a #GAction
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> the new state
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the service is active, %FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
 <function name="g_app_info_add_supports_type">
@@ -588,1440 +618,1609 @@ application is capable of opening files with the given content type.
 </return>
 </function>
 
-<function name="g_file_info_get_size">
+<function name="g_app_info_can_delete">
 <description>
-Gets the file's size.
+Obtains the information whether the #GAppInfo can be deleted.
+See g_app_info_delete().
 
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #goffset containing the file's size. 
+<return> %TRUE if @appinfo can be deleted
+
 </return>
 </function>
 
-<function name="g_dbus_annotation_info_ref">
+<function name="g_app_info_can_remove_supports_type">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Checks if a supported content type can be removed from an application.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusNodeInfo
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
-
+<return> %TRUE if it is possible to remove supported 
+content types from a given @appinfo, %FALSE if not.
 </return>
 </function>
 
-<function name="g_dbus_interface_info_lookup_signal">
+<function name="g_app_info_create_from_commandline">
 <description>
-Looks up information about a signal.
-
-This cost of this function is O(n) in number of signals.
+Creates a new #GAppInfo from the given information.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo.
+<parameter name="commandline">
+<parameter_description> the commandline to use
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> A D-Bus signal name (typically in CamelCase)
+<parameter name="application_name">
+<parameter_description> the application name, or %NULL to use @commandline
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags that can specify details of the created #GAppInfo
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusSignalInfo or %NULL if not found. Do not free, it is owned by @info.
-
+<return> new #GAppInfo for given command.
 </return>
 </function>
 
-<function name="g_resolver_lookup_by_address_async">
+<function name="g_app_info_delete">
 <description>
-Begins asynchronously reverse-resolving @address to determine its
-associated hostname, and eventually calls @callback, which must
-call g_resolver_lookup_by_address_finish() to get the final result.
+Tries to delete a #GAppInfo.
 
-Since: 2.22
+On some platforms, there may be a difference between user-defined
+#GAppInfo&lt;!-- --&gt;s which can be deleted, and system-wide ones which
+cannot. See g_app_info_can_delete().
+
+Virtual: do_delete
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="address">
-<parameter_description> the address to reverse-resolve
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> callback to call after resolution completes
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data for @callback
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @appinfo has been deleted
+
+</return>
 </function>
 
-<function name="g_dbus_connection_flush_sync">
+<function name="g_app_info_dup">
 <description>
-Synchronously flushes @connection. The calling thread is blocked
-until this is done. See g_dbus_connection_flush() for the
-asynchronous version of this method and more details about what it
-does.
+Creates a duplicate of a #GAppInfo.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+</parameters>
+<return> a duplicate of @appinfo.
+</return>
+</function>
+
+<function name="g_app_info_equal">
+<description>
+Checks if two #GAppInfo&lt;!-- --&gt;s are equal.
+
+
+</description>
+<parameters>
+<parameter name="appinfo1">
+<parameter_description> the first #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="appinfo2">
+<parameter_description> the second #GAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation succeeded, %FALSE if @error is set.
+<return> %TRUE if @appinfo1 is equal to @appinfo2. %FALSE otherwise.
+</return>
+</function>
+
+<function name="g_app_info_get_all">
+<description>
+Gets a list of all of the applications currently registered 
+on this system.
+
+For desktop files, this includes applications that have 
+&lt;literal&gt;NoDisplay=true&lt;/literal&gt; set or are excluded from 
+display by means of &lt;literal&gt;OnlyShowIn&lt;/literal&gt; or
+&lt;literal&gt;NotShowIn&lt;/literal&gt;. See g_app_info_should_show().
+The returned list does not include applications which have
+the &lt;literal&gt;Hidden&lt;/literal&gt; key set. 
 
+
+</description>
+<parameters>
+</parameters>
+<return> a newly allocated #GList of references to #GAppInfo&lt;!----&gt;s.
 </return>
 </function>
 
-<function name="g_socket_control_message_get_level">
+<function name="g_app_info_get_all_for_type">
 <description>
-Returns the &quot;level&quot; (i.e. the originating protocol) of the control message.
-This is often SOL_SOCKET.
+Gets a list of all #GAppInfos for a given content type.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> a #GSocketControlMessage
+<parameter name="content_type">
+<parameter_description> the content type to find a #GAppInfo for
 </parameter_description>
 </parameter>
 </parameters>
-<return> an integer describing the level
-
+<return> #GList of #GAppInfos
+for given @content_type or %NULL on error.
 </return>
 </function>
 
-<function name="g_filter_input_stream_set_close_base_stream">
+<function name="g_app_info_get_commandline">
 <description>
-Sets whether the base stream will be closed when @stream is closed.
+Gets the commandline with which the application will be
+started.  
+
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFilterInputStream.
-</parameter_description>
-</parameter>
-<parameter name="close_base">
-<parameter_description> %TRUE to close the base stream.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a string containing the @appinfo's commandline, 
+or %NULL if this information is not available
+
+</return>
 </function>
 
-<function name="g_file_info_set_attribute">
+<function name="g_app_info_get_default_for_type">
 <description>
-Sets the @attribute to contain the given value, if possible.
+Gets the #GAppInfo that corresponds to a given content type.
+
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GFileAttributeType
+<parameter name="content_type">
+<parameter_description> the content type to find a #GAppInfo for
 </parameter_description>
 </parameter>
-<parameter name="value_p">
-<parameter_description> pointer to the value
+<parameter name="must_support_uris">
+<parameter_description> if %TRUE, the #GAppInfo is expected to
+support URIs
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> #GAppInfo for given @content_type or
+%NULL on error.
+</return>
 </function>
 
-<function name="g_application_remove_action">
+<function name="g_app_info_get_default_for_uri_scheme">
 <description>
-Removes the action @name from the list of exported actions of @application.
-
-It is an error to call this function if @application is a proxy for
-a remote application.
+Gets the default application for launching applications 
+using this URI scheme. A URI scheme is the initial part 
+of the URI, up to but not including the ':', e.g. &quot;http&quot;, 
+&quot;ftp&quot; or &quot;sip&quot;.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the action to remove
+<parameter name="uri_scheme">
+<parameter_description> a string containing a URI scheme.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> #GAppInfo for given @uri_scheme or %NULL on error.
+</return>
 </function>
 
-<function name="g_async_initable_new_finish">
+<function name="g_app_info_get_description">
 <description>
-Finishes the async construction for the various g_async_initable_new calls,
-returning the created object or %NULL on error.
+Gets a human-readable description of an installed application.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="initable">
-<parameter_description> the #GAsyncInitable from the callback
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> the #GAsyncResult.from the callback
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+</parameters>
+<return> a string containing a description of the 
+application @appinfo, or %NULL if none. 
+</return>
+</function>
+
+<function name="g_app_info_get_display_name">
+<description>
+Gets the display name of the application. The display name is often more
+descriptive to the user than the name itself.
+
+Since: 2.24
+
+</description>
+<parameters>
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created #GObject, or %NULL on error. Free with
-g_object_unref().
+<return> the display name of the application for @appinfo, or the name if
+no display name is available.
 
 </return>
 </function>
 
-<function name="g_dbus_node_info_lookup_interface">
+<function name="g_app_info_get_executable">
 <description>
-Looks up information about an interface.
-
-This cost of this function is O(n) in number of interfaces.
+Gets the executable's name for the installed application.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusNodeInfo.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> A D-Bus interface name.
+</parameters>
+<return> a string containing the @appinfo's application 
+binaries name
+</return>
+</function>
+
+<function name="g_app_info_get_fallback_for_type">
+<description>
+Gets a list of fallback #GAppInfos for a given content type, i.e.
+those applications which claim to support the given content type
+by MIME type subclassing and not directly.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="content_type">
+<parameter_description> the content type to find a #GAppInfo for
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusInterfaceInfo or %NULL if not found. Do not free, it is owned by @info.
+<return> #GList of #GAppInfos
+for given @content_type or %NULL on error.
 
 </return>
 </function>
 
-<function name="g_file_make_symbolic_link">
+<function name="g_app_info_get_icon">
 <description>
-Creates a symbolic link named @file which contains the string
- symlink_value 
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Gets the icon for the application.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile with the name of the symlink to create
-</parameter_description>
-</parameter>
-<parameter name="symlink_value">
-<parameter_description> a string with the path for the target of the new symlink
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return> the default #GIcon for @appinfo.
+</return>
+</function>
+
+<function name="g_app_info_get_id">
+<description>
+Gets the ID of an application. An id is a string that
+identifies the application. The exact format of the id is
+platform dependent. For instance, on Unix this is the
+desktop file id from the xdg menu specification.
+
+Note that the returned ID may be %NULL, depending on how
+the @appinfo has been constructed.
+
+
+</description>
+<parameters>
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError.
+</parameters>
+<return> a string containing the application's ID.
+</return>
+</function>
+
+<function name="g_app_info_get_name">
+<description>
+Gets the installed name of the application. 
+
+
+</description>
+<parameters>
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on the creation of a new symlink, %FALSE otherwise.
+<return> the name of the application for @appinfo.
 </return>
 </function>
 
-<function name="g_io_stream_has_pending">
+<function name="g_app_info_get_recommended_for_type">
 <description>
-Checks if a stream has pending actions.
+Gets a list of recommended #GAppInfos for a given content type, i.e.
+those applications which claim to support the given content type exactly,
+and not by MIME type subclassing.
+Note that the first application of the list is the last used one, i.e.
+the last one for which #g_app_info_set_as_last_used_for_type has been
+called.
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
+<parameter name="content_type">
+<parameter_description> the content type to find a #GAppInfo for
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @stream has pending actions.
+<return> #GList of #GAppInfos
+for given @content_type or %NULL on error.
 
 </return>
 </function>
 
-<function name="g_cancellable_disconnect">
+<function name="g_app_info_launch">
 <description>
-Disconnects a handler from a cancellable instance similar to
-g_signal_handler_disconnect().  Additionally, in the event that a
-signal handler is currently running, this call will block until the
-handler has finished.  Calling this function from a
-#GCancellable::cancelled signal handler will therefore result in a
-deadlock.
+Launches the application. Passes @files to the launched application
+as arguments, using the optional @launch_context to get information
+about the details of the launcher (like what screen it is on).
+On error, @error will be set accordingly.
 
-This avoids a race condition where a thread cancels at the
-same time as the cancellable operation is finished and the
-signal handler is removed. See #GCancellable::cancelled for
-details on how to use this.
+To launch the application without arguments pass a %NULL @files list.
 
-If @cancellable is %NULL or @handler_id is %0 this function does
-nothing.
+Note that even if the launch is successful the application launched
+can fail to start if it runs into problems during startup. There is
+no way to detect this.
+
+Some URIs can be changed when passed through a GFile (for instance
+unsupported uris with strange formats like mailto:), so if you have
+a textual uri you want to pass in as argument, consider using
+g_app_info_launch_uris() instead.
+
+On UNIX, this function sets the &lt;envar&gt;GIO_LAUNCHED_DESKTOP_FILE&lt;/envar&gt;
+environment variable with the path of the launched desktop file and
+&lt;envar&gt;GIO_LAUNCHED_DESKTOP_FILE_PID&lt;/envar&gt; to the process
+id of the launched process. This can be used to ignore
+&lt;envar&gt;GIO_LAUNCHED_DESKTOP_FILE&lt;/envar&gt;, should it be inherited
+by further processes. The &lt;envar&gt;DISPLAY&lt;/envar&gt; and
+&lt;envar&gt;DESKTOP_STARTUP_ID&lt;/envar&gt; environment variables are also
+set, based on information provided in @launch_context.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
 </parameter_description>
 </parameter>
-<parameter name="handler_id">
-<parameter_description> Handler id of the handler to be disconnected, or %0.
+<parameter name="files">
+<parameter_description> a #GList of #GFile objects
+</parameter_description>
+</parameter>
+<parameter name="launch_context">
+<parameter_description> a #GAppLaunchContext or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on successful launch, %FALSE otherwise.
+</return>
 </function>
 
-<function name="g_input_stream_skip_finish">
+<function name="g_app_info_launch_default_for_uri">
 <description>
-Finishes a stream skip operation.
+Utility function that launches the default application
+registered to handle the specified uri. Synchronous I/O
+is done on the uri to detect the type of the file if
+required.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GInputStream.
+<parameter name="uri">
+<parameter_description> the uri to show
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="launch_context">
+<parameter_description> an optional #GAppLaunchContext.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the size of the bytes skipped, or %-1 on error.
+<return> %TRUE on success, %FALSE on error.
 </return>
 </function>
 
-<function name="g_resolver_set_default">
+<function name="g_app_info_launch_uris">
 <description>
-Sets @resolver to be the application's default resolver (reffing
- resolver, and unreffing the previous default resolver, if any).
-Future calls to g_resolver_get_default() will return this resolver.
+Launches the application. Passes @uris to the launched application
+as arguments, using the optional @launch_context to get information
+about the details of the launcher (like what screen it is on).
+On error, @error will be set accordingly.
 
-This can be used if an application wants to perform any sort of DNS
-caching or &quot;pinning&quot;; it can implement its own #GResolver that
-calls the original default resolver for DNS operations, and
-implements its own cache policies on top of that, and then set
-itself as the default resolver for all later code to use.
+To lauch the application without arguments pass a %NULL @uris list.
+
+Note that even if the launch is successful the application launched
+can fail to start if it runs into problems during startup. There is
+no way to detect this.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> the new default #GResolver
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
+</parameter_description>
+</parameter>
+<parameter name="uris">
+<parameter_description> a #GList containing URIs to launch.
+</parameter_description>
+</parameter>
+<parameter name="launch_context">
+<parameter_description> a #GAppLaunchContext or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on successful launch, %FALSE otherwise.
+</return>
 </function>
 
-<function name="g_file_info_get_attribute_boolean">
+<function name="g_app_info_remove_supports_type">
 <description>
-Gets the value of a boolean attribute. If the attribute does not
-contain a boolean value, %FALSE will be returned.
+Removes a supported type from an application, if possible.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="content_type">
+<parameter_description> a string.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the boolean value contained within the attribute. 
+<return> %TRUE on success, %FALSE on error.
 </return>
 </function>
 
-<function name="g_mount_operation_set_domain">
+<function name="g_app_info_reset_type_associations">
 <description>
-Sets the mount operation's domain. 
+Removes all changes to the type associations done by
+g_app_info_set_as_default_for_type(), 
+g_app_info_set_as_default_for_extension(), 
+g_app_info_add_supports_type() or g_app_info_remove_supports_type().
+
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> the domain to set.
+<parameter name="content_type">
+<parameter_description> a content type 
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_annotation_info_unref">
+<function name="g_app_info_set_as_default_for_extension">
 <description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
+Sets the application as the default handler for the given file extension.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusAnnotationInfo.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
+</parameter_description>
+</parameter>
+<parameter name="extension">
+<parameter_description> a string containing the file extension (without the dot).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on success, %FALSE on error.
+</return>
 </function>
 
-<function name="g_file_info_set_sort_order">
+<function name="g_app_info_set_as_default_for_type">
 <description>
-Sets the sort order attribute in the file info structure. See 
-%G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER.
+Sets the application as the default handler for a given type.
+
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="sort_order">
-<parameter_description> a sort order integer.
+<parameter name="content_type">
+<parameter_description> the content type.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on success, %FALSE on error.
+</return>
 </function>
 
-<function name="g_loadable_icon_load">
+<function name="g_app_info_set_as_last_used_for_type">
 <description>
-Loads a loadable icon. For the asynchronous version of this function, 
-see g_loadable_icon_load_async().
+Sets the application as the last used application for a given type.
+This will make the application appear as first in the list returned by
+#g_app_info_get_recommended_for_type, regardless of the default application
+for that content type.
 
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GLoadableIcon.
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> an integer.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description>  a location to store the type of the loaded icon, %NULL to ignore.
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="content_type">
+<parameter_description> the content type.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GInputStream to read the icon from.
+<return> %TRUE on success, %FALSE on error.
 </return>
 </function>
 
-<function name="g_inet_address_new_from_bytes">
+<function name="g_app_info_should_show">
 <description>
-Creates a new #GInetAddress from the given @family and @bytes.
- bytes should be 4 bytes for %G_INET_ADDRESS_IPV4 and 16 bytes for
-%G_INET_ADDRESS_IPV6.
+Checks if the application info should be shown in menus that 
+list available applications.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="bytes">
-<parameter_description> raw address data
-</parameter_description>
-</parameter>
-<parameter name="family">
-<parameter_description> the address family of @bytes
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GInetAddress corresponding to @family and @bytes.
-
+<return> %TRUE if the @appinfo should be shown, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_socket_create_source">
+<function name="g_app_info_supports_files">
 <description>
-Creates a %GSource that can be attached to a %GMainContext to monitor
-for the availibility of the specified @condition on the socket.
-
-The callback on the source is of the #GSocketSourceFunc type.
+Checks if the application accepts files as arguments.
 
-It is meaningless to specify %G_IO_ERR or %G_IO_HUP in @condition;
-these conditions will always be reported output if they are true.
 
- cancellable if not %NULL can be used to cancel the source, which will
-cause the source to trigger, reporting the current condition (which
-is likely 0 unless cancellation happened at the same time as a
-condition change). You can check for this in the callback using
-g_cancellable_is_cancelled().
+</description>
+<parameters>
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the @appinfo supports files.
+</return>
+</function>
 
-If @socket has a timeout set, and it is reached before @condition
-occurs, the source will then trigger anyway, reporting %G_IO_IN or
-%G_IO_OUT depending on @condition. However, @socket will have been
-marked as having had a timeout, and so the next #GSocket I/O method
-you call will then fail with a %G_IO_ERROR_TIMED_OUT.
+<function name="g_app_info_supports_uris">
+<description>
+Checks if the application supports reading files and directories from URIs.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
-</parameter_description>
-</parameter>
-<parameter name="condition">
-<parameter_description> a #GIOCondition mask to monitor
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated %GSource, free with g_source_unref().
-
+<return> %TRUE if the @appinfo supports URIs.
 </return>
 </function>
 
-<function name="g_bus_watch_name_with_closures">
+<function name="g_app_launch_context_get_display">
 <description>
-Version of g_bus_watch_name() using closures instead of callbacks for
-easier binding in other languages.
+Gets the display string for the @context. This is used to ensure new
+applications are started on the same display as the launching
+application, by setting the &lt;envar&gt;DISPLAY&lt;/envar&gt; environment variable.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> The type of bus to watch a name on.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> The name (well-known or unique) to watch.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags from the #GBusNameWatcherFlags enumeration.
+<parameter name="context">
+<parameter_description> a #GAppLaunchContext
 </parameter_description>
 </parameter>
-<parameter name="name_appeared_closure">
-<parameter_description> #GClosure to invoke when @name is known
-to exist or %NULL.
+<parameter name="info">
+<parameter_description> a #GAppInfo
 </parameter_description>
 </parameter>
-<parameter name="name_vanished_closure">
-<parameter_description> #GClosure to invoke when @name is known
-to not exist or %NULL.
+<parameter name="files">
+<parameter_description> a #GList of #GFile objects
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unwatch_name() to stop watching the name.
-
+<return> a display string for the display.
 </return>
 </function>
 
-<function name="g_unix_mount_point_is_loopback">
+<function name="g_app_launch_context_get_startup_notify_id">
 <description>
-Checks if a unix mount point is a loopback device.
+Initiates startup notification for the application and returns the
+&lt;envar&gt;DESKTOP_STARTUP_ID&lt;/envar&gt; for the launched operation,
+if supported.
+
+Startup notification IDs are defined in the &lt;ulink
+url=&quot;http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt&quot;&gt;
+FreeDesktop.Org Startup Notifications standard&lt;/ulink&gt;.
 
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint.
+<parameter name="context">
+<parameter_description> a #GAppLaunchContext
+</parameter_description>
+</parameter>
+<parameter name="info">
+<parameter_description> a #GAppInfo
+</parameter_description>
+</parameter>
+<parameter name="files">
+<parameter_description> a #GList of of #GFile objects
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount point is a loopback. %FALSE otherwise. 
+<return> a startup notification ID for the application, or %NULL if
+not supported.
 </return>
 </function>
 
-<function name="g_dbus_connection_set_exit_on_close">
+<function name="g_app_launch_context_launch_failed">
 <description>
-Sets whether the process should be terminated when @connection is
-closed by the remote peer. See #GDBusConnection:exit-on-close for
-more details.
+Called when an application has failed to launch, so that it can cancel
+the application startup notification started in g_app_launch_context_get_startup_notify_id().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="context">
+<parameter_description> a #GAppLaunchContext.
 </parameter_description>
 </parameter>
-<parameter name="exit_on_close">
-<parameter_description> Whether the process should be terminated
-when @connection is closed by the remote peer.
+<parameter name="startup_notify_id">
+<parameter_description> the startup notification id that was returned by g_app_launch_context_get_startup_notify_id().
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mount_operation_get_password">
+<function name="g_app_launch_context_new">
 <description>
-Gets a password from the mount operation. 
+Creates a new application launch context. This is not normally used,
+instead you instantiate a subclass of this, such as #GdkAppLaunchContext.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a string containing the password within @op.
+<return> a #GAppLaunchContext.
 </return>
 </function>
 
-<function name="g_inet_socket_address_get_address">
+<function name="g_application_activate">
 <description>
-Gets @address's #GInetAddress.
+Activates the application.
 
-Since: 2.22
+In essence, this results in the #GApplication::activate() signal being
+emitted in the primary instance.
+
+The application must be registered before calling this function.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetSocketAddress
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GInetAddress for @address, which must be
-g_object_ref()'d if it will be stored
-
-</return>
+<return></return>
 </function>
 
-<function name="g_permission_acquire">
+<function name="g_application_command_line_get_arguments">
 <description>
-Attempts to acquire the permission represented by @permission.
+Gets the list of arguments that was passed on the command line.
 
-The precise method by which this happens depends on the permission
-and the underlying authentication mechanism.  A simple example is
-that a dialog may appear asking the user to enter their password.
+The strings in the array may contain non-utf8 data.
 
-You should check with g_permission_get_can_acquire() before calling
-this function.
+The return value is %NULL-terminated and should be freed using
+g_strfreev().
 
-If the permission is acquired then %TRUE is returned.  Otherwise,
-%FALSE is returned and @error is set appropriately.
-
-This call is blocking, likely for a very long time (in the case that
-user interaction is required).  See g_permission_acquire_async() for
-the non-blocking version.
-
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a pointer to a %NULL #GError, or %NULL
+<parameter name="argc">
+<parameter_description> the length of the arguments array, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the permission was successfully acquired
+<return> the string array
+containing the arguments (the argv)
+
 </return>
 </function>
 
-<function name="g_file_enumerator_next_files_async">
+<function name="g_application_command_line_get_cwd">
 <description>
-Request information for a number of files from the enumerator asynchronously.
-When all i/o for the operation is finished the @callback will be called with
-the requested information. 
+Gets the working directory of the command line invocation.  The
+string may contain non-utf8 data.
 
-The callback can be called with less than @num_files files in case of error
-or at the end of the enumerator. In case of a partial error the callback will
-be called with any succeeding items and no error, and on the next request the
-error will be reported. If a request is cancelled the callback will be called
-with %G_IO_ERROR_CANCELLED.
+It is possible that the remote application did not send a working
+directory, so this may be %NULL.
 
-During an async request no other sync and async calls are allowed, and will
-result in %G_IO_ERROR_PENDING errors. 
+The return value should not be modified or freed and is valid for as
+long as @cmdline exists.
 
-Any outstanding i/o request with higher priority (lower numerical value) will
-be executed before an outstanding request with lower priority. Default
-priority is %G_PRIORITY_DEFAULT.
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
-</parameter_description>
-</parameter>
-<parameter name="num_files">
-<parameter_description> the number of file info objects to request
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;gioscheduler&quot;&gt;io priority&lt;/link&gt; 
-of the request. 
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the current directory, or %NULL
+
+</return>
 </function>
 
-<function name="g_file_enumerate_children_async">
+<function name="g_application_command_line_get_environ">
 <description>
-Asynchronously gets the requested information about the files in a directory. The result
-is a #GFileEnumerator object that will give out #GFileInfo objects for
-all the files in the directory.
+Gets the contents of the 'environ' variable of the command line
+invocation, as would be returned by g_get_environ().  The strings may
+contain non-utf8 data.
 
-For more details, see g_file_enumerate_children() which is
-the synchronous version of this call.
+The remote application usually does not send an environment.  Use
+%G_APPLICATION_SEND_ENVIRONMENT to affect that.  Even with this flag
+set it is possible that the environment is still not available (due
+to invocation messages from other applications).
 
-When the operation is finished, @callback will be called. You can then call
-g_file_enumerate_children_finish() to get the result of the operation.
+The return value should not be modified or freed and is valid for as
+long as @cmdline exists.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="attributes">
-<parameter_description> an attribute query string.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileQueryInfoFlags.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the environment
+strings, or %NULL if they were not sent
+
+</return>
 </function>
 
-<function name="g_unix_mount_compare">
+<function name="g_application_command_line_get_exit_status">
 <description>
-Compares two unix mounts.
+Gets the exit status of @cmdline.  See
+g_application_command_line_set_exit_status() for more information.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="mount1">
-<parameter_description> first #GUnixMountEntry to compare.
-</parameter_description>
-</parameter>
-<parameter name="mount2">
-<parameter_description> second #GUnixMountEntry to compare.
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
 </parameters>
-<return> 1, 0 or -1 if @mount1 is greater than, equal to,
-or less than @mount2, respectively. 
+<return> the exit status
+
 </return>
 </function>
 
-<function name="g_mount_operation_get_username">
+<function name="g_application_command_line_get_is_remote">
 <description>
-Get the user name from the mount operation.
+Determines if @cmdline represents a remote invocation.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the user name.
+<return> %TRUE if the invocation was remote
+
 </return>
 </function>
 
-<function name="g_volume_monitor_get_connected_drives">
+<function name="g_application_command_line_get_platform_data">
 <description>
-Gets a list of drives connected to the system.
+Gets the platform data associated with the invocation of @cmdline.
 
-The returned list should be freed with g_list_free(), after
-its elements have been unreffed with g_object_unref().
+This is a #GVariant dictionary containing information about the
+context in which the invocation occured.  It typically contains
+information like the current working directory and the startup
+notification ID.
 
+For local invocation, it will be %NULL.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="volume_monitor">
-<parameter_description> a #GVolumeMonitor.
+<parameter name="cmdline">
+<parameter_description> #GApplicationCommandLine
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of connected #GDrive objects.
+<return> the platform data, or %NULL
+
 </return>
 </function>
 
-<function name="g_file_info_set_file_type">
+<function name="g_application_command_line_getenv">
 <description>
-Sets the file type in a #GFileInfo to @type.
-See %G_FILE_ATTRIBUTE_STANDARD_TYPE.
+Gets the value of a particular environment variable of the command
+line invocation, as would be returned by g_getenv().  The strings may
+contain non-utf8 data.
+
+The remote application usually does not send an environment.  Use
+%G_APPLICATION_SEND_ENVIRONMENT to affect that.  Even with this flag
+set it is possible that the environment is still not available (due
+to invocation messages from other applications).
+
+The return value should not be modified or freed and is valid for as
+long as @cmdline exists.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GFileType.
+<parameter name="name">
+<parameter_description> the environment variable to get
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value of the variable, or %NULL if unset or unsent
+
+</return>
 </function>
 
-<function name="g_data_input_stream_read_int16">
+<function name="g_application_command_line_print">
 <description>
-Reads a 16-bit/2-byte value from @stream.
+Formats a message and prints it using the stdout print handler in the
+invoking process.
 
-In order to get the correct byte order for this read operation, 
-see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
+If @cmdline is a local invocation then this is exactly equivalent to
+g_print().  If @cmdline is remote then this is equivalent to calling
+g_print() in the invoking process.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="format">
+<parameter_description> a printf-style format string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="Varargs">
+<parameter_description> arguments, as per @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> a signed 16-bit/2-byte value read from @stream or %0 if 
-an error occurred.
-</return>
+<return></return>
 </function>
 
-<function name="g_win32_output_stream_get_handle">
+<function name="g_application_command_line_printerr">
 <description>
-Return the Windows handle that the stream writes to.
+Formats a message and prints it using the stderr print handler in the
+invoking process.
 
-Since: 2.26
+If @cmdline is a local invocation then this is exactly equivalent to
+g_printerr().  If @cmdline is remote then this is equivalent to
+calling g_printerr() in the invoking process.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GWin32OutputStream
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a printf-style format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments, as per @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> The handle descriptor of @stream
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_set_attribute_string">
+<function name="g_application_command_line_set_exit_status">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Sets the exit status that will be used when the invoking process
+exits.
+
+The return value of the #GApplication::command-line signal is
+passed to this function when the handler returns.  This is the usual
+way of setting the exit status.
+
+In the event that you want the remote invocation to continue running
+and want to decide on the exit status in the future, you can use this
+call.  For the case of a remote invocation, the remote process will
+typically exit when the last reference is dropped on @cmdline.  The
+exit status of the remote process will be equal to the last value
+that was set with this function.
+
+In the case that the commandline invocation is local, the situation
+is slightly more complicated.  If the commandline invocation results
+in the mainloop running (ie: because the use-count of the application
+increased to a non-zero value) then the application is considered to
+have been 'successful' in a certain sense, and the exit status is
+always zero.  If the application use count is zero, though, the exit
+status of the local #GApplicationCommandLine is used.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="cmdline">
+<parameter_description> a #GApplicationCommandLine
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
-</parameter_description>
-</parameter>
-<parameter name="attr_value">
-<parameter_description> a string.
+<parameter name="exit_status">
+<parameter_description> the exit status
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_async_result_get_user_data">
+<function name="g_application_get_application_id">
 <description>
-Gets the user data from a #GAsyncResult.
+Gets the unique identifier for @application.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> a #GAsyncResult.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 </parameters>
-<return> the user data for @res.
+<return> the identifier for @application, owned by @application
 </return>
 </function>
 
-<function name="g_srv_target_list_sort">
+<function name="g_application_get_flags">
 <description>
-Sorts @targets in place according to the algorithm in RFC 2782.
+Gets the flags for @application.
 
-Since: 2.22
+See #GApplicationFlags.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="targets">
-<parameter_description> a #GList of #GSrvTarget
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 </parameters>
-<return> the head of the sorted list.
-
+<return> the flags for @application
 </return>
 </function>
 
-<function name="g_dbus_interface_info_ref">
+<function name="g_application_get_inactivity_timeout">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Gets the current inactivity timeout for the application.
 
-Since: 2.26
+This is the amount of time (in milliseconds) after the last call to
+g_application_release() before the application stops running.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
+<return> the timeout, in milliseconds
 
 </return>
 </function>
 
-<function name="g_credentials_set_native">
+<function name="g_application_get_is_registered">
 <description>
-Copies the native credentials of type @native_type from @native
-into @credentials.
+Checks if @application is registered.
 
-It is a programming error (which will cause an warning to be
-logged) to use this method if there is no #GCredentials support for
-the OS or if @native_type isn't supported by the OS.
+An application is registered if g_application_register() has been
+successfully called.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials.
-</parameter_description>
-</parameter>
-<parameter name="native_type">
-<parameter_description> The type of native credentials to set.
-</parameter_description>
-</parameter>
-<parameter name="native">
-<parameter_description> A pointer to native credentials.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @application is registered
+</return>
 </function>
 
-<function name="g_file_poll_mountable">
+<function name="g_application_get_is_remote">
 <description>
-Polls a file of type G_FILE_TYPE_MOUNTABLE.
+Checks if @application is remote.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+If @application is remote then it means that another instance of
+application already exists (the 'primary' instance).  Calls to
+perform actions on @application will result in the actions being
+performed by the primary instance.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_mount_mountable_finish() to get the result of the operation.
+The value of this property can not be accessed before
+g_application_register() has been called.  See
+g_application_get_is_registered().
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+</parameters>
+<return> %TRUE if @application is remote
+</return>
+</function>
+
+<function name="g_application_hold">
+<description>
+Increases the use count of @application.
+
+Use this function to indicate that the application has a reason to
+continue to run.  For example, g_application_hold() is called by GTK+ 
+when a toplevel window is on the screen.
+
+To cancel the hold, call g_application_release().
+
+</description>
+<parameters>
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+</parameters>
+<return></return>
+</function>
+
+<function name="g_application_id_is_valid">
+<description>
+Checks if @application_id is a valid application identifier.
+
+A valid ID is required for calls to g_application_new() and
+g_application_set_application_id().
+
+For convenience, the restrictions on application identifiers are
+reproduced here:
+&lt;itemizedlist&gt;
+&lt;listitem&gt;Application identifiers must contain only the ASCII characters &quot;[A-Z][a-z][0-9]_-&quot; and must not begin with a digit.&lt;/listitem&gt;
+&lt;listitem&gt;Application identifiers must contain at least one '.' (period) character (and thus at least two elements).&lt;/listitem&gt;
+&lt;listitem&gt;Application identifiers must not begin with a '.' (period) character.&lt;/listitem&gt;
+&lt;listitem&gt;Application identifiers must not contain consecutive '.' (period) characters.&lt;/listitem&gt;
+&lt;listitem&gt;Application identifiers must not exceed 255 characters.&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
+
+</description>
+<parameters>
+<parameter name="application_id">
+<parameter_description> a potential application identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @application_id is valid
+</return>
 </function>
 
-<function name="g_dbus_connection_remove_filter">
+<function name="g_application_new">
 <description>
-Removes a filter.
+Creates a new #GApplication instance.
 
-Since: 2.26
+This function calls g_type_init() for you.
+
+The application id must be valid.  See g_application_id_is_valid().
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GDBusConnection
+<parameter name="application_id">
+<parameter_description> the application id
 </parameter_description>
 </parameter>
-<parameter name="filter_id">
-<parameter_description> an identifier obtained from g_dbus_connection_add_filter()
+<parameter name="flags">
+<parameter_description> the application flags
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GApplication instance
+</return>
 </function>
 
-<function name="g_dbus_connection_flush">
+<function name="g_application_open">
 <description>
-Asynchronously flushes @connection, that is, writes all queued
-outgoing message to the transport and then flushes the transport
-(using g_output_stream_flush_async()). This is useful in programs
-that wants to emit a D-Bus signal and then exit
-immediately. Without flushing the connection, there is no guarantee
-that the message has been sent to the networking buffers in the OS
-kernel.
+Opens the given files.
 
-This is an asynchronous method. When the operation is finished,
- callback will be invoked in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this method from. You can
-then call g_dbus_connection_flush_finish() to get the result of the
-operation.  See g_dbus_connection_flush_sync() for the synchronous
-version.
+In essence, this results in the #GApplication::open signal being emitted
+in the primary instance.
 
-Since: 2.26
+ n_files must be greater than zero.
+
+ hint is simply passed through to the ::open signal.  It is
+intended to be used by applications that have multiple modes for
+opening files (eg: &quot;view&quot; vs &quot;edit&quot;, etc).  Unless you have a need
+for this functionality, you should use &quot;&quot;.
+
+The application must be registered before calling this function
+and it must have the %G_APPLICATION_HANDLES_OPEN flag set.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="files">
+<parameter_description> an array of #GFiles to open
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
-care about the result.
+<parameter name="n_files">
+<parameter_description> the length of the @files array
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter name="hint">
+<parameter_description> a hint (or &quot;&quot;), but never %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_socket_check_connect_result">
+<function name="g_application_register">
 <description>
-Checks and resets the pending connect error for the socket.
-This is used to check for errors when g_socket_connect() is
-used in non-blocking mode.
+Attempts registration of the application.
 
-Since: 2.22
+This is the point at which the application discovers if it is the
+primary instance or merely acting as a remote for an already-existing
+primary instance.  This is implemented by attempting to acquire the
+application identifier as a uniue bus name on the session bus using
+GDBus.
+
+Due to the internal architecture of GDBus, method calls can be
+dispatched at any time (even if a main loop is not running).  For
+this reason, you must ensure that any object paths that you wish to
+register are registered before calling this function.
+
+If the application has already been registered then %TRUE is
+returned with no work performed.
+
+The #GApplication::startup signal is emitted if registration succeeds
+and @application is the primary instance.
+
+In the event of an error (such as @cancellable being cancelled, or a
+failure to connect to the session bus), %FALSE is returned and @error
+is set appropriately.
+
+Note: the return value of this function is not an indicator that this
+instance is or is not the primary instance of the application.  See
+g_application_get_is_remote() for that.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="application">
+<parameter_description> a #GApplication
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> a pointer to a NULL #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if no error, %FALSE otherwise, setting @error to the error
-
+<return> %TRUE if registration succeeded
 </return>
 </function>
 
-<function name="g_io_module_new">
+<function name="g_application_release">
 <description>
-Creates a new GIOModule that will load the specific
-shared library when in use.
+Decrease the use count of @application.
 
+When the use count reaches zero, the application will stop running.
+
+Never call this function except to cancel the effect of a previous
+call to g_application_hold().
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> filename of the shared library module.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIOModule from given @filename, 
-or %NULL on error.
-</return>
+<return></return>
 </function>
 
-<function name="g_resolver_lookup_by_name">
+<function name="g_application_run">
 <description>
-Synchronously resolves @hostname to determine its associated IP
-address(es). @hostname may be an ASCII-only or UTF-8 hostname, or
-the textual form of an IP address (in which case this just becomes
-a wrapper around g_inet_address_new_from_string()).
+Runs the application.
 
-On success, g_resolver_lookup_by_name() will return a #GList of
-#GInetAddress, sorted in order of preference. (That is, you should
-attempt to connect to the first address first, then the second if
-the first fails, etc.)
+This function is intended to be run from main() and its return value
+is intended to be returned by main().
 
-If the DNS resolution fails, @error (if non-%NULL) will be set to a
-value from #GResolverError.
+First, the local_command_line() virtual function is invoked.  This
+function always runs on the local instance.  If that function returns
+%FALSE then the application is registered and the #GApplication::command-line
+signal is emitted in the primary instance (which may or may not be
+this instance).
 
-If @cancellable is non-%NULL, it can be used to cancel the
-operation, in which case @error (if non-%NULL) will be set to
-%G_IO_ERROR_CANCELLED.
+If the application has the %G_APPLICATION_HANDLES_COMMAND_LINE
+flag set then the default implementation of local_command_line()
+always returns %FALSE immediately, resulting in the commandline
+always being handled in the primary instance.
 
-If you are planning to connect to a socket on the resolved IP
-address, it may be easier to create a #GNetworkAddress and use its
-#GSocketConnectable interface.
+Otherwise, the default implementation of local_command_line() tries
+to do a couple of things that are probably reasonable for most
+applications.  First, g_application_register() is called to attempt
+to register the application.  If that works, then the command line
+arguments are inspected.  If no commandline arguments are given, then
+g_application_activate() is called.  If commandline arguments are
+given and the %G_APPLICATION_HANDLES_OPEN flag is set then they
+are assumed to be filenames and g_application_open() is called.
 
-Since: 2.22
+If you are interested in doing more complicated local handling of the
+commandline then you should implement your own #GApplication subclass
+and override local_command_line(). See
+&lt;xref linkend=&quot;gapplication-example-cmdline2&quot;/&gt; for an example.
+
+If, after the above is done, the use count of the application is zero
+then the exit status is returned immediately.  If the use count is
+non-zero then the mainloop is run until the use count falls to zero,
+at which point 0 is returned.
+
+If the %G_APPLICATION_IS_SERVICE flag is set, then the exiting at
+use count of zero is delayed for a while (ie: the instance stays
+around to provide its &lt;emphasis&gt;service&lt;/emphasis&gt; to others).
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="hostname">
-<parameter_description> the hostname to look up
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="argc">
+<parameter_description> the argc from main()
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="argv">
+<parameter_description> the argv from main()
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GInetAddress, or %NULL on error. You
-must unref each of the addresses and free the list when you are
-done with it. (You can use g_resolver_free_addresses() to do this.)
-
+<return> the exit status
 </return>
 </function>
 
-<function name="g_dbus_connection_unregister_object">
+<function name="g_application_set_action_group">
 <description>
-Unregisters an object.
+Sets or unsets the group of actions associated with the application.
 
-Since: 2.26
+These actions are the actions that can be remotely invoked.
+
+It is an error to call this function after the application has been
+registered.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
-<parameter name="registration_id">
-<parameter_description> A registration id obtained from g_dbus_connection_register_object().
+<parameter name="action_group">
+<parameter_description> a #GActionGroup, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the object was unregistered, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_listener_accept_async">
+<function name="g_application_set_application_id">
 <description>
-This is the asynchronous version of g_socket_listener_accept().
+Sets the unique identifier for @application.
 
-When the operation is finished @callback will be
-called. You can then call g_socket_listener_accept_socket()
-to get the result of the operation.
+The application id can only be modified if @application has not yet
+been registered.
 
-Since: 2.22
+The application id must be valid.  See g_application_id_is_valid().
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data for the callback
+<parameter name="application_id">
+<parameter_description> the identifier for @application
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_bus_watch_name">
+<function name="g_application_set_flags">
 <description>
-Starts watching @name on the bus specified by @bus_type and calls
- name_appeared_handler and @name_vanished_handler when the name is
-known to have a owner respectively known to lose its
-owner. Callbacks will be invoked in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this function from.
-
-You are guaranteed that one of the handlers will be invoked after
-calling this function. When you are done watching the name, just
-call g_bus_unwatch_name() with the watcher id this function
-returns.
-
-If the name vanishes or appears (for example the application owning
-the name could restart), the handlers are also invoked. If the
-#GDBusConnection that is used for watching the name disconnects, then
- name_vanished_handler is invoked since it is no longer
-possible to access the name.
+Sets the flags for @application.
 
-Another guarantee is that invocations of @name_appeared_handler
-and @name_vanished_handler are guaranteed to alternate; that
-is, if @name_appeared_handler is invoked then you are
-guaranteed that the next time one of the handlers is invoked, it
-will be @name_vanished_handler. The reverse is also true.
+The flags can only be modified if @application has not yet been
+registered.
 
-This behavior makes it very simple to write applications that wants
-to take action when a certain name exists, see &lt;xref
-linkend=&quot;gdbus-watching-names&quot;/&gt;. Basically, the application
-should create object proxies in @name_appeared_handler and destroy
-them again (if any) in @name_vanished_handler.
+See #GApplicationFlags.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> The type of bus to watch a name on.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> The name (well-known or unique) to watch.
+<parameter name="application">
+<parameter_description> a #GApplication
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> Flags from the #GBusNameWatcherFlags enumeration.
-</parameter_description>
-</parameter>
-<parameter name="name_appeared_handler">
-<parameter_description> Handler to invoke when @name is known to exist or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name_vanished_handler">
-<parameter_description> Handler to invoke when @name is known to not exist or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> User data to pass to handlers.
-</parameter_description>
-</parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function for freeing @user_data or %NULL.
+<parameter_description> the flags for @application
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unwatch_name() to stop watching the name.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_clear_status">
+<function name="g_application_set_inactivity_timeout">
 <description>
-Clears the status information from @info.
+Sets the current inactivity timeout for the application.
+
+This is the amount of time (in milliseconds) after the last call to
+g_application_release() before the application stops running.
+
+This call has no side effects of its own.  The value set here is only
+used for next time g_application_release() drops the use count to
+zero.  Any timeouts currently in progress are not impacted.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="application">
+<parameter_description> a #GApplication
+</parameter_description>
+</parameter>
+<parameter name="inactivity_timeout">
+<parameter_description> the timeout, in milliseconds
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the timeout, in milliseconds
+
+</return>
 </function>
 
-<function name="g_network_service_get_service">
+<function name="g_async_initable_init_async">
 <description>
-Gets @srv's service name (eg, &quot;ldap&quot;).
+Starts asynchronous initialization of the object implementing the
+interface. This must be done before any real use of the object after
+initial construction. If the object also implements #GInitable you can
+optionally call g_initable_init() instead.
+
+When the initialization is finished, @callback will be called. You can
+then call g_async_initable_init_finish() to get the result of the
+initialization.
+
+Implementations may also support cancellation. If @cancellable is not
+%NULL, then initialization can be cancelled by triggering the cancellable
+object from another thread. If the operation was cancelled, the error
+%G_IO_ERROR_CANCELLED will be returned. If @cancellable is not %NULL, and
+the object doesn't support cancellable initialization, the error
+%G_IO_ERROR_NOT_SUPPORTED will be returned.
+
+If this function is not called, or returns with an error, then all
+operations on the object should fail, generally returning the
+error %G_IO_ERROR_NOT_INITIALIZED.
+
+Implementations of this method must be idempotent: i.e. multiple calls
+to this function with the same argument should return the same results.
+Only the first call initializes the object; further calls return the result
+of the first call. This is so that it's safe to implement the singleton
+pattern in the GObject constructor function.
+
+For classes that also support the #GInitable interface, the default
+implementation of this method will run the g_initable_init() function
+in a thread, so if you want to support asynchronous initialization via
+threads, just implement the #GAsyncInitable interface without overriding
+any interface methods.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="srv">
-<parameter_description> a #GNetworkService
+<parameter name="initable">
+<parameter_description> a #GAsyncInitable.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the operation.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> @srv's service name
-
-</return>
+<return></return>
 </function>
 
-<function name="g_mount_unshadow">
+<function name="g_async_initable_init_finish">
 <description>
-Decrements the shadow count on @mount. Usually used by
-#GVolumeMonitor implementations when destroying a shadow mount for
- mount, see g_mount_is_shadowed() for more information. The caller
-will need to emit the #GMount::changed signal on @mount manually.
+Finishes asynchronous initialization and returns the result.
+See g_async_initable_init_async().
 
-Since: 2.20
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> A #GMount.
+<parameter name="initable">
+<parameter_description> a #GAsyncInitable.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if successful. If an error has occurred, this function
+will return %FALSE and set @error appropriately if present.
+
+</return>
 </function>
 
-<function name="g_file_eject_mountable">
+<function name="g_async_initable_new_async">
 <description>
-Starts an asynchronous eject on a mountable.  
-When this operation has completed, @callback will be called with
- user_user data, and the operation can be finalized with 
-g_file_eject_mountable_finish().
+Helper function for constructing #GAsyncInitiable object. This is
+similar to g_object_new() but also initializes the object asynchronously.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+When the initialization is finished, @callback will be called. You can
+then call g_async_initable_new_finish() to get the new object and check
+for any errors.
 
-Deprecated: 2.22: Use g_file_eject_mountable_with_operation() instead.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="object_type">
+<parameter_description> a #GType supporting #GAsyncInitable.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the operation.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -2029,861 +2228,1014 @@ Deprecated: 2.22: Use g_file_eject_mountable_with_operation() instead.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter_description> a #GAsyncReadyCallback to call when the initialization is
+finished
 </parameter_description>
 </parameter>
 <parameter name="user_data">
 <parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
+<parameter name="first_property_name">
+<parameter_description> the name of the first property, or %NULL if no
+properties
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description>  the value of the first property, followed by other property
+value pairs, and ended by %NULL.
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_message_get_member">
+<function name="g_async_initable_new_finish">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_MEMBER header field.
+Finishes the async construction for the various g_async_initable_new calls,
+returning the created object or %NULL on error.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="initable">
+<parameter_description> the #GAsyncInitable from the callback
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> the #GAsyncResult.from the callback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
+<return> a newly created #GObject, or %NULL on error. Free with
+g_object_unref().
 
 </return>
 </function>
 
-<function name="g_output_stream_splice_finish">
+<function name="g_async_initable_new_valist_async">
 <description>
-Finishes an asynchronous stream splice operation.
+Helper function for constructing #GAsyncInitiable object. This is
+similar to g_object_new_valist() but also initializes the object
+asynchronously.
+
+When the initialization is finished, @callback will be called. You can
+then call g_async_initable_new_finish() to get the new object and check
+for any errors.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="object_type">
+<parameter_description> a #GType supporting #GAsyncInitable.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="first_property_name">
+<parameter_description> the name of the first property, followed by
+the value, and other property value pairs, and ended by %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter name="var_args">
+<parameter_description> The var args list generated from @first_property_name.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the operation.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the initialization is
+finished
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gssize of the number of bytes spliced.
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_connection_close">
+<function name="g_async_initable_newv_async">
 <description>
-Closes @connection. Note that this never causes the process to
-exit (this might only happen if the other end of a shared message
-bus connection disconnects, see #GDBusConnection:exit-on-close).
-
-Once the connection is closed, operations such as sending a message
-will return with the error %G_IO_ERROR_CLOSED. Closing a connection
-will not automatically flush the connection so queued messages may
-be lost. Use g_dbus_connection_flush() if you need such guarantees.
-
-If @connection is already closed, this method fails with
-%G_IO_ERROR_CLOSED.
-
-When @connection has been closed, the #GDBusConnection::closed
-signal is emitted in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread that @connection was constructed in.
+Helper function for constructing #GAsyncInitiable object. This is
+similar to g_object_newv() but also initializes the object asynchronously.
 
-This is an asynchronous method. When the operation is finished,
- callback will be invoked in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this method from. You can
-then call g_dbus_connection_close_finish() to get the result of the
-operation.  See g_dbus_connection_close_sync() for the synchronous
-version.
+When the initialization is finished, @callback will be called. You can
+then call g_async_initable_new_finish() to get the new object and check
+for any errors.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="object_type">
+<parameter_description> a #GType supporting #GAsyncInitable.
+</parameter_description>
+</parameter>
+<parameter name="n_parameters">
+<parameter_description> the number of parameters in @parameters
+</parameter_description>
+</parameter>
+<parameter name="parameters">
+<parameter_description> the parameters to use to construct the object
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the operation.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
-care about the result.
+<parameter_description> a #GAsyncReadyCallback to call when the initialization is
+finished
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_get_is_backup">
+<function name="g_async_result_get_source_object">
 <description>
-Checks if a file is a backup file.
+Gets the source object from a #GAsyncResult.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="res">
+<parameter_description> a #GAsyncResult
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if file is a backup file, %FALSE otherwise.
+<return> a new reference to the source object for the @res,
+or %NULL if there is none.
 </return>
 </function>
 
-<function name="g_credentials_new">
+<function name="g_async_result_get_user_data">
 <description>
-Creates a new #GCredentials object with credentials matching the
-the current process.
+Gets the user data from a #GAsyncResult.
 
-Since: 2.26
 
 </description>
 <parameters>
+<parameter name="res">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
 </parameters>
-<return> A #GCredentials. Free with g_object_unref().
-
+<return> the user data for @res.
 </return>
 </function>
 
-<function name="g_dbus_connection_call">
+<function name="g_buffered_input_stream_fill">
 <description>
-Asynchronously invokes the @method_name method on the
- interface_name D-Bus interface on the remote object at
- object_path owned by @bus_name.
+Tries to read @count bytes from the stream into the buffer.
+Will block during this read.
 
-If @connection is closed then the operation will fail with
-%G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
-fail with %G_IO_ERROR_CANCELLED. If @parameters contains a value
-not compatible with the D-Bus protocol, the operation fails with
-%G_IO_ERROR_INVALID_ARGUMENT.
+If @count is zero, returns zero and does nothing. A value of @count
+larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
 
-If @reply_type is non-%NULL then the reply will be checked for having this type and an
-error will be raised if it does not match.  Said another way, if you give a @reply_type
-then any non-%NULL return value will be of this type.
+On success, the number of bytes read into the buffer is returned.
+It is not an error if this is not the same as the requested size, as it
+can happen e.g. near the end of a file. Zero is returned on end of file
+(or if @count is zero),  but never otherwise.
 
-If the @parameters #GVariant is floating, it is consumed. This allows
-convenient 'inline' use of g_variant_new(), e.g.:
-|[
-g_dbus_connection_call (connection,
-&quot;org.freedesktop.StringThings&quot;,
-&quot;/org/freedesktop/StringThings&quot;,
-&quot;org.freedesktop.StringThings&quot;,
-&quot;TwoStrings&quot;,
-g_variant_new (&quot;(ss)&quot;,
-&quot;Thing One&quot;,
-&quot;Thing Two&quot;),
-NULL,
-G_DBUS_CALL_FLAGS_NONE,
--1,
-NULL,
-(GAsyncReadyCallback) two_strings_done,
-NULL);
-]|
+If @count is -1 then the attempted read size is equal to the number of
+bytes that are required to fill the buffer.
 
-This is an asynchronous method. When the operation is finished, @callback will be invoked
-in the &lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main loop&lt;/link&gt;
-of the thread you are calling this method from. You can then call
-g_dbus_connection_call_finish() to get the result of the operation.
-See g_dbus_connection_call_sync() for the synchronous version of this
-function.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
+operation was partially finished when the operation was cancelled the
+partial result will be returned, without an error.
+
+On error -1 is returned and @error is set accordingly.
+
+For the asynchronous, non-blocking, version of this function, see
+g_buffered_input_stream_fill_async().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="bus_name">
-<parameter_description> A unique or well-known bus name or %NULL if @connection is not a message bus connection.
-</parameter_description>
-</parameter>
-<parameter name="object_path">
-<parameter_description> Path of remote object.
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
 </parameter_description>
 </parameter>
-<parameter name="interface_name">
-<parameter_description> D-Bus interface to invoke method on.
+<parameter name="count">
+<parameter_description> the number of bytes that will be read from the stream
 </parameter_description>
 </parameter>
-<parameter name="method_name">
-<parameter_description> The name of the method to invoke.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> A #GVariant tuple with parameters for the method or %NULL if not passing parameters.
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
-<parameter name="reply_type">
-<parameter_description> The expected type of the reply, or %NULL.
+</parameters>
+<return> the number of bytes read into @stream's buffer, up to @count,
+or -1 on error.
+</return>
+</function>
+
+<function name="g_buffered_input_stream_fill_async">
+<description>
+Reads data into @stream's buffer asynchronously, up to @count size.
+ io_priority can be used to prioritize reads. For the synchronous
+version of this function, see g_buffered_input_stream_fill().
+
+If @count is -1 then the attempted read size is equal to the number
+of bytes that are required to fill the buffer.
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags from the #GDBusCallFlags enumeration.
+<parameter name="count">
+<parameter_description> the number of bytes that will be read from the stream
 </parameter_description>
 </parameter>
-<parameter name="timeout_msec">
-<parameter_description> The timeout in milliseconds or -1 to use the default timeout.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
-care about the result of the method invocation.
+<parameter_description> a #GAsyncReadyCallback
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter_description> a #gpointer
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_fd_message_get_fd_list">
-<description>
-Gets the #GUnixFDList contained in @message.  This function does not
-return a reference to the caller, but the returned list is valid for
-the lifetime of @message.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="message">
-<parameter_description> a #GUnixFDMessage
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GUnixFDList from @message
-
-</return>
-</function>
-
-<function name="g_resolver_lookup_by_address">
+<function name="g_buffered_input_stream_fill_finish">
 <description>
-Synchronously reverse-resolves @address to determine its
-associated hostname.
-
-If the DNS resolution fails, @error (if non-%NULL) will be set to
-a value from #GResolverError.
-
-If @cancellable is non-%NULL, it can be used to cancel the
-operation, in which case @error (if non-%NULL) will be set to
-%G_IO_ERROR_CANCELLED.
+Finishes an asynchronous read.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="address">
-<parameter_description> the address to reverse-resolve
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="result">
+<parameter_description> a #GAsyncResult
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a hostname (either ASCII-only, or in ASCII-encoded
-form), or %NULL on error.
-
+<return> a #gssize of the read stream, or %-1 on an error.
 </return>
 </function>
 
-<function name="g_filter_input_stream_get_base_stream">
+<function name="g_buffered_input_stream_get_available">
 <description>
-Gets the base stream for the filter stream.
+Gets the size of the available data within the stream.
 
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GFilterInputStream.
+<parameter_description> #GBufferedInputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GInputStream.
+<return> size of the available stream.
 </return>
 </function>
 
-<function name="g_file_info_get_file_type">
+<function name="g_buffered_input_stream_get_buffer_size">
 <description>
-Gets a file's type (whether it is a regular file, symlink, etc). 
-This is different from the file's content type, see g_file_info_get_content_type().
+Gets the size of the input buffer.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileType for the given file.
+<return> the current buffer size.
 </return>
 </function>
 
-<function name="g_dbus_node_info_generate_xml">
+<function name="g_buffered_input_stream_new">
 <description>
-Appends an XML representation of @info (and its children) to @string_builder.
-
-This function is typically used for generating introspection XML documents at run-time for
-handling the &lt;literal&gt;org.freedesktop.DBus.Introspectable.Introspect&lt;/literal&gt; method.
+Creates a new #GInputStream from the given @base_stream, with
+a buffer set to the default size (4 kilobytes).
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusNodeInfo.
-</parameter_description>
-</parameter>
-<parameter name="indent">
-<parameter_description> Indentation level.
-</parameter_description>
-</parameter>
-<parameter name="string_builder">
-<parameter_description> A #GString to to append XML data to.
+<parameter name="base_stream">
+<parameter_description> a #GInputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GInputStream for the given @base_stream.
+</return>
 </function>
 
-<function name="g_dbus_proxy_new_for_bus_finish">
+<function name="g_buffered_input_stream_new_sized">
 <description>
-Finishes creating a #GDBusProxy.
+Creates a new #GBufferedInputStream from the given @base_stream,
+with a buffer set to @size.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to g_dbus_proxy_new_for_bus().
+<parameter name="base_stream">
+<parameter_description> a #GInputStream
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="size">
+<parameter_description> a #gsize
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusProxy or %NULL if @error is set. Free with g_object_unref().
-
+<return> a #GInputStream.
 </return>
 </function>
 
-<function name="g_file_info_dup">
+<function name="g_buffered_input_stream_peek">
 <description>
-Duplicates a file info structure.
+Peeks in the buffer, copying data of size @count into @buffer,
+offset @offset bytes.
 
 
 </description>
 <parameters>
-<parameter name="other">
-<parameter_description> a #GFileInfo.
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> a pointer to an allocated chunk of memory
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> a #gsize
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> a #gsize
 </parameter_description>
 </parameter>
 </parameters>
-<return> a duplicate #GFileInfo of @other.
+<return> a #gsize of the number of bytes peeked, or -1 on error.
 </return>
 </function>
 
-<function name="g_file_info_get_is_symlink">
+<function name="g_buffered_input_stream_peek_buffer">
 <description>
-Checks if a file is a symlink.
+Returns the buffer with the currently available bytes. The returned
+buffer must not be modified and will become invalid when reading from
+the stream or filling the buffer.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> a #gsize to get the number of bytes available in the buffer
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the given @info is a symlink.
+<return>
+read-only buffer
 </return>
 </function>
 
-<function name="g_unix_mounts_get">
+<function name="g_buffered_input_stream_read_byte">
 <description>
-Gets a #GList of #GUnixMountEntry containing the unix mounts.
-If @time_read is set, it will be filled with the mount
-timestamp, allowing for checking if the mounts have changed
-with g_unix_mounts_changed_since().
+Tries to read a single byte from the stream or the buffer. Will block
+during this read.
+
+On success, the byte read from the stream is returned. On end of stream
+-1 is returned but it's not an exceptional error and @error is not set.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
+operation was partially finished when the operation was cancelled the
+partial result will be returned, without an error.
+
+On error -1 is returned and @error is set accordingly.
 
 
 </description>
 <parameters>
-<parameter name="time_read">
-<parameter_description> guint64 to contain a timestamp, or %NULL
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of the UNIX mounts.
+<return> the byte read from the @stream, or -1 on end of stream or error.
 </return>
 </function>
 
-<function name="g_themed_icon_append_name">
+<function name="g_buffered_input_stream_set_buffer_size">
 <description>
-Append a name to the list of icons from within @icon.
-
-&lt;note&gt;&lt;para&gt;
-Note that doing so invalidates the hash computed by prior calls
-to g_icon_hash().
-&lt;/para&gt;&lt;/note&gt;
+Sets the size of the internal buffer of @stream to @size, or to the
+size of the contents of the buffer. The buffer can never be resized
+smaller than its current contents.
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GThemedIcon
+<parameter name="stream">
+<parameter_description> a #GBufferedInputStream
 </parameter_description>
 </parameter>
-<parameter name="iconname">
-<parameter_description> name of icon to append to list of icons from within @icon.
+<parameter name="size">
+<parameter_description> a #gsize
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mount_can_unmount">
+<function name="g_buffered_output_stream_get_auto_grow">
 <description>
-Checks if @mount can be mounted.
+Checks if the buffer automatically grows as data is added.
 
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="stream">
+<parameter_description> a #GBufferedOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @mount can be unmounted.
+<return> %TRUE if the @stream's buffer automatically grows,
+%FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_replace_readwrite">
+<function name="g_buffered_output_stream_get_buffer_size">
 <description>
-Returns an output stream for overwriting the file in readwrite mode,
-possibly creating a backup copy of the file first. If the file doesn't
-exist, it will be created.
-
-For details about the behaviour, see g_file_replace() which does the same
-thing but returns an output stream only.
-
-Note that in many non-local file cases read and write streams are not
-supported, so make sure you really need to do read and write streaming,
-rather than just opening for reading or writing.
+Gets the size of the buffer in the @stream.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile
-</parameter_description>
-</parameter>
-<parameter name="etag">
-<parameter_description> an optional &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the
-current #GFile, or #NULL to ignore
-</parameter_description>
-</parameter>
-<parameter name="make_backup">
-<parameter_description> %TRUE if a backup should be created
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="stream">
+<parameter_description> a #GBufferedOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileIOStream or %NULL on error.
-Free the returned object with g_object_unref().
-
+<return> the current size of the buffer.
 </return>
 </function>
 
-<function name="g_simple_permission_new">
+<function name="g_buffered_output_stream_new">
 <description>
-Creates a new #GPermission instance that represents an action that is
-either always or never allowed.
+Creates a new buffered output stream for a base stream.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="allowed">
-<parameter_description> %TRUE if the action is allowed
+<parameter name="base_stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GSimplePermission, as a #GPermission
+<return> a #GOutputStream for the given @base_stream.
 </return>
 </function>
 
-<function name="g_dbus_message_new_method_error">
+<function name="g_buffered_output_stream_new_sized">
 <description>
-Creates a new #GDBusMessage that is an error reply to @method_call_message.
+Creates a new buffered output stream with a given buffer size.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="method_call_message">
-<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
-create a reply message to.
+<parameter name="base_stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="error_name">
-<parameter_description> A valid D-Bus error name.
+<parameter name="size">
+<parameter_description> a #gsize.
 </parameter_description>
 </parameter>
-<parameter name="error_message_format">
-<parameter_description> The D-Bus error message in a printf() format.
+</parameters>
+<return> a #GOutputStream with an internal buffer set to @size.
+</return>
+</function>
+
+<function name="g_buffered_output_stream_set_auto_grow">
+<description>
+Sets whether or not the @stream's buffer should automatically grow.
+If @auto_grow is true, then each write will just make the buffer
+larger, and you must manually flush the buffer to actually write out
+the data to the underlying stream.
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GBufferedOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> Arguments for @error_message_format.
+<parameter name="auto_grow">
+<parameter_description> a #gboolean.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_eject_with_operation">
+<function name="g_buffered_output_stream_set_buffer_size">
 <description>
-Ejects a volume. This is an asynchronous operation, and is
-finished by calling g_volume_eject_with_operation_finish() with the @volume
-and #GAsyncResult data returned in the @callback.
-
-Since: 2.22
+Sets the size of the internal buffer to @size.
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="stream">
+<parameter_description> a #GBufferedOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the unmount if required for eject
+<parameter name="size">
+<parameter_description> a #gsize.
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_bus_get">
+<description>
+Asynchronously connects to the message bus specified by @bus_type.
+
+When the operation is finished, @callback will be invoked. You can
+then call g_bus_get_finish() to get the result of the operation.
+
+This is a asynchronous failable function. See g_bus_get_sync() for
+the synchronous version.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="bus_type">
+<parameter_description> A #GBusType.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter_description> The data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_query_filesystem_info_finish">
+<function name="g_bus_get_finish">
 <description>
-Finishes an asynchronous filesystem info query.  See
-g_file_query_filesystem_info_async().
+Finishes an operation started with g_bus_get().
+
+The returned object is a singleton, that is, shared with other
+callers of g_bus_get() and g_bus_get_sync() for @bus_type. In the
+event that you need a private message bus connection, use
+g_dbus_address_get_for_bus() and
+g_dbus_connection_new_for_address().
+
+Note that the returned #GDBusConnection object will (usually) have
+the #GDBusConnection:exit-on-close property set to %TRUE.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
 <parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_bus_get().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError. 
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileInfo for given @file or %NULL on error.
-Free the returned object with g_object_unref().
+<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_settings_bind">
+<function name="g_bus_get_sync">
 <description>
-Create a binding between the @key in the @settings object
-and the property @property of @object.
+Synchronously connects to the message bus specified by @bus_type.
+Note that the returned object may shared with other callers,
+e.g. if two separate parts of a process calls this function with
+the same @bus_type, they will share the same object.
 
-The binding uses the default GIO mapping functions to map
-between the settings and property values. These functions
-handle booleans, numeric types and string types in a
-straightforward way. Use g_settings_bind_with_mapping() if
-you need a custom mapping, or map between types that are not
-supported by the default mapping functions.
+This is a synchronous failable function. See g_bus_get() and
+g_bus_get_finish() for the asynchronous version.
 
-Unless the @flags include %G_SETTINGS_BIND_NO_SENSITIVITY, this
-function also establishes a binding between the writability of
- key and the &quot;sensitive&quot; property of @object (if @object has
-a boolean property by that name). See g_settings_bind_writable()
-for more details about writable bindings.
+The returned object is a singleton, that is, shared with other
+callers of g_bus_get() and g_bus_get_sync() for @bus_type. In the
+event that you need a private message bus connection, use
+g_dbus_address_get_for_bus_sync() and
+g_dbus_connection_new_for_address().
 
-Note that the lifecycle of the binding is tied to the object,
-and that you can have only one binding per object property.
-If you bind the same property twice on the same object, the second
-binding overrides the first one.
+Note that the returned #GDBusConnection object will (usually) have
+the #GDBusConnection:exit-on-close property set to %TRUE.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to bind
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="bus_type">
+<parameter_description> A #GBusType.
 </parameter_description>
 </parameter>
-<parameter name="property">
-<parameter_description> the name of the property to bind
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the binding
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_settings_get_enum">
+<function name="g_bus_own_name">
 <description>
-Gets the value that is stored in @settings for @key and converts it
-to the enum value that it represents.
+Starts acquiring @name on the bus specified by @bus_type and calls
+ name_acquired_handler and @name_lost_handler when the name is
+acquired respectively lost. Callbacks will be invoked in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this function from.
 
-In order to use this function the type of the value must be a string
-and it must be marked in the schema file as an enumerated type.
+You are guaranteed that one of the @name_acquired_handler and @name_lost_handler
+callbacks will be invoked after calling this function - there are three
+possible cases:
+&lt;itemizedlist&gt;
+&lt;listitem&gt;&lt;para&gt;
+ name_lost_handler with a %NULL connection (if a connection to the bus can't be made).
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+ bus_acquired_handler then @name_lost_handler (if the name can't be obtained)
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+ bus_acquired_handler then @name_acquired_handler (if the name was obtained).
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
+When you are done owning the name, just call g_bus_unown_name()
+with the owner id this function returns.
 
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or is not marked as an enumerated type.
+If the name is acquired or lost (for example another application
+could acquire the name if you allow replacement or the application
+currently owning the name exits), the handlers are also invoked. If the
+#GDBusConnection that is used for attempting to own the name
+closes, then @name_lost_handler is invoked since it is no
+longer possible for other processes to access the process.
 
-If the value stored in the configuration database is not a valid
-value for the enumerated type then this function will return the
-default value.
+You cannot use g_bus_own_name() several times for the same name (unless
+interleaved with calls to g_bus_unown_name()) - only the first call
+will work.
+
+Another guarantee is that invocations of @name_acquired_handler
+and @name_lost_handler are guaranteed to alternate; that
+is, if @name_acquired_handler is invoked then you are
+guaranteed that the next time one of the handlers is invoked, it
+will be @name_lost_handler. The reverse is also true.
+
+If you plan on exporting objects (using e.g.
+g_dbus_connection_register_object()), note that it is generally too late
+to export the objects in @name_acquired_handler. Instead, you can do this
+in @bus_acquired_handler since you are guaranteed that this will run
+before @name is requested from the bus.
+
+This behavior makes it very simple to write applications that wants
+to own names and export objects, see &lt;xref linkend=&quot;gdbus-owning-names&quot;/&gt;.
+Simply register objects to be exported in @bus_acquired_handler and
+unregister the objects (if any) in @name_lost_handler.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="bus_type">
+<parameter_description> The type of bus to own a name on.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="name">
+<parameter_description> The well-known name to own.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="bus_acquired_handler">
+<parameter_description> Handler to invoke when connected to the bus of type @bus_type or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_acquired_handler">
+<parameter_description> Handler to invoke when @name is acquired or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_lost_handler">
+<parameter_description> Handler to invoke when @name is lost or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> User data to pass to handlers.
+</parameter_description>
+</parameter>
+<parameter name="user_data_free_func">
+<parameter_description> Function for freeing @user_data or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the enum value
+<return> An identifier (never 0) that an be used with
+g_bus_unown_name() to stop owning the name.
+
 </return>
 </function>
 
-<function name="g_data_output_stream_put_int16">
+<function name="g_bus_own_name_on_connection">
 <description>
-Puts a signed 16-bit integer into the output stream.
+Like g_bus_own_name() but takes a #GDBusConnection instead of a
+#GBusType.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a #gint16.
+<parameter name="name">
+<parameter_description> The well-known name to own.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="flags">
+<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="name_acquired_handler">
+<parameter_description> Handler to invoke when @name is acquired or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_lost_handler">
+<parameter_description> Handler to invoke when @name is lost or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> User data to pass to handlers.
+</parameter_description>
+</parameter>
+<parameter name="user_data_free_func">
+<parameter_description> Function for freeing @user_data or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
+<return> An identifier (never 0) that an be used with
+g_bus_unown_name() to stop owning the name.
+
 </return>
 </function>
 
-<function name="g_socket_client_connect_to_host_async">
+<function name="g_bus_own_name_on_connection_with_closures">
 <description>
-This is the asynchronous version of g_socket_client_connect_to_host().
-
-When the operation is finished @callback will be
-called. You can then call g_socket_client_connect_to_host_finish() to get
-the result of the operation.
+Version of g_bus_own_name_on_connection() using closures instead of callbacks for
+easier binding in other languages.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GTcpClient
-</parameter_description>
-</parameter>
-<parameter name="host_and_port">
-<parameter_description> the name and optionally the port of the host to connect to
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="default_port">
-<parameter_description> the default port to connect to
+<parameter name="name">
+<parameter_description> The well-known name to own.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="flags">
+<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback
+<parameter name="name_acquired_closure">
+<parameter_description> #GClosure to invoke when @name is
+acquired or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data for the callback
+<parameter name="name_lost_closure">
+<parameter_description> #GClosure to invoke when @name is lost or
+%NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> An identifier (never 0) that an be used with
+g_bus_unown_name() to stop owning the name.
+
+</return>
 </function>
 
-<function name="g_unix_mount_monitor_new">
+<function name="g_bus_own_name_with_closures">
 <description>
-Gets a new #GUnixMountMonitor. The default rate limit for which the
-monitor will report consecutive changes for the mount and mount
-point entry files is the default for a #GFileMonitor. Use
-g_unix_mount_monitor_set_rate_limit() to change this.
+Version of g_bus_own_name() using closures instead of callbacks for
+easier binding in other languages.
 
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="bus_type">
+<parameter_description> The type of bus to own a name on.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> The well-known name to own.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="bus_acquired_closure">
+<parameter_description> #GClosure to invoke when connected to
+the bus of type @bus_type or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_acquired_closure">
+<parameter_description> #GClosure to invoke when @name is
+acquired or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_lost_closure">
+<parameter_description> #GClosure to invoke when @name is lost or
+%NULL.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GUnixMountMonitor. 
+<return> An identifier (never 0) that an be used with
+g_bus_unown_name() to stop owning the name.
+
 </return>
 </function>
 
-<function name="g_settings_backend_changed_tree">
+<function name="g_bus_unown_name">
 <description>
-This call is a convenience wrapper.  It gets the list of changes from
- tree, computes the longest common prefix and calls
-g_settings_backend_changed().
+Stops owning a name.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #GSettingsBackend implementation
-</parameter_description>
-</parameter>
-<parameter name="tree">
-<parameter_description> a #GTree containing the changes
-</parameter_description>
-</parameter>
-<parameter name="origin_tag">
-<parameter_description> the origin tag
+<parameter name="owner_id">
+<parameter_description> An identifier obtained from g_bus_own_name()
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_set_content_type">
+<function name="g_bus_unwatch_name">
 <description>
-Sets the content type attribute for a given #GFileInfo.
-See %G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE.
+Stops watching a name.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="content_type">
-<parameter_description> a content type. See #GContentType.
+<parameter name="watcher_id">
+<parameter_description> An identifier obtained from g_bus_watch_name()
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_tcp_connection_get_graceful_disconnect">
+<function name="g_bus_watch_name">
 <description>
-Checks if graceful disconnects are used. See
-g_tcp_connection_set_graceful_disconnect().
+Starts watching @name on the bus specified by @bus_type and calls
+ name_appeared_handler and @name_vanished_handler when the name is
+known to have a owner respectively known to lose its
+owner. Callbacks will be invoked in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this function from.
 
-Since: 2.22
+You are guaranteed that one of the handlers will be invoked after
+calling this function. When you are done watching the name, just
+call g_bus_unwatch_name() with the watcher id this function
+returns.
+
+If the name vanishes or appears (for example the application owning
+the name could restart), the handlers are also invoked. If the
+#GDBusConnection that is used for watching the name disconnects, then
+ name_vanished_handler is invoked since it is no longer
+possible to access the name.
+
+Another guarantee is that invocations of @name_appeared_handler
+and @name_vanished_handler are guaranteed to alternate; that
+is, if @name_appeared_handler is invoked then you are
+guaranteed that the next time one of the handlers is invoked, it
+will be @name_vanished_handler. The reverse is also true.
+
+This behavior makes it very simple to write applications that wants
+to take action when a certain name exists, see &lt;xref
+linkend=&quot;gdbus-watching-names&quot;/&gt;. Basically, the application
+should create object proxies in @name_appeared_handler and destroy
+them again (if any) in @name_vanished_handler.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GTcpConnection
+<parameter name="bus_type">
+<parameter_description> The type of bus to watch a name on.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> The name (well-known or unique) to watch.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags from the #GBusNameWatcherFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="name_appeared_handler">
+<parameter_description> Handler to invoke when @name is known to exist or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_vanished_handler">
+<parameter_description> Handler to invoke when @name is known to not exist or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> User data to pass to handlers.
+</parameter_description>
+</parameter>
+<parameter name="user_data_free_func">
+<parameter_description> Function for freeing @user_data or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if graceful disconnect is used on close, %FALSE otherwise
+<return> An identifier (never 0) that an be used with
+g_bus_unwatch_name() to stop watching the name.
 
 </return>
 </function>
@@ -2932,1340 +3284,1583 @@ g_bus_unwatch_name() to stop watching the name.
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_get_user_data">
+<function name="g_bus_watch_name_on_connection_with_closures">
 <description>
-Gets the @user_data #gpointer passed to g_dbus_connection_register_object().
+Version of g_bus_watch_name_on_connection() using closures instead of callbacks for
+easier binding in other languages.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> The name (well-known or unique) to watch.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags from the #GBusNameWatcherFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="name_appeared_closure">
+<parameter_description> #GClosure to invoke when @name is known
+to exist or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_vanished_closure">
+<parameter_description> #GClosure to invoke when @name is known
+to not exist or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #gpointer.
+<return> An identifier (never 0) that an be used with
+g_bus_unwatch_name() to stop watching the name.
 
 </return>
 </function>
 
-<function name="g_data_input_stream_get_newline_type">
+<function name="g_bus_watch_name_with_closures">
 <description>
-Gets the current newline type for the @stream.
+Version of g_bus_watch_name() using closures instead of callbacks for
+easier binding in other languages.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="bus_type">
+<parameter_description> The type of bus to watch a name on.
 </parameter_description>
 </parameter>
-</parameters>
-<return> #GDataStreamNewlineType for the given @stream.
-</return>
-</function>
-
-<function name="g_unix_mount_point_guess_icon">
-<description>
-Guesses the icon of a Unix mount point. 
-
-
-</description>
-<parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint
+<parameter name="name">
+<parameter_description> The name (well-known or unique) to watch.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags from the #GBusNameWatcherFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="name_appeared_closure">
+<parameter_description> #GClosure to invoke when @name is known
+to exist or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name_vanished_closure">
+<parameter_description> #GClosure to invoke when @name is known
+to not exist or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon
+<return> An identifier (never 0) that an be used with
+g_bus_unwatch_name() to stop watching the name.
+
 </return>
 </function>
 
-<function name="g_credentials_to_string">
+<function name="g_cancellable_cancel">
 <description>
-Creates a human-readable textual representation of @credentials
-that can be used in logging and debug messages. The format of the
-returned string may change in future GLib release.
+Will set @cancellable to cancelled, and will emit the
+#GCancellable::cancelled signal. (However, see the warning about
+race conditions in the documentation for that signal if you are
+planning to connect to it.)
 
-Since: 2.26
+This function is thread-safe. In other words, you can safely call
+it from a thread other than the one running the operation that was
+passed the @cancellable.
+
+The convention within gio is that cancelling an asynchronous
+operation causes it to complete asynchronously. That is, if you
+cancel the operation from the same thread in which it is running,
+then the operation's #GAsyncReadyCallback will not be invoked until
+the application returns to the main loop.
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials object.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string that should be freed with g_free().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_get">
+<function name="g_cancellable_connect">
 <description>
-Gets the value that is stored at @key in @settings.
+Convenience function to connect to the #GCancellable::cancelled
+signal. Also handles the race condition that may happen
+if the cancellable is cancelled right before connecting.
 
-A convenience function that combines g_settings_get_value() with
-g_variant_get().
+ callback is called at most once, either directly at the
+time of the connect if @cancellable is already cancelled,
+or when @cancellable is cancelled in some thread.
 
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or for the #GVariantType of @format to mismatch
-the type given in the schema.
+ data_destroy_func will be called when the handler is
+disconnected, or immediately if the cancellable is already
+cancelled.
 
-Since: 2.26
+See #GCancellable::cancelled for details on how to use this.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="cancellable">
+<parameter_description> A #GCancellable.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="callback">
+<parameter_description> The #GCallback to connect.
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a #GVariant format string
+<parameter name="data">
+<parameter_description> Data to pass to @callback.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments as per @format
+<parameter name="data_destroy_func">
+<parameter_description> Free function for @data or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The id of the signal handler or 0 if @cancellable has already
+been cancelled.
+
+</return>
 </function>
 
-<function name="g_unix_fd_list_new_from_array">
+<function name="g_cancellable_disconnect">
 <description>
-Creates a new #GUnixFDList containing the file descriptors given in
- fds   The file descriptors become the property of the new list and
-may no longer be used by the caller.  The array itself is owned by
-the caller.
+Disconnects a handler from a cancellable instance similar to
+g_signal_handler_disconnect().  Additionally, in the event that a
+signal handler is currently running, this call will block until the
+handler has finished.  Calling this function from a
+#GCancellable::cancelled signal handler will therefore result in a
+deadlock.
 
-Each file descriptor in the array should be set to close-on-exec.
+This avoids a race condition where a thread cancels at the
+same time as the cancellable operation is finished and the
+signal handler is removed. See #GCancellable::cancelled for
+details on how to use this.
 
-If @n_fds is -1 then @fds must be terminated with -1.
+If @cancellable is %NULL or @handler_id is %0 this function does
+nothing.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="fds">
-<parameter_description> the initial list of file descriptors
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="n_fds">
-<parameter_description> the length of #fds, or -1
+<parameter name="handler_id">
+<parameter_description> Handler id of the handler to be disconnected, or %0.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixFDList
-
-</return>
+<return></return>
 </function>
 
-<function name="g_loadable_icon_load_async">
+<function name="g_cancellable_get_current">
 <description>
-Loads an icon asynchronously. To finish this function, see 
-g_loadable_icon_load_finish(). For the synchronous, blocking 
-version of this function, see g_loadable_icon_load().
+Gets the top cancellable from the stack.
+
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GLoadableIcon.
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> an integer.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a #GCancellable from the top of the stack, or %NULL
+if the stack is empty.
+</return>
 </function>
 
-<function name="g_socket_control_message_get_size">
+<function name="g_cancellable_get_fd">
 <description>
-Returns the space required for the control message, not including
-headers or alignment.
+Gets the file descriptor for a cancellable job. This can be used to
+implement cancellable operations on Unix systems. The returned fd will
+turn readable when @cancellable is cancelled.
+
+You are not supposed to read from the fd yourself, just check for
+readable status. Reading to unset the readable status is done
+with g_cancellable_reset().
+
+After a successful return from this function, you should use 
+g_cancellable_release_fd() to free up resources allocated for 
+the returned file descriptor.
+
+See also g_cancellable_make_pollfd().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> a #GSocketControlMessage
+<parameter name="cancellable">
+<parameter_description> a #GCancellable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of bytes required.
-
+<return> A valid file descriptor. %-1 if the file descriptor 
+is not supported, or on errors. 
 </return>
 </function>
 
-<function name="g_file_set_display_name_finish">
+<function name="g_cancellable_is_cancelled">
 <description>
-Finishes setting a display name started with 
-g_file_set_display_name_async().
+Checks if a cancellable job has been cancelled.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="cancellable">
+<parameter_description> a #GCancellable or NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile or %NULL on error.
-Free the returned object with g_object_unref().
+<return> %TRUE if @cancellable is cancelled, 
+FALSE if called with %NULL or if item is not cancelled. 
 </return>
 </function>
 
-<function name="g_application_new">
+<function name="g_cancellable_make_pollfd">
 <description>
-Create a new #GApplication.  This uses a platform-specific
-mechanism to ensure the current process is the unique owner of the
-application (as defined by the @appid). If successful, the
-#GApplication:is-remote property will be %FALSE, and it is safe to
-continue creating other resources such as graphics windows.
-
-If the given @appid is already running in another process, the the
-GApplication::activate_with_data signal will be emitted in the
-remote process, with the data from @argv and other
-platform-specific data available.  Subsequently the
-#GApplication:default-quit property will be evaluated.  If it's
-%TRUE, then the current process will terminate.  If %FALSE, then
-the application remains in the #GApplication:is-remote state, and
-you can e.g. call g_application_invoke_action(). Note that proxy
-instances should not call g_application_add_action().
+Creates a #GPollFD corresponding to @cancellable; this can be passed
+to g_poll() and used to poll for cancellation. This is useful both
+for unix systems without a native poll and for portability to
+windows.
 
-This function may do synchronous I/O to obtain unique ownership
-of the application id, and will block the calling thread in this
-case.
+When this function returns %TRUE, you should use 
+g_cancellable_release_fd() to free up resources allocated for the 
+ pollfd  After a %FALSE return, do not call g_cancellable_release_fd().
 
-If the environment does not support the basic functionality of
-#GApplication, this function will invoke g_error(), which by
-default is a fatal operation.  This may arise for example on
-UNIX systems using D-Bus when the session bus is not available.
+If this function returns %FALSE, either no @cancellable was given or
+resource limits prevent this function from allocating the necessary 
+structures for polling. (On Linux, you will likely have reached 
+the maximum number of file descriptors.) The suggested way to handle
+these cases is to ignore the @cancellable.
 
-As a convenience, this function is defined to call g_type_init() as
-its very first action.
+You are not supposed to read from the fd yourself, just check for
+readable status. Reading to unset the readable status is done
+with g_cancellable_reset().
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="appid">
-<parameter_description> System-dependent application identifier
-</parameter_description>
-</parameter>
-<parameter name="argc">
-<parameter_description> Number of arguments in @argv
+<parameter name="cancellable">
+<parameter_description> a #GCancellable or %NULL
 </parameter_description>
 </parameter>
-<parameter name="argv">
-<parameter_description> Argument vector, usually from the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of main() 
+<parameter name="pollfd">
+<parameter_description> a pointer to a #GPollFD
 </parameter_description>
 </parameter>
 </parameters>
-<return> An application instance
+<return> %TRUE if @pollfd was successfully initialized, %FALSE on 
+failure to prepare the cancellable.
 
 </return>
 </function>
 
-<function name="g_settings_new_with_path">
+<function name="g_cancellable_new">
 <description>
-Creates a new #GSettings object with a given schema and path.
+Creates a new #GCancellable object.
 
-You only need to do this if you want to directly create a settings
-object with a schema that doesn't have a specified path of its own.
-That's quite rare.
+Applications that want to start one or more operations
+that should be cancellable should create a #GCancellable
+and pass it to the operations.
 
-It is a programmer error to call this function for a schema that
-has an explicitly specified path.
+One #GCancellable can be used in multiple consecutive
+operations, but not in multiple concurrent operations.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="schema">
-<parameter_description> the name of the schema
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> the path to use
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new #GSettings object
+<return> a #GCancellable.
 </return>
 </function>
 
-<function name="g_file_info_set_edit_name">
+<function name="g_cancellable_pop_current">
 <description>
-Sets the edit name for the current file.
-See %G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME.
+Pops @cancellable off the cancellable stack (verifying that @cancellable
+is on the top of the stack).
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable object
 </parameter_description>
 </parameter>
-<parameter name="edit_name">
-<parameter_description> a string containing an edit name.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_cancellable_push_current">
+<description>
+Pushes @cancellable onto the cancellable stack. The current
+cancellable can then be recieved using g_cancellable_get_current().
+
+This is useful when implementing cancellable operations in
+code that does not allow you to pass down the cancellable object.
+
+This is typically called automatically by e.g. #GFile operations,
+so you rarely have to call this yourself.
+
+</description>
+<parameters>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable object
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_can_start">
+<function name="g_cancellable_release_fd">
 <description>
-Checks if a drive can be started.
+Releases a resources previously allocated by g_cancellable_get_fd()
+or g_cancellable_make_pollfd().
+
+For compatibility reasons with older releases, calling this function 
+is not strictly required, the resources will be automatically freed
+when the @cancellable is finalized. However, the @cancellable will
+block scarce file descriptors until it is finalized if this function
+is not called. This can cause the application to run out of file 
+descriptors when many #GCancellables are used at the same time.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive can be started, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_unset_attribute_mask">
+<function name="g_cancellable_reset">
 <description>
-Unsets a mask set by g_file_info_set_attribute_mask(), if one
-is set.
+Resets @cancellable to its uncancelled state. 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> #GFileInfo.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable object.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_app_launch_context_get_startup_notify_id">
+<function name="g_cancellable_set_error_if_cancelled">
 <description>
-Initiates startup notification for the application and returns the
-&lt;envvar&gt;DESKTOP_STARTUP_ID&lt;/envvar&gt; for the launched operation,
-if supported.
-
-Startup notification IDs are defined in the &lt;ulink
-url=&quot;http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt&quot;&gt;
-FreeDesktop.Org Startup Notifications standard&lt;/ulink&gt;.
+If the @cancellable is cancelled, sets the error to notify
+that the operation was cancelled.
 
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GAppLaunchContext
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> a #GAppInfo
+<parameter name="cancellable">
+<parameter_description> a #GCancellable object.
 </parameter_description>
 </parameter>
-<parameter name="files">
-<parameter_description> a #GList of of #GFile objects
+<parameter name="error">
+<parameter_description> #GError to append error state to.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a startup notification ID for the application, or %NULL if
-not supported.
+<return> %TRUE if @cancellable was cancelled, %FALSE if it was not.
 </return>
 </function>
 
-<function name="g_dbus_error_set_dbus_error">
+<function name="g_cancellable_source_new">
 <description>
-Does nothing if @error is %NULL. Otherwise sets * error to
-a new #GError created with g_dbus_error_new_for_dbus_error()
-with @dbus_error_message prepend with @format (unless %NULL).
+Creates a source that triggers if @cancellable is cancelled and
+calls its callback of type #GCancellableSourceFunc. This is
+primarily useful for attaching to another (non-cancellable) source
+with g_source_add_child_source() to add cancellability to it.
 
-Since: 2.26
+For convenience, you can call this with a %NULL #GCancellable,
+in which case the source will never trigger.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> A pointer to a #GError or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="dbus_error_name">
-<parameter_description> D-Bus error name.
-</parameter_description>
-</parameter>
-<parameter name="dbus_error_message">
-<parameter_description> D-Bus error message.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> printf()-style format to prepend to @dbus_error_message or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> Arguments for @format.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new #GSource.
+
+</return>
 </function>
 
-<function name="g_file_query_info_finish">
+<function name="g_charset_converter_get_num_fallbacks">
 <description>
-Finishes an asynchronous file info query. 
-See g_file_query_info_async().
+Gets the number of fallbacks that @converter has applied so far.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError. 
+<parameter name="converter">
+<parameter_description> a #GCharsetConverter
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileInfo for given @file or %NULL on error.
-Free the returned object with g_object_unref().
+<return> the number of fallbacks that @converter has applied
+
 </return>
 </function>
 
-<function name="g_resolver_lookup_service_finish">
+<function name="g_charset_converter_get_use_fallback">
 <description>
-Retrieves the result of a previous call to
-g_resolver_lookup_service_async().
-
-If the DNS resolution failed, @error (if non-%NULL) will be set to
-a value from #GResolverError. If the operation was cancelled,
- error will be set to %G_IO_ERROR_CANCELLED.
+Gets the #GCharsetConverter:use-fallback property.
 
-Since: 2.22
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> the result passed to your #GAsyncReadyCallback
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="converter">
+<parameter_description> a #GCharsetConverter
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GSrvTarget, or %NULL on error. See
-g_resolver_lookup_service() for more details.
+<return> %TRUE if fallbacks are used by @converter
 
 </return>
 </function>
 
-<function name="g_file_find_enclosing_mount_finish">
+<function name="g_charset_converter_new">
 <description>
-Finishes an asynchronous find mount request. 
-See g_file_find_enclosing_mount_async().
+Creates a new #GCharsetConverter.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile
+<parameter name="to_charset">
+<parameter_description> destination charset
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult
+<parameter name="from_charset">
+<parameter_description> source charset
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GMount for given @file or %NULL on error.
-Free the returned object with g_object_unref().
+<return> a new #GCharsetConverter or %NULL on error.
+
 </return>
 </function>
 
-<function name="g_unix_output_stream_set_close_fd">
+<function name="g_charset_converter_set_use_fallback">
 <description>
-Sets whether the file descriptor of @stream shall be closed
-when the stream is closed.
+Sets the #GCharsetConverter:use-fallback property.
 
-Since: 2.20
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GUnixOutputStream
+<parameter name="converter">
+<parameter_description> a #GCharsetConverter
 </parameter_description>
 </parameter>
-<parameter name="close_fd">
-<parameter_description> %TRUE to close the file descriptor when done
+<parameter name="use_fallback">
+<parameter_description> %TRUE to use fallbacks
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_application_quit_with_data">
+<function name="g_content_type_can_be_executable">
 <description>
-Request that the application quits.
+Checks if a content type can be executable. Note that for instance
+things like text files can be executables (i.e. scripts and batch files).
 
-This function has different behavior depending on whether @application
-is acting as a proxy for another process.  In the normal case where
-the current process is hosting the application, the default
-implementation will quit the main loop created by g_application_run().
 
-If @application is a proxy, then the remote process will be asked
-to quit.
+</description>
+<parameters>
+<parameter name="type">
+<parameter_description> a content type string
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the file type corresponds to a type that
+can be executable, %FALSE otherwise.
+</return>
+</function>
+
+<function name="g_content_type_equals">
+<description>
+Compares two content types for equality.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="type1">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
-<parameter name="platform_data">
-<parameter_description> platform-specific data
+<parameter name="type2">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the application accepted the request, %FALSE otherwise
-
+<return> %TRUE if the two strings are identical or equivalent,
+%FALSE otherwise.
 </return>
 </function>
 
-<function name="g_inet_address_get_is_site_local">
+<function name="g_content_type_from_mime_type">
 <description>
-Tests whether @address is a site-local address such as 10.0.0.1
-(that is, the address identifies a host on a local network that can
-not be reached directly from the Internet, but which may have
-outgoing Internet connectivity via a NAT or firewall).
+Tries to find a content type based on the mime type name.
 
-Since: 2.22
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="mime_type">
+<parameter_description> a mime type string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is a site-local address.
+<return> Newly allocated string with content type
+or %NULL. Free with g_free()
 
 </return>
 </function>
 
-<function name="g_app_info_set_as_default_for_type">
+<function name="g_content_type_get_description">
 <description>
-Sets the application as the default handler for a given type.
+Gets the human readable description of the content type.
 
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
-</parameter_description>
-</parameter>
-<parameter name="content_type">
-<parameter_description> the content type.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError.
+<parameter name="type">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
+<return> a short description of the content type @type. Free the
+returned string with g_free()
 </return>
 </function>
 
-<function name="g_unix_socket_address_abstract_names_supported">
+<function name="g_content_type_get_icon">
 <description>
-Checks if abstract unix domain socket names are supported.
+Gets the icon for a content type.
 
-Since: 2.22
 
 </description>
 <parameters>
+<parameter name="type">
+<parameter_description> a content type string
+</parameter_description>
+</parameter>
 </parameters>
-<return> %TRUE if supported, %FALSE otherwise
-
+<return> #GIcon corresponding to the content type. Free the returned
+object with g_object_unref()
 </return>
 </function>
 
-<function name="g_emblemed_icon_get_emblems">
+<function name="g_content_type_get_mime_type">
 <description>
-Gets the list of emblems for the @icon.
+Gets the mime type for the content type, if one is registered.
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="emblemed">
-<parameter_description> a #GEmblemedIcon
+<parameter name="type">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GEmblem &lt;!-- --&gt;s that is owned by @emblemed
-
+<return> the registered mime type for the given @type,
+or %NULL if unknown.
 </return>
 </function>
 
-<function name="g_filter_input_stream_get_close_base_stream">
+<function name="g_content_type_guess">
 <description>
-Returns whether the base stream will be closed when @stream is
-closed.
+Guesses the content type based on example data. If the function is
+uncertain, @result_uncertain will be set to %TRUE. Either @filename
+or @data may be %NULL, in which case the guess will be based solely
+on the other argument.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFilterInputStream.
+<parameter name="filename">
+<parameter_description> a string, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a stream of data, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="data_size">
+<parameter_description> the size of @data
+</parameter_description>
+</parameter>
+<parameter name="result_uncertain">
+<parameter_description> return location for the certainty
+of the result, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the base stream will be closed.
+<return> a string indicating a guessed content type for the
+given data. Free with g_free()
 </return>
 </function>
 
-<function name="g_file_monitor">
+<function name="g_content_type_guess_for_tree">
 <description>
-Obtains a file or directory monitor for the given file, depending
-on the type of the file.
+Tries to guess the type of the tree with root @root, by
+looking at the files it contains. The result is an array
+of content types, with the best guess coming first.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+The types returned all have the form x-content/foo, e.g.
+x-content/audio-cdda (for audio CDs) or x-content/image-dcf
+(for a camera memory card). See the &lt;ulink url=&quot;http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec&quot;&gt;shared-mime-info&lt;/ulink&gt;
+specification for more on x-content types.
+
+This function is useful in the implementation of
+g_mount_guess_content_type().
 
 Since: 2.18
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileMonitorFlags
+<parameter name="root">
+<parameter_description> the root of the tree to guess a type for
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameters>
+<return> an %NULL-terminated
+array of zero or more content types, or %NULL. Free with g_strfreev()
+
+</return>
+</function>
+
+<function name="g_content_type_is_a">
+<description>
+Determines if @type is a subset of @supertype.
+
+
+</description>
+<parameters>
+<parameter name="type">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="supertype">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileMonitor for the given @file, or %NULL on error.
-Free the returned object with g_object_unref().
-
+<return> %TRUE if @type is a kind of @supertype,
+%FALSE otherwise.
 </return>
 </function>
 
-<function name="g_cancellable_reset">
+<function name="g_content_type_is_unknown">
 <description>
-Resets @cancellable to its uncancelled state. 
+Checks if the content type is the generic &quot;unknown&quot; type.
+On UNIX this is the &quot;application/octet-stream&quot; mimetype,
+while on win32 it is &quot;*&quot;.
+
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable object.
+<parameter name="type">
+<parameter_description> a content type string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the type is the unknown type.
+</return>
 </function>
 
-<function name="g_bus_unwatch_name">
+<function name="g_content_types_get_registered">
 <description>
-Stops watching a name.
+Gets a list of strings containing all the registered content types
+known to the system. The list and its data should be freed using
+&lt;programlisting&gt;
+g_list_foreach (list, g_free, NULL);
+g_list_free (list);
+&lt;/programlisting&gt;
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="watcher_id">
-<parameter_description> An identifier obtained from g_bus_watch_name()
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> #GList of the registered content types
+</return>
 </function>
 
-<function name="g_file_copy_async">
+<function name="g_converter_convert">
 <description>
-Copies the file @source to the location specified by @destination 
-asynchronously. For details of the behaviour, see g_file_copy().
+This is the main operation used when converting data. It is to be called
+multiple times in a loop, and each time it will do some work, i.e.
+producing some output (in @outbuf) or consuming some input (from @inbuf) or
+both. If its not possible to do any work an error is returned.
 
-If @progress_callback is not %NULL, then that function that will be called
-just like in g_file_copy(), however the callback will run in the main loop,
-not in the thread that is doing the I/O operation.
+Note that a single call may not consume all input (or any input at all).
+Also a call may produce output even if given no input, due to state stored
+in the converter producing output.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_copy_finish() to get the result of the operation.
+If any data was either produced or consumed, and then an error happens, then
+only the successful conversion is reported and the error is returned on the
+next call.
+
+A full conversion loop involves calling this method repeatedly, each time
+giving it new input and space output space. When there is no more input
+data after the data in @inbuf, the flag %G_CONVERTER_INPUT_AT_END must be set.
+The loop will be (unless some error happens) returning %G_CONVERTER_CONVERTED
+each time until all data is consumed and all output is produced, then
+%G_CONVERTER_FINISHED is returned instead. Note, that %G_CONVERTER_FINISHED
+may be returned even if %G_CONVERTER_INPUT_AT_END is not set, for instance
+in a decompression converter where the end of data is detectable from the
+data (and there might even be other data after the end of the compressed data).
+
+When some data has successfully been converted @bytes_read and is set to
+the number of bytes read from @inbuf, and @bytes_written is set to indicate
+how many bytes was written to @outbuf. If there are more data to output
+or consume (i.e. unless the G_CONVERTER_INPUT_AT_END is specified) then
+G_CONVERTER_CONVERTED is returned, and if no more data is to be output
+then G_CONVERTER_FINISHED is returned.
+
+On error %G_CONVERTER_ERROR is returned and @error is set accordingly.
+Some errors need special handling:
+
+%G_IO_ERROR_NO_SPACE is returned if there is not enough space
+to write the resulting converted data, the application should
+call the function again with a larger @outbuf to continue.
+
+%G_IO_ERROR_PARTIAL_INPUT is returned if there is not enough
+input to fully determine what the conversion should produce,
+and the %G_CONVERTER_INPUT_AT_END flag is not set. This happens for
+example with an incomplete multibyte sequence when converting text,
+or when a regexp matches up to the end of the input (and may match
+further input). It may also happen when @inbuf_size is zero and
+there is no more data to produce.
+
+When this happens the application should read more input and then
+call the function again. If further input shows that there is no
+more data call the function again with the same data but with
+the %G_CONVERTER_INPUT_AT_END flag set. This may cause the conversion
+to finish as e.g. in the regexp match case (or, to fail again with
+%G_IO_ERROR_PARTIAL_INPUT in e.g. a charset conversion where the
+input is actually partial).
+
+After g_converter_convert() has returned %G_CONVERTER_FINISHED the
+converter object is in an invalid state where its not allowed
+to call g_converter_convert() anymore. At this time you can only
+free the object or call g_converter_reset() to reset it to the
+initial state.
+
+If the flag %G_CONVERTER_FLUSH is set then conversion is modified
+to try to write out all internal state to the output. The application
+has to call the function multiple times with the flag set, and when
+the availible input has been consumed and all internal state has
+been produced then %G_CONVERTER_FLUSHED (or %G_CONVERTER_FINISHED if
+really at the end) is returned instead of %G_CONVERTER_CONVERTED.
+This is somewhat similar to what happens at the end of the input stream,
+but done in the middle of the data.
+
+This has different meanings for different conversions. For instance
+in a compression converter it would mean that we flush all the
+compression state into output such that if you uncompress the
+compressed data you get back all the input data. Doing this may
+make the final file larger due to padding though. Another example
+is a regexp conversion, where if you at the end of the flushed data
+have a match, but there is also a potential longer match. In the
+non-flushed case we would ask for more input, but when flushing we
+treat this as the end of input and do the match.
+
+Flushing is not always possible (like if a charset converter flushes
+at a partial multibyte sequence). Converters are supposed to try
+to produce as much output as possible and then return an error
+(typically %G_IO_ERROR_PARTIAL_INPUT).
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> input #GFile.
+<parameter name="converter">
+<parameter_description> a #GConverter.
 </parameter_description>
 </parameter>
-<parameter name="destination">
-<parameter_description> destination #GFile
+<parameter name="inbuf">
+<parameter_description> the buffer
+containing the data to convert.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> set of #GFileCopyFlags
+<parameter name="inbuf_size">
+<parameter_description> the number of bytes in @inbuf
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+<parameter name="outbuf">
+<parameter_description> a buffer to write converted data in.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="outbuf_size">
+<parameter_description> the number of bytes in @outbuf, must be at least one
 </parameter_description>
 </parameter>
-<parameter name="progress_callback">
-<parameter_description> function to callback with progress information
+<parameter name="flags">
+<parameter_description> a #GConvertFlags controlling the conversion details
 </parameter_description>
 </parameter>
-<parameter name="progress_callback_data">
-<parameter_description> user data to pass to @progress_callback
+<parameter name="bytes_read">
+<parameter_description> will be set to the number of bytes read from @inbuf on success
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="bytes_written">
+<parameter_description> will be set to the number of bytes written to @outbuf on success
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GConverterResult, %G_CONVERTER_ERROR on error.
+
+</return>
 </function>
 
-<function name="g_dbus_method_invocation_get_interface_name">
+<function name="g_converter_input_stream_get_converter">
 <description>
-Gets the name of the D-Bus interface the method was invoked on.
+Gets the #GConverter that is used by @converter_stream.
 
-Since: 2.26
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="converter_stream">
+<parameter_description> a #GConverterInputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string. Do not free, it is owned by @invocation.
+<return> the converter of the converter input stream
 
 </return>
 </function>
 
-<function name="g_memory_input_stream_new">
+<function name="g_converter_input_stream_new">
 <description>
-Creates a new empty #GMemoryInputStream. 
+Creates a new converter input stream for the @base_stream.
 
 
 </description>
 <parameters>
+<parameter name="base_stream">
+<parameter_description> a #GInputStream
+</parameter_description>
+</parameter>
+<parameter name="converter">
+<parameter_description> a #GConverter
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GInputStream
+<return> a new #GInputStream.
 </return>
 </function>
 
-<function name="g_resolver_free_targets">
+<function name="g_converter_output_stream_get_converter">
 <description>
-Frees @targets (which should be the return value from
-g_resolver_lookup_service() or g_resolver_lookup_service_finish()).
-(This is a convenience method; you can also simply free the
-results by hand.)
+Gets the #GConverter that is used by @converter_stream.
 
-Since: 2.22
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="targets">
-<parameter_description> a #GList of #GSrvTarget
+<parameter name="converter_stream">
+<parameter_description> a #GConverterOutputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the converter of the converter output stream
+
+</return>
 </function>
 
-<function name="g_icon_new_for_string">
+<function name="g_converter_output_stream_new">
 <description>
-Generate a #GIcon instance from @str. This function can fail if
- str is not valid - see g_icon_to_string() for discussion.
-
-If your application or library provides one or more #GIcon
-implementations you need to ensure that each #GType is registered
-with the type system prior to calling g_icon_new_for_string().
+Creates a new converter output stream for the @base_stream.
 
-Since: 2.20
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> A string obtained via g_icon_to_string().
+<parameter name="base_stream">
+<parameter_description> a #GOutputStream
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error.
+<parameter name="converter">
+<parameter_description> a #GConverter
 </parameter_description>
 </parameter>
 </parameters>
-<return> An object implementing the #GIcon interface or %NULL if
- error is set.
-
+<return> a new #GOutputStream.
 </return>
 </function>
 
-<function name="g_cancellable_is_cancelled">
+<function name="g_converter_reset">
 <description>
-Checks if a cancellable job has been cancelled.
+Resets all internal state in the converter, making it behave
+as if it was just created. If the converter has any internal
+state that would produce output then that output is lost.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable or NULL.
+<parameter name="converter">
+<parameter_description> a #GConverter.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @cancellable is cancelled, 
-FALSE if called with %NULL or if item is not cancelled. 
-</return>
+<return></return>
 </function>
 
-<function name="g_initable_init">
+<function name="g_credentials_get_native">
 <description>
-Initializes the object implementing the interface. This must be
-done before any real use of the object after initial construction.
-
-Implementations may also support cancellation. If @cancellable is not %NULL,
-then initialization can be cancelled by triggering the cancellable object
-from another thread. If the operation was cancelled, the error
-%G_IO_ERROR_CANCELLED will be returned. If @cancellable is not %NULL and
-the object doesn't support cancellable initialization the error
-%G_IO_ERROR_NOT_SUPPORTED will be returned.
-
-If this function is not called, or returns with an error then all
-operations on the object should fail, generally returning the
-error %G_IO_ERROR_NOT_INITIALIZED.
+Gets a pointer to native credentials of type @native_type from
+ credentials 
 
-Implementations of this method must be idempotent, i.e. multiple calls
-to this function with the same argument should return the same results.
-Only the first call initializes the object, further calls return the result
-of the first call. This is so that its safe to implement the singleton
-pattern in the GObject constructor function.
+It is a programming error (which will cause an warning to be
+logged) to use this method if there is no #GCredentials support for
+the OS or if @native_type isn't supported by the OS.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="initable">
-<parameter_description> a #GInitable.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="credentials">
+<parameter_description> A #GCredentials.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="native_type">
+<parameter_description> The type of native credentials to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful. If an error has occurred, this function will
-return %FALSE and set @error appropriately if present.
+<return> The pointer to native credentials or %NULL if the
+operation there is no #GCredentials support for the OS or if
+ native_type isn't supported by the OS. Do not free the returned
+data, it is owned by @credentials.
 
 </return>
 </function>
 
-<function name="g_io_stream_clear_pending">
+<function name="g_credentials_get_unix_user">
 <description>
-Clears the pending flag on @stream.
+Tries to get the UNIX user identifier from @credentials. This
+method is only available on UNIX platforms.
 
-Since: 2.22
+This operation can fail if #GCredentials is not supported on the
+OS or if the native credentials type does not contain information
+about the UNIX user.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
+<parameter name="credentials">
+<parameter_description> A #GCredentials
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The UNIX user identifier or -1 if @error is set.
+
+</return>
 </function>
 
-<function name="g_drive_enumerate_identifiers">
+<function name="g_credentials_is_same_user">
 <description>
-Gets the kinds of identifiers that @drive has. 
-Use g_drive_get_identifer() to obtain the identifiers
-themselves.
+Checks if @credentials and @other_credentials is the same user.
 
+This operation can fail if #GCredentials is not supported on the
+the OS.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive
+<parameter name="credentials">
+<parameter_description> A #GCredentials.
+</parameter_description>
+</parameter>
+<parameter name="other_credentials">
+<parameter_description> A #GCredentials.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated array of strings containing
-kinds of identifiers. Use g_strfreev() to free.
+<return> %TRUE if @credentials and @other_credentials has the same
+user, %FALSE otherwise or if @error is set.
+
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_get_method_name">
+<function name="g_credentials_new">
 <description>
-Gets the name of the method that was invoked.
+Creates a new #GCredentials object with credentials matching the
+the current process.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
-</parameter_description>
-</parameter>
 </parameters>
-<return> A string. Do not free, it is owned by @invocation.
+<return> A #GCredentials. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_dbus_message_new_signal">
+<function name="g_credentials_set_native">
 <description>
-Creates a new #GDBusMessage for a signal emission.
+Copies the native credentials of type @native_type from @native
+into @credentials.
+
+It is a programming error (which will cause an warning to be
+logged) to use this method if there is no #GCredentials support for
+the OS or if @native_type isn't supported by the OS.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> A valid object path.
+<parameter name="credentials">
+<parameter_description> A #GCredentials.
 </parameter_description>
 </parameter>
-<parameter name="interface_">
-<parameter_description> A valid D-Bus interface name.
+<parameter name="native_type">
+<parameter_description> The type of native credentials to set.
 </parameter_description>
 </parameter>
-<parameter name="signal">
-<parameter_description> A valid signal name.
+<parameter name="native">
+<parameter_description> A pointer to native credentials.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_memory_input_stream_new_from_data">
+<function name="g_credentials_set_unix_user">
 <description>
-Creates a new #GMemoryInputStream with data in memory of a given size.
+Tries to set the UNIX user identifier on @credentials. This method
+is only available on UNIX platforms.
+
+This operation can fail if #GCredentials is not supported on the
+OS or if the native credentials type does not contain information
+about the UNIX user.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> input data
+<parameter name="credentials">
+<parameter_description> A #GCredentials.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> length of the data, may be -1 if @data is a nul-terminated string
+<parameter name="uid">
+<parameter_description> The UNIX user identifier to set.
 </parameter_description>
 </parameter>
-<parameter name="destroy">
-<parameter_description> function that is called to free @data, or %NULL
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> new #GInputStream read from @data of @len bytes.
+<return> %TRUE if @uid was set, %FALSE if error is set.
+
 </return>
 </function>
 
-<function name="g_desktop_app_info_new_from_keyfile">
+<function name="g_credentials_to_string">
 <description>
-Creates a new #GDesktopAppInfo.
+Creates a human-readable textual representation of @credentials
+that can be used in logging and debug messages. The format of the
+returned string may change in future GLib release.
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> an opened #GKeyFile
+<parameter name="credentials">
+<parameter_description> A #GCredentials object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GDesktopAppInfo or %NULL on error.
+<return> A string that should be freed with g_free().
 
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_uint32">
+<function name="g_data_input_stream_get_byte_order">
 <description>
-Gets an unsigned 32-bit integer contained within the attribute. If the 
-attribute does not contain an unsigned 32-bit integer, or is invalid, 
-0 will be returned.
+Gets the byte order for the data input stream.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unsigned 32-bit integer from the attribute. 
+<return> the @stream's current #GDataStreamByteOrder. 
 </return>
 </function>
 
-<function name="g_content_type_get_mime_type">
+<function name="g_data_input_stream_get_newline_type">
 <description>
-Gets the mime type for the content type, if one is registered.
+Gets the current newline type for the @stream.
 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a content type string
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the registered mime type for the given @type,
-or %NULL if unknown.
+<return> #GDataStreamNewlineType for the given @stream.
 </return>
 </function>
 
-<function name="g_dbus_server_start">
+<function name="g_data_input_stream_new">
 <description>
-Starts @server.
+Creates a new data input stream for the @base_stream.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="server">
-<parameter_description> A #GDBusServer.
+<parameter name="base_stream">
+<parameter_description> a #GInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GDataInputStream.
+</return>
 </function>
 
-<function name="g_socket_connection_get_socket">
+<function name="g_data_input_stream_read_byte">
 <description>
-Gets the underlying #GSocket object of the connection.
-This can be useful if you want to do something unusual on it
-not supported by the #GSocketConnection APIs.
+Reads an unsigned 8-bit/1-byte value from @stream.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GSocketConnection
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress or %NULL on error.
-
+<return> an unsigned 8-bit/1-byte value read from the @stream or %0 
+if an error occurred.
 </return>
 </function>
 
-<function name="g_themed_icon_get_names">
+<function name="g_data_input_stream_read_int16">
 <description>
-Gets the names of icons from within @icon.
+Reads a 16-bit/2-byte value from @stream.
+
+In order to get the correct byte order for this read operation, 
+see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
 
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GThemedIcon.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of icon names.
+<return> a signed 16-bit/2-byte value read from @stream or %0 if 
+an error occurred.
 </return>
 </function>
 
-<function name="g_input_stream_is_closed">
+<function name="g_data_input_stream_read_int32">
 <description>
-Checks if an input stream is closed.
+Reads a signed 32-bit/4-byte value from @stream.
+
+In order to get the correct byte order for this read operation, 
+see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> input stream.
+<parameter_description> a given #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the stream is closed.
+<return> a signed 32-bit/4-byte value read from the @stream or %0 if 
+an error occurred. 
 </return>
 </function>
 
-<function name="g_dbus_connection_close_sync">
+<function name="g_data_input_stream_read_int64">
 <description>
-Synchronously closees @connection. The calling thread is blocked
-until this is done. See g_dbus_connection_close() for the
-asynchronous version of this method and more details about what it
-does.
+Reads a 64-bit/8-byte value from @stream.
+
+In order to get the correct byte order for this read operation, 
+see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation succeeded, %FALSE if @error is set.
-
+<return> a signed 64-bit/8-byte value read from @stream or %0 if 
+an error occurred.  
 </return>
 </function>
 
-<function name="g_credentials_get_native">
+<function name="g_data_input_stream_read_line">
 <description>
-Gets a pointer to native credentials of type @native_type from
- credentials 
+Reads a line from the data input stream.
 
-It is a programming error (which will cause an warning to be
-logged) to use this method if there is no #GCredentials support for
-the OS or if @native_type isn't supported by the OS.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-<parameter name="native_type">
-<parameter_description> The type of native credentials to get.
+<parameter name="length">
+<parameter_description> a #gsize to get the length of the data read in.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The pointer to native credentials or %NULL if the
-operation there is no #GCredentials support for the OS or if
- native_type isn't supported by the OS. Do not free the returned
-data, it is owned by @credentials.
-
+<return> a string with the line that was read in
+(without the newlines).  Set @length to a #gsize to get the
+length of the read line.  On an error, it will return %NULL and
+ error will be set. If there's no content to read, it will
+still return %NULL, but @error won't be set.
 </return>
 </function>
 
-<function name="g_settings_set_flags">
+<function name="g_data_input_stream_read_line_async">
 <description>
-Looks up the flags type nicks for the bits specified by @value, puts
-them in an array of strings and writes the array to @key, withing
- settings 
+The asynchronous version of g_data_input_stream_read_line().  It is
+an error to have two outstanding calls to this function.
 
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or is not marked as a flags type, or for @value
-to contain any bits that are not value for the named type.
+When the operation is finished, @callback will be called. You
+can then call g_data_input_stream_read_line_finish() to get
+the result of the operation.
 
-After performing the write, accessing @key directly with
-g_settings_get_strv() will return an array of 'nicks'; one for each
-bit in @value.
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key, within @settings
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a flags value
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, if the set succeeds
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_get_double">
+<function name="g_data_input_stream_read_line_finish">
 <description>
-Gets the value that is stored at @key in @settings.
-
-A convenience variant of g_settings_get() for doubles.
-
-It is a programmer error to give a @key that isn't specified as
-having a 'double' type in the schema for @settings.
+Finish an asynchronous call started by
+g_data_input_stream_read_line_async().
 
-Since: 2.26
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="result">
+<parameter_description> the #GAsyncResult that was provided to the callback.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> a #gsize to get the length of the data read in.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a double
+<return> a string with the line that was read in
+(without the newlines).  Set @length to a #gsize to get the
+length of the read line.  On an error, it will return %NULL and
+ error will be set. If there's no content to read, it will
+still return %NULL, but @error won't be set.
+
 </return>
 </function>
 
-<function name="g_drive_has_volumes">
+<function name="g_data_input_stream_read_uint16">
 <description>
-Check if @drive has any mountable volumes.
+Reads an unsigned 16-bit/2-byte value from @stream.
+
+In order to get the correct byte order for this read operation, 
+see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order(). 
 
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive contains volumes, %FALSE otherwise.
+<return> an unsigned 16-bit/2-byte value read from the @stream or %0 if 
+an error occurred. 
 </return>
 </function>
 
-<function name="g_app_info_get_description">
+<function name="g_data_input_stream_read_uint32">
 <description>
-Gets a human-readable description of an installed application.
+Reads an unsigned 32-bit/4-byte value from @stream.
+
+In order to get the correct byte order for this read operation, 
+see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing a description of the 
-application @appinfo, or %NULL if none. 
+<return> an unsigned 32-bit/4-byte value read from the @stream or %0 if 
+an error occurred. 
 </return>
 </function>
 
-<function name="g_app_info_equal">
+<function name="g_data_input_stream_read_uint64">
 <description>
-Checks if two #GAppInfo&lt;!-- --&gt;s are equal.
+Reads an unsigned 64-bit/8-byte value from @stream.
+
+In order to get the correct byte order for this read operation, 
+see g_data_input_stream_get_byte_order().
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="appinfo1">
-<parameter_description> the first #GAppInfo.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-<parameter name="appinfo2">
-<parameter_description> the second #GAppInfo.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @appinfo1 is equal to @appinfo2. %FALSE otherwise.
+<return> an unsigned 64-bit/8-byte read from @stream or %0 if 
+an error occurred. 
 </return>
 </function>
 
-<function name="g_cancellable_get_current">
+<function name="g_data_input_stream_read_until">
 <description>
-Gets the top cancellable from the stack.
+Reads a string from the data input stream, up to the first
+occurrence of any of the stop characters.
+
+Note that, in contrast to g_data_input_stream_read_until_async(),
+this function consumes the stop character that it finds.
+
+Don't use this function in new code.  Its functionality is
+inconsistent with g_data_input_stream_read_until_async().  Both
+functions will be marked as deprecated in a future release.  Use
+g_data_input_stream_read_upto() instead, but note that that function
+does not consume the stop character.
 
 
 </description>
 <parameters>
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="stop_chars">
+<parameter_description> characters to terminate the read.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> a #gsize to get the length of the data read in.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GCancellable from the top of the stack, or %NULL
-if the stack is empty.
+<return> a string with the data that was read
+before encountering any of the stop characters. Set @length to
+a #gsize to get the length of the string. This function will
+return %NULL on an error.
 </return>
 </function>
 
-<function name="g_mount_remount">
+<function name="g_data_input_stream_read_until_async">
 <description>
-Remounts a mount. This is an asynchronous operation, and is 
-finished by calling g_mount_remount_finish() with the @mount 
-and #GAsyncResults data returned in the @callback.
+The asynchronous version of g_data_input_stream_read_until().
+It is an error to have two outstanding calls to this function.
 
-Remounting is useful when some setting affecting the operation
-of the volume has been changed, as these may need a remount to
-take affect. While this is semantically equivalent with unmounting
-and then remounting not all backends might need to actually be
-unmounted.
+Note that, in contrast to g_data_input_stream_read_until(),
+this function does not consume the stop character that it finds.  You
+must read it for yourself.
+
+When the operation is finished, @callback will be called. You
+can then call g_data_input_stream_read_until_finish() to get
+the result of the operation.
+
+Don't use this function in new code.  Its functionality is
+inconsistent with g_data_input_stream_read_until().  Both functions
+will be marked as deprecated in a future release.  Use
+g_data_input_stream_read_upto_async() instead.
+
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="stop_chars">
+<parameter_description> characters to terminate the read.
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -4273,120 +4868,143 @@ unmounted.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> callback to call when the request is satisfied.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter_description> the data to pass to callback function.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_output_stream_is_closed">
+<function name="g_data_input_stream_read_until_finish">
 <description>
-Checks if an output stream has already been closed.
+Finish an asynchronous call started by
+g_data_input_stream_read_until_async().
+
+Since: 2.20
 
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @stream is closed. %FALSE otherwise. 
-</return>
-</function>
-
-<function name="g_inet_address_to_bytes">
-<description>
-Gets the raw binary address data from @address.
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="result">
+<parameter_description> the #GAsyncResult that was provided to the callback.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a pointer to an internal array of the bytes in @address,
-which should not be modified, stored, or freed. The size of this
-array can be gotten with g_inet_address_get_native_size().
-
-</return>
-</function>
-
-<function name="g_cancellable_set_error_if_cancelled">
-<description>
-If the @cancellable is cancelled, sets the error to notify
-that the operation was cancelled.
-
-
-</description>
-<parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable object.
+<parameter name="length">
+<parameter_description> a #gsize to get the length of the data read in.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError to append error state to.
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @cancellable was cancelled, %FALSE if it was not.
+<return> a string with the data that was read
+before encountering any of the stop characters. Set @length to
+a #gsize to get the length of the string. This function will
+return %NULL on an error.
 </return>
 </function>
 
-<function name="g_file_get_path">
+<function name="g_data_input_stream_read_upto">
 <description>
-Gets the local pathname for #GFile, if one exists. 
+Reads a string from the data input stream, up to the first
+occurrence of any of the stop characters.
 
-This call does no blocking i/o.
+In contrast to g_data_input_stream_read_until(), this function
+does &lt;emphasis&gt;not&lt;/emphasis&gt; consume the stop character. You have
+to use g_data_input_stream_read_byte() to get it before calling
+g_data_input_stream_read_upto() again.
 
+Note that @stop_chars may contain '\0' if @stop_chars_len is
+specified.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="stream">
+<parameter_description> a #GDataInputStream
+</parameter_description>
+</parameter>
+<parameter name="stop_chars">
+<parameter_description> characters to terminate the read
+</parameter_description>
+</parameter>
+<parameter name="stop_chars_len">
+<parameter_description> length of @stop_chars. May be -1 if @stop_chars is
+nul-terminated
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> a #gsize to get the length of the data read in
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting
 </parameter_description>
 </parameter>
 </parameters>
-<return> string containing the #GFile's path, or %NULL if 
-no such path exists. The returned string should be 
-freed with g_free() when no longer needed.
+<return> a string with the data that was read
+before encountering any of the stop characters. Set @length to
+a #gsize to get the length of the string. This function will
+return %NULL on an error
+
 </return>
 </function>
 
-<function name="g_input_stream_close_async">
+<function name="g_data_input_stream_read_upto_async">
 <description>
-Requests an asynchronous closes of the stream, releasing resources related to it.
-When the operation is finished @callback will be called. 
-You can then call g_input_stream_close_finish() to get the result of the 
-operation.
+The asynchronous version of g_data_input_stream_read_upto().
+It is an error to have two outstanding calls to this function.
 
-For behaviour details see g_input_stream_close().
+In contrast to g_data_input_stream_read_until(), this function
+does &lt;emphasis&gt;not&lt;/emphasis&gt; consume the stop character. You have
+to use g_data_input_stream_read_byte() to get it before calling
+g_data_input_stream_read_upto() again.
 
-The asyncronous methods have a default fallback that uses threads to implement
-asynchronicity, so they are optional for inheriting classes. However, if you
-override one you must override all.
+Note that @stop_chars may contain '\0' if @stop_chars_len is
+specified.
+
+When the operation is finished, @callback will be called. You
+can then call g_data_input_stream_read_upto_finish() to get
+the result of the operation.
+
+Since: 2.24
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> A #GInputStream.
+<parameter_description> a #GDataInputStream
+</parameter_description>
+</parameter>
+<parameter name="stop_chars">
+<parameter_description> characters to terminate the read
+</parameter_description>
+</parameter>
+<parameter name="stop_chars_len">
+<parameter_description> length of @stop_chars. May be -1 if @stop_chars is
+nul-terminated
 </parameter_description>
 </parameter>
 <parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional cancellable object
+<parameter_description> optional #GCancellable object, %NULL to ignore
 </parameter_description>
 </parameter>
 <parameter name="callback">
@@ -4401,156 +5019,160 @@ of the request.
 <return></return>
 </function>
 
-<function name="g_settings_list_items">
+<function name="g_data_input_stream_read_upto_finish">
 <description>
-Introspects the list of keys and children on @settings.
+Finish an asynchronous call started by
+g_data_input_stream_read_upto_async().
 
-The list that is returned is a mix of the keys and children.  The
-names of the children are suffixed with '/'.  The names of the keys
-are not.
+Note that this function does &lt;emphasis&gt;not&lt;/emphasis&gt; consume the
+stop character. You have to use g_data_input_stream_read_byte() to
+get it before calling g_data_input_stream_read_upto_async() again.
 
-You should probably not be calling this function from &quot;normal&quot; code
-(since you should already know what keys are in your schema).  This
-function is intended for introspection reasons.
-
-You should free the return value with g_free() when you are done with
-it.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> a #GDataInputStream
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> the #GAsyncResult that was provided to the callback
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> a #gsize to get the length of the data read in
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of the keys on @settings
+<return> a string with the data that was read
+before encountering any of the stop characters. Set @length to
+a #gsize to get the length of the string. This function will
+return %NULL on an error.
+
 </return>
 </function>
 
-<function name="g_dbus_message_set_signature">
+<function name="g_data_input_stream_set_byte_order">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE header field.
+This function sets the byte order for the given @stream. All subsequent
+reads from the @stream will be read in the given @order.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="stream">
+<parameter_description> a given #GDataInputStream.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="order">
+<parameter_description> a #GDataStreamByteOrder to set.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_volume_can_mount">
+<function name="g_data_input_stream_set_newline_type">
 <description>
-Checks if a volume can be mounted.
+Sets the newline type for the @stream.
+
+Note that using G_DATA_STREAM_NEWLINE_TYPE_ANY is slightly unsafe. If a read
+chunk ends in &quot;CR&quot; we must read an additional byte to know if this is &quot;CR&quot; or
+&quot;CR LF&quot;, and this might block if there is no more data availible.
 
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="stream">
+<parameter_description> a #GDataInputStream.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the type of new line return as #GDataStreamNewlineType.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @volume can be mounted. %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_application_get_action_description">
+<function name="g_data_output_stream_get_byte_order">
 <description>
-Gets the description of the action @name.
-
-It is an error to call this function if @application is a proxy for
-a remote application.
+Gets the byte order for the stream.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> Action name
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Description for the given action named @name
-
+<return> the #GDataStreamByteOrder for the @stream.
 </return>
 </function>
 
-<function name="g_simple_async_result_get_source_tag">
+<function name="g_data_output_stream_new">
 <description>
-Gets the source tag for the #GSimpleAsyncResult.
+Creates a new data output stream for @base_stream.
 
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="base_stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gpointer to the source object for the #GSimpleAsyncResult.
+<return> #GDataOutputStream.
 </return>
 </function>
 
-<function name="g_file_descriptor_based_get_fd">
+<function name="g_data_output_stream_put_byte">
 <description>
-Gets the underlying file descriptor.
+Puts a byte into the output stream.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="fd_based">
-<parameter_description> a #GFileDescriptorBased.
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a #guchar.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The file descriptor
-
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_file_append_to">
+<function name="g_data_output_stream_put_int16">
 <description>
-Gets an output stream for appending data to the file. If
-the file doesn't already exist it is created.
-
-By default files created are generally readable by everyone,
-but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
-will be made readable only to the current user, to the level that
-is supported on the target filesystem.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
-
-Some file systems don't allow all file names, and may
-return an %G_IO_ERROR_INVALID_FILENAME error.
-If the file is a directory the %G_IO_ERROR_IS_DIRECTORY error will be
-returned. Other errors are possible too, and depend on what kind of
-filesystem the file is on.
+Puts a signed 16-bit integer into the output stream.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
+<parameter name="data">
+<parameter_description> a #gint16.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -4558,80 +5180,83 @@ filesystem the file is on.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileOutputStream, or %NULL on error.
-Free the returned object with g_object_unref().
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_volume_monitor_get">
+<function name="g_data_output_stream_put_int32">
 <description>
-Gets the volume monitor used by gio.
+Puts a signed 32-bit integer into the output stream.
 
 
 </description>
 <parameters>
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a #gint32.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, %NULL to ignore.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a reference to the #GVolumeMonitor used by gio. Call
-g_object_unref() when done with it.
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_data_input_stream_read_until_finish">
+<function name="g_data_output_stream_put_int64">
 <description>
-Finish an asynchronous call started by
-g_data_input_stream_read_until_async().
-
-Since: 2.20
+Puts a signed 64-bit integer into the stream.
 
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter_description> a #GDataOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> the #GAsyncResult that was provided to the callback.
+<parameter name="data">
+<parameter_description> a #gint64.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> a #gsize to get the length of the data read in.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string with the data that was read before encountering
-any of the stop characters. Set @length to a #gsize to get the length
-of the string. This function will return %NULL on an error.
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_file_make_directory_with_parents">
+<function name="g_data_output_stream_put_string">
 <description>
-Creates a directory and any parent directories that may not exist similar to
-'mkdir -p'. If the file system does not support creating directories, this
-function will fail, setting @error to %G_IO_ERROR_NOT_SUPPORTED.
-
-For a local #GFile the newly created directories will have the default
-(current) ownership and permissions of the current process.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Puts a string into the output stream. 
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="str">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -4639,1005 +5264,1491 @@ Since: 2.18
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL 
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if all directories have been successfully created, %FALSE
-otherwise.
-
+<return> %TRUE if @string was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_buffered_input_stream_peek_buffer">
+<function name="g_data_output_stream_put_uint16">
 <description>
-Returns the buffer with the currently available bytes. The returned
-buffer must not be modified and will become invalid when reading from
-the stream or filling the buffer.
+Puts an unsigned 16-bit integer into the output stream.
 
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GBufferedInputStream
+<parameter_description> a #GDataOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> a #gsize to get the number of bytes available in the buffer
+<parameter name="data">
+<parameter_description> a #guint16.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> read-only buffer
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_file_mount_enclosing_volume_finish">
+<function name="g_data_output_stream_put_uint32">
 <description>
-Finishes a mount operation started by g_file_mount_enclosing_volume().
+Puts an unsigned 32-bit integer into the stream.
 
 
 </description>
 <parameters>
-<parameter name="location">
-<parameter_description> input #GFile.
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="data">
+<parameter_description> a #guint32.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful. If an error
-has occurred, this function will return %FALSE and set @error
-appropriately if present.
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_input_stream_set_pending">
+<function name="g_data_output_stream_put_uint64">
 <description>
-Sets @stream to have actions pending. If the pending flag is
-already set or @stream is closed, it will return %FALSE and set
- error 
+Puts an unsigned 64-bit integer into the stream.
 
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> input stream
+<parameter_description> a #GDataOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a #guint64.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if pending was previously unset and is now set.
+<return> %TRUE if @data was successfully added to the @stream.
 </return>
 </function>
 
-<function name="g_data_input_stream_read_until_async">
+<function name="g_data_output_stream_set_byte_order">
 <description>
-The asynchronous version of g_data_input_stream_read_until().
-It is an error to have two outstanding calls to this function.
+Sets the byte order of the data output stream to @order.
 
-Note that, in contrast to g_data_input_stream_read_until(),
-this function does not consume the stop character that it finds.  You
-must read it for yourself.
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GDataOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="order">
+<parameter_description> a %GDataStreamByteOrder.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-When the operation is finished, @callback will be called. You
-can then call g_data_input_stream_read_until_finish() to get
-the result of the operation.
+<function name="g_dbus_address_get_for_bus_sync">
+<description>
+Synchronously looks up the D-Bus address for the well-known message
+bus instance specified by @bus_type. This may involve using various
+platform specific mechanisms.
 
-Since: 2.20
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="bus_type">
+<parameter_description> A #GBusType.
 </parameter_description>
 </parameter>
-<parameter name="stop_chars">
-<parameter_description> characters to terminate the read.
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request.
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
+</parameter_description>
+</parameter>
+</parameters>
+<return> A valid D-Bus address string for @bus_type or %NULL if @error is set.
+
+</return>
+</function>
+
+<function name="g_dbus_address_get_stream">
+<description>
+Asynchronously connects to an endpoint specified by @address and
+sets up the connection so it is in a state to run the client-side
+of the D-Bus authentication conversation.
+
+When the operation is finished, @callback will be invoked. You can
+then call g_dbus_address_get_stream_finish() to get the result of
+the operation.
+
+This is an asynchronous failable function. See
+g_dbus_address_get_stream_sync() for the synchronous version.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="address">
+<parameter_description> A valid D-Bus address.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call when the request is satisfied.
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data to pass to callback function.
+<parameter_description> Data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_settings_apply">
+<function name="g_dbus_address_get_stream_finish">
 <description>
-Applies any changes that have been made to the settings.  This
-function does nothing unless @settings is in 'delay-apply' mode;
-see g_settings_delay().  In the normal case settings are always
-applied immediately.
+Finishes an operation started with g_dbus_address_get_stream().
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings instance
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the GAsyncReadyCallback passed to g_dbus_address_get_stream().
+</parameter_description>
+</parameter>
+<parameter name="out_guid">
+<parameter_description> %NULL or return location to store the GUID extracted from @address, if any.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GIOStream or %NULL if @error is set.
+
+</return>
 </function>
 
-<function name="g_file_query_file_type">
+<function name="g_dbus_address_get_stream_sync">
 <description>
-Utility function to inspect the #GFileType of a file. This is
-implemented using g_file_query_info() and as such does blocking I/O.
+Synchronously connects to an endpoint specified by @address and
+sets up the connection so it is in a state to run the client-side
+of the D-Bus authentication conversation.
 
-The primary use case of this method is to check if a file is a regular file,
-directory, or symlink.
+This is a synchronous failable function. See
+g_dbus_address_get_stream() for the asynchronous version.
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="address">
+<parameter_description> A valid D-Bus address.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileQueryInfoFlags passed to g_file_query_info().
+<parameter name="out_guid">
+<parameter_description> %NULL or return location to store the GUID extracted from @address, if any.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GFileType of the file and #G_FILE_TYPE_UNKNOWN if the file
-does not exist
+<return> A #GIOStream or %NULL if @error is set.
 
 </return>
 </function>
 
-<function name="g_dbus_error_new_for_dbus_error">
+<function name="g_dbus_annotation_info_lookup">
 <description>
-Creates a #GError based on the contents of @dbus_error_name and
- dbus_error_message 
-
-Errors registered with g_dbus_error_register_error() will be looked
-up using @dbus_error_name and if a match is found, the error domain
-and code is used. Applications can use g_dbus_error_get_remote_error()
-to recover @dbus_error_name.
-
-If a match against a registered error is not found and the D-Bus
-error name is in a form as returned by g_dbus_error_encode_gerror()
-the error domain and code encoded in the name is used to
-create the #GError. Also, @dbus_error_name is added to the error message
-such that it can be recovered with g_dbus_error_get_remote_error().
-
-Otherwise, a #GError with the error code %G_IO_ERROR_DBUS_ERROR
-in the #G_IO_ERROR error domain is returned. Also, @dbus_error_name is
-added to the error message such that it can be recovered with
-g_dbus_error_get_remote_error().
-
-In all three cases, @dbus_error_name can always be recovered from the
-returned #GError using the g_dbus_error_get_remote_error() function
-(unless g_dbus_error_strip_remote_error() hasn't been used on the returned error).
+Looks up the value of an annotation.
 
-This function is typically only used in object mappings to prepare
-#GError instances for applications. Regular applications should not use
-it.
+This cost of this function is O(n) in number of annotations.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="dbus_error_name">
-<parameter_description> D-Bus error name.
+<parameter name="annotations">
+<parameter_description> A %NULL-terminated array of annotations or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="dbus_error_message">
-<parameter_description> D-Bus error message.
+<parameter name="name">
+<parameter_description> The name of the annotation to look up.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An allocated #GError. Free with g_error_free().
+<return> The value or %NULL if not found. Do not free, it is owned by @annotations.
 
 </return>
 </function>
 
-<function name="g_data_output_stream_new">
+<function name="g_dbus_annotation_info_ref">
 <description>
-Creates a new data output stream for @base_stream.
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GOutputStream.
+<parameter name="info">
+<parameter_description> A #GDBusNodeInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GDataOutputStream.
+<return> The same @info.
+
 </return>
 </function>
 
-<function name="g_mount_get_root">
+<function name="g_dbus_annotation_info_unref">
 <description>
-Gets the root directory on @mount.
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="info">
+<parameter_description> A #GDBusAnnotationInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile. 
-The returned object should be unreffed with 
-g_object_unref() when no longer needed.
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_proxy_get_cached_property_names">
+<function name="g_dbus_arg_info_ref">
 <description>
-Gets the names of all cached properties on @proxy.
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="info">
+<parameter_description> A #GDBusArgInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> A %NULL-terminated array of strings or %NULL if @proxy has
-no cached properties. Free the returned array with g_strfreev().
+<return> The same @info.
 
 </return>
 </function>
 
-<function name="g_dbus_connection_get_unique_name">
+<function name="g_dbus_arg_info_unref">
 <description>
-Gets the unique name of @connection as assigned by the message
-bus. This can also be used to figure out if @connection is a
-message bus connection.
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="info">
+<parameter_description> A #GDBusArgInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The unique name or %NULL if @connection is not a message
-bus connection. Do not free this string, it is owned by
- connection 
-
-</return>
+<return></return>
 </function>
 
-<function name="g_cancellable_make_pollfd">
+<function name="g_dbus_auth_observer_authorize_authenticated_peer">
 <description>
-Creates a #GPollFD corresponding to @cancellable; this can be passed
-to g_poll() and used to poll for cancellation. This is useful both
-for unix systems without a native poll and for portability to
-windows.
-
-When this function returns %TRUE, you should use 
-g_cancellable_release_fd() to free up resources allocated for the 
- pollfd  After a %FALSE return, do not call g_cancellable_release_fd().
-
-If this function returns %FALSE, either no @cancellable was given or
-resource limits prevent this function from allocating the necessary 
-structures for polling. (On Linux, you will likely have reached 
-the maximum number of file descriptors.) The suggested way to handle
-these cases is to ignore the @cancellable.
-
-You are not supposed to read from the fd yourself, just check for
-readable status. Reading to unset the readable status is done
-with g_cancellable_reset().
+Emits the #GDBusAuthObserver::authorize-authenticated-peer signal on @observer.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable or %NULL
+<parameter name="observer">
+<parameter_description> A #GDBusAuthObserver.
 </parameter_description>
 </parameter>
-<parameter name="pollfd">
-<parameter_description> a pointer to a #GPollFD
+<parameter name="stream">
+<parameter_description> A #GIOStream for the #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="credentials">
+<parameter_description> Credentials received from the peer or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @pollfd was successfully initialized, %FALSE on 
-failure to prepare the cancellable.
+<return> %TRUE if the peer is authorized, %FALSE if not.
 
 </return>
 </function>
 
-<function name="g_file_icon_get_file">
+<function name="g_dbus_auth_observer_new">
 <description>
-Gets the #GFile associated with the given @icon.
+Creates a new #GDBusAuthObserver object.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GIcon.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GFile, or %NULL.
+<return> A #GDBusAuthObserver. Free with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_unix_input_stream_new">
+<function name="g_dbus_connection_add_filter">
 <description>
-Creates a new #GUnixInputStream for the given @fd. 
+Adds a message filter. Filters are handlers that are run on all
+incoming and outgoing messages, prior to standard dispatch. Filters
+are run in the order that they were added.  The same handler can be
+added as a filter more than once, in which case it will be run more
+than once.  Filters added during a filter callback won't be run on
+the message being processed. Filter functions are allowed to modify
+and even drop messages - see the #GDBusMessageFilterResult
+enumeration for details.
 
-If @close_fd is %TRUE, the file descriptor will be closed 
-when the stream is closed.
+Note that filters are run in a dedicated message handling thread so
+they can't block and, generally, can't do anything but signal a
+worker thread. Also note that filters are rarely needed - use API
+such as g_dbus_connection_send_message_with_reply(),
+g_dbus_connection_signal_subscribe() or
+g_dbus_connection_call() instead.
 
+If a filter consumes an incoming message the message is not
+dispatched anywhere else - not even the standard dispatch machinery
+(that API such as g_dbus_connection_signal_subscribe() and
+g_dbus_connection_send_message_with_reply() relies on) will see the
+message. Similary, if a filter consumes an outgoing message, the
+message will not be sent to the other peer.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="fd">
-<parameter_description> a UNIX file descriptor
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="close_fd">
-<parameter_description> %TRUE to close the file descriptor when done
+<parameter name="filter_function">
+<parameter_description> A filter function.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> User data to pass to @filter_function.
+</parameter_description>
+</parameter>
+<parameter name="user_data_free_func">
+<parameter_description> Function to free @user_data with when filter
+is removed or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixInputStream
+<return> A filter identifier that can be used with
+g_dbus_connection_remove_filter().
+
 </return>
 </function>
 
-<function name="g_dbus_message_get_body">
+<function name="g_dbus_connection_call">
 <description>
-Gets the body of a message.
+Asynchronously invokes the @method_name method on the
+ interface_name D-Bus interface on the remote object at
+ object_path owned by @bus_name.
+
+If @connection is closed then the operation will fail with
+%G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
+fail with %G_IO_ERROR_CANCELLED. If @parameters contains a value
+not compatible with the D-Bus protocol, the operation fails with
+%G_IO_ERROR_INVALID_ARGUMENT.
+
+If @reply_type is non-%NULL then the reply will be checked for having this type and an
+error will be raised if it does not match.  Said another way, if you give a @reply_type
+then any non-%NULL return value will be of this type.
+
+If the @parameters #GVariant is floating, it is consumed. This allows
+convenient 'inline' use of g_variant_new(), e.g.:
+|[
+g_dbus_connection_call (connection,
+&quot;org.freedesktop.StringThings&quot;,
+&quot;/org/freedesktop/StringThings&quot;,
+&quot;org.freedesktop.StringThings&quot;,
+&quot;TwoStrings&quot;,
+g_variant_new (&quot;(ss)&quot;,
+&quot;Thing One&quot;,
+&quot;Thing Two&quot;),
+NULL,
+G_DBUS_CALL_FLAGS_NONE,
+-1,
+NULL,
+(GAsyncReadyCallback) two_strings_done,
+NULL);
+]|
+
+This is an asynchronous method. When the operation is finished, @callback will be invoked
+in the &lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main loop&lt;/link&gt;
+of the thread you are calling this method from. You can then call
+g_dbus_connection_call_finish() to get the result of the operation.
+See g_dbus_connection_call_sync() for the synchronous version of this
+function.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="bus_name">
+<parameter_description> A unique or well-known bus name or %NULL if @connection is not a message bus connection.
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> Path of remote object.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> D-Bus interface to invoke method on.
+</parameter_description>
+</parameter>
+<parameter name="method_name">
+<parameter_description> The name of the method to invoke.
+</parameter_description>
+</parameter>
+<parameter name="parameters">
+<parameter_description> A #GVariant tuple with parameters for the method or %NULL if not passing parameters.
+</parameter_description>
+</parameter>
+<parameter name="reply_type">
+<parameter_description> The expected type of the reply, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags from the #GDBusCallFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="timeout_msec">
+<parameter_description> The timeout in milliseconds, -1 to use the default
+timeout or %G_MAXINT for no timeout.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
+care about the result of the method invocation.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> The data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GVariant or %NULL if the body is empty. Do not free, it is owned by @message.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_mount_unmount_with_operation_finish">
+<function name="g_dbus_connection_call_finish">
 <description>
-Finishes unmounting a mount. If any errors occurred during the operation,
- error will be set to contain the errors and %FALSE will be returned.
+Finishes an operation started with g_dbus_connection_call().
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_call().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount was successfully unmounted. %FALSE otherwise.
+<return> %NULL if @error is set. Otherwise a #GVariant tuple with
+return values. Free with g_variant_unref().
 
 </return>
 </function>
 
-<function name="g_mount_operation_get_password_save">
+<function name="g_dbus_connection_call_sync">
 <description>
-Gets the state of saving passwords for the mount operation.
+Synchronously invokes the @method_name method on the
+ interface_name D-Bus interface on the remote object at
+ object_path owned by @bus_name.
+
+If @connection is closed then the operation will fail with
+%G_IO_ERROR_CLOSED. If @cancellable is canceled, the
+operation will fail with %G_IO_ERROR_CANCELLED. If @parameters
+contains a value not compatible with the D-Bus protocol, the operation
+fails with %G_IO_ERROR_INVALID_ARGUMENT.
+
+If @reply_type is non-%NULL then the reply will be checked for having
+this type and an error will be raised if it does not match.  Said
+another way, if you give a @reply_type then any non-%NULL return
+value will be of this type.
+
+If the @parameters #GVariant is floating, it is consumed.
+This allows convenient 'inline' use of g_variant_new(), e.g.:
+|[
+g_dbus_connection_call_sync (connection,
+&quot;org.freedesktop.StringThings&quot;,
+&quot;/org/freedesktop/StringThings&quot;,
+&quot;org.freedesktop.StringThings&quot;,
+&quot;TwoStrings&quot;,
+g_variant_new (&quot;(ss)&quot;,
+&quot;Thing One&quot;,
+&quot;Thing Two&quot;),
+NULL,
+G_DBUS_CALL_FLAGS_NONE,
+-1,
+NULL,
+&amp;error);
+]|
+
+The calling thread is blocked until a reply is received. See
+g_dbus_connection_call() for the asynchronous version of
+this method.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="bus_name">
+<parameter_description> A unique or well-known bus name.
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> Path of remote object.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> D-Bus interface to invoke method on.
+</parameter_description>
+</parameter>
+<parameter name="method_name">
+<parameter_description> The name of the method to invoke.
+</parameter_description>
+</parameter>
+<parameter name="parameters">
+<parameter_description> A #GVariant tuple with parameters for the method or %NULL if not passing parameters.
+</parameter_description>
+</parameter>
+<parameter name="reply_type">
+<parameter_description> The expected type of the reply, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags from the #GDBusCallFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="timeout_msec">
+<parameter_description> The timeout in milliseconds, -1 to use the default
+timeout or %G_MAXINT for no timeout.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GPasswordSave flag. 
+<return> %NULL if @error is set. Otherwise a #GVariant tuple with
+return values. Free with g_variant_unref().
+
 </return>
 </function>
 
-<function name="g_file_make_directory">
+<function name="g_dbus_connection_close">
 <description>
-Creates a directory. Note that this will only create a child directory of
-the immediate parent directory of the path or URI given by the #GFile. To 
-recursively create directories, see g_file_make_directory_with_parents().
-This function will fail if the parent directory does not exist, setting 
- error to %G_IO_ERROR_NOT_FOUND. If the file system doesn't support creating
-directories, this function will fail, setting @error to 
-%G_IO_ERROR_NOT_SUPPORTED.
+Closes @connection. Note that this never causes the process to
+exit (this might only happen if the other end of a shared message
+bus connection disconnects, see #GDBusConnection:exit-on-close).
 
-For a local #GFile the newly created directory will have the default
-(current) ownership and permissions of the current process.
+Once the connection is closed, operations such as sending a message
+will return with the error %G_IO_ERROR_CLOSED. Closing a connection
+will not automatically flush the connection so queued messages may
+be lost. Use g_dbus_connection_flush() if you need such guarantees.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+If @connection is already closed, this method fails with
+%G_IO_ERROR_CLOSED.
+
+When @connection has been closed, the #GDBusConnection::closed
+signal is emitted in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread that @connection was constructed in.
 
+This is an asynchronous method. When the operation is finished,
+ callback will be invoked in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this method from. You can
+then call g_dbus_connection_close_finish() to get the result of the
+operation.  See g_dbus_connection_close_sync() for the synchronous
+version.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL 
+<parameter name="callback">
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
+care about the result.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> The data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on successful creation, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_delete">
+<function name="g_dbus_connection_close_finish">
 <description>
-Deletes a file. If the @file is a directory, it will only be deleted if it 
-is empty.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Finishes an operation started with g_dbus_connection_close().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_close().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL 
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the file was deleted. %FALSE otherwise.
+<return> %TRUE if the operation succeeded, %FALSE if @error is set.
+
 </return>
 </function>
 
-<function name="g_io_extension_ref_class">
+<function name="g_dbus_connection_close_sync">
 <description>
-Gets a reference to the class for the type that is 
-associated with @extension.
+Synchronously closees @connection. The calling thread is blocked
+until this is done. See g_dbus_connection_close() for the
+asynchronous version of this method and more details about what it
+does.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="extension">
-<parameter_description> a #GIOExtension
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GTypeClass for the type of @extension
+<return> %TRUE if the operation succeeded, %FALSE if @error is set.
+
 </return>
 </function>
 
-<function name="g_file_input_stream_query_info_finish">
+<function name="g_dbus_connection_emit_signal">
 <description>
-Finishes an asynchronous info query operation.
+Emits a signal.
+
+If the parameters GVariant is floating, it is consumed.
+
+This can only fail if @parameters is not compatible with the D-Bus protocol.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileInputStream.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="destination_bus_name">
+<parameter_description> The unique bus name for the destination for the signal or %NULL to emit to all listeners.
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> Path of remote object.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> D-Bus interface to emit a signal on.
+</parameter_description>
+</parameter>
+<parameter name="signal_name">
+<parameter_description> The name of the signal to emit.
+</parameter_description>
+</parameter>
+<parameter name="parameters">
+<parameter_description> A #GVariant tuple with parameters for the signal or %NULL if not passing parameters.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, 
-or %NULL to ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileInfo. 
+<return> %TRUE unless @error is set.
+
 </return>
 </function>
 
-<function name="g_seekable_seek">
+<function name="g_dbus_connection_flush">
 <description>
-Seeks in the stream by the given @offset, modified by @type.
+Asynchronously flushes @connection, that is, writes all queued
+outgoing message to the transport and then flushes the transport
+(using g_output_stream_flush_async()). This is useful in programs
+that wants to emit a D-Bus signal and then exit
+immediately. Without flushing the connection, there is no guarantee
+that the message has been sent to the networking buffers in the OS
+kernel.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+This is an asynchronous method. When the operation is finished,
+ callback will be invoked in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this method from. You can
+then call g_dbus_connection_flush_finish() to get the result of the
+operation.  See g_dbus_connection_flush_sync() for the synchronous
+version.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="seekable">
-<parameter_description> a #GSeekable.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="offset">
-<parameter_description> a #goffset.
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GSeekType.
+<parameter name="callback">
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
+care about the result.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="user_data">
+<parameter_description> The data to pass to @callback.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dbus_connection_flush_finish">
+<description>
+Finishes an operation started with g_dbus_connection_flush().
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_flush().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful. If an error
-has occurred, this function will return %FALSE and set @error
-appropriately if present.
+<return> %TRUE if the operation succeeded, %FALSE if @error is set.
+
 </return>
 </function>
 
-<function name="g_desktop_app_info_new_from_filename">
+<function name="g_dbus_connection_flush_sync">
 <description>
-Creates a new #GDesktopAppInfo.
+Synchronously flushes @connection. The calling thread is blocked
+until this is done. See g_dbus_connection_flush() for the
+asynchronous version of this method and more details about what it
+does.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> the path of a desktop file, in the GLib filename encoding
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GDesktopAppInfo or %NULL on error.
+<return> %TRUE if the operation succeeded, %FALSE if @error is set.
+
 </return>
 </function>
 
-<function name="g_io_extension_point_get_extension_by_name">
+<function name="g_dbus_connection_get_capabilities">
 <description>
-Finds a #GIOExtension for an extension point by name.
+Gets the capabilities negotiated with the remote peer
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="extension_point">
-<parameter_description> a #GIOExtensionPoint
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the extension to get
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GIOExtension for @extension_point that has the
-given name, or %NULL if there is no extension with that name
+<return> Zero or more flags from the #GDBusCapabilityFlags enumeration.
+
 </return>
 </function>
 
-<function name="g_inet_address_get_family">
+<function name="g_dbus_connection_get_exit_on_close">
 <description>
-Gets @address's family
+Gets whether the process is terminated when @connection is
+closed by the remote peer. See
+#GDBusConnection:exit-on-close for more details.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @address's family
+<return> Whether the process is terminated when @connection is
+closed by the remote peer.
 
 </return>
 </function>
 
-<function name="g_dbus_server_stop">
+<function name="g_dbus_connection_get_guid">
 <description>
-Stops @server.
+The GUID of the peer performing the role of server when
+authenticating. See #GDBusConnection:guid for more details.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="server">
-<parameter_description> A #GDBusServer.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The GUID. Do not free this string, it is owned by
+ connection 
+
+</return>
 </function>
 
-<function name="g_dbus_message_print">
+<function name="g_dbus_connection_get_peer_credentials">
 <description>
-Produces a human-readable multi-line description of @message.
+Gets the credentials of the authenticated peer. This will always
+return %NULL unless @connection acted as a server
+(e.g. %G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER was passed)
+when set up and the client passed credentials as part of the
+authentication process.
 
-The contents of the description has no ABI guarantees, the contents
-and formatting is subject to change at any time. Typical output
-looks something like this:
-&lt;programlisting&gt;
-Type:    method-call
-Flags:   none
-Version: 0
-Serial:  4
-Headers:
-path -&gt; objectpath '/org/gtk/GDBus/TestObject'
-interface -&gt; 'org.gtk.GDBus.TestInterface'
-member -&gt; 'GimmeStdout'
-destination -&gt; ':1.146'
-Body: ()
-UNIX File Descriptors:
-(none)
-&lt;/programlisting&gt;
-or
-&lt;programlisting&gt;
-Type:    method-return
-Flags:   no-reply-expected
-Version: 0
-Serial:  477
-Headers:
-reply-serial -&gt; uint32 4
-destination -&gt; ':1.159'
-sender -&gt; ':1.146'
-num-unix-fds -&gt; uint32 1
-Body: ()
-UNIX File Descriptors:
-fd 12: dev=0:10,mode=020620,ino=5,uid=500,gid=5,rdev=136:2,size=0,atime=1273085037,mtime=1273085851,ctime=1272982635
-&lt;/programlisting&gt;
+In a message bus setup, the message bus is always the server and
+each application is a client. So this method will always return
+%NULL for message bus clients.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="indent">
-<parameter_description> Indentation level.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string that should be freed with g_free().
+<return> A #GCredentials or %NULL if not available. Do not free
+this object, it is owned by @connection.
 
 </return>
 </function>
 
-<function name="g_dbus_proxy_call_finish">
+<function name="g_dbus_connection_get_stream">
 <description>
-Finishes an operation started with g_dbus_proxy_call().
+Gets the underlying stream used for IO.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="connection">
+<parameter_description> a #GDBusConnection
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_proxy_call().
+</parameters>
+<return> the stream used for IO
+
+</return>
+</function>
+
+<function name="g_dbus_connection_get_unique_name">
+<description>
+Gets the unique name of @connection as assigned by the message
+bus. This can also be used to figure out if @connection is a
+message bus connection.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+</parameters>
+<return> The unique name or %NULL if @connection is not a message
+bus connection. Do not free this string, it is owned by
+ connection 
+
+</return>
+</function>
+
+<function name="g_dbus_connection_is_closed">
+<description>
+Gets whether @connection is closed.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if @error is set. Otherwise a #GVariant tuple with
-return values. Free with g_variant_unref().
+<return> %TRUE if the connection is closed, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_volume_eject_with_operation_finish">
+<function name="g_dbus_connection_new">
 <description>
-Finishes ejecting a volume. If any errors occurred during the operation,
- error will be set to contain the errors and %FALSE will be returned.
+Asynchronously sets up a D-Bus connection for exchanging D-Bus messages
+with the end represented by @stream.
 
-Since: 2.22
+If @observer is not %NULL it may be used to control the
+authentication process.
+
+When the operation is finished, @callback will be invoked. You can
+then call g_dbus_connection_new_finish() to get the result of the
+operation.
+
+This is a asynchronous failable constructor. See
+g_dbus_connection_new_sync() for the synchronous
+version.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="stream">
+<parameter_description> A #GIOStream.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="guid">
+<parameter_description> The GUID to use if a authenticating as a server or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="flags">
+<parameter_description> Flags describing how to make the connection.
+</parameter_description>
+</parameter>
+<parameter name="observer">
+<parameter_description> A #GDBusAuthObserver or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> The data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the volume was successfully ejected. %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_converter_output_stream_get_converter">
+<function name="g_dbus_connection_new_finish">
 <description>
-Gets the #GConverter that is used by @converter_stream.
+Finishes an operation started with g_dbus_connection_new().
 
-Since: 2.24
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="converter_stream">
-<parameter_description> a #GConverterOutputStream
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_new().
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the converter of the converter output stream
+<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_data_input_stream_read_line_async">
+<function name="g_dbus_connection_new_for_address">
 <description>
-The asynchronous version of g_data_input_stream_read_line().  It is
-an error to have two outstanding calls to this function.
+Asynchronously connects and sets up a D-Bus client connection for
+exchanging D-Bus messages with an endpoint specified by @address
+which must be in the D-Bus address format.
 
-When the operation is finished, @callback will be called. You
-can then call g_data_input_stream_read_line_finish() to get
-the result of the operation.
+This constructor can only be used to initiate client-side
+connections - use g_dbus_connection_new() if you need to act as the
+server. In particular, @flags cannot contain the
+%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER or
+%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS flags.
 
-Since: 2.20
+When the operation is finished, @callback will be invoked. You can
+then call g_dbus_connection_new_finish() to get the result of the
+operation.
+
+If @observer is not %NULL it may be used to control the
+authentication process.
+
+This is a asynchronous failable constructor. See
+g_dbus_connection_new_for_address_sync() for the synchronous
+version.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="address">
+<parameter_description> A D-Bus address.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request.
+<parameter name="flags">
+<parameter_description> Flags describing how to make the connection.
+</parameter_description>
+</parameter>
+<parameter name="observer">
+<parameter_description> A #GDBusAuthObserver or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call when the request is satisfied.
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data to pass to callback function.
+<parameter_description> The data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_can_poll_for_media">
+<function name="g_dbus_connection_new_for_address_finish">
 <description>
-Checks if a drive can be polled for media changes.
+Finishes an operation started with g_dbus_connection_new_for_address().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_new().
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive can be polled for media changes,
-%FALSE otherwise.
+<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_win32_output_stream_set_close_handle">
+<function name="g_dbus_connection_new_for_address_sync">
 <description>
-Sets whether the handle of @stream shall be closed when the stream
-is closed.
+Synchronously connects and sets up a D-Bus client connection for
+exchanging D-Bus messages with an endpoint specified by @address
+which must be in the D-Bus address format.
+
+This constructor can only be used to initiate client-side
+connections - use g_dbus_connection_new_sync() if you need to act
+as the server. In particular, @flags cannot contain the
+%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER or
+%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS flags.
+
+This is a synchronous failable constructor. See
+g_dbus_connection_new_for_address() for the asynchronous version.
+
+If @observer is not %NULL it may be used to control the
+authentication process.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GWin32OutputStream
+<parameter name="address">
+<parameter_description> A D-Bus address.
 </parameter_description>
 </parameter>
-<parameter name="close_handle">
-<parameter_description> %TRUE to close the handle when done
+<parameter name="flags">
+<parameter_description> Flags describing how to make the connection.
+</parameter_description>
+</parameter>
+<parameter name="observer">
+<parameter_description> A #GDBusAuthObserver or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_output_stream_write_finish">
+<function name="g_dbus_connection_new_sync">
 <description>
-Finishes a stream write operation.
+Synchronously sets up a D-Bus connection for exchanging D-Bus messages
+with the end represented by @stream.
 
+If @observer is not %NULL it may be used to control the
+authentication process.
+
+This is a synchronous failable constructor. See
+g_dbus_connection_new() for the asynchronous version.
+
+Since: 2.26
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter_description> A #GIOStream.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="guid">
+<parameter_description> The GUID to use if a authenticating as a server or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags describing how to make the connection.
+</parameter_description>
+</parameter>
+<parameter name="observer">
+<parameter_description> A #GDBusAuthObserver or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gssize containing the number of bytes written to the stream.
+<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_file_create_readwrite_async">
+<function name="g_dbus_connection_register_object">
 <description>
-Asynchronously creates a new file and returns a stream for reading and
-writing to it. The file must not already exist.
+Registers callbacks for exported objects at @object_path with the
+D-Bus interface that is described in @interface_info.
 
-For more details, see g_file_create_readwrite() which is
-the synchronous version of this call.
+Calls to functions in @vtable (and @user_data_free_func) will
+happen in the &lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this method from.
 
-When the operation is finished, @callback will be called. You can then
-call g_file_create_readwrite_finish() to get the result of the operation.
+Note that all #GVariant values passed to functions in @vtable will match
+the signature given in @interface_info - if a remote caller passes
+incorrect values, the &lt;literal&gt;org.freedesktop.DBus.Error.InvalidArgs&lt;/literal&gt;
+is returned to the remote caller.
 
-Since: 2.22
+Additionally, if the remote caller attempts to invoke methods or
+access properties not mentioned in @interface_info the
+&lt;literal&gt;org.freedesktop.DBus.Error.UnknownMethod&lt;/literal&gt; resp.
+&lt;literal&gt;org.freedesktop.DBus.Error.InvalidArgs&lt;/literal&gt; errors
+are returned to the caller.
+
+It is considered a programming error if the
+#GDBusInterfaceGetPropertyFunc function in @vtable returns a
+#GVariant of incorrect type.
+
+If an existing callback is already registered at @object_path and
+ interface_name, then @error is set to #G_IO_ERROR_EXISTS.
+
+GDBus automatically implements the standard D-Bus interfaces
+org.freedesktop.DBus.Properties, org.freedesktop.DBus.Introspectable
+and org.freedesktop.Peer, so you don't have to implement those for
+the objects you export. You &lt;emphasis&gt;can&lt;/emphasis&gt; implement
+org.freedesktop.DBus.Properties yourself, e.g. to handle getting
+and setting of properties asynchronously.
+
+Note that the reference count on @interface_info will be
+incremented by 1 (unless allocated statically, e.g. if the
+reference count is -1, see g_dbus_interface_info_ref()) for as long
+as the object is exported. Also note that @vtable will be copied.
+
+See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; for an example of how to use this method.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags
+<parameter name="object_path">
+<parameter_description> The object path to register at.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request
+<parameter name="interface_info">
+<parameter_description> Introspection data for the interface.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
+<parameter name="vtable">
+<parameter_description> A #GDBusInterfaceVTable to call into or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="user_data">
+<parameter_description> Data to pass to functions in @vtable.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="user_data_free_func">
+<parameter_description> Function to call when the object path is unregistered.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> 0 if @error is set, otherwise a registration id (never 0)
+that can be used with g_dbus_connection_unregister_object() .
+
+</return>
 </function>
 
-<function name="g_socket_address_to_native">
+<function name="g_dbus_connection_register_subtree">
 <description>
-Converts a #GSocketAddress to a native &lt;type&gt;struct
-sockaddr&lt;/type&gt;, which can be passed to low-level functions like
-connect() or bind().
+Registers a whole subtree of &lt;quote&gt;dynamic&lt;/quote&gt; objects.
 
-If not enough space is availible, a %G_IO_ERROR_NO_SPACE error is
-returned. If the address type is not known on the system
-then a %G_IO_ERROR_NOT_SUPPORTED error is returned.
+The @enumerate and @introspection functions in @vtable are used to
+convey, to remote callers, what nodes exist in the subtree rooted
+by @object_path.
 
-Since: 2.22
+When handling remote calls into any node in the subtree, first the
+ enumerate function is used to check if the node exists. If the node exists
+or the #G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES flag is set
+the @introspection function is used to check if the node supports the
+requested method. If so, the @dispatch function is used to determine
+where to dispatch the call. The collected #GDBusInterfaceVTable and
+#gpointer will be used to call into the interface vtable for processing
+the request.
+
+All calls into user-provided code will be invoked in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this method from.
+
+If an existing subtree is already registered at @object_path or
+then @error is set to #G_IO_ERROR_EXISTS.
+
+Note that it is valid to register regular objects (using
+g_dbus_connection_register_object()) in a subtree registered with
+g_dbus_connection_register_subtree() - if so, the subtree handler
+is tried as the last resort. One way to think about a subtree
+handler is to consider it a &lt;quote&gt;fallback handler&lt;/quote&gt;
+for object paths not registered via g_dbus_connection_register_object()
+or other bindings.
+
+Note that @vtable will be copied so you cannot change it after
+registration.
+
+See &lt;xref linkend=&quot;gdbus-subtree-server&quot;/&gt; for an example of how to use this method.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GSocketAddress
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="dest">
-<parameter_description> a pointer to a memory location that will contain the native
-&lt;type&gt;struct sockaddr&lt;/type&gt;.
+<parameter name="object_path">
+<parameter_description> The object path to register the subtree at.
 </parameter_description>
 </parameter>
-<parameter name="destlen">
-<parameter_description> the size of @dest. Must be at least as large as
-g_socket_address_get_native_size().
+<parameter name="vtable">
+<parameter_description> A #GDBusSubtreeVTable to enumerate, introspect and dispatch nodes in the subtree.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags used to fine tune the behavior of the subtree.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> Data to pass to functions in @vtable.
+</parameter_description>
+</parameter>
+<parameter name="user_data_free_func">
+<parameter_description> Function to call when the subtree is unregistered.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @dest was filled in, %FALSE on error
+<return> 0 if @error is set, otherwise a subtree registration id (never 0)
+that can be used with g_dbus_connection_unregister_subtree() .
 
 </return>
 </function>
 
-<function name="g_dbus_error_register_error_domain">
+<function name="g_dbus_connection_remove_filter">
 <description>
-Helper function for associating a #GError error domain with D-Bus error names.
+Removes a filter.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="error_domain_quark_name">
-<parameter_description> The error domain name.
-</parameter_description>
-</parameter>
-<parameter name="quark_volatile">
-<parameter_description> A pointer where to store the #GQuark.
-</parameter_description>
-</parameter>
-<parameter name="entries">
-<parameter_description> A pointer to @num_entries #GDBusErrorEntry struct items.
+<parameter name="connection">
+<parameter_description> a #GDBusConnection
 </parameter_description>
 </parameter>
-<parameter name="num_entries">
-<parameter_description> Number of items to register.
+<parameter name="filter_id">
+<parameter_description> an identifier obtained from g_dbus_connection_add_filter()
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_bus_own_name_on_connection_with_closures">
+<function name="g_dbus_connection_send_message">
 <description>
-Version of g_bus_own_name_on_connection() using closures instead of callbacks for
-easier binding in other languages.
+Asynchronously sends @message to the peer represented by @connection.
+
+Unless @flags contain the
+%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag, the serial number
+will be assigned by @connection and set on @message via
+g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
+serial number used will be written to this location prior to
+submitting the message to the underlying transport.
+
+If @connection is closed then the operation will fail with
+%G_IO_ERROR_CLOSED. If @message is not well-formed,
+the operation fails with %G_IO_ERROR_INVALID_ARGUMENT.
+
+See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
+linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
+low-level API to send and receive UNIX file descriptors.
+
+Note that @message must be unlocked, unless @flags contain the
+%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag.
 
 Since: 2.26
 
@@ -5647,652 +6758,855 @@ Since: 2.26
 <parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> The well-known name to own.
+<parameter name="message">
+<parameter_description> A #GDBusMessage
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
+<parameter_description> Flags affecting how the message is sent.
 </parameter_description>
 </parameter>
-<parameter name="name_acquired_closure">
-<parameter_description> #GClosure to invoke when @name is
-acquired or %NULL.
+<parameter name="out_serial">
+<parameter_description> Return location for serial number assigned to @message when sending it or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="name_lost_closure">
-<parameter_description> #GClosure to invoke when @name is lost or
-%NULL.
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unown_name() to stop owning the name.
+<return> %TRUE if the message was well-formed and queued for
+transmission, %FALSE if @error is set.
 
 </return>
 </function>
 
-<function name="g_socket_client_connect">
+<function name="g_dbus_connection_send_message_with_reply">
 <description>
-Tries to resolve the @connectable and make a network connection to it..
+Asynchronously sends @message to the peer represented by @connection.
 
-Upon a successful connection, a new #GSocketConnection is constructed
-and returned.  The caller owns this new object and must drop their
-reference to it when finished with it.
+Unless @flags contain the
+%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag, the serial number
+will be assigned by @connection and set on @message via
+g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
+serial number used will be written to this location prior to
+submitting the message to the underlying transport.
 
-The type of the #GSocketConnection object returned depends on the type of
-the underlying socket that is used. For instance, for a TCP/IP connection
-it will be a #GTcpConnection.
+If @connection is closed then the operation will fail with
+%G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
+fail with %G_IO_ERROR_CANCELLED. If @message is not well-formed,
+the operation fails with %G_IO_ERROR_INVALID_ARGUMENT.
 
-The socket created will be the same family as the the address that the
- connectable resolves to, unless family is set with g_socket_client_set_family()
-or indirectly via g_socket_client_set_local_address(). The socket type
-defaults to %G_SOCKET_TYPE_STREAM but can be set with
-g_socket_client_set_socket_type().
+This is an asynchronous method. When the operation is finished, @callback will be invoked
+in the &lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main loop&lt;/link&gt;
+of the thread you are calling this method from. You can then call
+g_dbus_connection_send_message_with_reply_finish() to get the result of the operation.
+See g_dbus_connection_send_message_with_reply_sync() for the synchronous version.
 
-If a local address is specified with g_socket_client_set_local_address() the
-socket will be bound to this address before connecting.
+Note that @message must be unlocked, unless @flags contain the
+%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag.
 
-Since: 2.22
+See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
+linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
+low-level API to send and receive UNIX file descriptors.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="connectable">
-<parameter_description> a #GSocketConnectable specifying the remote address.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags affecting how the message is sent.
+</parameter_description>
+</parameter>
+<parameter name="timeout_msec">
+<parameter_description> The timeout in milliseconds, -1 to use the default
+timeout or %G_MAXINT for no timeout.
+</parameter_description>
+</parameter>
+<parameter name="out_serial">
+<parameter_description> Return location for serial number assigned to @message when sending it or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
+care about the result.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> The data to pass to @callback.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dbus_connection_send_message_with_reply_finish">
+<description>
+Finishes an operation started with g_dbus_connection_send_message_with_reply().
+
+Note that @error is only set if a local in-process error
+occured. That is to say that the returned #GDBusMessage object may
+be of type %G_DBUS_MESSAGE_TYPE_ERROR. Use
+g_dbus_message_to_gerror() to transcode this to a #GError.
+
+See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
+linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
+low-level API to send and receive UNIX file descriptors.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> a #GDBusConnection
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_send_message_with_reply().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection on success, %NULL on error.
+<return> A locked #GDBusMessage or %NULL if @error is set.
 
 </return>
 </function>
 
-<function name="g_app_info_create_from_commandline">
+<function name="g_dbus_connection_send_message_with_reply_sync">
 <description>
-Creates a new #GAppInfo from the given information.
+Synchronously sends @message to the peer represented by @connection
+and blocks the calling thread until a reply is received or the
+timeout is reached. See g_dbus_connection_send_message_with_reply()
+for the asynchronous version of this method.
 
+Unless @flags contain the
+%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag, the serial number
+will be assigned by @connection and set on @message via
+g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
+serial number used will be written to this location prior to
+submitting the message to the underlying transport.
+
+If @connection is closed then the operation will fail with
+%G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
+fail with %G_IO_ERROR_CANCELLED. If @message is not well-formed,
+the operation fails with %G_IO_ERROR_INVALID_ARGUMENT.
+
+Note that @error is only set if a local in-process error
+occured. That is to say that the returned #GDBusMessage object may
+be of type %G_DBUS_MESSAGE_TYPE_ERROR. Use
+g_dbus_message_to_gerror() to transcode this to a #GError.
+
+See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
+linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
+low-level API to send and receive UNIX file descriptors.
+
+Note that @message must be unlocked, unless @flags contain the
+%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="commandline">
-<parameter_description> the commandline to use
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="application_name">
-<parameter_description> the application name, or %NULL to use @commandline
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> flags that can specify details of the created #GAppInfo
+<parameter_description> Flags affecting how the message is sent.
+</parameter_description>
+</parameter>
+<parameter name="timeout_msec">
+<parameter_description> The timeout in milliseconds, -1 to use the default
+timeout or %G_MAXINT for no timeout.
+</parameter_description>
+</parameter>
+<parameter name="out_serial">
+<parameter_description> Return location for serial number assigned to @message when sending it or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, %NULL to ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> new #GAppInfo for given command.
+<return> A locked #GDBusMessage that is the reply to @message or %NULL if @error is set.
+
 </return>
 </function>
 
-<function name="g_socket_client_get_protocol">
+<function name="g_dbus_connection_set_exit_on_close">
 <description>
-Gets the protocol name type of the socket client.
-
-See g_socket_client_set_protocol() for details.
+Sets whether the process should be terminated when @connection is
+closed by the remote peer. See #GDBusConnection:exit-on-close for
+more details.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="exit_on_close">
+<parameter_description> Whether the process should be terminated
+when @connection is closed by the remote peer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketProtocol
-
-</return>
+<return></return>
 </function>
 
-<function name="g_unix_mount_point_guess_can_eject">
+<function name="g_dbus_connection_signal_subscribe">
 <description>
-Guesses whether a Unix mount point can be ejected.
+Subscribes to signals on @connection and invokes @callback with a
+whenever the signal is received. Note that @callback
+will be invoked in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread you are calling this method from.
 
+If @connection is not a message bus connection, @sender must be
+%NULL.
+
+If @sender is a well-known name note that @callback is invoked with
+the unique name for the owner of @sender, not the well-known name
+as one would expect. This is because the message bus rewrites the
+name. As such, to avoid certain race conditions, users should be
+tracking the name owner of the well-known name and use that when
+processing the received signal.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
+</parameter_description>
+</parameter>
+<parameter name="sender">
+<parameter_description> Sender name to match on (unique or well-known name) or %NULL to listen from all senders.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> D-Bus interface name to match on or %NULL to match on all interfaces.
+</parameter_description>
+</parameter>
+<parameter name="member">
+<parameter_description> D-Bus signal name to match on or %NULL to match on all signals.
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> Object path to match on or %NULL to match on all object paths.
+</parameter_description>
+</parameter>
+<parameter name="arg0">
+<parameter_description> Contents of first string argument to match on or %NULL to match on all kinds of arguments.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags describing how to subscribe to the signal (currently unused).
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> Callback to invoke when there is a signal matching the requested data.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> User data to pass to @callback.
+</parameter_description>
+</parameter>
+<parameter name="user_data_free_func">
+<parameter_description> Function to free @user_data with when subscription is removed or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @mount_point is deemed to be ejectable.
+<return> A subscription identifier that can be used with g_dbus_connection_signal_unsubscribe().
+
 </return>
 </function>
 
-<function name="g_settings_unbind">
+<function name="g_dbus_connection_signal_unsubscribe">
 <description>
-Removes an existing binding for @property on @object.
-
-Note that bindings are automatically removed when the
-object is finalized, so it is rarely necessary to call this
-function.
+Unsubscribes from signals.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> the object
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="property">
-<parameter_description> the property whose binding is removed
+<parameter name="subscription_id">
+<parameter_description> A subscription id obtained from g_dbus_connection_signal_subscribe().
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cancellable_release_fd">
+<function name="g_dbus_connection_start_message_processing">
 <description>
-Releases a resources previously allocated by g_cancellable_get_fd()
-or g_cancellable_make_pollfd().
-
-For compatibility reasons with older releases, calling this function 
-is not strictly required, the resources will be automatically freed
-when the @cancellable is finalized. However, the @cancellable will
-block scarce file descriptors until it is finalized if this function
-is not called. This can cause the application to run out of file 
-descriptors when many #GCancellables are used at the same time.
+If @connection was created with
+%G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING, this method
+starts processing messages. Does nothing on if @connection wasn't
+created with this flag or if the method has already been called.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_network_service_new">
+<function name="g_dbus_connection_unregister_object">
 <description>
-Creates a new #GNetworkService representing the given @service,
- protocol, and @domain. This will initially be unresolved; use the
-#GSocketConnectable interface to resolve it.
+Unregisters an object.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="service">
-<parameter_description> the service type to look up (eg, &quot;ldap&quot;)
-</parameter_description>
-</parameter>
-<parameter name="protocol">
-<parameter_description> the networking protocol to use for @service (eg, &quot;tcp&quot;)
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="domain">
-<parameter_description> the DNS domain to look up the service in
+<parameter name="registration_id">
+<parameter_description> A registration id obtained from g_dbus_connection_register_object().
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GNetworkService
+<return> %TRUE if the object was unregistered, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_data_input_stream_read_byte">
+<function name="g_dbus_connection_unregister_subtree">
 <description>
-Reads an unsigned 8-bit/1-byte value from @stream.
+Unregisters a subtree.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="registration_id">
+<parameter_description> A subtree registration id obtained from g_dbus_connection_register_subtree().
 </parameter_description>
 </parameter>
+</parameters>
+<return> %TRUE if the subtree was unregistered, %FALSE otherwise.
+
+</return>
+</function>
+
+<function name="g_dbus_error_encode_gerror">
+<description>
+Creates a D-Bus error name to use for @error. If @error matches
+a registered error (cf. g_dbus_error_register_error()), the corresponding
+D-Bus error name will be returned.
+
+Otherwise the a name of the form
+&lt;literal&gt;org.gtk.GDBus.UnmappedGError.Quark._ESCAPED_QUARK_NAME.Code_ERROR_CODE&lt;/literal&gt;
+will be used. This allows other GDBus applications to map the error
+on the wire back to a #GError using g_dbus_error_new_for_dbus_error().
+
+This function is typically only used in object mappings to put a
+#GError on the wire. Regular applications should not use it.
+
+Since: 2.26
+
+</description>
+<parameters>
 <parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter_description> A #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unsigned 8-bit/1-byte value read from the @stream or %0 
-if an error occurred.
+<return> A D-Bus error name (never %NULL). Free with g_free().
+
 </return>
 </function>
 
-<function name="g_permission_get_can_acquire">
+<function name="g_dbus_error_get_remote_error">
 <description>
-Gets the value of the 'can-acquire' property.  This property is %TRUE
-if it is generally possible to acquire the permission by calling
-g_permission_acquire().
+Gets the D-Bus error name used for @error, if any.
+
+This function is guaranteed to return a D-Bus error name for all
+#GError&lt;!-- --&gt;s returned from functions handling remote method
+calls (e.g. g_dbus_connection_call_finish()) unless
+g_dbus_error_strip_remote_error() has been used on @error.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
+<parameter name="error">
+<parameter_description> A #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value of the 'can-acquire' property
+<return> An allocated string or %NULL if the D-Bus error name could not be found. Free with g_free().
+
 </return>
 </function>
 
-<function name="g_dbus_message_get_message_type">
+<function name="g_dbus_error_is_remote_error">
 <description>
-Gets the type of @message.
+Checks if @error represents an error received via D-Bus from a remote peer. If so,
+use g_dbus_error_get_remote_error() to get the name of the error.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="error">
+<parameter_description> A #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A 8-bit unsigned integer (typically a value from the #GDBusMessageType enumeration).
+<return> %TRUE if @error represents an error from a remote peer,
+%FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_desktop_app_info_new">
+<function name="g_dbus_error_new_for_dbus_error">
 <description>
-Creates a new #GDesktopAppInfo based on a desktop file id. 
+Creates a #GError based on the contents of @dbus_error_name and
+ dbus_error_message 
 
-A desktop file id is the basename of the desktop file, including the 
-.desktop extension. GIO is looking for a desktop file with this name 
-in the &lt;filename&gt;applications&lt;/filename&gt; subdirectories of the XDG data
-directories (i.e. the directories specified in the 
-&lt;envar&gt;XDG_DATA_HOME&lt;/envar&gt; and &lt;envar&gt;XDG_DATA_DIRS&lt;/envar&gt; environment 
-variables). GIO also supports the prefix-to-subdirectory mapping that is
-described in the &lt;ulink url=&quot;http://standards.freedesktop.org/menu-spec/latest/&quot;&gt;Menu Spec&lt;/ulink&gt; 
-(i.e. a desktop id of kde-foo.desktop will match
-&lt;filename&gt;/usr/share/applications/kde/foo.desktop&lt;/filename&gt;).
+Errors registered with g_dbus_error_register_error() will be looked
+up using @dbus_error_name and if a match is found, the error domain
+and code is used. Applications can use g_dbus_error_get_remote_error()
+to recover @dbus_error_name.
+
+If a match against a registered error is not found and the D-Bus
+error name is in a form as returned by g_dbus_error_encode_gerror()
+the error domain and code encoded in the name is used to
+create the #GError. Also, @dbus_error_name is added to the error message
+such that it can be recovered with g_dbus_error_get_remote_error().
+
+Otherwise, a #GError with the error code %G_IO_ERROR_DBUS_ERROR
+in the #G_IO_ERROR error domain is returned. Also, @dbus_error_name is
+added to the error message such that it can be recovered with
+g_dbus_error_get_remote_error().
 
+In all three cases, @dbus_error_name can always be recovered from the
+returned #GError using the g_dbus_error_get_remote_error() function
+(unless g_dbus_error_strip_remote_error() hasn't been used on the returned error).
+
+This function is typically only used in object mappings to prepare
+#GError instances for applications. Regular applications should not use
+it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="desktop_id">
-<parameter_description> the desktop file id
+<parameter name="dbus_error_name">
+<parameter_description> D-Bus error name.
+</parameter_description>
+</parameter>
+<parameter name="dbus_error_message">
+<parameter_description> D-Bus error message.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GDesktopAppInfo, or %NULL if no desktop file with that id
+<return> An allocated #GError. Free with g_error_free().
+
 </return>
 </function>
 
-<function name="g_socket_client_connect_to_host_finish">
+<function name="g_dbus_error_register_error">
 <description>
-Finishes an async connect operation. See g_socket_client_connect_to_host_async()
+Creates an association to map between @dbus_error_name and
+#GError&lt;!-- --&gt;s specified by @error_domain and @error_code.
 
-Since: 2.22
+This is typically done in the routine that returns the #GQuark for
+an error domain.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="error_domain">
+<parameter_description> A #GQuark for a error domain.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="error_code">
+<parameter_description> An error code.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="dbus_error_name">
+<parameter_description> A D-Bus error name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection on success, %NULL on error.
+<return> %TRUE if the association was created, %FALSE if it already
+exists.
 
 </return>
 </function>
 
-<function name="g_io_scheduler_job_send_to_mainloop_async">
+<function name="g_dbus_error_register_error_domain">
 <description>
-Used from an I/O job to send a callback to be run asynchronously in
-the thread that the job was started from. The callback will be run
-when the main loop is available, but at that time the I/O job might
-have finished. The return value from the callback is ignored.
+Helper function for associating a #GError error domain with D-Bus error names.
 
-Note that if you are passing the @user_data from g_io_scheduler_push_job()
-on to this function you have to ensure that it is not freed before
- func is called, either by passing %NULL as @notify to 
-g_io_scheduler_push_job() or by using refcounting for @user_data.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="job">
-<parameter_description> a #GIOSchedulerJob
+<parameter name="error_domain_quark_name">
+<parameter_description> The error domain name.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> a #GSourceFunc callback that will be called in the original thread
+<parameter name="quark_volatile">
+<parameter_description> A pointer where to store the #GQuark.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @func
+<parameter name="entries">
+<parameter_description> A pointer to @num_entries #GDBusErrorEntry struct items.
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> a #GDestroyNotify for @user_data, or %NULL
+<parameter name="num_entries">
+<parameter_description> Number of items to register.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_filename_completer_get_completions">
+<function name="g_dbus_error_set_dbus_error">
 <description>
-Gets an array of completion strings for a given initial text.
+Does nothing if @error is %NULL. Otherwise sets * error to
+a new #GError created with g_dbus_error_new_for_dbus_error()
+with @dbus_error_message prepend with @format (unless %NULL).
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="completer">
-<parameter_description> the filename completer.
+<parameter name="error">
+<parameter_description> A pointer to a #GError or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="initial_text">
-<parameter_description> text to be completed.
+<parameter name="dbus_error_name">
+<parameter_description> D-Bus error name.
+</parameter_description>
+</parameter>
+<parameter name="dbus_error_message">
+<parameter_description> D-Bus error message.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> printf()-style format to prepend to @dbus_error_message or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> Arguments for @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> array of strings with possible completions for @initial_text.
-This array must be freed by g_strfreev() when finished. 
-</return>
+<return></return>
 </function>
 
-<function name="g_file_load_partial_contents_finish">
+<function name="g_dbus_error_set_dbus_error_valist">
 <description>
-Finishes an asynchronous partial load operation that was started
-with g_file_load_partial_contents_async(). The data is always 
-zero-terminated, but this is not included in the resultant @length.
-The returned @content should be freed with g_free() when no longer
-needed.
+Like g_dbus_error_set_dbus_error() but intended for language bindings.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter name="error">
+<parameter_description> A pointer to a #GError or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="contents">
-<parameter_description> a location to place the contents of the file.
+<parameter name="dbus_error_name">
+<parameter_description> D-Bus error name.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> a location to place the length of the contents of the file,
-or %NULL if the length is not needed
+<parameter name="dbus_error_message">
+<parameter_description> D-Bus error message.
 </parameter_description>
 </parameter>
-<parameter name="etag_out">
-<parameter_description> a location to place the current entity tag for the file,
-or %NULL if the entity tag is not needed
+<parameter name="format">
+<parameter_description> printf()-style format to prepend to @dbus_error_message or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="var_args">
+<parameter_description> Arguments for @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the load was successful. If %FALSE and @error is 
-present, it will be set appropriately. 
-</return>
+<return></return>
 </function>
 
-<function name="g_simple_async_result_set_from_error">
+<function name="g_dbus_error_strip_remote_error">
 <description>
-Sets the result from a #GError.
+Looks for extra information in the error message used to recover
+the D-Bus error name and strips it if found. If stripped, the
+message field in @error will correspond exactly to what was
+received on the wire.
+
+This is typically used when presenting errors to the end user.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
-</parameter_description>
-</parameter>
 <parameter name="error">
-<parameter_description> #GError.
+<parameter_description> A #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if information was stripped, %FALSE otherwise.
+
+</return>
 </function>
 
-<function name="g_filter_output_stream_set_close_base_stream">
+<function name="g_dbus_error_unregister_error">
 <description>
-Sets whether the base stream will be closed when @stream is closed.
+Destroys an association previously set up with g_dbus_error_register_error().
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFilterOutputStream.
+<parameter name="error_domain">
+<parameter_description> A #GQuark for a error domain.
 </parameter_description>
 </parameter>
-<parameter name="close_base">
-<parameter_description> %TRUE to close the base stream.
+<parameter name="error_code">
+<parameter_description> An error code.
+</parameter_description>
+</parameter>
+<parameter name="dbus_error_name">
+<parameter_description> A D-Bus error name.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the association was destroyed, %FALSE if it wasn't found.
+
+</return>
 </function>
 
-<function name="g_mount_is_shadowed">
+<function name="g_dbus_generate_guid">
 <description>
-Determines if @mount is shadowed. Applications or libraries should
-avoid displaying @mount in the user interface if it is shadowed.
-
-A mount is said to be shadowed if there exists one or more user
-visible objects (currently #GMount objects) with a root that is
-inside the root of @mount.
-
-One application of shadow mounts is when exposing a single file
-system that is used to address several logical volumes. In this
-situation, a #GVolumeMonitor implementation would create two
-#GVolume objects (for example, one for the camera functionality of
-the device and one for a SD card reader on the device) with
-activation URIs &lt;literal&gt;gphoto2://[usb:001,002]/store1/&lt;/literal&gt;
-and &lt;literal&gt;gphoto2://[usb:001,002]/store2/&lt;/literal&gt;. When the
-underlying mount (with root
-&lt;literal&gt;gphoto2://[usb:001,002]/&lt;/literal&gt;) is mounted, said
-#GVolumeMonitor implementation would create two #GMount objects
-(each with their root matching the corresponding volume activation
-root) that would shadow the original mount.
+Generate a D-Bus GUID that can be used with
+e.g. g_dbus_connection_new().
 
-The proxy monitor in GVfs 2.26 and later, automatically creates and
-manage shadow mounts (and shadows the underlying mount) if the
-activation root on a #GVolume is set.
+See the D-Bus specification regarding what strings are valid D-Bus
+GUID (for example, D-Bus GUIDs are not RFC-4122 compliant).
 
-Since: 2.20
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> A #GMount.
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if @mount is shadowed.
+<return> A valid D-Bus GUID. Free with g_free().
 
 </return>
 </function>
 
-<function name="g_file_info_set_attribute_int64">
+<function name="g_dbus_interface_info_generate_xml">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Appends an XML representation of @info (and its children) to @string_builder.
 
+This function is typically used for generating introspection XML
+documents at run-time for handling the
+&lt;literal&gt;org.freedesktop.DBus.Introspectable.Introspect&lt;/literal&gt;
+method.
+
+Since: 2.26
 
 </description>
 <parameters>
 <parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter_description> A #GDBusNodeInfo
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> attribute name to set.
+<parameter name="indent">
+<parameter_description> Indentation level.
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> int64 value to set attribute to.
+<parameter name="string_builder">
+<parameter_description> A #GString to to append XML data to.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_data_input_stream_read_uint16">
+<function name="g_dbus_interface_info_lookup_method">
 <description>
-Reads an unsigned 16-bit/2-byte value from @stream.
+Looks up information about a method.
 
-In order to get the correct byte order for this read operation, 
-see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order(). 
+This cost of this function is O(n) in number of methods.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="name">
+<parameter_description> A D-Bus method name (typically in CamelCase)
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unsigned 16-bit/2-byte value read from the @stream or %0 if 
-an error occurred. 
+<return> A #GDBusMethodInfo or %NULL if not found. Do not free, it is owned by @info.
+
 </return>
 </function>
 
-<function name="fen_add">
+<function name="g_dbus_interface_info_lookup_property">
 <description>
-Won't hold a ref, we have a timout callback to clean unused node_t.
-If there is no value for a key, add it and return it; else return the old
-one.
+Looks up information about a property.
+
+This cost of this function is O(n) in number of properties.
+
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> A D-Bus property name (typically in CamelCase).
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> A #GDBusPropertyInfo or %NULL if not found. Do not free, it is owned by @info.
+
+</return>
 </function>
 
-<function name="g_settings_get_has_unapplied">
+<function name="g_dbus_interface_info_lookup_signal">
 <description>
-Returns whether the #GSettings object has any unapplied
-changes.  This can only be the case if it is in 'delayed-apply' mode.
+Looks up information about a signal.
+
+This cost of this function is O(n) in number of signals.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> A D-Bus signal name (typically in CamelCase)
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @settings has unapplied changes
+<return> A #GDBusSignalInfo or %NULL if not found. Do not free, it is owned by @info.
+
 </return>
 </function>
 
-<function name="g_unix_credentials_message_get_credentials">
+<function name="g_dbus_interface_info_ref">
 <description>
-Gets the credentials stored in @message.
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GUnixCredentialsMessage.
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GCredentials instance. Do not free, it is owned by @message.
+<return> The same @info.
 
 </return>
 </function>
 
-<function name="g_mount_remount_finish">
+<function name="g_dbus_interface_info_unref">
 <description>
-Finishes remounting a mount. If any errors occurred during the operation, 
- error will be set to contain the errors and %FALSE will be returned.
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount was successfully remounted. %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_get_icon">
+<function name="g_dbus_is_address">
 <description>
-Gets the icon for a file.
+Checks if @string is a D-Bus address.
 
+This doesn't check if @string is actually supported by #GDBusServer
+or #GDBusConnection - use g_dbus_is_supported_address() to do more
+checks.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="string">
+<parameter_description> A string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GIcon for the given @info.
+<return> %TRUE if @string is a valid D-Bus address, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_dbus_is_name">
+<function name="g_dbus_is_guid">
 <description>
-Checks if @string is a valid D-Bus bus name (either unique or well-known).
+Checks if @string is a D-Bus GUID.
+
+See the D-Bus specification regarding what strings are valid D-Bus
+GUID (for example, D-Bus GUIDs are not RFC-4122 compliant).
 
 Since: 2.26
 
@@ -6303,89 +7617,77 @@ Since: 2.26
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if valid, %FALSE otherwise.
+<return> %TRUE if @string is a guid, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_file_new_for_commandline_arg">
+<function name="g_dbus_is_interface_name">
 <description>
-Creates a #GFile with the given argument from the command line. The value of
- arg can be either a URI, an absolute path or a relative path resolved
-relative to the current working directory.
-This operation never fails, but the returned object might not support any
-I/O operation if @arg points to a malformed path.
+Checks if @string is a valid D-Bus interface name.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="arg">
-<parameter_description> a command line string.
+<parameter name="string">
+<parameter_description> The string to check.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GFile. 
+<return> %TRUE if valid, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_settings_sync">
+<function name="g_dbus_is_member_name">
 <description>
-Ensures that all pending operations for the given are complete for
-the default backend.
-
-Writes made to a #GSettings are handled asynchronously.  For this
-reason, it is very unlikely that the changes have it to disk by the
-time g_settings_set() returns.
+Checks if @string is a valid D-Bus member (e.g. signal or method) name.
 
-This call will block until all of the writes have made it to the
-backend.  Since the mainloop is not running, no change notifications
-will be dispatched during this call (but some may be queued by the
-time the call is done).
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="string">
+<parameter_description> The string to check.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> %TRUE if valid, %FALSE otherwise.
+
+</return>
 </function>
 
-<function name="g_io_error_quark">
+<function name="g_dbus_is_name">
 <description>
-Gets the GIO Error Quark.
+Checks if @string is a valid D-Bus bus name (either unique or well-known).
 
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="string">
+<parameter_description> The string to check.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GQuark.
+<return> %TRUE if valid, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_unix_connection_send_credentials">
+<function name="g_dbus_is_supported_address">
 <description>
-Passes the credentials of the current user the receiving side
-of the connection. The recieving end has to call
-g_unix_connection_receive_credentials() (or similar) to accept the
-credentials.
-
-As well as sending the credentials this also writes a single NUL
-byte to the stream, as this is required for credentials passing to
-work on some implementations.
-
-Other ways to exchange credentials with a foreign peer includes the
-#GUnixCredentialsMessage type and g_socket_get_credentials() function.
-
-Note that this function only works on Linux, currently.
+Like g_dbus_is_address() but also checks if the library suppors the
+transports in @string and that key/value pairs for each transport
+are valid.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GUnixConnection.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="string">
+<parameter_description> A string.
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -6393,406 +7695,314 @@ Since: 2.26
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if @error is set.
+<return> %TRUE if @string is a valid D-Bus address that is
+supported by this library, %FALSE if @error is set.
 
 </return>
 </function>
 
-<function name="g_file_query_settable_attributes">
+<function name="g_dbus_is_unique_name">
 <description>
-Obtain the list of settable attributes for the file.
+Checks if @string is a valid D-Bus unique bus name.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="string">
+<parameter_description> The string to check.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return> %TRUE if valid, %FALSE otherwise.
+
+</return>
+</function>
+
+<function name="g_dbus_message_bytes_needed">
+<description>
+Utility function to calculate how many bytes are needed to
+completely deserialize the D-Bus message stored at @blob.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="blob">
+<parameter_description> A blob represent a binary D-Bus message.
+</parameter_description>
+</parameter>
+<parameter name="blob_len">
+<parameter_description> The length of @blob (must be at least 16).
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeInfoList describing the settable attributes.
-When you are done with it, release it with g_file_attribute_info_list_unref()
+<return> Number of bytes needed or -1 if @error is set (e.g. if
+ blob contains invalid data or not enough data is available to
+determine the size).
+
 </return>
 </function>
 
-<function name="g_settings_get_strv">
+<function name="g_dbus_message_copy">
 <description>
-Gets the value that is stored at @key in @settings.
+Copies @message. The copy is a deep copy and the returned
+#GDBusMessage is completely identical except that it is guaranteed
+to not be locked.
 
-A convenience variant of g_settings_get() for string arrays.
-
-It is a programmer error to give a @key that isn't specified as
-having an array of strings type in the schema for @settings.
+This operation can fail if e.g. @message contains file descriptors
+and the per-process or system-wide open files limit is reached.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated, %NULL-terminated array of strings
+<return> A new #GDBusMessage or %NULL if @error is set. Free with
+g_object_unref().
+
 </return>
 </function>
 
-<function name="g_volume_should_automount">
+<function name="g_dbus_message_get_arg0">
 <description>
-Returns whether the volume should be automatically mounted.
+Convenience to get the first item in the body of @message.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the volume should be automatically mounted.
+<return> The string item or %NULL if the first item in the body of
+ message is not a string.
+
 </return>
 </function>
 
-<function name="g_converter_reset">
+<function name="g_dbus_message_get_body">
 <description>
-Resets all internal state in the converter, making it behave
-as if it was just created. If the converter has any internal
-state that would produce output then that output is lost.
+Gets the body of a message.
 
-Since: 2.24
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> a #GConverter.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GVariant or %NULL if the body is empty. Do not free, it is owned by @message.
+
+</return>
 </function>
 
-<function name="g_buffered_output_stream_new_sized">
+<function name="g_dbus_message_get_byte_order">
 <description>
-Creates a new buffered output stream with a given buffer size.
+Gets the byte order of @message.
 
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> a #gsize.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GOutputStream with an internal buffer set to @size.
+<return> The byte order.
 </return>
 </function>
 
-<function name="g_socket_get_protocol">
+<function name="g_dbus_message_get_destination">
 <description>
-Gets the socket protocol id the socket was created with.
-In case the protocol is unknown, -1 is returned.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION header field.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a protocol id, or -1 if unknown
+<return> The value.
 
 </return>
 </function>
 
-<function name="g_file_query_info_async">
+<function name="g_dbus_message_get_error_name">
 <description>
-Asynchronously gets the requested information about specified @file. The result
-is a #GFileInfo object that contains key-value attributes (such as type or size
-for the file).
-
-For more details, see g_file_query_info() which is
-the synchronous version of this call.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME header field.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_query_info_finish() to get the result of the operation.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="attributes">
-<parameter_description> an attribute query string.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileQueryInfoFlags.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The value.
+
+</return>
 </function>
 
-<function name="g_file_set_display_name">
+<function name="g_dbus_message_get_flags">
 <description>
-Renames @file to the specified display name.
+Gets the flags for @message.
 
-The display name is converted from UTF8 to the correct encoding for the target
-filesystem if possible and the @file is renamed to this.
+Since: 2.26
 
-If you want to implement a rename operation in the user interface the edit name
-(#G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME) should be used as the initial value in the rename
-widget, and then the result after editing should be passed to g_file_set_display_name().
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+</parameters>
+<return> Flags that are set (typically values from the #GDBusMessageFlags enumeration bitwise ORed together).
 
-On success the resulting converted filename is returned.
+</return>
+</function>
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+<function name="g_dbus_message_get_header">
+<description>
+Gets a header field on @message.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="display_name">
-<parameter_description> a string.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="header_field">
+<parameter_description> A 8-bit unsigned integer (typically a value from the #GDBusMessageHeaderField enumeration)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile specifying what @file was renamed to, or %NULL 
-if there was an error.
-Free the returned object with g_object_unref().
+<return> A #GVariant with the value if the header was found, %NULL
+otherwise. Do not free, it is owned by @message.
+
 </return>
 </function>
 
-<function name="g_app_info_remove_supports_type">
+<function name="g_dbus_message_get_header_fields">
 <description>
-Removes a supported type from an application, if possible.
+Gets an array of all header fields on @message that are set.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
-</parameter_description>
-</parameter>
-<parameter name="content_type">
-<parameter_description> a string.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
+<return> An array of header fields terminated by
+%G_DBUS_MESSAGE_HEADER_FIELD_INVALID.  Each element is a
+#guchar. Free with g_free().
+
 </return>
 </function>
 
-<function name="g_output_stream_write_all">
+<function name="g_dbus_message_get_interface">
 <description>
-Tries to write @count bytes from @buffer into the stream. Will block
-during the operation.
-
-This function is similar to g_output_stream_write(), except it tries to
-write as many bytes as requested, only stopping on an error.
-
-On a successful write of @count bytes, %TRUE is returned, and @bytes_written
-is set to @count.
-
-If there is an error during the operation FALSE is returned and @error
-is set to indicate the error status, @bytes_written is updated to contain
-the number of bytes written into the stream before the error occurred.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE header field.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> the buffer containing the data to write. 
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of bytes to write
-</parameter_description>
-</parameter>
-<parameter name="bytes_written">
-<parameter_description> location to store the number of bytes that was 
-written to the stream
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if there was an error
+<return> The value.
+
 </return>
 </function>
 
-<function name="g_settings_set_int">
+<function name="g_dbus_message_get_locked">
 <description>
-Sets @key in @settings to @value.
-
-A convenience variant of g_settings_set() for 32-bit integers.
-
-It is a programmer error to give a @key that isn't specified as
-having a int32 type in the schema for @settings.
+Checks whether @message is locked. To monitor changes to this
+value, conncet to the #GObject::notify signal to listen for changes
+on the #GDBusMessage:locked property.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the name of the key to set
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value to set it to
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if setting the key succeeded,
-%FALSE if the key was not writable
+<return> %TRUE if @message is locked, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_io_scheduler_push_job">
+<function name="g_dbus_message_get_member">
 <description>
-Schedules the I/O job to run. 
-
- notify will be called on @user_data after @job_func has returned,
-regardless whether the job was cancelled or has run to completion.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_MEMBER header field.
 
-If @cancellable is not %NULL, it can be used to cancel the I/O job
-by calling g_cancellable_cancel() or by calling 
-g_io_scheduler_cancel_all_jobs().
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="job_func">
-<parameter_description> a #GIOSchedulerJobFunc.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @job_func
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> a #GDestroyNotify for @user_data, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;gioscheduler&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The value.
+
+</return>
 </function>
 
-<function name="g_initable_newv">
+<function name="g_dbus_message_get_message_type">
 <description>
-Helper function for constructing #GInitiable object. This is
-similar to g_object_newv() but also initializes the object
-and returns %NULL, setting an error on failure.
+Gets the type of @message.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> a #GType supporting #GInitable.
-</parameter_description>
-</parameter>
-<parameter name="n_parameters">
-<parameter_description> the number of parameters in @parameters
-</parameter_description>
-</parameter>
-<parameter name="parameters">
-<parameter_description> the parameters to use to construct the object
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GObject, or %NULL on error
+<return> A 8-bit unsigned integer (typically a value from the #GDBusMessageType enumeration).
 
 </return>
 </function>
 
-<function name="g_dbus_message_set_interface">
+<function name="g_dbus_message_get_num_unix_fds">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE header field.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS header field.
 
 Since: 2.26
 
@@ -6802,1544 +8012,1582 @@ Since: 2.26
 <parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> The value to set.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> The value.
+
+</return>
 </function>
 
-<function name="g_charset_converter_new">
+<function name="g_dbus_message_get_path">
 <description>
-Creates a new #GCharsetConverter.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_PATH header field.
 
-Since: 2.24
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="to_charset">
-<parameter_description> destination charset
-</parameter_description>
-</parameter>
-<parameter name="from_charset">
-<parameter_description> source charset
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GCharsetConverter or %NULL on error.
+<return> The value.
 
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_get_message">
+<function name="g_dbus_message_get_reply_serial">
 <description>
-Gets the #GDBusMessage for the method invocation. This is useful if
-you need to use low-level protocol features, such as UNIX file
-descriptor passing, that cannot be properly expressed in the
-#GVariant API.
-
-See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
-linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
-low-level API to send and receive UNIX file descriptors.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL header field.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage. Do not free, it is owned by @invocation.
+<return> The value.
 
 </return>
 </function>
 
-<function name="g_data_input_stream_new">
+<function name="g_dbus_message_get_sender">
 <description>
-Creates a new data input stream for the @base_stream.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_SENDER header field.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GInputStream.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GDataInputStream.
+<return> The value.
+
 </return>
 </function>
 
-<function name="g_socket_listener_accept_finish">
+<function name="g_dbus_message_get_serial">
 <description>
-Finishes an async accept operation. See g_socket_listener_accept_async()
+Gets the serial for @message.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="source_object">
-<parameter_description> Optional #GObject identifying this source
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection on success, %NULL on error.
+<return> A #guint32.
 
 </return>
 </function>
 
-<function name="g_unix_output_stream_get_close_fd">
+<function name="g_dbus_message_get_signature">
 <description>
-Returns whether the file descriptor of @stream will be
-closed when the stream is closed.
+Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE header field.
 
-Since: 2.20
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GUnixOutputStream
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the file descriptor is closed when done
+<return> The value.
 
 </return>
 </function>
 
-<function name="g_settings_get_int">
+<function name="g_dbus_message_get_unix_fd_list">
 <description>
-Gets the value that is stored at @key in @settings.
-
-A convenience variant of g_settings_get() for 32-bit integers.
+Gets the UNIX file descriptors associated with @message, if any.
 
-It is a programmer error to give a @key that isn't specified as
-having a int32 type in the schema for @settings.
+This method is only available on UNIX.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an integer
+<return>A #GUnixFDList or %NULL if no file descriptors are
+associated. Do not free, this object is owned by @message.
+
 </return>
 </function>
 
-<function name="g_data_input_stream_set_newline_type">
+<function name="g_dbus_message_lock">
 <description>
-Sets the newline type for the @stream.
-
-Note that using G_DATA_STREAM_NEWLINE_TYPE_ANY is slightly unsafe. If a read
-chunk ends in &quot;CR&quot; we must read an additional byte to know if this is &quot;CR&quot; or
-&quot;CR LF&quot;, and this might block if there is no more data availible.
+If @message is locked, does nothing. Otherwise locks the message.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataInputStream.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the type of new line return as #GDataStreamNewlineType.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_simple_async_result_set_op_res_gboolean">
+<function name="g_dbus_message_new">
 <description>
-Sets the operation result to a boolean within the asynchronous result.
+Creates a new empty #GDBusMessage.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="op_res">
-<parameter_description> a #gboolean.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> A #GDBusMessage. Free with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_inet_socket_address_new">
+<function name="g_dbus_message_new_from_blob">
 <description>
-Creates a new #GInetSocketAddress for @address and @port.
+Creates a new #GDBusMessage from the data stored at @blob. The byte
+order that the message was in can be retrieved using
+g_dbus_message_get_byte_order().
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="blob">
+<parameter_description> A blob represent a binary D-Bus message.
 </parameter_description>
 </parameter>
-<parameter name="port">
-<parameter_description> a port number
+<parameter name="blob_len">
+<parameter_description> The length of @blob.
+</parameter_description>
+</parameter>
+<parameter name="capabilities">
+<parameter_description> A #GDBusCapabilityFlags describing what protocol features are supported.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GInetSocketAddress
+<return> A new #GDBusMessage or %NULL if @error is set. Free with
+g_object_unref().
 
 </return>
 </function>
 
-<function name="g_buffered_input_stream_peek">
+<function name="g_dbus_message_new_method_call">
 <description>
-Peeks in the buffer, copying data of size @count into @buffer,
-offset @offset bytes.
+Creates a new #GDBusMessage for a method call.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedInputStream
+<parameter name="name">
+<parameter_description> A valid D-Bus name or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> a pointer to an allocated chunk of memory
+<parameter name="path">
+<parameter_description> A valid object path.
 </parameter_description>
 </parameter>
-<parameter name="offset">
-<parameter_description> a #gsize
+<parameter name="interface_">
+<parameter_description> A valid D-Bus interface name or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> a #gsize
+<parameter name="method">
+<parameter_description> A valid method name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gsize of the number of bytes peeked, or -1 on error.
+<return> A #GDBusMessage. Free with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_srv_target_get_weight">
+<function name="g_dbus_message_new_method_error">
 <description>
-Gets @target's weight. You should not need to look at this;
-#GResolver already sorts the targets according to the algorithm in
-RFC 2782.
+Creates a new #GDBusMessage that is an error reply to @method_call_message.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GSrvTarget
+<parameter name="method_call_message">
+<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
+create a reply message to.
+</parameter_description>
+</parameter>
+<parameter name="error_name">
+<parameter_description> A valid D-Bus error name.
+</parameter_description>
+</parameter>
+<parameter name="error_message_format">
+<parameter_description> The D-Bus error message in a printf() format.
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> Arguments for @error_message_format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @target's weight
+<return> A #GDBusMessage. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_unix_fd_list_get">
+<function name="g_dbus_message_new_method_error_literal">
 <description>
-Gets a file descriptor out of @list.
-
- index_ specifies the index of the file descriptor to get.  It is a
-programmer error for @index_ to be out of range; see
-g_unix_fd_list_get_length().
-
-The file descriptor is duplicated using dup() and set as
-close-on-exec before being returned.  You must call close() on it
-when you are done.
-
-A possible cause of failure is exceeding the per-process or
-system-wide file descriptor limit.
+Creates a new #GDBusMessage that is an error reply to @method_call_message.
 
-Since: 2.24
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GUnixFDList
+<parameter name="method_call_message">
+<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
+create a reply message to.
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index into the list
+<parameter name="error_name">
+<parameter_description> A valid D-Bus error name.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError pointer
+<parameter name="error_message">
+<parameter_description> The D-Bus error message.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the file descriptor, or -1 in case of error
+<return> A #GDBusMessage. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_mount_operation_set_password">
+<function name="g_dbus_message_new_method_error_valist">
 <description>
-Sets the mount operation's password to @password.  
+Like g_dbus_message_new_method_error() but intended for language bindings.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="method_call_message">
+<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
+create a reply message to.
 </parameter_description>
 </parameter>
-<parameter name="password">
-<parameter_description> password to set.
+<parameter name="error_name">
+<parameter_description> A valid D-Bus error name.
+</parameter_description>
+</parameter>
+<parameter name="error_message_format">
+<parameter_description> The D-Bus error message in a printf() format.
+</parameter_description>
+</parameter>
+<parameter name="var_args">
+<parameter_description> Arguments for @error_message_format.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GDBusMessage. Free with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_socket_listen">
+<function name="g_dbus_message_new_method_reply">
 <description>
-Marks the socket as a server socket, i.e. a socket that is used
-to accept incoming requests using g_socket_accept().
+Creates a new #GDBusMessage that is a reply to @method_call_message.
 
-Before calling this the socket must be bound to a local address using
-g_socket_bind().
+Since: 2.26
 
-To set the maximum amount of outstanding clients, use
-g_socket_set_listen_backlog().
+</description>
+<parameters>
+<parameter name="method_call_message">
+<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
+create a reply message to.
+</parameter_description>
+</parameter>
+</parameters>
+<return>  #GDBusMessage. Free with g_object_unref().
 
-Since: 2.22
+</return>
+</function>
+
+<function name="g_dbus_message_new_signal">
+<description>
+Creates a new #GDBusMessage for a signal emission.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="path">
+<parameter_description> A valid object path.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="interface_">
+<parameter_description> A valid D-Bus interface name.
+</parameter_description>
+</parameter>
+<parameter name="signal">
+<parameter_description> A valid signal name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
+<return> A #GDBusMessage. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_dbus_connection_new">
+<function name="g_dbus_message_print">
 <description>
-Asynchronously sets up a D-Bus connection for exchanging D-Bus messages
-with the end represented by @stream.
-
-If @observer is not %NULL it may be used to control the
-authentication process.
-
-When the operation is finished, @callback will be invoked. You can
-then call g_dbus_connection_new_finish() to get the result of the
-operation.
+Produces a human-readable multi-line description of @message.
 
-This is a asynchronous failable constructor. See
-g_dbus_connection_new_sync() for the synchronous
-version.
+The contents of the description has no ABI guarantees, the contents
+and formatting is subject to change at any time. Typical output
+looks something like this:
+&lt;programlisting&gt;
+Type:    method-call
+Flags:   none
+Version: 0
+Serial:  4
+Headers:
+path -&gt; objectpath '/org/gtk/GDBus/TestObject'
+interface -&gt; 'org.gtk.GDBus.TestInterface'
+member -&gt; 'GimmeStdout'
+destination -&gt; ':1.146'
+Body: ()
+UNIX File Descriptors:
+(none)
+&lt;/programlisting&gt;
+or
+&lt;programlisting&gt;
+Type:    method-return
+Flags:   no-reply-expected
+Version: 0
+Serial:  477
+Headers:
+reply-serial -&gt; uint32 4
+destination -&gt; ':1.159'
+sender -&gt; ':1.146'
+num-unix-fds -&gt; uint32 1
+Body: ()
+UNIX File Descriptors:
+fd 12: dev=0:10,mode=020620,ino=5,uid=500,gid=5,rdev=136:2,size=0,atime=1273085037,mtime=1273085851,ctime=1272982635
+&lt;/programlisting&gt;
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> A #GIOStream.
-</parameter_description>
-</parameter>
-<parameter name="guid">
-<parameter_description> The GUID to use if a authenticating as a server or %NULL.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags describing how to make the connection.
+<parameter name="indent">
+<parameter_description> Indentation level.
 </parameter_description>
 </parameter>
-<parameter name="observer">
-<parameter_description> A #GDBusAuthObserver or %NULL.
+</parameters>
+<return> A string that should be freed with g_free().
+
+</return>
+</function>
+
+<function name="g_dbus_message_set_body">
+<description>
+Sets the body @message. As a side-effect the
+%G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE header field is set to the
+type string of @body (or cleared if @body is %NULL).
+
+If @body is floating, @message assumes ownership of @body.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="body">
+<parameter_description> Either %NULL or a #GVariant that is a tuple.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dbus_message_set_byte_order">
+<description>
+Sets the byte order of @message.
+
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter name="byte_order">
+<parameter_description> The byte order.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_initable_new">
+<function name="g_dbus_message_set_destination">
 <description>
-Helper function for constructing #GInitiable object. This is
-similar to g_object_new() but also initializes the object
-and returns %NULL, setting an error on failure.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION header field.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> a #GType supporting #GInitable.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of the first property, or %NULL if no
-properties
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dbus_message_set_error_name">
+<description>
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME header field.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description>  the value if the first property, followed by and other property
-value pairs, and ended by %NULL.
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GObject, or %NULL on error
-
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_backend_changed">
+<function name="g_dbus_message_set_flags">
 <description>
-Signals that a single key has possibly changed.  Backend
-implementations should call this if a key has possibly changed its
-value.
+Sets the flags to set on @message.
 
- key must be a valid key (ie: starting with a slash, not containing
-'//', and not ending with a slash).
+Since: 2.26
 
-The implementation must call this function during any call to
-g_settings_backend_write(), before the call returns (except in the
-case that no keys are actually changed and it cares to detect this
-fact).  It may not rely on the existence of a mainloop for
-dispatching the signal later.
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> Flags for @message that are set (typically values from the #GDBusMessageFlags
+enumeration bitwise ORed together).
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-The implementation may call this function at any other time it likes
-in response to other events (such as changes occuring outside of the
-program).  These calls may originate from a mainloop or may originate
-in response to any other action (including from calls to
-g_settings_backend_write()).
+<function name="g_dbus_message_set_header">
+<description>
+Sets a header field on @message.
 
-In the case that this call is in response to a call to
-g_settings_backend_write() then @origin_tag must be set to the same
-value that was passed to that call.
+If @value is floating, @message assumes ownership of @value.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #GSettingsBackend implementation
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of the key
+<parameter name="header_field">
+<parameter_description> A 8-bit unsigned integer (typically a value from the #GDBusMessageHeaderField enumeration)
 </parameter_description>
 </parameter>
-<parameter name="origin_tag">
-<parameter_description> the origin tag
+<parameter name="value">
+<parameter_description> A #GVariant to set the header field or %NULL to clear the header field.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_set_attribute_uint32">
+<function name="g_dbus_message_set_interface">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE header field.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> an unsigned 32-bit integer.
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_can_start_degraded">
+<function name="g_dbus_message_set_member">
 <description>
-Checks if a drive can be started degraded.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_MEMBER header field.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive can be started degraded, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_get_name">
+<function name="g_dbus_message_set_message_type">
 <description>
-Gets the name of @volume.
+Sets @message to be of @type.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> A 8-bit unsigned integer (typically a value from the #GDBusMessageType enumeration).
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name for the given @volume. The returned string should 
-be freed with g_free() when no longer needed.
-</return>
+<return></return>
 </function>
 
-<function name="g_converter_input_stream_new">
+<function name="g_dbus_message_set_num_unix_fds">
 <description>
-Creates a new converter input stream for the @base_stream.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS header field.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GInputStream
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="converter">
-<parameter_description> a #GConverter
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GInputStream.
-</return>
+<return></return>
 </function>
 
-<function name="g_simple_async_result_complete_in_idle">
+<function name="g_dbus_message_set_path">
 <description>
-Completes an asynchronous function in an idle handler in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread that @simple was initially created in.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_PATH header field.
 
-Calling this function takes a reference to @simple for as long as
-is needed to complete the call.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_address_get_for_bus_sync">
+<function name="g_dbus_message_set_reply_serial">
 <description>
-Synchronously looks up the D-Bus address for the well-known message
-bus instance specified by @bus_type. This may involve using various
-platform specific mechanisms.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL header field.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> A #GBusType.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A valid D-Bus address string for @bus_type or %NULL if @error is set.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_set_attribute_byte_string">
+<function name="g_dbus_message_set_sender">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_SENDER header field.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> a byte string.
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_inet_address_get_is_link_local">
+<function name="g_dbus_message_set_serial">
 <description>
-Tests whether @address is a link-local address (that is, if it
-identifies a host on a local network that is not connected to the
-Internet).
+Sets the serial for @message.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="serial">
+<parameter_description> A #guint32.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is a link-local address.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_emblem_new_with_origin">
+<function name="g_dbus_message_set_signature">
 <description>
-Creates a new emblem for @icon.
+Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE header field.
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a GIcon containing the icon.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="origin">
-<parameter_description> a GEmblemOrigin enum defining the emblem's origin
+<parameter name="value">
+<parameter_description> The value to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GEmblem.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_client_set_socket_type">
+<function name="g_dbus_message_set_unix_fd_list">
 <description>
-Sets the socket type of the socket client.
-The sockets created by this object will be of the specified
-type.
+Sets the UNIX file descriptors associated with @message. As a
+side-effect the %G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS header
+field is set to the number of fds in @fd_list (or cleared if
+ fd_list is %NULL).
 
-It doesn't make sense to specify a type of %G_SOCKET_TYPE_DATAGRAM,
-as GSocketClient is used for connection oriented services.
+This method is only available on UNIX.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GSocketType
+<parameter name="fd_list">
+<parameter_description> A #GUnixFDList or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_has_media">
+<function name="g_dbus_message_to_blob">
 <description>
-Checks if the @drive has media. Note that the OS may not be polling
-the drive for media changes; see g_drive_is_media_check_automatic()
-for more details.
+Serializes @message to a blob. The byte order returned by
+g_dbus_message_get_byte_order() will be used.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
+</parameter_description>
+</parameter>
+<parameter name="out_size">
+<parameter_description> Return location for size of generated blob.
+</parameter_description>
+</parameter>
+<parameter name="capabilities">
+<parameter_description> A #GDBusCapabilityFlags describing what protocol features are supported.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @drive has media, %FALSE otherwise.
+<return> A pointer to a valid binary D-Bus message of @out_size bytes
+generated by @message or %NULL if @error is set. Free with g_free().
+
 </return>
 </function>
 
-<function name="g_file_attribute_matcher_enumerate_namespace">
+<function name="g_dbus_message_to_gerror">
 <description>
-Checks if the matcher will match all of the keys in a given namespace.
-This will always return %TRUE if a wildcard character is in use (e.g. if 
-matcher was created with &quot;standard::*&quot; and @ns is &quot;standard&quot;, or if matcher was created
-using &quot;*&quot; and namespace is anything.) 
+If @message is not of type %G_DBUS_MESSAGE_TYPE_ERROR does
+nothing and returns %FALSE.
 
-TODO: this is awkwardly worded.
+Otherwise this method encodes the error in @message as a #GError
+using g_dbus_error_set_dbus_error() using the information in the
+%G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME header field of @message as
+well as the first string item in @message's body.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="matcher">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="message">
+<parameter_description> A #GDBusMessage.
 </parameter_description>
 </parameter>
-<parameter name="ns">
-<parameter_description> a string containing a file attribute namespace.
+<parameter name="error">
+<parameter_description> The #GError to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the matcher matches all of the entries
-in the given @ns, %FALSE otherwise.
+<return> %TRUE if @error was set, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_simple_async_result_get_op_res_gboolean">
+<function name="g_dbus_method_info_ref">
 <description>
-Gets the operation result boolean from within the asynchronous result.
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="info">
+<parameter_description> A #GDBusMethodInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation's result was %TRUE, %FALSE
-if the operation's result was %FALSE.
+<return> The same @info.
+
 </return>
 </function>
 
-<function name="g_dbus_node_info_new_for_xml">
+<function name="g_dbus_method_info_unref">
 <description>
-Parses @xml_data and returns a #GDBusNodeInfo representing the data.
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="xml_data">
-<parameter_description> Valid D-Bus introspection XML.
+<parameter name="info">
+<parameter_description> A #GDBusMethodInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dbus_method_invocation_get_connection">
+<description>
+Gets the #GDBusConnection the method was invoked on.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusNodeInfo structure or %NULL if @error is set. Free
-with g_dbus_node_info_unref().
+<return>A #GDBusConnection. Do not free, it is owned by @invocation.
 
 </return>
 </function>
 
-<function name="g_simple_async_result_set_op_res_gssize">
+<function name="g_dbus_method_invocation_get_interface_name">
 <description>
-Sets the operation result within the asynchronous result to
-the given @op_res.
+Gets the name of the D-Bus interface the method was invoked on.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="op_res">
-<parameter_description> a #gssize.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A string. Do not free, it is owned by @invocation.
+
+</return>
 </function>
 
-<function name="g_socket_get_local_address">
+<function name="g_dbus_method_invocation_get_message">
 <description>
-Try to get the local address of a bound socket. This is only
-useful if the socket has been bound to a local address,
-either explicitly or implicitly when connecting.
+Gets the #GDBusMessage for the method invocation. This is useful if
+you need to use low-level protocol features, such as UNIX file
+descriptor passing, that cannot be properly expressed in the
+#GVariant API.
 
-Since: 2.22
+See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
+linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
+low-level API to send and receive UNIX file descriptors.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress or %NULL on error.
-Free the returned object with g_object_unref().
+<return> #GDBusMessage. Do not free, it is owned by @invocation.
 
 </return>
 </function>
 
-<function name="g_unix_output_stream_get_fd">
+<function name="g_dbus_method_invocation_get_method_info">
 <description>
-Return the UNIX file descriptor that the stream writes to.
+Gets information about the method call, if any.
 
-Since: 2.20
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GUnixOutputStream
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The file descriptor of @stream
+<return> A #GDBusMethodInfo or %NULL. Do not free, it is owned by @invocation.
 
 </return>
 </function>
 
-<function name="mime_info_cache_reload">
+<function name="g_dbus_method_invocation_get_method_name">
 <description>
-Reload the mime information for the @dir.
+Gets the name of the method that was invoked.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="dir">
-<parameter_description> directory path which needs reloading.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A string. Do not free, it is owned by @invocation.
+
+</return>
 </function>
 
-<function name="g_application_get_instance">
+<function name="g_dbus_method_invocation_get_object_path">
 <description>
-In the normal case where there is exactly one #GApplication instance
-in this process, return that instance.  If there are multiple, the
-first one created will be returned.  Otherwise, return %NULL.
+Gets the object path the method was invoked on.
 
 Since: 2.26
 
 </description>
 <parameters>
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
+</parameter_description>
+</parameter>
 </parameters>
-<return> The primary instance of #GApplication,
-or %NULL if none is set
+<return> A string. Do not free, it is owned by @invocation.
 
 </return>
 </function>
 
-<function name="g_loadable_icon_load_finish">
+<function name="g_dbus_method_invocation_get_parameters">
 <description>
-Finishes an asynchronous icon load started in g_loadable_icon_load_async().
+Gets the parameters of the method invocation.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GLoadableIcon.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a location to store the type of the loaded icon, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GInputStream to read the icon from.
+<return> A #GVariant. Do not free, it is owned by @invocation.
+
 </return>
 </function>
 
-<function name="g_inet_address_get_native_size">
+<function name="g_dbus_method_invocation_get_sender">
 <description>
-Gets the size of the native raw binary address for @address. This
-is the size of the data that you get from g_inet_address_to_bytes().
+Gets the bus name that invoked the method.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes used for the native version of @address.
+<return> A string. Do not free, it is owned by @invocation.
 
 </return>
 </function>
 
-<function name="g_resolver_get_default">
+<function name="g_dbus_method_invocation_get_user_data">
 <description>
-Gets the default #GResolver. You should unref it when you are done
-with it. #GResolver may use its reference count as a hint about how
-many threads/processes, etc it should allocate for concurrent DNS
-resolutions.
+Gets the @user_data #gpointer passed to g_dbus_connection_register_object().
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the default #GResolver.
+<return> A #gpointer.
 
 </return>
 </function>
 
-<function name="g_dbus_connection_signal_unsubscribe">
+<function name="g_dbus_method_invocation_return_dbus_error">
 <description>
-Unsubscribes from signals.
+Finishes handling a D-Bus method call by returning an error.
+
+This method will free @invocation, you cannot use it afterwards.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
-<parameter name="subscription_id">
-<parameter_description> A subscription id obtained from g_dbus_connection_signal_subscribe().
+<parameter name="error_name">
+<parameter_description> A valid D-Bus error name.
+</parameter_description>
+</parameter>
+<parameter name="error_message">
+<parameter_description> A valid D-Bus error message.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_query_info">
+<function name="g_dbus_method_invocation_return_error">
 <description>
-Gets the requested information about specified @file. The result
-is a #GFileInfo object that contains key-value attributes (such as 
-the type or size of the file).
-
-The @attributes value is a string that specifies the file attributes that
-should be gathered. It is not an error if it's not possible to read a particular
-requested attribute from a file - it just won't be set. @attributes should
-be a comma-separated list of attributes or attribute wildcards. The wildcard &quot;*&quot;
-means all attributes, and a wildcard like &quot;standard::*&quot; means all attributes in the standard
-namespace. An example attribute query be &quot;standard::*,owner::user&quot;.
-The standard attributes are available as defines, like #G_FILE_ATTRIBUTE_STANDARD_NAME.
+Finishes handling a D-Bus method call by returning an error.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+See g_dbus_error_encode_gerror() for details about what error name
+will be returned on the wire. In a nutshell, if the given error is
+registered using g_dbus_error_register_error() the name given
+during registration is used. Otherwise, a name of the form
+&lt;literal&gt;org.gtk.GDBus.UnmappedGError.Quark...&lt;/literal&gt; is
+used. This provides transparent mapping of #GError between
+applications using GDBus.
 
-For symlinks, normally the information about the target of the
-symlink is returned, rather than information about the symlink itself.
-However if you pass #G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS in @flags the
-information about the symlink itself will be returned. Also, for symlinks
-that point to non-existing files the information about the symlink itself
-will be returned.
+If you are writing an application intended to be portable,
+&lt;emphasis&gt;always&lt;/emphasis&gt; register errors with g_dbus_error_register_error()
+or use g_dbus_method_invocation_return_dbus_error().
 
-If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
-Other errors are possible too, and depend on what kind of filesystem the file is on.
+This method will free @invocation, you cannot use it afterwards.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description> an attribute query string.
+<parameter name="domain">
+<parameter_description> A #GQuark for the #GError error domain.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileQueryInfoFlags.
+<parameter name="code">
+<parameter_description> The error code.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="format">
+<parameter_description> printf()-style format.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError.
+<parameter name="Varargs">
+<parameter_description> Parameters for @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileInfo for the given @file, or %NULL on error.
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_has_attribute">
+<function name="g_dbus_method_invocation_return_error_literal">
 <description>
-Checks if a file info structure has an attribute named @attribute.
+Like g_dbus_method_invocation_return_error() but without printf()-style formatting.
+
+This method will free @invocation, you cannot use it afterwards.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="domain">
+<parameter_description> A #GQuark for the #GError error domain.
+</parameter_description>
+</parameter>
+<parameter name="code">
+<parameter_description> The error code.
+</parameter_description>
+</parameter>
+<parameter name="message">
+<parameter_description> The error message.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @Ginfo has an attribute named @attribute, 
-%FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_drive_get_volumes">
+<function name="g_dbus_method_invocation_return_error_valist">
 <description>
-Get a list of mountable volumes for @drive.
+Like g_dbus_method_invocation_return_error() but intended for
+language bindings.
 
-The returned list should be freed with g_list_free(), after
-its elements have been unreffed with g_object_unref().
+This method will free @invocation, you cannot use it afterwards.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> A #GQuark for the #GError error domain.
+</parameter_description>
+</parameter>
+<parameter name="code">
+<parameter_description> The error code.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> printf()-style format.
+</parameter_description>
+</parameter>
+<parameter name="var_args">
+<parameter_description> #va_list of parameters for @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GList containing any #GVolume objects on the given @drive.
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_connection_start_message_processing">
+<function name="g_dbus_method_invocation_return_gerror">
 <description>
-If @connection was created with
-%G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING, this method
-starts processing messages. Does nothing on if @connection wasn't
-created with this flag or if the method has already been called.
+Like g_dbus_method_invocation_return_error() but takes a #GError
+instead of the error domain, error code and message.
+
+This method will free @invocation, you cannot use it afterwards.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> A #GError.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_desktop_app_info_set_desktop_env">
+<function name="g_dbus_method_invocation_return_value">
 <description>
-Sets the name of the desktop that the application is running in.
-This is used by g_app_info_should_show() to evaluate the
-&lt;literal&gt;OnlyShowIn&lt;/literal&gt; and &lt;literal&gt;NotShowIn&lt;/literal&gt;
-desktop entry fields.
+Finishes handling a D-Bus method call by returning @parameters.
+If the @parameters GVariant is floating, it is consumed.
 
-The &lt;ulink url=&quot;http://standards.freedesktop.org/menu-spec/latest/&quot;&gt;Desktop 
-Menu specification&lt;/ulink&gt; recognizes the following:
-&lt;simplelist&gt;
-&lt;member&gt;GNOME&lt;/member&gt;
-&lt;member&gt;KDE&lt;/member&gt;
-&lt;member&gt;ROX&lt;/member&gt;
-&lt;member&gt;XFCE&lt;/member&gt;
-&lt;member&gt;Old&lt;/member&gt; 
-&lt;/simplelist&gt;
+It is an error if @parameters is not of the right format.
 
-Should be called only once; subsequent calls are ignored.
+This method will free @invocation, you cannot use it afterwards.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="desktop_env">
-<parameter_description> a string specifying what desktop this is
+<parameter name="invocation">
+<parameter_description> A #GDBusMethodInvocation.
+</parameter_description>
+</parameter>
+<parameter name="parameters">
+<parameter_description> A #GVariant tuple with out parameters for the method or %NULL if not passing any parameters.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_io_stream_query_info">
+<function name="g_dbus_node_info_generate_xml">
 <description>
-Queries a file io stream for the given @attributes.
-This function blocks while querying the stream. For the asynchronous
-version of this function, see g_file_io_stream_query_info_async().
-While the stream is blocked, the stream will set the pending flag
-internally, and any other operations on the stream will fail with
-%G_IO_ERROR_PENDING.
-
-Can fail if the stream was already closed (with @error being set to
-%G_IO_ERROR_CLOSED), the stream has pending operations (with @error being
-set to %G_IO_ERROR_PENDING), or if querying info is not supported for
-the stream's interface (with @error being set to %G_IO_ERROR_NOT_SUPPORTED). I
-all cases of failure, %NULL will be returned.
+Appends an XML representation of @info (and its children) to @string_builder.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be set, and %NULL will
-be returned.
+This function is typically used for generating introspection XML documents at run-time for
+handling the &lt;literal&gt;org.freedesktop.DBus.Introspectable.Introspect&lt;/literal&gt; method.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileIOStream.
-</parameter_description>
-</parameter>
-<parameter name="attributes">
-<parameter_description> a file attribute query string.
+<parameter name="info">
+<parameter_description> A #GDBusNodeInfo.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="indent">
+<parameter_description> Indentation level.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="string_builder">
+<parameter_description> A #GString to to append XML data to.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileInfo for the @stream, or %NULL on error.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_content_type_can_be_executable">
+<function name="g_dbus_node_info_lookup_interface">
 <description>
-Checks if a content type can be executable. Note that for instance
-things like text files can be executables (i.e. scripts and batch files).
+Looks up information about an interface.
+
+This cost of this function is O(n) in number of interfaces.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a content type string
+<parameter name="info">
+<parameter_description> A #GDBusNodeInfo.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> A D-Bus interface name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the file type corresponds to a type that
-can be executable, %FALSE otherwise.
+<return> A #GDBusInterfaceInfo or %NULL if not found. Do not free, it is owned by @info.
+
 </return>
 </function>
 
-<function name="g_mount_eject_finish">
+<function name="g_dbus_node_info_new_for_xml">
 <description>
-Finishes ejecting a mount. If any errors occurred during the operation, 
- error will be set to contain the errors and %FALSE will be returned.
+Parses @xml_data and returns a #GDBusNodeInfo representing the data.
 
-Deprecated: 2.22: Use g_mount_eject_with_operation_finish() instead.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="xml_data">
+<parameter_description> Valid D-Bus introspection XML.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> Return location for error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount was successfully ejected. %FALSE otherwise.
+<return> A #GDBusNodeInfo structure or %NULL if @error is set. Free
+with g_dbus_node_info_unref().
 
 </return>
 </function>
 
-<function name="g_output_stream_set_pending">
+<function name="g_dbus_node_info_ref">
 <description>
-Sets @stream to have actions pending. If the pending flag is
-already set or @stream is closed, it will return %FALSE and set
- error 
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter name="info">
+<parameter_description> A #GDBusNodeInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if pending was previously unset and is now set.
+<return> The same @info.
+
 </return>
 </function>
 
-<function name="g_dbus_message_set_serial">
+<function name="g_dbus_node_info_unref">
 <description>
-Sets the serial for @message.
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="serial">
-<parameter_description> A #guint32.
+<parameter name="info">
+<parameter_description> A #GDBusNodeInfo.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_get_attribute_status">
+<function name="g_dbus_property_info_ref">
 <description>
-Gets the attribute status for an attribute key.
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
+Since: 2.26
 
 </description>
 <parameters>
 <parameter name="info">
-<parameter_description> a #GFileInfo
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key
+<parameter_description> A #GDBusPropertyInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeStatus for the given @attribute, or 
-%G_FILE_ATTRIBUTE_STATUS_UNSET if the key is invalid.
+<return> The same @info.
 
 </return>
 </function>
 
-<function name="g_cancellable_new">
+<function name="g_dbus_property_info_unref">
 <description>
-Creates a new #GCancellable object.
-
-Applications that want to start one or more operations
-that should be cancellable should create a #GCancellable
-and pass it to the operations.
-
-One #GCancellable can be used in multiple consecutive
-operations, but not in multiple concurrent operations.
-
-
-</description>
-<parameters>
-</parameters>
-<return> a #GCancellable.
-</return>
-</function>
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
 
-<function name="g_mount_operation_set_anonymous">
-<description>
-Sets the mount operation to use an anonymous user if @anonymous is %TRUE.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
-</parameter_description>
-</parameter>
-<parameter name="anonymous">
-<parameter_description> boolean value.
+<parameter name="info">
+<parameter_description> A #GDBusPropertyInfo.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_input_stream_skip">
+<function name="g_dbus_proxy_call">
 <description>
-Tries to skip @count bytes from the stream. Will block during the operation.
+Asynchronously invokes the @method_name method on @proxy.
 
-This is identical to g_input_stream_read(), from a behaviour standpoint,
-but the bytes that are skipped are not returned to the user. Some
-streams have an implementation that is more efficient than reading the data.
+If @method_name contains any dots, then @name is split into interface and
+method name parts. This allows using @proxy for invoking methods on
+other interfaces.
 
-This function is optional for inherited classes, as the default implementation
-emulates it using read.
+If the #GDBusConnection associated with @proxy is closed then
+the operation will fail with %G_IO_ERROR_CLOSED. If
+ cancellable is canceled, the operation will fail with
+%G_IO_ERROR_CANCELLED. If @parameters contains a value not
+compatible with the D-Bus protocol, the operation fails with
+%G_IO_ERROR_INVALID_ARGUMENT.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
-operation was partially finished when the operation was cancelled the
-partial result will be returned, without an error.
+If the @parameters #GVariant is floating, it is consumed. This allows
+convenient 'inline' use of g_variant_new(), e.g.:
+|[
+g_dbus_proxy_call (proxy,
+&quot;TwoStrings&quot;,
+g_variant_new (&quot;(ss)&quot;,
+&quot;Thing One&quot;,
+&quot;Thing Two&quot;),
+G_DBUS_CALL_FLAGS_NONE,
+-1,
+NULL,
+(GAsyncReadyCallback) two_strings_done,
+&amp;data);
+]|
 
+This is an asynchronous method. When the operation is finished,
+ callback will be invoked in the
+&lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default
+main loop&lt;/link&gt; of the thread you are calling this method from.
+You can then call g_dbus_proxy_call_finish() to get the result of
+the operation. See g_dbus_proxy_call_sync() for the synchronous
+version of this method.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GInputStream.
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of bytes that will be skipped from the stream
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter name="method_name">
+<parameter_description> Name of method to invoke.
 </parameter_description>
 </parameter>
-</parameters>
-<return> Number of bytes skipped, or -1 on error
-</return>
-</function>
-
-<function name="g_file_output_stream_query_info_async">
-<description>
-Asynchronously queries the @stream for a #GFileInfo. When completed,
- callback will be called with a #GAsyncResult which can be used to 
-finish the operation with g_file_output_stream_query_info_finish().
-
-For the synchronous version of this function, see 
-g_file_output_stream_query_info().
-
-
-</description>
-<parameters>
-<parameter name="stream">
-<parameter_description> a #GFileOutputStream.
+<parameter name="parameters">
+<parameter_description> A #GVariant tuple with parameters for the signal or %NULL if not passing parameters.
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description> a file attribute query string.
+<parameter name="flags">
+<parameter_description> Flags from the #GDBusCallFlags enumeration.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;gio-GIOScheduler&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
+<parameter name="timeout_msec">
+<parameter_description> The timeout in milliseconds (with %G_MAXINT meaning
+&quot;infinite&quot;) or -1 to use the proxy default timeout.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
+care about the result of the method invocation.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter_description> The data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mount_operation_set_password_save">
+<function name="g_dbus_proxy_call_finish">
 <description>
-Sets the state of saving passwords for the mount operation.
+Finishes an operation started with g_dbus_proxy_call().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
-<parameter name="save">
-<parameter_description> a set of #GPasswordSave flags.
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_proxy_call().
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %NULL if @error is set. Otherwise a #GVariant tuple with
+return values. Free with g_variant_unref().
+
+</return>
 </function>
 
-<function name="g_data_input_stream_read_line">
+<function name="g_dbus_proxy_call_sync">
 <description>
-Reads a line from the data input stream.
+Synchronously invokes the @method_name method on @proxy.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+If @method_name contains any dots, then @name is split into interface and
+method name parts. This allows using @proxy for invoking methods on
+other interfaces.
 
+If the #GDBusConnection associated with @proxy is disconnected then
+the operation will fail with %G_IO_ERROR_CLOSED. If
+ cancellable is canceled, the operation will fail with
+%G_IO_ERROR_CANCELLED. If @parameters contains a value not
+compatible with the D-Bus protocol, the operation fails with
+%G_IO_ERROR_INVALID_ARGUMENT.
+
+If the @parameters #GVariant is floating, it is consumed. This allows
+convenient 'inline' use of g_variant_new(), e.g.:
+|[
+g_dbus_proxy_call_sync (proxy,
+&quot;TwoStrings&quot;,
+g_variant_new (&quot;(ss)&quot;,
+&quot;Thing One&quot;,
+&quot;Thing Two&quot;),
+G_DBUS_CALL_FLAGS_NONE,
+-1,
+NULL,
+&amp;error);
+]|
+
+The calling thread is blocked until a reply is received. See
+g_dbus_proxy_call() for the asynchronous version of this
+method.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> a #gsize to get the length of the data read in.
+<parameter name="method_name">
+<parameter_description> Name of method to invoke.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="parameters">
+<parameter_description> A #GVariant tuple with parameters for the signal or %NULL if not passing parameters.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="flags">
+<parameter_description> Flags from the #GDBusCallFlags enumeration.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a string with the line that was read in (without the newlines).
-Set @length to a #gsize to get the length of the read line.
-On an error, it will return %NULL and @error will be set. If there's no
-content to read, it will still return %NULL, but @error won't be set.
-</return>
-</function>
-
-<function name="g_app_info_launch_default_for_uri">
-<description>
-Utility function that launches the default application
-registered to handle the specified uri. Synchronous I/O
-is done on the uri to detect the type of the file if
-required.
-
-
-</description>
-<parameters>
-<parameter name="uri">
-<parameter_description> the uri to show
+<parameter name="timeout_msec">
+<parameter_description> The timeout in milliseconds (with %G_MAXINT meaning
+&quot;infinite&quot;) or -1 to use the proxy default timeout.
 </parameter_description>
 </parameter>
-<parameter name="launch_context">
-<parameter_description> an optional #GAppLaunchContext.
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
+<return> %NULL if @error is set. Otherwise a #GVariant tuple with
+return values. Free with g_variant_unref().
+
 </return>
 </function>
 
-<function name="g_application_unregistered_try_new">
+<function name="g_dbus_proxy_get_cached_property">
 <description>
-This function is similar to g_application_try_new(), but also
-sets the GApplication:register property to %FALSE.  You can later
-call g_application_register() to complete initialization.
+Looks up the value for a property from the cache. This call does no
+blocking IO.
+
+If @proxy has an expected interface (see
+#GDBusProxy:g-interface-info), then @property_name (for existence)
+is checked against it.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="appid">
-<parameter_description> System-dependent application identifier
-</parameter_description>
-</parameter>
-<parameter name="argc">
-<parameter_description> Number of arguments in @argv
-</parameter_description>
-</parameter>
-<parameter name="argv">
-<parameter_description> Argument vector, usually from the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of main() 
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError
+<parameter name="property_name">
+<parameter_description> Property name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An application instance
+<return> A reference to the #GVariant instance that holds the value
+for @property_name or %NULL if the value is not in the cache. The
+returned reference must be freed with g_variant_unref().
 
 </return>
 </function>
 
-<function name="g_credentials_get_unix_user">
+<function name="g_dbus_proxy_get_cached_property_names">
 <description>
-Tries to get the UNIX user identifier from @credentials. This
-method is only available on UNIX platforms.
-
-This operation can fail if #GCredentials is not supported on the
-OS or if the native credentials type does not contain information
-about the UNIX user.
+Gets the names of all cached properties on @proxy.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The UNIX user identifier or -1 if @error is set.
+<return> A %NULL-terminated array of strings or %NULL if @proxy has
+no cached properties. Free the returned array with g_strfreev().
 
 </return>
 </function>
 
-<function name="g_file_enumerator_set_pending">
+<function name="g_dbus_proxy_get_connection">
 <description>
-Sets the file enumerator as having pending operations.
+Gets the connection @proxy is for.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
-</parameter_description>
-</parameter>
-<parameter name="pending">
-<parameter_description> a boolean value.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GDBusConnection owned by @proxy. Do not free.
+
+</return>
 </function>
 
 <function name="g_dbus_proxy_get_default_timeout">
@@ -8364,1337 +9612,1251 @@ Since: 2.26
 </return>
 </function>
 
-<function name="g_converter_output_stream_new">
+<function name="g_dbus_proxy_get_flags">
 <description>
-Creates a new converter output stream for the @base_stream.
+Gets the flags that @proxy was constructed with.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GOutputStream
-</parameter_description>
-</parameter>
-<parameter name="converter">
-<parameter_description> a #GConverter
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GOutputStream.
+<return> Flags from the #GDBusProxyFlags enumeration.
+
 </return>
 </function>
 
-<function name="g_io_error_from_errno">
+<function name="g_dbus_proxy_get_interface_info">
 <description>
-Converts errno.h error codes into GIO error codes.
+Returns the #GDBusInterfaceInfo, if any, specifying the minimal
+interface that @proxy conforms to.
 
+See the #GDBusProxy:g-interface-info property for more details.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="err_no">
-<parameter_description> Error number as defined in errno.h.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GIOErrorEnum value for the given errno.h error number.
+<return> A #GDBusInterfaceInfo or %NULL. Do not unref the returned
+object, it is owned by @proxy.
+
 </return>
 </function>
 
-<function name="g_mount_get_icon">
+<function name="g_dbus_proxy_get_interface_name">
 <description>
-Gets the icon for @mount.
+Gets the D-Bus interface name @proxy is for.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon.
-The returned object should be unreffed with 
-g_object_unref() when no longer needed.
+<return> A string owned by @proxy. Do not free.
+
 </return>
 </function>
 
-<function name="g_mount_operation_reply">
+<function name="g_dbus_proxy_get_name">
 <description>
-Emits the #GMountOperation::reply signal.
+Gets the name that @proxy was constructed for.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GMountOperationResult
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A string owned by @proxy. Do not free.
+
+</return>
 </function>
 
-<function name="g_dbus_message_get_path">
+<function name="g_dbus_proxy_get_name_owner">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_PATH header field.
+The unique name that owns the name that @proxy is for or %NULL if
+no-one currently owns that name. You may connect to the
+#GObject::notify signal to track changes to the
+#GDBusProxy:g-name-owner property.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
+<return> The name owner or %NULL if no name owner exists. Free with g_free().
 
 </return>
 </function>
 
-<function name="g_dbus_property_info_ref">
+<function name="g_dbus_proxy_get_object_path">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Gets the object path @proxy is for.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusPropertyInfo
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
+<return> A string owned by @proxy. Do not free.
 
 </return>
 </function>
 
-<function name="g_file_attribute_matcher_matches_only">
+<function name="g_dbus_proxy_new">
 <description>
-Checks if a attribute matcher only matches a given attribute. Always
-returns %FALSE if &quot;*&quot; was used when creating the matcher.
+Creates a proxy for accessing @interface_name on the remote object
+at @object_path owned by @name at @connection and asynchronously
+loads D-Bus properties unless the
+%G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES flag is used. Connect to
+the #GDBusProxy::g-properties-changed signal to get notified about
+property changes.
+
+If the %G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS flag is not set, also sets up
+match rules for signals. Connect to the #GDBusProxy::g-signal signal
+to handle signals from the remote object.
+
+If @name is a well-known name and the
+%G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag isn't set and no name
+owner currently exists, the message bus will be requested to launch
+a name owner for the name.
+
+This is a failable asynchronous constructor - when the proxy is
+ready, @callback will be invoked and you can use
+g_dbus_proxy_new_finish() to get the result.
+
+See g_dbus_proxy_new_sync() and for a synchronous version of this constructor.
 
+See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="matcher">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="flags">
+<parameter_description> Flags used when constructing the proxy.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the matcher only matches @attribute. %FALSE otherwise.
-</return>
-</function>
-
-<function name="g_drive_can_eject">
-<description>
-Checks if a drive can be ejected.
-
-
-</description>
-<parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> An object path.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> A D-Bus interface name.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> Callback function to invoke when the proxy is ready.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> User data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive can be ejected, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_address_new_from_native">
+<function name="g_dbus_proxy_new_finish">
 <description>
-Creates a #GSocketAddress subclass corresponding to the native
-&lt;type&gt;struct sockaddr&lt;/type&gt; @native.
+Finishes creating a #GDBusProxy.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="native">
-<parameter_description> a pointer to a &lt;type&gt;struct sockaddr&lt;/type&gt;
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to g_dbus_proxy_new().
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the size of the memory location pointed to by @native
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSocketAddress if @native could successfully be converted,
-otherwise %NULL.
+<return> A #GDBusProxy or %NULL if @error is set. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_buffered_input_stream_fill_async">
+<function name="g_dbus_proxy_new_for_bus">
 <description>
-Reads data into @stream's buffer asynchronously, up to @count size.
- io_priority can be used to prioritize reads. For the synchronous
-version of this function, see g_buffered_input_stream_fill().
+Like g_dbus_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
 
-If @count is -1 then the attempted read size is equal to the number
-of bytes that are required to fill the buffer.
+See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedInputStream
+<parameter name="bus_type">
+<parameter_description> A #GBusType.
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> the number of bytes that will be read from the stream
+<parameter name="flags">
+<parameter_description> Flags used when constructing the proxy.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> A bus name (well-known or unique).
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> An object path.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> A D-Bus interface name.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback
+<parameter_description> Callback function to invoke when the proxy is ready.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> a #gpointer
+<parameter_description> User data to pass to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_output_stream_close_finish">
+<function name="g_dbus_proxy_new_for_bus_finish">
 <description>
-Closes an output stream.
+Finishes creating a #GDBusProxy.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="res">
+<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to g_dbus_proxy_new_for_bus().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if stream was successfully closed, %FALSE otherwise.
+<return> A #GDBusProxy or %NULL if @error is set. Free with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_inet_address_get_is_mc_node_local">
+<function name="g_dbus_proxy_new_for_bus_sync">
 <description>
-Tests whether @address is a node-local multicast address.
+Like g_dbus_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
 
-Since: 2.22
+See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="bus_type">
+<parameter_description> A #GBusType.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @address is a node-local multicast address.
-
-</return>
-</function>
-
-<function name="g_drive_start_finish">
-<description>
-Finishes starting a drive.
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="flags">
+<parameter_description> Flags used when constructing the proxy.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> A bus name (well-known or unique).
+</parameter_description>
+</parameter>
+<parameter name="object_path">
+<parameter_description> An object path.
+</parameter_description>
+</parameter>
+<parameter name="interface_name">
+<parameter_description> A D-Bus interface name.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the drive has been started successfully,
-%FALSE otherwise.
+<return> A #GDBusProxy or %NULL if error is set. Free with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_file_attribute_info_list_new">
+<function name="g_dbus_proxy_new_sync">
 <description>
-Creates a new file attribute info list.
+Creates a proxy for accessing @interface_name on the remote object
+at @object_path owned by @name at @connection and synchronously
+loads D-Bus properties unless the
+%G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES flag is used.
 
+If the %G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS flag is not set, also sets up
+match rules for signals. Connect to the #GDBusProxy::g-signal signal
+to handle signals from the remote object.
 
-</description>
-<parameters>
-</parameters>
-<return> a #GFileAttributeInfoList.
-</return>
-</function>
+If @name is a well-known name and the
+%G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag isn't set and no name
+owner currently exists, the message bus will be requested to launch
+a name owner for the name.
 
-<function name="g_dbus_message_get_interface">
-<description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE header field.
+This is a synchronous failable constructor. See g_dbus_proxy_new()
+and g_dbus_proxy_new_finish() for the asynchronous version.
+
+See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="connection">
+<parameter_description> A #GDBusConnection.
 </parameter_description>
 </parameter>
-</parameters>
-<return> The value.
-
-</return>
-</function>
-
-<function name="g_output_stream_write_async">
-<description>
-Request an asynchronous write of @count bytes from @buffer into 
-the stream. When the operation is finished @callback will be called.
-You can then call g_output_stream_write_finish() to get the result of the 
-operation.
-
-During an async request no other sync and async calls are allowed, 
-and will result in %G_IO_ERROR_PENDING errors. 
-
-A value of @count larger than %G_MAXSSIZE will cause a 
-%G_IO_ERROR_INVALID_ARGUMENT error.
-
-On success, the number of bytes written will be passed to the
- callback  It is not an error if this is not the same as the 
-requested size, as it can happen e.g. on a partial I/O error, 
-but generally we try to write as many bytes as requested. 
-
-Any outstanding I/O request with higher priority (lower numerical 
-value) will be executed before an outstanding request with lower 
-priority. Default priority is %G_PRIORITY_DEFAULT.
-
-The asyncronous methods have a default fallback that uses threads 
-to implement asynchronicity, so they are optional for inheriting 
-classes. However, if you override one you must override all.
-
-For the synchronous, blocking version of this function, see 
-g_output_stream_write().
-
-</description>
-<parameters>
-<parameter name="stream">
-<parameter_description> A #GOutputStream.
+<parameter name="flags">
+<parameter_description> Flags used when constructing the proxy.
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> the buffer containing the data to write. 
+<parameter name="info">
+<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> the number of bytes to write
+<parameter name="name">
+<parameter_description> A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the io priority of the request.
+<parameter name="object_path">
+<parameter_description> An object path.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="interface_name">
+<parameter_description> A D-Bus interface name.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="error">
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GDBusProxy or %NULL if error is set. Free with g_object_unref().
+
+</return>
 </function>
 
-<function name="get_all_desktop_entries_for_mime_type">
+<function name="g_dbus_proxy_set_cached_property">
 <description>
-Returns all the desktop ids for @mime_type. The desktop files
-are listed in an order so that default applications are listed before
-non-default ones, and handlers for inherited mimetypes are listed
-after the base ones.
+If @value is not %NULL, sets the cached value for the property with
+name @property_name to the value in @value.
 
-Optionally doesn't list the desktop ids given in the @except 
+If @value is %NULL, then the cached value is removed from the
+property cache.
+
+If @proxy has an expected interface (see
+#GDBusProxy:g-interface-info), then @property_name (for existence)
+and @value (for the type) is checked against it.
+
+If the @value #GVariant is floating, it is consumed. This allows
+convenient 'inline' use of g_variant_new(), e.g.
+|[
+g_dbus_proxy_set_cached_property (proxy,
+&quot;SomeProperty&quot;,
+g_variant_new (&quot;(si)&quot;,
+&quot;A String&quot;,
+42));
+]|
+
+Normally you will not need to use this method since @proxy is
+tracking changes using the
+&lt;literal&gt;org.freedesktop.DBus.Properties.PropertiesChanged&lt;/literal&gt;
+D-Bus signal. However, for performance reasons an object may decide
+to not use this signal for some properties and instead use a
+proprietary out-of-band mechanism to transmit changes.
+
+As a concrete example, consider an object with a property
+&lt;literal&gt;ChatroomParticipants&lt;/literal&gt; which is an array of
+strings. Instead of transmitting the same (long) array every time
+the property changes, it is more efficient to only transmit the
+delta using e.g. signals &lt;literal&gt;ChatroomParticipantJoined(String
+name)&lt;/literal&gt; and &lt;literal&gt;ChatroomParticipantParted(String
+name)&lt;/literal&gt;.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mime_type">
-<parameter_description> a mime type.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy
 </parameter_description>
 </parameter>
-<parameter name="except">
-<parameter_description> NULL or a strv list
+<parameter name="property_name">
+<parameter_description> Property name.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> Value for the property or %NULL to remove it from the cache.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList containing the desktop ids which claim
-to handle @mime_type.
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_address_get_family">
+<function name="g_dbus_proxy_set_default_timeout">
 <description>
-Gets the socket family type of @address.
+Sets the timeout to use if -1 (specifying default timeout) is
+passed as @timeout_msec in the g_dbus_proxy_call() and
+g_dbus_proxy_call_sync() functions.
 
-Since: 2.22
+See the #GDBusProxy:g-default-timeout property for more details.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GSocketAddress
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy.
+</parameter_description>
+</parameter>
+<parameter name="timeout_msec">
+<parameter_description> Timeout in milliseconds.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the socket family type of @address.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_set_keepalive">
+<function name="g_dbus_proxy_set_interface_info">
 <description>
-Sets or unsets the %SO_KEEPALIVE flag on the underlying socket. When
-this flag is set on a socket, the system will attempt to verify that the
-remote socket endpoint is still present if a sufficiently long period of
-time passes with no data being exchanged. If the system is unable to
-verify the presence of the remote endpoint, it will automatically close
-the connection.
-
-This option is only functional on certain kinds of sockets. (Notably,
-%G_SOCKET_PROTOCOL_TCP sockets.)
+Ensure that interactions with @proxy conform to the given
+interface.  For example, when completing a method call, if the type
+signature of the message isn't what's expected, the given #GError
+is set.  Signals that have a type signature mismatch are simply
+dropped.
 
-The exact time between pings is system- and protocol-dependent, but will
-normally be at least two hours. Most commonly, you would set this flag
-on a server socket if you want to allow clients to remain idle for long
-periods of time, but also want to ensure that connections are eventually
-garbage-collected if clients crash or become unreachable.
+See the #GDBusProxy:g-interface-info property for more details.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="proxy">
+<parameter_description> A #GDBusProxy
 </parameter_description>
 </parameter>
-<parameter name="keepalive">
-<parameter_description> Value for the keepalive flag
+<parameter name="info">
+<parameter_description> Minimum interface this proxy conforms to or %NULL to unset.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_network_service_get_domain">
+<function name="g_dbus_server_get_client_address">
 <description>
-Gets the domain that @srv serves. This might be either UTF-8 or
-ASCII-encoded, depending on what @srv was created with.
+Gets a D-Bus address string that can be used by clients to connect
+to @server.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="srv">
-<parameter_description> a #GNetworkService
+<parameter name="server">
+<parameter_description> A #GDBusServer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @srv's domain name
+<return> A D-Bus address string. Do not free, the string is owned
+by @server.
 
 </return>
 </function>
 
-<function name="g_unix_fd_message_steal_fds">
+<function name="g_dbus_server_get_flags">
 <description>
-Returns the array of file descriptors that is contained in this
-object.
-
-After this call, the descriptors are no longer contained in
- message  Further calls will return an empty list (unless more
-descriptors have been added).
-
-The return result of this function must be freed with g_free().
-The caller is also responsible for closing all of the file
-descriptors.
-
-If @length is non-%NULL then it is set to the number of file
-descriptors in the returned array. The returned array is also
-terminated with -1.
-
-This function never returns %NULL. In case there are no file
-descriptors contained in @message, an empty array is returned.
+Gets the flags for @server.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> a #GUnixFDMessage
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> pointer to the length of the returned array, or %NULL
+<parameter name="server">
+<parameter_description> A #GDBusServer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of file descriptors
-
-</return>
-</function>
-
-<function name="g_content_types_get_registered">
-<description>
-Gets a list of strings containing all the registered content types
-known to the system. The list and its data should be freed using
-&lt;programlisting&gt;
-g_list_foreach (list, g_free, NULL);
-g_list_free (list);
-&lt;/programlisting&gt;
-
+<return> A set of flags from the #GDBusServerFlags enumeration.
 
-</description>
-<parameters>
-</parameters>
-<return> #GList of the registered content types
 </return>
 </function>
 
-<function name="g_emblemed_icon_add_emblem">
+<function name="g_dbus_server_get_guid">
 <description>
-Adds @emblem to the #GList of #GEmblem &lt;!-- --&gt;s.
+Gets the GUID for @server.
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="emblemed">
-<parameter_description> a #GEmblemedIcon
-</parameter_description>
-</parameter>
-<parameter name="emblem">
-<parameter_description> a #GEmblem
+<parameter name="server">
+<parameter_description> A #GDBusServer.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A D-Bus GUID. Do not free this string, it is owned by @server.
+
+</return>
 </function>
 
-<function name="g_dbus_connection_get_peer_credentials">
+<function name="g_dbus_server_is_active">
 <description>
-Gets the credentials of the authenticated peer. This will always
-return %NULL unless @connection acted as a server
-(e.g. %G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER was passed)
-when set up and the client passed credentials as part of the
-authentication process.
-
-In a message bus setup, the message bus is always the server and
-each application is a client. So this method will always return
-%NULL for message bus clients.
+Gets whether @server is active.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="server">
+<parameter_description> A #GDBusServer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GCredentials or %NULL if not available. Do not free
-this object, it is owned by @connection.
+<return> %TRUE if server is active, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_socket_condition_wait">
+<function name="g_dbus_server_new_sync">
 <description>
-Waits for @condition to become true on @socket. When the condition
-is met, %TRUE is returned.
+Creates a new D-Bus server that listens on the first address in
+ address that works.
 
-If @cancellable is cancelled before the condition is met, or if the
-socket has a timeout set and it is reached before the condition is
-met, then %FALSE is returned and @error, if non-%NULL, is set to
-the appropriate value (%G_IO_ERROR_CANCELLED or
-%G_IO_ERROR_TIMED_OUT).
+Once constructed, you can use g_dbus_server_get_client_address() to
+get a D-Bus address string that clients can use to connect.
 
-Since: 2.22
+Connect to the #GDBusServer::new-connection signal to handle
+incoming connections.
+
+The returned #GDBusServer isn't active - you have to start it with
+g_dbus_server_start().
+
+See &lt;xref linkend=&quot;gdbus-peer-to-peer&quot;/&gt; for how #GDBusServer can
+be used.
+
+This is a synchronous failable constructor. See
+g_dbus_server_new() for the asynchronous version.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="address">
+<parameter_description> A D-Bus address.
 </parameter_description>
 </parameter>
-<parameter name="condition">
-<parameter_description> a #GIOCondition mask to wait for
+<parameter name="flags">
+<parameter_description> Flags from the #GDBusServerFlags enumeration.
+</parameter_description>
+</parameter>
+<parameter name="guid">
+<parameter_description> A D-Bus GUID.
+</parameter_description>
+</parameter>
+<parameter name="observer">
+<parameter_description> A #GDBusAuthObserver or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError pointer, or %NULL
+<parameter_description> Return location for server or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the condition was met, %FALSE otherwise
+<return> A #GDBusServer or %NULL if @error is set. Free with
+g_object_unref().
 
 </return>
 </function>
 
-<function name="g_dbus_message_to_gerror">
+<function name="g_dbus_server_start">
 <description>
-If @message is not of type %G_DBUS_MESSAGE_TYPE_ERROR does
-nothing and returns %FALSE.
-
-Otherwise this method encodes the error in @message as a #GError
-using g_dbus_error_set_dbus_error() using the information in the
-%G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME header field of @message as
-well as the first string item in @message's body.
+Starts @server.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="server">
+<parameter_description> A #GDBusServer.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> The #GError to set.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dbus_server_stop">
+<description>
+Stops @server.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="server">
+<parameter_description> A #GDBusServer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @error was set, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_emblem_get_icon">
+<function name="g_dbus_signal_info_ref">
 <description>
-Gives back the icon from @emblem.
+If @info is statically allocated does nothing. Otherwise increases
+the reference count.
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="emblem">
-<parameter_description> a #GEmblem from which the icon should be extracted.
+<parameter name="info">
+<parameter_description> A #GDBusSignalInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon. The returned object belongs to the emblem
-and should not be modified or freed.
+<return> The same @info.
 
 </return>
 </function>
 
-<function name="g_file_info_set_symlink_target">
+<function name="g_dbus_signal_info_unref">
 <description>
-Sets the %G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET attribute in the file info 
-to the given symlink target.
+If @info is statically allocated, does nothing. Otherwise decreases
+the reference count of @info. When its reference count drops to 0,
+the memory used is freed.
+
+Since: 2.26
 
 </description>
 <parameters>
 <parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="symlink_target">
-<parameter_description> a static string containing a path to a symlink target.
+<parameter_description> A #GDBusSignalInfo.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_fd_list_get_length">
+<function name="g_desktop_app_info_get_filename">
 <description>
-Gets the length of @list (ie: the number of file descriptors
-contained within).
+When @info was created from a known filename, return it.  In some
+situations such as the #GDesktopAppInfo returned from
+g_desktop_app_info_new_from_keyfile(), this function will return %NULL.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GUnixFDList
+<parameter name="info">
+<parameter_description> a #GDesktopAppInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of @list
-
+<return> The full path to the file for @info, or %NULL if not known.
 </return>
 </function>
 
-<function name="g_win32_input_stream_get_close_handle">
+<function name="g_desktop_app_info_get_is_hidden">
 <description>
-Returns whether the handle of @stream will be
-closed when the stream is closed.
+A desktop file is hidden if the Hidden key in it is
+set to True.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GWin32InputStream
+<parameter name="info">
+<parameter_description> a #GDesktopAppInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the handle is closed when done
-
+<return> %TRUE if hidden, %FALSE otherwise. 
 </return>
 </function>
 
-<function name="g_dbus_connection_new_for_address">
+<function name="g_desktop_app_info_launch_uris_as_manager">
 <description>
-Asynchronously connects and sets up a D-Bus client connection for
-exchanging D-Bus messages with an endpoint specified by @address
-which must be in the D-Bus address format.
+This function performs the equivalent of g_app_info_launch_uris(),
+but is intended primarily for operating system components that
+launch applications.  Ordinary applications should use
+g_app_info_launch_uris().
 
-This constructor can only be used to initiate client-side
-connections - use g_dbus_connection_new() if you need to act as the
-server. In particular, @flags cannot contain the
-%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER or
-%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS flags.
-
-When the operation is finished, @callback will be invoked. You can
-then call g_dbus_connection_new_finish() to get the result of the
-operation.
+In contrast to g_app_info_launch_uris(), all processes created will
+always be run directly as children as if by the UNIX fork()/exec()
+calls.
 
-If @observer is not %NULL it may be used to control the
-authentication process.
-
-This is a asynchronous failable constructor. See
-g_dbus_connection_new_for_address_sync() for the synchronous
-version.
-
-Since: 2.26
+This guarantee allows additional control over the exact environment
+of the child processes, which is provided via a setup function
+ setup, as well as the process identifier of each child process via
+ pid_callback   See g_spawn_async() for more information about the
+semantics of the @setup function.
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> A D-Bus address.
+<parameter name="appinfo">
+<parameter_description> a #GDesktopAppInfo
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags describing how to make the connection.
+<parameter name="uris">
+<parameter_description> List of URIs
 </parameter_description>
 </parameter>
-<parameter name="observer">
-<parameter_description> A #GDBusAuthObserver or %NULL.
+<parameter name="launch_context">
+<parameter_description> a #GAppLaunchContext
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="spawn_flags">
+<parameter_description> #GSpawnFlags, used for each process
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
+<parameter name="user_setup">
+<parameter_description> a #GSpawnChildSetupFunc, used once for
+each process.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter name="user_setup_data">
+<parameter_description> User data for @user_setup
+</parameter_description>
+</parameter>
+<parameter name="pid_callback">
+<parameter_description> Callback for child processes
+</parameter_description>
+</parameter>
+<parameter name="pid_callback_data">
+<parameter_description> User data for @callback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_get_display_name">
+<function name="g_desktop_app_info_lookup_get_default_for_uri_scheme">
 <description>
-Gets a display name for a file.
+Gets the default application for launching applications 
+using this URI scheme for a particular GDesktopAppInfoLookup
+implementation.
 
+The GDesktopAppInfoLookup interface and this function is used
+to implement g_app_info_get_default_for_uri_scheme() backends
+in a GIO module. There is no reason for applications to use it
+directly. Applications should use g_app_info_get_default_for_uri_scheme().
+
+Deprecated: The #GDesktopAppInfoLookup interface is deprecated and unused by gio.
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="lookup">
+<parameter_description> a #GDesktopAppInfoLookup
 </parameter_description>
 </parameter>
-</parameters>
-<return> a string containing the display name.
-</return>
-</function>
-
-<function name="g_dbus_server_get_client_address">
-<description>
-Gets a D-Bus address string that can be used by clients to connect
-to @server.
-
-Since: 2.26
-
-</description>
-<parameters>
-<parameter name="server">
-<parameter_description> A #GDBusServer.
+<parameter name="uri_scheme">
+<parameter_description> a string containing a URI scheme.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A D-Bus address string. Do not free, the string is owned
-by @server.
+<return> #GAppInfo for given @uri_scheme or %NULL on error.
 
 </return>
 </function>
 
-<function name="g_socket_client_connect_to_service">
+<function name="g_desktop_app_info_new">
 <description>
-Attempts to create a TCP connection to a service.
-
-This call looks up the SRV record for @service at @domain for the
-&quot;tcp&quot; protocol.  It then attempts to connect, in turn, to each of
-the hosts providing the service until either a connection succeeds
-or there are no hosts remaining.
+Creates a new #GDesktopAppInfo based on a desktop file id. 
 
-Upon a successful connection, a new #GSocketConnection is constructed
-and returned.  The caller owns this new object and must drop their
-reference to it when finished with it.
+A desktop file id is the basename of the desktop file, including the 
+.desktop extension. GIO is looking for a desktop file with this name 
+in the &lt;filename&gt;applications&lt;/filename&gt; subdirectories of the XDG data
+directories (i.e. the directories specified in the 
+&lt;envar&gt;XDG_DATA_HOME&lt;/envar&gt; and &lt;envar&gt;XDG_DATA_DIRS&lt;/envar&gt; environment 
+variables). GIO also supports the prefix-to-subdirectory mapping that is
+described in the &lt;ulink url=&quot;http://standards.freedesktop.org/menu-spec/latest/&quot;&gt;Menu Spec&lt;/ulink&gt; 
+(i.e. a desktop id of kde-foo.desktop will match
+&lt;filename&gt;/usr/share/applications/kde/foo.desktop&lt;/filename&gt;).
 
-In the event of any failure (DNS error, service not found, no hosts
-connectable) %NULL is returned and @error (if non-%NULL) is set
-accordingly.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketConnection
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> a domain name
-</parameter_description>
-</parameter>
-<parameter name="service">
-<parameter_description> the name of the service to connect to
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a pointer to a #GError, or %NULL
+<parameter name="desktop_id">
+<parameter_description> the desktop file id
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection if successful, or %NULL on error
+<return> a new #GDesktopAppInfo, or %NULL if no desktop file with that id
 </return>
 </function>
 
-<function name="g_socket_address_enumerator_next_async">
+<function name="g_desktop_app_info_new_from_filename">
 <description>
-Asynchronously retrieves the next #GSocketAddress from @enumerator
-and then calls @callback, which must call
-g_socket_address_enumerator_next_finish() to get the result.
+Creates a new #GDesktopAppInfo.
+
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GSocketAddressEnumerator
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="filename">
+<parameter_description> the path of a desktop file, in the GLib filename encoding
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GDesktopAppInfo or %NULL on error.
+</return>
 </function>
 
-<function name="g_output_stream_flush_async">
+<function name="g_desktop_app_info_new_from_keyfile">
 <description>
-Flushes a stream asynchronously.
-For behaviour details see g_output_stream_flush().
+Creates a new #GDesktopAppInfo.
 
-When the operation is finished @callback will be 
-called. You can then call g_output_stream_flush_finish() to get the 
-result of the operation.
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the io priority of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="key_file">
+<parameter_description> an opened #GKeyFile
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GDesktopAppInfo or %NULL on error.
+
+</return>
 </function>
 
-<function name="g_socket_speaks_ipv4">
+<function name="g_desktop_app_info_set_desktop_env">
 <description>
-Checks if a socket is capable of speaking IPv4.
-
-IPv4 sockets are capable of speaking IPv4.  On some operating systems
-and under some combinations of circumstances IPv6 sockets are also
-capable of speaking IPv4.  See RFC 3493 section 3.7 for more
-information.
+Sets the name of the desktop that the application is running in.
+This is used by g_app_info_should_show() to evaluate the
+&lt;literal&gt;OnlyShowIn&lt;/literal&gt; and &lt;literal&gt;NotShowIn&lt;/literal&gt;
+desktop entry fields.
 
-No other types of sockets are currently considered as being capable
-of speaking IPv4.
+The &lt;ulink url=&quot;http://standards.freedesktop.org/menu-spec/latest/&quot;&gt;Desktop 
+Menu specification&lt;/ulink&gt; recognizes the following:
+&lt;simplelist&gt;
+&lt;member&gt;GNOME&lt;/member&gt;
+&lt;member&gt;KDE&lt;/member&gt;
+&lt;member&gt;ROX&lt;/member&gt;
+&lt;member&gt;XFCE&lt;/member&gt;
+&lt;member&gt;Old&lt;/member&gt; 
+&lt;/simplelist&gt;
 
-Since: 2.22
+Should be called only once; subsequent calls are ignored.
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="desktop_env">
+<parameter_description> a string specifying what desktop this is
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if this socket can be used with IPv4.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_win32_output_stream_new">
+<function name="g_drive_can_eject">
 <description>
-Creates a new #GWin32OutputStream for the given @handle.
-
-If @close_handle, is %TRUE, the handle will be closed when the
-output stream is destroyed.
+Checks if a drive can be ejected.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="handle">
-<parameter_description> a Win32 file handle
-</parameter_description>
-</parameter>
-<parameter name="close_handle">
-<parameter_description> %TRUE to close the handle when done
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GOutputStream
-
+<return> %TRUE if the @drive can be ejected, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_dbus_message_set_message_type">
+<function name="g_drive_can_poll_for_media">
 <description>
-Sets @message to be of @type.
+Checks if a drive can be polled for media changes.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> A 8-bit unsigned integer (typically a value from the #GDBusMessageType enumeration).
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the @drive can be polled for media changes,
+%FALSE otherwise.
+</return>
 </function>
 
-<function name="g_unix_fd_list_steal_fds">
+<function name="g_drive_can_start">
 <description>
-Returns the array of file descriptors that is contained in this
-object.
-
-After this call, the descriptors are no longer contained in
- list  Further calls will return an empty list (unless more
-descriptors have been added).
-
-The return result of this function must be freed with g_free().
-The caller is also responsible for closing all of the file
-descriptors.  The file descriptors in the array are set to
-close-on-exec.
-
-If @length is non-%NULL then it is set to the number of file
-descriptors in the returned array. The returned array is also
-terminated with -1.
-
-This function never returns %NULL. In case there are no file
-descriptors contained in @list, an empty array is returned.
+Checks if a drive can be started.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GUnixFDList
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> pointer to the length of the returned array, or %NULL
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of file descriptors
+<return> %TRUE if the @drive can be started, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_file_monitor_cancel">
+<function name="g_drive_can_start_degraded">
 <description>
-Cancels a file monitor.
+Checks if a drive can be started degraded.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="monitor">
-<parameter_description> a #GFileMonitor.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if monitor was cancelled.
+<return> %TRUE if the @drive can be started degraded, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_mount_operation_get_choice">
+<function name="g_drive_can_stop">
 <description>
-Gets a choice from the mount operation.
+Checks if a drive can be stopped.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an integer containing an index of the user's choice from 
-the choice's list, or %0.
+<return> %TRUE if the @drive can be stopped, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_file_set_attribute_uint32">
+<function name="g_drive_eject">
 <description>
-Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_UINT32 to @value. 
-If @attribute is of a different type, this operation will fail.
+Asynchronously ejects a drive.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+When the operation is finished, @callback will be called.
+You can then call g_drive_eject_finish() to obtain the
+result of the operation.
 
+Deprecated: 2.22: Use g_drive_eject_with_operation() instead.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a #guint32 containing the attribute's new value.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> a #GFileQueryInfoFlags.
+<parameter_description> flags affecting the unmount if required for eject
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @attribute was successfully set to @value 
-in the @file, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_get_mount">
+<function name="g_drive_eject_finish">
 <description>
-Gets the mount for the @volume.
+Finishes ejecting a drive.
 
+Deprecated: 2.22: Use g_drive_eject_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="drive">
+<parameter_description> a #GDrive.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GMount or %NULL if @volume isn't mounted.
-The returned object should be unreffed with g_object_unref()
-when no longer needed.
+<return> %TRUE if the drive has been ejected successfully,
+%FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_application_try_new">
+<function name="g_drive_eject_with_operation">
 <description>
-This function is similar to g_application_new(), but allows for
-more graceful fallback if the environment doesn't support the
-basic #GApplication functionality.
+Ejects a drive. This is an asynchronous operation, and is
+finished by calling g_drive_eject_with_operation_finish() with the @drive
+and #GAsyncResult data returned in the @callback.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="appid">
-<parameter_description> System-dependent application identifier
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
-<parameter name="argc">
-<parameter_description> Number of arguments in @argv
+<parameter name="flags">
+<parameter_description> flags affecting the unmount if required for eject
 </parameter_description>
 </parameter>
-<parameter name="argv">
-<parameter_description> Argument vector, usually from the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of main() 
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to avoid
+user interaction.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An application instance
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_has_prefix">
+<function name="g_drive_eject_with_operation_finish">
 <description>
-Checks whether @file has the prefix specified by @prefix. In other word, 
-if the names of inital elements of @file&lt;!-- --&gt;s pathname match @prefix.
-Only full pathname elements are matched, so a path like /foo is not
-considered a prefix of /foobar, only of /foo/bar.
-
-This call does no i/o, as it works purely on names. As such it can 
-sometimes return %FALSE even if @file is inside a @prefix (from a 
-filesystem point of view), because the prefix of @file is an alias 
-of @prefix.
+Finishes ejecting a drive. If any errors occurred during the operation,
+ error will be set to contain the errors and %FALSE will be returned.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
-<parameter name="prefix">
-<parameter_description> input #GFile.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return>  %TRUE if the @files's parent, grandparent, etc is @prefix. 
-%FALSE otherwise.
+<return> %TRUE if the drive was successfully ejected. %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_unix_mount_point_get_device_path">
+<function name="g_drive_enumerate_identifiers">
 <description>
-Gets the device path for a unix mount point.
+Gets the kinds of identifiers that @drive has. 
+Use g_drive_get_identifer() to obtain the identifiers
+themselves.
 
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint.
+<parameter name="drive">
+<parameter_description> a #GDrive
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the device path.
+<return> a %NULL-terminated
+array of strings containing kinds of identifiers. Use g_strfreev()
+to free.
 </return>
 </function>
 
-<function name="g_mount_get_drive">
+<function name="g_drive_get_icon">
 <description>
-Gets the drive for the @mount.
-
-This is a convenience method for getting the #GVolume and then
-using that object to get the #GDrive.
+Gets the icon for @drive.
 
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GDrive or %NULL if @mount is not associated with a volume or a drive.
-The returned object should be unreffed with 
-g_object_unref() when no longer needed.
+<return> #GIcon for the @drive.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_drive_eject">
+<function name="g_drive_get_identifier">
 <description>
-Asynchronously ejects a drive.
-
-When the operation is finished, @callback will be called.
-You can then call g_drive_eject_finish() to obtain the
-result of the operation.
+Gets the identifier of the given kind for @drive.
 
-Deprecated: 2.22: Use g_drive_eject_with_operation() instead.
 
 </description>
 <parameters>
 <parameter name="drive">
-<parameter_description> a #GDrive.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the unmount if required for eject
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> a #GDrive
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @callback
+<parameter name="kind">
+<parameter_description> the kind of identifier to return
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string containing the
+requested identfier, or %NULL if the #GDrive
+doesn't have this kind of identifier.
+</return>
 </function>
 
-<function name="g_file_get_parse_name">
+<function name="g_drive_get_name">
 <description>
-Gets the parse name of the @file.
-A parse name is a UTF-8 string that describes the
-file such that one can get the #GFile back using
-g_file_parse_name().
-
-This is generally used to show the #GFile as a nice
-full-pathname kind of string in a user interface,
-like in a location entry.
-
-For local files with names that can safely be converted
-to UTF8 the pathname is used, otherwise the IRI is used
-(a form of URI that allows UTF8 characters unescaped).
-
-This call does no blocking i/o.
+Gets the name of @drive.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the #GFile's parse name. The returned 
-string should be freed with g_free() when no longer needed.
+<return> a string containing @drive's name. The returned 
+string should be freed when no longer needed.
 </return>
 </function>
 
-<function name="g_unix_socket_address_new">
+<function name="g_drive_get_start_stop_type">
 <description>
-Creates a new #GUnixSocketAddress for @path.
-
-To create abstract socket addresses, on systems that support that,
-use g_unix_socket_address_new_abstract().
+Gets a hint about how a drive can be started/stopped.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> the socket path
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixSocketAddress
+<return> A value from the #GDriveStartStopType enumeration.
 
 </return>
 </function>
 
-<function name="g_file_enumerator_next_files_finish">
+<function name="g_drive_get_volumes">
 <description>
-Finishes the asynchronous operation started with g_file_enumerator_next_files_async().
+Get a list of mountable volumes for @drive.
+
+The returned list should be freed with g_list_free(), after
+its elements have been unreffed with g_object_unref().
 
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GFileInfo&lt;!----&gt;s. You must free the list with 
-g_list_free() and unref the infos with g_object_unref() when you're 
-done with them.
+<return> #GList containing any #GVolume objects on the given @drive.
 </return>
 </function>
 
-<function name="g_drive_get_start_stop_type">
+<function name="g_drive_has_media">
 <description>
-Gets a hint about how a drive can be started/stopped.
+Checks if the @drive has media. Note that the OS may not be polling
+the drive for media changes; see g_drive_is_media_check_automatic()
+for more details.
 
-Since: 2.22
 
 </description>
 <parameters>
@@ -9703,210 +10865,137 @@ Since: 2.22
 </parameter_description>
 </parameter>
 </parameters>
-<return> A value from the #GDriveStartStopType enumeration.
-
+<return> %TRUE if @drive has media, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_bus_own_name">
+<function name="g_drive_has_volumes">
 <description>
-Starts acquiring @name on the bus specified by @bus_type and calls
- name_acquired_handler and @name_lost_handler when the name is
-acquired respectively lost. Callbacks will be invoked in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this function from.
-
-You are guaranteed that one of the @name_acquired_handler and @name_lost_handler
-callbacks will be invoked after calling this function - there are three
-possible cases:
-&lt;itemizedlist&gt;
-&lt;listitem&gt;&lt;para&gt;
- name_lost_handler with a %NULL connection (if a connection to the bus can't be made).
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;listitem&gt;&lt;para&gt;
- bus_acquired_handler then @name_lost_handler (if the name can't be obtained)
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;listitem&gt;&lt;para&gt;
- bus_acquired_handler then @name_acquired_handler (if the name was obtained).
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/itemizedlist&gt;
-When you are done owning the name, just call g_bus_unown_name()
-with the owner id this function returns.
-
-If the name is acquired or lost (for example another application
-could acquire the name if you allow replacement or the application
-currently owning the name exits), the handlers are also invoked. If the
-#GDBusConnection that is used for attempting to own the name
-closes, then @name_lost_handler is invoked since it is no
-longer possible for other processes to access the process.
-
-You cannot use g_bus_own_name() several times for the same name (unless
-interleaved with calls to g_bus_unown_name()) - only the first call
-will work.
-
-Another guarantee is that invocations of @name_acquired_handler
-and @name_lost_handler are guaranteed to alternate; that
-is, if @name_acquired_handler is invoked then you are
-guaranteed that the next time one of the handlers is invoked, it
-will be @name_lost_handler. The reverse is also true.
-
-If you plan on exporting objects (using e.g.
-g_dbus_connection_register_object()), note that it is generally too late
-to export the objects in @name_acquired_handler. Instead, you can do this
-in @bus_acquired_handler since you are guaranteed that this will run
-before @name is requested from the bus.
-
-This behavior makes it very simple to write applications that wants
-to own names and export objects, see &lt;xref linkend=&quot;gdbus-owning-names&quot;/&gt;.
-Simply register objects to be exported in @bus_acquired_handler and
-unregister the objects (if any) in @name_lost_handler.
+Check if @drive has any mountable volumes.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> The type of bus to own a name on.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> The well-known name to own.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
-</parameter_description>
-</parameter>
-<parameter name="bus_acquired_handler">
-<parameter_description> Handler to invoke when connected to the bus of type @bus_type or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name_acquired_handler">
-<parameter_description> Handler to invoke when @name is acquired or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name_lost_handler">
-<parameter_description> Handler to invoke when @name is lost or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> User data to pass to handlers.
-</parameter_description>
-</parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function for freeing @user_data or %NULL.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unown_name() to stop owning the name.
-
+<return> %TRUE if the @drive contains volumes, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_equal">
+<function name="g_drive_is_media_check_automatic">
 <description>
-Checks equality of two given #GFile&lt;!-- --&gt;s. Note that two
-#GFile&lt;!-- --&gt;s that differ can still refer to the same
-file on the filesystem due to various forms of filename
-aliasing.
-
-This call does no blocking i/o.
+Checks if @drive is capabable of automatically detecting media changes.
 
 
 </description>
 <parameters>
-<parameter name="file1">
-<parameter_description> the first #GFile.
-</parameter_description>
-</parameter>
-<parameter name="file2">
-<parameter_description> the second #GFile.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @file1 and @file2 are equal.
-%FALSE if either is not a #GFile.
+<return> %TRUE if the @drive is capabable of automatically detecting 
+media changes, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_dbus_proxy_get_flags">
+<function name="g_drive_is_media_removable">
 <description>
-Gets the flags that @proxy was constructed with.
+Checks if the @drive supports removable media.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Flags from the #GDBusProxyFlags enumeration.
-
+<return> %TRUE if @drive supports removable media, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_themed_icon_new">
+<function name="g_drive_poll_for_media">
 <description>
-Creates a new themed icon for @iconname.
+Asynchronously polls @drive to see if media has been inserted or removed.
 
+When the operation is finished, @callback will be called.
+You can then call g_drive_poll_for_media_finish() to obtain the
+result of the operation.
 
 </description>
 <parameters>
-<parameter name="iconname">
-<parameter_description> a string containing an icon name.
+<parameter name="drive">
+<parameter_description> a #GDrive.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GThemedIcon.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_get_is_hidden">
+<function name="g_drive_poll_for_media_finish">
 <description>
-Checks if a file is hidden.
+Finishes an operation started with g_drive_poll_for_media() on a drive.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="drive">
+<parameter_description> a #GDrive.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the file is a hidden file, %FALSE otherwise.
+<return> %TRUE if the drive has been poll_for_mediaed successfully,
+%FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_set_attributes_async">
+<function name="g_drive_start">
 <description>
-Asynchronously sets the attributes of @file with @info.
+Asynchronously starts a drive.
 
-For more details, see g_file_set_attributes_from_info() which is
-the synchronous version of this call.
+When the operation is finished, @callback will be called.
+You can then call g_drive_start_finish() to obtain the
+result of the operation.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_set_attributes_finish() to get the result of the operation.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> a #GFileQueryInfoFlags.
+<parameter_description> flags affecting the start operation.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to avoid
+user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -9914,69 +11003,99 @@ of the request.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback. 
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> a #gpointer.
+<parameter_description> user data to pass to @callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_inet_address_get_is_mc_global">
+<function name="g_drive_start_finish">
 <description>
-Tests whether @address is a global multicast address.
+Finishes starting a drive.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="drive">
+<parameter_description> a #GDrive.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is a global multicast address.
+<return> %TRUE if the drive has been started successfully,
+%FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_volume_monitor_get_mounts">
+<function name="g_drive_stop">
 <description>
-Gets a list of the mounts on the system.
+Asynchronously stops a drive.
 
-The returned list should be freed with g_list_free(), after
-its elements have been unreffed with g_object_unref().
+When the operation is finished, @callback will be called.
+You can then call g_drive_stop_finish() to obtain the
+result of the operation.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="volume_monitor">
-<parameter_description> a #GVolumeMonitor.
+<parameter name="drive">
+<parameter_description> a #GDrive.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags affecting the unmount if required for stopping.
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to avoid
+user interaction.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GMount objects.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_create_readwrite_finish">
+<function name="g_drive_stop_finish">
 <description>
-Finishes an asynchronous file create operation started with
-g_file_create_readwrite_async().
+Finishes stopping a drive.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile
+<parameter name="drive">
+<parameter_description> a #GDrive.
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -9984,180 +11103,203 @@ Since: 2.22
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileIOStream or %NULL on error.
-Free the returned object with g_object_unref().
+<return> %TRUE if the drive has been stopped successfully,
+%FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_socket_close">
+<function name="g_emblem_get_icon">
 <description>
-Closes the socket, shutting down any active connection.
+Gives back the icon from @emblem.
 
-Closing a socket does not wait for all outstanding I/O operations
-to finish, so the caller should not rely on them to be guaranteed
-to complete even if the close returns with no error.
+Since: 2.18
 
-Once the socket is closed, all other operations will return
-%G_IO_ERROR_CLOSED. Closing a socket multiple times will not
-return an error.
+</description>
+<parameters>
+<parameter name="emblem">
+<parameter_description> a #GEmblem from which the icon should be extracted.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GIcon. The returned object belongs to
+the emblem and should not be modified or freed.
 
-Sockets will be automatically closed when the last reference
-is dropped, but you might want to call this function to make sure
-resources are released as early as possible.
+</return>
+</function>
 
-Beware that due to the way that TCP works, it is possible for
-recently-sent data to be lost if either you close a socket while the
-%G_IO_IN condition is set, or else if the remote connection tries to
-send something to you after you close the socket but before it has
-finished reading all of the data you sent. There is no easy generic
-way to avoid this problem; the easiest fix is to design the network
-protocol such that the client will never send data &quot;out of turn&quot;.
-Another solution is for the server to half-close the connection by
-calling g_socket_shutdown() with only the @shutdown_write flag set,
-and then wait for the client to notice this and close its side of the
-connection, after which the server can safely call g_socket_close().
-(This is what #GTcpConnection does if you call
-g_tcp_connection_set_graceful_disconnect(). But of course, this
-only works if the client will close its connection after the server
-does.)
+<function name="g_emblem_get_origin">
+<description>
+Gets the origin of the emblem.
 
-Since: 2.22
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="emblem">
+<parameter_description> a #GEmblem
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameters>
+<return> the origin of the emblem
+
+</return>
+</function>
+
+<function name="g_emblem_new">
+<description>
+Creates a new emblem for @icon.
+
+Since: 2.18
+
+</description>
+<parameters>
+<parameter name="icon">
+<parameter_description> a GIcon containing the icon.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error
+<return> a new #GEmblem.
 
 </return>
 </function>
 
-<function name="g_unix_mount_point_compare">
+<function name="g_emblem_new_with_origin">
 <description>
-Compares two unix mount points.
+Creates a new emblem for @icon.
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="mount1">
-<parameter_description> a #GUnixMount.
+<parameter name="icon">
+<parameter_description> a GIcon containing the icon.
 </parameter_description>
 </parameter>
-<parameter name="mount2">
-<parameter_description> a #GUnixMount.
+<parameter name="origin">
+<parameter_description> a GEmblemOrigin enum defining the emblem's origin
 </parameter_description>
 </parameter>
 </parameters>
-<return> 1, 0 or -1 if @mount1 is greater than, equal to,
-or less than @mount2, respectively.
+<return> a new #GEmblem.
+
 </return>
 </function>
 
-<function name="g_file_monitor_set_rate_limit">
+<function name="g_emblemed_icon_add_emblem">
 <description>
-Sets the rate limit to which the @monitor will report
-consecutive change events to the same file. 
+Adds @emblem to the #GList of #GEmblem &lt;!-- --&gt;s.
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="monitor">
-<parameter_description> a #GFileMonitor.
+<parameter name="emblemed">
+<parameter_description> a #GEmblemedIcon
 </parameter_description>
 </parameter>
-<parameter name="limit_msecs">
-<parameter_description> a integer with the limit in milliseconds to 
-poll for changes.
+<parameter name="emblem">
+<parameter_description> a #GEmblem
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_method_invocation_get_parameters">
+<function name="g_emblemed_icon_clear_emblems">
 <description>
-Gets the parameters of the method invocation.
+Removes all the emblems from @icon.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="emblemed">
+<parameter_description> a #GEmblemedIcon
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GVariant. Do not free, it is owned by @invocation.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_get_child">
+<function name="g_emblemed_icon_get_emblems">
 <description>
-Gets a child of @file with basename equal to @name.
-
-Note that the file with that specific name might not exist, but
-you can still have a #GFile that points to it. You can use this
-for instance to create that file.
-
-This call does no blocking i/o.
+Gets the list of emblems for the @icon.
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> string containing the child's basename.
+<parameter name="emblemed">
+<parameter_description> a #GEmblemedIcon
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile to a child specified by @name.
-Free the returned object with g_object_unref().
+<return> a #GList of
+#GEmblem &lt;!-- --&gt;s that is owned by @emblemed
+
 </return>
 </function>
 
-<function name="g_socket_client_connect_finish">
+<function name="g_emblemed_icon_get_icon">
 <description>
-Finishes an async connect operation. See g_socket_client_connect_async()
+Gets the main icon for @emblemed.
 
-Since: 2.22
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="emblemed">
+<parameter_description> a #GEmblemedIcon
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+</parameters>
+<return> a #GIcon that is owned by @emblemed
+
+</return>
+</function>
+
+<function name="g_emblemed_icon_new">
+<description>
+Creates a new emblemed icon for @icon with the emblem @emblem.
+
+Since: 2.18
+
+</description>
+<parameters>
+<parameter name="icon">
+<parameter_description> a #GIcon
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="emblem">
+<parameter_description> a #GEmblem, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection on success, %NULL on error.
+<return> a new #GIcon
 
 </return>
 </function>
 
-<function name="g_file_create_finish">
+<function name="g_file_append_to">
 <description>
-Finishes an asynchronous file create operation started with 
-g_file_create_async(). 
+Gets an output stream for appending data to the file. If
+the file doesn't already exist it is created.
+
+By default files created are generally readable by everyone,
+but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+will be made readable only to the current user, to the level that
+is supported on the target filesystem.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+Some file systems don't allow all file names, and may
+return an %G_IO_ERROR_INVALID_FILENAME error.
+If the file is a directory the %G_IO_ERROR_IS_DIRECTORY error will be
+returned. Other errors are possible too, and depend on what kind of
+filesystem the file is on.
 
 
 </description>
@@ -10166,8 +11308,12 @@ g_file_create_async().
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -10175,640 +11321,594 @@ g_file_create_async().
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileOutputStream or %NULL on error.
+<return> a #GFileOutputStream, or %NULL on error.
 Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_unix_input_stream_get_close_fd">
+<function name="g_file_append_to_async">
 <description>
-Returns whether the file descriptor of @stream will be
-closed when the stream is closed.
+Asynchronously opens @file for appending.
 
-Since: 2.20
+For more details, see g_file_append_to() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_append_to_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GUnixInputStream
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the file descriptor is closed when done
-
-</return>
-</function>
-
-<function name="g_output_stream_close_async">
-<description>
-Requests an asynchronous close of the stream, releasing resources 
-related to it. When the operation is finished @callback will be 
-called. You can then call g_output_stream_close_finish() to get 
-the result of the operation.
-
-For behaviour details see g_output_stream_close().
-
-The asyncronous methods have a default fallback that uses threads 
-to implement asynchronicity, so they are optional for inheriting 
-classes. However, if you override one you must override all.
-
-</description>
-<parameters>
-<parameter name="stream">
-<parameter_description> A #GOutputStream.
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
 </parameter_description>
 </parameter>
 <parameter name="io_priority">
-<parameter_description> the io priority of the request.
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request. 
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
 <parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional cancellable object
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_app_info_launch">
+<function name="g_file_append_to_finish">
 <description>
-Launches the application. Passes @files to the launched application
-as arguments, using the optional @launch_context to get information
-about the details of the launcher (like what screen it is on).
-On error, @error will be set accordingly.
-
-To launch the application without arguments pass a %NULL @files list.
-
-Note that even if the launch is successful the application launched
-can fail to start if it runs into problems during startup. There is
-no way to detect this.
-
-Some URIs can be changed when passed through a GFile (for instance
-unsupported uris with strange formats like mailto:), so if you have
-a textual uri you want to pass in as argument, consider using
-g_app_info_launch_uris() instead.
-
-On UNIX, this function sets the &lt;envvar&gt;GIO_LAUNCHED_DESKTOP_FILE&lt;/envvar&gt;
-environment variable with the path of the launched desktop file and
-&lt;envvar&gt;GIO_LAUNCHED_DESKTOP_FILE_PID&lt;/envvar&gt; to the process
-id of the launched process. This can be used to ignore
-&lt;envvar&gt;GIO_LAUNCHED_DESKTOP_FILE&lt;/envvar&gt;, should it be inherited
-by further processes. The &lt;envvar&gt;DISPLAY&lt;/envvar&gt; and
-&lt;envvar&gt;DESKTOP_STARTUP_ID&lt;/envvar&gt; environment variables are also
-set, based on information provided in @launch_context.
+Finishes an asynchronous file append operation started with 
+g_file_append_to_async(). 
 
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo
-</parameter_description>
-</parameter>
-<parameter name="files">
-<parameter_description> a #GList of #GFile objects
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="launch_context">
-<parameter_description> a #GAppLaunchContext or %NULL
+<parameter name="res">
+<parameter_description> #GAsyncResult
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on successful launch, %FALSE otherwise.
+<return> a valid #GFileOutputStream or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_dbus_message_to_blob">
+<function name="g_file_attribute_info_list_add">
 <description>
-Serializes @message to a blob. The byte order returned by
-g_dbus_message_get_byte_order() will be used.
-
-Since: 2.26
+Adds a new attribute with @name to the @list, setting
+its @type and @flags.
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="list">
+<parameter_description> a #GFileAttributeInfoList.
 </parameter_description>
 </parameter>
-<parameter name="out_size">
-<parameter_description> Return location for size of generated blob.
+<parameter name="name">
+<parameter_description> the name of the attribute to add.
 </parameter_description>
 </parameter>
-<parameter name="capabilities">
-<parameter_description> A #GDBusCapabilityFlags describing what protocol features are supported.
+<parameter name="type">
+<parameter_description> the #GFileAttributeType for the attribute.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error.
+<parameter name="flags">
+<parameter_description> #GFileAttributeInfoFlags for the attribute.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A pointer to a valid binary D-Bus message of @out_size bytes
-generated by @message or %NULL if @error is set. Free with g_free().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_client_get_local_address">
+<function name="g_file_attribute_info_list_dup">
 <description>
-Gets the local address of the socket client.
-
-See g_socket_client_set_local_address() for details.
+Makes a duplicate of a file attribute info list.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="list">
+<parameter_description> a #GFileAttributeInfoList to duplicate.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddres or %NULL. don't free
-
+<return> a copy of the given @list.
 </return>
 </function>
 
-<function name="g_buffered_input_stream_new">
+<function name="g_file_attribute_info_list_lookup">
 <description>
-Creates a new #GInputStream from the given @base_stream, with
-a buffer set to the default size (4 kilobytes).
+Gets the file attribute with the name @name from @list.
 
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GInputStream
+<parameter name="list">
+<parameter_description> a #GFileAttributeInfoList.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of the attribute to lookup.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GInputStream for the given @base_stream.
+<return> a #GFileAttributeInfo for the @name, or %NULL if an
+attribute isn't found.
 </return>
 </function>
 
-<function name="g_dbus_connection_get_stream">
+<function name="g_file_attribute_info_list_new">
 <description>
-Gets the underlying stream used for IO.
+Creates a new file attribute info list.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GDBusConnection
-</parameter_description>
-</parameter>
 </parameters>
-<return> the stream used for IO
-
+<return> a #GFileAttributeInfoList.
 </return>
 </function>
 
-<function name="g_content_type_guess">
+<function name="g_file_attribute_info_list_ref">
 <description>
-Guesses the content type based on example data. If the function is
-uncertain, @result_uncertain will be set to %TRUE. Either @filename
-or @data may be %NULL, in which case the guess will be based solely
-on the other argument.
+References a file attribute info list.
 
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a string, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a stream of data, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="data_size">
-<parameter_description> the size of @data
-</parameter_description>
-</parameter>
-<parameter name="result_uncertain">
-<parameter_description> return location for the certainty
-of the result, or %NULL
+<parameter name="list">
+<parameter_description> a #GFileAttributeInfoList to reference.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string indicating a guessed content type for the
-given data. Free with g_free()
+<return> #GFileAttributeInfoList or %NULL on error.
 </return>
 </function>
 
-<function name="g_simple_async_result_set_error_va">
+<function name="g_file_attribute_info_list_unref">
 <description>
-Sets an error within the asynchronous result without a #GError.
-Unless writing a binding, see g_simple_async_result_set_error().
+Removes a reference from the given @list. If the reference count
+falls to zero, the @list is deleted.
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> a #GQuark (usually #G_IO_ERROR).
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> an error code.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> a formatted error reporting string.
-</parameter_description>
-</parameter>
-<parameter name="args">
-<parameter_description> va_list of arguments.
+<parameter name="list">
+<parameter_description> The #GFileAttributeInfoList to unreference.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_poll_for_media">
+<function name="g_file_attribute_matcher_enumerate_namespace">
 <description>
-Asynchronously polls @drive to see if media has been inserted or removed.
+Checks if the matcher will match all of the keys in a given namespace.
+This will always return %TRUE if a wildcard character is in use (e.g. if 
+matcher was created with &quot;standard::*&quot; and @ns is &quot;standard&quot;, or if matcher was created
+using &quot;*&quot; and namespace is anything.) 
+
+TODO: this is awkwardly worded.
 
-When the operation is finished, @callback will be called.
-You can then call g_drive_poll_for_media_finish() to obtain the
-result of the operation.
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter name="matcher">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @callback
+<parameter name="ns">
+<parameter_description> a string containing a file attribute namespace.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the matcher matches all of the entries
+in the given @ns, %FALSE otherwise.
+</return>
 </function>
 
-<function name="g_file_enumerator_has_pending">
+<function name="g_file_attribute_matcher_enumerate_next">
 <description>
-Checks if the file enumerator has pending operations.
+Gets the next matched attribute from a #GFileAttributeMatcher.
 
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
+<parameter name="matcher">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @enumerator has pending operations.
+<return> a string containing the next attribute or %NULL if 
+no more attribute exist.
 </return>
 </function>
 
-<function name="g_socket_send_to">
+<function name="g_file_attribute_matcher_matches">
 <description>
-Tries to send @size bytes from @buffer to @address. If @address is
-%NULL then the message is sent to the default receiver (set by
-g_socket_connect()).
-
-See g_socket_send() for additional information.
+Checks if an attribute will be matched by an attribute matcher. If 
+the matcher was created with the &quot;*&quot; matching string, this function
+will always return %TRUE.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
-</parameter_description>
-</parameter>
-<parameter name="address">
-<parameter_description> a #GSocketAddress, or %NULL
+<parameter name="matcher">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> the buffer containing the data to send.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the number of bytes to send
+</parameters>
+<return> %TRUE if @attribute matches @matcher. %FALSE otherwise.
+</return>
+</function>
+
+<function name="g_file_attribute_matcher_matches_only">
+<description>
+Checks if a attribute matcher only matches a given attribute. Always
+returns %FALSE if &quot;*&quot; was used when creating the matcher.
+
+
+</description>
+<parameters>
+<parameter name="matcher">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameters>
+<return> %TRUE if the matcher only matches @attribute. %FALSE otherwise.
+</return>
+</function>
+
+<function name="g_file_attribute_matcher_new">
+<description>
+Creates a new file attribute matcher, which matches attributes 
+against a given string. #GFileAttributeMatcher&lt;!-- --&gt;s are reference 
+counted structures, and are created with a reference count of 1. If 
+the number of references falls to 0, the #GFileAttributeMatcher is 
+automatically destroyed.
+
+The @attribute string should be formatted with specific keys separated
+from namespaces with a double colon. Several &quot;namespace::key&quot; strings may be 
+concatenated with a single comma (e.g. &quot;standard::type,standard::is-hidden&quot;). 
+The wildcard &quot;*&quot; may be used to match all keys and namespaces, or 
+&quot;namespace::*&quot; will match all keys in a given namespace. 
+
+Examples of strings to use:
+&lt;table&gt;
+&lt;title&gt;File Attribute Matcher strings and results&lt;/title&gt;
+&lt;tgroup cols='2' align='left'&gt;&lt;thead&gt;
+&lt;row&gt;&lt;entry&gt; Matcher String &lt;/entry&gt;&lt;entry&gt; Matches &lt;/entry&gt;&lt;/row&gt;&lt;/thead&gt;
+&lt;tbody&gt;
+&lt;row&gt;&lt;entry&gt;&quot;*&quot;&lt;/entry&gt;&lt;entry&gt;matches all attributes.&lt;/entry&gt;&lt;/row&gt;
+&lt;row&gt;&lt;entry&gt;&quot;standard::is-hidden&quot;&lt;/entry&gt;&lt;entry&gt;matches only the key is-hidden in the standard namespace.&lt;/entry&gt;&lt;/row&gt;
+&lt;row&gt;&lt;entry&gt;&quot;standard::type,unix::*&quot;&lt;/entry&gt;&lt;entry&gt;matches the type key in the standard namespace and
+all keys in the unix namespace.&lt;/entry&gt;&lt;/row&gt;
+&lt;/tbody&gt;&lt;/tgroup&gt;
+&lt;/table&gt;
+
+
+</description>
+<parameters>
+<parameter name="attributes">
+<parameter_description> an attribute string to match.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes written (which may be less than @size), or -1
-on error
-
+<return> a #GFileAttributeMatcher.
 </return>
 </function>
 
-<function name="g_data_output_stream_get_byte_order">
+<function name="g_file_attribute_matcher_ref">
 <description>
-Gets the byte order for the stream.
+References a file attribute matcher.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
+<parameter name="matcher">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GDataStreamByteOrder for the @stream.
+<return> a #GFileAttributeMatcher.
 </return>
 </function>
 
-<function name="g_file_new_for_uri">
+<function name="g_file_attribute_matcher_unref">
 <description>
-Constructs a #GFile for a given URI. This operation never 
-fails, but the returned object might not support any I/O 
-operation if @uri is malformed or if the uri type is 
-not supported.
+Unreferences @matcher. If the reference count falls below 1, 
+the @matcher is automatically freed.
 
 
 </description>
 <parameters>
-<parameter name="uri">
-<parameter_description> a string containing a URI.
+<parameter name="matcher">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile for the given @uri.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_query_writable_namespaces">
+<function name="g_file_copy">
 <description>
-Obtain the list of attribute namespaces where new attributes 
-can be created by a user. An example of this is extended
-attributes (in the &quot;xattr&quot; namespace).
+Copies the file @source to the location specified by @destination.
+Can not handle recursive copies of directories.
+
+If the flag #G_FILE_COPY_OVERWRITE is specified an already
+existing @destination file is overwritten.
+
+If the flag #G_FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks
+will be copied as symlinks, otherwise the target of the
+ source symlink will be copied.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
 was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
+If @progress_callback is not %NULL, then the operation can be monitored by
+setting this to a #GFileProgressCallback function. @progress_callback_data
+will be passed to this function. It is guaranteed that this callback will
+be called after all data has been transferred with the total number of bytes
+copied during the operation.
+
+If the @source file does not exist then the G_IO_ERROR_NOT_FOUND
+error is returned, independent on the status of the @destination.
+
+If #G_FILE_COPY_OVERWRITE is not specified and the target exists, then the
+error G_IO_ERROR_EXISTS is returned.
+
+If trying to overwrite a file over a directory the G_IO_ERROR_IS_DIRECTORY
+error is returned. If trying to overwrite a directory with a directory the
+G_IO_ERROR_WOULD_MERGE error is returned.
+
+If the source is a directory and the target does not exist, or #G_FILE_COPY_OVERWRITE is
+specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error
+is returned.
+
+If you are interested in copying the #GFile object itself (not the on-disk
+file), see g_file_dup().
+
 
 </description>
 <parameters>
-<parameter name="file">
+<parameter name="source">
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
+<parameter name="destination">
+<parameter_description> destination #GFile
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> set of #GFileCopyFlags
+</parameter_description>
+</parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
+<parameter name="progress_callback">
+<parameter_description> function to callback with progress information
+</parameter_description>
+</parameter>
+<parameter name="progress_callback_data">
+<parameter_description> user data to pass to @progress_callback
+</parameter_description>
+</parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> #GError to set on error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeInfoList describing the writable namespaces.
-When you are done with it, release it with g_file_attribute_info_list_unref()
+<return> %TRUE on success, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_data_input_stream_read_line_finish">
+<function name="g_file_copy_async">
 <description>
-Finish an asynchronous call started by
-g_data_input_stream_read_line_async().
+Copies the file @source to the location specified by @destination 
+asynchronously. For details of the behaviour, see g_file_copy().
 
-Since: 2.20
+If @progress_callback is not %NULL, then that function that will be called
+just like in g_file_copy(), however the callback will run in the main loop,
+not in the thread that is doing the I/O operation.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_copy_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="source">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> the #GAsyncResult that was provided to the callback.
+<parameter name="destination">
+<parameter_description> destination #GFile
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> a #gsize to get the length of the data read in.
+<parameter name="flags">
+<parameter_description> set of #GFileCopyFlags
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request. 
 </parameter_description>
 </parameter>
-</parameters>
-<return> a string with the line that was read in (without the newlines).
-Set @length to a #gsize to get the length of the read line.
-On an error, it will return %NULL and @error will be set. If there's no
-content to read, it will still return %NULL, but @error won't be set.
-
-</return>
-</function>
-
-<function name="g_dbus_connection_add_filter">
-<description>
-Adds a message filter. Filters are handlers that are run on all
-incoming and outgoing messages, prior to standard dispatch. Filters
-are run in the order that they were added.  The same handler can be
-added as a filter more than once, in which case it will be run more
-than once.  Filters added during a filter callback won't be run on
-the message being processed.
-
-Note that filters are run in a dedicated message handling thread so
-they can't block and, generally, can't do anything but signal a
-worker thread. Also note that filters are rarely needed - use API
-such as g_dbus_connection_send_message_with_reply(),
-g_dbus_connection_signal_subscribe() or
-g_dbus_connection_call() instead.
-
-If a filter consumes an incoming message (by returning %TRUE), the
-message is not dispatched anywhere else - not even the standard
-dispatch machinery (that API such as
-g_dbus_connection_signal_subscribe() and
-g_dbus_connection_send_message_with_reply() relies on) will see the
-message. Similary, if a filter consumes an outgoing message, the
-message will not be sent to the other peer.
-
-Since: 2.26
-
-</description>
-<parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="filter_function">
-<parameter_description> A filter function.
+<parameter name="progress_callback">
+<parameter_description> function to callback with progress information
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> User data to pass to @filter_function.
+<parameter name="progress_callback_data">
+<parameter_description> user data to pass to @progress_callback
 </parameter_description>
 </parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function to free @user_data with when filter
-is removed or %NULL.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> A filter identifier that can be used with
-g_dbus_connection_remove_filter().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_proxy_set_cached_property">
+<function name="g_file_copy_attributes">
 <description>
-If @value is not %NULL, sets the cached value for the property with
-name @property_name to the value in @value.
-
-If @value is %NULL, then the cached value is removed from the
-property cache.
-
-If @proxy has an expected interface (see
-#GDBusProxy:g-interface-info), then @property_name (for existence)
-and @value (for the type) is checked against it.
-
-If the @value #GVariant is floating, it is consumed. This allows
-convenient 'inline' use of g_variant_new(), e.g.
-|[
-g_dbus_proxy_set_cached_property (proxy,
-&quot;SomeProperty&quot;,
-g_variant_new (&quot;(si)&quot;,
-&quot;A String&quot;,
-42));
-]|
-
-Normally you will not need to use this method since @proxy is
-tracking changes using the
-&lt;literal&gt;org.freedesktop.DBus.Properties.PropertiesChanged&lt;/literal&gt;
-D-Bus signal. However, for performance reasons an object may decide
-to not use this signal for some properties and instead use a
-proprietary out-of-band mechanism to transmit changes.
+Copies the file attributes from @source to @destination. 
 
-As a concrete example, consider an object with a property
-&lt;literal&gt;ChatroomParticipants&lt;/literal&gt; which is an array of
-strings. Instead of transmitting the same (long) array every time
-the property changes, it is more efficient to only transmit the
-delta using e.g. signals &lt;literal&gt;ChatroomParticipantJoined(String
-name)&lt;/literal&gt; and &lt;literal&gt;ChatroomParticipantParted(String
-name)&lt;/literal&gt;.
+Normally only a subset of the file attributes are copied,
+those that are copies in a normal file copy operation
+(which for instance does not include e.g. owner). However
+if #G_FILE_COPY_ALL_METADATA is specified in @flags, then
+all the metadata that is possible to copy is copied. This
+is useful when implementing move by copy + delete source.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy
+<parameter name="source">
+<parameter_description> a #GFile with attributes.
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> Property name.
+<parameter name="destination">
+<parameter_description> a #GFile to copy attributes to.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> Value for the property or %NULL to remove it from the cache.
+<parameter name="flags">
+<parameter_description> a set of #GFileCopyFlags.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_content_type_get_icon">
-<description>
-Gets the icon for a content type.
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> a content type string
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GIcon corresponding to the content type. Free the returned
-object with g_object_unref()
+<return> %TRUE if the attributes were copied successfully, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_permission_get_allowed">
+<function name="g_file_copy_finish">
 <description>
-Gets the value of the 'allowed' property.  This property is %TRUE if
-the caller currently has permission to perform the action that
- permission represents the permission to perform.
+Finishes copying the file started with 
+g_file_copy_async().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value of the 'allowed' property
+<return> a %TRUE on success, %FALSE on error.
 </return>
 </function>
 
-<function name="g_dbus_message_get_header">
+<function name="g_file_create">
 <description>
-Gets a header field on @message.
+Creates a new file and returns an output stream for writing to it.
+The file must not already exist.
+
+By default files created are generally readable by everyone,
+but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+will be made readable only to the current user, to the level that
+is supported on the target filesystem.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+If a file or directory with this name already exists the G_IO_ERROR_EXISTS
+error will be returned.
+Some file systems don't allow all file names, and may
+return an G_IO_ERROR_INVALID_FILENAME error, and if the name
+is to long G_IO_ERROR_FILENAME_TOO_LONG will be returned.
+Other errors are possible too, and depend on what kind of
+filesystem the file is on.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="header_field">
-<parameter_description> A 8-bit unsigned integer (typically a value from the #GDBusMessageHeaderField enumeration)
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GVariant with the value if the header was found, %NULL
-otherwise. Do not free, it is owned by @message.
-
+<return> a #GFileOutputStream for the newly created file, or 
+%NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_eject_mountable_with_operation">
+<function name="g_file_create_async">
 <description>
-Starts an asynchronous eject on a mountable.
-When this operation has completed, @callback will be called with
- user_user data, and the operation can be finalized with
-g_file_eject_mountable_with_operation_finish().
+Asynchronously creates a new file and returns an output stream for writing to it.
+The file must not already exist.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+For more details, see g_file_create() which is
+the synchronous version of this call.
 
-Since: 2.22
+When the operation is finished, @callback will be called. You can then call
+g_file_create_finish() to get the result of the operation.
 
 </description>
 <parameters>
@@ -10817,11 +11917,12 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter_description> a set of #GFileCreateFlags.
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -10829,7 +11930,7 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
@@ -10840,327 +11941,396 @@ Since: 2.22
 <return></return>
 </function>
 
-<function name="g_unix_fd_list_new">
+<function name="g_file_create_finish">
 <description>
-Creates a new #GUnixFDList containing no file descriptors.
+Finishes an asynchronous file create operation started with 
+g_file_create_async(). 
 
-Since: 2.24
 
 </description>
 <parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GUnixFDList
-
+<return> a #GFileOutputStream or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_dbus_message_new_method_error_valist">
+<function name="g_file_create_readwrite">
 <description>
-Like g_dbus_message_new_method_error() but intended for language bindings.
+Creates a new file and returns a stream for reading and writing to it.
+The file must not already exist.
 
-Since: 2.26
+By default files created are generally readable by everyone,
+but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+will be made readable only to the current user, to the level that
+is supported on the target filesystem.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+If a file or directory with this name already exists the %G_IO_ERROR_EXISTS
+error will be returned. Some file systems don't allow all file names,
+and may return an %G_IO_ERROR_INVALID_FILENAME error, and if the name
+is too long, %G_IO_ERROR_FILENAME_TOO_LONG will be returned. Other errors
+are possible too, and depend on what kind of filesystem the file is on.
+
+Note that in many non-local file cases read and write streams are not
+supported, so make sure you really need to do read and write streaming,
+rather than just opening for reading or writing.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="method_call_message">
-<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
-create a reply message to.
+<parameter name="file">
+<parameter_description> a #GFile
 </parameter_description>
 </parameter>
-<parameter name="error_name">
-<parameter_description> A valid D-Bus error name.
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags
 </parameter_description>
 </parameter>
-<parameter name="error_message_format">
-<parameter_description> The D-Bus error message in a printf() format.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
 </parameter_description>
 </parameter>
-<parameter name="var_args">
-<parameter_description> Arguments for @error_message_format.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
+<return> a #GFileIOStream for the newly created file, or %NULL on error.
+Free the returned object with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_socket_set_listen_backlog">
+<function name="g_file_create_readwrite_async">
 <description>
-Sets the maximum number of outstanding connections allowed
-when listening on this socket. If more clients than this are
-connecting to the socket and the application is not handling them
-on time then the new connections will be refused.
+Asynchronously creates a new file and returns a stream for reading and
+writing to it. The file must not already exist.
 
-Note that this must be called before g_socket_listen() and has no
-effect if called after that.
+For more details, see g_file_create_readwrite() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then
+call g_file_create_readwrite_finish() to get the result of the operation.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="file">
+<parameter_description> input #GFile
 </parameter_description>
 </parameter>
-<parameter name="backlog">
-<parameter_description> the maximum number of pending connections.
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_settings_get_mapped">
+<function name="g_file_create_readwrite_finish">
 <description>
-Gets the value that is stored at @key in @settings, subject to
-application-level validation/mapping.
-
-You should use this function when the application needs to perform
-some processing on the value of the key (for example, parsing).  The
- mapping function performs that processing.  If the function
-indicates that the processing was unsuccessful (due to a parse error,
-for example) then the mapping is tried again with another value.
-
-This allows a robust 'fall back to defaults' behaviour to be
-implemented somewhat automatically.
-
-The first value that is tried is the user's setting for the key.  If
-the mapping function fails to map this value, other values may be
-tried in an unspecified order (system or site defaults, translated
-schema default values, untranslated schema default values, etc).
-
-If the mapping function fails for all possible values, one additional
-attempt is made: the mapping function is called with a %NULL value.
-If the mapping function still indicates failure at this point then
-the application will be aborted.
+Finishes an asynchronous file create operation started with
+g_file_create_readwrite_async().
 
-The result parameter for the @mapping function is pointed to a
-#gpointer which is initially set to %NULL.  The same pointer is given
-to each invocation of @mapping.  The final value of that #gpointer is
-what is returned by this function.  %NULL is valid; it is returned
-just as any other value would be.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="file">
+<parameter_description> input #GFile
 </parameter_description>
 </parameter>
-<parameter name="mapping">
-<parameter_description> the function to map the value in the settings database to
-the value used by the application
+<parameter name="res">
+<parameter_description> a #GAsyncResult
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data for @mapping
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the result, which may be %NULL
+<return> a #GFileIOStream or %NULL on error.
+Free the returned object with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_srv_target_get_priority">
+<function name="g_file_delete">
 <description>
-Gets @target's priority. You should not need to look at this;
-#GResolver already sorts the targets according to the algorithm in
-RFC 2782.
+Deletes a file. If the @file is a directory, it will only be deleted if it 
+is empty.
 
-Since: 2.22
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+Virtual: delete_file
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GSrvTarget
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL 
 </parameter_description>
 </parameter>
 </parameters>
-<return> @target's priority
-
+<return> %TRUE if the file was deleted. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_zlib_decompressor_new">
+<function name="g_file_descriptor_based_get_fd">
 <description>
-Creates a new #GZlibDecompressor.
+Gets the underlying file descriptor.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> The format to use for the compressed data
+<parameter name="fd_based">
+<parameter_description> a #GFileDescriptorBased.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GZlibDecompressor
+<return> The file descriptor
 
 </return>
 </function>
 
-<function name="gvdb_table_list">
+<function name="g_file_dup">
 <description>
-List all of the keys that appear below @key.  The nesting of keys
-within the hash file is defined by the program that created the hash
-file.  One thing is constant: each item in the returned array can be
-concatenated to @key to obtain the full name of that key.
+Duplicates a #GFile handle. This operation does not duplicate 
+the actual file or directory represented by the #GFile; see 
+g_file_copy() if attempting to copy a file. 
 
-It is not possible to tell from this function if a given key is
-itself a path, a value, or another hash table; you are expected to
-know this for yourself.
+This call does no blocking i/o.
 
-You should call g_strfreev() on the return result when you no longer
-require it.
 
 </description>
 <parameters>
 <parameter name="file">
-<parameter_description> a #GvdbTable
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a string
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated string array
+<return> a new #GFile that is a duplicate of the given #GFile. 
 </return>
 </function>
 
-<function name="g_socket_listener_add_address">
+<function name="g_file_eject_mountable">
 <description>
-Creates a socket of type @type and protocol @protocol, binds
-it to @address and adds it to the set of sockets we're accepting
-sockets from.
-
-Note that adding an IPv6 address, depending on the platform,
-may or may not result in a listener that also accepts IPv4
-connections.  For more determinstic behaviour, see
-g_socket_listener_add_inet_port().
-
- source_object will be passed out in the various calls
-to accept to identify this particular source, which is
-useful if you're listening on multiple addresses and do
-different things depending on what address is connected to.
+Starts an asynchronous eject on a mountable.  
+When this operation has completed, @callback will be called with
+ user_user data, and the operation can be finalized with 
+g_file_eject_mountable_finish().
 
-If successful and @effective_address is non-%NULL then it will
-be set to the address that the binding actually occured at.  This
-is helpful for determining the port number that was used for when
-requesting a binding to port 0 (ie: &quot;any port&quot;).  This address, if
-requested, belongs to the caller and must be freed.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.22
+Deprecated: 2.22: Use g_file_eject_mountable_with_operation() instead.
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
-</parameter_description>
-</parameter>
-<parameter name="address">
-<parameter_description> a #GSocketAddress
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GSocketType
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="protocol">
-<parameter_description> a #GSocketProtocol
+<parameter name="flags">
+<parameter_description> flags affecting the operation
 </parameter_description>
 </parameter>
-<parameter name="source_object">
-<parameter_description> Optional #GObject identifying this source
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="effective_address">
-<parameter_description> location to store the address that was bound to, or %NULL.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_message_get_header_fields">
+<function name="g_file_eject_mountable_finish">
 <description>
-Gets an array of all header fields on @message that are set.
+Finishes an asynchronous eject operation started by 
+g_file_eject_mountable().
 
-Since: 2.26
+Deprecated: 2.22: Use g_file_eject_mountable_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> An array of header fields terminated by
-%G_DBUS_MESSAGE_HEADER_FIELD_INVALID.  Each element is a
-#guchar. Free with g_free().
+<return> %TRUE if the @file was ejected successfully. %FALSE 
+otherwise.
 
 </return>
 </function>
 
-<function name="g_io_scheduler_cancel_all_jobs">
+<function name="g_file_eject_mountable_with_operation">
 <description>
-Cancels all cancellable I/O jobs. 
+Starts an asynchronous eject on a mountable.
+When this operation has completed, @callback will be called with
+ user_user data, and the operation can be finalized with
+g_file_eject_mountable_with_operation_finish().
 
-A job is cancellable if a #GCancellable was passed into
-g_io_scheduler_push_job().
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+Since: 2.22
 
 </description>
 <parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags affecting the operation
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_socket_connection_factory_create_connection">
+<function name="g_file_eject_mountable_with_operation_finish">
 <description>
-Creates a #GSocketConnection subclass of the right type for
- socket 
+Finishes an asynchronous eject operation started by
+g_file_eject_mountable_with_operation().
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection
+<return> %TRUE if the @file was ejected successfully. %FALSE
+otherwise.
 
 </return>
 </function>
 
-<function name="g_file_trash">
+<function name="g_file_enumerate_children">
 <description>
-Sends @file to the &quot;Trashcan&quot;, if possible. This is similar to
-deleting it, but the user can recover it before emptying the trashcan.
-Not all file systems support trashing, so this call can return the
-%G_IO_ERROR_NOT_SUPPORTED error.
+Gets the requested information about the files in a directory. The result
+is a #GFileEnumerator object that will give out #GFileInfo objects for
+all the files in the directory.
 
+The @attributes value is a string that specifies the file attributes that
+should be gathered. It is not an error if it's not possible to read a particular
+requested attribute from a file - it just won't be set. @attributes should
+be a comma-separated list of attributes or attribute wildcards. The wildcard &quot;*&quot;
+means all attributes, and a wildcard like &quot;standard::*&quot; means all attributes in the standard
+namespace. An example attribute query be &quot;standard::*,owner::user&quot;.
+The standard attributes are available as defines, like #G_FILE_ATTRIBUTE_STANDARD_NAME.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
 was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
+If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
+If the file is not a directory, the G_FILE_ERROR_NOTDIR error will be returned.
+Other errors are possible too.
+
 
 </description>
 <parameters>
 <parameter name="file">
-<parameter_description> #GFile to send to trash.
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> an attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileQueryInfoFlags.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -11168,74 +12338,131 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> #GError for error reporting.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on successful trash, %FALSE otherwise.
+<return> A #GFileEnumerator if successful, %NULL on error. 
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_settings_delay">
+<function name="g_file_enumerate_children_async">
 <description>
-Changes the #GSettings object into 'delay-apply' mode. In this
-mode, changes to @settings are not immediately propagated to the
-backend, but kept locally until g_settings_apply() is called.
+Asynchronously gets the requested information about the files in a directory. The result
+is a #GFileEnumerator object that will give out #GFileInfo objects for
+all the files in the directory.
 
-Since: 2.26
+For more details, see g_file_enumerate_children() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_enumerate_children_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> an attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the
+request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_network_address_get_hostname">
+<function name="g_file_enumerate_children_finish">
 <description>
-Gets @addr's hostname. This might be either UTF-8 or ASCII-encoded,
-depending on what @addr was created with.
+Finishes an async enumerate children operation.
+See g_file_enumerate_children_async().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="addr">
-<parameter_description> a #GNetworkAddress
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @addr's hostname
-
+<return> a #GFileEnumerator or %NULL if an error occurred.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_input_stream_query_info_async">
+<function name="g_file_enumerator_close">
 <description>
-Queries the stream information asynchronously.
-When the operation is finished @callback will be called. 
-You can then call g_file_input_stream_query_info_finish() 
-to get the result of the operation.
-
-For the synchronous version of this function, 
-see g_file_input_stream_query_info(). 
+Releases all resources used by this enumerator, making the
+enumerator return %G_IO_ERROR_CLOSED on all calls.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be set
+This will be automatically called when the last reference
+is dropped, but you might want to call this function to make 
+sure resources are released as early as possible.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileInputStream.
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description> a file attribute query string.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+</parameter_description>
+</parameter>
+</parameters>
+<return> #TRUE on success or #FALSE on error.
+</return>
+</function>
+
+<function name="g_file_enumerator_close_async">
+<description>
+Asynchronously closes the file enumerator. 
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned in 
+g_file_enumerator_close_finish(). 
+
+</description>
+<parameters>
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
 </parameter_description>
 </parameter>
 <parameter name="io_priority">
@@ -11248,7 +12475,7 @@ of the request.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
@@ -11259,19 +12486,24 @@ of the request.
 <return></return>
 </function>
 
-<function name="g_file_unmount_mountable_with_operation_finish">
+<function name="g_file_enumerator_close_finish">
 <description>
-Finishes an unmount operation, see g_file_unmount_mountable_with_operation() for details.
+Finishes closing a file enumerator, started from g_file_enumerator_close_async().
 
-Finish an asynchronous unmount operation that was started
-with g_file_unmount_mountable_with_operation().
+If the file enumerator was already closed when g_file_enumerator_close_async() 
+was called, then this function will report %G_IO_ERROR_CLOSED in @error, and 
+return %FALSE. If the file enumerator had pending operation when the close 
+operation was started, then this function will report %G_IO_ERROR_PENDING, and
+return %FALSE.  If @cancellable was not %NULL, then the operation may have been 
+cancelled by triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be set, and %FALSE will be 
+returned. 
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
 </parameter_description>
 </parameter>
 <parameter name="result">
@@ -11279,160 +12511,225 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation finished successfully. %FALSE
-otherwise.
-
+<return> %TRUE if the close operation has finished successfully.
 </return>
 </function>
 
-<function name="g_simple_async_result_set_handle_cancellation">
+<function name="g_file_enumerator_get_container">
 <description>
-Sets whether to handle cancellation within the asynchronous operation.
+Get the #GFile container which is being enumerated.
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator
 </parameter_description>
 </parameter>
-<parameter name="handle_cancellation">
-<parameter_description> a #gboolean.
+</parameters>
+<return> the #GFile which is being enumerated.
+
+</return>
+</function>
+
+<function name="g_file_enumerator_has_pending">
+<description>
+Checks if the file enumerator has pending operations.
+
+
+</description>
+<parameters>
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the @enumerator has pending operations.
+</return>
 </function>
 
-<function name="g_dbus_method_invocation_return_value">
+<function name="g_file_enumerator_is_closed">
 <description>
-Finishes handling a D-Bus method call by returning @parameters.
-If the @parameters GVariant is floating, it is consumed.
+Checks if the file enumerator has been closed.
 
-It is an error if @parameters is not of the right format.
 
-This method will free @invocation, you cannot use it afterwards.
+</description>
+<parameters>
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the @enumerator is closed.
+</return>
+</function>
+
+<function name="g_file_enumerator_next_file">
+<description>
+Returns information for the next file in the enumerated object.
+Will block until the information is available. The #GFileInfo 
+returned from this function will contain attributes that match the 
+attribute string that was passed when the #GFileEnumerator was created.
+
+On error, returns %NULL and sets @error to the error. If the
+enumerator is at the end, %NULL will be returned and @error will
+be unset.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> A #GVariant tuple with out parameters for the method or %NULL if not passing any parameters.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GFileInfo or %NULL on error or end of enumerator.
+Free the returned object with g_object_unref() when no longer needed.
+</return>
 </function>
 
-<function name="g_file_set_attribute_byte_string">
+<function name="g_file_enumerator_next_files_async">
 <description>
-Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING to @value. 
-If @attribute is of a different type, this operation will fail, 
-returning %FALSE. 
+Request information for a number of files from the enumerator asynchronously.
+When all i/o for the operation is finished the @callback will be called with
+the requested information. 
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+The callback can be called with less than @num_files files in case of error
+or at the end of the enumerator. In case of a partial error the callback will
+be called with any succeeding items and no error, and on the next request the
+error will be reported. If a request is cancelled the callback will be called
+with %G_IO_ERROR_CANCELLED.
+
+During an async request no other sync and async calls are allowed, and will
+result in %G_IO_ERROR_PENDING errors. 
 
+Any outstanding i/o request with higher priority (lower numerical value) will
+be executed before an outstanding request with lower priority. Default
+priority is %G_PRIORITY_DEFAULT.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a string containing the attribute's new value.
+<parameter name="num_files">
+<parameter_description> the number of file info objects to request
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a #GFileQueryInfoFlags.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;gioscheduler&quot;&gt;io priority&lt;/link&gt; 
+of the request. 
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @attribute was successfully set to @value 
-in the @file, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_monitor_is_cancelled">
+<function name="g_file_enumerator_next_files_finish">
 <description>
-Returns whether the monitor is canceled.
+Finishes the asynchronous operation started with g_file_enumerator_next_files_async().
 
 
 </description>
 <parameters>
-<parameter name="monitor">
-<parameter_description> a #GFileMonitor
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if monitor is canceled. %FALSE otherwise.
+<return> a #GList of #GFileInfo&lt;!----&gt;s. You must free the list with 
+g_list_free() and unref the infos with g_object_unref() when you're 
+done with them.
 </return>
 </function>
 
-<function name="g_bus_get_finish">
+<function name="g_file_enumerator_set_pending">
 <description>
-Finishes an operation started with g_bus_get().
+Sets the file enumerator as having pending operations.
 
-The returned object is a singleton, that is, shared with other
-callers of g_bus_get() and g_bus_get_sync() for @bus_type. In the
-event that you need a private message bus connection, use
-g_dbus_address_get_for_bus() and
-g_dbus_connection_new_for_address().
+</description>
+<parameters>
+<parameter name="enumerator">
+<parameter_description> a #GFileEnumerator.
+</parameter_description>
+</parameter>
+<parameter name="pending">
+<parameter_description> a boolean value.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-Note that the returned #GDBusConnection object will (usually) have
-the #GDBusConnection:exit-on-close property set to %TRUE.
+<function name="g_file_equal">
+<description>
+Checks equality of two given #GFile&lt;!-- --&gt;s. Note that two
+#GFile&lt;!-- --&gt;s that differ can still refer to the same
+file on the filesystem due to various forms of filename
+aliasing.
+
+This call does no blocking i/o.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_bus_get().
+<parameter name="file1">
+<parameter_description> the first #GFile.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="file2">
+<parameter_description> the second #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
-
+<return> %TRUE if @file1 and @file2 are equal.
+%FALSE if either is not a #GFile.
 </return>
 </function>
 
-<function name="g_file_set_attributes_from_info">
+<function name="g_file_find_enclosing_mount">
 <description>
-Tries to set all attributes in the #GFileInfo on the target values, 
-not stopping on the first error.
+Gets a #GMount for the #GFile. 
 
-If there is any error during this operation then @error will be set to
-the first error. Error on particular fields are flagged by setting 
-the &quot;status&quot; field in the attribute value to 
-%G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING, which means you can also detect
-further errors.
+If the #GFileIface for @file does not have a mount (e.g. possibly a 
+remote share), @error will be set to %G_IO_ERROR_NOT_FOUND and %NULL
+will be returned.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
@@ -11445,47 +12742,39 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> #GFileQueryInfoFlags
-</parameter_description>
-</parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL 
+<parameter_description> a #GError. 
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if there was any error, %FALSE otherwise.
+<return> a #GMount where the @file is located or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_mount_unmount_with_operation">
+<function name="g_file_find_enclosing_mount_async">
 <description>
-Unmounts a mount. This is an asynchronous operation, and is
-finished by calling g_mount_unmount_with_operation_finish() with the @mount 
-and #GAsyncResult data returned in the @callback.
+Asynchronously gets the mount for the file.
 
-Since: 2.22
+For more details, see g_file_find_enclosing_mount() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_find_enclosing_mount_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="file">
+<parameter_description> a #GFile
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -11493,80 +12782,83 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_socket_connection_factory_lookup_type">
+<function name="g_file_find_enclosing_mount_finish">
 <description>
-Looks up the #GType to be used when creating socket connections on
-sockets with the specified @family,@type and @protocol_id.
-
-If no type is registered, the #GSocketConnection base type is returned.
+Finishes an asynchronous find mount request. 
+See g_file_find_enclosing_mount_async().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="family">
-<parameter_description> a #GSocketFamily
+<parameter name="file">
+<parameter_description> a #GFile
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GSocketType
+<parameter name="res">
+<parameter_description> a #GAsyncResult
 </parameter_description>
 </parameter>
-<parameter name="protocol_id">
-<parameter_description> a protocol id
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GType
-
+<return> #GMount for given @file or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_settings_is_writable">
+<function name="g_file_get_basename">
 <description>
-Finds out if a key can be written or not
+Gets the base name (the last component of the path) for a given #GFile.
+
+If called for the top level of a system (such as the filesystem root
+or a uri like sftp://host/) it will return a single directory separator
+(and on Windows, possibly a drive letter).
+
+The base name is a byte string (*not* UTF-8). It has no defined encoding
+or rules other than it may not contain zero bytes.  If you want to use
+filenames in a user interface you should use the display name that you
+can get by requesting the %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME
+attribute with g_file_query_info().
+
+This call does no blocking i/o.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of a key
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the key @name is writable
+<return> string containing the #GFile's base name, or %NULL 
+if given #GFile is invalid. The returned string should be 
+freed with g_free() when no longer needed.
 </return>
 </function>
 
-<function name="g_file_load_partial_contents_async">
+<function name="g_file_get_child">
 <description>
-Reads the partial contents of a file. A #GFileReadMoreCallback should be 
-used to stop reading from the file when appropriate, else this function
-will behave exactly as g_file_load_contents_async(). This operation 
-can be finished by g_file_load_partial_contents_finish().
+Gets a child of @file with basename equal to @name.
 
-Users of this function should be aware that @user_data is passed to 
-both the @read_more_callback and the @callback.
+Note that the file with that specific name might not exist, but
+you can still have a #GFile that points to it. You can use this
+for instance to create that file.
+
+This call does no blocking i/o.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 </description>
 <parameters>
@@ -11574,113 +12866,117 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="read_more_callback">
-<parameter_description> a #GFileReadMoreCallback to receive partial data and to specify whether further data should be read.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to the callback functions.
+<parameter name="name">
+<parameter_description> string containing the child's basename.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GFile to a child specified by @name.
+Free the returned object with g_object_unref().
+</return>
 </function>
 
-<function name="g_data_output_stream_put_uint32">
+<function name="g_file_get_child_for_display_name">
 <description>
-Puts an unsigned 32-bit integer into the stream.
+Gets the child of @file for a given @display_name (i.e. a UTF8
+version of the name). If this function fails, it returns %NULL and @error will be 
+set. This is very useful when constructing a GFile for a new file
+and the user entered the filename in the user interface, for instance
+when you select a directory and type a filename in the file selector.
+
+This call does no blocking i/o.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a #guint32.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="display_name">
+<parameter_description> string to a possible child.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter_description> #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
+<return> a #GFile to the specified child, or 
+%NULL if the display name couldn't be converted.  
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_socket_shutdown">
+<function name="g_file_get_parent">
 <description>
-Shut down part of a full-duplex connection.
+Gets the parent directory for the @file. 
+If the @file represents the root directory of the 
+file system, then %NULL will be returned.
 
-If @shutdown_read is %TRUE then the recieving side of the connection
-is shut down, and further reading is disallowed.
+This call does no blocking i/o.
 
-If @shutdown_write is %TRUE then the sending side of the connection
-is shut down, and further writing is disallowed.
 
-It is allowed for both @shutdown_read and @shutdown_write to be %TRUE.
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GFile structure to the parent of the given
+#GFile or %NULL if there is no parent. 
+Free the returned object with g_object_unref().
+</return>
+</function>
 
-One example where this is used is graceful disconnect for TCP connections
-where you close the sending side, then wait for the other side to close
-the connection, thus ensuring that the other side saw all sent data.
+<function name="g_file_get_parse_name">
+<description>
+Gets the parse name of the @file.
+A parse name is a UTF-8 string that describes the
+file such that one can get the #GFile back using
+g_file_parse_name().
+
+This is generally used to show the #GFile as a nice
+full-pathname kind of string in a user interface,
+like in a location entry.
+
+For local files with names that can safely be converted
+to UTF8 the pathname is used, otherwise the IRI is used
+(a form of URI that allows UTF8 characters unescaped).
+
+This call does no blocking i/o.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
-</parameter_description>
-</parameter>
-<parameter name="shutdown_read">
-<parameter_description> whether to shut down the read side
-</parameter_description>
-</parameter>
-<parameter name="shutdown_write">
-<parameter_description> whether to shut down the write side
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error
-
+<return> a string containing the #GFile's parse name. The returned 
+string should be freed with g_free() when no longer needed.
 </return>
 </function>
 
-<function name="g_io_error_from_win32_error">
+<function name="g_file_get_path">
 <description>
-Converts some common error codes into GIO error codes. The
-fallback value G_IO_ERROR_FAILED is returned for error codes not
-handled.
+Gets the local pathname for #GFile, if one exists. 
+
+This call does no blocking i/o.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="error_code">
-<parameter_description> Windows error number.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GIOErrorEnum value for the given error number.
-
+<return> string containing the #GFile's path, or %NULL if 
+no such path exists. The returned string should be 
+freed with g_free() when no longer needed.
 </return>
 </function>
 
@@ -11708,78 +13004,90 @@ The returned string should be freed with g_free() when no longer needed.
 </return>
 </function>
 
-<function name="g_inet_address_get_is_loopback">
+<function name="g_file_get_uri">
 <description>
-Tests whether @address is the loopback address for its family.
+Gets the URI for the @file.
+
+This call does no blocking i/o.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is the loopback address for its family.
-
+<return> a string containing the #GFile's URI.
+The returned string should be freed with g_free() when no longer needed.
 </return>
 </function>
 
-<function name="g_app_info_get_name">
+<function name="g_file_get_uri_scheme">
 <description>
-Gets the installed name of the application. 
+Gets the URI scheme for a #GFile.
+RFC 3986 decodes the scheme as:
+&lt;programlisting&gt;
+URI = scheme &quot;:&quot; hier-part [ &quot;?&quot; query ] [ &quot;#&quot; fragment ] 
+&lt;/programlisting&gt;
+Common schemes include &quot;file&quot;, &quot;http&quot;, &quot;ftp&quot;, etc. 
+
+This call does no blocking i/o.
 
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the application for @appinfo.
+<return> a string containing the URI scheme for the given 
+#GFile. The returned string should be freed with g_free() 
+when no longer needed.
 </return>
 </function>
 
-<function name="g_file_stop_mountable_finish">
+<function name="g_file_has_parent">
 <description>
-Finishes an stop operation, see g_file_stop_mountable() for details.
+Checks if @file has a parent, and optionally, if it is @parent.
 
-Finish an asynchronous stop operation that was started
-with g_file_stop_mountable().
+If @parent is %NULL then this function returns %TRUE if @file has any
+parent at all.  If @parent is non-%NULL then %TRUE is only returned
+if @file is a child of @parent.
 
-Since: 2.22
+Since: 2.24
 
 </description>
 <parameters>
 <parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter_description> input #GFile
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="parent">
+<parameter_description> the parent to check for, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation finished successfully. %FALSE
-otherwise.
+<return> %TRUE if @file is a child of @parent (or any parent in the
+case that @parent is %NULL).
 
 </return>
 </function>
 
-<function name="g_file_get_parent">
+<function name="g_file_has_prefix">
 <description>
-Gets the parent directory for the @file. 
-If the @file represents the root directory of the 
-file system, then %NULL will be returned.
+Checks whether @file has the prefix specified by @prefix. In other word, 
+if the names of inital elements of @file&lt;!-- --&gt;s pathname match @prefix.
+Only full pathname elements are matched, so a path like /foo is not
+considered a prefix of /foobar, only of /foo/bar.
 
-This call does no blocking i/o.
+This call does no i/o, as it works purely on names. As such it can 
+sometimes return %FALSE even if @file is inside a @prefix (from a 
+filesystem point of view), because the prefix of @file is an alias 
+of @prefix.
 
+Virtual: prefix_matches
 
 </description>
 <parameters>
@@ -11787,165 +13095,97 @@ This call does no blocking i/o.
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
+<parameter name="prefix">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GFile structure to the parent of the given
-#GFile or %NULL if there is no parent. 
-Free the returned object with g_object_unref().
+<return>  %TRUE if the @files's parent, grandparent, etc is @prefix. 
+%FALSE otherwise.
 </return>
 </function>
 
-<function name="g_dbus_proxy_new_sync">
+<function name="g_file_has_uri_scheme">
 <description>
-Creates a proxy for accessing @interface_name on the remote object
-at @object_path owned by @name at @connection and synchronously
-loads D-Bus properties unless the
-#G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES flag is used.
-
-If the #G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS flag is not set, also sets up
-match rules for signals. Connect to the #GDBusProxy::g-signal signal
-to handle signals from the remote object.
-
-If @name is a well-known name and the
-#G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag isn't set and no name
-owner currently exists, the message bus will be requested to launch
-a name owner for the name.
-
-This is a synchronous failable constructor. See g_dbus_proxy_new()
-and g_dbus_proxy_new_finish() for the asynchronous version.
+Checks to see if a #GFile has a given URI scheme.
 
-See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+This call does no blocking i/o.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags used when constructing the proxy.
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
-</parameter_description>
-</parameter>
-<parameter name="object_path">
-<parameter_description> An object path.
-</parameter_description>
-</parameter>
-<parameter name="interface_name">
-<parameter_description> A D-Bus interface name.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="uri_scheme">
+<parameter_description> a string containing a URI scheme.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusProxy or %NULL if error is set. Free with g_object_unref().
-
+<return> %TRUE if #GFile's backend supports the
+given URI scheme, %FALSE if URI scheme is %NULL,
+not supported, or #GFile is invalid.
 </return>
 </function>
 
-<function name="g_resolver_lookup_by_name_finish">
+<function name="g_file_hash">
 <description>
-Retrieves the result of a call to
-g_resolver_lookup_by_name_async().
+Creates a hash value for a #GFile.
 
-If the DNS resolution failed, @error (if non-%NULL) will be set to
-a value from #GResolverError. If the operation was cancelled,
- error will be set to %G_IO_ERROR_CANCELLED.
+This call does no blocking i/o.
 
-Since: 2.22
+Virtual: hash
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> the result passed to your #GAsyncReadyCallback
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="file">
+<parameter_description> #gconstpointer to a #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GInetAddress, or %NULL on error. See
-g_resolver_lookup_by_name() for more details.
-
+<return> 0 if @file is not a valid #GFile, otherwise an 
+integer that can be used as hash value for the #GFile. 
+This function is intended for easily hashing a #GFile to 
+add to a #GHashTable or similar data structure.
 </return>
 </function>
 
-<function name="g_file_info_set_attribute_status">
+<function name="g_file_icon_get_file">
 <description>
-Sets the attribute status for an attribute key. This is only
-needed by external code that implement g_file_set_attributes_from_info()
-or similar functions.
-
-The attribute must exist in @info for this to work. Otherwise %FALSE
-is returned and @info is unchanged.
+Gets the #GFile associated with the given @icon.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key
-</parameter_description>
-</parameter>
-<parameter name="status">
-<parameter_description> a #GFileAttributeStatus
+<parameter name="icon">
+<parameter_description> a #GIcon.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the status was changed, %FALSE if the key was not set.
-
+<return> a #GFile, or %NULL.
 </return>
 </function>
 
-<function name="g_unix_is_mount_path_system_internal">
+<function name="g_file_icon_new">
 <description>
-Determines if @mount_path is considered an implementation of the
-OS. This is primarily used for hiding mountable and mounted volumes
-that only are used in the OS and has little to no relevance to the
-casual user.
+Creates a new icon for a file.
 
 
 </description>
 <parameters>
-<parameter name="mount_path">
-<parameter_description> a mount path, e.g. &lt;filename&gt;/media/disk&lt;/filename&gt; 
-or &lt;filename&gt;/usr&lt;/filename&gt;
+<parameter name="file">
+<parameter_description> a #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @mount_path is considered an implementation detail 
-of the OS.
+<return> a #GIcon for the given @file, or %NULL on error.
 </return>
 </function>
 
-<function name="g_file_info_get_etag">
+<function name="g_file_info_clear_status">
 <description>
-Gets the &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for a given 
-#GFileInfo. See %G_FILE_ATTRIBUTE_ETAG_VALUE.
-
+Clears the status information from @info.
 
 </description>
 <parameters>
@@ -11954,1310 +13194,1257 @@ Gets the &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the value of the &quot;etag:value&quot; attribute.
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_mount_finish">
+<function name="g_file_info_copy_into">
 <description>
-Finishes mounting a volume. If any errors occured during the operation,
- error will be set to contain the errors and %FALSE will be returned.
-
-If the mount operation succeeded, g_volume_get_mount() on @volume
-is guaranteed to return the mount right after calling this
-function; there's no need to listen for the 'mount-added' signal on
-#GVolumeMonitor.
-
+Copies all of the #GFileAttribute&lt;!-- --&gt;s from @src_info to @dest_info.
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult
+<parameter name="src_info">
+<parameter_description> source to copy attributes from.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store an error, or %NULL to ignore
+<parameter name="dest_info">
+<parameter_description> destination to copy attributes to.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, %FALSE if operation failed.
-</return>
+<return></return>
 </function>
 
-<function name="g_emblemed_icon_new">
+<function name="g_file_info_dup">
 <description>
-Creates a new emblemed icon for @icon with the emblem @emblem.
+Duplicates a file info structure.
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GIcon
-</parameter_description>
-</parameter>
-<parameter name="emblem">
-<parameter_description> a #GEmblem
+<parameter name="other">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GIcon
-
+<return> a duplicate #GFileInfo of @other.
 </return>
 </function>
 
-<function name="g_app_info_get_icon">
+<function name="g_file_info_get_attribute_as_string">
 <description>
-Gets the icon for the application.
+Gets the value of a attribute, formated as a string.
+This escapes things as needed to make the string valid
+utf8.
 
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the default #GIcon for @appinfo.
+<return> a UTF-8 string associated with the given @attribute.
+When you're done with the string it must be freed with g_free().
 </return>
 </function>
 
-<function name="g_bus_watch_name_on_connection_with_closures">
+<function name="g_file_info_get_attribute_boolean">
 <description>
-Version of g_bus_watch_name_on_connection() using closures instead of callbacks for
-easier binding in other languages.
+Gets the value of a boolean attribute. If the attribute does not
+contain a boolean value, %FALSE will be returned.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> The name (well-known or unique) to watch.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags from the #GBusNameWatcherFlags enumeration.
-</parameter_description>
-</parameter>
-<parameter name="name_appeared_closure">
-<parameter_description> #GClosure to invoke when @name is known
-to exist or %NULL.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="name_vanished_closure">
-<parameter_description> #GClosure to invoke when @name is known
-to not exist or %NULL.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unwatch_name() to stop watching the name.
-
+<return> the boolean value contained within the attribute. 
 </return>
 </function>
 
-<function name="g_file_parse_name">
+<function name="g_file_info_get_attribute_byte_string">
 <description>
-Constructs a #GFile with the given @parse_name (i.e. something given by g_file_get_parse_name()).
-This operation never fails, but the returned object might not support any I/O
-operation if the @parse_name cannot be parsed.
+Gets the value of a byte string attribute. If the attribute does 
+not contain a byte string, %NULL will be returned.
 
 
 </description>
 <parameters>
-<parameter name="parse_name">
-<parameter_description> a file name or path to be parsed.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GFile.
+<return> the contents of the @attribute value as a byte string, or 
+%NULL otherwise.
 </return>
 </function>
 
-<function name="g_file_replace_readwrite_async">
+<function name="g_file_info_get_attribute_data">
 <description>
-Asynchronously overwrites the file in read-write mode, replacing the
-contents, possibly creating a backup copy of the file first.
-
-For more details, see g_file_replace_readwrite() which is
-the synchronous version of this call.
-
-When the operation is finished, @callback will be called. You can then
-call g_file_replace_readwrite_finish() to get the result of the operation.
+Gets the attribute type, value and status for an attribute key.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="etag">
-<parameter_description> an &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the
-current #GFile, or NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="make_backup">
-<parameter_description> %TRUE if a backup should be created.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
+<parameter name="info">
+<parameter_description> a #GFileInfo
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request.
+<parameter name="attribute">
+<parameter_description> a file attribute key
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="type">
+<parameter_description> return location for the attribute type, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="value_pp">
+<parameter_description> return location for the attribute value, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="status">
+<parameter_description> return location for the attribute status, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @info has an attribute named @attribute, 
+%FALSE otherwise.
+</return>
 </function>
 
-<function name="gvdb_table_ref">
+<function name="g_file_info_get_attribute_int32">
 <description>
-Increases the reference count on @file.
+Gets a signed 32-bit integer contained within the attribute. If the 
+attribute does not contain a signed 32-bit integer, or is invalid, 
+0 will be returned.
+
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GvdbTable
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new reference on @file
+<return> a signed 32-bit integer from the attribute.
 </return>
 </function>
 
-<function name="g_dbus_connection_close_finish">
+<function name="g_file_info_get_attribute_int64">
 <description>
-Finishes an operation started with g_dbus_connection_close().
+Gets a signed 64-bit integer contained within the attribute. If the 
+attribute does not contain an signed 64-bit integer, or is invalid, 
+0 will be returned.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_close().
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation succeeded, %FALSE if @error is set.
-
+<return> a signed 64-bit integer from the attribute. 
 </return>
 </function>
 
-<function name="g_dbus_message_set_destination">
+<function name="g_file_info_get_attribute_object">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION header field.
+Gets the value of a #GObject attribute. If the attribute does 
+not contain a #GObject, %NULL will be returned.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GObject associated with the given @attribute, or
+%NULL otherwise.
+</return>
 </function>
 
-<function name="g_file_eject_mountable_finish">
+<function name="g_file_info_get_attribute_status">
 <description>
-Finishes an asynchronous eject operation started by 
-g_file_eject_mountable().
+Gets the attribute status for an attribute key.
 
-Deprecated: 2.22: Use g_file_eject_mountable_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="info">
+<parameter_description> a #GFileInfo
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="attribute">
+<parameter_description> a file attribute key
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @file was ejected successfully. %FALSE 
-otherwise.
+<return> a #GFileAttributeStatus for the given @attribute, or 
+%G_FILE_ATTRIBUTE_STATUS_UNSET if the key is invalid.
 
 </return>
 </function>
 
-<function name="g_socket_listener_accept_socket">
+<function name="g_file_info_get_attribute_string">
 <description>
-Blocks waiting for a client to connect to any of the sockets added
-to the listener. Returns the #GSocket that was accepted.
-
-If you want to accept the high-level #GSocketConnection, not a #GSocket,
-which is often the case, then you should use g_socket_listener_accept()
-instead.
-
-If @source_object is not %NULL it will be filled out with the source
-object specified when the corresponding socket or address was added
-to the listener.
+Gets the value of a string attribute. If the attribute does 
+not contain a string, %NULL will be returned.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
-
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
-</parameter_description>
-</parameter>
-<parameter name="source_object">
-<parameter_description> location where #GObject pointer will be stored, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocket on success, %NULL on error.
-
+<return> the contents of the @attribute value as a string, or 
+%NULL otherwise.
 </return>
 </function>
 
-<function name="g_settings_backend_flatten_tree">
+<function name="g_file_info_get_attribute_stringv">
 <description>
-Calculate the longest common prefix of all keys in a tree and write
-out an array of the key names relative to that prefix and,
-optionally, the value to store at each of those keys.
-
-You must free the value returned in @path, @keys and @values using
-g_free().  You should not attempt to free or unref the contents of
- keys or @values.
+Gets the value of a stringv attribute. If the attribute does
+not contain a stringv, %NULL will be returned.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree containing the changes
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> the location to save the path
-</parameter_description>
-</parameter>
-<parameter name="keys">
-<parameter_description> the location to save the relative keys
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> the location to save the values, or %NULL
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the contents of the @attribute value as a stringv, or
+%NULL otherwise. Do not free.
+
+</return>
 </function>
 
-<function name="g_dbus_proxy_new_for_bus">
+<function name="g_file_info_get_attribute_type">
 <description>
-Like g_dbus_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
-
-See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+Gets the attribute type for an attribute key.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> A #GBusType.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags used when constructing the proxy.
-</parameter_description>
-</parameter>
 <parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> A bus name (well-known or unique).
-</parameter_description>
-</parameter>
-<parameter name="object_path">
-<parameter_description> An object path.
-</parameter_description>
-</parameter>
-<parameter name="interface_name">
-<parameter_description> A D-Bus interface name.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> Callback function to invoke when the proxy is ready.
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> User data to pass to @callback.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GFileAttributeType for the given @attribute, or 
+%G_FILE_ATTRIBUTE_TYPE_INVALID if the key is not set.
+</return>
 </function>
 
-<function name="g_volume_eject">
+<function name="g_file_info_get_attribute_uint32">
 <description>
-Ejects a volume. This is an asynchronous operation, and is
-finished by calling g_volume_eject_finish() with the @volume
-and #GAsyncResult returned in the @callback.
+Gets an unsigned 32-bit integer contained within the attribute. If the 
+attribute does not contain an unsigned 32-bit integer, or is invalid, 
+0 will be returned.
 
-Deprecated: 2.22: Use g_volume_eject_with_operation() instead.
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the unmount if required for eject
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data that gets passed to @callback
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> an unsigned 32-bit integer from the attribute. 
+</return>
 </function>
 
-<function name="g_poll_file_monitor_new">
+<function name="g_file_info_get_attribute_uint64">
 <description>
-Polls @file for changes.
+Gets a unsigned 64-bit integer contained within the attribute. If the 
+attribute does not contain an unsigned 64-bit integer, or is invalid, 
+0 will be returned.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GFileMonitor for the given #GFile. 
+<return> a unsigned 64-bit integer from the attribute. 
 </return>
 </function>
 
-<function name="g_data_input_stream_read_until">
+<function name="g_file_info_get_content_type">
 <description>
-Reads a string from the data input stream, up to the first
-occurrence of any of the stop characters.
-
-Note that, in contrast to g_data_input_stream_read_until_async(),
-this function consumes the stop character that it finds.
+Gets the file's content type.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
-</parameter_description>
-</parameter>
-<parameter name="stop_chars">
-<parameter_description> characters to terminate the read.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> a #gsize to get the length of the data read in.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string with the data that was read before encountering
-any of the stop characters. Set @length to a #gsize to get the length
-of the string. This function will return %NULL on an error.
+<return> a string containing the file's content type.
 </return>
 </function>
 
-<function name="g_output_stream_has_pending">
+<function name="g_file_info_get_display_name">
 <description>
-Checks if an ouput stream has pending actions.
+Gets a display name for a file.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @stream has pending actions. 
+<return> a string containing the display name.
 </return>
 </function>
 
-<function name="g_filter_output_stream_get_base_stream">
+<function name="g_file_info_get_edit_name">
 <description>
-Gets the base stream for the filter stream.
+Gets the edit name for a file.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFilterOutputStream.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GOutputStream.
+<return> a string containing the edit name.
 </return>
 </function>
 
-<function name="g_dbus_error_unregister_error">
+<function name="g_file_info_get_etag">
 <description>
-Destroys an association previously set up with g_dbus_error_register_error().
+Gets the &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for a given 
+#GFileInfo. See %G_FILE_ATTRIBUTE_ETAG_VALUE.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="error_domain">
-<parameter_description> A #GQuark for a error domain.
-</parameter_description>
-</parameter>
-<parameter name="error_code">
-<parameter_description> An error code.
-</parameter_description>
-</parameter>
-<parameter name="dbus_error_name">
-<parameter_description> A D-Bus error name.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the association was destroyed, %FALSE if it wasn't found.
-
+<return> a string containing the value of the &quot;etag:value&quot; attribute.
 </return>
 </function>
 
-<function name="g_unix_mount_guess_icon">
+<function name="g_file_info_get_file_type">
 <description>
-Guesses the icon of a Unix mount. 
+Gets a file's type (whether it is a regular file, symlink, etc). 
+This is different from the file's content type, see g_file_info_get_content_type().
 
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMountEntry
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon
+<return> a #GFileType for the given file.
 </return>
 </function>
 
-<function name="g_dbus_message_new">
+<function name="g_file_info_get_icon">
 <description>
-Creates a new empty #GDBusMessage.
+Gets the icon for a file.
 
-Since: 2.26
 
 </description>
 <parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
-
+<return> #GIcon for the given @info.
 </return>
 </function>
 
-<function name="g_dbus_message_get_error_name">
+<function name="g_file_info_get_is_backup">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME header field.
+Checks if a file is a backup file.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
-
+<return> %TRUE if file is a backup file, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_vfs_get_local">
+<function name="g_file_info_get_is_hidden">
 <description>
-Gets the local #GVfs for the system.
+Checks if a file is hidden.
 
 
 </description>
 <parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GVfs.
+<return> %TRUE if the file is a hidden file, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_dbus_property_info_unref">
+<function name="g_file_info_get_is_symlink">
 <description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
+Checks if a file is a symlink.
 
-Since: 2.26
 
 </description>
 <parameters>
 <parameter name="info">
-<parameter_description> A #GDBusPropertyInfo.
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the given @info is a symlink.
+</return>
 </function>
 
-<function name="g_async_initable_init_async">
+<function name="g_file_info_get_modification_time">
 <description>
-Starts asynchronous initialization of the object implementing the
-interface. This must be done before any real use of the object after
-initial construction. If the object also implements #GInitable you can
-optionally call g_initable_init() instead.
-
-When the initialization is finished, @callback will be called. You can
-then call g_async_initable_init_finish() to get the result of the
-initialization.
-
-Implementations may also support cancellation. If @cancellable is not
-%NULL, then initialization can be cancelled by triggering the cancellable
-object from another thread. If the operation was cancelled, the error
-%G_IO_ERROR_CANCELLED will be returned. If @cancellable is not %NULL, and
-the object doesn't support cancellable initialization, the error
-%G_IO_ERROR_NOT_SUPPORTED will be returned.
-
-If this function is not called, or returns with an error, then all
-operations on the object should fail, generally returning the
-error %G_IO_ERROR_NOT_INITIALIZED.
-
-Implementations of this method must be idempotent: i.e. multiple calls
-to this function with the same argument should return the same results.
-Only the first call initializes the object; further calls return the result
-of the first call. This is so that it's safe to implement the singleton
-pattern in the GObject constructor function.
-
-For classes that also support the #GInitable interface, the default
-implementation of this method will run the g_initable_init() function
-in a thread, so if you want to support asynchronous initialization via
-threads, just implement the #GAsyncInitable interface without overriding
-any interface methods.
-
-Since: 2.22
+Gets the modification time of the current @info and sets it
+in @result.
 
 </description>
 <parameters>
-<parameter name="initable">
-<parameter_description> a #GAsyncInitable.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the operation.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="result">
+<parameter_description> a #GTimeVal.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_message_get_arg0">
+<function name="g_file_info_get_name">
 <description>
-Convenience to get the first item in the body of @message.
+Gets the name for a file.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The string item or %NULL if the first item in the body of
- message is not a string.
-
+<return> a string containing the file name.
 </return>
 </function>
 
-<function name="g_filter_output_stream_get_close_base_stream">
+<function name="g_file_info_get_size">
 <description>
-Returns whether the base stream will be closed when @stream is
-closed.
+Gets the file's size.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFilterOutputStream.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the base stream will be closed.
+<return> a #goffset containing the file's size. 
 </return>
 </function>
 
-<function name="g_file_is_native">
+<function name="g_file_info_get_sort_order">
 <description>
-Checks to see if a file is native to the platform.
+Gets the value of the sort_order attribute from the #GFileInfo.
+See %G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER.
 
-A native file s one expressed in the platform-native filename format,
-e.g. &quot;C:\Windows&quot; or &quot;/usr/bin/&quot;. This does not mean the file is local,
-as it might be on a locally mounted remote filesystem.
 
-On some systems non-native files may be available using
-the native filesystem via a userspace filesystem (FUSE), in
-these cases this call will return %FALSE, but g_file_get_path()
-will still return a native path.
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #gint32 containing the value of the &quot;standard::sort_order&quot; attribute.
+</return>
+</function>
 
-This call does no blocking i/o.
+<function name="g_file_info_get_symlink_target">
+<description>
+Gets the symlink target for a given #GFileInfo.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if file is native. 
+<return> a string containing the symlink target.
 </return>
 </function>
 
-<function name="g_file_set_attribute_uint64">
+<function name="g_file_info_has_attribute">
 <description>
-Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_UINT64 to @value. 
-If @attribute is of a different type, this operation will fail.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Checks if a file info structure has an attribute named @attribute.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile. 
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 <parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #guint64 containing the attribute's new value.
+</parameters>
+<return> %TRUE if @Ginfo has an attribute named @attribute, 
+%FALSE otherwise.
+</return>
+</function>
+
+<function name="g_file_info_has_namespace">
+<description>
+Checks if a file info structure has an attribute in the
+specified @name_space.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a #GFileQueryInfoFlags.
+<parameter name="name_space">
+<parameter_description> a file attribute namespace.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return> %TRUE if @Ginfo has an attribute in @name_space,
+%FALSE otherwise.
+
+</return>
+</function>
+
+<function name="g_file_info_list_attributes">
+<description>
+Lists the file info structure's attributes.
+
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="name_space">
+<parameter_description> a file attribute key's namespace.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @attribute was successfully set to @value 
-in the @file, %FALSE otherwise.
+<return> a null-terminated array of strings of all of the 
+possible attribute types for the given @name_space, or 
+%NULL on error.
 </return>
 </function>
 
-<function name="g_file_unmount_mountable_with_operation">
+<function name="g_file_info_new">
 <description>
-Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
+Creates a new file info structure.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_unmount_mountable_finish() to get the result of the operation.
+</description>
+<parameters>
+</parameters>
+<return> a #GFileInfo.
+</return>
+</function>
 
-Since: 2.22
+<function name="g_file_info_remove_attribute">
+<description>
+Removes all cases of @attribute from @info if it exists.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_info_set_attribute">
+<description>
+Sets the @attribute to contain the given value, if possible.
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter name="type">
+<parameter_description> a #GFileAttributeType
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="value_p">
+<parameter_description> pointer to the value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_drive_is_media_removable">
+<function name="g_file_info_set_attribute_boolean">
 <description>
-Checks if the @drive supports removable media.
-
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
+</parameter_description>
+</parameter>
+<parameter name="attr_value">
+<parameter_description> a boolean value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @drive supports removable media, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_unix_socket_address_get_address_type">
+<function name="g_file_info_set_attribute_byte_string">
 <description>
-Gets @address's type.
-
-Since: 2.26
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetSocketAddress
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
+</parameter_description>
+</parameter>
+<parameter name="attr_value">
+<parameter_description> a byte string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GUnixSocketAddressType
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_message_bytes_needed">
+<function name="g_file_info_set_attribute_int32">
 <description>
-Utility function to calculate how many bytes are needed to
-completely deserialize the D-Bus message stored at @blob.
-
-Since: 2.26
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 </description>
 <parameters>
-<parameter name="blob">
-<parameter_description> A blob represent a binary D-Bus message.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="blob_len">
-<parameter_description> The length of @blob (must be at least 16).
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="attr_value">
+<parameter_description> a signed 32-bit integer
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes needed or -1 if @error is set (e.g. if
- blob contains invalid data or not enough data is available to
-determine the size).
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_enumerator_next_file">
+<function name="g_file_info_set_attribute_int64">
 <description>
-Returns information for the next file in the enumerated object.
-Will block until the information is available. The #GFileInfo 
-returned from this function will contain attributes that match the 
-attribute string that was passed when the #GFileEnumerator was created.
-
-On error, returns %NULL and sets @error to the error. If the
-enumerator is at the end, %NULL will be returned and @error will
-be unset.
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="attribute">
+<parameter_description> attribute name to set.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter name="attr_value">
+<parameter_description> int64 value to set attribute to.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GFileInfo or %NULL on error or end of enumerator.
-Free the returned object with g_object_unref() when no longer needed.
-</return>
+<return></return>
 </function>
 
-<function name="g_charset_converter_get_use_fallback">
+<function name="g_file_info_set_attribute_mask">
 <description>
-Gets the #GCharsetConverter:use-fallback property.
-
-Since: 2.24
+Sets @mask on @info to match specific attribute types.
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> a #GCharsetConverter
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="mask">
+<parameter_description> a #GFileAttributeMatcher.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if fallbacks are used by @converter
-
-</return>
+<return></return>
 </function>
 
-<function name="g_permission_acquire_async">
+<function name="g_file_info_set_attribute_object">
 <description>
-Attempts to acquire the permission represented by @permission.
-
-This is the first half of the asynchronous version of
-g_permission_acquire().
-
-Since: 2.26
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> the #GAsyncReadyCallback to call when done
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the user data to pass to @callback
+<parameter name="attr_value">
+<parameter_description> a #GObject.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_connection_register_subtree">
+<function name="g_file_info_set_attribute_status">
 <description>
-Registers a whole subtree of &lt;quote&gt;dynamic&lt;/quote&gt; objects.
-
-The @enumerate and @introspection functions in @vtable are used to
-convey, to remote callers, what nodes exist in the subtree rooted
-by @object_path.
-
-When handling remote calls into any node in the subtree, first the
- enumerate function is used to check if the node exists. If the node exists
-or the #G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES flag is set
-the @introspection function is used to check if the node supports the
-requested method. If so, the @dispatch function is used to determine
-where to dispatch the call. The collected #GDBusInterfaceVTable and
-#gpointer will be used to call into the interface vtable for processing
-the request.
-
-All calls into user-provided code will be invoked in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this method from.
-
-If an existing subtree is already registered at @object_path or
-then @error is set to #G_IO_ERROR_EXISTS.
-
-Note that it is valid to register regular objects (using
-g_dbus_connection_register_object()) in a subtree registered with
-g_dbus_connection_register_subtree() - if so, the subtree handler
-is tried as the last resort. One way to think about a subtree
-handler is to consider it a &lt;quote&gt;fallback handler&lt;/quote&gt;
-for object paths not registered via g_dbus_connection_register_object()
-or other bindings.
-
-Note that @vtable will be copied so you cannot change it after
-registration.
+Sets the attribute status for an attribute key. This is only
+needed by external code that implement g_file_set_attributes_from_info()
+or similar functions.
 
-See &lt;xref linkend=&quot;gdbus-subtree-server&quot;/&gt; for an example of how to use this method.
+The attribute must exist in @info for this to work. Otherwise %FALSE
+is returned and @info is unchanged.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="object_path">
-<parameter_description> The object path to register the subtree at.
+<parameter name="info">
+<parameter_description> a #GFileInfo
 </parameter_description>
 </parameter>
-<parameter name="vtable">
-<parameter_description> A #GDBusSubtreeVTable to enumerate, introspect and dispatch nodes in the subtree.
+<parameter name="attribute">
+<parameter_description> a file attribute key
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags used to fine tune the behavior of the subtree.
+<parameter name="status">
+<parameter_description> a #GFileAttributeStatus
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> Data to pass to functions in @vtable.
+</parameters>
+<return> %TRUE if the status was changed, %FALSE if the key was not set.
+
+</return>
+</function>
+
+<function name="g_file_info_set_attribute_string">
+<description>
+Sets the @attribute to contain the given @attr_value, 
+if possible.
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function to call when the subtree is unregistered.
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="attr_value">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if @error is set, otherwise a subtree registration id (never 0)
-that can be used with g_dbus_connection_unregister_subtree() .
-
-</return>
+<return></return>
 </function>
 
-<function name="g_application_invoke_action">
+<function name="g_file_info_set_attribute_stringv">
 <description>
-Invokes the action @name of the passed #GApplication.
+Sets the @attribute to contain the given @attr_value,
+if possible.
 
-This function has different behavior depending on whether @application
-is acting as a proxy for another process.  In the normal case where
-the current process is hosting the application, and the specified
-action exists and is enabled, the #GApplication::action signal will
-be emitted.
+Sinze: 2.22
 
-If @application is a proxy, then the specified action will be invoked
-in the remote process. It is not necessary to call
-g_application_add_action() in the current process in order to invoke
-one remotely.
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a file attribute key.
+</parameter_description>
+</parameter>
+<parameter name="attr_value">
+<parameter_description> a %NULL terminated string array
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-Since: 2.26
+<function name="g_file_info_set_attribute_uint32">
+<description>
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the action to invoke
+<parameter name="attribute">
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="platform_data">
-<parameter_description> platform-specific event data
+<parameter name="attr_value">
+<parameter_description> an unsigned 32-bit integer.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_get_attribute_data">
+<function name="g_file_info_set_attribute_uint64">
 <description>
-Gets the attribute type, value and status for an attribute key.
-
+Sets the @attribute to contain the given @attr_value, 
+if possible.
 
 </description>
 <parameters>
 <parameter name="info">
-<parameter_description> a #GFileInfo
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
 <parameter name="attribute">
-<parameter_description> a file attribute key
+<parameter_description> a file attribute key.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> return location for the attribute type, or %NULL
+<parameter name="attr_value">
+<parameter_description> an unsigned 64-bit integer.
 </parameter_description>
 </parameter>
-<parameter name="value_pp">
-<parameter_description> return location for the attribute value, or %NULL
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_info_set_content_type">
+<description>
+Sets the content type attribute for a given #GFileInfo.
+See %G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE.
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="status">
-<parameter_description> return location for the attribute status, or %NULL
+<parameter name="content_type">
+<parameter_description> a content type. See #GContentType.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @info has an attribute named @attribute, 
-%FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_io_stream_close_finish">
+<function name="g_file_info_set_display_name">
 <description>
-Closes a stream.
-
-Since: 2.22
+Sets the display name for the current #GFileInfo.
+See %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult
+<parameter name="display_name">
+<parameter_description> a string containing a display name.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_info_set_edit_name">
+<description>
+Sets the edit name for the current file.
+See %G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME.
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="edit_name">
+<parameter_description> a string containing an edit name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if stream was successfully closed, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_converter_convert">
+<function name="g_file_info_set_file_type">
 <description>
-This is the main operation used when converting data. It is to be called
-multiple times in a loop, and each time it will do some work, i.e.
-producing some output (in @outbuf) or consuming some input (from @inbuf) or
-both. If its not possible to do any work an error is returned.
+Sets the file type in a #GFileInfo to @type.
+See %G_FILE_ATTRIBUTE_STANDARD_TYPE.
 
-Note that a single call may not consume all input (or any input at all).
-Also a call may produce output even if given no input, due to state stored
-in the converter producing output.
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a #GFileType.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-If any data was either produced or consumed, and then an error happens, then
-only the successful conversion is reported and the error is returned on the
-next call.
+<function name="g_file_info_set_icon">
+<description>
+Sets the icon for a given #GFileInfo. 
+See %G_FILE_ATTRIBUTE_STANDARD_ICON.
 
-A full conversion loop involves calling this method repeatedly, each time
-giving it new input and space output space. When there is no more input
-data after the data in @inbuf, the flag %G_CONVERTER_INPUT_AT_END must be set.
-The loop will be (unless some error happens) returning %G_CONVERTER_CONVERTED
-each time until all data is consumed and all output is produced, then
-%G_CONVERTER_FINISHED is returned instead. Note, that %G_CONVERTER_FINISHED
-may be returned even if %G_CONVERTER_INPUT_AT_END is not set, for instance
-in a decompression converter where the end of data is detectable from the
-data (and there might even be other data after the end of the compressed data).
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="icon">
+<parameter_description> a #GIcon.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-When some data has successfully been converted @bytes_read and is set to
-the number of bytes read from @inbuf, and @bytes_written is set to indicate
-how many bytes was written to @outbuf. If there are more data to output
-or consume (i.e. unless the G_CONVERTER_INPUT_AT_END is specified) then
-G_CONVERTER_CONVERTED is returned, and if no more data is to be output
-then G_CONVERTER_FINISHED is returned.
+<function name="g_file_info_set_is_hidden">
+<description>
+Sets the &quot;is_hidden&quot; attribute in a #GFileInfo according to @is_symlink.
+See %G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN.
 
-On error %G_CONVERTER_ERROR is returned and @error is set accordingly.
-Some errors need special handling:
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="is_hidden">
+<parameter_description> a #gboolean.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-%G_IO_ERROR_NO_SPACE is returned if there is not enough space
-to write the resulting converted data, the application should
-call the function again with a larger @outbuf to continue.
+<function name="g_file_info_set_is_symlink">
+<description>
+Sets the &quot;is_symlink&quot; attribute in a #GFileInfo according to @is_symlink.
+See %G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK.
 
-%G_IO_ERROR_PARTIAL_INPUT is returned if there is not enough
-input to fully determine what the conversion should produce,
-and the %G_CONVERTER_INPUT_AT_END flag is not set. This happens for
-example with an incomplete multibyte sequence when converting text,
-or when a regexp matches up to the end of the input (and may match
-further input). It may also happen when @inbuf_size is zero and
-there is no more data to produce.
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="is_symlink">
+<parameter_description> a #gboolean.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-When this happens the application should read more input and then
-call the function again. If further input shows that there is no
-more data call the function again with the same data but with
-the %G_CONVERTER_INPUT_AT_END flag set. This may cause the conversion
-to finish as e.g. in the regexp match case (or, to fail again with
-%G_IO_ERROR_PARTIAL_INPUT in e.g. a charset conversion where the
-input is actually partial).
+<function name="g_file_info_set_modification_time">
+<description>
+Sets the %G_FILE_ATTRIBUTE_TIME_MODIFIED attribute in the file
+info to the given time value.
 
-After g_converter_convert() has returned %G_CONVERTER_FINISHED the
-converter object is in an invalid state where its not allowed
-to call g_converter_convert() anymore. At this time you can only
-free the object or call g_converter_reset() to reset it to the
-initial state.
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="mtime">
+<parameter_description> a #GTimeVal.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-If the flag %G_CONVERTER_FLUSH is set then conversion is modified
-to try to write out all internal state to the output. The application
-has to call the function multiple times with the flag set, and when
-the availible input has been consumed and all internal state has
-been produced then %G_CONVERTER_FLUSHED (or %G_CONVERTER_FINISHED if
-really at the end) is returned instead of %G_CONVERTER_CONVERTED.
-This is somewhat similar to what happens at the end of the input stream,
-but done in the middle of the data.
+<function name="g_file_info_set_name">
+<description>
+Sets the name attribute for the current #GFileInfo. 
+See %G_FILE_ATTRIBUTE_STANDARD_NAME.
 
-This has different meanings for different conversions. For instance
-in a compression converter it would mean that we flush all the
-compression state into output such that if you uncompress the
-compressed data you get back all the input data. Doing this may
-make the final file larger due to padding though. Another example
-is a regexp conversion, where if you at the end of the flushed data
-have a match, but there is also a potential longer match. In the
-non-flushed case we would ask for more input, but when flushing we
-treat this as the end of input and do the match.
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> a string containing a name.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-Flushing is not always possible (like if a charset converter flushes
-at a partial multibyte sequence). Converters are supposed to try
-to produce as much output as possible and then return an error
-(typically %G_IO_ERROR_PARTIAL_INPUT).
+<function name="g_file_info_set_size">
+<description>
+Sets the %G_FILE_ATTRIBUTE_STANDARD_SIZE attribute in the file info 
+to the given size.
 
-Since: 2.24
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> a #goffset containing the file's size.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_info_set_sort_order">
+<description>
+Sets the sort order attribute in the file info structure. See 
+%G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER.
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> a #GConverter.
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="inbuf">
-<parameter_description> the buffer containing the data to convert.
+<parameter name="sort_order">
+<parameter_description> a sort order integer.
 </parameter_description>
 </parameter>
-<parameter name="inbuf_size">
-<parameter_description> the number of bytes in @inbuf
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_info_set_symlink_target">
+<description>
+Sets the %G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET attribute in the file info 
+to the given symlink target.
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="outbuf">
-<parameter_description> a buffer to write converted data in.
+<parameter name="symlink_target">
+<parameter_description> a static string containing a path to a symlink target.
 </parameter_description>
 </parameter>
-<parameter name="outbuf_size">
-<parameter_description> the number of bytes in @outbuf, must be at least one
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_info_unset_attribute_mask">
+<description>
+Unsets a mask set by g_file_info_set_attribute_mask(), if one
+is set.
+
+</description>
+<parameters>
+<parameter name="info">
+<parameter_description> #GFileInfo.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a #GConvertFlags controlling the conversion details
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_input_stream_query_info">
+<description>
+Queries a file input stream the given @attributes. This function blocks 
+while querying the stream. For the asynchronous (non-blocking) version 
+of this function, see g_file_input_stream_query_info_async(). While the 
+stream is blocked, the stream will set the pending flag internally, and 
+any other operations on the stream will fail with %G_IO_ERROR_PENDING.
+
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GFileInputStream.
 </parameter_description>
 </parameter>
-<parameter name="bytes_read">
-<parameter_description> will be set to the number of bytes read from @inbuf on success
+<parameter name="attributes">
+<parameter_description> a file attribute query string.
 </parameter_description>
 </parameter>
-<parameter name="bytes_written">
-<parameter_description> will be set to the number of bytes written to @outbuf on success
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GConverterResult, %G_CONVERTER_ERROR on error.
-
+<return> a #GFileInfo, or %NULL on error.
 </return>
 </function>
 
-<function name="g_output_stream_splice_async">
+<function name="g_file_input_stream_query_info_async">
 <description>
-Splices a stream asynchronously.
-When the operation is finished @callback will be called.
-You can then call g_output_stream_splice_finish() to get the 
-result of the operation.
+Queries the stream information asynchronously.
+When the operation is finished @callback will be called. 
+You can then call g_file_input_stream_query_info_finish() 
+to get the result of the operation.
+
+For the synchronous version of this function, 
+see g_file_input_stream_query_info(). 
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be set
 
-For the synchronous, blocking version of this function, see 
-g_output_stream_splice().
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="source">
-<parameter_description> a #GInputStream. 
+<parameter_description> a #GFileInputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GOutputStreamSpliceFlags.
+<parameter name="attributes">
+<parameter_description> a file attribute query string.
 </parameter_description>
 </parameter>
 <parameter name="io_priority">
-<parameter_description> the io priority of the request.
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -13265,126 +14452,161 @@ g_output_stream_splice().
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback. 
+<parameter_description> callback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_mount_guess_should_display">
+<function name="g_file_input_stream_query_info_finish">
 <description>
-Guesses whether a Unix mount should be displayed in the UI.
+Finishes an asynchronous info query operation.
 
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMountEntry
+<parameter name="stream">
+<parameter_description> a #GFileInputStream.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @mount_entry is deemed to be displayable.
-</return>
-</function>
-
-<function name="g_mount_operation_new">
-<description>
-Creates a new mount operation.
-
-
-</description>
-<parameters>
-</parameters>
-<return> a #GMountOperation.
-</return>
-</function>
-
-<function name="g_unix_mounts_changed_since">
-<description>
-Checks if the unix mounts have changed since a given unix time.
-
-
-</description>
-<parameters>
-<parameter name="time">
-<parameter_description> guint64 to contain a timestamp.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, 
+or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mounts have changed since @time. 
+<return> #GFileInfo. 
 </return>
 </function>
 
-<function name="g_socket_get_keepalive">
+<function name="g_file_io_stream_get_etag">
 <description>
-Gets the keepalive mode of the socket. For details on this,
-see g_socket_set_keepalive().
+Gets the entity tag for the file when it has been written.
+This must be called after the stream has been written
+and closed, as the etag can change while writing.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="stream">
+<parameter_description> a #GFileIOStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if keepalive is active, %FALSE otherwise.
+<return> the entity tag for the stream.
 
 </return>
 </function>
 
-<function name="g_dbus_generate_guid">
+<function name="g_file_io_stream_query_info">
 <description>
-Generate a D-Bus GUID that can be used with
-e.g. g_dbus_connection_new().
+Queries a file io stream for the given @attributes.
+This function blocks while querying the stream. For the asynchronous
+version of this function, see g_file_io_stream_query_info_async().
+While the stream is blocked, the stream will set the pending flag
+internally, and any other operations on the stream will fail with
+%G_IO_ERROR_PENDING.
 
-See the D-Bus specification regarding what strings are valid D-Bus
-GUID (for example, D-Bus GUIDs are not RFC-4122 compliant).
+Can fail if the stream was already closed (with @error being set to
+%G_IO_ERROR_CLOSED), the stream has pending operations (with @error being
+set to %G_IO_ERROR_PENDING), or if querying info is not supported for
+the stream's interface (with @error being set to %G_IO_ERROR_NOT_SUPPORTED). I
+all cases of failure, %NULL will be returned.
 
-Since: 2.26
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be set, and %NULL will
+be returned.
+
+Since: 2.22
 
 </description>
 <parameters>
+<parameter name="stream">
+<parameter_description> a #GFileIOStream.
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> a file attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, %NULL to ignore.
+</parameter_description>
+</parameter>
 </parameters>
-<return> A valid D-Bus GUID. Free with g_free().
+<return> a #GFileInfo for the @stream, or %NULL on error.
 
 </return>
 </function>
 
-<function name="g_dbus_is_interface_name">
+<function name="g_file_io_stream_query_info_async">
 <description>
-Checks if @string is a valid D-Bus interface name.
+Asynchronously queries the @stream for a #GFileInfo. When completed,
+ callback will be called with a #GAsyncResult which can be used to
+finish the operation with g_file_io_stream_query_info_finish().
 
-Since: 2.26
+For the synchronous version of this function, see
+g_file_io_stream_query_info().
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> The string to check.
+<parameter name="stream">
+<parameter_description> a #GFileIOStream.
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> a file attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;gio-GIOScheduler&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if valid, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_client_connect_to_service_finish">
+<function name="g_file_io_stream_query_info_finish">
 <description>
-Finishes an async connect operation. See g_socket_client_connect_to_service_async()
+Finalizes the asynchronous query started
+by g_file_io_stream_query_info_async().
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="stream">
+<parameter_description> a #GFileIOStream.
 </parameter_description>
 </parameter>
 <parameter name="result">
@@ -13392,471 +14614,567 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketConnection on success, %NULL on error.
+<return> A #GFileInfo for the finished query.
 
 </return>
 </function>
 
-<function name="g_output_stream_is_closing">
+<function name="g_file_is_native">
 <description>
-Checks if an output stream is being closed. This can be
-used inside e.g. a flush implementation to see if the
-flush (or other i/o operation) is called from within
-the closing operation.
+Checks to see if a file is native to the platform.
+
+A native file s one expressed in the platform-native filename format,
+e.g. &quot;C:\Windows&quot; or &quot;/usr/bin/&quot;. This does not mean the file is local,
+as it might be on a locally mounted remote filesystem.
+
+On some systems non-native files may be available using
+the native filesystem via a userspace filesystem (FUSE), in
+these cases this call will return %FALSE, but g_file_get_path()
+will still return a native path.
+
+This call does no blocking i/o.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @stream is being closed. %FALSE otherwise.
-
+<return> %TRUE if file is native. 
 </return>
 </function>
 
-<function name="g_socket_receive">
+<function name="g_file_load_contents">
 <description>
-Receive data (up to @size bytes) from a socket. This is mainly used by
-connection-oriented sockets; it is identical to g_socket_receive_from()
-with @address set to %NULL.
-
-For %G_SOCKET_TYPE_DATAGRAM and %G_SOCKET_TYPE_SEQPACKET sockets,
-g_socket_receive() will always read either 0 or 1 complete messages from
-the socket. If the received message is too large to fit in @buffer, then
-the data beyond @size bytes will be discarded, without any explicit
-indication that this has occurred.
-
-For %G_SOCKET_TYPE_STREAM sockets, g_socket_receive() can return any
-number of bytes, up to @size. If more than @size bytes have been
-received, the additional data will be returned in future calls to
-g_socket_receive().
-
-If the socket is in blocking mode the call will block until there is
-some data to receive or there is an error. If there is no data available
-and the socket is in non-blocking mode, a %G_IO_ERROR_WOULD_BLOCK error
-will be returned. To be notified when data is available, wait for the
-%G_IO_IN condition.
+Loads the content of the file into memory. The data is always 
+zero-terminated, but this is not included in the resultant @length.
+The returned @content should be freed with g_free() when no longer
+needed.
 
-On error -1 is returned and @error is set accordingly.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> a buffer to read data into (which should be at least @size
-bytes long).
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the number of bytes you want to read from the socket
+<parameter name="contents">
+<parameter_description> a location to place the contents of the file.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+<parameter name="length">
+<parameter_description> a location to place the length of the contents of the file,
+or %NULL if the length is not needed
+</parameter_description>
+</parameter>
+<parameter name="etag_out">
+<parameter_description> a location to place the current entity tag for the file,
+or %NULL if the entity tag is not needed
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes read, or -1 on error
-
+<return> %TRUE if the @file's contents were successfully loaded.
+%FALSE if there were errors.
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_int64">
+<function name="g_file_load_contents_async">
 <description>
-Gets a signed 64-bit integer contained within the attribute. If the 
-attribute does not contain an signed 64-bit integer, or is invalid, 
-0 will be returned.
+Starts an asynchronous load of the @file's contents.
+
+For more details, see g_file_load_contents() which is
+the synchronous version of this call.
 
+When the load operation has completed, @callback will be called 
+with @user data. To finish the operation, call 
+g_file_load_contents_finish() with the #GAsyncResult returned by 
+the @callback.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> a signed 64-bit integer from the attribute. 
-</return>
+<return></return>
 </function>
 
-<function name="g_unix_socket_address_get_is_abstract">
+<function name="g_file_load_contents_finish">
 <description>
-Tests if @address is abstract.
-
-Since: 2.22
+Finishes an asynchronous load of the @file's contents. 
+The contents are placed in @contents, and @length is set to the 
+size of the @contents string. The @content should be freed with
+g_free() when no longer needed. If @etag_out is present, it will be 
+set to the new entity tag for the @file.
 
-Deprecated: Use g_unix_socket_address_get_address_type()
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetSocketAddress
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="contents">
+<parameter_description> a location to place the contents of the file.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> a location to place the length of the contents of the file,
+or %NULL if the length is not needed
+</parameter_description>
+</parameter>
+<parameter name="etag_out">
+<parameter_description> a location to place the current entity tag for the file,
+or %NULL if the entity tag is not needed
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the address is abstract, %FALSE otherwise
-
+<return> %TRUE if the load was successful. If %FALSE and @error is 
+present, it will be set appropriately. 
 </return>
 </function>
 
-<function name="g_socket_connect">
+<function name="g_file_load_partial_contents_async">
 <description>
-Connect the socket to the specified remote address.
+Reads the partial contents of a file. A #GFileReadMoreCallback should be 
+used to stop reading from the file when appropriate, else this function
+will behave exactly as g_file_load_contents_async(). This operation 
+can be finished by g_file_load_partial_contents_finish().
 
-For connection oriented socket this generally means we attempt to make
-a connection to the @address. For a connection-less socket it sets
-the default address for g_socket_send() and discards all incoming datagrams
-from other sources.
+Users of this function should be aware that @user_data is passed to 
+both the @read_more_callback and the @callback.
 
-Generally connection oriented sockets can only connect once, but
-connection-less sockets can connect multiple times to change the
-default address.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-If the connect call needs to do network I/O it will block, unless
-non-blocking I/O is enabled. Then %G_IO_ERROR_PENDING is returned
-and the user can be notified of the connection finishing by waiting
-for the G_IO_OUT condition. The result of the connection can then be
-checked with g_socket_check_connect_result().
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="read_more_callback">
+<parameter_description> a #GFileReadMoreCallback to receive partial data and to specify whether further data should be read.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to the callback functions.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_load_partial_contents_finish">
+<description>
+Finishes an asynchronous partial load operation that was started
+with g_file_load_partial_contents_async(). The data is always 
+zero-terminated, but this is not included in the resultant @length.
+The returned @content should be freed with g_free() when no longer
+needed.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="address">
-<parameter_description> a #GSocketAddress specifying the remote address.
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+<parameter name="contents">
+<parameter_description> a location to place the contents of the file.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> a location to place the length of the contents of the file,
+or %NULL if the length is not needed
+</parameter_description>
+</parameter>
+<parameter name="etag_out">
+<parameter_description> a location to place the current entity tag for the file,
+or %NULL if the entity tag is not needed
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if connected, %FALSE on error.
-
+<return> %TRUE if the load was successful. If %FALSE and @error is 
+present, it will be set appropriately. 
 </return>
 </function>
 
-<function name="g_seekable_truncate">
+<function name="g_file_make_directory">
 <description>
-Truncates a stream with a given #offset. 
+Creates a directory. Note that this will only create a child directory of
+the immediate parent directory of the path or URI given by the #GFile. To 
+recursively create directories, see g_file_make_directory_with_parents().
+This function will fail if the parent directory does not exist, setting 
+ error to %G_IO_ERROR_NOT_FOUND. If the file system doesn't support creating
+directories, this function will fail, setting @error to 
+%G_IO_ERROR_NOT_SUPPORTED.
+
+For a local #GFile the newly created directory will have the default
+(current) ownership and permissions of the current process.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
-operation was partially finished when the operation was cancelled the
-partial result will be returned, without an error.
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="seekable">
-<parameter_description> a #GSeekable.
-</parameter_description>
-</parameter>
-<parameter name="offset">
-<parameter_description> a #goffset.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> a #GError, or %NULL 
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful. If an error
-has occurred, this function will return %FALSE and set @error
-appropriately if present. 
+<return> %TRUE on successful creation, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_buffered_input_stream_read_byte">
+<function name="g_file_make_directory_with_parents">
 <description>
-Tries to read a single byte from the stream or the buffer. Will block
-during this read.
+Creates a directory and any parent directories that may not exist similar to
+'mkdir -p'. If the file system does not support creating directories, this
+function will fail, setting @error to %G_IO_ERROR_NOT_SUPPORTED.
 
-On success, the byte read from the stream is returned. On end of stream
--1 is returned but it's not an exceptional error and @error is not set.
+For a local #GFile the newly created directories will have the default
+(current) ownership and permissions of the current process.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
-operation was partially finished when the operation was cancelled the
-partial result will be returned, without an error.
-
-On error -1 is returned and @error is set accordingly.
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedInputStream
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> a #GError, or %NULL 
 </parameter_description>
 </parameter>
 </parameters>
-<return> the byte read from the @stream, or -1 on end of stream or error.
+<return> %TRUE if all directories have been successfully created, %FALSE
+otherwise.
+
 </return>
 </function>
 
-<function name="g_drive_eject_finish">
+<function name="g_file_make_symbolic_link">
 <description>
-Finishes ejecting a drive.
+Creates a symbolic link named @file which contains the string
+ symlink_value 
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
-Deprecated: 2.22: Use g_drive_eject_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="file">
+<parameter_description> a #GFile with the name of the symlink to create
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="symlink_value">
+<parameter_description> a string with the path for the target of the new symlink
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the drive has been ejected successfully,
-%FALSE otherwise.
-
+<return> %TRUE on the creation of a new symlink, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_socket_get_socket_type">
+<function name="g_file_monitor">
 <description>
-Gets the socket type of the socket.
+Obtains a file or directory monitor for the given file, depending
+on the type of the file.
 
-Since: 2.22
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="file">
+<parameter_description> input #GFile
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileMonitorFlags
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketType
+<return> a #GFileMonitor for the given @file, or %NULL on error.
+Free the returned object with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_buffered_input_stream_get_buffer_size">
+<function name="g_file_monitor_cancel">
 <description>
-Gets the size of the input buffer.
+Cancels a file monitor.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedInputStream
+<parameter name="monitor">
+<parameter_description> a #GFileMonitor.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the current buffer size.
+<return> %TRUE if monitor was cancelled.
 </return>
 </function>
 
-<function name="g_unix_fd_list_peek_fds">
+<function name="g_file_monitor_directory">
 <description>
-Returns the array of file descriptors that is contained in this
-object.
-
-After this call, the descriptors remain the property of @list.  The
-caller must not close them and must not free the array.  The array is
-valid only until @list is changed in any way.
-
-If @length is non-%NULL then it is set to the number of file
-descriptors in the returned array. The returned array is also
-terminated with -1.
+Obtains a directory monitor for the given file.
+This may fail if directory monitoring is not supported.
 
-This function never returns %NULL. In case there are no file
-descriptors contained in @list, an empty array is returned.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.24
+Virtual: monitor_dir
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GUnixFDList
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> pointer to the length of the returned array, or %NULL
+<parameter name="flags">
+<parameter_description> a set of #GFileMonitorFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of file descriptors
-
+<return> a #GFileMonitor for the given @file, or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_create_async">
+<function name="g_file_monitor_emit_event">
 <description>
-Asynchronously creates a new file and returns an output stream for writing to it.
-The file must not already exist.
-
-For more details, see g_file_create() which is
-the synchronous version of this call.
+Emits the #GFileMonitor::changed signal if a change
+has taken place. Should be called from file monitor 
+implementations only.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_create_finish() to get the result of the operation.
+The signal will be emitted from an idle handler (in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+context&lt;/link&gt;).
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
+<parameter name="monitor">
+<parameter_description> a #GFileMonitor.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="child">
+<parameter_description> a #GFile.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="other_file">
+<parameter_description> a #GFile.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="event_type">
+<parameter_description> a set of #GFileMonitorEvent flags.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_connection_new_finish">
+<function name="g_file_monitor_file">
 <description>
-Finishes an operation started with g_dbus_connection_new().
+Obtains a file monitor for the given file. If no file notification
+mechanism exists, then regular polling of the file is used.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_new().
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileMonitorFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a #GError, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
-
+<return> a #GFileMonitor for the given @file, or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_info_has_namespace">
+<function name="g_file_monitor_is_cancelled">
 <description>
-Checks if a file info structure has an attribute in the
-specified @name_space.
+Returns whether the monitor is canceled.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="name_space">
-<parameter_description> a file attribute namespace.
+<parameter name="monitor">
+<parameter_description> a #GFileMonitor
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @Ginfo has an attribute in @name_space,
-%FALSE otherwise.
-
+<return> %TRUE if monitor is canceled. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_app_info_can_delete">
+<function name="g_file_monitor_set_rate_limit">
 <description>
-Obtains the information whether the #GAppInfo can be deleted.
-See g_app_info_delete().
-
-Since: 2.20
+Sets the rate limit to which the @monitor will report
+consecutive change events to the same file.
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo
+<parameter name="monitor">
+<parameter_description> a #GFileMonitor.
+</parameter_description>
+</parameter>
+<parameter name="limit_msecs">
+<parameter_description> a non-negative integer with the limit in milliseconds
+to poll for changes
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @appinfo can be deleted
-
-</return>
+<return></return>
 </function>
 
-<function name="g_drive_eject_with_operation">
+<function name="g_file_mount_enclosing_volume">
 <description>
-Ejects a drive. This is an asynchronous operation, and is
-finished by calling g_drive_eject_with_operation_finish() with the @drive
-and #GAsyncResult data returned in the @callback.
+Starts a @mount_operation, mounting the volume that contains the file @location. 
 
-Since: 2.22
+When this operation has completed, @callback will be called with
+ user_user data, and the operation can be finalized with 
+g_file_mount_enclosing_volume_finish().
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="location">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> flags affecting the unmount if required for eject
+<parameter_description> flags affecting the operation
 </parameter_description>
 </parameter>
 <parameter name="mount_operation">
@@ -13868,321 +15186,445 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_resolver_lookup_service_async">
+<function name="g_file_mount_enclosing_volume_finish">
 <description>
-Begins asynchronously performing a DNS SRV lookup for the given
- service and @protocol in the given @domain, and eventually calls
- callback, which must call g_resolver_lookup_service_finish() to
-get the final result. See g_resolver_lookup_service() for more
-details.
+Finishes a mount operation started by g_file_mount_enclosing_volume().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
+<parameter name="location">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="service">
-<parameter_description> the service type to look up (eg, &quot;ldap&quot;)
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="protocol">
-<parameter_description> the networking protocol to use for @service (eg, &quot;tcp&quot;)
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="domain">
-<parameter_description> the DNS domain to look up the service in
+</parameters>
+<return> %TRUE if successful. If an error
+has occurred, this function will return %FALSE and set @error
+appropriately if present.
+</return>
+</function>
+
+<function name="g_file_mount_mountable">
+<description>
+Mounts a file of type G_FILE_TYPE_MOUNTABLE.
+Using @mount_operation, you can request callbacks when, for instance, 
+passwords are needed during authentication.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_mount_mountable_finish() to get the result of the operation.
+
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags affecting the operation
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call after resolution completes
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> data for @callback
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gvdb_table_has_value">
+<function name="g_file_mount_mountable_finish">
 <description>
-Checks for a value named @key in @file.
+Finishes a mount operation. See g_file_mount_mountable() for details.
+
+Finish an asynchronous mount operation that was started 
+with g_file_mount_mountable().
 
-Note: this function does not consider non-value nodes (other hash
-tables, for example).
 
 </description>
 <parameters>
 <parameter name="file">
-<parameter_description> a #GvdbTable
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a string
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @key is in the table
+<return> a #GFile or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_set_attribute">
+<function name="g_file_move">
 <description>
-Sets an attribute in the file with attribute name @attribute to @value.
+Tries to move the file or directory @source to the location specified by @destination.
+If native move operations are supported then this is used, otherwise a copy + delete
+fallback is used. The native implementation may support moving directories (for instance
+on moves inside the same filesystem), but the fallback code does not.
+
+If the flag #G_FILE_COPY_OVERWRITE is specified an already
+existing @destination file is overwritten.
+
+If the flag #G_FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks
+will be copied as symlinks, otherwise the target of the
+ source symlink will be copied.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
 was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
+If @progress_callback is not %NULL, then the operation can be monitored by
+setting this to a #GFileProgressCallback function. @progress_callback_data
+will be passed to this function. It is guaranteed that this callback will
+be called after all data has been transferred with the total number of bytes
+copied during the operation.
+
+If the @source file does not exist then the G_IO_ERROR_NOT_FOUND
+error is returned, independent on the status of the @destination.
+
+If #G_FILE_COPY_OVERWRITE is not specified and the target exists, then the
+error G_IO_ERROR_EXISTS is returned.
+
+If trying to overwrite a file over a directory the G_IO_ERROR_IS_DIRECTORY
+error is returned. If trying to overwrite a directory with a directory the
+G_IO_ERROR_WOULD_MERGE error is returned.
+
+If the source is a directory and the target does not exist, or #G_FILE_COPY_OVERWRITE is
+specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error
+may be returned (if the native move operation isn't available).
+
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="source">
+<parameter_description> #GFile pointing to the source location.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
+<parameter name="destination">
+<parameter_description> #GFile pointing to the destination location.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> The type of the attribute
+<parameter name="flags">
+<parameter_description> set of #GFileCopyFlags.
 </parameter_description>
 </parameter>
-<parameter name="value_p">
-<parameter_description> a pointer to the value (or the pointer itself if the type is a pointer type)
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileQueryInfoFlags.
+<parameter name="progress_callback">
+<parameter_description> #GFileProgressCallback function for updates.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="progress_callback_data">
+<parameter_description> gpointer to user data for the callback function.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> #GError for returning error conditions, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the attribute was set, %FALSE otherwise.
+<return> %TRUE on successful move, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_simple_async_report_error_in_idle">
+<function name="g_file_new_for_commandline_arg">
 <description>
-Reports an error in an asynchronous function in an idle function by
-directly setting the contents of the #GAsyncResult with the given error
-information.
+Creates a #GFile with the given argument from the command line. The value of
+ arg can be either a URI, an absolute path or a relative path resolved
+relative to the current working directory.
+This operation never fails, but the returned object might not support any
+I/O operation if @arg points to a malformed path.
+
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> a #GQuark containing the error domain (usually #G_IO_ERROR).
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> a specific error code.
+<parameter name="arg">
+<parameter_description> a command line string.
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a formatted error reporting string.
+</parameters>
+<return> a new #GFile. 
+</return>
+</function>
+
+<function name="g_file_new_for_path">
+<description>
+Constructs a #GFile for a given path. This operation never
+fails, but the returned object might not support any I/O
+operation if @path is malformed.
+
+
+</description>
+<parameters>
+<parameter name="path">
+<parameter_description> a string containing a relative or absolute path. The string
+must be encoded in the glib filename encoding.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a list of variables to fill in @format.
+</parameters>
+<return> a new #GFile for the given @path. 
+</return>
+</function>
+
+<function name="g_file_new_for_uri">
+<description>
+Constructs a #GFile for a given URI. This operation never 
+fails, but the returned object might not support any I/O 
+operation if @uri is malformed or if the uri type is 
+not supported.
+
+
+</description>
+<parameters>
+<parameter name="uri">
+<parameter_description> a UTF8 string containing a URI.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GFile for the given @uri.
+</return>
 </function>
 
-<function name="g_file_icon_new">
+<function name="g_file_open_readwrite">
 <description>
-Creates a new icon for a file.
+Opens an existing file for reading and writing. The result is
+a #GFileIOStream that can be used to read and write the contents of the file.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
+If the file is a directory, the G_IO_ERROR_IS_DIRECTORY error will be returned.
+Other errors are possible too, and depend on what kind of filesystem the file is on.
+Note that in many non-local file cases read and write streams are not supported,
+so make sure you really need to do read and write streaming, rather than
+just opening for reading or writing.
 
+Since: 2.22
 
 </description>
 <parameters>
 <parameter name="file">
-<parameter_description> a #GFile.
+<parameter_description> #GFile to open
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon for the given @file, or %NULL on error.
+<return> #GFileIOStream or %NULL on error.
+Free the returned object with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_dbus_interface_info_generate_xml">
+<function name="g_file_open_readwrite_async">
 <description>
-Appends an XML representation of @info (and its children) to @string_builder.
+Asynchronously opens @file for reading and writing.
 
-This function is typically used for generating introspection XML
-documents at run-time for handling the
-&lt;literal&gt;org.freedesktop.DBus.Introspectable.Introspect&lt;/literal&gt;
-method.
+For more details, see g_file_open_readwrite() which is
+the synchronous version of this call.
 
-Since: 2.26
+When the operation is finished, @callback will be called. You can then call
+g_file_open_readwrite_finish() to get the result of the operation.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusNodeInfo
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="indent">
-<parameter_description> Indentation level.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
 </parameter_description>
 </parameter>
-<parameter name="string_builder">
-<parameter_description> A #GString to to append XML data to.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_settings_new">
+<function name="g_file_open_readwrite_finish">
 <description>
-Creates a new #GSettings object with a given schema.
-
-Signals on the newly created #GSettings object will be dispatched
-via the thread-default #GMainContext in effect at the time of the
-call to g_settings_new().  The new #GSettings will hold a reference
-on the context.  See g_main_context_push_thread_default().
+Finishes an asynchronous file read operation started with
+g_file_open_readwrite_async().
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="schema">
-<parameter_description> the name of the schema
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSettings object
+<return> a #GFileIOStream or %NULL on error.
+Free the returned object with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_socket_client_set_family">
+<function name="g_file_output_stream_get_etag">
 <description>
-Sets the socket family of the socket client.
-If this is set to something other than %G_SOCKET_FAMILY_INVALID
-then the sockets created by this object will be of the specified
-family.
-
-This might be useful for instance if you want to force the local
-connection to be an ipv4 socket, even though the address might
-be an ipv6 mapped to ipv4 address.
+Gets the entity tag for the file when it has been written.
+This must be called after the stream has been written
+and closed, as the etag can change while writing.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
-</parameter_description>
-</parameter>
-<parameter name="family">
-<parameter_description> a #GSocketFamily
+<parameter name="stream">
+<parameter_description> a #GFileOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the entity tag for the stream.
+</return>
 </function>
 
-<function name="g_vfs_get_file_for_uri">
+<function name="g_file_output_stream_query_info">
 <description>
-Gets a #GFile for @uri.
+Queries a file output stream for the given @attributes. 
+This function blocks while querying the stream. For the asynchronous 
+version of this function, see g_file_output_stream_query_info_async(). 
+While the stream is blocked, the stream will set the pending flag 
+internally, and any other operations on the stream will fail with 
+%G_IO_ERROR_PENDING.
 
-This operation never fails, but the returned object
-might not support any I/O operation if the URI 
-is malformed or if the URI scheme is not supported.
+Can fail if the stream was already closed (with @error being set to 
+%G_IO_ERROR_CLOSED), the stream has pending operations (with @error being
+set to %G_IO_ERROR_PENDING), or if querying info is not supported for 
+the stream's interface (with @error being set to %G_IO_ERROR_NOT_SUPPORTED). In
+all cases of failure, %NULL will be returned.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be set, and %NULL will 
+be returned. 
 
 
 </description>
 <parameters>
-<parameter name="vfs">
-<parameter_description> a#GVfs.
+<parameter name="stream">
+<parameter_description> a #GFileOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a string containing a URI 
+<parameter name="attributes">
+<parameter_description> a file attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile. 
-Free the returned object with g_object_unref().
+<return> a #GFileInfo for the @stream, or %NULL on error.
 </return>
 </function>
 
-<function name="g_file_start_mountable">
+<function name="g_file_output_stream_query_info_async">
 <description>
-Starts a file of type G_FILE_TYPE_MOUNTABLE.
-Using @start_operation, you can request callbacks when, for instance,
-passwords are needed during authentication.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Asynchronously queries the @stream for a #GFileInfo. When completed,
+ callback will be called with a #GAsyncResult which can be used to 
+finish the operation with g_file_output_stream_query_info_finish().
 
-When the operation is finished, @callback will be called. You can then call
-g_file_mount_mountable_finish() to get the result of the operation.
+For the synchronous version of this function, see 
+g_file_output_stream_query_info().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="stream">
+<parameter_description> a #GFileOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="attributes">
+<parameter_description> a file attribute query string.
 </parameter_description>
 </parameter>
-<parameter name="start_operation">
-<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;gio-GIOScheduler&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter_description> callback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
@@ -14193,86 +15635,92 @@ Since: 2.22
 <return></return>
 </function>
 
-<function name="g_socket_listener_add_any_inet_port">
+<function name="g_file_output_stream_query_info_finish">
 <description>
-Listens for TCP connections on any available port number for both
-IPv6 and IPv4 (if each are available).
-
-This is useful if you need to have a socket for incoming connections
-but don't care about the specific port number.
-
- source_object will be passed out in the various calls
-to accept to identify this particular source, which is
-useful if you're listening on multiple addresses and do
-different things depending on what address is connected to.
+Finalizes the asynchronous query started 
+by g_file_output_stream_query_info_async().
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="stream">
+<parameter_description> a #GFileOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="source_object">
-<parameter_description> Optional #GObject identifying this source
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter_description> a #GError, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the port number, or 0 in case of failure.
-
+<return> A #GFileInfo for the finished query.
 </return>
 </function>
 
-<function name="g_app_info_get_default_for_uri_scheme">
+<function name="g_file_parse_name">
 <description>
-Gets the default application for launching applications 
-using this URI scheme. A URI scheme is the initial part 
-of the URI, up to but not including the ':', e.g. &quot;http&quot;, 
-&quot;ftp&quot; or &quot;sip&quot;.
+Constructs a #GFile with the given @parse_name (i.e. something given by g_file_get_parse_name()).
+This operation never fails, but the returned object might not support any I/O
+operation if the @parse_name cannot be parsed.
 
 
 </description>
 <parameters>
-<parameter name="uri_scheme">
-<parameter_description> a string containing a URI scheme.
+<parameter name="parse_name">
+<parameter_description> a file name or path to be parsed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GAppInfo for given @uri_scheme or %NULL on error.
+<return> a new #GFile.
 </return>
 </function>
 
-<function name="g_vfs_get_file_for_path">
+<function name="g_file_poll_mountable">
 <description>
-Gets a #GFile for @path.
+Polls a file of type G_FILE_TYPE_MOUNTABLE.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
+When the operation is finished, @callback will be called. You can then call
+g_file_mount_mountable_finish() to get the result of the operation.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="vfs">
-<parameter_description> a #GVfs.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> a string containing a VFS path.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile. 
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="g_file_set_attributes_finish">
+<function name="g_file_poll_mountable_finish">
 <description>
-Finishes setting an attribute started in g_file_set_attributes_async().
+Finishes a poll operation. See g_file_poll_mountable() for details.
 
+Finish an asynchronous poll operation that was polled
+with g_file_poll_mountable().
+
+Since: 2.22
 
 </description>
 <parameters>
@@ -14284,158 +15732,181 @@ Finishes setting an attribute started in g_file_set_attributes_async().
 <parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
 <parameter name="error">
 <parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the attributes were set correctly, %FALSE otherwise.
+<return> %TRUE if the operation finished successfully. %FALSE
+otherwise.
+
 </return>
 </function>
 
-<function name="g_socket_get_listen_backlog">
+<function name="g_file_query_default_handler">
 <description>
-Gets the listen backlog setting of the socket. For details on this,
-see g_socket_set_listen_backlog().
+Returns the #GAppInfo that is registered as the default
+application to handle the file specified by @file.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="file">
+<parameter_description> a #GFile to open.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the maximum number of pending connections.
-
+<return> a #GAppInfo if the handle was found, %NULL if there were errors.
+When you are done with it, release it with g_object_unref()
 </return>
 </function>
 
-<function name="g_bus_get_sync">
+<function name="g_file_query_exists">
 <description>
-Synchronously connects to the message bus specified by @bus_type.
-Note that the returned object may shared with other callers,
-e.g. if two separate parts of a process calls this function with
-the same @bus_type, they will share the same object.
+Utility function to check if a particular file exists. This is
+implemented using g_file_query_info() and as such does blocking I/O.
 
-This is a synchronous failable function. See g_bus_get() and
-g_bus_get_finish() for the asynchronous version.
+Note that in many cases it is racy to first check for file existence
+and then execute something based on the outcome of that, because the
+file might have been created or removed in between the operations. The
+general approach to handling that is to not check, but just do the
+operation and handle the errors as they come.
 
-The returned object is a singleton, that is, shared with other
-callers of g_bus_get() and g_bus_get_sync() for @bus_type. In the
-event that you need a private message bus connection, use
-g_dbus_address_get_for_bus_sync() and
-g_dbus_connection_new_for_address().
+As an example of race-free checking, take the case of reading a file, and
+if it doesn't exist, creating it. There are two racy versions: read it, and
+on error create it; and: check if it exists, if not create it. These
+can both result in two processes creating the file (with perhaps a partially
+written file as the result). The correct approach is to always try to create
+the file with g_file_create() which will either atomically create the file
+or fail with a G_IO_ERROR_EXISTS error.
 
-Note that the returned #GDBusConnection object will (usually) have
-the #GDBusConnection:exit-on-close property set to %TRUE.
+However, in many cases an existence check is useful in a user
+interface, for instance to make a menu item sensitive/insensitive, so that
+you don't have to fool users that something is possible and then just show
+and error dialog. If you do this, you should make sure to also handle the
+errors that can happen due to races when you execute the operation.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> A #GBusType.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
-
+<return> %TRUE if the file exists (and can be detected without error), %FALSE otherwise (or if cancelled).
 </return>
 </function>
 
-<function name="g_async_initable_new_valist_async">
+<function name="g_file_query_file_type">
 <description>
-Helper function for constructing #GAsyncInitiable object. This is
-similar to g_object_new_valist() but also initializes the object
-asynchronously.
+Utility function to inspect the #GFileType of a file. This is
+implemented using g_file_query_info() and as such does blocking I/O.
 
-When the initialization is finished, @callback will be called. You can
-then call g_async_initable_new_finish() to get the new object and check
-for any errors.
+The primary use case of this method is to check if a file is a regular file,
+directory, or symlink.
 
-Since: 2.22
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> a #GType supporting #GAsyncInitable.
-</parameter_description>
-</parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of the first property, followed by
-the value, and other property value pairs, and ended by %NULL.
-</parameter_description>
-</parameter>
-<parameter name="var_args">
-<parameter_description> The var args list generated from @first_property_name.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the operation.
+<parameter name="flags">
+<parameter_description> a set of #GFileQueryInfoFlags passed to g_file_query_info().
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the initialization is
-finished
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> The #GFileType of the file and #G_FILE_TYPE_UNKNOWN if the file
+does not exist
+
+</return>
 </function>
 
-<function name="g_network_service_get_protocol">
+<function name="g_file_query_filesystem_info">
 <description>
-Gets @srv's protocol name (eg, &quot;tcp&quot;).
+Similar to g_file_query_info(), but obtains information
+about the filesystem the @file is on, rather than the file itself.
+For instance the amount of space available and the type of
+the filesystem.
+
+The @attributes value is a string that specifies the file attributes that
+should be gathered. It is not an error if it's not possible to read a particular
+requested attribute from a file - it just won't be set. @attributes should
+be a comma-separated list of attributes or attribute wildcards. The wildcard &quot;*&quot;
+means all attributes, and a wildcard like &quot;fs:*&quot; means all attributes in the fs
+namespace. The standard namespace for filesystem attributes is &quot;fs&quot;.
+Common attributes of interest are #G_FILE_ATTRIBUTE_FILESYSTEM_SIZE
+(the total size of the filesystem in bytes), #G_FILE_ATTRIBUTE_FILESYSTEM_FREE (number of
+bytes available), and #G_FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
+Other errors are possible too, and depend on what kind of filesystem the file is on.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="srv">
-<parameter_description> a #GNetworkService
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description>  an attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError. 
 </parameter_description>
 </parameter>
 </parameters>
-<return> @srv's protocol name
-
+<return> a #GFileInfo or %NULL if there was an error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_unmount_mountable">
+<function name="g_file_query_filesystem_info_async">
 <description>
-Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Asynchronously gets the requested information about the filesystem
+that the specified @file is on. The result is a #GFileInfo object
+that contains key-value attributes (such as type or size for the
+file).
 
-When the operation is finished, @callback will be called. You can then call
-g_file_unmount_mountable_finish() to get the result of the operation.
+For more details, see g_file_query_filesystem_info() which is the
+synchronous version of this call.
 
-Deprecated: 2.22: Use g_file_unmount_mountable_with_operation() instead.
+When the operation is finished, @callback will be called. You can
+then call g_file_query_info_finish() to get the result of the
+operation.
 
 </description>
 <parameters>
@@ -14443,16 +15914,21 @@ Deprecated: 2.22: Use g_file_unmount_mountable_with_operation() instead.
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="attributes">
+<parameter_description> an attribute query string.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
@@ -14463,313 +15939,460 @@ Deprecated: 2.22: Use g_file_unmount_mountable_with_operation() instead.
 <return></return>
 </function>
 
-<function name="g_network_address_get_port">
+<function name="g_file_query_filesystem_info_finish">
 <description>
-Gets @addr's port number
+Finishes an asynchronous filesystem info query.  See
+g_file_query_filesystem_info_async().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="addr">
-<parameter_description> a #GNetworkAddress
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError. 
 </parameter_description>
 </parameter>
 </parameters>
-<return> @addr's port (which may be 0)
-
+<return> #GFileInfo for given @file or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_dbus_proxy_call">
+<function name="g_file_query_info">
 <description>
-Asynchronously invokes the @method_name method on @proxy.
+Gets the requested information about specified @file. The result
+is a #GFileInfo object that contains key-value attributes (such as 
+the type or size of the file).
 
-If @method_name contains any dots, then @name is split into interface and
-method name parts. This allows using @proxy for invoking methods on
-other interfaces.
+The @attributes value is a string that specifies the file attributes that
+should be gathered. It is not an error if it's not possible to read a particular
+requested attribute from a file - it just won't be set. @attributes should
+be a comma-separated list of attributes or attribute wildcards. The wildcard &quot;*&quot;
+means all attributes, and a wildcard like &quot;standard::*&quot; means all attributes in the standard
+namespace. An example attribute query be &quot;standard::*,owner::user&quot;.
+The standard attributes are available as defines, like #G_FILE_ATTRIBUTE_STANDARD_NAME.
 
-If the #GDBusConnection associated with @proxy is closed then
-the operation will fail with %G_IO_ERROR_CLOSED. If
- cancellable is canceled, the operation will fail with
-%G_IO_ERROR_CANCELLED. If @parameters contains a value not
-compatible with the D-Bus protocol, the operation fails with
-%G_IO_ERROR_INVALID_ARGUMENT.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-If the @parameters #GVariant is floating, it is consumed. This allows
-convenient 'inline' use of g_variant_new(), e.g.:
-|[
-g_dbus_proxy_call (proxy,
-&quot;TwoStrings&quot;,
-g_variant_new (&quot;(ss)&quot;,
-&quot;Thing One&quot;,
-&quot;Thing Two&quot;),
-G_DBUS_CALL_FLAGS_NONE,
--1,
-NULL,
-(GAsyncReadyCallback) two_strings_done,
-&amp;data);
-]|
+For symlinks, normally the information about the target of the
+symlink is returned, rather than information about the symlink itself.
+However if you pass #G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS in @flags the
+information about the symlink itself will be returned. Also, for symlinks
+that point to non-existing files the information about the symlink itself
+will be returned.
 
-This is an asynchronous method. When the operation is finished,
- callback will be invoked in the
-&lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default
-main loop&lt;/link&gt; of the thread you are calling this method from.
-You can then call g_dbus_proxy_call_finish() to get the result of
-the operation. See g_dbus_proxy_call_sync() for the synchronous
-version of this method.
+If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
+Other errors are possible too, and depend on what kind of filesystem the file is on.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="method_name">
-<parameter_description> Name of method to invoke.
+<parameter name="attributes">
+<parameter_description> an attribute query string.
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> A #GVariant tuple with parameters for the signal or %NULL if not passing parameters.
+<parameter name="flags">
+<parameter_description> a set of #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GFileInfo for the given @file, or %NULL on error.
+Free the returned object with g_object_unref().
+</return>
+</function>
+
+<function name="g_file_query_info_async">
+<description>
+Asynchronously gets the requested information about specified @file. The result
+is a #GFileInfo object that contains key-value attributes (such as type or size
+for the file).
+
+For more details, see g_file_query_info() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_query_info_finish() to get the result of the operation.
+
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> an attribute query string.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> Flags from the #GDBusCallFlags enumeration.
+<parameter_description> a set of #GFileQueryInfoFlags.
 </parameter_description>
 </parameter>
-<parameter name="timeout_msec">
-<parameter_description> The timeout in milliseconds or -1 to use the proxy default timeout.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
-care about the result of the method invocation.
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_fd_list_append">
+<function name="g_file_query_info_finish">
 <description>
-Adds a file descriptor to @list.
-
-The file descriptor is duplicated using dup(). You keep your copy
-of the descriptor and the copy contained in @list will be closed
-when @list is finalized.
-
-A possible cause of failure is exceeding the per-process or
-system-wide file descriptor limit.
-
-The index of the file descriptor in the list is returned.  If you use
-this index with g_unix_fd_list_get() then you will receive back a
-duplicated copy of the same file descriptor.
+Finishes an asynchronous file info query. 
+See g_file_query_info_async().
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GUnixFDList
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="fd">
-<parameter_description> a valid open file descriptor
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError pointer
+<parameter_description> a #GError. 
 </parameter_description>
 </parameter>
 </parameters>
-<return> the index of the appended fd in case of success, else -1
-(and @error is set)
-
+<return> #GFileInfo for given @file or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_settings_get_child">
+<function name="g_file_query_settable_attributes">
 <description>
-Creates a 'child' settings object which has a base path of
-&lt;replaceable&gt;base-path&lt;/replaceable&gt;/@name&quot;, where
-&lt;replaceable&gt;base-path&lt;/replaceable&gt; is the base path of @settings.
-
-The schema for the child settings object must have been declared
-in the schema of @settings using a &lt;tag class=&quot;starttag&quot;&gt;child&lt;/tag&gt; element.
+Obtain the list of settable attributes for the file.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the 'child' schema
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a 'child' settings object
+<return> a #GFileAttributeInfoList describing the settable attributes.
+When you are done with it, release it with g_file_attribute_info_list_unref()
 </return>
 </function>
 
-<function name="g_application_list_actions">
+<function name="g_file_query_writable_namespaces">
 <description>
-Retrieves the list of action names currently exported by @application.
+Obtain the list of attribute namespaces where new attributes 
+can be created by a user. An example of this is extended
+attributes (in the &quot;xattr&quot; namespace).
 
-It is an error to call this function if @application is a proxy for
-a remote application.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a newly allocation, %NULL-terminated array
-of strings containing action names; use g_strfreev() to free the
-resources used by the returned array
-
-</return>
-</function>
-
-<function name="g_unix_mount_point_guess_name">
-<description>
-Guesses the name of a Unix mount point. 
-The result is a translated string.
-
-
-</description>
-<parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly allocated string that must 
-be freed with g_free()
+<return> a #GFileAttributeInfoList describing the writable namespaces.
+When you are done with it, release it with g_file_attribute_info_list_unref()
 </return>
 </function>
 
-<function name="g_dbus_proxy_new_finish">
+<function name="g_file_read">
 <description>
-Finishes creating a #GDBusProxy.
+Opens a file for reading. The result is a #GFileInputStream that
+can be used to read the contents of the file.
 
-Since: 2.26
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
+If the file is a directory, the G_IO_ERROR_IS_DIRECTORY error will be returned.
+Other errors are possible too, and depend on what kind of filesystem the file is on.
+
+Virtual: read_fn
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback function passed to g_dbus_proxy_new().
+<parameter name="file">
+<parameter_description> #GFile to read.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusProxy or %NULL if @error is set. Free with g_object_unref().
-
+<return> #GFileInputStream or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_socket_client_set_local_address">
+<function name="g_file_read_async">
 <description>
-Sets the local address of the socket client.
-The sockets created by this object will bound to the
-specified address (if not %NULL) before connecting.
+Asynchronously opens @file for reading.
 
-This is useful if you want to ensure the the local
-side of the connection is on a specific port, or on
-a specific interface.
+For more details, see g_file_read() which is
+the synchronous version of this call.
 
-Since: 2.22
+When the operation is finished, @callback will be called. You can then call
+g_file_read_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="file">
+<parameter_description> input #GFile
 </parameter_description>
 </parameter>
-<parameter name="address">
-<parameter_description> a #GSocketAddress, or %NULL
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_simple_async_result_complete">
+<function name="g_file_read_finish">
 <description>
-Completes an asynchronous I/O job immediately. Must be called in
-the thread where the asynchronous result was to be delivered, as it
-invokes the callback directly. If you are in a different thread use
-g_simple_async_result_complete_in_idle().
+Finishes an asynchronous file read operation started with 
+g_file_read_async(). 
+
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GFileInputStream or %NULL on error.
+Free the returned object with g_object_unref().
+</return>
 </function>
 
-<function name="g_volume_enumerate_identifiers">
+<function name="g_file_replace">
 <description>
-Gets the kinds of &lt;link linkend=&quot;volume-identifier&quot;&gt;identifiers&lt;/link&gt;
-that @volume has. Use g_volume_get_identifer() to obtain 
-the identifiers themselves.
+Returns an output stream for overwriting the file, possibly
+creating a backup copy of the file first. If the file doesn't exist,
+it will be created.
+
+This will try to replace the file in the safest way possible so
+that any errors during the writing will not affect an already
+existing copy of the file. For instance, for local files it
+may write to a temporary file and then atomically rename over
+the destination when the stream is closed.
+
+By default files created are generally readable by everyone,
+but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+will be made readable only to the current user, to the level that
+is supported on the target filesystem.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+If you pass in a non-#NULL @etag value, then this value is
+compared to the current entity tag of the file, and if they differ
+an G_IO_ERROR_WRONG_ETAG error is returned. This generally means
+that the file has been changed since you last read it. You can get
+the new etag from g_file_output_stream_get_etag() after you've
+finished writing and closed the #GFileOutputStream. When you load
+a new file you can use g_file_input_stream_query_info() to get
+the etag of the file.
+
+If @make_backup is %TRUE, this function will attempt to make a backup
+of the current file before overwriting it. If this fails a G_IO_ERROR_CANT_CREATE_BACKUP
+error will be returned. If you want to replace anyway, try again with
+ make_backup set to %FALSE.
+
+If the file is a directory the G_IO_ERROR_IS_DIRECTORY error will be returned,
+and if the file is some other form of non-regular file then a
+G_IO_ERROR_NOT_REGULAR_FILE error will be returned.
+Some file systems don't allow all file names, and may
+return an G_IO_ERROR_INVALID_FILENAME error, and if the name
+is to long G_IO_ERROR_FILENAME_TOO_LONG will be returned.
+Other errors are possible too, and depend on what kind of
+filesystem the file is on.
 
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="etag">
+<parameter_description> an optional &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the 
+current #GFile, or #NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="make_backup">
+<parameter_description> %TRUE if a backup should be created.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated array of strings containing
-kinds of identifiers. Use g_strfreev() to free.
+<return> a #GFileOutputStream or %NULL on error. 
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_drive_get_icon">
+<function name="g_file_replace_async">
 <description>
-Gets the icon for @drive.
+Asynchronously overwrites the file, replacing the contents, possibly
+creating a backup copy of the file first.
 
+For more details, see g_file_replace() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_replace_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="etag">
+<parameter_description> an &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the 
+current #GFile, or NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="make_backup">
+<parameter_description> %TRUE if a backup should be created.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GIcon for the @drive.
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="g_file_enumerate_children_finish">
+<function name="g_file_replace_contents">
 <description>
-Finishes an async enumerate children operation.
-See g_file_enumerate_children_async().
+Replaces the contents of @file with @contents of @length bytes.
+ 
+If @etag is specified (not %NULL) any existing file must have that etag, or
+the error %G_IO_ERROR_WRONG_ETAG will be returned.
+
+If @make_backup is %TRUE, this function will attempt to make a backup of @file.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+The returned @new_etag can be used to verify that the file hasn't changed the
+next time it is saved over.
 
 
 </description>
@@ -14778,318 +16401,452 @@ See g_file_enumerate_children_async().
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult.
+<parameter name="contents">
+<parameter_description> a string containing the new contents for @file.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the length of @contents in bytes.
+</parameter_description>
+</parameter>
+<parameter name="etag">
+<parameter_description> the old &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; 
+for the document, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="make_backup">
+<parameter_description> %TRUE if a backup should be created.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
+</parameter_description>
+</parameter>
+<parameter name="new_etag">
+<parameter_description> a location to a new &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt;
+for the document. This should be freed with g_free() when no longer 
+needed, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileEnumerator or %NULL if an error occurred.
-Free the returned object with g_object_unref().
+<return> %TRUE if successful. If an error
+has occurred, this function will return %FALSE and set @error
+appropriately if present.
 </return>
 </function>
 
-<function name="g_unix_mount_free">
+<function name="g_file_replace_contents_async">
 <description>
-Frees a unix mount.
+Starts an asynchronous replacement of @file with the given 
+ contents of @length bytes. @etag will replace the document's 
+current entity tag.
+
+When this operation has completed, @callback will be called with
+ user_user data, and the operation can be finalized with 
+g_file_replace_contents_finish().
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+
+If @make_backup is %TRUE, this function will attempt to 
+make a backup of @file.
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMount.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="contents">
+<parameter_description> string of contents to replace the file with.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the length of @contents in bytes.
+</parameter_description>
+</parameter>
+<parameter name="etag">
+<parameter_description> a new &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the @file, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="make_backup">
+<parameter_description> %TRUE if a backup should be created.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_method_info_ref">
+<function name="g_file_replace_contents_finish">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Finishes an asynchronous replace of the given @file. See
+g_file_replace_contents_async(). Sets @new_etag to the new entity 
+tag for the document, if present.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusMethodInfo
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="new_etag">
+<parameter_description> a location of a new &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; 
+for the document. This should be freed with g_free() when it is no 
+longer needed, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL 
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
-
+<return> %TRUE on success, %FALSE on failure.
 </return>
 </function>
 
-<function name="g_filename_completer_new">
+<function name="g_file_replace_finish">
 <description>
-Creates a new filename completer.
+Finishes an asynchronous file replace operation started with 
+g_file_replace_async(). 
 
 
 </description>
 <parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GFilenameCompleter.
+<return> a #GFileOutputStream, or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_input_stream_has_pending">
+<function name="g_file_replace_readwrite">
 <description>
-Checks if an input stream has pending actions.
+Returns an output stream for overwriting the file in readwrite mode,
+possibly creating a backup copy of the file first. If the file doesn't
+exist, it will be created.
+
+For details about the behaviour, see g_file_replace() which does the same
+thing but returns an output stream only.
 
+Note that in many non-local file cases read and write streams are not
+supported, so make sure you really need to do read and write streaming,
+rather than just opening for reading or writing.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> input stream.
+<parameter name="file">
+<parameter_description> a #GFile
+</parameter_description>
+</parameter>
+<parameter name="etag">
+<parameter_description> an optional &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the
+current #GFile, or #NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="make_backup">
+<parameter_description> %TRUE if a backup should be created
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @stream has pending actions.
+<return> a #GFileIOStream or %NULL on error.
+Free the returned object with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_dbus_connection_signal_subscribe">
+<function name="g_file_replace_readwrite_async">
 <description>
-Subscribes to signals on @connection and invokes @callback with a
-whenever the signal is received. Note that @callback
-will be invoked in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this method from.
+Asynchronously overwrites the file in read-write mode, replacing the
+contents, possibly creating a backup copy of the file first.
 
-If @connection is not a message bus connection, @sender must be
-%NULL.
+For more details, see g_file_replace_readwrite() which is
+the synchronous version of this call.
 
-If @sender is a well-known name note that @callback is invoked with
-the unique name for the owner of @sender, not the well-known name
-as one would expect. This is because the message bus rewrites the
-name. As such, to avoid certain race conditions, users should be
-tracking the name owner of the well-known name and use that when
-processing the received signal.
+When the operation is finished, @callback will be called. You can then
+call g_file_replace_readwrite_finish() to get the result of the operation.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="sender">
-<parameter_description> Sender name to match on (unique or well-known name) or %NULL to listen from all senders.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="interface_name">
-<parameter_description> D-Bus interface name to match on or %NULL to match on all interfaces.
+<parameter name="etag">
+<parameter_description> an &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the
+current #GFile, or NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="member">
-<parameter_description> D-Bus signal name to match on or %NULL to match on all signals.
+<parameter name="make_backup">
+<parameter_description> %TRUE if a backup should be created.
 </parameter_description>
 </parameter>
-<parameter name="object_path">
-<parameter_description> Object path to match on or %NULL to match on all object paths.
+<parameter name="flags">
+<parameter_description> a set of #GFileCreateFlags.
 </parameter_description>
 </parameter>
-<parameter name="arg0">
-<parameter_description> Contents of first string argument to match on or %NULL to match on all kinds of arguments.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags describing how to subscribe to the signal (currently unused).
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> Callback to invoke when there is a signal matching the requested data.
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> User data to pass to @callback.
-</parameter_description>
-</parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function to free @user_data with when subscription is removed or %NULL.
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> A subscription identifier that can be used with g_dbus_connection_signal_unsubscribe().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_is_unique_name">
+<function name="g_file_replace_readwrite_finish">
 <description>
-Checks if @string is a valid D-Bus unique bus name.
+Finishes an asynchronous file replace operation started with
+g_file_replace_readwrite_async().
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> The string to check.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if valid, %FALSE otherwise.
+<return> a #GFileIOStream, or %NULL on error.
+Free the returned object with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_inet_address_new_any">
+<function name="g_file_resolve_relative_path">
 <description>
-Creates a #GInetAddress for the &quot;any&quot; address (unassigned/&quot;don't
-care&quot;) for @family.
+Resolves a relative path for @file to an absolute path.
+
+This call does no blocking i/o.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="family">
-<parameter_description> the address family
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="relative_path">
+<parameter_description> a given relative path string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GInetAddress corresponding to the &quot;any&quot; address
-for @family.
-
+<return> #GFile to the resolved path. %NULL if @relative_path 
+is %NULL or if @file is invalid.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_socket_listener_add_socket">
+<function name="g_file_set_attribute">
 <description>
-Adds @socket to the set of sockets that we try to accept
-new clients from. The socket must be bound to a local
-address and listened to.
+Sets an attribute in the file with attribute name @attribute to @value.
 
- source_object will be passed out in the various calls
-to accept to identify this particular source, which is
-useful if you're listening on multiple addresses and do
-different things depending on what address is connected to.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="socket">
-<parameter_description> a listening #GSocket
+<parameter name="attribute">
+<parameter_description> a string containing the attribute's name.
 </parameter_description>
 </parameter>
-<parameter name="source_object">
-<parameter_description> Optional #GObject identifying this source
+<parameter name="type">
+<parameter_description> The type of the attribute
+</parameter_description>
+</parameter>
+<parameter name="value_p">
+<parameter_description> a pointer to the value (or the pointer itself if the type is a pointer type)
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
-
+<return> %TRUE if the attribute was set, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_dbus_connection_send_message_with_reply_sync">
+<function name="g_file_set_attribute_byte_string">
 <description>
-Synchronously sends @message to the peer represented by @connection
-and blocks the calling thread until a reply is received or the
-timeout is reached. See g_dbus_connection_send_message_with_reply()
-for the asynchronous version of this method.
-
-Unless @flags contain the
-%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag, the serial number
-will be assigned by @connection and set on @message via
-g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
-serial number used will be written to this location prior to
-submitting the message to the underlying transport.
-
-If @connection is closed then the operation will fail with
-%G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
-fail with %G_IO_ERROR_CANCELLED. If @message is not well-formed,
-the operation fails with %G_IO_ERROR_INVALID_ARGUMENT.
-
-Note that @error is only set if a local in-process error
-occured. That is to say that the returned #GDBusMessage object may
-be of type %G_DBUS_MESSAGE_TYPE_ERROR. Use
-g_dbus_message_to_gerror() to transcode this to a #GError.
+Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING to @value. 
+If @attribute is of a different type, this operation will fail, 
+returning %FALSE. 
 
-See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
-linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
-low-level API to send and receive UNIX file descriptors.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags affecting how the message is sent.
+<parameter name="attribute">
+<parameter_description> a string containing the attribute's name.
 </parameter_description>
 </parameter>
-<parameter name="timeout_msec">
-<parameter_description> The timeout in milliseconds or -1 to use the default timeout.
+<parameter name="value">
+<parameter_description> a string containing the attribute's new value.
 </parameter_description>
 </parameter>
-<parameter name="out_serial">
-<parameter_description> Return location for serial number assigned to @message when sending it or %NULL.
+<parameter name="flags">
+<parameter_description> a #GFileQueryInfoFlags.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage that is the reply to @message or %NULL if @error is set.
-
+<return> %TRUE if the @attribute was successfully set to @value 
+in the @file, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_byte_string">
+<function name="g_file_set_attribute_int32">
 <description>
-Gets the value of a byte string attribute. If the attribute does 
-not contain a byte string, %NULL will be returned.
+Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_INT32 to @value. 
+If @attribute is of a different type, this operation will fail.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 <parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter_description> a string containing the attribute's name.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #gint32 containing the attribute's new value.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the contents of the @attribute value as a byte string, or 
-%NULL otherwise.
+<return> %TRUE if the @attribute was successfully set to @value 
+in the @file, %FALSE otherwise. 
 </return>
 </function>
 
-<function name="g_data_input_stream_read_uint64">
+<function name="g_file_set_attribute_int64">
 <description>
-Reads an unsigned 64-bit/8-byte value from @stream.
-
-In order to get the correct byte order for this read operation, 
-see g_data_input_stream_get_byte_order().
+Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_INT64 to @value. 
+If @attribute is of a different type, this operation will fail.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
@@ -15098,8 +16855,20 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a string containing the attribute's name.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #guint64 containing the attribute's new value.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a #GFileQueryInfoFlags.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -15107,80 +16876,123 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unsigned 64-bit/8-byte read from @stream or %0 if 
-an error occurred. 
+<return> %TRUE if the @attribute was successfully set, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_socket_get_credentials">
+<function name="g_file_set_attribute_string">
 <description>
-Returns the credentials of the foreign process connected to this
-socket, if any (e.g. it is only supported for %G_SOCKET_FAMILY_UNIX
-sockets).
-
-If this operation isn't supported on the OS, the method fails with
-the %G_IO_ERROR_NOT_SUPPORTED error. On Linux this is implemented
-by reading the %SO_PEERCRED option on the underlying socket.
+Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_STRING to @value. 
+If @attribute is of a different type, this operation will fail.
 
-Other ways to obtain credentials from a foreign peer includes the
-#GUnixCredentialsMessage type and
-g_unix_connection_send_credentials() /
-g_unix_connection_receive_credentials() functions.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a string containing the attribute's name.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a string containing the attribute's value.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if @error is set, otherwise a #GCredentials object
-that must be freed with g_object_unref().
-
+<return> %TRUE if the @attribute was successfully set, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_output_stream_get_etag">
+<function name="g_file_set_attribute_uint32">
 <description>
-Gets the entity tag for the file when it has been written.
-This must be called after the stream has been written
-and closed, as the etag can change while writing.
+Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_UINT32 to @value. 
+If @attribute is of a different type, this operation will fail.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileOutputStream.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> a string containing the attribute's name.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #guint32 containing the attribute's new value.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the entity tag for the stream.
+<return> %TRUE if the @attribute was successfully set to @value 
+in the @file, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_data_output_stream_put_uint64">
+<function name="g_file_set_attribute_uint64">
 <description>
-Puts an unsigned 64-bit integer into the stream.
+Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_UINT64 to @value. 
+If @attribute is of a different type, this operation will fail.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
+<parameter name="file">
+<parameter_description> input #GFile. 
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a #guint64.
+<parameter name="attribute">
+<parameter_description> a string containing the attribute's name.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #guint64 containing the attribute's new value.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a #GFileQueryInfoFlags.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -15188,322 +17000,455 @@ Puts an unsigned 64-bit integer into the stream.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
+<return> %TRUE if the @attribute was successfully set to @value 
+in the @file, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_socket_client_new">
+<function name="g_file_set_attributes_async">
 <description>
-Creates a new #GSocketClient with the default options.
+Asynchronously sets the attributes of @file with @info.
 
-Since: 2.22
+For more details, see g_file_set_attributes_from_info() which is
+the synchronous version of this call.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_set_attributes_finish() to get the result of the operation.
 
 </description>
 <parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a #GFileQueryInfoFlags.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request. 
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback. 
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> a #gpointer.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GSocketClient.
-Free the returned object with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_io_stream_query_info_finish">
+<function name="g_file_set_attributes_finish">
 <description>
-Finalizes the asynchronous query started
-by g_file_io_stream_query_info_async().
+Finishes setting an attribute started in g_file_set_attributes_async().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileIOStream.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
 <parameter name="result">
 <parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
 <parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GFileInfo for the finished query.
-
+<return> %TRUE if the attributes were set correctly, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_hash">
+<function name="g_file_set_attributes_from_info">
 <description>
-Creates a hash value for a #GFile.
+Tries to set all attributes in the #GFileInfo on the target values, 
+not stopping on the first error.
 
-This call does no blocking i/o.
+If there is any error during this operation then @error will be set to
+the first error. Error on particular fields are flagged by setting 
+the &quot;status&quot; field in the attribute value to 
+%G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING, which means you can also detect
+further errors.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
 <parameter name="file">
-<parameter_description> #gconstpointer to a #GFile.
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="info">
+<parameter_description> a #GFileInfo.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> #GFileQueryInfoFlags
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL 
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if @file is not a valid #GFile, otherwise an 
-integer that can be used as hash value for the #GFile. 
-This function is intended for easily hashing a #GFile to 
-add to a #GHashTable or similar data structure.
+<return> %TRUE if there was any error, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_output_stream_query_info">
+<function name="g_file_set_display_name">
 <description>
-Queries a file output stream for the given @attributes. 
-This function blocks while querying the stream. For the asynchronous 
-version of this function, see g_file_output_stream_query_info_async(). 
-While the stream is blocked, the stream will set the pending flag 
-internally, and any other operations on the stream will fail with 
-%G_IO_ERROR_PENDING.
+Renames @file to the specified display name.
 
-Can fail if the stream was already closed (with @error being set to 
-%G_IO_ERROR_CLOSED), the stream has pending operations (with @error being
-set to %G_IO_ERROR_PENDING), or if querying info is not supported for 
-the stream's interface (with @error being set to %G_IO_ERROR_NOT_SUPPORTED). In
-all cases of failure, %NULL will be returned.
+The display name is converted from UTF8 to the correct encoding for the target
+filesystem if possible and the @file is renamed to this.
+
+If you want to implement a rename operation in the user interface the edit name
+(#G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME) should be used as the initial value in the rename
+widget, and then the result after editing should be passed to g_file_set_display_name().
+
+On success the resulting converted filename is returned.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be set, and %NULL will 
-be returned. 
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileOutputStream.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description> a file attribute query string.
+<parameter name="display_name">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileInfo for the @stream, or %NULL on error.
+<return> a #GFile specifying what @file was renamed to, or %NULL 
+if there was an error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_io_extension_point_lookup">
+<function name="g_file_set_display_name_async">
 <description>
-Looks up an existing extension point.
+Asynchronously sets the display name for a given #GFile.
+
+For more details, see g_file_set_display_name() which is
+the synchronous version of this call.
 
+When the operation is finished, @callback will be called. You can then call
+g_file_set_display_name_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name of the extension point
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="display_name">
+<parameter_description> a string.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request. 
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GIOExtensionPoint, or %NULL if there is no
-registered extension point with the given name
-</return>
+<return></return>
 </function>
 
-<function name="g_inet_address_new_loopback">
+<function name="g_file_set_display_name_finish">
 <description>
-Creates a #GInetAddress for the loopback address for @family.
+Finishes setting a display name started with 
+g_file_set_display_name_async().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="family">
-<parameter_description> the address family
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GInetAddress corresponding to the loopback address
-for @family.
-
+<return> a #GFile or %NULL on error.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_copy">
+<function name="g_file_start_mountable">
 <description>
-Copies the file @source to the location specified by @destination.
-Can not handle recursive copies of directories.
-
-If the flag #G_FILE_COPY_OVERWRITE is specified an already
-existing @destination file is overwritten.
-
-If the flag #G_FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks
-will be copied as symlinks, otherwise the target of the
- source symlink will be copied.
+Starts a file of type G_FILE_TYPE_MOUNTABLE.
+Using @start_operation, you can request callbacks when, for instance,
+passwords are needed during authentication.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
-
-If @progress_callback is not %NULL, then the operation can be monitored by
-setting this to a #GFileProgressCallback function. @progress_callback_data
-will be passed to this function. It is guaranteed that this callback will
-be called after all data has been transferred with the total number of bytes
-copied during the operation.
-
-If the @source file does not exist then the G_IO_ERROR_NOT_FOUND
-error is returned, independent on the status of the @destination.
-
-If #G_FILE_COPY_OVERWRITE is not specified and the target exists, then the
-error G_IO_ERROR_EXISTS is returned.
-
-If trying to overwrite a file over a directory the G_IO_ERROR_IS_DIRECTORY
-error is returned. If trying to overwrite a directory with a directory the
-G_IO_ERROR_WOULD_MERGE error is returned.
-
-If the source is a directory and the target does not exist, or #G_FILE_COPY_OVERWRITE is
-specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error
-is returned.
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
-If you are interested in copying the #GFile object itself (not the on-disk
-file), see g_file_dup().
+When the operation is finished, @callback will be called. You can then call
+g_file_mount_mountable_finish() to get the result of the operation.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="source">
+<parameter name="file">
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="destination">
-<parameter_description> destination #GFile
+<parameter name="flags">
+<parameter_description> flags affecting the operation
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> set of #GFileCopyFlags
+<parameter name="start_operation">
+<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="progress_callback">
-<parameter_description> function to callback with progress information
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="progress_callback_data">
-<parameter_description> user data to pass to @progress_callback
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_start_mountable_finish">
+<description>
+Finishes a start operation. See g_file_start_mountable() for details.
+
+Finish an asynchronous start operation that was started
+with g_file_start_mountable().
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError to set on error, or %NULL
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE otherwise.
+<return> %TRUE if the operation finished successfully. %FALSE
+otherwise.
+
 </return>
 </function>
 
-<function name="g_data_output_stream_put_int32">
+<function name="g_file_stop_mountable">
 <description>
-Puts a signed 32-bit integer into the output stream.
+Stops a file of type G_FILE_TYPE_MOUNTABLE.
 
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_stop_mountable_finish() to get the result of the operation.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a #gint32.
+<parameter name="flags">
+<parameter_description> flags affecting the operation
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_monitor_get_volumes">
+<function name="g_file_stop_mountable_finish">
 <description>
-Gets a list of the volumes on the system.
+Finishes an stop operation, see g_file_stop_mountable() for details.
 
-The returned list should be freed with g_list_free(), after
-its elements have been unreffed with g_object_unref().
+Finish an asynchronous stop operation that was started
+with g_file_stop_mountable().
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="volume_monitor">
-<parameter_description> a #GVolumeMonitor.
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GVolume objects.
+<return> %TRUE if the operation finished successfully. %FALSE
+otherwise.
+
 </return>
 </function>
 
-<function name="g_data_input_stream_get_byte_order">
+<function name="g_file_supports_thread_contexts">
 <description>
-Gets the byte order for the data input stream.
+Checks if @file supports &lt;link
+linkend=&quot;g-main-context-push-thread-default-context&quot;&gt;thread-default
+contexts&lt;/link&gt;. If this returns %FALSE, you cannot perform
+asynchronous operations on @file in a thread that has a
+thread-default context.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="file">
+<parameter_description> a #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the @stream's current #GDataStreamByteOrder. 
+<return> Whether or not @file supports thread-default contexts.
+
 </return>
 </function>
 
-<function name="g_content_type_is_unknown">
+<function name="g_file_trash">
 <description>
-Checks if the content type is the generic &quot;unknown&quot; type.
-On UNIX this is the &quot;application/octet-stream&quot; mimetype,
-while on win32 it is &quot;*&quot;.
+Sends @file to the &quot;Trashcan&quot;, if possible. This is similar to
+deleting it, but the user can recover it before emptying the trashcan.
+Not all file systems support trashing, so this call can return the
+%G_IO_ERROR_NOT_SUPPORTED error.
+
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a content type string
+<parameter name="file">
+<parameter_description> #GFile to send to trash.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the type is the unknown type.
+<return> %TRUE on successful trash, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_set_attribute_int64">
+<function name="g_file_unmount_mountable">
 <description>
-Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_INT64 to @value. 
-If @attribute is of a different type, this operation will fail.
+Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_unmount_mountable_finish() to get the result of the operation.
 
+Deprecated: 2.22: Use g_file_unmount_mountable_with_operation() instead.
 
 </description>
 <parameters>
@@ -15511,74 +17456,105 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 <parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a #guint64 containing the attribute's new value.
-</parameter_description>
-</parameter>
 <parameter name="flags">
-<parameter_description> a #GFileQueryInfoFlags.
+<parameter_description> flags affecting the operation
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @attribute was successfully set, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_is_closed">
+<function name="g_file_unmount_mountable_finish">
 <description>
-Checks whether a socket is closed.
+Finishes an unmount operation, see g_file_unmount_mountable() for details.
 
-Since: 2.22
+Finish an asynchronous unmount operation that was started 
+with g_file_unmount_mountable().
+
+Deprecated: 2.22: Use g_file_unmount_mountable_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="file">
+<parameter_description> input #GFile.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if socket is closed, %FALSE otherwise
+<return> %TRUE if the operation finished successfully. %FALSE
+otherwise.
 
 </return>
 </function>
 
-<function name="g_filename_completer_set_dirs_only">
+<function name="g_file_unmount_mountable_with_operation">
 <description>
-If @dirs_only is %TRUE, @completer will only 
-complete directory names, and not file names.
+Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+
+When the operation is finished, @callback will be called. You can then call
+g_file_unmount_mountable_finish() to get the result of the operation.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="completer">
-<parameter_description> the filename completer.
+<parameter name="file">
+<parameter_description> input #GFile.
 </parameter_description>
 </parameter>
-<parameter name="dirs_only">
-<parameter_description> a #gboolean.
+<parameter name="flags">
+<parameter_description> flags affecting the operation
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_poll_mountable_finish">
+<function name="g_file_unmount_mountable_with_operation_finish">
 <description>
-Finishes a poll operation. See g_file_poll_mountable() for details.
+Finishes an unmount operation, see g_file_unmount_mountable_with_operation() for details.
 
-Finish an asynchronous poll operation that was polled
-with g_file_poll_mountable().
+Finish an asynchronous unmount operation that was started
+with g_file_unmount_mountable_with_operation().
 
 Since: 2.22
 
@@ -15603,1213 +17579,1053 @@ otherwise.
 </return>
 </function>
 
-<function name="g_simple_async_report_gerror_in_idle">
+<function name="g_filename_completer_get_completion_suffix">
 <description>
-Reports an error in an idle function. Similar to
-g_simple_async_report_error_in_idle(), but takes a #GError rather
-than building a new one.
+Obtains a completion for @initial_text from @completer.
+
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter name="completer">
+<parameter_description> the filename completer.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> the #GError to report
+<parameter name="initial_text">
+<parameter_description> text to be completed.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a completed string, or %NULL if no completion exists. 
+This string is not owned by GIO, so remember to g_free() it 
+when finished.
+</return>
 </function>
 
-<function name="g_drive_get_name">
+<function name="g_filename_completer_get_completions">
 <description>
-Gets the name of @drive.
+Gets an array of completion strings for a given initial text.
 
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="completer">
+<parameter_description> the filename completer.
+</parameter_description>
+</parameter>
+<parameter name="initial_text">
+<parameter_description> text to be completed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing @drive's name. The returned 
-string should be freed when no longer needed.
+<return> array of strings with possible completions for @initial_text.
+This array must be freed by g_strfreev() when finished. 
 </return>
 </function>
 
-<function name="g_file_get_child_for_display_name">
+<function name="g_filename_completer_new">
 <description>
-Gets the child of @file for a given @display_name (i.e. a UTF8
-version of the name). If this function fails, it returns %NULL and @error will be 
-set. This is very useful when constructing a GFile for a new file
-and the user entered the filename in the user interface, for instance
-when you select a directory and type a filename in the file selector.
+Creates a new filename completer.
 
-This call does no blocking i/o.
 
+</description>
+<parameters>
+</parameters>
+<return> a #GFilenameCompleter.
+</return>
+</function>
+
+<function name="g_filename_completer_set_dirs_only">
+<description>
+If @dirs_only is %TRUE, @completer will only 
+complete directory names, and not file names.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="display_name">
-<parameter_description> string to a possible child.
+<parameter name="completer">
+<parameter_description> the filename completer.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError.
+<parameter name="dirs_only">
+<parameter_description> a #gboolean.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile to the specified child, or 
-%NULL if the display name couldn't be converted.  
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="g_unix_fd_message_new_with_fd_list">
+<function name="g_filter_input_stream_get_base_stream">
 <description>
-Creates a new #GUnixFDMessage containing @list.
+Gets the base stream for the filter stream.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="fd_list">
-<parameter_description> a #GUnixFDList
+<parameter name="stream">
+<parameter_description> a #GFilterInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixFDMessage
-
+<return> a #GInputStream.
 </return>
 </function>
 
-<function name="g_dbus_proxy_get_connection">
+<function name="g_filter_input_stream_get_close_base_stream">
 <description>
-Gets the connection @proxy is for.
+Returns whether the base stream will be closed when @stream is
+closed.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="stream">
+<parameter_description> a #GFilterInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection owned by @proxy. Do not free.
-
+<return> %TRUE if the base stream will be closed.
 </return>
 </function>
 
-<function name="g_permission_get_can_release">
+<function name="g_filter_input_stream_set_close_base_stream">
 <description>
-Gets the value of the 'can-release' property.  This property is %TRUE
-if it is generally possible to release the permission by calling
-g_permission_release().
-
-Since: 2.26
+Sets whether the base stream will be closed when @stream is closed.
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
+<parameter name="stream">
+<parameter_description> a #GFilterInputStream.
+</parameter_description>
+</parameter>
+<parameter name="close_base">
+<parameter_description> %TRUE to close the base stream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value of the 'can-release' property
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_get_activation_root">
+<function name="g_filter_output_stream_get_base_stream">
 <description>
-Gets the activation root for a #GVolume if it is known ahead of
-mount time. Returns %NULL otherwise. If not %NULL and if @volume
-is mounted, then the result of g_mount_get_root() on the
-#GMount object obtained from g_volume_get_mount() will always
-either be equal or a prefix of what this function returns. In
-other words, in code
-
-&lt;programlisting&gt;
-GMount *mount;
-GFile *mount_root
-GFile *volume_activation_root;
-
-mount = g_volume_get_mount (volume); / * mounted, so never NULL * /
-mount_root = g_mount_get_root (mount);
-volume_activation_root = g_volume_get_activation_root(volume); / * assume not NULL * /
-&lt;/programlisting&gt;
-
-then the expression
+Gets the base stream for the filter stream.
 
-&lt;programlisting&gt;
-(g_file_has_prefix (volume_activation_root, mount_root) ||
-      g_file_equal (volume_activation_root, mount_root))
-&lt;/programlisting&gt;
 
-will always be %TRUE.
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GFilterOutputStream.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GOutputStream.
+</return>
+</function>
 
-Activation roots are typically used in #GVolumeMonitor
-implementations to find the underlying mount to shadow, see
-g_mount_is_shadowed() for more details.
+<function name="g_filter_output_stream_get_close_base_stream">
+<description>
+Returns whether the base stream will be closed when @stream is
+closed.
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume
+<parameter name="stream">
+<parameter_description> a #GFilterOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the activation root of @volume or %NULL. Use
-g_object_unref() to free.
-
+<return> %TRUE if the base stream will be closed.
 </return>
 </function>
 
-<function name="g_buffered_output_stream_set_auto_grow">
+<function name="g_filter_output_stream_set_close_base_stream">
 <description>
-Sets whether or not the @stream's buffer should automatically grow.
-If @auto_grow is true, then each write will just make the buffer
-larger, and you must manually flush the buffer to actually write out
-the data to the underlying stream.
+Sets whether the base stream will be closed when @stream is closed.
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GBufferedOutputStream.
+<parameter_description> a #GFilterOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="auto_grow">
-<parameter_description> a #gboolean.
+<parameter name="close_base">
+<parameter_description> %TRUE to close the base stream.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_memory_output_stream_get_size">
+<function name="g_icon_equal">
 <description>
-Gets the size of the currently allocated data area (availible from
-g_memory_output_stream_get_data()). If the stream isn't
-growable (no realloc was passed to g_memory_output_stream_new()) then
-this is the maximum size of the stream and further writes
-will return %G_IO_ERROR_NO_SPACE.
-
-Note that for growable streams the returned size may become invalid on
-the next write or truncate operation on the stream.
-
-If you want the number of bytes currently written to the stream, use
-g_memory_output_stream_get_data_size().
+Checks if two icons are equal.
 
 
 </description>
 <parameters>
-<parameter name="ostream">
-<parameter_description> a #GMemoryOutputStream
+<parameter name="icon1">
+<parameter_description> pointer to the first #GIcon.
+</parameter_description>
+</parameter>
+<parameter name="icon2">
+<parameter_description> pointer to the second #GIcon.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes allocated for the data buffer
+<return> %TRUE if @icon1 is equal to @icon2. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_content_type_guess_for_tree">
+<function name="g_icon_hash">
 <description>
-Tries to guess the type of the tree with root @root, by
-looking at the files it contains. The result is an array
-of content types, with the best guess coming first.
-
-The types returned all have the form x-content/foo, e.g.
-x-content/audio-cdda (for audio CDs) or x-content/image-dcf
-(for a camera memory card). See the &lt;ulink url=&quot;http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec&quot;&gt;shared-mime-info&lt;/ulink&gt;
-specification for more on x-content types.
-
-This function is useful in the implementation of
-g_mount_guess_content_type().
+Gets a hash for an icon.
 
-Since: 2.18
+Virtual: hash
 
 </description>
 <parameters>
-<parameter name="root">
-<parameter_description> the root of the tree to guess a type for
+<parameter name="icon">
+<parameter_description> #gconstpointer to an icon object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an %NULL-terminated array of zero or more content types,
-or %NULL. Free with g_strfreev()
-
+<return> a #guint containing a hash for the @icon, suitable for 
+use in a #GHashTable or similar data structure.
 </return>
 </function>
 
-<function name="g_unix_mount_is_system_internal">
+<function name="g_icon_new_for_string">
 <description>
-Checks if a unix mount is a system path.
+Generate a #GIcon instance from @str. This function can fail if
+ str is not valid - see g_icon_to_string() for discussion.
 
+If your application or library provides one or more #GIcon
+implementations you need to ensure that each #GType is registered
+with the type system prior to calling g_icon_new_for_string().
+
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMount.
+<parameter name="str">
+<parameter_description> A string obtained via g_icon_to_string().
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> Return location for error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the unix mount is for a system path.
+<return> An object implementing the #GIcon
+interface or %NULL if @error is set.
+
 </return>
 </function>
 
-<function name="g_application_run">
+<function name="g_icon_to_string">
 <description>
-Starts the application.
+Generates a textual representation of @icon that can be used for
+serialization such as when passing @icon to a different process or
+saving it to persistent storage. Use g_icon_new_for_string() to
+get @icon back from the returned string.
 
-The default implementation of this virtual function will simply run
-a main loop.
+The encoding of the returned string is proprietary to #GIcon except
+in the following two cases
 
-It is an error to call this function if @application is a proxy for
-a remote application.
+&lt;itemizedlist&gt;
+&lt;listitem&gt;&lt;para&gt;
+If @icon is a #GFileIcon, the returned string is a native path
+(such as &lt;literal&gt;/path/to/my icon.png&lt;/literal&gt;) without escaping
+if the #GFile for @icon is a native file.  If the file is not
+native, the returned string is the result of g_file_get_uri()
+(such as &lt;literal&gt;sftp://path/to/my%%20icon.png&lt;/literal&gt;).
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;
+If @icon is a #GThemedIcon with exactly one name, the encoding is
+simply the name (such as &lt;literal&gt;network-server&lt;/literal&gt;).
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
 
-Since: 2.26
+Virtual: to_tokens
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="icon">
+<parameter_description> a #GIcon.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> An allocated NUL-terminated UTF8 string or %NULL if @icon can't
+be serialized. Use g_free() to free.
+
+</return>
 </function>
 
-<function name="g_vfs_get_default">
+<function name="g_inet_address_get_family">
 <description>
-Gets the default #GVfs for the system.
+Gets @address's family
 
+Since: 2.22
 
 </description>
 <parameters>
+<parameter name="address">
+<parameter_description> a #GInetAddress
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GVfs. 
+<return> @address's family
+
 </return>
 </function>
 
-<function name="g_socket_service_new">
+<function name="g_inet_address_get_is_any">
 <description>
-Creates a new #GSocketService with no sockets to listen for.
-New listeners can be added with e.g. g_socket_listener_add_address()
-or g_socket_listener_add_inet_port().
+Tests whether @address is the &quot;any&quot; address for its family.
 
 Since: 2.22
 
 </description>
 <parameters>
+<parameter name="address">
+<parameter_description> a #GInetAddress
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GSocketService.
+<return> %TRUE if @address is the &quot;any&quot; address for its family.
 
 </return>
 </function>
 
-<function name="g_file_info_get_content_type">
+<function name="g_inet_address_get_is_link_local">
 <description>
-Gets the file's content type.
+Tests whether @address is a link-local address (that is, if it
+identifies a host on a local network that is not connected to the
+Internet).
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the file's content type.
+<return> %TRUE if @address is a link-local address.
+
 </return>
 </function>
 
-<function name="g_unix_connection_receive_fd">
+<function name="g_inet_address_get_is_loopback">
 <description>
-Receives a file descriptor from the sending end of the connection.
-The sending end has to call g_unix_connection_send_fd() for this
-to work.
-
-As well as reading the fd this also reads a single byte from the
-stream, as this is required for fd passing to work on some
-implementations.
+Tests whether @address is the loopback address for its family.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GUnixConnection
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a file descriptor on success, -1 on error.
+<return> %TRUE if @address is the loopback address for its family.
 
 </return>
 </function>
 
-<function name="g_file_info_copy_into">
+<function name="g_inet_address_get_is_mc_global">
 <description>
-Copies all of the #GFileAttribute&lt;!-- --&gt;s from @src_info to @dest_info.
+Tests whether @address is a global multicast address.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="src_info">
-<parameter_description> source to copy attributes from.
-</parameter_description>
-</parameter>
-<parameter name="dest_info">
-<parameter_description> destination to copy attributes to.
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @address is a global multicast address.
+
+</return>
 </function>
 
-<function name="g_socket_address_enumerator_next_finish">
+<function name="g_inet_address_get_is_mc_link_local">
 <description>
-Retrieves the result of a completed call to
-g_socket_address_enumerator_next_async(). See
-g_socket_address_enumerator_next() for more information about
-error handling.
+Tests whether @address is a link-local multicast address.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GSocketAddressEnumerator
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress (owned by the caller), or %NULL on
-error (in which case * error will be set) or if there are no
-more addresses.
+<return> %TRUE if @address is a link-local multicast address.
+
 </return>
 </function>
 
-<function name="g_unix_socket_address_new_abstract">
+<function name="g_inet_address_get_is_mc_node_local">
 <description>
-Creates a new %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED
-#GUnixSocketAddress for @path.
+Tests whether @address is a node-local multicast address.
 
-Deprecated: Use g_unix_socket_address_new_with_type().
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> the abstract name
-</parameter_description>
-</parameter>
-<parameter name="path_len">
-<parameter_description> the length of @path, or -1
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixSocketAddress
+<return> %TRUE if @address is a node-local multicast address.
 
 </return>
 </function>
 
-<function name="g_simple_async_result_set_error">
+<function name="g_inet_address_get_is_mc_org_local">
 <description>
-Sets an error within the asynchronous result without a #GError.
+Tests whether @address is an organization-local multicast address.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> a #GQuark (usually #G_IO_ERROR).
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> an error code.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> a formatted error reporting string.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a list of variables to fill in @format.
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @address is an organization-local multicast address.
+
+</return>
 </function>
 
-<function name="g_dbus_connection_get_guid">
+<function name="g_inet_address_get_is_mc_site_local">
 <description>
-The GUID of the peer performing the role of server when
-authenticating. See #GDBusConnection:guid for more details.
+Tests whether @address is a site-local multicast address.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> The GUID. Do not free this string, it is owned by
- connection 
+<return> %TRUE if @address is a site-local multicast address.
 
 </return>
 </function>
 
-<function name="g_socket_connection_factory_register_type">
+<function name="g_inet_address_get_is_multicast">
 <description>
-Looks up the #GType to be used when creating socket connections on
-sockets with the specified @family,@type and @protocol.
-
-If no type is registered, the #GSocketConnection base type is returned.
+Tests whether @address is a multicast address.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="g_type">
-<parameter_description> a #GType, inheriting from %G_TYPE_SOCKET_CONNECTION
-</parameter_description>
-</parameter>
-<parameter name="family">
-<parameter_description> a #GSocketFamily
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GSocketType
-</parameter_description>
-</parameter>
-<parameter name="protocol">
-<parameter_description> a protocol id
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @address is a multicast address.
+
+</return>
 </function>
 
-<function name="g_volume_mount">
+<function name="g_inet_address_get_is_site_local">
 <description>
-Mounts a volume. This is an asynchronous operation, and is
-finished by calling g_volume_mount_finish() with the @volume
-and #GAsyncResult returned in the @callback.
+Tests whether @address is a site-local address such as 10.0.0.1
+(that is, the address identifies a host on a local network that can
+not be reached directly from the Internet, but which may have
+outgoing Internet connectivity via a NAT or firewall).
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
-</parameter_description>
-</parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data that gets passed to @callback
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @address is a site-local address.
+
+</return>
 </function>
 
-<function name="g_socket_control_message_deserialize">
+<function name="g_inet_address_get_native_size">
 <description>
-Tries to deserialize a socket control message of a given
- level and @type. This will ask all known (to GType) subclasses
-of #GSocketControlMessage if they can understand this kind
-of message and if so deserialize it into a #GSocketControlMessage.
-
-If there is no implementation for this kind of control message, %NULL
-will be returned.
+Gets the size of the native raw binary address for @address. This
+is the size of the data that you get from g_inet_address_to_bytes().
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="level">
-<parameter_description> a socket level
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a socket control message type for the given @level
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> the size of the data in bytes
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> pointer to the message data
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> the deserialized message or %NULL
+<return> the number of bytes used for the native version of @address.
 
 </return>
 </function>
 
-<function name="g_socket_get_family">
+<function name="g_inet_address_new_any">
 <description>
-Gets the socket family of the socket.
+Creates a #GInetAddress for the &quot;any&quot; address (unassigned/&quot;don't
+care&quot;) for @family.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="family">
+<parameter_description> the address family
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketFamily
+<return> a new #GInetAddress corresponding to the &quot;any&quot; address
+for @family.
 
 </return>
 </function>
 
-<function name="g_file_info_set_modification_time">
+<function name="g_inet_address_new_from_bytes">
 <description>
-Sets the %G_FILE_ATTRIBUTE_TIME_MODIFIED attribute in the file
-info to the given time value.
+Creates a new #GInetAddress from the given @family and @bytes.
+ bytes should be 4 bytes for %G_INET_ADDRESS_IPV4 and 16 bytes for
+%G_INET_ADDRESS_IPV6.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="bytes">
+<parameter_description> raw address data
 </parameter_description>
 </parameter>
-<parameter name="mtime">
-<parameter_description> a #GTimeVal.
+<parameter name="family">
+<parameter_description> the address family of @bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GInetAddress corresponding to @family and @bytes.
+
+</return>
 </function>
 
-<function name="g_file_info_remove_attribute">
+<function name="g_inet_address_new_from_string">
 <description>
-Removes all cases of @attribute from @info if it exists.
+Parses @string as an IP address and creates a new #GInetAddress.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="string">
+<parameter_description> a string representation of an IP address
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GInetAddress corresponding to @string, or %NULL if
+ string could not be parsed.
+
+</return>
 </function>
 
-<function name="g_drive_eject_with_operation_finish">
+<function name="g_inet_address_new_loopback">
 <description>
-Finishes ejecting a drive. If any errors occurred during the operation,
- error will be set to contain the errors and %FALSE will be returned.
+Creates a #GInetAddress for the loopback address for @family.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="family">
+<parameter_description> the address family
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the drive was successfully ejected. %FALSE otherwise.
+<return> a new #GInetAddress corresponding to the loopback address
+for @family.
 
 </return>
 </function>
 
-<function name="g_settings_bind_with_mapping">
+<function name="g_inet_address_to_bytes">
 <description>
-Create a binding between the @key in the @settings object
-and the property @property of @object.
-
-The binding uses the provided mapping functions to map between
-settings and property values.
-
-Note that the lifecycle of the binding is tied to the object,
-and that you can have only one binding per object property.
-If you bind the same property twice on the same object, the second
-binding overrides the first one.
+Gets the raw binary address data from @address.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to bind
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property">
-<parameter_description> the name of the property to bind
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the binding
-</parameter_description>
-</parameter>
-<parameter name="get_mapping">
-<parameter_description> a function that gets called to convert values
-from @settings to @object, or %NULL to use the default GIO mapping
-</parameter_description>
-</parameter>
-<parameter name="set_mapping">
-<parameter_description> a function that gets called to convert values
-from @object to @settings, or %NULL to use the default GIO mapping
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data that gets passed to @get_mapping and @set_mapping
-</parameter_description>
-</parameter>
-<parameter name="destroy">
-<parameter_description> #GDestroyNotify function for @user_data
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to an internal array of the bytes in @address,
+which should not be modified, stored, or freed. The size of this
+array can be gotten with g_inet_address_get_native_size().
+
+</return>
 </function>
 
-<function name="g_socket_client_get_socket_type">
+<function name="g_inet_address_to_string">
 <description>
-Gets the socket type of the socket client.
-
-See g_socket_client_set_socket_type() for details.
+Converts @address to string form.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketFamily
+<return> a representation of @address as a string, which should be
+freed after use.
 
 </return>
 </function>
 
-<function name="g_settings_set">
+<function name="g_inet_socket_address_get_address">
 <description>
-Sets @key in @settings to @value.
-
-A convenience function that combines g_settings_set_value() with
-g_variant_new().
-
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or for the #GVariantType of @format to mismatch
-the type given in the schema.
+Gets @address's #GInetAddress.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the name of the key to set
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> a #GVariant format string
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> arguments as per @format
+<parameter name="address">
+<parameter_description> a #GInetSocketAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if setting the key succeeded,
-%FALSE if the key was not writable
+<return> the #GInetAddress for @address, which must be
+g_object_ref()'d if it will be stored
+
 </return>
 </function>
 
-<function name="g_dbus_proxy_get_object_path">
+<function name="g_inet_socket_address_get_port">
 <description>
-Gets the object path @proxy is for.
+Gets @address's port.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="address">
+<parameter_description> a #GInetSocketAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string owned by @proxy. Do not free.
+<return> the port for @address
 
 </return>
 </function>
 
-<function name="g_settings_get_value">
+<function name="g_inet_socket_address_new">
 <description>
-Gets the value that is stored in @settings for @key.
-
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings.
+Creates a new #GInetSocketAddress for @address and @port.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="address">
+<parameter_description> a #GInetAddress
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="port">
+<parameter_description> a port number
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GVariant
+<return> a new #GInetSocketAddress
+
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_return_dbus_error">
+<function name="g_initable_init">
 <description>
-Finishes handling a D-Bus method call by returning an error.
+Initializes the object implementing the interface. This must be
+done before any real use of the object after initial construction.
 
-This method will free @invocation, you cannot use it afterwards.
+Implementations may also support cancellation. If @cancellable is not %NULL,
+then initialization can be cancelled by triggering the cancellable object
+from another thread. If the operation was cancelled, the error
+%G_IO_ERROR_CANCELLED will be returned. If @cancellable is not %NULL and
+the object doesn't support cancellable initialization the error
+%G_IO_ERROR_NOT_SUPPORTED will be returned.
 
-Since: 2.26
+If this function is not called, or returns with an error then all
+operations on the object should fail, generally returning the
+error %G_IO_ERROR_NOT_INITIALIZED.
+
+Implementations of this method must be idempotent, i.e. multiple calls
+to this function with the same argument should return the same results.
+Only the first call initializes the object, further calls return the result
+of the first call. This is so that its safe to implement the singleton
+pattern in the GObject constructor function.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="initable">
+<parameter_description> a #GInitable.
 </parameter_description>
 </parameter>
-<parameter name="error_name">
-<parameter_description> A valid D-Bus error name.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error_message">
-<parameter_description> A valid D-Bus error message.
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if successful. If an error has occurred, this function will
+return %FALSE and set @error appropriately if present.
+
+</return>
 </function>
 
-<function name="g_desktop_app_info_get_filename">
+<function name="g_initable_new">
 <description>
-When @info was created from a known filename, return it.  In some
-situations such as the #GDesktopAppInfo returned from
-g_desktop_app_info_new_from_keyfile(), this function will return %NULL.
+Helper function for constructing #GInitiable object. This is
+similar to g_object_new() but also initializes the object
+and returns %NULL, setting an error on failure.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GDesktopAppInfo
+<parameter name="object_type">
+<parameter_description> a #GType supporting #GInitable.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
+</parameter_description>
+</parameter>
+<parameter name="first_property_name">
+<parameter_description> the name of the first property, or %NULL if no
+properties
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description>  the value if the first property, followed by and other property
+value pairs, and ended by %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The full path to the file for @info, or %NULL if not known.
+<return> a newly allocated #GObject, or %NULL on error
+
 </return>
 </function>
 
-<function name="g_settings_backend_path_writable_changed">
+<function name="g_initable_new_valist">
 <description>
-Signals that the writability of all keys below a given path may have
-changed.
-
-Since GSettings performs no locking operations for itself, this call
-will always be made in response to external events.
+Helper function for constructing #GInitiable object. This is
+similar to g_object_new_valist() but also initializes the object
+and returns %NULL, setting an error on failure.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #GSettingsBackend implementation
+<parameter name="object_type">
+<parameter_description> a #GType supporting #GInitable.
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> the name of the path
+<parameter name="first_property_name">
+<parameter_description> the name of the first property, followed by
+the value, and other property value pairs, and ended by %NULL.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_file_info_get_attribute_string">
-<description>
-Gets the value of a string attribute. If the attribute does 
-not contain a string, %NULL will be returned.
-
-
-</description>
-<parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="var_args">
+<parameter_description> The var args list generated from @first_property_name.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the contents of the @attribute value as a string, or 
-%NULL otherwise.
+<return> a newly allocated #GObject, or %NULL on error
+
 </return>
 </function>
 
-<function name="g_content_type_equals">
+<function name="g_initable_newv">
 <description>
-Compares two content types for equality.
+Helper function for constructing #GInitiable object. This is
+similar to g_object_newv() but also initializes the object
+and returns %NULL, setting an error on failure.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="type1">
-<parameter_description> a content type string
+<parameter name="object_type">
+<parameter_description> a #GType supporting #GInitable.
 </parameter_description>
 </parameter>
-<parameter name="type2">
-<parameter_description> a content type string
+<parameter name="n_parameters">
+<parameter_description> the number of parameters in @parameters
+</parameter_description>
+</parameter>
+<parameter name="parameters">
+<parameter_description> the parameters to use to construct the object
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the two strings are identical or equivalent,
-%FALSE otherwise.
+<return> a newly allocated #GObject, or %NULL on error
+
 </return>
 </function>
 
-<function name="g_file_info_set_size">
+<function name="g_input_stream_clear_pending">
 <description>
-Sets the %G_FILE_ATTRIBUTE_STANDARD_SIZE attribute in the file info 
-to the given size.
+Clears the pending flag on @stream.
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> a #goffset containing the file's size.
+<parameter name="stream">
+<parameter_description> input stream
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_simple_async_result_is_valid">
+<function name="g_input_stream_close">
 <description>
-Ensures that the data passed to the _finish function of an async
-operation is consistent.  Three checks are performed.
-
-First, @result is checked to ensure that it is really a
-#GSimpleAsyncResult.  Second, @source is checked to ensure that it
-matches the source object of @result.  Third, @source_tag is
-checked to ensure that it is equal to the source_tag argument given
-to g_simple_async_result_new() (which, by convention, is a pointer
-to the _async function corresponding to the _finish function from
-which this function is called).
+Closes the stream, releasing resources related to it.
 
+Once the stream is closed, all other operations will return %G_IO_ERROR_CLOSED.
+Closing a stream multiple times will not return an error.
 
-</description>
-<parameters>
-<parameter name="result">
-<parameter_description> the #GAsyncResult passed to the _finish function.
-</parameter_description>
-</parameter>
-<parameter name="source">
-<parameter_description> the #GObject passed to the _finish function.
-</parameter_description>
-</parameter>
-<parameter name="source_tag">
-<parameter_description> the asynchronous function.
-</parameter_description>
-</parameter>
-</parameters>
-<return> #TRUE if all checks passed or #FALSE if any failed.
-</return>
-</function>
+Streams will be automatically closed when the last reference
+is dropped, but you might want to call this function to make sure 
+resources are released as early as possible.
 
-<function name="g_file_find_enclosing_mount">
-<description>
-Gets a #GMount for the #GFile. 
+Some streams might keep the backing store of the stream (e.g. a file descriptor)
+open after the stream is closed. See the documentation for the individual
+stream for details.
 
-If the #GFileIface for @file does not have a mount (e.g. possibly a 
-remote share), @error will be set to %G_IO_ERROR_NOT_FOUND and %NULL
-will be returned.
+On failure the first error that happened will be reported, but the close
+operation will finish as much as possible. A stream that failed to
+close will still return %G_IO_ERROR_CLOSED for all operations. Still, it
+is important to check and report the error to the user.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
+If @cancellable is not NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Cancelling a close will still leave the stream closed, but some streams
+can use a faster close that doesn't block to e.g. check errors. 
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="stream">
+<parameter_description> A #GInputStream.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError. 
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GMount where the @file is located or %NULL on error.
-Free the returned object with g_object_unref().
+<return> %TRUE on success, %FALSE on failure
 </return>
 </function>
 
-<function name="g_settings_set_value">
+<function name="g_input_stream_close_async">
 <description>
-Sets @key in @settings to @value.
-
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or for @value to have the incorrect type, per
-the schema.
+Requests an asynchronous closes of the stream, releasing resources related to it.
+When the operation is finished @callback will be called. 
+You can then call g_input_stream_close_finish() to get the result of the 
+operation.
 
-If @value is floating then this function consumes the reference.
+For behaviour details see g_input_stream_close().
 
-Since: 2.26
+The asyncronous methods have a default fallback that uses threads to implement
+asynchronicity, so they are optional for inheriting classes. However, if you
+override one you must override all.
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> A #GInputStream.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of the key to set
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request. 
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GVariant of the correct type
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if setting the key succeeded,
-%FALSE if the key was not writable
-</return>
+<return></return>
 </function>
 
-<function name="g_inet_address_to_string">
+<function name="g_input_stream_close_finish">
 <description>
-Converts @address to string form.
+Finishes closing a stream asynchronously, started from g_input_stream_close_async().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="stream">
+<parameter_description> a #GInputStream.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a representation of @address as a string, which should be
-freed after use.
-
+<return> %TRUE if the stream was closed successfully.
 </return>
 </function>
 
-<function name="g_socket_bind">
+<function name="g_input_stream_has_pending">
 <description>
-When a socket is created it is attached to an address family, but it
-doesn't have an address in this family. g_socket_bind() assigns the
-address (sometimes called name) of the socket.
-
-It is generally required to bind to a local address before you can
-receive connections. (See g_socket_listen() and g_socket_accept() ).
-In certain situations, you may also want to bind a socket that will be
-used to initiate connections, though this is not normally required.
-
- allow_reuse should be %TRUE for server sockets (sockets that you will
-eventually call g_socket_accept() on), and %FALSE for client sockets.
-(Specifically, if it is %TRUE, then g_socket_bind() will set the
-%SO_REUSEADDR flag on the socket, allowing it to bind @address even if
-that address was previously used by another socket that has not yet been
-fully cleaned-up by the kernel. Failing to set this flag on a server
-socket may cause the bind call to return %G_IO_ERROR_ADDRESS_IN_USE if
-the server program is stopped and then immediately restarted.)
+Checks if an input stream has pending actions.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
-</parameter_description>
-</parameter>
-<parameter name="address">
-<parameter_description> a #GSocketAddress specifying the local address.
-</parameter_description>
-</parameter>
-<parameter name="allow_reuse">
-<parameter_description> whether to allow reusing this address
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="stream">
+<parameter_description> input stream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
-
+<return> %TRUE if @stream has pending actions.
 </return>
 </function>
 
-<function name="g_threaded_socket_service_new">
+<function name="g_input_stream_is_closed">
 <description>
-Creates a new #GThreadedSocketService with no listeners. Listeners
-must be added with g_socket_service_add_listeners().
+Checks if an input stream is closed.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="max_threads">
-<parameter_description> the maximal number of threads to execute concurrently
-handling incoming clients, -1 means no limit
+<parameter name="stream">
+<parameter_description> input stream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSocketService.
-
+<return> %TRUE if the stream is closed.
 </return>
 </function>
 
-<function name="g_socket_set_timeout">
+<function name="g_input_stream_read">
 <description>
-Sets the time in seconds after which I/O operations on @socket will
-time out if they have not yet completed.
+Tries to read @count bytes from the stream into the buffer starting at
+ buffer  Will block during this read.
 
-On a blocking socket, this means that any blocking #GSocket
-operation will time out after @timeout seconds of inactivity,
-returning %G_IO_ERROR_TIMED_OUT.
+If count is zero returns zero and does nothing. A value of @count
+larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
 
-On a non-blocking socket, calls to g_socket_condition_wait() will
-also fail with %G_IO_ERROR_TIMED_OUT after the given time. Sources
-created with g_socket_create_source() will trigger after
- timeout seconds of inactivity, with the requested condition
-set, at which point calling g_socket_receive(), g_socket_send(),
-g_socket_check_connect_result(), etc, will fail with
-%G_IO_ERROR_TIMED_OUT.
+On success, the number of bytes read into the buffer is returned.
+It is not an error if this is not the same as the requested size, as it
+can happen e.g. near the end of a file. Zero is returned on end of file
+(or if @count is zero),  but never otherwise.
 
-If @timeout is 0 (the default), operations will never time out
-on their own.
+If @cancellable is not NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error G_IO_ERROR_CANCELLED will be returned. If an
+operation was partially finished when the operation was cancelled the
+partial result will be returned, without an error.
 
-Note that if an I/O operation is interrupted by a signal, this may
-cause the timeout to be reset.
+On error -1 is returned and @error is set accordingly.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="stream">
+<parameter_description> a #GInputStream.
 </parameter_description>
 </parameter>
-<parameter name="timeout">
-<parameter_description> the timeout for @socket, in seconds, or 0 for none
+<parameter name="buffer">
+<parameter_description> a buffer to read data into (which should be at least count bytes long).
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_app_info_set_as_default_for_extension">
-<description>
-Sets the application as the default handler for the given file extension.
-
-
-</description>
-<parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="count">
+<parameter_description> the number of bytes that will be read from the stream
 </parameter_description>
 </parameter>
-<parameter name="extension">
-<parameter_description> a string containing the file extension (without the dot).
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError.
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error.
+<return> Number of bytes read, or -1 on error
 </return>
 </function>
 
@@ -16861,45 +18677,70 @@ the number of bytes read into @buffer before the error occurred.
 </return>
 </function>
 
-<function name="g_unix_connection_send_fd">
+<function name="g_input_stream_read_async">
 <description>
-Passes a file descriptor to the recieving side of the
-connection. The recieving end has to call g_unix_connection_receive_fd()
-to accept the file descriptor.
+Request an asynchronous read of @count bytes from the stream into the buffer
+starting at @buffer. When the operation is finished @callback will be called. 
+You can then call g_input_stream_read_finish() to get the result of the 
+operation.
 
-As well as sending the fd this also writes a single byte to the
-stream, as this is required for fd passing to work on some
-implementations.
+During an async request no other sync and async calls are allowed on @stream, and will
+result in %G_IO_ERROR_PENDING errors. 
 
-Since: 2.22
+A value of @count larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
+
+On success, the number of bytes read into the buffer will be passed to the
+callback. It is not an error if this is not the same as the requested size, as it
+can happen e.g. near the end of a file, but generally we try to read
+as many bytes as requested. Zero is returned on end of file
+(or if @count is zero),  but never otherwise.
+
+Any outstanding i/o request with higher priority (lower numerical value) will
+be executed before an outstanding request with lower priority. Default
+priority is %G_PRIORITY_DEFAULT.
+
+The asyncronous methods have a default fallback that uses threads to implement
+asynchronicity, so they are optional for inheriting classes. However, if you
+override one you must override all.
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GUnixConnection
+<parameter name="stream">
+<parameter_description> A #GInputStream.
 </parameter_description>
 </parameter>
-<parameter name="fd">
-<parameter_description> a file descriptor
+<parameter name="buffer">
+<parameter_description> a buffer to read data into (which should be at least count bytes long).
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> the number of bytes that will be read from the stream
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
+of the request. 
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %TRUE on success, %NULL on error.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_input_stream_close_finish">
+<function name="g_input_stream_read_finish">
 <description>
-Finishes closing a stream asynchronously, started from g_input_stream_close_async().
+Finishes an asynchronous stream read operation. 
 
 
 </description>
@@ -16918,735 +18759,656 @@ ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the stream was closed successfully.
+<return> number of bytes read in, or -1 on error.
 </return>
 </function>
 
-<function name="g_resolver_lookup_by_address_finish">
+<function name="g_input_stream_set_pending">
 <description>
-Retrieves the result of a previous call to
-g_resolver_lookup_by_address_async().
-
-If the DNS resolution failed, @error (if non-%NULL) will be set to
-a value from #GResolverError. If the operation was cancelled,
- error will be set to %G_IO_ERROR_CANCELLED.
+Sets @stream to have actions pending. If the pending flag is
+already set or @stream is closed, it will return %FALSE and set
+ error 
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> the result passed to your #GAsyncReadyCallback
+<parameter name="stream">
+<parameter_description> input stream
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a hostname (either ASCII-only, or in ASCII-encoded
-form), or %NULL on error.
-
+<return> %TRUE if pending was previously unset and is now set.
 </return>
 </function>
 
-<function name="g_unix_mount_point_get_fs_type">
+<function name="g_input_stream_skip">
 <description>
-Gets the file system type for the mount point.
-
-
-</description>
-<parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a string containing the file system type.
-</return>
-</function>
+Tries to skip @count bytes from the stream. Will block during the operation.
 
-<function name="g_settings_set_double">
-<description>
-Sets @key in @settings to @value.
+This is identical to g_input_stream_read(), from a behaviour standpoint,
+but the bytes that are skipped are not returned to the user. Some
+streams have an implementation that is more efficient than reading the data.
 
-A convenience variant of g_settings_set() for doubles.
+This function is optional for inherited classes, as the default implementation
+emulates it using read.
 
-It is a programmer error to give a @key that isn't specified as
-having a 'double' type in the schema for @settings.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
+operation was partially finished when the operation was cancelled the
+partial result will be returned, without an error.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> a #GInputStream.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of the key to set
+<parameter name="count">
+<parameter_description> the number of bytes that will be skipped from the stream
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to set it to
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if setting the key succeeded,
-%FALSE if the key was not writable
+<return> Number of bytes skipped, or -1 on error
 </return>
 </function>
 
-<function name="g_dbus_error_register_error">
+<function name="g_input_stream_skip_async">
 <description>
-Creates an association to map between @dbus_error_name and
-#GError&lt;!-- --&gt;s specified by @error_domain and @error_code.
+Request an asynchronous skip of @count bytes from the stream.
+When the operation is finished @callback will be called.
+You can then call g_input_stream_skip_finish() to get the result
+of the operation.
 
-This is typically done in the routine that returns the #GQuark for
-an error domain.
+During an async request no other sync and async calls are allowed,
+and will result in %G_IO_ERROR_PENDING errors.
 
-Since: 2.26
+A value of @count larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
+
+On success, the number of bytes skipped will be passed to the callback.
+It is not an error if this is not the same as the requested size, as it
+can happen e.g. near the end of a file, but generally we try to skip
+as many bytes as requested. Zero is returned on end of file
+(or if @count is zero), but never otherwise.
+
+Any outstanding i/o request with higher priority (lower numerical value)
+will be executed before an outstanding request with lower priority.
+Default priority is %G_PRIORITY_DEFAULT.
+
+The asynchronous methods have a default fallback that uses threads to
+implement asynchronicity, so they are optional for inheriting classes.
+However, if you override one, you must override all.
 
 </description>
 <parameters>
-<parameter name="error_domain">
-<parameter_description> A #GQuark for a error domain.
+<parameter name="stream">
+<parameter_description> A #GInputStream.
 </parameter_description>
 </parameter>
-<parameter name="error_code">
-<parameter_description> An error code.
+<parameter name="count">
+<parameter_description> the number of bytes that will be skipped from the stream
 </parameter_description>
 </parameter>
-<parameter name="dbus_error_name">
-<parameter_description> A D-Bus error name.
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the association was created, %FALSE if it already
-exists.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_get_fd">
+<function name="g_input_stream_skip_finish">
 <description>
-Returns the underlying OS socket object. On unix this
-is a socket file descriptor, and on windows this is
-a Winsock2 SOCKET handle. This may be useful for
-doing platform specific or otherwise unusual operations
-on the socket.
+Finishes a stream skip operation.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="stream">
+<parameter_description> a #GInputStream.
 </parameter_description>
 </parameter>
-</parameters>
-<return> the file descriptor of the socket.
-
-</return>
-</function>
-
-<function name="g_cancellable_pop_current">
-<description>
-Pops @cancellable off the cancellable stack (verifying that @cancellable
-is on the top of the stack).
-
-</description>
-<parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable object
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the size of the bytes skipped, or %-1 on error.
+</return>
 </function>
 
-<function name="g_async_result_get_source_object">
+<function name="g_io_error_from_errno">
 <description>
-Gets the source object from a #GAsyncResult.
+Converts errno.h error codes into GIO error codes.
 
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> a #GAsyncResult
+<parameter name="err_no">
+<parameter_description> Error number as defined in errno.h.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new reference to the source object for the @res,
-or %NULL if there is none.
+<return> #GIOErrorEnum value for the given errno.h error number.
 </return>
 </function>
 
-<function name="g_permission_release_async">
+<function name="g_io_error_from_win32_error">
 <description>
-Attempts to release the permission represented by @permission.
-
-This is the first half of the asynchronous version of
-g_permission_release().
+Converts some common error codes into GIO error codes. The
+fallback value G_IO_ERROR_FAILED is returned for error codes not
+handled.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> the #GAsyncReadyCallback to call when done
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the user data to pass to @callback
+<parameter name="error_code">
+<parameter_description> Windows error number.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> #GIOErrorEnum value for the given error number.
+
+</return>
 </function>
 
-<function name="g_output_stream_clear_pending">
+<function name="g_io_error_quark">
 <description>
-Clears the pending flag on @stream.
+Gets the GIO Error Quark.
+
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> output stream
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a #GQuark.
+</return>
 </function>
 
-<function name="g_file_replace_async">
+<function name="g_io_extension_get_name">
 <description>
-Asynchronously overwrites the file, replacing the contents, possibly
-creating a backup copy of the file first.
+Gets the name under which @extension was registered.
 
-For more details, see g_file_replace() which is
-the synchronous version of this call.
+Note that the same type may be registered as extension
+for multiple extension points, under different names.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_replace_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="etag">
-<parameter_description> an &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the 
-current #GFile, or NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="make_backup">
-<parameter_description> %TRUE if a backup should be created.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="extension">
+<parameter_description> a #GIOExtension
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of @extension.
+</return>
 </function>
 
-<function name="g_tcp_connection_set_graceful_disconnect">
+<function name="g_io_extension_get_priority">
 <description>
-This enabled graceful disconnects on close. A graceful disconnect
-means that we signal the recieving end that the connection is terminated
-and wait for it to close the connection before closing the connection.
-
-A graceful disconnect means that we can be sure that we successfully sent
-all the outstanding data to the other end, or get an error reported.
-However, it also means we have to wait for all the data to reach the
-other side and for it to acknowledge this by closing the socket, which may
-take a while. For this reason it is disabled by default.
+Gets the priority with which @extension was registered.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GTcpConnection
-</parameter_description>
-</parameter>
-<parameter name="graceful_disconnect">
-<parameter_description> Whether to do graceful disconnects or not
+<parameter name="extension">
+<parameter_description> a #GIOExtension
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the priority of @extension
+</return>
 </function>
 
-<function name="g_data_output_stream_set_byte_order">
+<function name="g_io_extension_get_type">
 <description>
-Sets the byte order of the data output stream to @order.
+Gets the type associated with @extension.
+
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="order">
-<parameter_description> a %GDataStreamByteOrder.
+<parameter name="extension">
+<parameter_description> a #GIOExtension
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the type of @extension
+</return>
 </function>
 
-<function name="g_data_input_stream_set_byte_order">
+<function name="g_io_extension_point_get_extension_by_name">
 <description>
-This function sets the byte order for the given @stream. All subsequent
-reads from the @stream will be read in the given @order.
+Finds a #GIOExtension for an extension point by name.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="extension_point">
+<parameter_description> a #GIOExtensionPoint
 </parameter_description>
 </parameter>
-<parameter name="order">
-<parameter_description> a #GDataStreamByteOrder to set.
+<parameter name="name">
+<parameter_description> the name of the extension to get
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GIOExtension for @extension_point that has the
+given name, or %NULL if there is no extension with that name
+</return>
 </function>
 
-<function name="g_drive_stop_finish">
+<function name="g_io_extension_point_get_extensions">
 <description>
-Finishes stopping a drive.
+Gets a list of all extensions that implement this extension point.
+The list is sorted by priority, beginning with the highest priority.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="extension_point">
+<parameter_description> a #GIOExtensionPoint
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the drive has been stopped successfully,
-%FALSE otherwise.
-
+<return> a #GList of
+#GIOExtension&lt;!-- --&gt;s. The list is owned by GIO and should not be
+modified.
 </return>
 </function>
 
-<function name="g_dbus_connection_flush_finish">
+<function name="g_io_extension_point_get_required_type">
 <description>
-Finishes an operation started with g_dbus_connection_flush().
+Gets the required type for @extension_point.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_flush().
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="extension_point">
+<parameter_description> a #GIOExtensionPoint
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation succeeded, %FALSE if @error is set.
-
+<return> the #GType that all implementations must have, 
+or #G_TYPE_INVALID if the extension point has no required type
 </return>
 </function>
 
-<function name="g_settings_set_strv">
+<function name="g_io_extension_point_implement">
 <description>
-Sets @key in @settings to @value.
-
-A convenience variant of g_settings_set() for string arrays.  If
- value is %NULL, then @key is set to be the empty array.
+Registers @type as extension for the extension point with name
+ extension_point_name  
 
-It is a programmer error to give a @key that isn't specified as
-having an array of strings type in the schema for @settings.
+If @type has already been registered as an extension for this 
+extension point, the existing #GIOExtension object is returned.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="extension_point_name">
+<parameter_description> the name of the extension point
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of the key to set
+<parameter name="type">
+<parameter_description> the #GType to register as extension 
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to set it to, or %NULL
+<parameter name="extension_name">
+<parameter_description> the name for the extension
+</parameter_description>
+</parameter>
+<parameter name="priority">
+<parameter_description> the priority for the extension
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if setting the key succeeded,
-%FALSE if the key was not writable
+<return> a #GIOExtension object for #GType
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_return_error_valist">
+<function name="g_io_extension_point_lookup">
 <description>
-Like g_dbus_method_invocation_return_error() but intended for
-language bindings.
-
-This method will free @invocation, you cannot use it afterwards.
+Looks up an existing extension point.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> A #GQuark for the #GError error domain.
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> The error code.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> printf()-style format.
-</parameter_description>
-</parameter>
-<parameter name="var_args">
-<parameter_description> #va_list of parameters for @format.
+<parameter name="name">
+<parameter_description> the name of the extension point
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GIOExtensionPoint, or %NULL if there is no
+registered extension point with the given name
+</return>
 </function>
 
-<function name="g_file_info_list_attributes">
+<function name="g_io_extension_point_register">
 <description>
-Lists the file info structure's attributes.
+Registers an extension point.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="name_space">
-<parameter_description> a file attribute key's namespace.
+<parameter name="name">
+<parameter_description> The name of the extension point
 </parameter_description>
 </parameter>
 </parameters>
-<return> a null-terminated array of strings of all of the 
-possible attribute types for the given @name_space, or 
-%NULL on error.
+<return> the new #GIOExtensionPoint. This object is owned by GIO
+and should not be freed
 </return>
 </function>
 
-<function name="g_mount_operation_set_choice">
+<function name="g_io_extension_point_set_required_type">
 <description>
-Sets a default choice for the mount operation.
+Sets the required type for @extension_point to @type. 
+All implementations must henceforth have this type.
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="extension_point">
+<parameter_description> a #GIOExtensionPoint
 </parameter_description>
 </parameter>
-<parameter name="choice">
-<parameter_description> an integer.
+<parameter name="type">
+<parameter_description> the #GType to require
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_mount_point_is_readonly">
+<function name="g_io_extension_ref_class">
 <description>
-Checks if a unix mount point is read only.
+Gets a reference to the class for the type that is 
+associated with @extension.
 
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint.
+<parameter name="extension">
+<parameter_description> a #GIOExtension
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a mount point is read only.
+<return> the #GTypeClass for the type of @extension
 </return>
 </function>
 
-<function name="g_mount_operation_get_anonymous">
+<function name="g_io_module_new">
 <description>
-Check to see whether the mount operation is being used 
-for an anonymous user.
+Creates a new GIOModule that will load the specific
+shared library when in use.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="filename">
+<parameter_description> filename of the shared library module.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if mount operation is anonymous. 
+<return> a #GIOModule from given @filename, 
+or %NULL on error.
 </return>
 </function>
 
-<function name="g_unix_mount_point_get_mount_path">
+<function name="g_io_modules_load_all_in_directory">
 <description>
-Gets the mount path for a unix mount point.
+Loads all the modules in the specified directory.
+
+If don't require all modules to be initialized (and thus registering
+all gtypes) then you can use g_io_modules_scan_all_in_directory()
+which allows delayed/lazy loading of modules.
 
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint.
+<parameter name="dirname">
+<parameter_description> pathname for a directory containing modules to load.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the mount path.
+<return> a list of #GIOModules loaded
+from the directory,
+All the modules are loaded into memory, if you want to
+unload them (enabling on-demand loading) you must call
+g_type_module_unuse() on all the modules. Free the list
+with g_list_free().
 </return>
 </function>
 
-<function name="fen_init">
+<function name="g_io_modules_scan_all_in_directory">
 <description>
-FEN subsystem initializing.
+Scans all the modules in the specified directory, ensuring that
+any extension point implemented by a module is registered.
+
+This may not actually load and initialize all the types in each
+module, some modules may be lazily loaded and initialized when
+an extension point it implementes is used with e.g.
+g_io_extension_point_get_extensions() or
+g_io_extension_point_get_extension_by_name().
+
+If you need to guarantee that all types are loaded in all the modules,
+use g_io_modules_load_all_in_directory().
+
+Since: 2.24
 
 </description>
 <parameters>
+<parameter name="dirname">
+<parameter_description> pathname for a directory containing modules to scan.
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mount_get_uuid">
+<function name="g_io_scheduler_cancel_all_jobs">
 <description>
-Gets the UUID for the @mount. The reference is typically based on
-the file system UUID for the mount in question and should be
-considered an opaque string. Returns %NULL if there is no UUID
-available.
+Cancels all cancellable I/O jobs. 
 
+A job is cancellable if a #GCancellable was passed into
+g_io_scheduler_push_job().
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the UUID for @mount or %NULL if no UUID can be computed.
-The returned string should be freed with g_free()
-when no longer needed.
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_revert">
+<function name="g_io_scheduler_job_send_to_mainloop">
 <description>
-Reverts all non-applied changes to the settings.  This function
-does nothing unless @settings is in 'delay-apply' mode; see
-g_settings_delay().  In the normal case settings are always applied
-immediately.
+Used from an I/O job to send a callback to be run in the thread
+that the job was started from, waiting for the result (and thus
+blocking the I/O job).
 
-Change notifications will be emitted for affected keys.
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings instance
+<parameter name="job">
+<parameter_description> a #GIOSchedulerJob
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GSourceFunc callback that will be called in the original thread
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data to pass to @func
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify for @user_data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The return value of @func
+</return>
 </function>
 
-<function name="g_socket_is_connected">
+<function name="g_io_scheduler_job_send_to_mainloop_async">
 <description>
-Check whether the socket is connected. This is only useful for
-connection-oriented sockets.
+Used from an I/O job to send a callback to be run asynchronously in
+the thread that the job was started from. The callback will be run
+when the main loop is available, but at that time the I/O job might
+have finished. The return value from the callback is ignored.
 
-Since: 2.22
+Note that if you are passing the @user_data from g_io_scheduler_push_job()
+on to this function you have to ensure that it is not freed before
+ func is called, either by passing %NULL as @notify to 
+g_io_scheduler_push_job() or by using refcounting for @user_data.
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="job">
+<parameter_description> a #GIOSchedulerJob
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GSourceFunc callback that will be called in the original thread
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data to pass to @func
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify for @user_data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if socket is connected, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_resolver_lookup_service">
+<function name="g_io_scheduler_push_job">
 <description>
-Synchronously performs a DNS SRV lookup for the given @service and
- protocol in the given @domain and returns an array of #GSrvTarget.
- domain may be an ASCII-only or UTF-8 hostname. Note also that the
- service and @protocol arguments &lt;emphasis&gt;do not&lt;/emphasis&gt;
-include the leading underscore that appears in the actual DNS
-entry.
-
-On success, g_resolver_lookup_service() will return a #GList of
-#GSrvTarget, sorted in order of preference. (That is, you should
-attempt to connect to the first target first, then the second if
-the first fails, etc.)
-
-If the DNS resolution fails, @error (if non-%NULL) will be set to
-a value from #GResolverError.
-
-If @cancellable is non-%NULL, it can be used to cancel the
-operation, in which case @error (if non-%NULL) will be set to
-%G_IO_ERROR_CANCELLED.
+Schedules the I/O job to run. 
 
-If you are planning to connect to the service, it is usually easier
-to create a #GNetworkService and use its #GSocketConnectable
-interface.
+ notify will be called on @user_data after @job_func has returned,
+regardless whether the job was cancelled or has run to completion.
 
-Since: 2.22
+If @cancellable is not %NULL, it can be used to cancel the I/O job
+by calling g_cancellable_cancel() or by calling 
+g_io_scheduler_cancel_all_jobs().
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
+<parameter name="job_func">
+<parameter_description> a #GIOSchedulerJobFunc.
 </parameter_description>
 </parameter>
-<parameter name="service">
-<parameter_description> the service type to look up (eg, &quot;ldap&quot;)
+<parameter name="user_data">
+<parameter_description> data to pass to @job_func
 </parameter_description>
 </parameter>
-<parameter name="protocol">
-<parameter_description> the networking protocol to use for @service (eg, &quot;tcp&quot;)
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify for @user_data, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="domain">
-<parameter_description> the DNS domain to look up the service in
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;gioscheduler&quot;&gt;I/O priority&lt;/link&gt; 
+of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of #GSrvTarget, or %NULL on error. You must
-free each of the targets and the list when you are done with it.
-(You can use g_resolver_free_targets() to do this.)
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_resolve_relative_path">
+<function name="g_io_stream_clear_pending">
 <description>
-Resolves a relative path for @file to an absolute path.
-
-This call does no blocking i/o.
+Clears the pending flag on @stream.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="relative_path">
-<parameter_description> a given relative path string.
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFile to the resolved path. %NULL if @relative_path 
-is %NULL or if @file is invalid.
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="g_buffered_input_stream_fill">
+<function name="g_io_stream_close">
 <description>
-Tries to read @count bytes from the stream into the buffer.
-Will block during this read.
+Closes the stream, releasing resources related to it. This will also
+closes the individual input and output streams, if they are not already
+closed.
 
-If @count is zero, returns zero and does nothing. A value of @count
-larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
+Once the stream is closed, all other operations will return
+%G_IO_ERROR_CLOSED. Closing a stream multiple times will not
+return an error.
 
-On success, the number of bytes read into the buffer is returned.
-It is not an error if this is not the same as the requested size, as it
-can happen e.g. near the end of a file. Zero is returned on end of file
-(or if @count is zero),  but never otherwise.
+Closing a stream will automatically flush any outstanding buffers
+in the stream.
 
-If @count is -1 then the attempted read size is equal to the number of
-bytes that are required to fill the buffer.
+Streams will be automatically closed when the last reference
+is dropped, but you might want to call this function to make sure
+resources are released as early as possible.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
-operation was partially finished when the operation was cancelled the
-partial result will be returned, without an error.
+Some streams might keep the backing store of the stream (e.g. a file
+descriptor) open after the stream is closed. See the documentation for
+the individual stream for details.
 
-On error -1 is returned and @error is set accordingly.
+On failure the first error that happened will be reported, but the
+close operation will finish as much as possible. A stream that failed
+to close will still return %G_IO_ERROR_CLOSED for all operations.
+Still, it is important to check and report the error to the user,
+otherwise there might be a loss of data as all data might not be written.
 
-For the asynchronous, non-blocking, version of this function, see
-g_buffered_input_stream_fill_async().
+If @cancellable is not NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Cancelling a close will still leave the stream closed, but some streams
+can use a faster close that doesn't block to e.g. check errors.
 
+The default implementation of this method just calls close on the
+individual input/output streams.
+
+Since: 2.22
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GBufferedInputStream
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of bytes that will be read from the stream
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -17658,214 +19420,208 @@ g_buffered_input_stream_fill_async().
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes read into @stream's buffer, up to @count,
-or -1 on error.
+<return> %TRUE on success, %FALSE on failure
+
 </return>
 </function>
 
-<function name="g_settings_backend_writable_changed">
+<function name="g_io_stream_close_async">
 <description>
-Signals that the writability of a single key has possibly changed.
+Requests an asynchronous close of the stream, releasing resources
+related to it. When the operation is finished @callback will be
+called. You can then call g_io_stream_close_finish() to get
+the result of the operation.
 
-Since GSettings performs no locking operations for itself, this call
-will always be made in response to external events.
+For behaviour details see g_io_stream_close().
 
-Since: 2.26
+The asynchronous methods have a default fallback that uses threads
+to implement asynchronicity, so they are optional for inheriting
+classes. However, if you override one you must override all.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #GSettingsBackend implementation
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of the key
+<parameter name="io_priority">
+<parameter_description> the io priority of the request
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_proxy_new">
+<function name="g_io_stream_close_finish">
 <description>
-Creates a proxy for accessing @interface_name on the remote object
-at @object_path owned by @name at @connection and asynchronously
-loads D-Bus properties unless the
-#G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES flag is used. Connect to
-the #GDBusProxy::g-properties-changed signal to get notified about
-property changes.
-
-If the #G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS flag is not set, also sets up
-match rules for signals. Connect to the #GDBusProxy::g-signal signal
-to handle signals from the remote object.
-
-If @name is a well-known name and the
-#G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag isn't set and no name
-owner currently exists, the message bus will be requested to launch
-a name owner for the name.
-
-This is a failable asynchronous constructor - when the proxy is
-ready, @callback will be invoked and you can use
-g_dbus_proxy_new_finish() to get the result.
-
-See g_dbus_proxy_new_sync() and for a synchronous version of this constructor.
-
-See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+Closes a stream.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags used when constructing the proxy.
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
-</parameter_description>
-</parameter>
-<parameter name="object_path">
-<parameter_description> An object path.
-</parameter_description>
-</parameter>
-<parameter name="interface_name">
-<parameter_description> A D-Bus interface name.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> Callback function to invoke when the proxy is ready.
+<parameter name="result">
+<parameter_description> a #GAsyncResult
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> User data to pass to @callback.
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if stream was successfully closed, %FALSE otherwise.
+
+</return>
 </function>
 
-<function name="g_unix_mount_point_free">
+<function name="g_io_stream_get_input_stream">
 <description>
-Frees a unix mount point.
+Gets the input stream for this object. This is used
+for reading.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> unix mount point to free.
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GInputStream, owned by the #GIOStream.
+Do not free.
+
+</return>
 </function>
 
-<function name="g_dbus_error_set_dbus_error_valist">
+<function name="g_io_stream_get_output_stream">
 <description>
-Like g_dbus_error_set_dbus_error() but intended for language bindings.
+Gets the output stream for this object. This is used for
+writing.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> A pointer to a #GError or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="dbus_error_name">
-<parameter_description> D-Bus error name.
-</parameter_description>
-</parameter>
-<parameter name="dbus_error_message">
-<parameter_description> D-Bus error message.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> printf()-style format to prepend to @dbus_error_message or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="var_args">
-<parameter_description> Arguments for @format.
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GOutputStream, owned by the #GIOStream.
+Do not free.
+
+</return>
 </function>
 
-<function name="g_file_attribute_info_list_lookup">
+<function name="g_io_stream_has_pending">
 <description>
-Gets the file attribute with the name @name from @list.
+Checks if a stream has pending actions.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GFileAttributeInfoList.
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the attribute to lookup.
+</parameters>
+<return> %TRUE if @stream has pending actions.
+
+</return>
+</function>
+
+<function name="g_io_stream_is_closed">
+<description>
+Checks if a stream is closed.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeInfo for the @name, or %NULL if an
-attribute isn't found.
+<return> %TRUE if the stream is closed.
+
 </return>
 </function>
 
-<function name="g_dbus_connection_get_exit_on_close">
+<function name="g_io_stream_set_pending">
 <description>
-Gets whether the process is terminated when @connection is
-closed by the remote peer. See
-#GDBusConnection:exit-on-close for more details.
+Sets @stream to have actions pending. If the pending flag is
+already set or @stream is closed, it will return %FALSE and set
+ error 
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="stream">
+<parameter_description> a #GIOStream
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> Whether the process is terminated when @connection is
-closed by the remote peer.
+<return> %TRUE if pending was previously unset and is now set.
 
 </return>
 </function>
 
-<function name="g_drive_start">
+<function name="g_io_stream_splice_async">
 <description>
-Asynchronously starts a drive.
+Asyncronously splice the output stream of @stream1 to the input stream of
+ stream2, and splice the output stream of @stream2 to the input stream of
+ stream1 
 
-When the operation is finished, @callback will be called.
-You can then call g_drive_start_finish() to obtain the
+When the operation is finished @callback will be called.
+You can then call g_io_stream_splice_finish() to get the
 result of the operation.
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="stream1">
+<parameter_description> a #GIOStream.
+</parameter_description>
+</parameter>
+<parameter name="stream2">
+<parameter_description> a #GIOStream.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> flags affecting the start operation.
+<parameter_description> a set of #GIOStreamSpliceFlags.
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+<parameter name="io_priority">
+<parameter_description> the io priority of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -17873,113 +19629,165 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> a #GAsyncReadyCallback.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data to pass to @callback
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_credentials_message_new_with_credentials">
+<function name="g_io_stream_splice_finish">
 <description>
-Creates a new #GUnixCredentialsMessage holding @credentials.
+Finishes an asynchronous io stream splice operation.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials object.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixCredentialsMessage
+<return> %TRUE on success, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_file_create_readwrite">
+<function name="g_keyfile_settings_backend_new">
 <description>
-Creates a new file and returns a stream for reading and writing to it.
-The file must not already exist.
+Creates a keyfile-backed #GSettingsBackend.
 
-By default files created are generally readable by everyone,
-but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
-will be made readable only to the current user, to the level that
-is supported on the target filesystem.
+The filename of the keyfile to use is given by @filename.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+All settings read to or written from the backend must fall under the
+path given in @root_path (which must start and end with a slash and
+not contain two consecutive slashes).  @root_path may be &quot;/&quot;.
 
-If a file or directory with this name already exists the %G_IO_ERROR_EXISTS
-error will be returned. Some file systems don't allow all file names,
-and may return an %G_IO_ERROR_INVALID_FILENAME error, and if the name
-is too long, %G_IO_ERROR_FILENAME_TOO_LONG will be returned. Other errors
-are possible too, and depend on what kind of filesystem the file is on.
+If @root_group is non-%NULL then it specifies the name of the keyfile
+group used for keys that are written directly below @root_path.  For
+example, if @root_path is &quot;/apps/example/&quot; and @root_group is
+&quot;toplevel&quot;, then settings the key &quot;/apps/example/enabled&quot; to a value
+of %TRUE will cause the following to appear in the keyfile:
 
-Note that in many non-local file cases read and write streams are not
-supported, so make sure you really need to do read and write streaming,
-rather than just opening for reading or writing.
+|[
+[toplevel]
+enabled=true
+]|
 
-Since: 2.22
+If @root_group is %NULL then it is not permitted to store keys
+directly below the @root_path.
+
+For keys not stored directly below @root_path (ie: in a sub-path),
+the name of the subpath (with the final slash stripped) is used as
+the name of the keyfile group.  To continue the example, if
+&quot;/apps/example/profiles/default/font-size&quot; were set to
+12 then the following would appear in the keyfile:
+
+|[
+[profiles/default]
+font-size=12
+]|
+
+The backend will refuse writes (and return writability as being
+%FALSE) for keys outside of @root_path and, in the event that
+ root_group is %NULL, also for keys directly under @root_path.
+Writes will also be refused if the backend detects that it has the
+inability to rewrite the keyfile (ie: the containing directory is not
+writable).
+
+There is no checking done for your key namespace clashing with the
+syntax of the key file format.  For example, if you have '[' or ']'
+characters in your path names or '=' in your key names you may be in
+trouble.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile
+<parameter name="filename">
+<parameter_description> the filename of the keyfile
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags
+<parameter name="root_path">
+<parameter_description> the path under which all settings keys appear
+</parameter_description>
+</parameter>
+<parameter name="root_group">
+<parameter_description> the group name corresponding to
+ root_path, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> a keyfile-backed #GSettingsBackend
+</return>
+</function>
+
+<function name="g_loadable_icon_load">
+<description>
+Loads a loadable icon. For the asynchronous version of this function, 
+see g_loadable_icon_load_async().
+
+
+</description>
+<parameters>
+<parameter name="icon">
+<parameter_description> a #GLoadableIcon.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> an integer.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a location to store the type of the
+loaded icon, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileIOStream for the newly created file, or %NULL on error.
-Free the returned object with g_object_unref().
-
+<return> a #GInputStream to read the icon from.
 </return>
 </function>
 
-<function name="g_file_read_async">
+<function name="g_loadable_icon_load_async">
 <description>
-Asynchronously opens @file for reading.
-
-For more details, see g_file_read() which is
-the synchronous version of this call.
-
-When the operation is finished, @callback will be called. You can then call
-g_file_read_finish() to get the result of the operation.
+Loads an icon asynchronously. To finish this function, see 
+g_loadable_icon_load_finish(). For the synchronous, blocking 
+version of this function, see g_loadable_icon_load().
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile
+<parameter name="icon">
+<parameter_description> a #GLoadableIcon.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request.
+<parameter name="size">
+<parameter_description> an integer.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter_description> a #GAsyncReadyCallback to call when the
+request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
@@ -17990,309 +19798,339 @@ of the request.
 <return></return>
 </function>
 
-<function name="g_dbus_method_invocation_get_object_path">
+<function name="g_loadable_icon_load_finish">
 <description>
-Gets the object path the method was invoked on.
+Finishes an asynchronous icon load started in g_loadable_icon_load_async().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="icon">
+<parameter_description> a #GLoadableIcon.
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a location to store the type of the loaded icon, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string. Do not free, it is owned by @invocation.
-
+<return> a #GInputStream to read the icon from.
 </return>
 </function>
 
-<function name="g_dbus_message_new_from_blob">
+<function name="g_local_vfs_new">
 <description>
-Creates a new #GDBusMessage from the data stored at @blob. The byte
-order that the message was in can be retrieved using
-g_dbus_message_get_byte_order().
+Returns a new #GVfs handle for a local vfs.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="blob">
-<parameter_description> A blob represent a binary D-Bus message.
+</parameters>
+<return> a new #GVfs handle.
+</return>
+</function>
+
+<function name="g_memory_input_stream_add_data">
+<description>
+Appends @data to data that can be read from the input stream
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GMemoryInputStream
 </parameter_description>
 </parameter>
-<parameter name="blob_len">
-<parameter_description> The length of @blob.
+<parameter name="data">
+<parameter_description> input data
 </parameter_description>
 </parameter>
-<parameter name="capabilities">
-<parameter_description> A #GDBusCapabilityFlags describing what protocol features are supported.
+<parameter name="len">
+<parameter_description> length of the data, may be -1 if @data is a nul-terminated string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="destroy">
+<parameter_description> function that is called to free @data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #GDBusMessage or %NULL if @error is set. Free with
-g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_io_stream_get_output_stream">
+<function name="g_memory_input_stream_new">
 <description>
-Gets the output stream for this object. This is used for
-writing.
+Creates a new empty #GMemoryInputStream. 
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GOutputStream, owned by the #GIOStream.
-Do not free.
-
+<return> a new #GInputStream
 </return>
 </function>
 
-<function name="g_data_input_stream_read_int32">
+<function name="g_memory_input_stream_new_from_data">
 <description>
-Reads a signed 32-bit/4-byte value from @stream.
-
-In order to get the correct byte order for this read operation, 
-see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Creates a new #GMemoryInputStream with data in memory of a given size.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
+<parameter name="data">
+<parameter_description> input data
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="len">
+<parameter_description> length of the data, may be -1 if @data is a nul-terminated string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="destroy">
+<parameter_description> function that is called to free @data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a signed 32-bit/4-byte value read from the @stream or %0 if 
-an error occurred. 
+<return> new #GInputStream read from @data of @len bytes.
 </return>
 </function>
 
-<function name="g_emblem_get_origin">
+<function name="g_memory_output_stream_get_data">
 <description>
-Gets the origin of the emblem.
+Gets any loaded data from the @ostream.
+
+Note that the returned pointer may become invalid on the next
+write or truncate operation on the stream.
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="emblem">
-<parameter_description> a #GEmblem
+<parameter name="ostream">
+<parameter_description> a #GMemoryOutputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> the origin of the emblem
-
+<return> pointer to the stream's data
 </return>
 </function>
 
-<function name="g_file_info_set_display_name">
+<function name="g_memory_output_stream_get_data_size">
 <description>
-Sets the display name for the current #GFileInfo.
-See %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME.
+Returns the number of bytes from the start up
+to including the last byte written in the stream
+that has not been truncated away.
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="display_name">
-<parameter_description> a string containing a display name.
+<parameter name="ostream">
+<parameter_description> a #GMemoryOutputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of bytes written to the stream
+
+</return>
 </function>
 
-<function name="g_file_append_to_finish">
+<function name="g_memory_output_stream_get_size">
 <description>
-Finishes an asynchronous file append operation started with 
-g_file_append_to_async(). 
+Gets the size of the currently allocated data area (available from
+g_memory_output_stream_get_data()). If the stream isn't
+growable (no realloc was passed to g_memory_output_stream_new()) then
+this is the maximum size of the stream and further writes
+will return %G_IO_ERROR_NO_SPACE.
+
+Note that for growable streams the returned size may become invalid on
+the next write or truncate operation on the stream.
+
+If you want the number of bytes currently written to the stream, use
+g_memory_output_stream_get_data_size().
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> #GAsyncResult
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="ostream">
+<parameter_description> a #GMemoryOutputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> a valid #GFileOutputStream or %NULL on error.
-Free the returned object with g_object_unref().
+<return> the number of bytes allocated for the data buffer
 </return>
 </function>
 
-<function name="g_socket_receive_from">
+<function name="g_memory_output_stream_new">
 <description>
-Receive data (up to @size bytes) from a socket.
+Creates a new #GMemoryOutputStream.
 
-If @address is non-%NULL then @address will be set equal to the
-source address of the received packet.
- address is owned by the caller.
+If @data is non-%NULL, the stream  will use that for its internal storage.
+If @realloc_fn is non-%NULL, it will be used for resizing the internal
+storage when necessary. To construct a fixed-size output stream,
+pass %NULL as @realloc_fn.
 
-See g_socket_receive() for additional information.
+|[
+/ * a stream that can grow * /
+stream = g_memory_output_stream_new (NULL, 0, realloc, free);
+
+/ * another stream that can grow * /
+stream2 = g_memory_output_stream_new (NULL, 0, g_realloc, g_free);
+
+/ * a fixed-size stream * /
+data = malloc (200);
+stream3 = g_memory_output_stream_new (data, 200, NULL, free);
+]|
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
-</parameter_description>
-</parameter>
-<parameter name="address">
-<parameter_description> a pointer to a #GSocketAddress pointer, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> a buffer to read data into (which should be at least @size
-bytes long).
+<parameter name="data">
+<parameter_description> pointer to a chunk of memory to use, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="size">
-<parameter_description> the number of bytes you want to read from the socket
+<parameter_description> the size of @data
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+<parameter name="realloc_function">
+<parameter_description> a function with realloc() semantics (like g_realloc())
+to be called when @data needs to be grown, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="destroy_function">
+<parameter_description> a function to be called on @data when the stream is
+finalized, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes read, or -1 on error
-
+<return> A newly created #GMemoryOutputStream object.
 </return>
 </function>
 
-<function name="g_seekable_can_seek">
+<function name="g_memory_output_stream_steal_data">
 <description>
-Tests if the stream supports the #GSeekableIface.
+Gets any loaded data from the @ostream. Ownership of the data
+is transferred to the caller; when no longer needed it must be
+freed using the free function set in @ostream's
+#GMemoryOutputStream:destroy-function property.
+
+ ostream must be closed before calling this function.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="seekable">
-<parameter_description> a #GSeekable.
+<parameter name="ostream">
+<parameter_description> a #GMemoryOutputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @seekable can be seeked. %FALSE otherwise.
+<return> the stream's data
+
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_stringv">
+<function name="g_memory_settings_backend_new">
 <description>
-Gets the value of a stringv attribute. If the attribute does
-not contain a stringv, %NULL will be returned.
+Creates a memory-backed #GSettingsBackend.
 
-Since: 2.22
+This backend allows changes to settings, but does not write them
+to any backing storage, so the next time you run your application,
+the memory backend will start out with the default values again.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the contents of the @attribute value as a stringv, or
-%NULL otherwise. Do not free.
+<return> a newly created #GSettingsBackend
 
 </return>
 </function>
 
-<function name="g_file_info_set_attribute_object">
+<function name="g_mount_can_eject">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Checks if @mount can be eject.
+
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> a #GObject.
+</parameters>
+<return> %TRUE if the @mount can be ejected.
+</return>
+</function>
+
+<function name="g_mount_can_unmount">
+<description>
+Checks if @mount can be mounted.
+
+
+</description>
+<parameters>
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the @mount can be unmounted.
+</return>
 </function>
 
-<function name="g_dbus_message_get_flags">
+<function name="g_mount_eject">
 <description>
-Gets the flags for @message.
+Ejects a mount. This is an asynchronous operation, and is 
+finished by calling g_mount_eject_finish() with the @mount 
+and #GAsyncResult data returned in the @callback.
 
-Since: 2.26
+Deprecated: 2.22: Use g_mount_eject_with_operation() instead.
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="mount">
+<parameter_description> a #GMount.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags affecting the unmount if required for eject
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Flags that are set (typically values from the #GDBusMessageFlags enumeration bitwise ORed together).
-
-</return>
+<return></return>
 </function>
 
-<function name="g_volume_eject_finish">
+<function name="g_mount_eject_finish">
 <description>
-Finishes ejecting a volume. If any errors occured during the operation,
+Finishes ejecting a mount. If any errors occurred during the operation, 
 @error will be set to contain the errors and %FALSE will be returned.
 
-Deprecated: 2.22: Use g_volume_eject_with_operation_finish() instead.
+Deprecated: 2.22: Use g_mount_eject_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> pointer to a #GVolume.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 <parameter name="result">
@@ -18300,770 +20138,620 @@ Deprecated: 2.22: Use g_volume_eject_with_operation_finish() instead.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store an error, or %NULL to ignore
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, %FALSE if operation failed.
+<return> %TRUE if the mount was successfully ejected. %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_file_replace">
+<function name="g_mount_eject_with_operation">
 <description>
-Returns an output stream for overwriting the file, possibly
-creating a backup copy of the file first. If the file doesn't exist,
-it will be created.
-
-This will try to replace the file in the safest way possible so
-that any errors during the writing will not affect an already
-existing copy of the file. For instance, for local files it
-may write to a temporary file and then atomically rename over
-the destination when the stream is closed.
-
-By default files created are generally readable by everyone,
-but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
-will be made readable only to the current user, to the level that
-is supported on the target filesystem.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
-
-If you pass in a non-#NULL @etag value, then this value is
-compared to the current entity tag of the file, and if they differ
-an G_IO_ERROR_WRONG_ETAG error is returned. This generally means
-that the file has been changed since you last read it. You can get
-the new etag from g_file_output_stream_get_etag() after you've
-finished writing and closed the #GFileOutputStream. When you load
-a new file you can use g_file_input_stream_query_info() to get
-the etag of the file.
-
-If @make_backup is %TRUE, this function will attempt to make a backup
-of the current file before overwriting it. If this fails a G_IO_ERROR_CANT_CREATE_BACKUP
-error will be returned. If you want to replace anyway, try again with
- make_backup set to %FALSE.
-
-If the file is a directory the G_IO_ERROR_IS_DIRECTORY error will be returned,
-and if the file is some other form of non-regular file then a
-G_IO_ERROR_NOT_REGULAR_FILE error will be returned.
-Some file systems don't allow all file names, and may
-return an G_IO_ERROR_INVALID_FILENAME error, and if the name
-is to long G_IO_ERROR_FILENAME_TOO_LONG will be returned.
-Other errors are possible too, and depend on what kind of
-filesystem the file is on.
+Ejects a mount. This is an asynchronous operation, and is
+finished by calling g_mount_eject_with_operation_finish() with the @mount
+and #GAsyncResult data returned in the @callback.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="etag">
-<parameter_description> an optional &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the 
-current #GFile, or #NULL to ignore.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
-<parameter name="make_backup">
-<parameter_description> %TRUE if a backup should be created.
+<parameter name="flags">
+<parameter_description> flags affecting the unmount if required for eject
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to avoid
+user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
 <parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #GFileOutputStream or %NULL on error. 
-Free the returned object with g_object_unref().
-</return>
-</function>
-
-<function name="g_dbus_arg_info_unref">
-<description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
-
-Since: 2.26
-
-</description>
-<parameters>
-<parameter name="info">
-<parameter_description> A #GDBusArgInfo.
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gvdb_table_new">
+<function name="g_mount_eject_with_operation_finish">
 <description>
-Creates a new #GvdbTable from the contents of the file found at
- filename 
-
-The only time this function fails is if the file can not be opened.
-In that case, the #GError that is returned will be an error from
-g_mapped_file_new().
-
-An empty or otherwise corrupted file is considered to be a valid
-#GvdbTable with no entries.
+Finishes ejecting a mount. If any errors occurred during the operation,
+ error will be set to contain the errors and %FALSE will be returned.
 
-You should call gvdb_table_unref() on the return result when you no
-longer require it.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> the path to the hash file
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
-<parameter name="trusted">
-<parameter_description> if the contents of @filename are trusted
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> %NULL, or a pointer to a %NULL #GError
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GvdbTable
+<return> %TRUE if the mount was successfully ejected. %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_inet_address_get_is_mc_org_local">
+<function name="g_mount_get_default_location">
 <description>
-Tests whether @address is an organization-local multicast address.
+Gets the default location of @mount. The default location of the given
+ mount is a path that reflects the main entry point for the user (e.g.
+the home directory, or the root of the volume).
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is an organization-local multicast address.
-
+<return> a #GFile.
+The returned object should be unreffed with
+g_object_unref() when no longer needed.
 </return>
 </function>
 
-<function name="g_file_attribute_matcher_new">
+<function name="g_mount_get_drive">
 <description>
-Creates a new file attribute matcher, which matches attributes 
-against a given string. #GFileAttributeMatcher&lt;!-- --&gt;s are reference 
-counted structures, and are created with a reference count of 1. If 
-the number of references falls to 0, the #GFileAttributeMatcher is 
-automatically destroyed.
-
-The @attribute string should be formatted with specific keys separated
-from namespaces with a double colon. Several &quot;namespace::key&quot; strings may be 
-concatenated with a single comma (e.g. &quot;standard::type,standard::is-hidden&quot;). 
-The wildcard &quot;*&quot; may be used to match all keys and namespaces, or 
-&quot;namespace::*&quot; will match all keys in a given namespace. 
+Gets the drive for the @mount.
 
-Examples of strings to use:
-&lt;table&gt;
-&lt;title&gt;File Attribute Matcher strings and results&lt;/title&gt;
-&lt;tgroup cols='2' align='left'&gt;&lt;thead&gt;
-&lt;row&gt;&lt;entry&gt; Matcher String &lt;/entry&gt;&lt;entry&gt; Matches &lt;/entry&gt;&lt;/row&gt;&lt;/thead&gt;
-&lt;tbody&gt;
-&lt;row&gt;&lt;entry&gt;&quot;*&quot;&lt;/entry&gt;&lt;entry&gt;matches all attributes.&lt;/entry&gt;&lt;/row&gt;
-&lt;row&gt;&lt;entry&gt;&quot;standard::is-hidden&quot;&lt;/entry&gt;&lt;entry&gt;matches only the key is-hidden in the standard namespace.&lt;/entry&gt;&lt;/row&gt;
-&lt;row&gt;&lt;entry&gt;&quot;standard::type,unix::*&quot;&lt;/entry&gt;&lt;entry&gt;matches the type key in the standard namespace and
-all keys in the unix namespace.&lt;/entry&gt;&lt;/row&gt;
-&lt;/tbody&gt;&lt;/tgroup&gt;
-&lt;/table&gt;
+This is a convenience method for getting the #GVolume and then
+using that object to get the #GDrive.
 
 
 </description>
 <parameters>
-<parameter name="attributes">
-<parameter_description> an attribute string to match.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeMatcher.
+<return> a #GDrive or %NULL if @mount is not associated with a volume or a drive.
+The returned object should be unreffed with 
+g_object_unref() when no longer needed.
 </return>
 </function>
 
-<function name="g_dbus_connection_new_for_address_sync">
+<function name="g_mount_get_icon">
 <description>
-Synchronously connects and sets up a D-Bus client connection for
-exchanging D-Bus messages with an endpoint specified by @address
-which must be in the D-Bus address format.
-
-This constructor can only be used to initiate client-side
-connections - use g_dbus_connection_new_sync() if you need to act
-as the server. In particular, @flags cannot contain the
-%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER or
-%G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS flags.
-
-This is a synchronous failable constructor. See
-g_dbus_connection_new_for_address() for the asynchronous version.
+Gets the icon for @mount.
 
-If @observer is not %NULL it may be used to control the
-authentication process.
-
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> A D-Bus address.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags describing how to make the connection.
-</parameter_description>
-</parameter>
-<parameter name="observer">
-<parameter_description> A #GDBusAuthObserver or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
-
+<return> a #GIcon.
+The returned object should be unreffed with 
+g_object_unref() when no longer needed.
 </return>
 </function>
 
-<function name="g_resolver_free_addresses">
+<function name="g_mount_get_name">
 <description>
-Frees @addresses (which should be the return value from
-g_resolver_lookup_by_name() or g_resolver_lookup_by_name_finish()).
-(This is a convenience method; you can also simply free the results
-by hand.)
+Gets the name of @mount.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="addresses">
-<parameter_description> a #GList of #GInetAddress
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name for the given @mount. 
+The returned string should be freed with g_free()
+when no longer needed.
+</return>
 </function>
 
-<function name="g_socket_condition_check">
+<function name="g_mount_get_root">
 <description>
-Checks on the readiness of @socket to perform operations.
-The operations specified in @condition are checked for and masked
-against the currently-satisfied conditions on @socket. The result
-is returned.
-
-Note that on Windows, it is possible for an operation to return
-%G_IO_ERROR_WOULD_BLOCK even immediately after
-g_socket_condition_check() has claimed that the socket is ready for
-writing. Rather than calling g_socket_condition_check() and then
-writing to the socket if it succeeds, it is generally better to
-simply try writing to the socket right away, and try again later if
-the initial attempt returns %G_IO_ERROR_WOULD_BLOCK.
-
-It is meaningless to specify %G_IO_ERR or %G_IO_HUP in condition;
-these conditions will always be set in the output if they are true.
-
-This call never blocks.
+Gets the root directory on @mount.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
-</parameter_description>
-</parameter>
-<parameter name="condition">
-<parameter_description> a #GIOCondition mask to check
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the @GIOCondition mask of the current state
-
+<return> a #GFile. 
+The returned object should be unreffed with 
+g_object_unref() when no longer needed.
 </return>
 </function>
 
-<function name="g_file_output_stream_query_info_finish">
+<function name="g_mount_get_uuid">
 <description>
-Finalizes the asynchronous query started 
-by g_file_output_stream_query_info_async().
+Gets the UUID for the @mount. The reference is typically based on
+the file system UUID for the mount in question and should be
+considered an opaque string. Returns %NULL if there is no UUID
+available.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GFileInfo for the finished query.
+<return> the UUID for @mount or %NULL if no UUID can be computed.
+The returned string should be freed with g_free()
+when no longer needed.
 </return>
 </function>
 
-<function name="g_bus_unown_name">
+<function name="g_mount_get_volume">
 <description>
-Stops owning a name.
+Gets the volume for the @mount.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="owner_id">
-<parameter_description> An identifier obtained from g_bus_own_name()
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GVolume or %NULL if @mount is not associated with a volume.
+The returned object should be unreffed with 
+g_object_unref() when no longer needed.
+</return>
 </function>
 
-<function name="g_dbus_connection_new_for_address_finish">
+<function name="g_mount_guess_content_type">
 <description>
-Finishes an operation started with g_dbus_connection_new_for_address().
+Tries to guess the type of content stored on @mount. Returns one or
+more textual identifiers of well-known content types (typically
+prefixed with &quot;x-content/&quot;), e.g. x-content/image-dcf for camera 
+memory cards. See the &lt;ulink url=&quot;http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec&quot;&gt;shared-mime-info&lt;/ulink&gt;
+specification for more on x-content types.
 
-Since: 2.26
+This is an asynchronous operation (see
+g_mount_guess_content_type_sync() for the synchronous version), and
+is finished by calling g_mount_guess_content_type_finish() with the
+ mount and #GAsyncResult data returned in the @callback.
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_new().
+<parameter name="mount">
+<parameter_description> a #GMount
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="force_rescan">
+<parameter_description> Whether to force a rescan of the content. 
+Otherwise a cached result will be used if available
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_proxy_get_interface_info">
+<function name="g_mount_guess_content_type_finish">
 <description>
-Returns the #GDBusInterfaceInfo, if any, specifying the minimal
-interface that @proxy conforms to.
-
-See the #GDBusProxy:g-interface-info property for more details.
+Finishes guessing content types of @mount. If any errors occured
+during the operation, @error will be set to contain the errors and
+%FALSE will be returned. In particular, you may get an 
+%G_IO_ERROR_NOT_SUPPORTED if the mount does not support content 
+guessing.
 
-Since: 2.26
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy
+<parameter name="mount">
+<parameter_description> a #GMount
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusInterfaceInfo or %NULL. Do not unref the returned
-object, it is owned by @proxy.
+<return> a %NULL-terminated array of content types or %NULL on error. 
+Caller should free this array with g_strfreev() when done with it.
 
 </return>
 </function>
 
-<function name="g_unix_connection_receive_credentials">
+<function name="g_mount_guess_content_type_sync">
 <description>
-Receives credentials from the sending end of the connection.  The
-sending end has to call g_unix_connection_send_credentials() (or
-similar) for this to work.
-
-As well as reading the credentials this also reads (and discards) a
-single byte from the stream, as this is required for credentials
-passing to work on some implementations.
+Tries to guess the type of content stored on @mount. Returns one or
+more textual identifiers of well-known content types (typically
+prefixed with &quot;x-content/&quot;), e.g. x-content/image-dcf for camera 
+memory cards. See the &lt;ulink url=&quot;http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec&quot;&gt;shared-mime-info&lt;/ulink&gt;
+specification for more on x-content types.
 
-Other ways to exchange credentials with a foreign peer includes the
-#GUnixCredentialsMessage type and g_socket_get_credentials() function.
+This is an synchronous operation and as such may block doing IO;
+see g_mount_guess_content_type() for the asynchronous version.
 
-Since: 2.26
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GUnixConnection.
+<parameter name="mount">
+<parameter_description> a #GMount
+</parameter_description>
+</parameter>
+<parameter name="force_rescan">
+<parameter_description> Whether to force a rescan of the content.
+Otherwise a cached result will be used if available
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> Received credentials on success (free with
-g_object_unref()), %NULL if @error is set.
+<return> a %NULL-terminated array of content types or %NULL on error.
+Caller should free this array with g_strfreev() when done with it.
 
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_get_connection">
+<function name="g_mount_is_shadowed">
 <description>
-Gets the #GDBusConnection the method was invoked on.
+Determines if @mount is shadowed. Applications or libraries should
+avoid displaying @mount in the user interface if it is shadowed.
 
-Since: 2.26
+A mount is said to be shadowed if there exists one or more user
+visible objects (currently #GMount objects) with a root that is
+inside the root of @mount.
+
+One application of shadow mounts is when exposing a single file
+system that is used to address several logical volumes. In this
+situation, a #GVolumeMonitor implementation would create two
+#GVolume objects (for example, one for the camera functionality of
+the device and one for a SD card reader on the device) with
+activation URIs &lt;literal&gt;gphoto2://[usb:001,002]/store1/&lt;/literal&gt;
+and &lt;literal&gt;gphoto2://[usb:001,002]/store2/&lt;/literal&gt;. When the
+underlying mount (with root
+&lt;literal&gt;gphoto2://[usb:001,002]/&lt;/literal&gt;) is mounted, said
+#GVolumeMonitor implementation would create two #GMount objects
+(each with their root matching the corresponding volume activation
+root) that would shadow the original mount.
+
+The proxy monitor in GVfs 2.26 and later, automatically creates and
+manage shadow mounts (and shadows the underlying mount) if the
+activation root on a #GVolume is set.
+
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="mount">
+<parameter_description> A #GMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection. Do not free, it is owned by @invocation.
+<return> %TRUE if @mount is shadowed.
 
 </return>
 </function>
 
-<function name="g_dbus_message_set_error_name">
+<function name="g_mount_operation_get_anonymous">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME header field.
+Check to see whether the mount operation is being used 
+for an anonymous user.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if mount operation is anonymous. 
+</return>
 </function>
 
-<function name="g_srv_target_get_hostname">
+<function name="g_mount_operation_get_choice">
 <description>
-Gets @target's hostname (in ASCII form; if you are going to present
-this to the user, you should use g_hostname_is_ascii_encoded() to
-check if it contains encoded Unicode segments, and use
-g_hostname_to_unicode() to convert it if it does.)
+Gets a choice from the mount operation.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GSrvTarget
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @target's hostname
-
+<return> an integer containing an index of the user's choice from 
+the choice's list, or %0.
 </return>
 </function>
 
-<function name="g_io_extension_point_get_extensions">
+<function name="g_mount_operation_get_domain">
 <description>
-Gets a list of all extensions that implement this extension point.
-The list is sorted by priority, beginning with the highest priority.
+Gets the domain of the mount operation.
 
 
 </description>
 <parameters>
-<parameter name="extension_point">
-<parameter_description> a #GIOExtensionPoint
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of
-#GIOExtension&lt;!-- --&gt;s. The list is owned by GIO and should not be
-modified.
+<return> a string set to the domain. 
 </return>
 </function>
 
-<function name="g_dbus_error_is_remote_error">
+<function name="g_mount_operation_get_password">
 <description>
-Checks if @error represents an error received via D-Bus from a remote peer. If so,
-use g_dbus_error_get_remote_error() to get the name of the error.
+Gets a password from the mount operation. 
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> A #GError.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @error represents an error from a remote peer,
-%FALSE otherwise.
-
+<return> a string containing the password within @op.
 </return>
 </function>
 
-<function name="g_io_extension_point_implement">
+<function name="g_mount_operation_get_password_save">
 <description>
-Registers @type as extension for the extension point with name
- extension_point_name  
-
-If @type has already been registered as an extension for this 
-extension point, the existing #GIOExtension object is returned.
+Gets the state of saving passwords for the mount operation.
 
 
 </description>
 <parameters>
-<parameter name="extension_point_name">
-<parameter_description> the name of the extension point
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the #GType to register as extension 
-</parameter_description>
-</parameter>
-<parameter name="extension_name">
-<parameter_description> the name for the extension
-</parameter_description>
-</parameter>
-<parameter name="priority">
-<parameter_description> the priority for the extension
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIOExtension object for #GType
+<return> a #GPasswordSave flag. 
 </return>
 </function>
 
-<function name="g_file_attribute_matcher_enumerate_next">
+<function name="g_mount_operation_get_username">
 <description>
-Gets the next matched attribute from a #GFileAttributeMatcher.
+Get the user name from the mount operation.
 
 
 </description>
 <parameters>
-<parameter name="matcher">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the next attribute or %NULL if 
-no more attribute exist.
+<return> a string containing the user name.
 </return>
 </function>
 
-<function name="g_dbus_proxy_set_interface_info">
+<function name="g_mount_operation_new">
 <description>
-Ensure that interactions with @proxy conform to the given
-interface.  For example, when completing a method call, if the type
-signature of the message isn't what's expected, the given #GError
-is set.  Signals that have a type signature mismatch are simply
-dropped.
+Creates a new mount operation.
 
-See the #GDBusProxy:g-interface-info property for more details.
 
-Since: 2.26
+</description>
+<parameters>
+</parameters>
+<return> a #GMountOperation.
+</return>
+</function>
+
+<function name="g_mount_operation_reply">
+<description>
+Emits the #GMountOperation::reply signal.
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy
+<parameter name="op">
+<parameter_description> a #GMountOperation
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> Minimum interface this proxy conforms to or %NULL to unset.
+<parameter name="result">
+<parameter_description> a #GMountOperationResult
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_method_invocation_return_error">
+<function name="g_mount_operation_set_anonymous">
 <description>
-Finishes handling a D-Bus method call by returning an error.
-
-See g_dbus_error_encode_gerror() for details about what error name
-will be returned on the wire. In a nutshell, if the given error is
-registered using g_dbus_error_register_error() the name given
-during registration is used. Otherwise, a name of the form
-&lt;literal&gt;org.gtk.GDBus.UnmappedGError.Quark...&lt;/literal&gt; is
-used. This provides transparent mapping of #GError between
-applications using GDBus.
-
-If you are writing an application intended to be portable,
-&lt;emphasis&gt;always&lt;/emphasis&gt; register errors with g_dbus_error_register_error()
-or use g_dbus_method_invocation_return_dbus_error().
-
-This method will free @invocation, you cannot use it afterwards.
-
-Since: 2.26
+Sets the mount operation to use an anonymous user if @anonymous is %TRUE.
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> A #GQuark for the #GError error domain.
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> The error code.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> printf()-style format.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> Parameters for @format.
+<parameter name="anonymous">
+<parameter_description> boolean value.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_inet_address_new_from_string">
+<function name="g_mount_operation_set_choice">
 <description>
-Parses @string as an IP address and creates a new #GInetAddress.
-
-Since: 2.22
+Sets a default choice for the mount operation.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a string representation of an IP address
+<parameter name="op">
+<parameter_description> a #GMountOperation.
+</parameter_description>
+</parameter>
+<parameter name="choice">
+<parameter_description> an integer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GInetAddress corresponding to @string, or %NULL if
- string could not be parsed.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_get_attribute_type">
+<function name="g_mount_operation_set_domain">
 <description>
-Gets the attribute type for an attribute key.
-
+Sets the mount operation's domain. 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="domain">
+<parameter_description> the domain to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeType for the given @attribute, or 
-%G_FILE_ATTRIBUTE_TYPE_INVALID if the key is not set.
-</return>
+<return></return>
 </function>
 
-<function name="g_app_info_get_id">
+<function name="g_mount_operation_set_password">
 <description>
-Gets the ID of an application. An id is a string that
-identifies the application. The exact format of the id is
-platform dependent. For instance, on Unix this is the
-desktop file id from the xdg menu specification.
-
-Note that the returned ID may be %NULL, depending on how
-the @appinfo has been constructed.
+Sets the mount operation's password to @password.  
 
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
+</parameter_description>
+</parameter>
+<parameter name="password">
+<parameter_description> password to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the application's ID.
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_message_get_destination">
+<function name="g_mount_operation_set_password_save">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION header field.
+Sets the state of saving passwords for the mount operation.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="op">
+<parameter_description> a #GMountOperation.
+</parameter_description>
+</parameter>
+<parameter name="save">
+<parameter_description> a set of #GPasswordSave flags.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_client_connect_async">
+<function name="g_mount_operation_set_username">
 <description>
-This is the asynchronous version of g_socket_client_connect().
-
-When the operation is finished @callback will be
-called. You can then call g_socket_client_connect_finish() to get
-the result of the operation.
-
-Since: 2.22
+Sets the user name within @op to @username.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GTcpClient
-</parameter_description>
-</parameter>
-<parameter name="connectable">
-<parameter_description> a #GSocketConnectable specifying the remote address.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback
+<parameter name="op">
+<parameter_description> a #GMountOperation.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data for the callback
+<parameter name="username">
+<parameter_description> input username.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mount_eject_with_operation">
+<function name="g_mount_remount">
 <description>
-Ejects a mount. This is an asynchronous operation, and is
-finished by calling g_mount_eject_with_operation_finish() with the @mount
-and #GAsyncResult data returned in the @callback.
+Remounts a mount. This is an asynchronous operation, and is 
+finished by calling g_mount_remount_finish() with the @mount 
+and #GAsyncResults data returned in the @callback.
 
-Since: 2.22
+Remounting is useful when some setting affecting the operation
+of the volume has been changed, as these may need a remount to
+take affect. While this is semantically equivalent with unmounting
+and then remounting not all backends might need to actually be
+unmounted.
 
 </description>
 <parameters>
@@ -19072,11 +20760,12 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> flags affecting the unmount if required for eject
+<parameter_description> flags affecting the operation
 </parameter_description>
 </parameter>
 <parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+<parameter_description> a #GMountOperation or %NULL to avoid
+user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -19095,129 +20784,96 @@ Since: 2.22
 <return></return>
 </function>
 
-<function name="g_file_create">
+<function name="g_mount_remount_finish">
 <description>
-Creates a new file and returns an output stream for writing to it.
-The file must not already exist.
-
-By default files created are generally readable by everyone,
-but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
-will be made readable only to the current user, to the level that
-is supported on the target filesystem.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
-
-If a file or directory with this name already exists the G_IO_ERROR_EXISTS
-error will be returned.
-Some file systems don't allow all file names, and may
-return an G_IO_ERROR_INVALID_FILENAME error, and if the name
-is to long G_IO_ERROR_FILENAME_TOO_LONG will be returned.
-Other errors are possible too, and depend on what kind of
-filesystem the file is on.
+Finishes remounting a mount. If any errors occurred during the operation, 
+ error will be set to contain the errors and %FALSE will be returned.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileOutputStream for the newly created file, or 
-%NULL on error.
-Free the returned object with g_object_unref().
+<return> %TRUE if the mount was successfully remounted. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_dbus_message_set_body">
+<function name="g_mount_shadow">
 <description>
-Sets the body @message. As a side-effect the
-%G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE header field is set to the
-type string of @body (or cleared if @body is %NULL).
-
-If @body is floating, @message assumes ownership of @body.
+Increments the shadow count on @mount. Usually used by
+#GVolumeMonitor implementations when creating a shadow mount for
+ mount, see g_mount_is_shadowed() for more information. The caller
+will need to emit the #GMount::changed signal on @mount manually.
 
-Since: 2.26
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="body">
-<parameter_description> Either %NULL or a #GVariant that is a tuple.
+<parameter name="mount">
+<parameter_description> A #GMount.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_application_is_remote">
+<function name="g_mount_unmount">
 <description>
-Returns whether the object represents a proxy for a remote application.
+Unmounts a mount. This is an asynchronous operation, and is 
+finished by calling g_mount_unmount_finish() with the @mount 
+and #GAsyncResult data returned in the @callback.
 
+Deprecated: 2.22: Use g_mount_unmount_with_operation() instead.
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if this object represents a proxy for a remote application.
-</return>
-</function>
-
-<function name="g_content_type_get_description">
-<description>
-Gets the human readable description of the content type.
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> a content type string
+<parameter name="flags">
+<parameter_description> flags affecting the operation
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a short description of the content type @type. Free the
-returned string with g_free()
-</return>
+<return></return>
 </function>
 
-<function name="g_file_enumerator_close_finish">
+<function name="g_mount_unmount_finish">
 <description>
-Finishes closing a file enumerator, started from g_file_enumerator_close_async().
-
-If the file enumerator was already closed when g_file_enumerator_close_async() 
-was called, then this function will report %G_IO_ERROR_CLOSED in @error, and 
-return %FALSE. If the file enumerator had pending operation when the close 
-operation was started, then this function will report %G_IO_ERROR_PENDING, and
-return %FALSE.  If @cancellable was not %NULL, then the operation may have been 
-cancelled by triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be set, and %FALSE will be 
-returned. 
+Finishes unmounting a mount. If any errors occurred during the operation, 
+ error will be set to contain the errors and %FALSE will be returned.
 
+Deprecated: 2.22: Use g_mount_unmount_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
 <parameter name="result">
@@ -19230,708 +20886,702 @@ ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the close operation has finished successfully.
+<return> %TRUE if the mount was successfully unmounted. %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_file_load_contents">
+<function name="g_mount_unmount_with_operation">
 <description>
-Loads the content of the file into memory. The data is always 
-zero-terminated, but this is not included in the resultant @length.
-The returned @content should be freed with g_free() when no longer
-needed.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Unmounts a mount. This is an asynchronous operation, and is
+finished by calling g_mount_unmount_with_operation_finish() with the @mount 
+and #GAsyncResult data returned in the @callback.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="mount">
+<parameter_description> a #GMount.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="flags">
+<parameter_description> flags affecting the operation
 </parameter_description>
 </parameter>
-<parameter name="contents">
-<parameter_description> a location to place the contents of the file.
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to avoid
+user interaction.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> a location to place the length of the contents of the file,
-or %NULL if the length is not needed
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="etag_out">
-<parameter_description> a location to place the current entity tag for the file,
-or %NULL if the entity tag is not needed
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @file's contents were successfully loaded.
-%FALSE if there were errors.
-</return>
+<return></return>
 </function>
 
-<function name="g_inet_address_get_is_multicast">
+<function name="g_mount_unmount_with_operation_finish">
 <description>
-Tests whether @address is a multicast address.
+Finishes unmounting a mount. If any errors occurred during the operation,
+ error will be set to contain the errors and %FALSE will be returned.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="mount">
+<parameter_description> a #GMount.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is a multicast address.
+<return> %TRUE if the mount was successfully unmounted. %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_data_output_stream_put_int64">
+<function name="g_mount_unshadow">
 <description>
-Puts a signed 64-bit integer into the stream.
+Decrements the shadow count on @mount. Usually used by
+#GVolumeMonitor implementations when destroying a shadow mount for
+ mount, see g_mount_is_shadowed() for more information. The caller
+will need to emit the #GMount::changed signal on @mount manually.
 
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a #gint64.
+<parameter name="mount">
+<parameter_description> A #GMount.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_network_address_get_hostname">
+<description>
+Gets @addr's hostname. This might be either UTF-8 or ASCII-encoded,
+depending on what @addr was created with.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="addr">
+<parameter_description> a #GNetworkAddress
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+</parameters>
+<return> @addr's hostname
+
+</return>
+</function>
+
+<function name="g_network_address_get_port">
+<description>
+Gets @addr's port number
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="addr">
+<parameter_description> a #GNetworkAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
+<return> @addr's port (which may be 0)
+
 </return>
 </function>
 
-<function name="g_permission_release_finish">
+<function name="g_network_address_get_scheme">
 <description>
-Collects the result of attempting to release the permission
-represented by @permission.
-
-This is the second half of the asynchronous version of
-g_permission_release().
+Gets @addr's scheme
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
+<parameter name="addr">
+<parameter_description> a #GNetworkAddress
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> the #GAsyncResult given to the #GAsyncReadyCallback
+</parameters>
+<return> @addr's scheme (%NULL if not built from URI)
+
+</return>
+</function>
+
+<function name="g_network_address_new">
+<description>
+Creates a new #GSocketConnectable for connecting to the given
+ hostname and @port.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="hostname">
+<parameter_description> the hostname
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a pointer to a %NULL #GError, or %NULL
+<parameter name="port">
+<parameter_description> the port
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the permission was successfully released
+<return> the new #GNetworkAddress
+
 </return>
 </function>
 
-<function name="g_output_stream_close">
+<function name="g_network_address_parse">
 <description>
-Closes the stream, releasing resources related to it.
-
-Once the stream is closed, all other operations will return %G_IO_ERROR_CLOSED.
-Closing a stream multiple times will not return an error.
-
-Closing a stream will automatically flush any outstanding buffers in the
-stream.
-
-Streams will be automatically closed when the last reference
-is dropped, but you might want to call this function to make sure 
-resources are released as early as possible.
+Creates a new #GSocketConnectable for connecting to the given
+ hostname and @port. May fail and return %NULL in case
+parsing @host_and_port fails.
 
-Some streams might keep the backing store of the stream (e.g. a file descriptor)
-open after the stream is closed. See the documentation for the individual
-stream for details.
+ host_and_port may be in any of a number of recognised formats; an IPv6
+address, an IPv4 address, or a domain name (in which case a DNS
+lookup is performed). Quoting with [] is supported for all address
+types. A port override may be specified in the usual way with a
+colon. Ports may be given as decimal numbers or symbolic names (in
+which case an /etc/services lookup is performed).
 
-On failure the first error that happened will be reported, but the close
-operation will finish as much as possible. A stream that failed to
-close will still return %G_IO_ERROR_CLOSED for all operations. Still, it
-is important to check and report the error to the user, otherwise
-there might be a loss of data as all data might not be written.
+If no port is specified in @host_and_port then @default_port will be
+used as the port number to connect to.
 
-If @cancellable is not NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
-Cancelling a close will still leave the stream closed, but there some streams
-can use a faster close that doesn't block to e.g. check errors. On
-cancellation (as with any error) there is no guarantee that all written
-data will reach the target. 
+In general, @host_and_port is expected to be provided by the user
+(allowing them to give the hostname, and a port overide if necessary)
+and @default_port is expected to be provided by the application.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> A #GOutputStream.
+<parameter name="host_and_port">
+<parameter_description> the hostname and optionally a port
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional cancellable object
+<parameter name="default_port">
+<parameter_description> the default port if not in @host_and_port
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> a pointer to a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on failure
+<return> the new #GNetworkAddress, or %NULL on error
+
 </return>
 </function>
 
-<function name="g_file_replace_contents">
+<function name="g_network_address_parse_uri">
 <description>
-Replaces the contents of @file with @contents of @length bytes.
- 
-If @etag is specified (not %NULL) any existing file must have that etag, or
-the error %G_IO_ERROR_WRONG_ETAG will be returned.
-
-If @make_backup is %TRUE, this function will attempt to make a backup of @file.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Creates a new #GSocketConnectable for connecting to the given
+ uri  May fail and return %NULL in case parsing @uri fails.
 
-The returned @new_etag can be used to verify that the file hasn't changed the
-next time it is saved over.
+Using this rather than g_network_address_new() or
+g_network_address_parse_host() allows #GSocketClient to determine
+when to use application-specific proxy protocols.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="contents">
-<parameter_description> a string containing the new contents for @file.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the length of @contents in bytes.
-</parameter_description>
-</parameter>
-<parameter name="etag">
-<parameter_description> the old &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; 
-for the document, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="make_backup">
-<parameter_description> %TRUE if a backup should be created.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
-</parameter_description>
-</parameter>
-<parameter name="new_etag">
-<parameter_description> a location to a new &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt;
-for the document. This should be freed with g_free() when no longer 
-needed, or %NULL
+<parameter name="uri">
+<parameter_description> the hostname and optionally a port
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="default_port">
+<parameter_description> The default port if none is found in the URI
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a pointer to a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful. If an error
-has occurred, this function will return %FALSE and set @error
-appropriately if present.
+<return> the new #GNetworkAddress, or %NULL on error
+
 </return>
 </function>
 
-<function name="g_dbus_message_get_num_unix_fds">
+<function name="g_network_service_get_domain">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS header field.
+Gets the domain that @srv serves. This might be either UTF-8 or
+ASCII-encoded, depending on what @srv was created with.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="srv">
+<parameter_description> a #GNetworkService
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
+<return> @srv's domain name
 
 </return>
 </function>
 
-<function name="g_socket_connectable_enumerate">
+<function name="g_network_service_get_protocol">
 <description>
-Creates a #GSocketAddressEnumerator for @connectable.
+Gets @srv's protocol name (eg, &quot;tcp&quot;).
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connectable">
-<parameter_description> a #GSocketConnectable
+<parameter name="srv">
+<parameter_description> a #GNetworkService
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSocketAddressEnumerator.
+<return> @srv's protocol name
 
 </return>
 </function>
 
-<function name="g_unix_input_stream_get_fd">
+<function name="g_network_service_get_scheme">
 <description>
-Return the UNIX file descriptor that the stream reads from.
+Get's the URI scheme used to resolve proxies. By default, the service name
+is used as scheme.
 
-Since: 2.20
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GUnixInputStream
+<parameter name="srv">
+<parameter_description> a #GNetworkService
 </parameter_description>
 </parameter>
 </parameters>
-<return> The file descriptor of @stream
+<return> @srv's scheme name
 
 </return>
 </function>
 
-<function name="g_settings_get_string">
+<function name="g_network_service_get_service">
 <description>
-Gets the value that is stored at @key in @settings.
+Gets @srv's service name (eg, &quot;ldap&quot;).
 
-A convenience variant of g_settings_get() for strings.
+Since: 2.22
 
-It is a programmer error to give a @key that isn't specified as
-having a string type in the schema for @settings.
+</description>
+<parameters>
+<parameter name="srv">
+<parameter_description> a #GNetworkService
+</parameter_description>
+</parameter>
+</parameters>
+<return> @srv's service name
 
-Since: 2.26
+</return>
+</function>
+
+<function name="g_network_service_new">
+<description>
+Creates a new #GNetworkService representing the given @service,
+ protocol, and @domain. This will initially be unresolved; use the
+#GSocketConnectable interface to resolve it.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="service">
+<parameter_description> the service type to look up (eg, &quot;ldap&quot;)
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="protocol">
+<parameter_description> the networking protocol to use for @service (eg, &quot;tcp&quot;)
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> the DNS domain to look up the service in
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string
+<return> a new #GNetworkService
+
 </return>
 </function>
 
-<function name="g_dbus_message_set_byte_order">
+<function name="g_network_service_set_scheme">
 <description>
-Sets the byte order of @message.
+Set's the URI scheme used to resolve proxies. By default, the service name
+is used as scheme.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="srv">
+<parameter_description> a #GNetworkService
 </parameter_description>
 </parameter>
-<parameter name="byte_order">
-<parameter_description> The byte order.
+<parameter name="scheme">
+<parameter_description> a URI scheme
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_volume_monitor_get_volume_for_uuid">
+<function name="g_null_settings_backend_new">
 <description>
-Finds a #GVolume object by its UUID (see g_volume_get_uuid())
+Creates a readonly #GSettingsBackend.
+
+This backend does not allow changes to settings, so all settings
+will always have their default values.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="volume_monitor">
-<parameter_description> a #GVolumeMonitor.
-</parameter_description>
-</parameter>
-<parameter name="uuid">
-<parameter_description> the UUID to look for
+</parameters>
+<return> a newly created #GSettingsBackend
+
+</return>
+</function>
+
+<function name="g_output_stream_clear_pending">
+<description>
+Clears the pending flag on @stream.
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> output stream
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GVolume or %NULL if no such volume is available.
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_set_enum">
+<function name="g_output_stream_close">
 <description>
-Looks up the enumerated type nick for @value and writes it to @key,
-within @settings.
+Closes the stream, releasing resources related to it.
 
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or is not marked as an enumerated type, or for
- value not to be a valid value for the named type.
+Once the stream is closed, all other operations will return %G_IO_ERROR_CLOSED.
+Closing a stream multiple times will not return an error.
+
+Closing a stream will automatically flush any outstanding buffers in the
+stream.
+
+Streams will be automatically closed when the last reference
+is dropped, but you might want to call this function to make sure 
+resources are released as early as possible.
+
+Some streams might keep the backing store of the stream (e.g. a file descriptor)
+open after the stream is closed. See the documentation for the individual
+stream for details.
+
+On failure the first error that happened will be reported, but the close
+operation will finish as much as possible. A stream that failed to
+close will still return %G_IO_ERROR_CLOSED for all operations. Still, it
+is important to check and report the error to the user, otherwise
+there might be a loss of data as all data might not be written.
+
+If @cancellable is not NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Cancelling a close will still leave the stream closed, but there some streams
+can use a faster close that doesn't block to e.g. check errors. On
+cancellation (as with any error) there is no guarantee that all written
+data will reach the target. 
 
-After performing the write, accessing @key directly with
-g_settings_get_string() will return the 'nick' associated with
- value 
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> A #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key, within @settings
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> an enumerated value
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, if the set succeeds
+<return> %TRUE on success, %FALSE on failure
 </return>
 </function>
 
-<function name="g_app_info_launch_uris">
+<function name="g_output_stream_close_async">
 <description>
-Launches the application. Passes @uris to the launched application
-as arguments, using the optional @launch_context to get information
-about the details of the launcher (like what screen it is on).
-On error, @error will be set accordingly.
-
-To lauch the application without arguments pass a %NULL @uris list.
+Requests an asynchronous close of the stream, releasing resources 
+related to it. When the operation is finished @callback will be 
+called. You can then call g_output_stream_close_finish() to get 
+the result of the operation.
 
-Note that even if the launch is successful the application launched
-can fail to start if it runs into problems during startup. There is
-no way to detect this.
+For behaviour details see g_output_stream_close().
 
+The asyncronous methods have a default fallback that uses threads 
+to implement asynchronicity, so they are optional for inheriting 
+classes. However, if you override one you must override all.
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo
+<parameter name="stream">
+<parameter_description> A #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="uris">
-<parameter_description> a #GList containing URIs to launch.
+<parameter name="io_priority">
+<parameter_description> the io priority of the request.
 </parameter_description>
 </parameter>
-<parameter name="launch_context">
-<parameter_description> a #GAppLaunchContext or %NULL
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on successful launch, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_network_address_parse">
+<function name="g_output_stream_close_finish">
 <description>
-Creates a new #GSocketConnectable for connecting to the given
- hostname and @port. May fail and return %NULL in case
-parsing @host_and_port fails.
-
- host_and_port may be in any of a number of recognised formats: an IPv6
-address, an IPv4 address, or a domain name (in which case a DNS
-lookup is performed). Quoting with [] is supported for all address
-types. A port override may be specified in the usual way with a
-colon. Ports may be given as decimal numbers or symbolic names (in
-which case an /etc/services lookup is performed).
-
-If no port is specified in @host_and_port then @default_port will be
-used as the port number to connect to.
-
-In general, @host_and_port is expected to be provided by the user
-(allowing them to give the hostname, and a port overide if necessary)
-and @default_port is expected to be provided by the application.
+Closes an output stream.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="host_and_port">
-<parameter_description> the hostname and optionally a port
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="default_port">
-<parameter_description> the default port if not in @host_and_port
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a pointer to a #GError, or %NULL
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GNetworkAddress, or %NULL on error
-
+<return> %TRUE if stream was successfully closed, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_settings_backend_path_changed">
+<function name="g_output_stream_flush">
 <description>
-Signals that all keys below a given path may have possibly changed.
-Backend implementations should call this if an entire path of keys
-have possibly changed their values.
-
- path must be a valid path (ie: starting and ending with a slash and
-not containing '//').
-
-The meaning of this signal is that any of the key which has a name
-starting with @path may have changed.
+Flushed any outstanding buffers in the stream. Will block during 
+the operation. Closing the stream will implicitly cause a flush.
 
-The same rules for when notifications must occur apply as per
-g_settings_backend_changed().  This call might be an appropriate
-reasponse to a 'reset' call but implementations are also free to
-explicitly list the keys that were affected by that call if they can
-easily do so.
+This function is optional for inherited classes.
 
-For efficiency reasons, the implementation should strive for @path to
-be as long as possible (ie: the longest common prefix of all of the
-keys that were changed) but this is not strictly required.  As an
-example, if this function is called with the path of &quot;/&quot; then every
-single key in the application will be notified of a possible change.
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #GSettingsBackend implementation
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> the path containing the changes
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
 </parameter_description>
 </parameter>
-<parameter name="origin_tag">
-<parameter_description> the origin tag
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on success, %FALSE on error
+</return>
 </function>
 
-<function name="g_file_open_readwrite">
+<function name="g_output_stream_flush_async">
 <description>
-Opens an existing file for reading and writing. The result is
-a #GFileIOStream that can be used to read and write the contents of the file.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
-
-If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
-If the file is a directory, the G_IO_ERROR_IS_DIRECTORY error will be returned.
-Other errors are possible too, and depend on what kind of filesystem the file is on.
-Note that in many non-local file cases read and write streams are not supported,
-so make sure you really need to do read and write streaming, rather than
-just opening for reading or writing.
+Flushes a stream asynchronously.
+For behaviour details see g_output_stream_flush().
 
-Since: 2.22
+When the operation is finished @callback will be 
+called. You can then call g_output_stream_flush_finish() to get the 
+result of the operation.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> #GFile to open
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the io priority of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> a #GCancellable
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileIOStream or %NULL on error.
-Free the returned object with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_settings_get_boolean">
+<function name="g_output_stream_flush_finish">
 <description>
-Gets the value that is stored at @key in @settings.
-
-A convenience variant of g_settings_get() for booleans.
-
-It is a programmer error to give a @key that isn't specified as
-having a boolean type in the schema for @settings.
+Finishes flushing an output stream.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to get the value for
+<parameter name="result">
+<parameter_description> a GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a boolean
+<return> %TRUE if flush operation suceeded, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_settings_list_schemas">
+<function name="g_output_stream_has_pending">
 <description>
-Returns a list of GSettings schemas that are available.  The list
-must not be modified or freed.
+Checks if an ouput stream has pending actions.
+
 
 </description>
 <parameters>
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a list of the schemas installed on the system
+<return> %TRUE if @stream has pending actions. 
 </return>
 </function>
 
-<function name="g_permission_release">
+<function name="g_output_stream_is_closed">
 <description>
-Attempts to release the permission represented by @permission.
-
-The precise method by which this happens depends on the permission
-and the underlying authentication mechanism.  In most cases the
-permission will be dropped immediately without further action.
-
-You should check with g_permission_get_can_release() before calling
-this function.
-
-If the permission is released then %TRUE is returned.  Otherwise,
-%FALSE is returned and @error is set appropriately.
-
-This call is blocking, likely for a very long time (in the case that
-user interaction is required).  See g_permission_release_async() for
-the non-blocking version.
+Checks if an output stream has already been closed.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a pointer to a %NULL #GError, or %NULL
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the permission was successfully released
+<return> %TRUE if @stream is closed. %FALSE otherwise. 
 </return>
 </function>
 
-<function name="g_file_attribute_matcher_unref">
+<function name="g_output_stream_is_closing">
 <description>
-Unreferences @matcher. If the reference count falls below 1, 
-the @matcher is automatically freed.
+Checks if an output stream is being closed. This can be
+used inside e.g. a flush implementation to see if the
+flush (or other i/o operation) is called from within
+the closing operation.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="matcher">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @stream is being closed. %FALSE otherwise.
+
+</return>
 </function>
 
-<function name="g_dbus_error_encode_gerror">
+<function name="g_output_stream_set_pending">
 <description>
-Creates a D-Bus error name to use for @error. If @error matches
-a registered error (cf. g_dbus_error_register_error()), the corresponding
-D-Bus error name will be returned.
-
-Otherwise the a name of the form
-&lt;literal&gt;org.gtk.GDBus.UnmappedGError.Quark._ESCAPED_QUARK_NAME.Code_ERROR_CODE&lt;/literal&gt;
-will be used. This allows other GDBus applications to map the error
-on the wire back to a #GError using g_dbus_error_new_for_dbus_error().
-
-This function is typically only used in object mappings to put a
-#GError on the wire. Regular applications should not use it.
+Sets @stream to have actions pending. If the pending flag is
+already set or @stream is closed, it will return %FALSE and set
+ error 
 
-Since: 2.26
 
 </description>
 <parameters>
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
 <parameter name="error">
-<parameter_description> A #GError.
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A D-Bus error name (never %NULL). Free with g_free().
-
+<return> %TRUE if pending was previously unset and is now set.
 </return>
 </function>
 
-<function name="g_file_set_attribute_int32">
+<function name="g_output_stream_splice">
 <description>
-Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_INT32 to @value. 
-If @attribute is of a different type, this operation will fail.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Splices an input stream into an output stream.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #gint32 containing the attribute's new value.
+<parameter name="source">
+<parameter_description> a #GInputStream.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> a #GFileQueryInfoFlags.
+<parameter_description> a set of #GOutputStreamSpliceFlags.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -19939,151 +21589,233 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @attribute was successfully set to @value 
-in the @file, %FALSE otherwise. 
+<return> a #gssize containing the size of the data spliced, or
+-1 if an error occurred.
 </return>
 </function>
 
-<function name="g_dbus_connection_new_sync">
+<function name="g_output_stream_splice_async">
 <description>
-Synchronously sets up a D-Bus connection for exchanging D-Bus messages
-with the end represented by @stream.
-
-If @observer is not %NULL it may be used to control the
-authentication process.
-
-This is a synchronous failable constructor. See
-g_dbus_connection_new() for the asynchronous version.
+Splices a stream asynchronously.
+When the operation is finished @callback will be called.
+You can then call g_output_stream_splice_finish() to get the 
+result of the operation.
 
-Since: 2.26
+For the synchronous, blocking version of this function, see 
+g_output_stream_splice().
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> A #GIOStream.
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="guid">
-<parameter_description> The GUID to use if a authenticating as a server or %NULL.
+<parameter name="source">
+<parameter_description> a #GInputStream. 
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> Flags describing how to make the connection.
+<parameter_description> a set of #GOutputStreamSpliceFlags.
 </parameter_description>
 </parameter>
-<parameter name="observer">
-<parameter_description> A #GDBusAuthObserver or %NULL.
+<parameter name="io_priority">
+<parameter_description> the io priority of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback. 
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusConnection or %NULL if @error is set. Free with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_unix_mount_at">
+<function name="g_output_stream_splice_finish">
 <description>
-Gets a #GUnixMountEntry for a given mount path. If @time_read
-is set, it will be filled with a unix timestamp for checking
-if the mounts have changed since with g_unix_mounts_changed_since().
+Finishes an asynchronous stream splice operation.
 
 
 </description>
 <parameters>
-<parameter name="mount_path">
-<parameter_description> path for a possible unix mount.
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="time_read">
-<parameter_description> guint64 to contain a timestamp.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GUnixMount. 
+<return> a #gssize of the number of bytes spliced.
 </return>
 </function>
 
-<function name="g_simple_async_result_get_op_res_gssize">
+<function name="g_output_stream_write">
 <description>
-Gets a gssize from the asynchronous result.
+Tries to write @count bytes from @buffer into the stream. Will block
+during the operation.
+
+If count is 0, returns 0 and does nothing. A value of @count
+larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
+
+On success, the number of bytes written to the stream is returned.
+It is not an error if this is not the same as the requested size, as it
+can happen e.g. on a partial I/O error, or if there is not enough
+storage in the stream. All writes block until at least one byte
+is written or an error occurs; 0 is never returned (unless
+ count is 0).
+
+If @cancellable is not NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
+operation was partially finished when the operation was cancelled the
+partial result will be returned, without an error.
+
+On error -1 is returned and @error is set accordingly.
 
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> the buffer containing the data to write. 
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> the number of bytes to write
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> a gssize returned from the asynchronous function.
+<return> Number of bytes written, or -1 on error
 </return>
 </function>
 
-<function name="g_credentials_set_unix_user">
+<function name="g_output_stream_write_all">
 <description>
-Tries to set the UNIX user identifier on @credentials. This method
-is only available on UNIX platforms.
+Tries to write @count bytes from @buffer into the stream. Will block
+during the operation.
 
-This operation can fail if #GCredentials is not supported on the
-OS or if the native credentials type does not contain information
-about the UNIX user.
+This function is similar to g_output_stream_write(), except it tries to
+write as many bytes as requested, only stopping on an error.
+
+On a successful write of @count bytes, %TRUE is returned, and @bytes_written
+is set to @count.
+
+If there is an error during the operation FALSE is returned and @error
+is set to indicate the error status, @bytes_written is updated to contain
+the number of bytes written into the stream before the error occurred.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials.
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="uid">
-<parameter_description> The UNIX user identifier to set.
+<parameter name="buffer">
+<parameter_description> the buffer containing the data to write. 
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> the number of bytes to write
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that was 
+written to the stream
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> location to store the error occuring, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @uid was set, %FALSE if error is set.
-
+<return> %TRUE on success, %FALSE if there was an error
 </return>
 </function>
 
-<function name="g_drive_stop">
+<function name="g_output_stream_write_async">
 <description>
-Asynchronously stops a drive.
+Request an asynchronous write of @count bytes from @buffer into 
+the stream. When the operation is finished @callback will be called.
+You can then call g_output_stream_write_finish() to get the result of the 
+operation.
 
-When the operation is finished, @callback will be called.
-You can then call g_drive_stop_finish() to obtain the
-result of the operation.
+During an async request no other sync and async calls are allowed, 
+and will result in %G_IO_ERROR_PENDING errors. 
 
-Since: 2.22
+A value of @count larger than %G_MAXSSIZE will cause a 
+%G_IO_ERROR_INVALID_ARGUMENT error.
+
+On success, the number of bytes written will be passed to the
+ callback  It is not an error if this is not the same as the 
+requested size, as it can happen e.g. on a partial I/O error, 
+but generally we try to write as many bytes as requested. 
+
+You are guaranteed that this method will never fail with
+%G_IO_ERROR_WOULD_BLOCK - if @stream can't accept more data, the
+method will just wait until this changes.
+
+Any outstanding I/O request with higher priority (lower numerical 
+value) will be executed before an outstanding request with lower 
+priority. Default priority is %G_PRIORITY_DEFAULT.
+
+The asyncronous methods have a default fallback that uses threads 
+to implement asynchronicity, so they are optional for inheriting 
+classes. However, if you override one you must override all.
+
+For the synchronous, blocking version of this function, see 
+g_output_stream_write().
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="stream">
+<parameter_description> A #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the unmount if required for stopping.
+<parameter name="buffer">
+<parameter_description> the buffer containing the data to write. 
 </parameter_description>
 </parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+<parameter name="count">
+<parameter_description> the number of bytes to write
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the io priority of the request.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -20091,1993 +21823,2424 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> callback to call when the request is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data to pass to @callback
+<parameter_description> the data to pass to callback function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_message_set_flags">
+<function name="g_output_stream_write_finish">
 <description>
-Sets the flags to set on @message.
+Finishes a stream write operation.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags for @message that are set (typically values from the #GDBusMessageFlags
-enumeration bitwise ORed together).
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #gssize containing the number of bytes written to the stream.
+</return>
 </function>
 
-<function name="g_file_append_to_async">
+<function name="g_permission_acquire">
 <description>
-Asynchronously opens @file for appending.
+Attempts to acquire the permission represented by @permission.
 
-For more details, see g_file_append_to() which is
-the synchronous version of this call.
+The precise method by which this happens depends on the permission
+and the underlying authentication mechanism.  A simple example is
+that a dialog may appear asking the user to enter their password.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_append_to_finish() to get the result of the operation.
+You should check with g_permission_get_can_acquire() before calling
+this function.
+
+If the permission is acquired then %TRUE is returned.  Otherwise,
+%FALSE is returned and @error is set appropriately.
+
+This call is blocking, likely for a very long time (in the case that
+user interaction is required).  See g_permission_acquire_async() for
+the non-blocking version.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+<parameter name="error">
+<parameter_description> a pointer to a %NULL #GError, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the permission was successfully acquired
+</return>
+</function>
+
+<function name="g_permission_acquire_async">
+<description>
+Attempts to acquire the permission represented by @permission.
+
+This is the first half of the asynchronous version of
+g_permission_acquire().
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter_description> the #GAsyncReadyCallback to call when done
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter_description> the user data to pass to @callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_socket_address_new_with_type">
+<function name="g_permission_acquire_finish">
 <description>
-Creates a new #GUnixSocketAddress of type @type with name @path.
-
-If @type is %G_UNIX_SOCKET_ADDRESS_PATH, this is equivalent to
-calling g_unix_socket_address_new().
-
-If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT, then @path_len
-bytes of @path will be copied to the socket's path, and only those
-bytes will be considered part of the name. (If @path_len is -1,
-then @path is assumed to be NUL-terminated.) For example, if @path
-was &quot;test&quot;, then calling g_socket_address_get_native_size() on the
-returned socket would return 7 (2 bytes of overhead, 1 byte for the
-abstract-socket indicator byte, and 4 bytes for the name &quot;test&quot;).
-
-If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED, then
- path_len bytes of @path will be copied to the socket's path, the
-rest of the path will be padded with 0 bytes, and the entire
-zero-padded buffer will be considered the name. (As above, if
- path_len is -1, then @path is assumed to be NUL-terminated.) In
-this case, g_socket_address_get_native_size() will always return
-the full size of a &lt;literal&gt;struct sockaddr_un&lt;/literal&gt;, although
-g_unix_socket_address_get_path_len() will still return just the
-length of @path.
+Collects the result of attempting to acquire the permission
+represented by @permission.
 
-%G_UNIX_SOCKET_ADDRESS_ABSTRACT is preferred over
-%G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED for new programs. Of course,
-when connecting to a server created by another process, you must
-use the appropriate type corresponding to how that process created
-its listening socket.
+This is the second half of the asynchronous version of
+g_permission_acquire().
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> the name
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
-<parameter name="path_len">
-<parameter_description> the length of @path, or -1
+<parameter name="result">
+<parameter_description> the #GAsyncResult given to the #GAsyncReadyCallback
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GUnixSocketAddressType
+<parameter name="error">
+<parameter_description> a pointer to a %NULL #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GUnixSocketAddress
-
+<return> %TRUE if the permission was successfully acquired
 </return>
 </function>
 
-<function name="g_volume_get_icon">
+<function name="g_permission_get_allowed">
 <description>
-Gets the icon for @volume.
+Gets the value of the 'allowed' property.  This property is %TRUE if
+the caller currently has permission to perform the action that
+ permission represents the permission to perform.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon.
-The returned object should be unreffed with g_object_unref()
-when no longer needed.
+<return> the value of the 'allowed' property
 </return>
 </function>
 
-<function name="g_dbus_message_get_byte_order">
+<function name="g_permission_get_can_acquire">
 <description>
-Gets the byte order of @message.
+Gets the value of the 'can-acquire' property.  This property is %TRUE
+if it is generally possible to acquire the permission by calling
+g_permission_acquire().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> The byte order.
+<return> the value of the 'can-acquire' property
 </return>
 </function>
 
-<function name="g_file_mount_mountable_finish">
+<function name="g_permission_get_can_release">
 <description>
-Finishes a mount operation. See g_file_mount_mountable() for details.
-
-Finish an asynchronous mount operation that was started 
-with g_file_mount_mountable().
+Gets the value of the 'can-release' property.  This property is %TRUE
+if it is generally possible to release the permission by calling
+g_permission_release().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile or %NULL on error.
-Free the returned object with g_object_unref().
+<return> the value of the 'can-release' property
 </return>
 </function>
 
-<function name="g_dbus_connection_emit_signal">
+<function name="g_permission_impl_update">
 <description>
-Emits a signal.
-
-If the parameters GVariant is floating, it is consumed.
+This function is called by the #GPermission implementation to update
+the properties of the permission.  You should never call this
+function except from a #GPermission implementation.
 
-This can only fail if @parameters is not compatible with the D-Bus protocol.
+GObject notify signals are generated, as appropriate.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
-<parameter name="destination_bus_name">
-<parameter_description> The unique bus name for the destination for the signal or %NULL to emit to all listeners.
+<parameter name="allowed">
+<parameter_description> the new value for the 'allowed' property
 </parameter_description>
 </parameter>
-<parameter name="object_path">
-<parameter_description> Path of remote object.
+<parameter name="can_acquire">
+<parameter_description> the new value for the 'can-acquire' property
 </parameter_description>
 </parameter>
-<parameter name="interface_name">
-<parameter_description> D-Bus interface to emit a signal on.
+<parameter name="can_release">
+<parameter_description> the new value for the 'can-release' property
 </parameter_description>
 </parameter>
-<parameter name="signal_name">
-<parameter_description> The name of the signal to emit.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_permission_release">
+<description>
+Attempts to release the permission represented by @permission.
+
+The precise method by which this happens depends on the permission
+and the underlying authentication mechanism.  In most cases the
+permission will be dropped immediately without further action.
+
+You should check with g_permission_get_can_release() before calling
+this function.
+
+If the permission is released then %TRUE is returned.  Otherwise,
+%FALSE is returned and @error is set appropriately.
+
+This call is blocking, likely for a very long time (in the case that
+user interaction is required).  See g_permission_release_async() for
+the non-blocking version.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> A #GVariant tuple with parameters for the signal or %NULL if not passing parameters.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a pointer to a %NULL #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE unless @error is set.
-
+<return> %TRUE if the permission was successfully released
 </return>
 </function>
 
-<function name="g_resolver_error_quark">
+<function name="g_permission_release_async">
 <description>
-Gets the #GResolver Error Quark.
+Attempts to release the permission represented by @permission.
 
-Since: 2.22
+This is the first half of the asynchronous version of
+g_permission_release().
+
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="permission">
+<parameter_description> a #GPermission instance
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> the #GAsyncReadyCallback to call when done
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the user data to pass to @callback
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GQuark.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_drive_poll_for_media_finish">
+<function name="g_permission_release_finish">
 <description>
-Finishes an operation started with g_drive_poll_for_media() on a drive.
+Collects the result of attempting to release the permission
+represented by @permission.
 
+This is the second half of the asynchronous version of
+g_permission_release().
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="permission">
+<parameter_description> a #GPermission instance
 </parameter_description>
 </parameter>
 <parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter_description> the #GAsyncResult given to the #GAsyncReadyCallback
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a pointer to a %NULL #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the drive has been poll_for_mediaed successfully,
-%FALSE otherwise.
+<return> %TRUE if the permission was successfully released
 </return>
 </function>
 
-<function name="g_dbus_message_set_reply_serial">
+<function name="g_poll_file_monitor_new">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL header field.
+Polls @file for changes.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="file">
+<parameter_description> a #GFile.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GFileMonitor for the given #GFile. 
+</return>
 </function>
 
-<function name="g_file_attribute_info_list_ref">
+<function name="g_pollable_input_stream_can_poll">
 <description>
-References a file attribute info list.
+Checks if @stream is actually pollable. Some classes may implement
+#GPollableInputStream but have only certain instances of that class
+be pollable. If this method returns %FALSE, then the behavior of
+other #GPollableInputStream methods is undefined.
+
+For any given stream, the value returned by this method is constant;
+a stream cannot switch from pollable to non-pollable or vice versa.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GFileAttributeInfoList to reference.
+<parameter name="stream">
+<parameter_description> a #GPollableInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileAttributeInfoList or %NULL on error.
+<return> %TRUE if @stream is pollable, %FALSE if not.
+
 </return>
 </function>
 
-<function name="g_dbus_message_set_sender">
+<function name="g_pollable_input_stream_create_source">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_SENDER header field.
+Creates a #GSource that triggers when @stream can be read, or
+ cancellable is triggered or an error occurs. The callback on the
+source is of the #GPollableSourceFunc type.
 
-Since: 2.26
+As with g_pollable_input_stream_is_readable(), it is possible that
+the stream may not actually be readable even after the source
+triggers, so you should use g_pollable_input_stream_read_nonblocking()
+rather than g_input_stream_read() from the callback.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="stream">
+<parameter_description> a #GPollableInputStream.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GSource
+
+</return>
 </function>
 
-<function name="g_file_monitor_emit_event">
+<function name="g_pollable_input_stream_is_readable">
 <description>
-Emits the #GFileMonitor::changed signal if a change
-has taken place. Should be called from file monitor 
-implementations only.
+Checks if @stream can be read.
 
-The signal will be emitted from an idle handler (in the &lt;link
-linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-context&lt;/link&gt;).
+Note that some stream types may not be able to implement this 100%
+reliably, and it is possible that a call to g_input_stream_read()
+after this returns %TRUE would still block. To guarantee
+non-blocking behavior, you should always use
+g_pollable_input_stream_read_nonblocking(), which will return a
+%G_IO_ERROR_WOULD_BLOCK error rather than blocking.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="monitor">
-<parameter_description> a #GFileMonitor.
-</parameter_description>
-</parameter>
-<parameter name="child">
-<parameter_description> a #GFile.
-</parameter_description>
-</parameter>
-<parameter name="other_file">
-<parameter_description> a #GFile.
-</parameter_description>
-</parameter>
-<parameter name="event_type">
-<parameter_description> a set of #GFileMonitorEvent flags.
+<parameter name="stream">
+<parameter_description> a #GPollableInputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @stream is readable, %FALSE if not. If an error
+has occurred on @stream, this will result in
+g_pollable_input_stream_is_readable() returning %TRUE, and the
+next attempt to read will return the error.
+
+</return>
 </function>
 
-<function name="g_dbus_proxy_call_sync">
+<function name="g_pollable_input_stream_read_nonblocking">
 <description>
-Synchronously invokes the @method_name method on @proxy.
+Attempts to read up to @size bytes from @stream into @buffer, as
+with g_input_stream_read(). If @stream is not currently readable,
+this will immediately return %G_IO_ERROR_WOULD_BLOCK, and you can
+use g_pollable_input_stream_create_source() to create a #GSource
+that will be triggered when @stream is readable.
 
-If @method_name contains any dots, then @name is split into interface and
-method name parts. This allows using @proxy for invoking methods on
-other interfaces.
+Note that since this method never blocks, you cannot actually
+use @cancellable to cancel it. However, it will return an error
+if @cancellable has already been cancelled when you call, which
+may happen if you call this method after a source triggers due
+to having been cancelled.
 
-If the #GDBusConnection associated with @proxy is disconnected then
-the operation will fail with %G_IO_ERROR_CLOSED. If
- cancellable is canceled, the operation will fail with
-%G_IO_ERROR_CANCELLED. If @parameters contains a value not
-compatible with the D-Bus protocol, the operation fails with
-%G_IO_ERROR_INVALID_ARGUMENT.
-
-If the @parameters #GVariant is floating, it is consumed. This allows
-convenient 'inline' use of g_variant_new(), e.g.:
-|[
-g_dbus_proxy_call_sync (proxy,
-&quot;TwoStrings&quot;,
-g_variant_new (&quot;(ss)&quot;,
-&quot;Thing One&quot;,
-&quot;Thing Two&quot;),
-G_DBUS_CALL_FLAGS_NONE,
--1,
-NULL,
-&amp;error);
-]|
-
-The calling thread is blocked until a reply is received. See
-g_dbus_proxy_call() for the asynchronous version of this
-method.
-
-Since: 2.26
+Virtual: read_nonblocking
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
-</parameter_description>
-</parameter>
-<parameter name="method_name">
-<parameter_description> Name of method to invoke.
-</parameter_description>
-</parameter>
-<parameter name="parameters">
-<parameter_description> A #GVariant tuple with parameters for the signal or %NULL if not passing parameters.
+<parameter name="stream">
+<parameter_description> a #GPollableInputStream
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags from the #GDBusCallFlags enumeration.
+<parameter name="buffer">
+<parameter_description> a buffer to read data into (which should be at least @size
+bytes long).
 </parameter_description>
 </parameter>
-<parameter name="timeout_msec">
-<parameter_description> The timeout in milliseconds or -1 to use the proxy default timeout.
+<parameter name="size">
+<parameter_description> the number of bytes you want to read
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if @error is set. Otherwise a #GVariant tuple with
-return values. Free with g_variant_unref().
+<return> the number of bytes read, or -1 on error (including
+%G_IO_ERROR_WOULD_BLOCK).
+</return>
+</function>
+
+<function name="g_pollable_output_stream_can_poll">
+<description>
+Checks if @stream is actually pollable. Some classes may implement
+#GPollableOutputStream but have only certain instances of that
+class be pollable. If this method returns %FALSE, then the behavior
+of other #GPollableOutputStream methods is undefined.
+
+For any given stream, the value returned by this method is constant;
+a stream cannot switch from pollable to non-pollable or vice versa.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GPollableOutputStream.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if @stream is pollable, %FALSE if not.
 
 </return>
 </function>
 
-<function name="g_volume_get_identifier">
+<function name="g_pollable_output_stream_create_source">
 <description>
-Gets the identifier of the given kind for @volume. 
-See the &lt;link linkend=&quot;volume-identifier&quot;&gt;introduction&lt;/link&gt;
-for more information about volume identifiers.
+Creates a #GSource that triggers when @stream can be written, or
+ cancellable is triggered or an error occurs. The callback on the
+source is of the #GPollableSourceFunc type.
 
+As with g_pollable_output_stream_is_writable(), it is possible that
+the stream may not actually be writable even after the source
+triggers, so you should use g_pollable_output_stream_write_nonblocking()
+rather than g_output_stream_write() from the callback.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume
+<parameter name="stream">
+<parameter_description> a #GPollableOutputStream.
 </parameter_description>
 </parameter>
-<parameter name="kind">
-<parameter_description> the kind of identifier to return
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the
-requested identfier, or %NULL if the #GVolume
-doesn't have this kind of identifier
+<return> a new #GSource
+
 </return>
 </function>
 
-<function name="g_io_stream_get_input_stream">
+<function name="g_pollable_output_stream_is_writable">
 <description>
-Gets the input stream for this object. This is used
-for reading.
+Checks if @stream can be written.
 
-Since: 2.22
+Note that some stream types may not be able to implement this 100%
+reliably, and it is possible that a call to g_output_stream_write()
+after this returns %TRUE would still block. To guarantee
+non-blocking behavior, you should always use
+g_pollable_output_stream_write_nonblocking(), which will return a
+%G_IO_ERROR_WOULD_BLOCK error rather than blocking.
+
+Since: 2.28
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GIOStream
+<parameter_description> a #GPollableOutputStream.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GInputStream, owned by the #GIOStream.
-Do not free.
+<return> %TRUE if @stream is writable, %FALSE if not. If an error
+has occurred on @stream, this will result in
+g_pollable_output_stream_is_writable() returning %TRUE, and the
+next attempt to write will return the error.
 
 </return>
 </function>
 
-<function name="g_file_info_set_is_symlink">
+<function name="g_pollable_output_stream_write_nonblocking">
 <description>
-Sets the &quot;is_symlink&quot; attribute in a #GFileInfo according to @is_symlink.
-See %G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK.
+Attempts to write up to @size bytes from @buffer to @stream, as
+with g_output_stream_write(). If @stream is not currently writable,
+this will immediately return %G_IO_ERROR_WOULD_BLOCK, and you can
+use g_pollable_output_stream_create_source() to create a #GSource
+that will be triggered when @stream is writable.
+
+Note that since this method never blocks, you cannot actually
+use @cancellable to cancel it. However, it will return an error
+if @cancellable has already been cancelled when you call, which
+may happen if you call this method after a source triggers due
+to having been cancelled.
+
+Virtual: write_nonblocking
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="stream">
+<parameter_description> a #GPollableOutputStream
 </parameter_description>
 </parameter>
-<parameter name="is_symlink">
-<parameter_description> a #gboolean.
+<parameter name="buffer">
+<parameter_description> a buffer to write
+data from
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes you want to write
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of bytes written, or -1 on error (including
+%G_IO_ERROR_WOULD_BLOCK).
+</return>
 </function>
 
-<function name="g_unix_socket_address_get_path_len">
+<function name="g_pollable_source_new">
 <description>
-Gets the length of @address's path.
+Utility method for #GPollableInputStream and #GPollableOutputStream
+implementations. Creates a new #GSource that expects a callback of
+type #GPollableSourceFunc. The new source does not actually do
+anything on its own; use g_source_add_child_source() to add other
+sources to it to cause it to trigger.
 
-For details, see g_unix_socket_address_get_path().
-
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetSocketAddress
+<parameter name="pollable_stream">
+<parameter_description> the stream associated with the new source
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of the path
+<return> the new #GSource.
 
 </return>
 </function>
 
-<function name="g_dbus_message_get_signature">
+<function name="g_proxy_address_get_destination_hostname">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE header field.
+Gets @proxy's destination hostname.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="proxy">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
+<return> the @proxy's destination hostname
 
 </return>
 </function>
 
-<function name="g_socket_listener_close">
+<function name="g_proxy_address_get_destination_port">
 <description>
-Closes all the sockets in the listener.
+Gets @proxy's destination port.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="proxy">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the @proxy's destination port
+
+</return>
 </function>
 
-<function name="g_application_get_id">
+<function name="g_proxy_address_get_password">
 <description>
-Retrieves the platform-specific identifier for the #GApplication.
+Gets @proxy's password.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="proxy">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> The platform-specific identifier. The returned string
-is owned by the #GApplication instance and it should never be
-modified or freed
+<return> the @proxy's password
 
 </return>
 </function>
 
-<function name="g_io_extension_point_get_required_type">
+<function name="g_proxy_address_get_protocol">
 <description>
-Gets the required type for @extension_point.
+Gets @proxy's protocol.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="extension_point">
-<parameter_description> a #GIOExtensionPoint
+<parameter name="proxy">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GType that all implementations must have, 
-or #G_TYPE_INVALID if the extension point has no required type
+<return> the @proxy's protocol
+
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_as_string">
+<function name="g_proxy_address_get_username">
 <description>
-Gets the value of a attribute, formated as a string.
-This escapes things as needed to make the string valid
-utf8.
+Gets @proxy's username.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="proxy">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a UTF-8 string associated with the given @attribute.
-When you're done with the string it must be freed with g_free().
+<return> the @proxy's username
+
 </return>
 </function>
 
-<function name="g_socket_client_set_protocol">
+<function name="g_proxy_address_new">
 <description>
-Sets the protocol of the socket client.
-The sockets created by this object will use of the specified
-protocol.
+Creates a new #GProxyAddress for @inetaddr with @protocol that should
+tunnel through @dest_hostname and @dest_port.
 
-If @protocol is %0 that means to use the default
-protocol for the socket family and type.
-
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="inetaddr">
+<parameter_description> The proxy server #GInetAddress.
+</parameter_description>
+</parameter>
+<parameter name="port">
+<parameter_description> The proxy server port.
 </parameter_description>
 </parameter>
 <parameter name="protocol">
-<parameter_description> a #GSocketProtocol
+<parameter_description> The proxy protocol to support, in lower case (e.g. socks, http).
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_io_modules_load_all_in_directory">
-<description>
-Loads all the modules in the specified directory.
-
-If don't require all modules to be initialized (and thus registering
-all gtypes) then you can use g_io_modules_scan_all_in_directory()
-which allows delayed/lazy loading of modules.
-
-
-</description>
-<parameters>
-<parameter name="dirname">
-<parameter_description> pathname for a directory containing modules to load.
+<parameter name="dest_hostname">
+<parameter_description> The destination hostname the the proxy should tunnel to.
+</parameter_description>
+</parameter>
+<parameter name="dest_port">
+<parameter_description> The destination port to tunnel to.
+</parameter_description>
+</parameter>
+<parameter name="username">
+<parameter_description> The username to authenticate to the proxy server
+(or %NULL).
+</parameter_description>
+</parameter>
+<parameter name="password">
+<parameter_description> The password to authenticate to the proxy server
+(or %NULL).
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of #GIOModules loaded from the directory,
-All the modules are loaded into memory, if you want to
-unload them (enabling on-demand loading) you must call
-g_type_module_unuse() on all the modules. Free the list
-with g_list_free().
+<return> a new #GProxyAddress
+
 </return>
 </function>
 
-<function name="g_dbus_connection_is_closed">
+<function name="g_proxy_connect">
 <description>
-Gets whether @connection is closed.
+Given @connection to communicate with a proxy (eg, a
+#GSocketConnection that is connected to the proxy server), this
+does the necessary handshake to connect to @proxy_address, and if
+required, wraps the #GIOStream to handle proxy payload.
 
 Since: 2.26
 
 </description>
 <parameters>
+<parameter name="proxy">
+<parameter_description> a #GProxy
+</parameter_description>
+</parameter>
 <parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter_description> a #GIOStream
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the connection is closed, %FALSE otherwise.
-
-</return>
-</function>
-
-<function name="g_file_info_set_attribute_mask">
-<description>
-Sets @mask on @info to match specific attribute types.
-
-</description>
-<parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="proxy_address">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
-<parameter name="mask">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GIOStream that will replace @connection. This might
+be the same as @connection, in which case a reference
+will be added.
+
+</return>
 </function>
 
-<function name="g_mount_unmount">
+<function name="g_proxy_connect_async">
 <description>
-Unmounts a mount. This is an asynchronous operation, and is 
-finished by calling g_mount_unmount_finish() with the @mount 
-and #GAsyncResult data returned in the @callback.
+Asynchronous version of g_proxy_connect().
 
-Deprecated: 2.22: Use g_mount_unmount_with_operation() instead.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="proxy">
+<parameter_description> a #GProxy
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
+<parameter name="connection">
+<parameter_description> a #GIOStream
+</parameter_description>
+</parameter>
+<parameter name="proxy_address">
+<parameter_description> a #GProxyAddress
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> a #GCancellable
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback, or %NULL.
+<parameter_description> a #GAsyncReadyCallback
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @callback.
+<parameter_description> callback data
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_is_member_name">
+<function name="g_proxy_connect_finish">
 <description>
-Checks if @string is a valid D-Bus member (e.g. signal or method) name.
+See g_proxy_connect().
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> The string to check.
+<parameter name="proxy">
+<parameter_description> a #GProxy
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncRetult
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if valid, %FALSE otherwise.
+<return> a #GIOStream.
 
 </return>
 </function>
 
-<function name="g_file_query_default_handler">
+<function name="g_proxy_get_default_for_protocol">
 <description>
-Returns the #GAppInfo that is registered as the default
-application to handle the file specified by @file.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Lookup &quot;gio-proxy&quot; extension point for a proxy implementation that supports
+specified protocol.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile to open.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="protocol">
+<parameter_description> the proxy protocol name (e.g. http, socks, etc)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GAppInfo if the handle was found, %NULL if there were errors.
-When you are done with it, release it with g_object_unref()
+<return> return a #GProxy or NULL if protocol
+is not supported.
+
 </return>
 </function>
 
-<function name="g_app_info_supports_files">
+<function name="g_proxy_resolver_get_default">
 <description>
-Checks if the application accepts files as arguments.
+Gets the default #GProxyResolver for the system.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the @appinfo supports files.
+<return> the default #GProxyResolver.
+
 </return>
 </function>
 
-<function name="g_unix_mount_point_is_user_mountable">
+<function name="g_proxy_resolver_is_supported">
 <description>
-Checks if a unix mount point is mountable by the user.
+Checks if @resolver can be used on this system. (This is used
+internally; g_proxy_resolver_get_default() will only return a proxy
+resolver that returns %TRUE for this method.)
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount_point">
-<parameter_description> a #GUnixMountPoint.
+<parameter name="resolver">
+<parameter_description> a #GProxyResolver
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount point is user mountable.
+<return> %TRUE if @resolver is supported.
+
 </return>
 </function>
 
-<function name="g_app_info_supports_uris">
+<function name="g_proxy_resolver_lookup">
 <description>
-Checks if the application supports reading files and directories from URIs.
+Looks into the system proxy configuration to determine what proxy,
+if any, to use to connect to @uri. The returned proxy URIs are of the
+form &lt;literal&gt;&lt;protocol&gt;://[user[:password] ]host:port&lt;/literal&gt;
+or &lt;literal&gt;direct://&lt;/literal&gt;, where &lt;protocol&gt; could be
+http, rtsp, socks or other proxying protocol.
+
+If you don't know what network protocol is being used on the
+socket, you should use &lt;literal&gt;none&lt;/literal&gt; as the URI protocol.
+In this case, the resolver might still return a generic proxy type
+(such as SOCKS), but would not return protocol-specific proxy types
+(such as http).
 
+&lt;literal&gt;direct://&lt;/literal&gt; is used when no proxy is needed.
+Direct connection should not be attempted unless it is part of the
+returned array of proxies.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="resolver">
+<parameter_description> a #GProxyResolver
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a URI representing the destination to connect to
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @appinfo supports URIs.
+<return> A
+NULL-terminated array of proxy URIs. Must be freed
+with g_strfreev().
+
 </return>
 </function>
 
-<function name="g_file_info_set_icon">
+<function name="g_proxy_resolver_lookup_async">
 <description>
-Sets the icon for a given #GFileInfo. 
-See %G_FILE_ATTRIBUTE_STANDARD_ICON.
+Asynchronous lookup of proxy. See g_proxy_resolver_lookup() for more
+details.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="resolver">
+<parameter_description> a #GProxyResolver
 </parameter_description>
 </parameter>
-<parameter name="icon">
-<parameter_description> a #GIcon.
+<parameter name="uri">
+<parameter_description> a URI representing the destination to connect to
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call after resolution completes
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data for @callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_extension_get_priority">
+<function name="g_proxy_resolver_lookup_finish">
 <description>
-Gets the priority with which @extension was registered.
+Call this function to obtain the array of proxy URIs when
+g_proxy_resolver_lookup_async() is complete. See
+g_proxy_resolver_lookup() for more details.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="extension">
-<parameter_description> a #GIOExtension
+<parameter name="resolver">
+<parameter_description> a #GProxyResolver
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> the result passed to your #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the priority of @extension
+<return> A
+NULL-terminated array of proxy URIs. Must be freed
+with g_strfreev().
+
 </return>
 </function>
 
-<function name="g_drive_can_stop">
+<function name="g_proxy_supports_hostname">
 <description>
-Checks if a drive can be stopped.
+Some proxy protocols expect to be passed a hostname, which they
+will resolve to an IP address themselves. Others, like SOCKS4, do
+not allow this. This function will return %FALSE if @proxy is
+implementing such a protocol. When %FALSE is returned, the caller
+should resolve the destination hostname first, and then pass a
+#GProxyAddress containing the stringified IP address to
+g_proxy_connect() or g_proxy_connect_async().
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive.
+<parameter name="proxy">
+<parameter_description> a #GProxy
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @drive can be stopped, %FALSE otherwise.
+<return> %TRUE if hostname resolution is supported.
 
 </return>
 </function>
 
-<function name="g_app_info_get_commandline">
+<function name="g_resolver_error_quark">
 <description>
-Gets the commandline with which the application will be
-started.  
+Gets the #GResolver Error Quark.
 
-Since: 2.20
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo
-</parameter_description>
-</parameter>
 </parameters>
-<return> a string containing the @appinfo's commandline, 
-or %NULL if this information is not available
+<return> a #GQuark.
 
 </return>
 </function>
 
-<function name="g_seekable_can_truncate">
+<function name="g_resolver_free_addresses">
 <description>
-Tests if the stream can be truncated.
+Frees @addresses (which should be the return value from
+g_resolver_lookup_by_name() or g_resolver_lookup_by_name_finish()).
+(This is a convenience method; you can also simply free the results
+by hand.)
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="seekable">
-<parameter_description> a #GSeekable.
+<parameter name="addresses">
+<parameter_description> a #GList of #GInetAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the stream can be truncated, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_new_from_fd">
+<function name="g_resolver_free_targets">
 <description>
-Creates a new #GSocket from a native file descriptor
-or winsock SOCKET handle.
-
-This reads all the settings from the file descriptor so that
-all properties should work. Note that the file descriptor
-will be set to non-blocking mode, independent on the blocking
-mode of the #GSocket.
+Frees @targets (which should be the return value from
+g_resolver_lookup_service() or g_resolver_lookup_service_finish()).
+(This is a convenience method; you can also simply free the
+results by hand.)
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="fd">
-<parameter_description> a native socket file descriptor.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="targets">
+<parameter_description> a #GList of #GSrvTarget
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocket or %NULL on error.
-Free the returned object with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_seekable_tell">
+<function name="g_resolver_get_default">
 <description>
-Tells the current position within the stream.
+Gets the default #GResolver. You should unref it when you are done
+with it. #GResolver may use its reference count as a hint about how
+many threads/processes, etc it should allocate for concurrent DNS
+resolutions.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="seekable">
-<parameter_description> a #GSeekable.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the offset from the beginning of the buffer.
+<return> the default #GResolver.
+
 </return>
 </function>
 
-<function name="g_dbus_interface_info_unref">
+<function name="g_resolver_lookup_by_address">
 <description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
-
-Since: 2.26
+Synchronously reverse-resolves @address to determine its
+associated hostname.
 
-</description>
-<parameters>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+If the DNS resolution fails, @error (if non-%NULL) will be set to
+a value from #GResolverError.
 
-<function name="g_charset_converter_get_num_fallbacks">
-<description>
-Gets the number of fallbacks that @converter has applied so far.
+If @cancellable is non-%NULL, it can be used to cancel the
+operation, in which case @error (if non-%NULL) will be set to
+%G_IO_ERROR_CANCELLED.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> a #GCharsetConverter
+<parameter name="resolver">
+<parameter_description> a #GResolver
+</parameter_description>
+</parameter>
+<parameter name="address">
+<parameter_description> the address to reverse-resolve
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of fallbacks that @converter has applied
+<return> a hostname (either ASCII-only, or in ASCII-encoded
+form), or %NULL on error.
 
 </return>
 </function>
 
-<function name="g_app_launch_context_launch_failed">
+<function name="g_resolver_lookup_by_address_async">
 <description>
-Called when an application has failed to launch, so that it can cancel
-the application startup notification started in g_app_launch_context_get_startup_notify_id().
+Begins asynchronously reverse-resolving @address to determine its
+associated hostname, and eventually calls @callback, which must
+call g_resolver_lookup_by_address_finish() to get the final result.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GAppLaunchContext.
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
-<parameter name="startup_notify_id">
-<parameter_description> the startup notification id that was returned by g_app_launch_context_get_startup_notify_id().
+<parameter name="address">
+<parameter_description> the address to reverse-resolve
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call after resolution completes
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data for @callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cancellable_get_fd">
+<function name="g_resolver_lookup_by_address_finish">
 <description>
-Gets the file descriptor for a cancellable job. This can be used to
-implement cancellable operations on Unix systems. The returned fd will
-turn readable when @cancellable is cancelled.
-
-You are not supposed to read from the fd yourself, just check for
-readable status. Reading to unset the readable status is done
-with g_cancellable_reset().
-
-After a successful return from this function, you should use 
-g_cancellable_release_fd() to free up resources allocated for 
-the returned file descriptor.
+Retrieves the result of a previous call to
+g_resolver_lookup_by_address_async().
 
-See also g_cancellable_make_pollfd().
+If the DNS resolution failed, @error (if non-%NULL) will be set to
+a value from #GResolverError. If the operation was cancelled,
+ error will be set to %G_IO_ERROR_CANCELLED.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable.
+<parameter name="resolver">
+<parameter_description> a #GResolver
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> the result passed to your #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A valid file descriptor. %-1 if the file descriptor 
-is not supported, or on errors. 
+<return> a hostname (either ASCII-only, or in ASCII-encoded
+form), or %NULL on error.
+
 </return>
 </function>
 
-<function name="g_cancellable_connect">
+<function name="g_resolver_lookup_by_name">
 <description>
-Convenience function to connect to the #GCancellable::cancelled
-signal. Also handles the race condition that may happen
-if the cancellable is cancelled right before connecting.
+Synchronously resolves @hostname to determine its associated IP
+address(es). @hostname may be an ASCII-only or UTF-8 hostname, or
+the textual form of an IP address (in which case this just becomes
+a wrapper around g_inet_address_new_from_string()).
 
- callback is called at most once, either directly at the
-time of the connect if @cancellable is already cancelled,
-or when @cancellable is cancelled in some thread.
+On success, g_resolver_lookup_by_name() will return a #GList of
+#GInetAddress, sorted in order of preference. (That is, you should
+attempt to connect to the first address first, then the second if
+the first fails, etc.)
 
- data_destroy_func will be called when the handler is
-disconnected, or immediately if the cancellable is already
-cancelled.
+If the DNS resolution fails, @error (if non-%NULL) will be set to a
+value from #GResolverError.
 
-See #GCancellable::cancelled for details on how to use this.
+If @cancellable is non-%NULL, it can be used to cancel the
+operation, in which case @error (if non-%NULL) will be set to
+%G_IO_ERROR_CANCELLED.
+
+If you are planning to connect to a socket on the resolved IP
+address, it may be easier to create a #GNetworkAddress and use its
+#GSocketConnectable interface.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable.
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> The #GCallback to connect.
+<parameter name="hostname">
+<parameter_description> the hostname to look up
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> Data to pass to @callback.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="data_destroy_func">
-<parameter_description> Free function for @data or %NULL.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The id of the signal handler or 0 if @cancellable has already
-been cancelled.
+<return> a #GList
+of #GInetAddress, or %NULL on error. You
+must unref each of the addresses and free the list when you are
+done with it. (You can use g_resolver_free_addresses() to do this.)
 
 </return>
 </function>
 
-<function name="g_emblem_new">
+<function name="g_resolver_lookup_by_name_async">
 <description>
-Creates a new emblem for @icon.
+Begins asynchronously resolving @hostname to determine its
+associated IP address(es), and eventually calls @callback, which
+must call g_resolver_lookup_by_name_finish() to get the result.
+See g_resolver_lookup_by_name() for more details.
 
-Since: 2.18
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a GIcon containing the icon.
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new #GEmblem.
-
-</return>
-</function>
-
-<function name="g_socket_get_blocking">
-<description>
-Gets the blocking mode of the socket. For details on blocking I/O,
-see g_socket_set_blocking().
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="hostname">
+<parameter_description> the hostname to look up the address of
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call after resolution completes
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data for @callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if blocking I/O is used, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_output_stream_flush_finish">
+<function name="g_resolver_lookup_by_name_finish">
 <description>
-Finishes flushing an output stream.
+Retrieves the result of a call to
+g_resolver_lookup_by_name_async().
+
+If the DNS resolution failed, @error (if non-%NULL) will be set to
+a value from #GResolverError. If the operation was cancelled,
+ error will be set to %G_IO_ERROR_CANCELLED.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
 <parameter name="result">
-<parameter_description> a GAsyncResult.
+<parameter_description> the result passed to your #GAsyncReadyCallback
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if flush operation suceeded, %FALSE otherwise.
+<return> a #GList
+of #GInetAddress, or %NULL on error. See g_resolver_lookup_by_name()
+for more details.
+
 </return>
 </function>
 
-<function name="g_dbus_interface_info_lookup_property">
+<function name="g_resolver_lookup_service">
 <description>
-Looks up information about a property.
+Synchronously performs a DNS SRV lookup for the given @service and
+ protocol in the given @domain and returns an array of #GSrvTarget.
+ domain may be an ASCII-only or UTF-8 hostname. Note also that the
+ service and @protocol arguments &lt;emphasis&gt;do not&lt;/emphasis&gt;
+include the leading underscore that appears in the actual DNS
+entry.
 
-This cost of this function is O(n) in number of properties.
+On success, g_resolver_lookup_service() will return a #GList of
+#GSrvTarget, sorted in order of preference. (That is, you should
+attempt to connect to the first target first, then the second if
+the first fails, etc.)
 
-Since: 2.26
+If the DNS resolution fails, @error (if non-%NULL) will be set to
+a value from #GResolverError.
+
+If @cancellable is non-%NULL, it can be used to cancel the
+operation, in which case @error (if non-%NULL) will be set to
+%G_IO_ERROR_CANCELLED.
+
+If you are planning to connect to the service, it is usually easier
+to create a #GNetworkService and use its #GSocketConnectable
+interface.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo.
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> A D-Bus property name (typically in CamelCase).
+<parameter name="service">
+<parameter_description> the service type to look up (eg, &quot;ldap&quot;)
+</parameter_description>
+</parameter>
+<parameter name="protocol">
+<parameter_description> the networking protocol to use for @service (eg, &quot;tcp&quot;)
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> the DNS domain to look up the service in
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusPropertyInfo or %NULL if not found. Do not free, it is owned by @info.
+<return> a #GList of #GSrvTarget,
+or %NULL on error. You must free each of the targets and the list when you are
+done with it. (You can use g_resolver_free_targets() to do this.)
 
 </return>
 </function>
 
-<function name="g_network_address_new">
+<function name="g_resolver_lookup_service_async">
 <description>
-Creates a new #GSocketConnectable for connecting to the given
- hostname and @port.
+Begins asynchronously performing a DNS SRV lookup for the given
+ service and @protocol in the given @domain, and eventually calls
+ callback, which must call g_resolver_lookup_service_finish() to
+get the final result. See g_resolver_lookup_service() for more
+details.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="hostname">
-<parameter_description> the hostname
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
-<parameter name="port">
-<parameter_description> the port
+<parameter name="service">
+<parameter_description> the service type to look up (eg, &quot;ldap&quot;)
 </parameter_description>
 </parameter>
-</parameters>
-<return> the new #GNetworkAddress
-
-</return>
-</function>
-
-<function name="g_app_launch_context_new">
-<description>
-Creates a new application launch context. This is not normally used,
-instead you instantiate a subclass of this, such as #GdkAppLaunchContext.
-
-
-</description>
-<parameters>
-</parameters>
-<return> a #GAppLaunchContext.
-</return>
-</function>
-
-<function name="g_simple_async_result_set_op_res_gpointer">
-<description>
-Sets the operation result within the asynchronous result to a pointer.
-
-</description>
-<parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="protocol">
+<parameter_description> the networking protocol to use for @service (eg, &quot;tcp&quot;)
 </parameter_description>
 </parameter>
-<parameter name="op_res">
-<parameter_description> a pointer result from an asynchronous function.
+<parameter name="domain">
+<parameter_description> the DNS domain to look up the service in
 </parameter_description>
 </parameter>
-<parameter name="destroy_op_res">
-<parameter_description> a #GDestroyNotify function.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call after resolution completes
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data for @callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_message_set_member">
+<function name="g_resolver_lookup_service_finish">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_MEMBER header field.
+Retrieves the result of a previous call to
+g_resolver_lookup_service_async().
 
-Since: 2.26
+If the DNS resolution failed, @error (if non-%NULL) will be set to
+a value from #GResolverError. If the operation was cancelled,
+ error will be set to %G_IO_ERROR_CANCELLED.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="resolver">
+<parameter_description> a #GResolver
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="result">
+<parameter_description> the result passed to your #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GList of #GSrvTarget,
+or %NULL on error. See g_resolver_lookup_service() for more details.
+
+</return>
 </function>
 
-<function name="g_buffered_input_stream_set_buffer_size">
+<function name="g_resolver_set_default">
 <description>
-Sets the size of the internal buffer of @stream to @size, or to the
-size of the contents of the buffer. The buffer can never be resized
-smaller than its current contents.
+Sets @resolver to be the application's default resolver (reffing
+ resolver, and unreffing the previous default resolver, if any).
+Future calls to g_resolver_get_default() will return this resolver.
+
+This can be used if an application wants to perform any sort of DNS
+caching or &quot;pinning&quot;; it can implement its own #GResolver that
+calls the original default resolver for DNS operations, and
+implements its own cache policies on top of that, and then set
+itself as the default resolver for all later code to use.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedInputStream
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> a #gsize
+<parameter name="resolver">
+<parameter_description> the new default #GResolver
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_has_uri_scheme">
+<function name="g_seekable_can_seek">
 <description>
-Checks to see if a #GFile has a given URI scheme.
-
-This call does no blocking i/o.
+Tests if the stream supports the #GSeekableIface.
 
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="uri_scheme">
-<parameter_description> a string containing a URI scheme.
+<parameter name="seekable">
+<parameter_description> a #GSeekable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if #GFile's backend supports the
-given URI scheme, %FALSE if URI scheme is %NULL,
-not supported, or #GFile is invalid.
+<return> %TRUE if @seekable can be seeked. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_unix_mount_get_device_path">
+<function name="g_seekable_can_truncate">
 <description>
-Gets the device path for a unix mount.
+Tests if the stream can be truncated.
 
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMount.
+<parameter name="seekable">
+<parameter_description> a #GSeekable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the device path.
+<return> %TRUE if the stream can be truncated, %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_app_info_get_display_name">
+<function name="g_seekable_seek">
 <description>
-Gets the display name of the application. The display name is often more
-descriptive to the user than the name itself.
+Seeks in the stream by the given @offset, modified by @type.
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="seekable">
+<parameter_description> a #GSeekable.
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> a #goffset.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a #GSeekType.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the display name of the application for @appinfo, or the name if
-no display name is available.
-
+<return> %TRUE if successful. If an error
+has occurred, this function will return %FALSE and set @error
+appropriately if present.
 </return>
 </function>
 
-<function name="g_file_info_set_is_hidden">
+<function name="g_seekable_tell">
 <description>
-Sets the &quot;is_hidden&quot; attribute in a #GFileInfo according to @is_symlink.
-See %G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN.
+Tells the current position within the stream.
+
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
-</parameter_description>
-</parameter>
-<parameter name="is_hidden">
-<parameter_description> a #gboolean.
+<parameter name="seekable">
+<parameter_description> a #GSeekable.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the offset from the beginning of the buffer.
+</return>
 </function>
 
-<function name="g_input_stream_read">
+<function name="g_seekable_truncate">
 <description>
-Tries to read @count bytes from the stream into the buffer starting at
- buffer  Will block during this read.
-
-If count is zero returns zero and does nothing. A value of @count
-larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
-
-On success, the number of bytes read into the buffer is returned.
-It is not an error if this is not the same as the requested size, as it
-can happen e.g. near the end of a file. Zero is returned on end of file
-(or if @count is zero),  but never otherwise.
+Truncates a stream with a given #offset. 
 
-If @cancellable is not NULL, then the operation can be cancelled by
+If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error G_IO_ERROR_CANCELLED will be returned. If an
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
 operation was partially finished when the operation was cancelled the
 partial result will be returned, without an error.
 
-On error -1 is returned and @error is set accordingly.
-
+Virtual: truncate_fn
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GInputStream.
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> a buffer to read data into (which should be at least count bytes long).
+<parameter name="seekable">
+<parameter_description> a #GSeekable.
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> the number of bytes that will be read from the stream
+<parameter name="offset">
+<parameter_description> a #goffset.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> optional #GCancellable object, %NULL to ignore. 
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> a #GError location to store the error occuring, or %NULL to 
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes read, or -1 on error
+<return> %TRUE if successful. If an error
+has occurred, this function will return %FALSE and set @error
+appropriately if present. 
 </return>
 </function>
 
-<function name="g_themed_icon_prepend_name">
+<function name="g_settings_apply">
 <description>
-Prepend a name to the list of icons from within @icon.
-
-&lt;note&gt;&lt;para&gt;
-Note that doing so invalidates the hash computed by prior calls
-to g_icon_hash().
-&lt;/para&gt;&lt;/note&gt;
-
-Since: 2.18
+Applies any changes that have been made to the settings.  This
+function does nothing unless @settings is in 'delay-apply' mode;
+see g_settings_delay().  In the normal case settings are always
+applied immediately.
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GThemedIcon
-</parameter_description>
-</parameter>
-<parameter name="iconname">
-<parameter_description> name of icon to prepend to list of icons from within @icon.
+<parameter name="settings">
+<parameter_description> a #GSettings instance
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_themed_icon_new_from_names">
+<function name="g_settings_backend_changed">
 <description>
-Creates a new themed icon for @iconnames.
+Signals that a single key has possibly changed.  Backend
+implementations should call this if a key has possibly changed its
+value.
 
+ key must be a valid key (ie starting with a slash, not containing
+'//', and not ending with a slash).
+
+The implementation must call this function during any call to
+g_settings_backend_write(), before the call returns (except in the
+case that no keys are actually changed and it cares to detect this
+fact).  It may not rely on the existence of a mainloop for
+dispatching the signal later.
+
+The implementation may call this function at any other time it likes
+in response to other events (such as changes occuring outside of the
+program).  These calls may originate from a mainloop or may originate
+in response to any other action (including from calls to
+g_settings_backend_write()).
+
+In the case that this call is in response to a call to
+g_settings_backend_write() then @origin_tag must be set to the same
+value that was passed to that call.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="iconnames">
-<parameter_description> an array of strings containing icon names.
+<parameter name="backend">
+<parameter_description> a #GSettingsBackend implementation
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the length of the @iconnames array, or -1 if @iconnames is 
-%NULL-terminated
+<parameter name="key">
+<parameter_description> the name of the key
+</parameter_description>
+</parameter>
+<parameter name="origin_tag">
+<parameter_description> the origin tag
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GThemedIcon
-</return>
+<return></return>
 </function>
 
-<function name="g_buffered_input_stream_new_sized">
+<function name="g_settings_backend_changed_tree">
 <description>
-Creates a new #GBufferedInputStream from the given @base_stream,
-with a buffer set to @size.
+This call is a convenience wrapper.  It gets the list of changes from
+ tree, computes the longest common prefix and calls
+g_settings_backend_changed().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GInputStream
+<parameter name="backend">
+<parameter_description> a #GSettingsBackend implementation
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> a #gsize
+<parameter name="tree">
+<parameter_description> a #GTree containing the changes
+</parameter_description>
+</parameter>
+<parameter name="origin_tag">
+<parameter_description> the origin tag
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GInputStream.
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_listener_set_backlog">
+<function name="g_settings_backend_flatten_tree">
 <description>
-Sets the listen backlog on the sockets in the listener.
+Calculate the longest common prefix of all keys in a tree and write
+out an array of the key names relative to that prefix and,
+optionally, the value to store at each of those keys.
 
-See g_socket_set_listen_backlog() for details
+You must free the value returned in @path, @keys and @values using
+g_free().  You should not attempt to free or unref the contents of
+ keys or @values.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="tree">
+<parameter_description> a #GTree containing the changes
 </parameter_description>
 </parameter>
-<parameter name="listen_backlog">
-<parameter_description> an integer
+<parameter name="path">
+<parameter_description> the location to save the path
+</parameter_description>
+</parameter>
+<parameter name="keys">
+<parameter_description> the
+location to save the relative keys
+</parameter_description>
+</parameter>
+<parameter name="values">
+<parameter_description>
+the location to save the values, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_buffered_input_stream_fill_finish">
+<function name="g_settings_backend_get_default">
 <description>
-Finishes an asynchronous read.
+Returns the default #GSettingsBackend. It is possible to override
+the default by setting the &lt;envar&gt;GSETTINGS_BACKEND&lt;/envar&gt;
+environment variable to the name of a settings backend.
+
+The user gets a reference to the backend.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedInputStream
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #gssize of the read stream, or %-1 on an error.
+<return> the default #GSettingsBackend
 </return>
 </function>
 
-<function name="g_file_mount_enclosing_volume">
+<function name="g_settings_backend_keys_changed">
 <description>
-Starts a @mount_operation, mounting the volume that contains the file @location. 
+Signals that a list of keys have possibly changed.  Backend
+implementations should call this if keys have possibly changed their
+values.
 
-When this operation has completed, @callback will be called with
- user_user data, and the operation can be finalized with 
-g_file_mount_enclosing_volume_finish().
+ path must be a valid path (ie starting and ending with a slash and
+not containing '//').  Each string in @items must form a valid key
+name when @path is prefixed to it (ie: each item must not start or
+end with '/' and must not contain '//').
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+The meaning of this signal is that any of the key names resulting
+from the contatenation of @path with each item in @items may have
+changed.
+
+The same rules for when notifications must occur apply as per
+g_settings_backend_changed().  These two calls can be used
+interchangeably if exactly one item has changed (although in that
+case g_settings_backend_changed() is definitely preferred).
+
+For efficiency reasons, the implementation should strive for @path to
+be as long as possible (ie: the longest common prefix of all of the
+keys that were changed) but this is not strictly required.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="location">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
-</parameter_description>
-</parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
+<parameter name="backend">
+<parameter_description> a #GSettingsBackend implementation
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="path">
+<parameter_description> the path containing the changes
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter name="items">
+<parameter_description> the %NULL-terminated list of changed keys
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="origin_tag">
+<parameter_description> the origin tag
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_server_get_flags">
+<function name="g_settings_backend_path_changed">
 <description>
-Gets the flags for @server.
+Signals that all keys below a given path may have possibly changed.
+Backend implementations should call this if an entire path of keys
+have possibly changed their values.
+
+ path must be a valid path (ie starting and ending with a slash and
+not containing '//').
+
+The meaning of this signal is that any of the key which has a name
+starting with @path may have changed.
+
+The same rules for when notifications must occur apply as per
+g_settings_backend_changed().  This call might be an appropriate
+reasponse to a 'reset' call but implementations are also free to
+explicitly list the keys that were affected by that call if they can
+easily do so.
+
+For efficiency reasons, the implementation should strive for @path to
+be as long as possible (ie: the longest common prefix of all of the
+keys that were changed) but this is not strictly required.  As an
+example, if this function is called with the path of &quot;/&quot; then every
+single key in the application will be notified of a possible change.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="server">
-<parameter_description> A #GDBusServer.
+<parameter name="backend">
+<parameter_description> a #GSettingsBackend implementation
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> the path containing the changes
+</parameter_description>
+</parameter>
+<parameter name="origin_tag">
+<parameter_description> the origin tag
 </parameter_description>
 </parameter>
 </parameters>
-<return> A set of flags from the #GDBusServerFlags enumeration.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_mount_can_eject">
+<function name="g_settings_backend_path_writable_changed">
 <description>
-Checks if @mount can be eject.
+Signals that the writability of all keys below a given path may have
+changed.
 
+Since GSettings performs no locking operations for itself, this call
+will always be made in response to external events.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="backend">
+<parameter_description> a #GSettingsBackend implementation
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> the name of the path
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @mount can be ejected.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_get_uri_scheme">
+<function name="g_settings_backend_writable_changed">
 <description>
-Gets the URI scheme for a #GFile.
-RFC 3986 decodes the scheme as:
-&lt;programlisting&gt;
-URI = scheme &quot;:&quot; hier-part [ &quot;?&quot; query ] [ &quot;#&quot; fragment ] 
-&lt;/programlisting&gt;
-Common schemes include &quot;file&quot;, &quot;http&quot;, &quot;ftp&quot;, etc. 
+Signals that the writability of a single key has possibly changed.
 
-This call does no blocking i/o.
+Since GSettings performs no locking operations for itself, this call
+will always be made in response to external events.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="backend">
+<parameter_description> a #GSettingsBackend implementation
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the name of the key
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the URI scheme for the given 
-#GFile. The returned string should be freed with g_free() 
-when no longer needed.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_enumerate_children">
+<function name="g_settings_bind">
 <description>
-Gets the requested information about the files in a directory. The result
-is a #GFileEnumerator object that will give out #GFileInfo objects for
-all the files in the directory.
+Create a binding between the @key in the @settings object
+and the property @property of @object.
 
-The @attributes value is a string that specifies the file attributes that
-should be gathered. It is not an error if it's not possible to read a particular
-requested attribute from a file - it just won't be set. @attributes should
-be a comma-separated list of attributes or attribute wildcards. The wildcard &quot;*&quot;
-means all attributes, and a wildcard like &quot;standard::*&quot; means all attributes in the standard
-namespace. An example attribute query be &quot;standard::*,owner::user&quot;.
-The standard attributes are available as defines, like #G_FILE_ATTRIBUTE_STANDARD_NAME.
+The binding uses the default GIO mapping functions to map
+between the settings and property values. These functions
+handle booleans, numeric types and string types in a
+straightforward way. Use g_settings_bind_with_mapping() if
+you need a custom mapping, or map between types that are not
+supported by the default mapping functions.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Unless the @flags include %G_SETTINGS_BIND_NO_SENSITIVITY, this
+function also establishes a binding between the writability of
+ key and the &quot;sensitive&quot; property of @object (if @object has
+a boolean property by that name). See g_settings_bind_writable()
+for more details about writable bindings.
 
-If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
-If the file is not a directory, the G_FILE_ERROR_NOTDIR error will be returned.
-Other errors are possible too.
+Note that the lifecycle of the binding is tied to the object,
+and that you can have only one binding per object property.
+If you bind the same property twice on the same object, the second
+binding overrides the first one.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description> an attribute query string.
+<parameter name="key">
+<parameter_description> the key to bind
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileQueryInfoFlags.
+<parameter name="object">
+<parameter_description> a #GObject
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="property">
+<parameter_description> the name of the property to bind
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="flags">
+<parameter_description> flags for the binding
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GFileEnumerator if successful, %NULL on error. 
-Free the returned object with g_object_unref().
-</return>
+<return></return>
 </function>
 
-<function name="gvdb_table_get_table">
+<function name="g_settings_bind_with_mapping">
 <description>
-Looks up the hash table named @key in @file.
+Create a binding between the @key in the @settings object
+and the property @property of @object.
 
-The toplevel hash table in a #GvdbTable can contain reference to
-child hash tables (and those can contain further references...).
+The binding uses the provided mapping functions to map between
+settings and property values.
 
-If @key is not found in @file then %NULL is returned.  Otherwise, a
-new #GvdbTable is returned, referring to the child hashtable as
-contained in the file.  This newly-created #GvdbTable does not depend
-on the continued existence of @file.
+Note that the lifecycle of the binding is tied to the object,
+and that you can have only one binding per object property.
+If you bind the same property twice on the same object, the second
+binding overrides the first one.
 
-You should call gvdb_table_unref() on the return result when you no
-longer require it.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GvdbTable
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
 <parameter name="key">
-<parameter_description> a string
+<parameter_description> the key to bind
+</parameter_description>
+</parameter>
+<parameter name="object">
+<parameter_description> a #GObject
+</parameter_description>
+</parameter>
+<parameter name="property">
+<parameter_description> the name of the property to bind
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags for the binding
+</parameter_description>
+</parameter>
+<parameter name="get_mapping">
+<parameter_description> a function that gets called to convert values
+from @settings to @object, or %NULL to use the default GIO mapping
+</parameter_description>
+</parameter>
+<parameter name="set_mapping">
+<parameter_description> a function that gets called to convert values
+from @object to @settings, or %NULL to use the default GIO mapping
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data that gets passed to @get_mapping and @set_mapping
+</parameter_description>
+</parameter>
+<parameter name="destroy">
+<parameter_description> #GDestroyNotify function for @user_data
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GvdbTable, or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="g_app_info_reset_type_associations">
+<function name="g_settings_bind_writable">
 <description>
-Removes all changes to the type associations done by
-g_app_info_set_as_default_for_type(), 
-g_app_info_set_as_default_for_extension(), 
-g_app_info_add_supports_type() or g_app_info_remove_supports_type().
+Create a binding between the writability of @key in the
+ settings object and the property @property of @object.
+The property must be boolean; &quot;sensitive&quot; or &quot;visible&quot;
+properties of widgets are the most likely candidates.
 
-Since: 2.20
+Writable bindings are always uni-directional; changes of the
+writability of the setting will be propagated to the object
+property, not the other way.
+
+When the @inverted argument is %TRUE, the binding inverts the
+value as it passes from the setting to the object, i.e. @property
+will be set to %TRUE if the key is &lt;emphasis&gt;not&lt;/emphasis&gt;
+writable.
+
+Note that the lifecycle of the binding is tied to the object,
+and that you can have only one binding per object property.
+If you bind the same property twice on the same object, the second
+binding overrides the first one.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="content_type">
-<parameter_description> a content type 
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the key to bind
+</parameter_description>
+</parameter>
+<parameter name="object">
+<parameter_description>a #GObject
+</parameter_description>
+</parameter>
+<parameter name="property">
+<parameter_description> the name of a boolean property to bind
+</parameter_description>
+</parameter>
+<parameter name="inverted">
+<parameter_description> whether to 'invert' the value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_proxy_get_name">
+<function name="g_settings_delay">
 <description>
-Gets the name that @proxy was constructed for.
+Changes the #GSettings object into 'delay-apply' mode. In this
+mode, changes to @settings are not immediately propagated to the
+backend, but kept locally until g_settings_apply() is called.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string owned by @proxy. Do not free.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_get_name">
+<function name="g_settings_get">
 <description>
-Gets the name for a file.
+Gets the value that is stored at @key in @settings.
+
+A convenience function that combines g_settings_get_value() with
+g_variant_get().
 
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or for the #GVariantType of @format to mismatch
+the type given in the schema.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the key to get the value for
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a #GVariant format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments as per @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the file name.
-</return>
+<return></return>
 </function>
 
-<function name="g_data_input_stream_read_int64">
+<function name="g_settings_get_boolean">
 <description>
-Reads a 64-bit/8-byte value from @stream.
+Gets the value that is stored at @key in @settings.
 
-In order to get the correct byte order for this read operation, 
-see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
+A convenience variant of g_settings_get() for booleans.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+It is a programmer error to give a @key that isn't specified as
+having a boolean type in the schema for @settings.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a signed 64-bit/8-byte value read from @stream or %0 if 
-an error occurred.  
+<return> a boolean
 </return>
 </function>
 
-<function name="g_mount_get_default_location">
+<function name="g_settings_get_child">
 <description>
-Gets the default location of @mount. The default location of the given
- mount is a path that reflects the main entry point for the user (e.g.
-the home directory, or the root of the volume).
+Creates a 'child' settings object which has a base path of
+&lt;replaceable&gt;base-path&lt;/replaceable&gt;/@name, where
+&lt;replaceable&gt;base-path&lt;/replaceable&gt; is the base path of @settings.
 
+The schema for the child settings object must have been declared
+in the schema of @settings using a &lt;tag class=&quot;starttag&quot;&gt;child&lt;/tag&gt; element.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of the 'child' schema
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile.
-The returned object should be unreffed with
-g_object_unref() when no longer needed.
+<return> a 'child' settings object
 </return>
 </function>
 
-<function name="g_simple_async_result_get_op_res_gpointer">
+<function name="g_settings_get_double">
 <description>
-Gets a pointer result as returned by the asynchronous function.
+Gets the value that is stored at @key in @settings.
+
+A convenience variant of g_settings_get() for doubles.
 
+It is a programmer error to give a @key that isn't specified as
+having a 'double' type in the schema for @settings.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer from the result.
+<return> a double
 </return>
 </function>
 
-<function name="g_data_output_stream_put_byte">
+<function name="g_settings_get_enum">
 <description>
-Puts a byte into the output stream.
+Gets the value that is stored in @settings for @key and converts it
+to the enum value that it represents.
+
+In order to use this function the type of the value must be a string
+and it must be marked in the schema file as an enumerated type.
+
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or is not marked as an enumerated type.
 
+If the value stored in the configuration database is not a valid
+value for the enumerated type then this function will return the
+default value.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a #guchar.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
+<return> the enum value
 </return>
 </function>
 
-<function name="g_unix_mount_monitor_set_rate_limit">
+<function name="g_settings_get_flags">
 <description>
-Sets the rate limit to which the @mount_monitor will report
-consecutive change events to the mount and mount point entry files.
+Gets the value that is stored in @settings for @key and converts it
+to the flags value that it represents.
 
-Since: 2.18
+In order to use this function the type of the value must be an array
+of strings and it must be marked in the schema file as an flags type.
+
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or is not marked as a flags type.
+
+If the value stored in the configuration database is not a valid
+value for the flags type then this function will return the default
+value.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount_monitor">
-<parameter_description> a #GUnixMountMonitor
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="limit_msec">
-<parameter_description> a integer with the limit in milliseconds to
-poll for changes.
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the flags value
+</return>
 </function>
 
-<function name="g_io_extension_get_name">
+<function name="g_settings_get_has_unapplied">
 <description>
-Gets the name under which @extension was registered.
-
-Note that the same type may be registered as extension
-for multiple extension points, under different names.
+Returns whether the #GSettings object has any unapplied
+changes.  This can only be the case if it is in 'delayed-apply' mode.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="extension">
-<parameter_description> a #GIOExtension
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of @extension.
+<return> %TRUE if @settings has unapplied changes
 </return>
 </function>
 
-<function name="g_socket_get_remote_address">
+<function name="g_settings_get_int">
 <description>
-Try to get the remove address of a connected socket. This is only
-useful for connection oriented sockets that have been connected.
+Gets the value that is stored at @key in @settings.
 
-Since: 2.22
+A convenience variant of g_settings_get() for 32-bit integers.
+
+It is a programmer error to give a @key that isn't specified as
+having a int32 type in the schema for @settings.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress or %NULL on error.
-Free the returned object with g_object_unref().
-
+<return> an integer
 </return>
 </function>
 
-<function name="g_io_scheduler_job_send_to_mainloop">
+<function name="g_settings_get_mapped">
 <description>
-Used from an I/O job to send a callback to be run in the thread
-that the job was started from, waiting for the result (and thus
-blocking the I/O job).
+Gets the value that is stored at @key in @settings, subject to
+application-level validation/mapping.
+
+You should use this function when the application needs to perform
+some processing on the value of the key (for example, parsing).  The
+ mapping function performs that processing.  If the function
+indicates that the processing was unsuccessful (due to a parse error,
+for example) then the mapping is tried again with another value.
 
+This allows a robust 'fall back to defaults' behaviour to be
+implemented somewhat automatically.
+
+The first value that is tried is the user's setting for the key.  If
+the mapping function fails to map this value, other values may be
+tried in an unspecified order (system or site defaults, translated
+schema default values, untranslated schema default values, etc).
+
+If the mapping function fails for all possible values, one additional
+attempt is made: the mapping function is called with a %NULL value.
+If the mapping function still indicates failure at this point then
+the application will be aborted.
+
+The result parameter for the @mapping function is pointed to a
+#gpointer which is initially set to %NULL.  The same pointer is given
+to each invocation of @mapping.  The final value of that #gpointer is
+what is returned by this function.  %NULL is valid; it is returned
+just as any other value would be.
 
 </description>
 <parameters>
-<parameter name="job">
-<parameter_description> a #GIOSchedulerJob
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> a #GSourceFunc callback that will be called in the original thread
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @func
+<parameter name="mapping">
+<parameter_description> the function to map the value in the
+settings database to the value used by the application
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> a #GDestroyNotify for @user_data, or %NULL
+<parameter name="user_data">
+<parameter_description> user data for @mapping
 </parameter_description>
 </parameter>
 </parameters>
-<return> The return value of @func
+<return> the result, which may be %NULL
 </return>
 </function>
 
-<function name="g_unix_mount_get_fs_type">
+<function name="g_settings_get_range">
 <description>
-Gets the filesystem type for the unix mount.
+Queries the range of a key.
 
+This function will return a #GVariant that fully describes the range
+of values that are valid for @key.
 
-</description>
-<parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMount.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a string containing the file system type.
-</return>
-</function>
+The type of #GVariant returned is &lt;literal&gt;(sv)&lt;/literal&gt;.  The
+string describes the type of range restriction in effect.  The type
+and meaning of the value contained in the variant depends on the
+string.
 
-<function name="g_dbus_message_new_method_reply">
-<description>
-Creates a new #GDBusMessage that is a reply to @method_call_message.
+If the string is &lt;literal&gt;'type'&lt;/literal&gt; then the variant contains
+an empty array.  The element type of that empty array is the expected
+type of value and all values of that type are valid.
 
-Since: 2.26
+If the string is &lt;literal&gt;'enum'&lt;/literal&gt; then the variant contains
+an array enumerating the possible values.  Each item in the array is
+a possible valid value and no other values are valid.
+
+If the string is &lt;literal&gt;'flags'&lt;/literal&gt; then the variant contains
+an array.  Each item in the array is a value that may appear zero or
+one times in an array to be used as the value for this key.  For
+example, if the variant contained the array &lt;literal&gt;['x',
+'y']&lt;/literal&gt; then the valid values for the key would be
+&lt;literal&gt;[]&lt;/literal&gt;, &lt;literal&gt;['x']&lt;/literal&gt;,
+&lt;literal&gt;['y']&lt;/literal&gt;, &lt;literal&gt;['x', 'y']&lt;/literal&gt; and
+&lt;literal&gt;['y', 'x']&lt;/literal&gt;.
+
+Finally, if the string is &lt;literal&gt;'range'&lt;/literal&gt; then the variant
+contains a pair of like-typed values -- the minimum and maximum
+permissible values for this key.
+
+This information should not be used by normal programs.  It is
+considered to be a hint for introspection purposes.  Normal programs
+should already know what is permitted by their own schema.  The
+format may change in any way in the future -- but particularly, new
+forms may be added to the possibilities described above.
+
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings.
+
+You should free the returned value with g_variant_unref() when it is
+no longer needed.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="method_call_message">
-<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
-create a reply message to.
+<parameter name="settings">
+<parameter_description> a #GSettings
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the key to query the range of
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
-
+<return> a #GVariant describing the range
 </return>
 </function>
 
-<function name="g_settings_get_flags">
+<function name="g_settings_get_string">
 <description>
-Gets the value that is stored in @settings for @key and converts it
-to the flags value that it represents.
-
-In order to use this function the type of the value must be an array
-of strings and it must be marked in the schema file as an flags type.
+Gets the value that is stored at @key in @settings.
 
-It is a programmer error to give a @key that isn't contained in the
-schema for @settings or is not marked as a flags type.
+A convenience variant of g_settings_get() for strings.
 
-If the value stored in the configuration database is not a valid
-value for the flags type then this function will return the default
-value.
+It is a programmer error to give a @key that isn't specified as
+having a string type in the schema for @settings.
 
 Since: 2.26
 
@@ -22092,585 +24255,629 @@ Since: 2.26
 </parameter_description>
 </parameter>
 </parameters>
-<return> the flags value
+<return> a newly-allocated string
 </return>
 </function>
 
-<function name="g_application_register">
+<function name="g_settings_get_strv">
 <description>
-By default, #GApplication ensures process uniqueness when
-initialized, but this behavior is controlled by the
-GApplication:register property.  If it was given as %FALSE at
-construction time, this function allows you to later attempt
-to ensure uniqueness.  Note that the GApplication:default-quit
-property no longer applies at this point; if this function returns
-%FALSE, platform activation will occur, but the current process
-will not be terminated.
+A convenience variant of g_settings_get() for string arrays.
 
-It is an error to call this function more than once.  It is
-also an error to call this function if the GApplication:register
-property was %TRUE at construction time.
+It is a programmer error to give a @key that isn't specified as
+having an array of strings type in the schema for @settings.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if registration was successful
+<return> a
+newly-allocated, %NULL-terminated array of strings, the value that
+is stored at @key in @settings.
 </return>
 </function>
 
-<function name="g_data_input_stream_read_uint32">
+<function name="g_settings_get_value">
 <description>
-Reads an unsigned 32-bit/4-byte value from @stream.
-
-In order to get the correct byte order for this read operation, 
-see g_data_input_stream_get_byte_order() and g_data_input_stream_set_byte_order().
+Gets the value that is stored in @settings for @key.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a given #GDataInputStream.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting.
+<parameter name="key">
+<parameter_description> the key to get the value for
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unsigned 32-bit/4-byte value read from the @stream or %0 if 
-an error occurred. 
+<return> a new #GVariant
 </return>
 </function>
 
-<function name="gvdb_table_unref">
+<function name="g_settings_is_writable">
 <description>
-Decreases the reference count on @file, possibly freeing it.
+Finds out if a key can be written or not
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GvdbTable
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of a key
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the key @name is writable
+</return>
 </function>
 
-<function name="g_emblemed_icon_get_icon">
+<function name="g_settings_list_children">
 <description>
-Gets the main icon for @emblemed.
+Gets the list of children on @settings.
 
-Since: 2.18
+The list is exactly the list of strings for which it is not an error
+to call g_settings_get_child().
+
+For GSettings objects that are lists, this value can change at any
+time and you should connect to the &quot;children-changed&quot; signal to watch
+for those changes.  Note that there is a race condition here: you may
+request a child after listing it only for it to have been destroyed
+in the meantime.  For this reason, g_settings_get_child() may return
+%NULL even for a child that was listed by this function.
+
+For GSettings objects that are not lists, you should probably not be
+calling this function from &quot;normal&quot; code (since you should already
+know what children are in your schema).  This function may still be
+useful there for introspection reasons, however.
+
+You should free the return value with g_strfreev() when you are done
+with it.
 
 </description>
 <parameters>
-<parameter name="emblemed">
-<parameter_description> a #GEmblemedIcon
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIcon that is owned by @emblemed
-
+<return> a list of the children on @settings
 </return>
 </function>
 
-<function name="g_socket_client_get_family">
+<function name="g_settings_list_keys">
 <description>
-Gets the socket family of the socket client.
+Introspects the list of keys on @settings.
 
-See g_socket_client_set_family() for details.
+You should probably not be calling this function from &quot;normal&quot; code
+(since you should already know what keys are in your schema).  This
+function is intended for introspection reasons.
 
-Since: 2.22
+You should free the return value with g_strfreev() when you are done
+with it.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GSocketClient.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketFamily
-
+<return> a list of the keys on @settings
 </return>
 </function>
 
-<function name="g_volume_get_uuid">
+<function name="g_settings_list_relocatable_schemas">
 <description>
-Gets the UUID for the @volume. The reference is typically based on
-the file system UUID for the volume in question and should be
-considered an opaque string. Returns %NULL if there is no UUID
-available.
+Gets a list of the relocatable #GSettings schemas installed on the
+system.  These are schemas that do not provide their own path.  It is
+usual to instantiate these schemas directly, but if you want to you
+can use g_settings_new_with_path() to specify the path.
+
+The output of this function, tTaken together with the output of
+g_settings_list_schemas() represents the complete list of all
+installed schemas.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the UUID for @volume or %NULL if no UUID can be computed.
-The returned string should be freed with g_free() 
-when no longer needed.
+<return> a list of relocatable
+#GSettings schemas that are available.  The list must not be
+modified or freed.
+
 </return>
 </function>
 
-<function name="g_simple_async_result_new">
+<function name="g_settings_list_schemas">
 <description>
-Creates a #GSimpleAsyncResult.
+Gets a list of the #GSettings schemas installed on the system.  The
+returned list is exactly the list of schemas for which you may call
+g_settings_new() without adverse effects.
 
+This function does not list the schemas that do not provide their own
+paths (ie: schemas for which you must use
+g_settings_new_with_path()).  See
+g_settings_list_relocatable_schemas() for that.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="source_object">
-<parameter_description> a #GObject the asynchronous function was called with,
-or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback.
-</parameter_description>
-</parameter>
-<parameter name="source_tag">
-<parameter_description> the asynchronous function.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GSimpleAsyncResult.
+<return>  a list of #GSettings
+schemas that are available.  The list must not be modified or
+freed.
+
 </return>
 </function>
 
-<function name="g_dbus_is_address">
+<function name="g_settings_new">
 <description>
-Checks if @string is a D-Bus address.
+Creates a new #GSettings object with a given schema.
 
-This doesn't check if @string is actually supported by #GDBusServer
-or #GDBusConnection - use g_dbus_is_supported_address() to do more
-checks.
+Signals on the newly created #GSettings object will be dispatched
+via the thread-default #GMainContext in effect at the time of the
+call to g_settings_new().  The new #GSettings will hold a reference
+on the context.  See g_main_context_push_thread_default().
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> A string.
+<parameter name="schema">
+<parameter_description> the name of the schema
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string is a valid D-Bus address, %FALSE otherwise.
-
+<return> a new #GSettings object
 </return>
 </function>
 
-<function name="g_dbus_method_info_unref">
+<function name="g_settings_new_with_backend">
 <description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
+Creates a new #GSettings object with a given schema and backend.
+
+Creating settings objects with an different backend allows accessing settings
+from a database other than the usual one.  For example, it may make
+sense to pass a backend corresponding to the &quot;defaults&quot; settings database on
+the system to get a settings object that modifies the system default
+settings instead of the settings for this user.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusMethodInfo.
+<parameter name="schema">
+<parameter_description> the name of the schema
+</parameter_description>
+</parameter>
+<parameter name="backend">
+<parameter_description> the #GSettingsBackend to use
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GSettings object
+</return>
 </function>
 
-<function name="g_file_find_enclosing_mount_async">
+<function name="g_settings_new_with_backend_and_path">
 <description>
-Asynchronously gets the mount for the file.
+Creates a new #GSettings object with a given schema, backend and
+path.
 
-For more details, see g_file_find_enclosing_mount() which is
-the synchronous version of this call.
+This is a mix of g_settings_new_with_backend() and
+g_settings_new_with_path().
 
-When the operation is finished, @callback will be called. You can then call
-g_file_find_enclosing_mount_finish() to get the result of the operation.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="schema">
+<parameter_description> the name of the schema
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="backend">
+<parameter_description> the #GSettingsBackend to use
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="path">
+<parameter_description> the path to use
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GSettings object
+</return>
 </function>
 
-<function name="g_file_copy_finish">
+<function name="g_settings_new_with_path">
 <description>
-Finishes copying the file started with 
-g_file_copy_async().
+Creates a new #GSettings object with a given schema and path.
 
+You only need to do this if you want to directly create a settings
+object with a schema that doesn't have a specified path of its own.
+That's quite rare.
+
+It is a programmer error to call this function for a schema that
+has an explicitly specified path.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter name="schema">
+<parameter_description> the name of the schema
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="path">
+<parameter_description> the path to use
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %TRUE on success, %FALSE on error.
+<return> a new #GSettings object
 </return>
 </function>
 
-<function name="g_settings_bind_writable">
+<function name="g_settings_range_check">
 <description>
-Create a binding between the writability of @key in the
- settings object and the property @property of @object.
-The property must be boolean; &quot;sensitive&quot; or &quot;visible&quot;
-properties of widgets are the most likely candidates.
-
-Writable bindings are always uni-directional; changes of the
-writability of the setting will be propagated to the object
-property, not the other way.
+Checks if the given @value is of the correct type and within the
+permitted range for @key.
 
-When the @inverted argument is %TRUE, the binding inverts the
-value as it passes from the setting to the object, i.e. @property
-will be set to %TRUE if the key is &lt;emphasis&gt;not&lt;/emphasis&gt;
-writable.
+This API is not intended to be used by normal programs -- they should
+already know what is permitted by their own schemas.  This API is
+meant to be used by programs such as editors or commandline tools.
 
-Note that the lifecycle of the binding is tied to the object,
-and that you can have only one binding per object property.
-If you bind the same property twice on the same object, the second
-binding overrides the first one.
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
 <parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter_description> a #GSettings
 </parameter_description>
 </parameter>
 <parameter name="key">
-<parameter_description> the key to bind
+<parameter_description> the key to check
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property">
-<parameter_description> the name of a boolean property to bind
-</parameter_description>
-</parameter>
-<parameter name="inverted">
-<parameter_description> whether to 'invert' the value
+<parameter name="value">
+<parameter_description> the value to check
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @value is valid for @key
+</return>
 </function>
 
-<function name="g_charset_converter_set_use_fallback">
+<function name="g_settings_reset">
 <description>
-Sets the #GCharsetConverter:use-fallback property.
+Resets @key to its default value.
 
-Since: 2.24
+This call resets the key, as much as possible, to its default value.
+That might the value specified in the schema or the one set by the
+administrator.
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> a #GCharsetConverter
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="use_fallback">
-<parameter_description> %TRUE to use fallbacks
+<parameter name="key">
+<parameter_description> the name of a key
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_proxy_get_interface_name">
+<function name="g_settings_revert">
 <description>
-Gets the D-Bus interface name @proxy is for.
+Reverts all non-applied changes to the settings.  This function
+does nothing unless @settings is in 'delay-apply' mode; see
+g_settings_delay().  In the normal case settings are always applied
+immediately.
 
-Since: 2.26
+Change notifications will be emitted for affected keys.
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="settings">
+<parameter_description> a #GSettings instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string owned by @proxy. Do not free.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_open_readwrite_async">
+<function name="g_settings_set">
 <description>
-Asynchronously opens @file for reading and writing.
+Sets @key in @settings to @value.
 
-For more details, see g_file_open_readwrite() which is
-the synchronous version of this call.
+A convenience function that combines g_settings_set_value() with
+g_variant_new().
 
-When the operation is finished, @callback will be called. You can then call
-g_file_open_readwrite_finish() to get the result of the operation.
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or for the #GVariantType of @format to mismatch
+the type given in the schema.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the request.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="key">
+<parameter_description> the name of the key to set
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="format">
+<parameter_description> a #GVariant format string
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="Varargs">
+<parameter_description> arguments as per @format
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if setting the key succeeded,
+%FALSE if the key was not writable
+</return>
 </function>
 
-<function name="g_win32_input_stream_set_close_handle">
+<function name="g_settings_set_boolean">
 <description>
-Sets whether the handle of @stream shall be closed
-when the stream is closed.
+Sets @key in @settings to @value.
+
+A convenience variant of g_settings_set() for booleans.
+
+It is a programmer error to give a @key that isn't specified as
+having a boolean type in the schema for @settings.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GWin32InputStream
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="close_handle">
-<parameter_description> %TRUE to close the handle when done
+<parameter name="key">
+<parameter_description> the name of the key to set
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> the value to set it to
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if setting the key succeeded,
+%FALSE if the key was not writable
+</return>
 </function>
 
-<function name="g_themed_icon_new_with_default_fallbacks">
+<function name="g_settings_set_double">
 <description>
-Creates a new themed icon for @iconname, and all the names
-that can be created by shortening @iconname at '-' characters.
+Sets @key in @settings to @value.
 
-In the following example, @icon1 and @icon2 are equivalent:
-|[
-const char *names[] = { 
-&quot;gnome-dev-cdrom-audio&quot;,
-&quot;gnome-dev-cdrom&quot;,
-&quot;gnome-dev&quot;,
-&quot;gnome&quot;
-};
+A convenience variant of g_settings_set() for doubles.
 
-icon1 = g_themed_icon_new_from_names (names, 4);
-icon2 = g_themed_icon_new_with_default_fallbacks (&quot;gnome-dev-cdrom-audio&quot;);
-]|
+It is a programmer error to give a @key that isn't specified as
+having a 'double' type in the schema for @settings.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="iconname">
-<parameter_description> a string containing an icon name
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the name of the key to set
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> the value to set it to
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GThemedIcon.
+<return> %TRUE if setting the key succeeded,
+%FALSE if the key was not writable
 </return>
 </function>
 
-<function name="g_mount_get_name">
+<function name="g_settings_set_enum">
 <description>
-Gets the name of @mount.
+Looks up the enumerated type nick for @value and writes it to @key,
+within @settings.
 
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or is not marked as an enumerated type, or for
+ value not to be a valid value for the named type.
+
+After performing the write, accessing @key directly with
+g_settings_get_string() will return the 'nick' associated with
+ value 
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a key, within @settings
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> an enumerated value
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name for the given @mount. 
-The returned string should be freed with g_free()
-when no longer needed.
+<return> %TRUE, if the set succeeds
 </return>
 </function>
 
-<function name="g_file_info_set_attribute_boolean">
+<function name="g_settings_set_flags">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Looks up the flags type nicks for the bits specified by @value, puts
+them in an array of strings and writes the array to @key, withing
+ settings 
+
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or is not marked as a flags type, or for @value
+to contain any bits that are not value for the named type.
+
+After performing the write, accessing @key directly with
+g_settings_get_strv() will return an array of 'nicks'; one for each
+bit in @value.
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="key">
+<parameter_description> a key, within @settings
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> a boolean value.
+<parameter name="value">
+<parameter_description> a flags value
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE, if the set succeeds
+</return>
 </function>
 
-<function name="g_dbus_message_set_num_unix_fds">
+<function name="g_settings_set_int">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS header field.
+Sets @key in @settings to @value.
+
+A convenience variant of g_settings_set() for 32-bit integers.
+
+It is a programmer error to give a @key that isn't specified as
+having a int32 type in the schema for @settings.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="settings">
+<parameter_description> a #GSettings object
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the name of the key to set
 </parameter_description>
 </parameter>
 <parameter name="value">
-<parameter_description> The value to set.
+<parameter_description> the value to set it to
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if setting the key succeeded,
+%FALSE if the key was not writable
+</return>
 </function>
 
-<function name="g_file_info_set_name">
+<function name="g_settings_set_string">
 <description>
-Sets the name attribute for the current #GFileInfo. 
-See %G_FILE_ATTRIBUTE_STANDARD_NAME.
+Sets @key in @settings to @value.
+
+A convenience variant of g_settings_set() for strings.
+
+It is a programmer error to give a @key that isn't specified as
+having a string type in the schema for @settings.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> a string containing a name.
+<parameter name="key">
+<parameter_description> the name of the key to set
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_app_info_should_show">
-<description>
-Checks if the application info should be shown in menus that 
-list available applications.
-
-
-</description>
-<parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="value">
+<parameter_description> the value to set it to
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @appinfo should be shown, %FALSE otherwise.
+<return> %TRUE if setting the key succeeded,
+%FALSE if the key was not writable
 </return>
 </function>
 
-<function name="g_mount_eject_with_operation_finish">
+<function name="g_settings_set_strv">
 <description>
-Finishes ejecting a mount. If any errors occurred during the operation,
- error will be set to contain the errors and %FALSE will be returned.
+Sets @key in @settings to @value.
 
-Since: 2.22
+A convenience variant of g_settings_set() for string arrays.  If
+ value is %NULL, then @key is set to be the empty array.
+
+It is a programmer error to give a @key that isn't specified as
+having an array of strings type in the schema for @settings.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="settings">
+<parameter_description> a #GSettings object
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="key">
+<parameter_description> the name of the key to set
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter name="value">
+<parameter_description> the value to set it to, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount was successfully ejected. %FALSE otherwise.
-
+<return> %TRUE if setting the key succeeded,
+%FALSE if the key was not writable
 </return>
 </function>
 
-<function name="g_settings_set_boolean">
+<function name="g_settings_set_value">
 <description>
 Sets @key in @settings to @value.
 
-A convenience variant of g_settings_set() for booleans.
+It is a programmer error to give a @key that isn't contained in the
+schema for @settings or for @value to have the incorrect type, per
+the schema.
 
-It is a programmer error to give a @key that isn't specified as
-having a boolean type in the schema for @settings.
+If @value is floating then this function consumes the reference.
 
 Since: 2.26
 
@@ -22685,7 +24892,7 @@ Since: 2.26
 </parameter_description>
 </parameter>
 <parameter name="value">
-<parameter_description> the value to set it to
+<parameter_description> a #GVariant of the correct type
 </parameter_description>
 </parameter>
 </parameters>
@@ -22694,965 +24901,920 @@ Since: 2.26
 </return>
 </function>
 
-<function name="g_application_get_action_enabled">
+<function name="g_settings_sync">
 <description>
-Retrieves whether the action @name is enabled or not.
+Ensures that all pending operations for the given are complete for
+the default backend.
+
+Writes made to a #GSettings are handled asynchronously.  For this
+reason, it is very unlikely that the changes have it to disk by the
+time g_settings_set() returns.
+
+This call will block until all of the writes have made it to the
+backend.  Since the mainloop is not running, no change notifications
+will be dispatched during this call (but some may be queued by the
+time the call is done).
 
-See g_application_set_action_enabled().
+</description>
+<parameters>
+</parameters>
+<return></return>
+</function>
 
-It is an error to call this function if @application is a proxy for
-a remote application.
+<function name="g_settings_unbind">
+<description>
+Removes an existing binding for @property on @object.
+
+Note that bindings are automatically removed when the
+object is finalized, so it is rarely necessary to call this
+function.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
+<parameter name="object">
+<parameter_description> the object
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the action
+<parameter name="property">
+<parameter_description> the property whose binding is removed
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the action was enabled, and %FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_is_guid">
+<function name="g_simple_action_group_insert">
 <description>
-Checks if @string is a D-Bus GUID.
+Adds an action to the action group.
 
-See the D-Bus specification regarding what strings are valid D-Bus
-GUID (for example, D-Bus GUIDs are not RFC-4122 compliant).
+If the action group already contains an action with the same name as
+ action then the old action is dropped from the group.
 
-Since: 2.26
+The action group takes its own reference on @action.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> The string to check.
+<parameter name="simple">
+<parameter_description> a #GSimpleActionGroup
+</parameter_description>
+</parameter>
+<parameter name="action">
+<parameter_description> a #GAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string is a guid, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_attribute_matcher_matches">
+<function name="g_simple_action_group_lookup">
 <description>
-Checks if an attribute will be matched by an attribute matcher. If 
-the matcher was created with the &quot;*&quot; matching string, this function
-will always return %TRUE.
+Looks up the action with the name @action_name in the group.
+
+If no such action exists, returns %NULL.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="matcher">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="simple">
+<parameter_description> a #GSimpleActionGroup
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="action_name">
+<parameter_description> the name of an action
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @attribute matches @matcher. %FALSE otherwise.
+<return> a #GAction, or %NULL
+
 </return>
 </function>
 
-<function name="g_app_info_get_all">
+<function name="g_simple_action_group_new">
 <description>
-Gets a list of all of the applications currently registered 
-on this system.
-
-For desktop files, this includes applications that have 
-&lt;literal&gt;NoDisplay=true&lt;/literal&gt; set or are excluded from 
-display by means of &lt;literal&gt;OnlyShowIn&lt;/literal&gt; or
-&lt;literal&gt;NotShowIn&lt;/literal&gt;. See g_app_info_should_show().
-The returned list does not include applications which have
-the &lt;literal&gt;Hidden&lt;/literal&gt; key set. 
+Creates a new, empty, #GSimpleActionGroup.
 
+Since: 2.28
 
 </description>
 <parameters>
 </parameters>
-<return> a newly allocated #GList of references to #GAppInfo&lt;!----&gt;s.
+<return> a new #GSimpleActionGroup
+
 </return>
 </function>
 
-<function name="g_socket_send">
+<function name="g_simple_action_group_remove">
 <description>
-Tries to send @size bytes from @buffer on the socket. This is
-mainly used by connection-oriented sockets; it is identical to
-g_socket_send_to() with @address set to %NULL.
-
-If the socket is in blocking mode the call will block until there is
-space for the data in the socket queue. If there is no space available
-and the socket is in non-blocking mode a %G_IO_ERROR_WOULD_BLOCK error
-will be returned. To be notified when space is available, wait for the
-%G_IO_OUT condition. Note though that you may still receive
-%G_IO_ERROR_WOULD_BLOCK from g_socket_send() even if you were previously
-notified of a %G_IO_OUT condition. (On Windows in particular, this is
-very common due to the way the underlying APIs work.)
+Removes the named action from the action group.
 
-On error -1 is returned and @error is set accordingly.
+If no action of this name is in the group then nothing happens.
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> the buffer containing the data to send.
+<parameter name="simple">
+<parameter_description> a #GSimpleActionGroup
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the number of bytes to send
+<parameter name="action_name">
+<parameter_description> the name of the action
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+</parameters>
+<return></return>
+</function>
+
+<function name="g_simple_action_new">
+<description>
+Creates a new action.
+
+The created action is stateless.  See g_simple_action_new_stateful().
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="name">
+<parameter_description> the name of the action
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="parameter_type">
+<parameter_description> the type of parameter to the activate function
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes written (which may be less than @size), or -1
-on error
+<return> a new #GSimpleAction
 
 </return>
 </function>
 
-<function name="g_file_get_basename">
+<function name="g_simple_action_new_stateful">
 <description>
-Gets the base name (the last component of the path) for a given #GFile.
-
-If called for the top level of a system (such as the filesystem root
-or a uri like sftp://host/) it will return a single directory separator
-(and on Windows, possibly a drive letter).
+Creates a new stateful action.
 
-The base name is a byte string (*not* UTF-8). It has no defined encoding
-or rules other than it may not contain zero bytes.  If you want to use
-filenames in a user interface you should use the display name that you
-can get by requesting the %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME
-attribute with g_file_query_info().
+ state is the initial state of the action.  All future state values
+must have the same #GVariantType as the initial state.
 
-This call does no blocking i/o.
+If the @state GVariant is floating, it is consumed.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="name">
+<parameter_description> the name of the action
+</parameter_description>
+</parameter>
+<parameter name="parameter_type">
+<parameter_description> the type of the parameter to the activate function
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> the initial state of the action
 </parameter_description>
 </parameter>
 </parameters>
-<return> string containing the #GFile's base name, or %NULL 
-if given #GFile is invalid. The returned string should be 
-freed with g_free() when no longer needed.
+<return> a new #GSimpleAction
+
 </return>
 </function>
 
-<function name="g_dbus_server_get_guid">
+<function name="g_simple_action_set_enabled">
 <description>
-Gets the GUID for @server.
+Sets the action as enabled or not.
 
-Since: 2.26
+An action must be enabled in order to be activated or in order to
+have its state changed from outside callers.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="server">
-<parameter_description> A #GDBusServer.
+<parameter name="simple">
+<parameter_description> a #GSimpleAction
+</parameter_description>
+</parameter>
+<parameter name="enabled">
+<parameter_description> whether the action is enabled
 </parameter_description>
 </parameter>
 </parameters>
-<return> A D-Bus GUID. Do not free this string, it is owned by @server.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_desktop_app_info_lookup_get_default_for_uri_scheme">
+<function name="g_simple_async_report_error_in_idle">
 <description>
-Gets the default application for launching applications 
-using this URI scheme for a particular GDesktopAppInfoLookup
-implementation.
-
-The GDesktopAppInfoLookup interface and this function is used
-to implement g_app_info_get_default_for_uri_scheme() backends
-in a GIO module. There is no reason for applications to use it
-directly. Applications should use g_app_info_get_default_for_uri_scheme().
-
+Reports an error in an asynchronous function in an idle function by
+directly setting the contents of the #GAsyncResult with the given error
+information.
 
 </description>
 <parameters>
-<parameter name="lookup">
-<parameter_description> a #GDesktopAppInfoLookup
+<parameter name="object">
+<parameter_description> a #GObject, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="uri_scheme">
-<parameter_description> a string containing a URI scheme.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> a #GQuark containing the error domain (usually #G_IO_ERROR).
+</parameter_description>
+</parameter>
+<parameter name="code">
+<parameter_description> a specific error code.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a formatted error reporting string.
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a list of variables to fill in @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GAppInfo for given @uri_scheme or %NULL on error.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_set_attribute_int32">
+<function name="g_simple_async_report_gerror_in_idle">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+Reports an error in an idle function. Similar to
+g_simple_async_report_error_in_idle(), but takes a #GError rather
+than building a new one.
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="object">
+<parameter_description> a #GObject, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback.
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> a signed 32-bit integer
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> the #GError to report
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_open_readwrite_finish">
+<function name="g_simple_async_report_take_gerror_in_idle">
 <description>
-Finishes an asynchronous file read operation started with
-g_file_open_readwrite_async().
+Reports an error in an idle function. Similar to
+g_simple_async_report_gerror_in_idle(), but takes over the caller's
+ownership of @error, so the caller does not have to free it any more.
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="object">
+<parameter_description> a #GObject, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> the #GError to report
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileIOStream or %NULL on error.
-Free the returned object with g_object_unref().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_buffered_output_stream_get_auto_grow">
+<function name="g_simple_async_result_complete">
 <description>
-Checks if the buffer automatically grows as data is added.
+Completes an asynchronous I/O job immediately. Must be called in
+the thread where the asynchronous result was to be delivered, as it
+invokes the callback directly. If you are in a different thread use
+g_simple_async_result_complete_in_idle().
 
+Calling this function takes a reference to @simple for as long as
+is needed to complete the call.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedOutputStream.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @stream's buffer automatically grows,
-%FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_cancellable_cancel">
+<function name="g_simple_async_result_complete_in_idle">
 <description>
-Will set @cancellable to cancelled, and will emit the
-#GCancellable::cancelled signal. (However, see the warning about
-race conditions in the documentation for that signal if you are
-planning to connect to it.)
-
-This function is thread-safe. In other words, you can safely call
-it from a thread other than the one running the operation that was
-passed the @cancellable.
+Completes an asynchronous function in an idle handler in the &lt;link
+linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
+loop&lt;/link&gt; of the thread that @simple was initially created in.
 
-The convention within gio is that cancelling an asynchronous
-operation causes it to complete asynchronously. That is, if you
-cancel the operation from the same thread in which it is running,
-then the operation's #GAsyncReadyCallback will not be invoked until
-the application returns to the main loop.
+Calling this function takes a reference to @simple for as long as
+is needed to complete the call.
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable object.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_socket_new">
+<function name="g_simple_async_result_get_op_res_gboolean">
 <description>
-Creates a new #GSocket with the defined family, type and protocol.
-If @protocol is 0 (%G_SOCKET_PROTOCOL_DEFAULT) the default protocol type
-for the family and type is used.
-
-The @protocol is a family and type specific int that specifies what
-kind of protocol to use. #GSocketProtocol lists several common ones.
-Many families only support one protocol, and use 0 for this, others
-support several and using 0 means to use the default protocol for
-the family and type.
-
-The protocol id is passed directly to the operating
-system, so you can use protocols not listed in #GSocketProtocol if you
-know the protocol number used for it.
+Gets the operation result boolean from within the asynchronous result.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="family">
-<parameter_description> the socket family to use, e.g. %G_SOCKET_FAMILY_IPV4.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the socket type to use.
-</parameter_description>
-</parameter>
-<parameter name="protocol">
-<parameter_description> the id of the protocol to use, or 0 for default.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocket or %NULL on error.
-Free the returned object with g_object_unref().
-
+<return> %TRUE if the operation's result was %TRUE, %FALSE
+if the operation's result was %FALSE.
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_get_sender">
+<function name="g_simple_async_result_get_op_res_gpointer">
 <description>
-Gets the bus name that invoked the method.
+Gets a pointer result as returned by the asynchronous function.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string. Do not free, it is owned by @invocation.
-
+<return> a pointer from the result.
 </return>
 </function>
 
-<function name="g_dbus_arg_info_ref">
+<function name="g_simple_async_result_get_op_res_gssize">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Gets a gssize from the asynchronous result.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusArgInfo
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
-
+<return> a gssize returned from the asynchronous function.
 </return>
 </function>
 
-<function name="g_volume_monitor_get_mount_for_uuid">
+<function name="g_simple_async_result_get_source_tag">
 <description>
-Finds a #GMount object by its UUID (see g_mount_get_uuid())
+Gets the source tag for the #GSimpleAsyncResult.
 
 
 </description>
 <parameters>
-<parameter name="volume_monitor">
-<parameter_description> a #GVolumeMonitor.
-</parameter_description>
-</parameter>
-<parameter name="uuid">
-<parameter_description> the UUID to look for
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GMount or %NULL if no such mount is available.
-Free the returned object with g_object_unref().
+<return> a #gpointer to the source object for the #GSimpleAsyncResult.
 </return>
 </function>
 
-<function name="g_unix_fd_message_append_fd">
+<function name="g_simple_async_result_is_valid">
 <description>
-Adds a file descriptor to @message.
-
-The file descriptor is duplicated using dup(). You keep your copy
-of the descriptor and the copy contained in @message will be closed
-when @message is finalized.
+Ensures that the data passed to the _finish function of an async
+operation is consistent.  Three checks are performed.
 
-A possible cause of failure is exceeding the per-process or
-system-wide file descriptor limit.
+First, @result is checked to ensure that it is really a
+#GSimpleAsyncResult.  Second, @source is checked to ensure that it
+matches the source object of @result.  Third, @source_tag is
+checked to ensure that it is either %NULL (as it is when the result was
+created by g_simple_async_report_error_in_idle() or
+g_simple_async_report_gerror_in_idle()) or equal to the
+ source_tag argument given to g_simple_async_result_new() (which, by
+convention, is a pointer to the _async function corresponding to the
+_finish function from which this function is called).
 
-Since: 2.22
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> a #GUnixFDMessage
+<parameter name="result">
+<parameter_description> the #GAsyncResult passed to the _finish function.
 </parameter_description>
 </parameter>
-<parameter name="fd">
-<parameter_description> a valid open file descriptor
+<parameter name="source">
+<parameter_description> the #GObject passed to the _finish function.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError pointer
+<parameter name="source_tag">
+<parameter_description> the asynchronous function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE in case of success, else %FALSE (and @error is set)
+<return> #TRUE if all checks passed or #FALSE if any failed.
 
 </return>
 </function>
 
-<function name="g_credentials_is_same_user">
+<function name="g_simple_async_result_new">
 <description>
-Checks if @credentials and @other_credentials is the same user.
-
-This operation can fail if #GCredentials is not supported on the
-the OS.
+Creates a #GSimpleAsyncResult.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="credentials">
-<parameter_description> A #GCredentials.
+<parameter name="source_object">
+<parameter_description> a #GObject, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="other_credentials">
-<parameter_description> A #GCredentials.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
+</parameter_description>
+</parameter>
+<parameter name="source_tag">
+<parameter_description> the asynchronous function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @credentials and @other_credentials has the same
-user, %FALSE otherwise or if @error is set.
-
+<return> a #GSimpleAsyncResult.
 </return>
 </function>
 
-<function name="g_volume_get_drive">
+<function name="g_simple_async_result_new_error">
 <description>
-Gets the drive for the @volume.
+Creates a new #GSimpleAsyncResult with a set error.
 
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="source_object">
+<parameter_description> a #GObject, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> a #GQuark.
+</parameter_description>
+</parameter>
+<parameter name="code">
+<parameter_description> an error code.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a string with format characters.
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a list of values to insert into @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GDrive or %NULL if @volume is not associated with a drive.
-The returned object should be unreffed with g_object_unref()
-when no longer needed.
+<return> a #GSimpleAsyncResult.
 </return>
 </function>
 
-<function name="g_dbus_connection_get_capabilities">
+<function name="g_simple_async_result_new_from_error">
 <description>
-Gets the capabilities negotiated with the remote peer
+Creates a #GSimpleAsyncResult from an error condition.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="source_object">
+<parameter_description> a #GObject, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> Zero or more flags from the #GDBusCapabilityFlags enumeration.
-
+<return> a #GSimpleAsyncResult.
 </return>
 </function>
 
-<function name="g_dbus_server_is_active">
+<function name="g_simple_async_result_new_take_error">
 <description>
-Gets whether @server is active.
+Creates a #GSimpleAsyncResult from an error condition, and takes over the
+caller's ownership of @error, so the caller does not need to free it anymore.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="server">
-<parameter_description> A #GDBusServer.
+<parameter name="source_object">
+<parameter_description> a #GObject, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if server is active, %FALSE otherwise.
+<return> a #GSimpleAsyncResult
 
 </return>
 </function>
 
-<function name="g_converter_input_stream_get_converter">
+<function name="g_simple_async_result_propagate_error">
 <description>
-Gets the #GConverter that is used by @converter_stream.
+Propagates an error from within the simple asynchronous result to
+a given destination.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="converter_stream">
-<parameter_description> a #GConverterInputStream
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="dest">
+<parameter_description> a location to propagate the error to.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the converter of the converter input stream
-
+<return> %TRUE if the error was propagated to @dest. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_file_io_stream_get_etag">
+<function name="g_simple_async_result_run_in_thread">
 <description>
-Gets the entity tag for the file when it has been written.
-This must be called after the stream has been written
-and closed, as the etag can change while writing.
+Runs the asynchronous job in a separate thread and then calls
+g_simple_async_result_complete_in_idle() on @simple to return
+the result to the appropriate main loop.
 
-Since: 2.22
+Calling this function takes a reference to @simple for as long as
+is needed to run the job and report its completion.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileIOStream.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GSimpleAsyncThreadFunc.
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the io priority of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the entity tag for the stream.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_connection_send_message">
+<function name="g_simple_async_result_set_error">
 <description>
-Asynchronously sends @message to the peer represented by @connection.
-
-Unless @flags contain the
-%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag, the serial number
-will be assigned by @connection and set on @message via
-g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
-serial number used will be written to this location prior to
-submitting the message to the underlying transport.
-
-If @connection is closed then the operation will fail with
-%G_IO_ERROR_CLOSED. If @message is not well-formed,
-the operation fails with %G_IO_ERROR_INVALID_ARGUMENT.
-
-See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
-linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
-low-level API to send and receive UNIX file descriptors.
-
-Since: 2.26
+Sets an error within the asynchronous result without a #GError.
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="message">
-<parameter_description> A #GDBusMessage
+<parameter name="domain">
+<parameter_description> a #GQuark (usually #G_IO_ERROR).
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags affecting how the message is sent.
+<parameter name="code">
+<parameter_description> an error code.
 </parameter_description>
 </parameter>
-<parameter name="out_serial">
-<parameter_description> Return location for serial number assigned to @message when sending it or %NULL.
+<parameter name="format">
+<parameter_description> a formatted error reporting string.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="Varargs">
+<parameter_description> a list of variables to fill in @format.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the message was well-formed and queued for
-transmission, %FALSE if @error is set.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_set_attribute_stringv">
+<function name="g_simple_async_result_set_error_va">
 <description>
-Sets the @attribute to contain the given @attr_value,
-if possible.
-
-Sinze: 2.22
+Sets an error within the asynchronous result without a #GError.
+Unless writing a binding, see g_simple_async_result_set_error().
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="domain">
+<parameter_description> a #GQuark (usually #G_IO_ERROR).
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> a %NULL terminated string array
+<parameter name="code">
+<parameter_description> an error code.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a formatted error reporting string.
+</parameter_description>
+</parameter>
+<parameter name="args">
+<parameter_description> va_list of arguments.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_icon_to_string">
+<function name="g_simple_async_result_set_from_error">
 <description>
-Generates a textual representation of @icon that can be used for
-serialization such as when passing @icon to a different process or
-saving it to persistent storage. Use g_icon_new_for_string() to
-get @icon back from the returned string.
-
-The encoding of the returned string is proprietary to #GIcon except
-in the following two cases
-
-&lt;itemizedlist&gt;
-&lt;listitem&gt;&lt;para&gt;
-If @icon is a #GFileIcon, the returned string is a native path
-(such as &lt;literal&gt;/path/to/my icon.png&lt;/literal&gt;) without escaping
-if the #GFile for @icon is a native file.  If the file is not
-native, the returned string is the result of g_file_get_uri()
-(such as &lt;literal&gt;sftp://path/to/my%%20icon.png&lt;/literal&gt;).
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;listitem&gt;&lt;para&gt;
-If @icon is a #GThemedIcon with exactly one name, the encoding is
-simply the name (such as &lt;literal&gt;network-server&lt;/literal&gt;).
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/itemizedlist&gt;
-
-Since: 2.20
+Sets the result from a #GError.
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> a #GIcon.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> An allocated NUL-terminated UTF8 string or %NULL if @icon can't
-be serialized. Use g_free() to free.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_mount_mountable">
+<function name="g_simple_async_result_set_handle_cancellation">
 <description>
-Mounts a file of type G_FILE_TYPE_MOUNTABLE.
-Using @mount_operation, you can request callbacks when, for instance, 
-passwords are needed during authentication.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+Sets whether to handle cancellation within the asynchronous operation.
 
-When the operation is finished, @callback will be called. You can then call
-g_file_mount_mountable_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
-</parameter_description>
-</parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="handle_cancellation">
+<parameter_description> a #gboolean.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_message_set_unix_fd_list">
+<function name="g_simple_async_result_set_op_res_gboolean">
 <description>
-Sets the UNIX file descriptors associated with @message. As a
-side-effect the %G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS header
-field is set to the number of fds in @fd_list (or cleared if
- fd_list is %NULL).
-
-This method is only available on UNIX.
-
-Since: 2.26
+Sets the operation result to a boolean within the asynchronous result.
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="fd_list">
-<parameter_description> A #GUnixFDList or %NULL.
+<parameter name="op_res">
+<parameter_description> a #gboolean.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_zlib_compressor_new">
+<function name="g_simple_async_result_set_op_res_gpointer">
 <description>
-Creates a new #GZlibCompressor.
-
-Since: 2.24
+Sets the operation result within the asynchronous result to a pointer.
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> The format to use for the compressed data
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="level">
-<parameter_description> compression level (0-9), -1 for default
+<parameter name="op_res">
+<parameter_description> a pointer result from an asynchronous function.
+</parameter_description>
+</parameter>
+<parameter name="destroy_op_res">
+<parameter_description> a #GDestroyNotify function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GZlibCompressor
-
-</return>
+<return></return>
 </function>
 
-<function name="g_bus_get">
+<function name="g_simple_async_result_set_op_res_gssize">
 <description>
-Asynchronously connects to the message bus specified by @bus_type.
-
-When the operation is finished, @callback will be invoked. You can
-then call g_bus_get_finish() to get the result of the operation.
-
-This is a asynchronous failable function. See g_bus_get_sync() for
-the synchronous version.
-
-Since: 2.26
+Sets the operation result within the asynchronous result to
+the given @op_res.
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> A #GBusType.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter name="op_res">
+<parameter_description> a #gssize.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_enumerator_close">
+<function name="g_simple_async_result_take_error">
 <description>
-Releases all resources used by this enumerator, making the
-enumerator return %G_IO_ERROR_CLOSED on all calls.
-
-This will be automatically called when the last reference
-is dropped, but you might want to call this function to make 
-sure resources are released as early as possible.
+Sets the result from @error, and takes over the caller's ownership
+of @error, so the caller does not need to free it any more.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="simple">
+<parameter_description> a #GSimpleAsyncResult
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> #TRUE on success or #FALSE on error.
-</return>
+<return></return>
 </function>
 
-<function name="g_socket_control_message_get_msg_type">
+<function name="g_simple_permission_new">
 <description>
-Returns the protocol specific type of the control message.
-For instance, for UNIX fd passing this would be SCM_RIGHTS.
+Creates a new #GPermission instance that represents an action that is
+either always or never allowed.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> a #GSocketControlMessage
+<parameter name="allowed">
+<parameter_description> %TRUE if the action is allowed
 </parameter_description>
 </parameter>
 </parameters>
-<return> an integer describing the type of control message
-
+<return> the #GSimplePermission, as a #GPermission
 </return>
 </function>
 
-<function name="g_file_io_stream_query_info_async">
+<function name="g_socket_accept">
 <description>
-Asynchronously queries the @stream for a #GFileInfo. When completed,
- callback will be called with a #GAsyncResult which can be used to
-finish the operation with g_file_io_stream_query_info_finish().
+Accept incoming connections on a connection-based socket. This removes
+the first outstanding connection request from the listening socket and
+creates a #GSocket object for it.
 
-For the synchronous version of this function, see
-g_file_io_stream_query_info().
+The @socket must be bound to a local address with g_socket_bind() and
+must be listening for incoming connections (g_socket_listen()).
+
+If there are no outstanding connections then the operation will block
+or return %G_IO_ERROR_WOULD_BLOCK if non-blocking I/O is enabled.
+To be notified of an incoming connection, wait for the %G_IO_IN condition.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileIOStream.
-</parameter_description>
-</parameter>
-<parameter name="attributes">
-<parameter_description> a file attribute query string.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;gio-GIOScheduler&quot;&gt;I/O priority&lt;/link&gt;
-of the request.
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+<parameter_description> a %GCancellable or %NULL
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GSocket, or %NULL on error.
+Free the returned object with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_icon_equal">
+<function name="g_socket_address_enumerator_next">
 <description>
-Checks if two icons are equal.
+Retrieves the next #GSocketAddress from @enumerator. Note that this
+may block for some amount of time. (Eg, a #GNetworkAddress may need
+to do a DNS lookup before it can return an address.) Use
+g_socket_address_enumerator_next_async() if you need to avoid
+blocking.
+
+If @enumerator is expected to yield addresses, but for some reason
+is unable to (eg, because of a DNS error), then the first call to
+g_socket_address_enumerator_next() will return an appropriate error
+in * error  However, if the first call to
+g_socket_address_enumerator_next() succeeds, then any further
+internal errors (other than @cancellable being triggered) will be
+ignored.
 
 
 </description>
 <parameters>
-<parameter name="icon1">
-<parameter_description> pointer to the first #GIcon.
+<parameter name="enumerator">
+<parameter_description> a #GSocketAddressEnumerator
 </parameter_description>
 </parameter>
-<parameter name="icon2">
-<parameter_description> pointer to the second #GIcon.
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @icon1 is equal to @icon2. %FALSE otherwise.
+<return> a #GSocketAddress (owned by the caller), or %NULL on
+error (in which case * error will be set) or if there are no
+more addresses.
 </return>
 </function>
 
-<function name="g_input_stream_skip_async">
+<function name="g_socket_address_enumerator_next_async">
 <description>
-Request an asynchronous skip of @count bytes from the stream.
-When the operation is finished @callback will be called. 
-You can then call g_input_stream_skip_finish() to get the result of the 
-operation.
-
-During an async request no other sync and async calls are allowed, and will
-result in %G_IO_ERROR_PENDING errors. 
-
-A value of @count larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
-
-On success, the number of bytes skipped will be passed to the
-callback. It is not an error if this is not the same as the requested size, as it
-can happen e.g. near the end of a file, but generally we try to skip
-as many bytes as requested. Zero is returned on end of file
-(or if @count is zero), but never otherwise.
-
-Any outstanding i/o request with higher priority (lower numerical value) will
-be executed before an outstanding request with lower priority. Default
-priority is %G_PRIORITY_DEFAULT.
-
-The asyncronous methods have a default fallback that uses threads to implement
-asynchronicity, so they are optional for inheriting classes. However, if you
-override one you must override all.
+Asynchronously retrieves the next #GSocketAddress from @enumerator
+and then calls @callback, which must call
+g_socket_address_enumerator_next_finish() to get the result.
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> A #GInputStream.
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of bytes that will be skipped from the stream
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+<parameter name="enumerator">
+<parameter_description> a #GSocketAddressEnumerator
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+<parameter_description> a #GAsyncReadyCallback to call when the request
+is satisfied
 </parameter_description>
 </parameter>
 <parameter name="user_data">
@@ -23663,126 +25825,170 @@ of the request.
 <return></return>
 </function>
 
-<function name="g_memory_output_stream_get_data">
+<function name="g_socket_address_enumerator_next_finish">
 <description>
-Gets any loaded data from the @ostream.
+Retrieves the result of a completed call to
+g_socket_address_enumerator_next_async(). See
+g_socket_address_enumerator_next() for more information about
+error handling.
 
-Note that the returned pointer may become invalid on the next
-write or truncate operation on the stream.
 
+</description>
+<parameters>
+<parameter name="enumerator">
+<parameter_description> a #GSocketAddressEnumerator
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GSocketAddress (owned by the caller), or %NULL on
+error (in which case * error will be set) or if there are no
+more addresses.
+</return>
+</function>
+
+<function name="g_socket_address_get_family">
+<description>
+Gets the socket family type of @address.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="ostream">
-<parameter_description> a #GMemoryOutputStream
+<parameter name="address">
+<parameter_description> a #GSocketAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> pointer to the stream's data
+<return> the socket family type of @address.
+
 </return>
 </function>
 
-<function name="g_socket_listener_new">
+<function name="g_socket_address_get_native_size">
 <description>
-Creates a new #GSocketListener with no sockets to listen for.
-New listeners can be added with e.g. g_socket_listener_add_address()
-or g_socket_listener_add_inet_port().
+Gets the size of @address's native &lt;type&gt;struct sockaddr&lt;/type&gt;.
+You can use this to allocate memory to pass to
+g_socket_address_to_native().
 
 Since: 2.22
 
 </description>
 <parameters>
+<parameter name="address">
+<parameter_description> a #GSocketAddress
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GSocketListener.
+<return> the size of the native &lt;type&gt;struct sockaddr&lt;/type&gt; that
+ address represents
 
 </return>
 </function>
 
-<function name="g_dbus_connection_unregister_subtree">
+<function name="g_socket_address_new_from_native">
 <description>
-Unregisters a subtree.
+Creates a #GSocketAddress subclass corresponding to the native
+&lt;type&gt;struct sockaddr&lt;/type&gt; @native.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="native">
+<parameter_description> a pointer to a &lt;type&gt;struct sockaddr&lt;/type&gt;
 </parameter_description>
 </parameter>
-<parameter name="registration_id">
-<parameter_description> A subtree registration id obtained from g_dbus_connection_register_subtree().
+<parameter name="len">
+<parameter_description> the size of the memory location pointed to by @native
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the subtree was unregistered, %FALSE otherwise.
+<return> a new #GSocketAddress if @native could successfully be converted,
+otherwise %NULL.
 
 </return>
 </function>
 
-<function name="g_initable_new_valist">
+<function name="g_socket_address_to_native">
 <description>
-Helper function for constructing #GInitiable object. This is
-similar to g_object_new_valist() but also initializes the object
-and returns %NULL, setting an error on failure.
+Converts a #GSocketAddress to a native &lt;type&gt;struct
+sockaddr&lt;/type&gt;, which can be passed to low-level functions like
+connect() or bind().
+
+If not enough space is availible, a %G_IO_ERROR_NO_SPACE error is
+returned. If the address type is not known on the system
+then a %G_IO_ERROR_NOT_SUPPORTED error is returned.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> a #GType supporting #GInitable.
-</parameter_description>
-</parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of the first property, followed by
-the value, and other property value pairs, and ended by %NULL.
+<parameter name="address">
+<parameter_description> a #GSocketAddress
 </parameter_description>
 </parameter>
-<parameter name="var_args">
-<parameter_description> The var args list generated from @first_property_name.
+<parameter name="dest">
+<parameter_description> a pointer to a memory location that will contain the native
+&lt;type&gt;struct sockaddr&lt;/type&gt;.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="destlen">
+<parameter_description> the size of @dest. Must be at least as large as
+g_socket_address_get_native_size().
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GObject, or %NULL on error
+<return> %TRUE if @dest was filled in, %FALSE on error
 
 </return>
 </function>
 
-<function name="g_socket_listener_add_inet_port">
+<function name="g_socket_bind">
 <description>
-Helper function for g_socket_listener_add_address() that
-creates a TCP/IP socket listening on IPv4 and IPv6 (if
-supported) on the specified port on all interfaces.
+When a socket is created it is attached to an address family, but it
+doesn't have an address in this family. g_socket_bind() assigns the
+address (sometimes called name) of the socket.
 
- source_object will be passed out in the various calls
-to accept to identify this particular source, which is
-useful if you're listening on multiple addresses and do
-different things depending on what address is connected to.
+It is generally required to bind to a local address before you can
+receive connections. (See g_socket_listen() and g_socket_accept() ).
+In certain situations, you may also want to bind a socket that will be
+used to initiate connections, though this is not normally required.
+
+ allow_reuse should be %TRUE for server sockets (sockets that you will
+eventually call g_socket_accept() on), and %FALSE for client sockets.
+(Specifically, if it is %TRUE, then g_socket_bind() will set the
+%SO_REUSEADDR flag on the socket, allowing it to bind @address even if
+that address was previously used by another socket that has not yet been
+fully cleaned-up by the kernel. Failing to set this flag on a server
+socket may cause the bind call to return %G_IO_ERROR_ADDRESS_IN_USE if
+the server program is stopped and then immediately restarted.)
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="port">
-<parameter_description> an IP port number (non-zero)
+<parameter name="address">
+<parameter_description> a #GSocketAddress specifying the local address.
 </parameter_description>
 </parameter>
-<parameter name="source_object">
-<parameter_description> Optional #GObject identifying this source
+<parameter name="allow_reuse">
+<parameter_description> whether to allow reusing this address
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -23795,207 +26001,168 @@ Since: 2.22
 </return>
 </function>
 
-<function name="g_unix_mount_get_mount_path">
+<function name="g_socket_check_connect_result">
 <description>
-Gets the mount path for a unix mount.
+Checks and resets the pending connect error for the socket.
+This is used to check for errors when g_socket_connect() is
+used in non-blocking mode.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> input #GUnixMountEntry to get the mount path for.
+<parameter name="socket">
+<parameter_description> a #GSocket
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the mount path for @mount_entry.
+<return> %TRUE if no error, %FALSE otherwise, setting @error to the error
+
 </return>
 </function>
 
-<function name="g_app_info_get_all_for_type">
+<function name="g_socket_client_add_application_proxy">
 <description>
-Gets a list of all #GAppInfo&lt;!-- --&gt;s for a given content type.
+Enable proxy protocols to be handled by the application. When the
+indicated proxy protocol is returned by the #GProxyResolver,
+#GSocketClient will consider this protocol as supported but will
+not try find a #GProxy instance to handle handshaking. The
+application must check for this case by calling
+g_socket_connection_get_remote_address() on the returned
+#GSocketConnection, and seeing if it's a #GProxyAddress of the
+appropriate type, to determine whether or not it needs to handle
+the proxy handshaking itself.
 
+This should be used for proxy protocols that are dialects of
+another protocol such as HTTP proxy. It also allows cohabitation of
+proxy protocols that are reused between protocols. A good example
+is HTTP. It can be used to proxy HTTP, FTP and Gopher and can also
+be use as generic socket proxy through the HTTP CONNECT method.
 
 </description>
 <parameters>
-<parameter name="content_type">
-<parameter_description> the content type to find a #GAppInfo for
+<parameter name="client">
+<parameter_description> a #GSocketClient
 </parameter_description>
 </parameter>
-</parameters>
-<return> #GList of #GAppInfo&lt;!-- --&gt;s for given @content_type
-or %NULL on error.
-</return>
-</function>
-
-<function name="g_file_attribute_info_list_unref">
-<description>
-Removes a reference from the given @list. If the reference count
-falls to zero, the @list is deleted.
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> The #GFileAttributeInfoList to unreference.
+<parameter name="protocol">
+<parameter_description> The proxy protocol
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_connection_send_message_with_reply">
+<function name="g_socket_client_connect">
 <description>
-Asynchronously sends @message to the peer represented by @connection.
+Tries to resolve the @connectable and make a network connection to it..
 
-Unless @flags contain the
-%G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL flag, the serial number
-will be assigned by @connection and set on @message via
-g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
-serial number used will be written to this location prior to
-submitting the message to the underlying transport.
+Upon a successful connection, a new #GSocketConnection is constructed
+and returned.  The caller owns this new object and must drop their
+reference to it when finished with it.
 
-If @connection is closed then the operation will fail with
-%G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
-fail with %G_IO_ERROR_CANCELLED. If @message is not well-formed,
-the operation fails with %G_IO_ERROR_INVALID_ARGUMENT.
+The type of the #GSocketConnection object returned depends on the type of
+the underlying socket that is used. For instance, for a TCP/IP connection
+it will be a #GTcpConnection.
 
-This is an asynchronous method. When the operation is finished, @callback will be invoked
-in the &lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main loop&lt;/link&gt;
-of the thread you are calling this method from. You can then call
-g_dbus_connection_send_message_with_reply_finish() to get the result of the operation.
-See g_dbus_connection_send_message_with_reply_sync() for the synchronous version.
+The socket created will be the same family as the the address that the
+ connectable resolves to, unless family is set with g_socket_client_set_family()
+or indirectly via g_socket_client_set_local_address(). The socket type
+defaults to %G_SOCKET_TYPE_STREAM but can be set with
+g_socket_client_set_socket_type().
 
-See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
-linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
-low-level API to send and receive UNIX file descriptors.
+If a local address is specified with g_socket_client_set_local_address() the
+socket will be bound to this address before connecting.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Flags affecting how the message is sent.
-</parameter_description>
-</parameter>
-<parameter name="timeout_msec">
-<parameter_description> The timeout in milliseconds or -1 to use the default timeout.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="out_serial">
-<parameter_description> Return location for serial number assigned to @message when sending it or %NULL.
+<parameter name="connectable">
+<parameter_description> a #GSocketConnectable specifying the remote address.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't
-care about the result.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> The data to pass to @callback.
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_win32_input_stream_get_handle">
-<description>
-Return the Windows file handle that the stream reads from.
-
-Since: 2.26
-
-</description>
-<parameters>
-<parameter name="stream">
-<parameter_description> a #GWin32InputStream
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The file handle of @stream
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
 
-<function name="g_dbus_connection_call_finish">
+<function name="g_socket_client_connect_async">
 <description>
-Finishes an operation started with g_dbus_connection_call().
+This is the asynchronous version of g_socket_client_connect().
 
-Since: 2.26
+When the operation is finished @callback will be
+called. You can then call g_socket_client_connect_finish() to get
+the result of the operation.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="client">
+<parameter_description> a #GTcpClient
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_call().
+<parameter name="connectable">
+<parameter_description> a #GSocketConnectable specifying the remote address.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return> %NULL if @error is set. Otherwise a #GVariant tuple with
-return values. Free with g_variant_unref().
-
-</return>
-</function>
-
-<function name="g_socket_set_blocking">
-<description>
-Sets the blocking mode of the socket. In blocking mode
-all operations block until they succeed or there is an error. In
-non-blocking mode all functions return results immediately or
-with a %G_IO_ERROR_WOULD_BLOCK error.
-
-All sockets are created in blocking mode. However, note that the
-platform level socket is always non-blocking, and blocking mode
-is a GSocket level feature.
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
 </parameter_description>
 </parameter>
-<parameter name="blocking">
-<parameter_description> Whether to use blocking I/O or not.
+<parameter name="user_data">
+<parameter_description> user data for the callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_method_invocation_get_method_info">
+<function name="g_socket_client_connect_finish">
 <description>
-Gets information about the method call, if any.
+Finishes an async connect operation. See g_socket_client_connect_async()
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMethodInfo or %NULL. Do not free, it is owned by @invocation.
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
@@ -24006,7 +26173,7 @@ This is a helper function for g_socket_client_connect().
 
 Attempts to create a TCP connection to the named host.
 
- host_and_port may be in any of a number of recognised formats: an IPv6
+ host_and_port may be in any of a number of recognised formats; an IPv6
 address, an IPv4 address, or a domain name (in which case a DNS
 lookup is performed).  Quoting with [] is supported for all address
 types.  A port override may be specified in the usual way with a
@@ -24033,14 +26200,12 @@ In the event of any failure (DNS error, service not found, no hosts
 connectable) %NULL is returned and @error (if non-%NULL) is set
 accordingly.
 
- Returns: a #GSocketConnection on success, %NULL on error.
-
 Since: 2.22
 
 </description>
 <parameters>
 <parameter name="client">
-<parameter_description> a #SocketClient
+<parameter_description> a #GSocketClient
 </parameter_description>
 </parameter>
 <parameter name="host_and_port">
@@ -24060,119 +26225,141 @@ Since: 2.22
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSocketConnection on success, %NULL on error.
+
+</return>
 </function>
 
-<function name="g_file_info_set_attribute_uint64">
+<function name="g_socket_client_connect_to_host_async">
 <description>
-Sets the @attribute to contain the given @attr_value, 
-if possible.
+This is the asynchronous version of g_socket_client_connect_to_host().
+
+When the operation is finished @callback will be
+called. You can then call g_socket_client_connect_to_host_finish() to get
+the result of the operation.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="client">
+<parameter_description> a #GTcpClient
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="host_and_port">
+<parameter_description> the name and optionally the port of the host to connect to
 </parameter_description>
 </parameter>
-<parameter name="attr_value">
-<parameter_description> an unsigned 64-bit integer.
+<parameter name="default_port">
+<parameter_description> the default port to connect to
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data for the callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_socket_get_timeout">
+<function name="g_socket_client_connect_to_host_finish">
 <description>
-Gets the timeout setting of the socket. For details on this, see
-g_socket_set_timeout().
+Finishes an async connect operation. See g_socket_client_connect_to_host_async()
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the timeout in seconds
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
 
-<function name="g_dbus_connection_send_message_with_reply_finish">
+<function name="g_socket_client_connect_to_service">
 <description>
-Finishes an operation started with g_dbus_connection_send_message_with_reply().
+Attempts to create a TCP connection to a service.
 
-Note that @error is only set if a local in-process error
-occured. That is to say that the returned #GDBusMessage object may
-be of type %G_DBUS_MESSAGE_TYPE_ERROR. Use
-g_dbus_message_to_gerror() to transcode this to a #GError.
+This call looks up the SRV record for @service at @domain for the
+&quot;tcp&quot; protocol.  It then attempts to connect, in turn, to each of
+the hosts providing the service until either a connection succeeds
+or there are no hosts remaining.
 
-See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; and &lt;xref
-linkend=&quot;gdbus-unix-fd-client&quot;/&gt; for an example of how to use this
-low-level API to send and receive UNIX file descriptors.
+Upon a successful connection, a new #GSocketConnection is constructed
+and returned.  The caller owns this new object and must drop their
+reference to it when finished with it.
 
-Since: 2.26
+In the event of any failure (DNS error, service not found, no hosts
+connectable) %NULL is returned and @error (if non-%NULL) is set
+accordingly.
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GDBusConnection
+<parameter name="client">
+<parameter_description> a #GSocketConnection
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_connection_send_message_with_reply().
+<parameter name="domain">
+<parameter_description> a domain name
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter name="service">
+<parameter_description> the name of the service to connect to
 </parameter_description>
 </parameter>
-</parameters>
-<return> A #GDBusMessage or %NULL if @error is set.
-
-</return>
-</function>
-
-<function name="g_unix_mount_points_get">
-<description>
-Gets a #GList of #GUnixMountPoint containing the unix mount points.
-If @time_read is set, it will be filled with the mount timestamp,
-allowing for checking if the mounts have changed with
-g_unix_mounts_points_changed_since().
-
-
-</description>
-<parameters>
-<parameter name="time_read">
-<parameter_description> guint64 to contain a timestamp.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a pointer to a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of the UNIX mountpoints.
+<return> a #GSocketConnection if successful, or %NULL on error
 </return>
 </function>
 
-<function name="g_socket_listener_accept_socket_async">
+<function name="g_socket_client_connect_to_service_async">
 <description>
-This is the asynchronous version of g_socket_listener_accept_socket().
-
-When the operation is finished @callback will be
-called. You can then call g_socket_listener_accept_socket_finish()
-to get the result of the operation.
+This is the asynchronous version of
+g_socket_client_connect_to_service().
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="client">
+<parameter_description> a #GSocketClient
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> a domain name
+</parameter_description>
+</parameter>
+<parameter name="service">
+<parameter_description> the name of the service to connect to
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -24191,592 +26378,974 @@ Since: 2.22
 <return></return>
 </function>
 
-<function name="g_mount_guess_content_type_sync">
+<function name="g_socket_client_connect_to_service_finish">
 <description>
-Tries to guess the type of content stored on @mount. Returns one or
-more textual identifiers of well-known content types (typically
-prefixed with &quot;x-content/&quot;), e.g. x-content/image-dcf for camera 
-memory cards. See the &lt;ulink url=&quot;http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec&quot;&gt;shared-mime-info&lt;/ulink&gt;
-specification for more on x-content types.
-
-This is an synchronous operation and as such may block doing IO;
-see g_mount_guess_content_type() for the asynchronous version.
+Finishes an async connect operation. See g_socket_client_connect_to_service_async()
 
-Since: 2.18
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount
-</parameter_description>
-</parameter>
-<parameter name="force_rescan">
-<parameter_description> Whether to force a rescan of the content.
-Otherwise a cached result will be used if available
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
 <parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated array of content types or %NULL on error.
-Caller should free this array with g_strfreev() when done with it.
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
 
-<function name="g_async_initable_init_finish">
+<function name="g_socket_client_connect_to_uri">
 <description>
-Finishes asynchronous initialization and returns the result.
-See g_async_initable_init_async().
+This is a helper function for g_socket_client_connect().
 
-Since: 2.22
+Attempts to create a TCP connection with a network URI.
+
+ uri may be any valid URI containing an &quot;authority&quot; (hostname/port)
+component. If a port is not specified in the URI, @default_port
+will be used. TLS will be negotiated if #GSocketClient:tls is %TRUE.
+(#GSocketClient does not know to automatically assume TLS for
+certain URI schemes.)
+
+Using this rather than g_socket_client_connect() or
+g_socket_client_connect_to_host() allows #GSocketClient to
+determine when to use application-specific proxy protocols.
+
+Upon a successful connection, a new #GSocketConnection is constructed
+and returned.  The caller owns this new object and must drop their
+reference to it when finished with it.
+
+In the event of any failure (DNS error, service not found, no hosts
+connectable) %NULL is returned and @error (if non-%NULL) is set
+accordingly.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="initable">
-<parameter_description> a #GAsyncInitable.
+<parameter name="client">
+<parameter_description> a #GSocketClient
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult.
+<parameter name="uri">
+<parameter_description> A network URI
+</parameter_description>
+</parameter>
+<parameter name="default_port">
+<parameter_description> the default port to connect to
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter_description> a pointer to a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful. If an error has occurred, this function
-will return %FALSE and set @error appropriately if present.
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
 
-<function name="g_permission_impl_update">
+<function name="g_socket_client_connect_to_uri_async">
 <description>
-This function is called by the #GPermission implementation to update
-the properties of the permission.  You should never call this
-function except from a #GPermission implementation.
+This is the asynchronous version of g_socket_client_connect_to_uri().
 
-GObject notify signals are generated, as appropriate.
+When the operation is finished @callback will be
+called. You can then call g_socket_client_connect_to_uri_finish() to get
+the result of the operation.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
+<parameter name="client">
+<parameter_description> a #GSocketClient
 </parameter_description>
 </parameter>
-<parameter name="allowed">
-<parameter_description> the new value for the 'allowed' property
+<parameter name="uri">
+<parameter_description> a network uri
 </parameter_description>
 </parameter>
-<parameter name="can_acquire">
-<parameter_description> the new value for the 'can-acquire' property
+<parameter name="default_port">
+<parameter_description> the default port to connect to
 </parameter_description>
 </parameter>
-<parameter name="can_release">
-<parameter_description> the new value for the 'can-release' property
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data for the callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unix_credentials_message_new">
+<function name="g_socket_client_connect_to_uri_finish">
 <description>
-Creates a new #GUnixCredentialsMessage with credentials matching the current processes.
+Finishes an async connect operation. See g_socket_client_connect_to_uri_async()
 
 Since: 2.26
 
 </description>
 <parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GUnixCredentialsMessage
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
 
-<function name="g_mount_guess_content_type_finish">
+<function name="g_socket_client_get_enable_proxy">
 <description>
-Finishes guessing content types of @mount. If any errors occured
-during the operation, @error will be set to contain the errors and
-%FALSE will be returned. In particular, you may get an 
-%G_IO_ERROR_NOT_SUPPORTED if the mount does not support content 
-guessing.
+Gets the proxy enable state; see g_socket_client_set_enable_proxy()
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult
+</parameters>
+<return> whether proxying is enabled
+
+</return>
+</function>
+
+<function name="g_socket_client_get_family">
+<description>
+Gets the socket family of the socket client.
+
+See g_socket_client_set_family() for details.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore
+</parameters>
+<return> a #GSocketFamily
+
+</return>
+</function>
+
+<function name="g_socket_client_get_local_address">
+<description>
+Gets the local address of the socket client.
+
+See g_socket_client_set_local_address() for details.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated array of content types or %NULL on error. 
-Caller should free this array with g_strfreev() when done with it.
+<return> a #GSocketAddres or %NULL. don't free
 
 </return>
 </function>
 
-<function name="g_file_new_for_path">
+<function name="g_socket_client_get_protocol">
 <description>
-Constructs a #GFile for a given path. This operation never
-fails, but the returned object might not support any I/O
-operation if @path is malformed.
+Gets the protocol name type of the socket client.
 
+See g_socket_client_set_protocol() for details.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a string containing a relative or absolute path.
+<parameter name="client">
+<parameter_description> a #GSocketClient
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GFile for the given @path. 
+<return> a #GSocketProtocol
+
 </return>
 </function>
 
-<function name="g_cancellable_push_current">
+<function name="g_socket_client_get_socket_type">
 <description>
-Pushes @cancellable onto the cancellable stack. The current
-cancllable can then be recieved using g_cancellable_get_current().
+Gets the socket type of the socket client.
 
-This is useful when implementing cancellable operations in
-code that does not allow you to pass down the cancellable object.
+See g_socket_client_set_socket_type() for details.
 
-This is typically called automatically by e.g. #GFile operations,
-so you rarely have to call this yourself.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable object
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSocketFamily
+
+</return>
 </function>
 
-<function name="g_dbus_method_invocation_return_gerror">
+<function name="g_socket_client_get_timeout">
 <description>
-Like g_dbus_method_invocation_return_error() but takes a #GError
-instead of the error domain, error code and message.
+Gets the I/O timeout time for sockets created by @client.
 
-This method will free @invocation, you cannot use it afterwards.
+See g_socket_client_set_timeout() for details.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="client">
+<parameter_description> a #GSocketClient
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> A #GError.
+</parameters>
+<return> the timeout in seconds
+
+</return>
+</function>
+
+<function name="g_socket_client_get_tls">
+<description>
+Gets whether @client creates TLS connections. See
+g_socket_client_set_tls() for details.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> whether @client uses TLS
+
+</return>
 </function>
 
-<function name="g_dbus_error_strip_remote_error">
+<function name="g_socket_client_get_tls_validation_flags">
 <description>
-Looks for extra information in the error message used to recover
-the D-Bus error name and strips it if found. If stripped, the
-message field in @error will correspond exactly to what was
-received on the wire.
-
-This is typically used when presenting errors to the end user.
+Gets the TLS validation flags used creating TLS connections via
+ client 
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> A #GError.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if information was stripped, %FALSE otherwise.
+<return> the TLS validation flags
 
 </return>
 </function>
 
-<function name="g_file_copy_attributes">
+<function name="g_socket_client_new">
 <description>
-Copies the file attributes from @source to @destination. 
+Creates a new #GSocketClient with the default options.
 
-Normally only a subset of the file attributes are copied,
-those that are copies in a normal file copy operation
-(which for instance does not include e.g. owner). However
-if #G_FILE_COPY_ALL_METADATA is specified in @flags, then
-all the metadata that is possible to copy is copied. This
-is useful when implementing move by copy + delete source.
+Since: 2.22
+
+</description>
+<parameters>
+</parameters>
+<return> a #GSocketClient.
+Free the returned object with g_object_unref().
+
+</return>
+</function>
 
+<function name="g_socket_client_set_enable_proxy">
+<description>
+Sets whether or not @client attempts to make connections via a
+proxy server. When enabled (the default), #GSocketClient will use a
+#GProxyResolver to determine if a proxy protocol such as SOCKS is
+needed, and automatically do the necessary proxy negotiation.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GFile with attributes.
-</parameter_description>
-</parameter>
-<parameter name="destination">
-<parameter_description> a #GFile to copy attributes to.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCopyFlags.
+<parameter name="enable">
+<parameter_description> whether to enable proxies
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_client_set_family">
+<description>
+Sets the socket family of the socket client.
+If this is set to something other than %G_SOCKET_FAMILY_INVALID
+then the sockets created by this object will be of the specified
+family.
+
+This might be useful for instance if you want to force the local
+connection to be an ipv4 socket, even though the address might
+be an ipv6 mapped to ipv4 address.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="family">
+<parameter_description> a #GSocketFamily
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the attributes were copied successfully, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_query_exists">
+<function name="g_socket_client_set_local_address">
 <description>
-Utility function to check if a particular file exists. This is
-implemented using g_file_query_info() and as such does blocking I/O.
+Sets the local address of the socket client.
+The sockets created by this object will bound to the
+specified address (if not %NULL) before connecting.
 
-Note that in many cases it is racy to first check for file existence
-and then execute something based on the outcome of that, because the
-file might have been created or removed in between the operations. The
-general approach to handling that is to not check, but just do the
-operation and handle the errors as they come.
+This is useful if you want to ensure the the local
+side of the connection is on a specific port, or on
+a specific interface.
 
-As an example of race-free checking, take the case of reading a file, and
-if it doesn't exist, creating it. There are two racy versions: read it, and
-on error create it; and: check if it exists, if not create it. These
-can both result in two processes creating the file (with perhaps a partially
-written file as the result). The correct approach is to always try to create
-the file with g_file_create() which will either atomically create the file
-or fail with a G_IO_ERROR_EXISTS error.
+Since: 2.22
 
-However, in many cases an existence check is useful in a user
-interface, for instance to make a menu item sensitive/insensitive, so that
-you don't have to fool users that something is possible and then just show
-and error dialog. If you do this, you should make sure to also handle the
-errors that can happen due to races when you execute the operation.
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
+</parameter_description>
+</parameter>
+<parameter name="address">
+<parameter_description> a #GSocketAddress, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_client_set_protocol">
+<description>
+Sets the protocol of the socket client.
+The sockets created by this object will use of the specified
+protocol.
 
+If @protocol is %0 that means to use the default
+protocol for the socket family and type.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="protocol">
+<parameter_description> a #GSocketProtocol
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the file exists (and can be detected without error), %FALSE otherwise (or if cancelled).
-</return>
+<return></return>
 </function>
 
-<function name="g_inet_address_get_is_any">
+<function name="g_socket_client_set_socket_type">
 <description>
-Tests whether @address is the &quot;any&quot; address for its family.
+Sets the socket type of the socket client.
+The sockets created by this object will be of the specified
+type.
+
+It doesn't make sense to specify a type of %G_SOCKET_TYPE_DATAGRAM,
+as GSocketClient is used for connection oriented services.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="client">
+<parameter_description> a #GSocketClient.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a #GSocketType
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is the &quot;any&quot; address for its family.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_bus_own_name_on_connection">
+<function name="g_socket_client_set_timeout">
 <description>
-Like g_bus_own_name() but takes a #GDBusConnection instead of a
-#GBusType.
+Sets the I/O timeout for sockets created by @client. @timeout is a
+time in seconds, or 0 for no timeout (the default).
+
+The timeout value affects the initial connection attempt as well,
+so setting this may cause calls to g_socket_client_connect(), etc,
+to fail with %G_IO_ERROR_TIMED_OUT.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> The well-known name to own.
+<parameter name="timeout">
+<parameter_description> the timeout
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_client_set_tls">
+<description>
+Sets whether @client creates TLS (aka SSL) connections. If @tls is
+%TRUE, @client will wrap its connections in a #GTlsClientConnection
+and perform a TLS handshake when connecting.
+
+Note that since #GSocketClient must return a #GSocketConnection,
+but #GTlsClientConnection is not a #GSocketConnection, this
+actually wraps the resulting #GTlsClientConnection in a
+#GTcpWrapperConnection when returning it. You can use
+g_tcp_wrapper_connection_get_base_io_stream() on the return value
+to extract the #GTlsClientConnection.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
+</parameter_description>
+</parameter>
+<parameter name="tls">
+<parameter_description> whether to use TLS
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_client_set_tls_validation_flags">
+<description>
+Sets the TLS validation flags used when creating TLS connections
+via @client. The default value is %G_TLS_CERTIFICATE_VALIDATE_ALL.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="client">
+<parameter_description> a #GSocketClient.
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
+<parameter_description> the validation flags
 </parameter_description>
 </parameter>
-<parameter name="name_acquired_handler">
-<parameter_description> Handler to invoke when @name is acquired or %NULL.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_close">
+<description>
+Closes the socket, shutting down any active connection.
+
+Closing a socket does not wait for all outstanding I/O operations
+to finish, so the caller should not rely on them to be guaranteed
+to complete even if the close returns with no error.
+
+Once the socket is closed, all other operations will return
+%G_IO_ERROR_CLOSED. Closing a socket multiple times will not
+return an error.
+
+Sockets will be automatically closed when the last reference
+is dropped, but you might want to call this function to make sure
+resources are released as early as possible.
+
+Beware that due to the way that TCP works, it is possible for
+recently-sent data to be lost if either you close a socket while the
+%G_IO_IN condition is set, or else if the remote connection tries to
+send something to you after you close the socket but before it has
+finished reading all of the data you sent. There is no easy generic
+way to avoid this problem; the easiest fix is to design the network
+protocol such that the client will never send data &quot;out of turn&quot;.
+Another solution is for the server to half-close the connection by
+calling g_socket_shutdown() with only the @shutdown_write flag set,
+and then wait for the client to notice this and close its side of the
+connection, after which the server can safely call g_socket_close().
+(This is what #GTcpConnection does if you call
+g_tcp_connection_set_graceful_disconnect(). But of course, this
+only works if the client will close its connection after the server
+does.)
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="name_lost_handler">
-<parameter_description> Handler to invoke when @name is lost or %NULL.
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> User data to pass to handlers.
+</parameters>
+<return> %TRUE on success, %FALSE on error
+
+</return>
+</function>
+
+<function name="g_socket_condition_check">
+<description>
+Checks on the readiness of @socket to perform operations.
+The operations specified in @condition are checked for and masked
+against the currently-satisfied conditions on @socket. The result
+is returned.
+
+Note that on Windows, it is possible for an operation to return
+%G_IO_ERROR_WOULD_BLOCK even immediately after
+g_socket_condition_check() has claimed that the socket is ready for
+writing. Rather than calling g_socket_condition_check() and then
+writing to the socket if it succeeds, it is generally better to
+simply try writing to the socket right away, and try again later if
+the initial attempt returns %G_IO_ERROR_WOULD_BLOCK.
+
+It is meaningless to specify %G_IO_ERR or %G_IO_HUP in condition;
+these conditions will always be set in the output if they are true.
+
+This call never blocks.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function for freeing @user_data or %NULL.
+<parameter name="condition">
+<parameter_description> a #GIOCondition mask to check
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unown_name() to stop owning the name.
+<return> the @GIOCondition mask of the current state
 
 </return>
 </function>
 
-<function name="g_dbus_address_get_stream_finish">
+<function name="g_socket_condition_wait">
 <description>
-Finishes an operation started with g_dbus_address_get_stream().
+Waits for @condition to become true on @socket. When the condition
+is met, %TRUE is returned.
 
-Since: 2.26
+If @cancellable is cancelled before the condition is met, or if the
+socket has a timeout set and it is reached before the condition is
+met, then %FALSE is returned and @error, if non-%NULL, is set to
+the appropriate value (%G_IO_ERROR_CANCELLED or
+%G_IO_ERROR_TIMED_OUT).
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="res">
-<parameter_description> A #GAsyncResult obtained from the GAsyncReadyCallback passed to g_dbus_address_get_stream().
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="out_guid">
-<parameter_description> %NULL or return location to store the GUID extracted from @address, if any.
+<parameter name="condition">
+<parameter_description> a #GIOCondition mask to wait for
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a #GError pointer, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GIOStream or %NULL if @error is set.
+<return> %TRUE if the condition was met, %FALSE otherwise
 
 </return>
 </function>
 
-<function name="g_unix_socket_address_get_path">
+<function name="g_socket_connect">
 <description>
-Gets @address's path, or for abstract sockets the &quot;name&quot;.
+Connect the socket to the specified remote address.
 
-Guaranteed to be zero-terminated, but an abstract socket
-may contain embedded zeros, and thus you should use
-g_unix_socket_address_get_path_len() to get the true length
-of this string.
+For connection oriented socket this generally means we attempt to make
+a connection to the @address. For a connection-less socket it sets
+the default address for g_socket_send() and discards all incoming datagrams
+from other sources.
+
+Generally connection oriented sockets can only connect once, but
+connection-less sockets can connect multiple times to change the
+default address.
+
+If the connect call needs to do network I/O it will block, unless
+non-blocking I/O is enabled. Then %G_IO_ERROR_PENDING is returned
+and the user can be notified of the connection finishing by waiting
+for the G_IO_OUT condition. The result of the connection can then be
+checked with g_socket_check_connect_result().
 
 Since: 2.22
 
 </description>
 <parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
+</parameter_description>
+</parameter>
 <parameter name="address">
-<parameter_description> a #GInetSocketAddress
+<parameter_description> a #GSocketAddress specifying the remote address.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the path for @address
+<return> %TRUE if connected, %FALSE on error.
 
 </return>
 </function>
 
-<function name="g_unix_input_stream_set_close_fd">
+<function name="g_socket_connectable_enumerate">
 <description>
-Sets whether the file descriptor of @stream shall be closed
-when the stream is closed.
+Creates a #GSocketAddressEnumerator for @connectable.
 
-Since: 2.20
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GUnixInputStream
+<parameter name="connectable">
+<parameter_description> a #GSocketConnectable
 </parameter_description>
 </parameter>
-<parameter name="close_fd">
-<parameter_description> %TRUE to close the file descriptor when done
+</parameters>
+<return> a new #GSocketAddressEnumerator.
+
+</return>
+</function>
+
+<function name="g_socket_connectable_proxy_enumerate">
+<description>
+Creates a #GSocketAddressEnumerator for @connectable that will
+return #GProxyAddress&lt;!-- --&gt;es for addresses that you must connect
+to via a proxy.
+
+If @connectable does not implement
+g_socket_connectable_proxy_enumerate(), this will fall back to
+calling g_socket_connectable_enumerate().
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="connectable">
+<parameter_description> a #GSocketConnectable
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GSocketAddressEnumerator.
+
+</return>
 </function>
 
-<function name="g_dbus_server_new_sync">
+<function name="g_socket_connection_factory_create_connection">
 <description>
-Creates a new D-Bus server that listens on the first address in
- address that works.
+Creates a #GSocketConnection subclass of the right type for
+ socket 
 
-Once constructed, you can use g_dbus_server_get_client_address() to
-get a D-Bus address string that clients can use to connect.
+Since: 2.22
 
-Connect to the #GDBusServer::new-connection signal to handle
-incoming connections.
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GSocketConnection
 
-The returned #GDBusServer isn't active - you have to start it with
-g_dbus_server_start().
+</return>
+</function>
 
-See &lt;xref linkend=&quot;gdbus-peer-to-peer&quot;/&gt; for how #GDBusServer can
-be used.
+<function name="g_socket_connection_factory_lookup_type">
+<description>
+Looks up the #GType to be used when creating socket connections on
+sockets with the specified @family,@type and @protocol_id.
 
-This is a synchronous failable constructor. See
-g_dbus_server_new() for the asynchronous version.
+If no type is registered, the #GSocketConnection base type is returned.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> A D-Bus address.
+<parameter name="family">
+<parameter_description> a #GSocketFamily
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags from the #GDBusServerFlags enumeration.
+<parameter name="type">
+<parameter_description> a #GSocketType
 </parameter_description>
 </parameter>
-<parameter name="guid">
-<parameter_description> A D-Bus GUID.
+<parameter name="protocol_id">
+<parameter_description> a protocol id
 </parameter_description>
 </parameter>
-<parameter name="observer">
-<parameter_description> A #GDBusAuthObserver or %NULL.
+</parameters>
+<return> a #GType
+
+</return>
+</function>
+
+<function name="g_socket_connection_factory_register_type">
+<description>
+Looks up the #GType to be used when creating socket connections on
+sockets with the specified @family,@type and @protocol.
+
+If no type is registered, the #GSocketConnection base type is returned.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="g_type">
+<parameter_description> a #GType, inheriting from %G_TYPE_SOCKET_CONNECTION
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="family">
+<parameter_description> a #GSocketFamily
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a #GSocketType
+</parameter_description>
+</parameter>
+<parameter name="protocol">
+<parameter_description> a protocol id
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_connection_get_local_address">
+<description>
+Try to get the local address of a socket connection.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> a #GSocketConnection
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for server or %NULL.
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusServer or %NULL if @error is set. Free with
-g_object_unref().
+<return> a #GSocketAddress or %NULL on error.
+Free the returned object with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_app_info_get_default_for_type">
+<function name="g_socket_connection_get_remote_address">
 <description>
-Gets the #GAppInfo that corresponds to a given content type.
+Try to get the remote address of a socket connection.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="content_type">
-<parameter_description> the content type to find a #GAppInfo for
+<parameter name="connection">
+<parameter_description> a #GSocketConnection
 </parameter_description>
 </parameter>
-<parameter name="must_support_uris">
-<parameter_description> if %TRUE, the #GAppInfo is expected to
-support URIs
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GAppInfo for given @content_type or %NULL on error.
+<return> a #GSocketAddress or %NULL on error.
+Free the returned object with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_file_query_filesystem_info">
+<function name="g_socket_connection_get_socket">
 <description>
-Similar to g_file_query_info(), but obtains information
-about the filesystem the @file is on, rather than the file itself.
-For instance the amount of space available and the type of
-the filesystem.
+Gets the underlying #GSocket object of the connection.
+This can be useful if you want to do something unusual on it
+not supported by the #GSocketConnection APIs.
 
-The @attributes value is a string that specifies the file attributes that
-should be gathered. It is not an error if it's not possible to read a particular
-requested attribute from a file - it just won't be set. @attributes should
-be a comma-separated list of attributes or attribute wildcards. The wildcard &quot;*&quot;
-means all attributes, and a wildcard like &quot;fs:*&quot; means all attributes in the fs
-namespace. The standard namespace for filesystem attributes is &quot;fs&quot;.
-Common attributes of interest are #G_FILE_ATTRIBUTE_FILESYSTEM_SIZE
-(the total size of the filesystem in bytes), #G_FILE_ATTRIBUTE_FILESYSTEM_FREE (number of
-bytes available), and #G_FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).
+Since: 2.22
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> a #GSocketConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GSocketAddress or %NULL on error.
 
-If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
-Other errors are possible too, and depend on what kind of filesystem the file is on.
+</return>
+</function>
+
+<function name="g_socket_control_message_deserialize">
+<description>
+Tries to deserialize a socket control message of a given
+ level and @type. This will ask all known (to GType) subclasses
+of #GSocketControlMessage if they can understand this kind
+of message and if so deserialize it into a #GSocketControlMessage.
+
+If there is no implementation for this kind of control message, %NULL
+will be returned.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="level">
+<parameter_description> a socket level
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description>  an attribute query string.
+<parameter name="type">
+<parameter_description> a socket control message type for the given @level
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="size">
+<parameter_description> the size of the data in bytes
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError. 
+<parameter name="data">
+<parameter_description> pointer to the message data
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileInfo or %NULL if there was an error.
-Free the returned object with g_object_unref().
+<return> the deserialized message or %NULL
+
 </return>
 </function>
 
-<function name="g_io_extension_point_set_required_type">
+<function name="g_socket_control_message_get_level">
 <description>
-Sets the required type for @extension_point to @type. 
-All implementations must henceforth have this type.
+Returns the &quot;level&quot; (i.e. the originating protocol) of the control message.
+This is often SOL_SOCKET.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="extension_point">
-<parameter_description> a #GIOExtensionPoint
+<parameter name="message">
+<parameter_description> a #GSocketControlMessage
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the #GType to require
+</parameters>
+<return> an integer describing the level
+
+</return>
+</function>
+
+<function name="g_socket_control_message_get_msg_type">
+<description>
+Returns the protocol specific type of the control message.
+For instance, for UNIX fd passing this would be SCM_RIGHTS.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> a #GSocketControlMessage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> an integer describing the type of control message
+
+</return>
+</function>
+
+<function name="g_socket_control_message_get_size">
+<description>
+Returns the space required for the control message, not including
+headers or alignment.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="message">
+<parameter_description> a #GSocketControlMessage
+</parameter_description>
+</parameter>
+</parameters>
+<return> The number of bytes required.
+
+</return>
 </function>
 
 <function name="g_socket_control_message_serialize">
@@ -24804,256 +27373,349 @@ Since: 2.22
 <return></return>
 </function>
 
-<function name="g_file_set_attribute_string">
+<function name="g_socket_create_source">
 <description>
-Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_STRING to @value. 
-If @attribute is of a different type, this operation will fail.
+Creates a %GSource that can be attached to a %GMainContext to monitor
+for the availibility of the specified @condition on the socket.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+The callback on the source is of the #GSocketSourceFunc type.
 
+It is meaningless to specify %G_IO_ERR or %G_IO_HUP in @condition;
+these conditions will always be reported output if they are true.
+
+ cancellable if not %NULL can be used to cancel the source, which will
+cause the source to trigger, reporting the current condition (which
+is likely 0 unless cancellation happened at the same time as a
+condition change). You can check for this in the callback using
+g_cancellable_is_cancelled().
+
+If @socket has a timeout set, and it is reached before @condition
+occurs, the source will then trigger anyway, reporting %G_IO_IN or
+%G_IO_OUT depending on @condition. However, @socket will have been
+marked as having had a timeout, and so the next #GSocket I/O method
+you call will then fail with a %G_IO_ERROR_TIMED_OUT.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="attribute">
-<parameter_description> a string containing the attribute's name.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a string containing the attribute's value.
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> #GFileQueryInfoFlags.
+<parameter name="condition">
+<parameter_description> a #GIOCondition mask to monitor
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> a %GCancellable or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @attribute was successfully set, %FALSE otherwise.
+<return> a newly allocated %GSource, free with g_source_unref().
+
 </return>
 </function>
 
-<function name="g_file_read_finish">
+<function name="g_socket_get_blocking">
 <description>
-Finishes an asynchronous file read operation started with 
-g_file_read_async(). 
+Gets the blocking mode of the socket. For details on blocking I/O,
+see g_socket_set_blocking().
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileInputStream or %NULL on error.
-Free the returned object with g_object_unref().
+<return> %TRUE if blocking I/O is used, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_file_input_stream_query_info">
+<function name="g_socket_get_credentials">
 <description>
-Queries a file input stream the given @attributes. This function blocks 
-while querying the stream. For the asynchronous (non-blocking) version 
-of this function, see g_file_input_stream_query_info_async(). While the 
-stream is blocked, the stream will set the pending flag internally, and 
-any other operations on the stream will fail with %G_IO_ERROR_PENDING.
+Returns the credentials of the foreign process connected to this
+socket, if any (e.g. it is only supported for %G_SOCKET_FAMILY_UNIX
+sockets).
 
+If this operation isn't supported on the OS, the method fails with
+the %G_IO_ERROR_NOT_SUPPORTED error. On Linux this is implemented
+by reading the %SO_PEERCRED option on the underlying socket.
+
+Other ways to obtain credentials from a foreign peer includes the
+#GUnixCredentialsMessage type and
+g_unix_connection_send_credentials() /
+g_unix_connection_receive_credentials() functions.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GFileInputStream.
-</parameter_description>
-</parameter>
-<parameter name="attributes">
-<parameter_description> a file attribute query string.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileInfo, or %NULL on error.
+<return> %NULL if @error is set, otherwise a #GCredentials object
+that must be freed with g_object_unref().
+
 </return>
 </function>
 
-<function name="g_file_info_get_symlink_target">
+<function name="g_socket_get_family">
 <description>
-Gets the symlink target for a given #GFileInfo.
+Gets the socket family of the socket.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the symlink target.
+<return> a #GSocketFamily
+
 </return>
 </function>
 
-<function name="g_unix_mount_guess_name">
+<function name="g_socket_get_fd">
 <description>
-Guesses the name of a Unix mount. 
-The result is a translated string.
+Returns the underlying OS socket object. On unix this
+is a socket file descriptor, and on windows this is
+a Winsock2 SOCKET handle. This may be useful for
+doing platform specific or otherwise unusual operations
+on the socket.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMountEntry
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly allocated string that must
-be freed with g_free()
+<return> the file descriptor of the socket.
+
 </return>
 </function>
 
-<function name="g_simple_async_result_run_in_thread">
+<function name="g_socket_get_keepalive">
 <description>
-Runs the asynchronous job in a separate thread and then calls
-g_simple_async_result_complete_in_idle() on @simple to return
-the result to the appropriate main loop.
+Gets the keepalive mode of the socket. For details on this,
+see g_socket_set_keepalive().
 
-Calling this function takes a reference to @simple for as long as
-is needed to run the job and report its completion.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> a #GSimpleAsyncThreadFunc.
+</parameters>
+<return> %TRUE if keepalive is active, %FALSE otherwise.
+
+</return>
+</function>
+
+<function name="g_socket_get_listen_backlog">
+<description>
+Gets the listen backlog setting of the socket. For details on this,
+see g_socket_set_listen_backlog().
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the io priority of the request.
+</parameters>
+<return> the maximum number of pending connections.
+
+</return>
+</function>
+
+<function name="g_socket_get_local_address">
+<description>
+Try to get the local address of a bound socket. This is only
+useful if the socket has been bound to a local address,
+either explicitly or implicitly when connecting.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSocketAddress or %NULL on error.
+Free the returned object with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_file_load_contents_async">
+<function name="g_socket_get_protocol">
 <description>
-Starts an asynchronous load of the @file's contents.
-
-For more details, see g_file_load_contents() which is
-the synchronous version of this call.
-
-When the load operation has completed, @callback will be called 
-with @user data. To finish the operation, call 
-g_file_load_contents_finish() with the #GAsyncResult returned by 
-the @callback.
+Gets the socket protocol id the socket was created with.
+In case the protocol is unknown, -1 is returned.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameters>
+<return> a protocol id, or -1 if unknown
+
+</return>
+</function>
+
+<function name="g_socket_get_remote_address">
+<description>
+Try to get the remove address of a connected socket. This is only
+useful for connection oriented sockets that have been connected.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSocketAddress or %NULL on error.
+Free the returned object with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_output_stream_write">
+<function name="g_socket_get_socket_type">
 <description>
-Tries to write @count bytes from @buffer into the stream. Will block
-during the operation.
+Gets the socket type of the socket.
 
-If count is zero returns zero and does nothing. A value of @count
-larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
+Since: 2.22
 
-On success, the number of bytes written to the stream is returned.
-It is not an error if this is not the same as the requested size, as it
-can happen e.g. on a partial i/o error, or if there is not enough
-storage in the stream. All writes either block until at least one byte
-is written, so zero is never returned (unless @count is zero).
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GSocketType
 
-If @cancellable is not NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error G_IO_ERROR_CANCELLED will be returned. If an
-operation was partially finished when the operation was cancelled the
-partial result will be returned, without an error.
+</return>
+</function>
 
-On error -1 is returned and @error is set accordingly.
+<function name="g_socket_get_timeout">
+<description>
+Gets the timeout setting of the socket. For details on this, see
+g_socket_set_timeout().
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> the buffer containing the data to write. 
+</parameters>
+<return> the timeout in seconds
+
+</return>
+</function>
+
+<function name="g_socket_is_closed">
+<description>
+Checks whether a socket is closed.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> the number of bytes to write
+</parameters>
+<return> %TRUE if socket is closed, %FALSE otherwise
+
+</return>
+</function>
+
+<function name="g_socket_is_connected">
+<description>
+Check whether the socket is connected. This is only useful for
+connection-oriented sockets.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional cancellable object
+</parameters>
+<return> %TRUE if socket is connected, %FALSE otherwise.
+
+</return>
+</function>
+
+<function name="g_socket_listen">
+<description>
+Marks the socket as a server socket, i.e. a socket that is used
+to accept incoming requests using g_socket_accept().
+
+Before calling this the socket must be bound to a local address using
+g_socket_bind().
+
+To set the maximum amount of outstanding clients, use
+g_socket_set_listen_backlog().
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes written, or -1 on error
+<return> %TRUE on success, %FALSE on error.
+
 </return>
 </function>
 
@@ -25097,136 +27759,96 @@ Since: 2.22
 </return>
 </function>
 
-<function name="g_dbus_connection_call_sync">
+<function name="g_socket_listener_accept_async">
 <description>
-Synchronously invokes the @method_name method on the
- interface_name D-Bus interface on the remote object at
- object_path owned by @bus_name.
-
-If @connection is closed then the operation will fail with
-%G_IO_ERROR_CLOSED. If @cancellable is canceled, the
-operation will fail with %G_IO_ERROR_CANCELLED. If @parameters
-contains a value not compatible with the D-Bus protocol, the operation
-fails with %G_IO_ERROR_INVALID_ARGUMENT.
-
-If @reply_type is non-%NULL then the reply will be checked for having
-this type and an error will be raised if it does not match.  Said
-another way, if you give a @reply_type then any non-%NULL return
-value will be of this type.
-
-If the @parameters #GVariant is floating, it is consumed.
-This allows convenient 'inline' use of g_variant_new(), e.g.:
-|[
-g_dbus_connection_call_sync (connection,
-&quot;org.freedesktop.StringThings&quot;,
-&quot;/org/freedesktop/StringThings&quot;,
-&quot;org.freedesktop.StringThings&quot;,
-&quot;TwoStrings&quot;,
-g_variant_new (&quot;(ss)&quot;,
-&quot;Thing One&quot;,
-&quot;Thing Two&quot;),
-NULL,
-G_DBUS_CALL_FLAGS_NONE,
--1,
-NULL,
-&amp;error);
-]|
+This is the asynchronous version of g_socket_listener_accept().
 
-The calling thread is blocked until a reply is received. See
-g_dbus_connection_call() for the asynchronous version of
-this method.
+When the operation is finished @callback will be
+called. You can then call g_socket_listener_accept_socket()
+to get the result of the operation.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
-</parameter_description>
-</parameter>
-<parameter name="bus_name">
-<parameter_description> A unique or well-known bus name.
-</parameter_description>
-</parameter>
-<parameter name="object_path">
-<parameter_description> Path of remote object.
-</parameter_description>
-</parameter>
-<parameter name="interface_name">
-<parameter_description> D-Bus interface to invoke method on.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="method_name">
-<parameter_description> The name of the method to invoke.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> A #GVariant tuple with parameters for the method or %NULL if not passing parameters.
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
 </parameter_description>
 </parameter>
-<parameter name="reply_type">
-<parameter_description> The expected type of the reply, or %NULL.
+<parameter name="user_data">
+<parameter_description> user data for the callback
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags from the #GDBusCallFlags enumeration.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_socket_listener_accept_finish">
+<description>
+Finishes an async accept operation. See g_socket_listener_accept_async()
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="timeout_msec">
-<parameter_description> The timeout in milliseconds or -1 to use the default timeout.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+<parameter name="source_object">
+<parameter_description> Optional #GObject identifying this source
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return location for error or %NULL.
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if @error is set. Otherwise a #GVariant tuple with
-return values. Free with g_variant_unref().
+<return> a #GSocketConnection on success, %NULL on error.
 
 </return>
 </function>
 
-<function name="g_vfs_get_supported_uri_schemes">
+<function name="g_socket_listener_accept_socket">
 <description>
-Gets a list of URI schemes supported by @vfs.
-
+Blocks waiting for a client to connect to any of the sockets added
+to the listener. Returns the #GSocket that was accepted.
 
-</description>
-<parameters>
-<parameter name="vfs">
-<parameter_description> a #GVfs.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a %NULL-terminated array of strings.
-The returned array belongs to GIO and must 
-not be freed or modified.
-</return>
-</function>
+If you want to accept the high-level #GSocketConnection, not a #GSocket,
+which is often the case, then you should use g_socket_listener_accept()
+instead.
 
-<function name="g_file_monitor_file">
-<description>
-Obtains a file monitor for the given file. If no file notification
-mechanism exists, then regular polling of the file is used.
+If @source_object is not %NULL it will be filled out with the source
+object specified when the corresponding socket or address was added
+to the listener.
 
 If @cancellable is not %NULL, then the operation can be cancelled by
 triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileMonitorFlags.
+<parameter name="source_object">
+<parameter_description> location where #GObject pointer will be stored, or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -25234,487 +27856,472 @@ was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL.
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileMonitor for the given @file, or %NULL on error.
-Free the returned object with g_object_unref().
+<return> a #GSocket on success, %NULL on error.
+
 </return>
 </function>
 
-<function name="g_settings_new_with_backend">
+<function name="g_socket_listener_accept_socket_async">
 <description>
-Creates a new #GSettings object with a given schema and backend.
+This is the asynchronous version of g_socket_listener_accept_socket().
 
-Creating settings objects with an different backend allows accessing settings
-from a database other than the usual one.  For example, it may make
-sense to pass a backend corresponding to the &quot;defaults&quot; settings database on
-the system to get a settings object that modifies the system default
-settings instead of the settings for this user.
+When the operation is finished @callback will be
+called. You can then call g_socket_listener_accept_socket_finish()
+to get the result of the operation.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="schema">
-<parameter_description> the name of the schema
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="backend">
-<parameter_description> the #GSettingsBackend to use
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data for the callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSettings object
-</return>
+<return></return>
 </function>
 
-<function name="g_input_stream_close">
+<function name="g_socket_listener_accept_socket_finish">
 <description>
-Closes the stream, releasing resources related to it.
-
-Once the stream is closed, all other operations will return %G_IO_ERROR_CLOSED.
-Closing a stream multiple times will not return an error.
-
-Streams will be automatically closed when the last reference
-is dropped, but you might want to call this function to make sure 
-resources are released as early as possible.
-
-Some streams might keep the backing store of the stream (e.g. a file descriptor)
-open after the stream is closed. See the documentation for the individual
-stream for details.
-
-On failure the first error that happened will be reported, but the close
-operation will finish as much as possible. A stream that failed to
-close will still return %G_IO_ERROR_CLOSED for all operations. Still, it
-is important to check and report the error to the user.
-
-If @cancellable is not NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
-Cancelling a close will still leave the stream closed, but some streams
-can use a faster close that doesn't block to e.g. check errors. 
+Finishes an async accept operation. See g_socket_listener_accept_socket_async()
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> A #GInputStream.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="source_object">
+<parameter_description> Optional #GObject identifying this source
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on failure
+<return> a #GSocket on success, %NULL on error.
+
 </return>
 </function>
 
-<function name="g_file_move">
+<function name="g_socket_listener_add_address">
 <description>
-Tries to move the file or directory @source to the location specified by @destination.
-If native move operations are supported then this is used, otherwise a copy + delete
-fallback is used. The native implementation may support moving directories (for instance
-on moves inside the same filesystem), but the fallback code does not.
-
-If the flag #G_FILE_COPY_OVERWRITE is specified an already
-existing @destination file is overwritten.
-
-If the flag #G_FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks
-will be copied as symlinks, otherwise the target of the
- source symlink will be copied.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
-
-If @progress_callback is not %NULL, then the operation can be monitored by
-setting this to a #GFileProgressCallback function. @progress_callback_data
-will be passed to this function. It is guaranteed that this callback will
-be called after all data has been transferred with the total number of bytes
-copied during the operation.
-
-If the @source file does not exist then the G_IO_ERROR_NOT_FOUND
-error is returned, independent on the status of the @destination.
+Creates a socket of type @type and protocol @protocol, binds
+it to @address and adds it to the set of sockets we're accepting
+sockets from.
 
-If #G_FILE_COPY_OVERWRITE is not specified and the target exists, then the
-error G_IO_ERROR_EXISTS is returned.
+Note that adding an IPv6 address, depending on the platform,
+may or may not result in a listener that also accepts IPv4
+connections.  For more determinstic behaviour, see
+g_socket_listener_add_inet_port().
 
-If trying to overwrite a file over a directory the G_IO_ERROR_IS_DIRECTORY
-error is returned. If trying to overwrite a directory with a directory the
-G_IO_ERROR_WOULD_MERGE error is returned.
+ source_object will be passed out in the various calls
+to accept to identify this particular source, which is
+useful if you're listening on multiple addresses and do
+different things depending on what address is connected to.
 
-If the source is a directory and the target does not exist, or #G_FILE_COPY_OVERWRITE is
-specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error
-may be returned (if the native move operation isn't available).
+If successful and @effective_address is non-%NULL then it will
+be set to the address that the binding actually occured at.  This
+is helpful for determining the port number that was used for when
+requesting a binding to port 0 (ie: &quot;any port&quot;).  This address, if
+requested, belongs to the caller and must be freed.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> #GFile pointing to the source location.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="destination">
-<parameter_description> #GFile pointing to the destination location.
+<parameter name="address">
+<parameter_description> a #GSocketAddress
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> set of #GFileCopyFlags.
+<parameter name="type">
+<parameter_description> a #GSocketType
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="protocol">
+<parameter_description> a #GSocketProtocol
 </parameter_description>
 </parameter>
-<parameter name="progress_callback">
-<parameter_description> #GFileProgressCallback function for updates.
+<parameter name="source_object">
+<parameter_description> Optional #GObject identifying this source
 </parameter_description>
 </parameter>
-<parameter name="progress_callback_data">
-<parameter_description> gpointer to user data for the callback function.
+<parameter name="effective_address">
+<parameter_description> location to store the address that was bound to, or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for returning error conditions, or %NULL
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on successful move, %FALSE otherwise.
+<return> %TRUE on success, %FALSE on error.
+
 </return>
 </function>
 
-<function name="g_socket_connection_get_local_address">
+<function name="g_socket_listener_add_any_inet_port">
 <description>
-Try to get the local address of a socket connection.
+Listens for TCP connections on any available port number for both
+IPv6 and IPv4 (if each are available).
 
-Since: 2.22
+This is useful if you need to have a socket for incoming connections
+but don't care about the specific port number.
+
+ source_object will be passed out in the various calls
+to accept to identify this particular source, which is
+useful if you're listening on multiple addresses and do
+different things depending on what address is connected to.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GSocketConnection
+<parameter name="listener">
+<parameter_description> a #GSocketListener
+</parameter_description>
+</parameter>
+<parameter name="source_object">
+<parameter_description> Optional #GObject identifying this source
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter_description> a #GError location to store the error occuring, or %NULL to
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress or %NULL on error.
-Free the returned object with g_object_unref().
+<return> the port number, or 0 in case of failure.
 
 </return>
 </function>
 
-<function name="g_inet_address_get_is_mc_link_local">
+<function name="g_socket_listener_add_inet_port">
 <description>
-Tests whether @address is a link-local multicast address.
+Helper function for g_socket_listener_add_address() that
+creates a TCP/IP socket listening on IPv4 and IPv6 (if
+supported) on the specified port on all interfaces.
+
+ source_object will be passed out in the various calls
+to accept to identify this particular source, which is
+useful if you're listening on multiple addresses and do
+different things depending on what address is connected to.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="listener">
+<parameter_description> a #GSocketListener
+</parameter_description>
+</parameter>
+<parameter name="port">
+<parameter_description> an IP port number (non-zero)
+</parameter_description>
+</parameter>
+<parameter name="source_object">
+<parameter_description> Optional #GObject identifying this source
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is a link-local multicast address.
+<return> %TRUE on success, %FALSE on error.
 
 </return>
 </function>
 
-<function name="g_buffered_output_stream_new">
+<function name="g_socket_listener_add_socket">
 <description>
-Creates a new buffered output stream for a base stream.
+Adds @socket to the set of sockets that we try to accept
+new clients from. The socket must be bound to a local
+address and listened to.
 
+ source_object will be passed out in the various calls
+to accept to identify this particular source, which is
+useful if you're listening on multiple addresses and do
+different things depending on what address is connected to.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="base_stream">
-<parameter_description> a #GOutputStream.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
+</parameter_description>
+</parameter>
+<parameter name="socket">
+<parameter_description> a listening #GSocket
+</parameter_description>
+</parameter>
+<parameter name="source_object">
+<parameter_description> Optional #GObject identifying this source
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GOutputStream for the given @base_stream.
+<return> %TRUE on success, %FALSE on error.
+
 </return>
 </function>
 
-<function name="g_file_info_get_edit_name">
+<function name="g_socket_listener_close">
 <description>
-Gets the edit name for a file.
+Closes all the sockets in the listener.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the edit name.
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_address_get_stream">
+<function name="g_socket_listener_new">
 <description>
-Asynchronously connects to an endpoint specified by @address and
-sets up the connection so it is in a state to run the client-side
-of the D-Bus authentication conversation.
-
-When the operation is finished, @callback will be invoked. You can
-then call g_dbus_address_get_stream_finish() to get the result of
-the operation.
-
-This is an asynchronous failable function. See
-g_dbus_address_get_stream_sync() for the synchronous version.
+Creates a new #GSocketListener with no sockets to listen for.
+New listeners can be added with e.g. g_socket_listener_add_address()
+or g_socket_listener_add_inet_port().
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> A valid D-Bus address.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> A #GAsyncReadyCallback to call when the request is satisfied.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> Data to pass to @callback.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a new #GSocketListener.
+
+</return>
 </function>
 
-<function name="g_mount_operation_set_username">
+<function name="g_socket_listener_set_backlog">
 <description>
-Sets the user name within @op to @username.
+Sets the listen backlog on the sockets in the listener.
+
+See g_socket_set_listen_backlog() for details
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="listener">
+<parameter_description> a #GSocketListener
 </parameter_description>
 </parameter>
-<parameter name="username">
-<parameter_description> input username.
+<parameter name="listen_backlog">
+<parameter_description> an integer
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_srv_target_new">
+<function name="g_socket_new">
 <description>
-Creates a new #GSrvTarget with the given parameters.
+Creates a new #GSocket with the defined family, type and protocol.
+If @protocol is 0 (%G_SOCKET_PROTOCOL_DEFAULT) the default protocol type
+for the family and type is used.
 
-You should not need to use this; normally #GSrvTarget&lt;!-- --&gt;s are
-created by #GResolver.
+The @protocol is a family and type specific int that specifies what
+kind of protocol to use. #GSocketProtocol lists several common ones.
+Many families only support one protocol, and use 0 for this, others
+support several and using 0 means to use the default protocol for
+the family and type.
+
+The protocol id is passed directly to the operating
+system, so you can use protocols not listed in #GSocketProtocol if you
+know the protocol number used for it.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="hostname">
-<parameter_description> the host that the service is running on
+<parameter name="family">
+<parameter_description> the socket family to use, e.g. %G_SOCKET_FAMILY_IPV4.
 </parameter_description>
 </parameter>
-<parameter name="port">
-<parameter_description> the port that the service is running on
+<parameter name="type">
+<parameter_description> the socket type to use.
 </parameter_description>
 </parameter>
-<parameter name="priority">
-<parameter_description> the target's priority
+<parameter name="protocol">
+<parameter_description> the id of the protocol to use, or 0 for default.
 </parameter_description>
 </parameter>
-<parameter name="weight">
-<parameter_description> the target's weight
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSrvTarget.
+<return> a #GSocket or %NULL on error.
+Free the returned object with g_object_unref().
 
 </return>
 </function>
 
-<function name="g_file_enumerator_close_async">
+<function name="g_socket_new_from_fd">
 <description>
-Asynchronously closes the file enumerator. 
+Creates a new #GSocket from a native file descriptor
+or winsock SOCKET handle.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned in 
-g_file_enumerator_close_finish(). 
+This reads all the settings from the file descriptor so that
+all properties should work. Note that the file descriptor
+will be set to non-blocking mode, independent on the blocking
+mode of the #GSocket.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator.
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="fd">
+<parameter_description> a native socket file descriptor.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSocket or %NULL on error.
+Free the returned object with g_object_unref().
+
+</return>
 </function>
 
-<function name="g_filename_completer_get_completion_suffix">
+<function name="g_socket_receive">
 <description>
-Obtains a completion for @initial_text from @completer.
+Receive data (up to @size bytes) from a socket. This is mainly used by
+connection-oriented sockets; it is identical to g_socket_receive_from()
+with @address set to %NULL.
 
+For %G_SOCKET_TYPE_DATAGRAM and %G_SOCKET_TYPE_SEQPACKET sockets,
+g_socket_receive() will always read either 0 or 1 complete messages from
+the socket. If the received message is too large to fit in @buffer, then
+the data beyond @size bytes will be discarded, without any explicit
+indication that this has occurred.
 
-</description>
-<parameters>
-<parameter name="completer">
-<parameter_description> the filename completer.
-</parameter_description>
-</parameter>
-<parameter name="initial_text">
-<parameter_description> text to be completed.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a completed string, or %NULL if no completion exists. 
-This string is not owned by GIO, so remember to g_free() it 
-when finished.
-</return>
-</function>
+For %G_SOCKET_TYPE_STREAM sockets, g_socket_receive() can return any
+number of bytes, up to @size. If more than @size bytes have been
+received, the additional data will be returned in future calls to
+g_socket_receive().
 
-<function name="g_output_stream_splice">
-<description>
-Splices an input stream into an output stream.
+If the socket is in blocking mode the call will block until there is
+some data to receive or there is an error. If there is no data available
+and the socket is in non-blocking mode, a %G_IO_ERROR_WOULD_BLOCK error
+will be returned. To be notified when data is available, wait for the
+%G_IO_IN condition.
 
+On error -1 is returned and @error is set accordingly.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="source">
-<parameter_description> a #GInputStream.
+<parameter name="buffer">
+<parameter_description> a buffer to read data into (which should be at least @size
+bytes long).
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GOutputStreamSpliceFlags.
+<parameter name="size">
+<parameter_description> the number of bytes you want to read from the socket
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter_description> a %GCancellable or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gssize containing the size of the data spliced, or
--1 if an error occurred.
+<return> Number of bytes read, or -1 on error
+
 </return>
 </function>
 
-<function name="g_input_stream_read_finish">
+<function name="g_socket_receive_from">
 <description>
-Finishes an asynchronous stream read operation. 
+Receive data (up to @size bytes) from a socket.
+
+If @address is non-%NULL then @address will be set equal to the
+source address of the received packet.
+ address is owned by the caller.
 
+See g_socket_receive() for additional information.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GInputStream.
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="address">
+<parameter_description> a pointer to a #GSocketAddress pointer, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+<parameter name="buffer">
+<parameter_description> a buffer to read data into (which should be at least @size
+bytes long).
 </parameter_description>
 </parameter>
-</parameters>
-<return> number of bytes read in, or -1 on error.
-</return>
-</function>
-
-<function name="g_file_read">
-<description>
-Opens a file for reading. The result is a #GFileInputStream that
-can be used to read the contents of the file.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
-
-If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
-If the file is a directory, the G_IO_ERROR_IS_DIRECTORY error will be returned.
-Other errors are possible too, and depend on what kind of filesystem the file is on.
-
-
-</description>
-<parameters>
-<parameter name="file">
-<parameter_description> #GFile to read.
+<parameter name="size">
+<parameter_description> the number of bytes you want to read from the socket
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
-<parameter_description> a #GCancellable
+<parameter_description> a %GCancellable or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileInputStream or %NULL on error.
-Free the returned object with g_object_unref().
-</return>
-</function>
-
-<function name="g_app_info_dup">
-<description>
-Creates a duplicate of a #GAppInfo.
-
+<return> Number of bytes read, or -1 on error
 
-</description>
-<parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a duplicate of @appinfo.
 </return>
 </function>
 
@@ -25798,8 +28405,8 @@ Since: 2.22
 </parameter_description>
 </parameter>
 <parameter name="messages">
-<parameter_description> a pointer which may be filled with an array of
-#GSocketControlMessages, or %NULL
+<parameter_description> a pointer which
+may be filled with an array of #GSocketControlMessages, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="num_messages">
@@ -25825,884 +28432,1566 @@ elements in @messages, or %NULL
 </return>
 </function>
 
-<function name="g_srv_target_copy">
+<function name="g_socket_receive_with_blocking">
 <description>
-Copies @target
+This behaves exactly the same as g_socket_receive(), except that
+the choice of blocking or non-blocking behavior is determined by
+the @blocking argument rather than by @socket's properties.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GSrvTarget
+<parameter name="socket">
+<parameter_description> a #GSocket
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> a buffer to read data into (which should be at least @size
+bytes long).
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes you want to read from the socket
+</parameter_description>
+</parameter>
+<parameter name="blocking">
+<parameter_description> whether to do blocking or non-blocking I/O
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a copy of @target
+<return> Number of bytes read, or -1 on error
 
 </return>
 </function>
 
-<function name="g_inet_address_get_is_mc_site_local">
+<function name="g_socket_send">
 <description>
-Tests whether @address is a site-local multicast address.
+Tries to send @size bytes from @buffer on the socket. This is
+mainly used by connection-oriented sockets; it is identical to
+g_socket_send_to() with @address set to %NULL.
+
+If the socket is in blocking mode the call will block until there is
+space for the data in the socket queue. If there is no space available
+and the socket is in non-blocking mode a %G_IO_ERROR_WOULD_BLOCK error
+will be returned. To be notified when space is available, wait for the
+%G_IO_OUT condition. Note though that you may still receive
+%G_IO_ERROR_WOULD_BLOCK from g_socket_send() even if you were previously
+notified of a %G_IO_OUT condition. (On Windows in particular, this is
+very common due to the way the underlying APIs work.)
+
+On error -1 is returned and @error is set accordingly.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GInetAddress
+<parameter name="socket">
+<parameter_description> a #GSocket
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> the buffer containing the data to send.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes to send
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @address is a site-local multicast address.
+<return> Number of bytes written (which may be less than @size), or -1
+on error
 
 </return>
 </function>
 
-<function name="g_content_type_from_mime_type">
+<function name="g_socket_send_message">
 <description>
-Tries to find a content type based on the mime type name.
+Send data to @address on @socket.  This is the most complicated and
+fully-featured version of this call. For easier use, see
+g_socket_send() and g_socket_send_to().
 
-Since: 2.18
+If @address is %NULL then the message is sent to the default receiver
+(set by g_socket_connect()).
 
-</description>
-<parameters>
-<parameter name="mime_type">
-<parameter_description> a mime type string
-</parameter_description>
-</parameter>
-</parameters>
-<return> Newly allocated string with content type
-or %NULL. Free with g_free()
+ vectors must point to an array of #GOutputVector structs and
+ num_vectors must be the length of this array. (If @num_vectors is -1,
+then @vectors is assumed to be terminated by a #GOutputVector with a
+%NULL buffer pointer.) The #GOutputVector structs describe the buffers
+that the sent data will be gathered from. Using multiple
+#GOutputVector&lt;!-- --&gt;s is more memory-efficient than manually copying
+data from multiple sources into a single buffer, and more
+network-efficient than making multiple calls to g_socket_send().
 
-</return>
-</function>
+ messages, if non-%NULL, is taken to point to an array of @num_messages
+#GSocketControlMessage instances. These correspond to the control
+messages to be sent on the socket.
+If @num_messages is -1 then @messages is treated as a %NULL-terminated
+array.
 
-<function name="g_simple_async_result_propagate_error">
-<description>
-Propagates an error from within the simple asynchronous result to
-a given destination.
+ flags modify how the message is sent. The commonly available arguments
+for this are available in the #GSocketMsgFlags enum, but the
+values there are the same as the system values, and the flags
+are passed in as-is, so you can pass in system-specific flags too.
 
+If the socket is in blocking mode the call will block until there is
+space for the data in the socket queue. If there is no space available
+and the socket is in non-blocking mode a %G_IO_ERROR_WOULD_BLOCK error
+will be returned. To be notified when space is available, wait for the
+%G_IO_OUT condition. Note though that you may still receive
+%G_IO_ERROR_WOULD_BLOCK from g_socket_send() even if you were previously
+notified of a %G_IO_OUT condition. (On Windows in particular, this is
+very common due to the way the underlying APIs work.)
+
+On error -1 is returned and @error is set accordingly.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="simple">
-<parameter_description> a #GSimpleAsyncResult.
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="dest">
-<parameter_description> a location to propegate the error to.
+<parameter name="address">
+<parameter_description> a #GSocketAddress, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> an array of #GOutputVector structs
+</parameter_description>
+</parameter>
+<parameter name="num_vectors">
+<parameter_description> the number of elements in @vectors, or -1
+</parameter_description>
+</parameter>
+<parameter name="messages">
+<parameter_description> a pointer to an
+array of #GSocketControlMessages, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="num_messages">
+<parameter_description> number of elements in @messages, or -1.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> an int containing #GSocketMsgFlags flags
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the error was propagated to @dest. %FALSE otherwise.
+<return> Number of bytes written (which may be less than @size), or -1
+on error
+
 </return>
 </function>
 
-<function name="g_file_replace_readwrite_finish">
+<function name="g_socket_send_to">
 <description>
-Finishes an asynchronous file replace operation started with
-g_file_replace_readwrite_async().
+Tries to send @size bytes from @buffer to @address. If @address is
+%NULL then the message is sent to the default receiver (set by
+g_socket_connect()).
+
+See g_socket_send() for additional information.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult.
+<parameter name="address">
+<parameter_description> a #GSocketAddress, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> the buffer containing the data to send.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes to send
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileIOStream, or %NULL on error.
-Free the returned object with g_object_unref().
+<return> Number of bytes written (which may be less than @size), or -1
+on error
 
 </return>
 </function>
 
-<function name="g_permission_acquire_finish">
+<function name="g_socket_send_with_blocking">
 <description>
-Collects the result of attempting to acquire the permission
-represented by @permission.
-
-This is the second half of the asynchronous version of
-g_permission_acquire().
+This behaves exactly the same as g_socket_send(), except that
+the choice of blocking or non-blocking behavior is determined by
+the @blocking argument rather than by @socket's properties.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="permission">
-<parameter_description> a #GPermission instance
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> the #GAsyncResult given to the #GAsyncReadyCallback
+<parameter name="buffer">
+<parameter_description> the buffer containing the data to send.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes to send
+</parameter_description>
+</parameter>
+<parameter name="blocking">
+<parameter_description> whether to do blocking or non-blocking I/O
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a pointer to a %NULL #GError, or %NULL
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the permission was successfully acquired
+<return> Number of bytes written (which may be less than @size), or -1
+on error
+
 </return>
 </function>
 
-<function name="g_dbus_message_get_reply_serial">
+<function name="g_socket_service_is_active">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL header field.
+Check whether the service is active or not. An active
+service will accept new clients that connect, while
+a non-active service will let connecting clients queue
+up until the service is started.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="service">
+<parameter_description> a #GSocketService
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
+<return> %TRUE if the service is active, %FALSE otherwise
 
 </return>
 </function>
 
-<function name="g_app_launch_context_get_display">
+<function name="g_socket_service_new">
 <description>
-Gets the display string for the @context. This is used to ensure new
-applications are started on the same display as the launching
-application, by setting the &lt;envvar&gt;DISPLAY&lt;/envvar&gt; environment variable.
+Creates a new #GSocketService with no sockets to listen for.
+New listeners can be added with e.g. g_socket_listener_add_address()
+or g_socket_listener_add_inet_port().
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GAppLaunchContext
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> a #GAppInfo
-</parameter_description>
-</parameter>
-<parameter name="files">
-<parameter_description> a #GList of #GFile objects
-</parameter_description>
-</parameter>
 </parameters>
-<return> a display string for the display.
+<return> a new #GSocketService.
+
 </return>
 </function>
 
-<function name="g_desktop_app_info_get_is_hidden">
+<function name="g_socket_service_start">
 <description>
-A desktop file is hidden if the Hidden key in it is
-set to True.
+Starts the service, i.e. start accepting connections
+from the added sockets when the mainloop runs.
 
+This call is threadsafe, so it may be called from a thread
+handling an incomming client request.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GDesktopAppInfo.
+<parameter name="service">
+<parameter_description> a #GSocketService
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if hidden, %FALSE otherwise. 
-</return>
+<return></return>
 </function>
 
-<function name="g_io_modules_scan_all_in_directory">
+<function name="g_socket_service_stop">
 <description>
-Scans all the modules in the specified directory, ensuring that
-any extension point implemented by a module is registered.
-
-This may not actually load and initialize all the types in each
-module, some modules may be lazily loaded and initialized when
-an extension point it implementes is used with e.g.
-g_io_extension_point_get_extensions() or
-g_io_extension_point_get_extension_by_name().
+Stops the service, i.e. stops accepting connections
+from the added sockets when the mainloop runs.
 
-If you need to guarantee that all types are loaded in all the modules,
-use g_io_modules_scan_all_in_directory().
+This call is threadsafe, so it may be called from a thread
+handling an incomming client request.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="dirname">
-<parameter_description> pathname for a directory containing modules to scan.
+<parameter name="service">
+<parameter_description> a #GSocketService
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_win32_output_stream_get_close_handle">
+<function name="g_socket_set_blocking">
 <description>
-Returns whether the handle of @stream will be closed when the
-stream is closed.
+Sets the blocking mode of the socket. In blocking mode
+all operations block until they succeed or there is an error. In
+non-blocking mode all functions return results immediately or
+with a %G_IO_ERROR_WOULD_BLOCK error.
 
-Since: 2.26
+All sockets are created in blocking mode. However, note that the
+platform level socket is always non-blocking, and blocking mode
+is a GSocket level feature.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GWin32OutputStream
+<parameter name="socket">
+<parameter_description> a #GSocket.
+</parameter_description>
+</parameter>
+<parameter name="blocking">
+<parameter_description> Whether to use blocking I/O or not.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the handle is closed when done
+<return></return>
+</function>
 
-</return>
+<function name="g_socket_set_keepalive">
+<description>
+Sets or unsets the %SO_KEEPALIVE flag on the underlying socket. When
+this flag is set on a socket, the system will attempt to verify that the
+remote socket endpoint is still present if a sufficiently long period of
+time passes with no data being exchanged. If the system is unable to
+verify the presence of the remote endpoint, it will automatically close
+the connection.
+
+This option is only functional on certain kinds of sockets. (Notably,
+%G_SOCKET_PROTOCOL_TCP sockets.)
+
+The exact time between pings is system- and protocol-dependent, but will
+normally be at least two hours. Most commonly, you would set this flag
+on a server socket if you want to allow clients to remain idle for long
+periods of time, but also want to ensure that connections are eventually
+garbage-collected if clients crash or become unreachable.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket.
+</parameter_description>
+</parameter>
+<parameter name="keepalive">
+<parameter_description> Value for the keepalive flag
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
 </function>
 
-<function name="g_socket_service_stop">
+<function name="g_socket_set_listen_backlog">
 <description>
-Stops the service, i.e. stops accepting connections
-from the added sockets when the mainloop runs.
+Sets the maximum number of outstanding connections allowed
+when listening on this socket. If more clients than this are
+connecting to the socket and the application is not handling them
+on time then the new connections will be refused.
 
-This call is threadsafe, so it may be called from a thread
-handling an incomming client request.
+Note that this must be called before g_socket_listen() and has no
+effect if called after that.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="service">
-<parameter_description> a #GSocketService
+<parameter name="socket">
+<parameter_description> a #GSocket.
+</parameter_description>
+</parameter>
+<parameter name="backlog">
+<parameter_description> the maximum number of pending connections.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_application_set_action_enabled">
+<function name="g_socket_set_timeout">
 <description>
-Sets whether the action @name inside @application should be enabled
-or disabled.
+Sets the time in seconds after which I/O operations on @socket will
+time out if they have not yet completed.
+
+On a blocking socket, this means that any blocking #GSocket
+operation will time out after @timeout seconds of inactivity,
+returning %G_IO_ERROR_TIMED_OUT.
 
-It is an error to call this function if @application is a proxy for
-a remote application.
+On a non-blocking socket, calls to g_socket_condition_wait() will
+also fail with %G_IO_ERROR_TIMED_OUT after the given time. Sources
+created with g_socket_create_source() will trigger after
+ timeout seconds of inactivity, with the requested condition
+set, at which point calling g_socket_receive(), g_socket_send(),
+g_socket_check_connect_result(), etc, will fail with
+%G_IO_ERROR_TIMED_OUT.
+
+If @timeout is 0 (the default), operations will never time out
+on their own.
 
-Invoking a disabled action will not result in the #GApplication::action
-signal being emitted.
+Note that if an I/O operation is interrupted by a signal, this may
+cause the timeout to be reset.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="application">
-<parameter_description> a #GApplication
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the application
+<parameter name="socket">
+<parameter_description> a #GSocket.
 </parameter_description>
 </parameter>
-<parameter name="enabled">
-<parameter_description> whether to enable or disable the action @name
+<parameter name="timeout">
+<parameter_description> the timeout for @socket, in seconds, or 0 for none
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_eject_mountable_with_operation_finish">
+<function name="g_socket_shutdown">
 <description>
-Finishes an asynchronous eject operation started by
-g_file_eject_mountable_with_operation().
+Shut down part of a full-duplex connection.
+
+If @shutdown_read is %TRUE then the recieving side of the connection
+is shut down, and further reading is disallowed.
+
+If @shutdown_write is %TRUE then the sending side of the connection
+is shut down, and further writing is disallowed.
+
+It is allowed for both @shutdown_read and @shutdown_write to be %TRUE.
+
+One example where this is used is graceful disconnect for TCP connections
+where you close the sending side, then wait for the other side to close
+the connection, thus ensuring that the other side saw all sent data.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="shutdown_read">
+<parameter_description> whether to shut down the read side
+</parameter_description>
+</parameter>
+<parameter name="shutdown_write">
+<parameter_description> whether to shut down the write side
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @file was ejected successfully. %FALSE
-otherwise.
+<return> %TRUE on success, %FALSE on error
 
 </return>
 </function>
 
-<function name="g_settings_new_with_backend_and_path">
+<function name="g_socket_speaks_ipv4">
 <description>
-Creates a new #GSettings object with a given schema, backend and
-path.
+Checks if a socket is capable of speaking IPv4.
 
-This is a mix of g_settings_new_with_backend() and
-g_settings_new_with_path().
+IPv4 sockets are capable of speaking IPv4.  On some operating systems
+and under some combinations of circumstances IPv6 sockets are also
+capable of speaking IPv4.  See RFC 3493 section 3.7 for more
+information.
 
-Since: 2.26
+No other types of sockets are currently considered as being capable
+of speaking IPv4.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="schema">
-<parameter_description> the name of the schema
-</parameter_description>
-</parameter>
-<parameter name="backend">
-<parameter_description> the #GSettingsBackend to use
+<parameter name="socket">
+<parameter_description> a #GSocket
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> the path to use
+</parameters>
+<return> %TRUE if this socket can be used with IPv4.
+
+</return>
+</function>
+
+<function name="g_srv_target_copy">
+<description>
+Copies @target
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GSrvTarget
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSettings object
+<return> a copy of @target
+
 </return>
 </function>
 
-<function name="g_bus_own_name_with_closures">
+<function name="g_srv_target_free">
 <description>
-Version of g_bus_own_name() using closures instead of callbacks for
-easier binding in other languages.
+Frees @target
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> The type of bus to own a name on.
+<parameter name="target">
+<parameter_description> a #GSrvTarget
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> The well-known name to own.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_srv_target_get_hostname">
+<description>
+Gets @target's hostname (in ASCII form; if you are going to present
+this to the user, you should use g_hostname_is_ascii_encoded() to
+check if it contains encoded Unicode segments, and use
+g_hostname_to_unicode() to convert it if it does.)
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GSrvTarget
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> A set of flags from the #GBusNameOwnerFlags enumeration.
+</parameters>
+<return> @target's hostname
+
+</return>
+</function>
+
+<function name="g_srv_target_get_port">
+<description>
+Gets @target's port
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GSrvTarget
 </parameter_description>
 </parameter>
-<parameter name="bus_acquired_closure">
-<parameter_description> #GClosure to invoke when connected to
-the bus of type @bus_type or %NULL.
+</parameters>
+<return> @target's port
+
+</return>
+</function>
+
+<function name="g_srv_target_get_priority">
+<description>
+Gets @target's priority. You should not need to look at this;
+#GResolver already sorts the targets according to the algorithm in
+RFC 2782.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GSrvTarget
 </parameter_description>
 </parameter>
-<parameter name="name_acquired_closure">
-<parameter_description> #GClosure to invoke when @name is
-acquired or %NULL.
+</parameters>
+<return> @target's priority
+
+</return>
+</function>
+
+<function name="g_srv_target_get_weight">
+<description>
+Gets @target's weight. You should not need to look at this;
+#GResolver already sorts the targets according to the algorithm in
+RFC 2782.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GSrvTarget
 </parameter_description>
 </parameter>
-<parameter name="name_lost_closure">
-<parameter_description> #GClosure to invoke when @name is lost or
-%NULL.
+</parameters>
+<return> @target's weight
+
+</return>
+</function>
+
+<function name="g_srv_target_list_sort">
+<description>
+Sorts @targets in place according to the algorithm in RFC 2782.
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="targets">
+<parameter_description> a #GList of #GSrvTarget
 </parameter_description>
 </parameter>
 </parameters>
-<return> An identifier (never 0) that an be used with
-g_bus_unown_name() to stop owning the name.
+<return> the head of the sorted list.
 
 </return>
 </function>
 
-<function name="g_data_output_stream_put_string">
+<function name="g_srv_target_new">
 <description>
-Puts a string into the output stream. 
+Creates a new #GSrvTarget with the given parameters.
+
+You should not need to use this; normally #GSrvTarget&lt;!-- --&gt;s are
+created by #GResolver.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
+<parameter name="hostname">
+<parameter_description> the host that the service is running on
 </parameter_description>
 </parameter>
-<parameter name="str">
-<parameter_description> a string.
+<parameter name="port">
+<parameter_description> the port that the service is running on
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="priority">
+<parameter_description> the target's priority
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+<parameter name="weight">
+<parameter_description> the target's weight
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string was successfully added to the @stream.
+<return> a new #GSrvTarget.
+
 </return>
 </function>
 
-<function name="g_socket_send_message">
+<function name="g_tcp_connection_get_graceful_disconnect">
 <description>
-Send data to @address on @socket.  This is the most complicated and
-fully-featured version of this call. For easier use, see
-g_socket_send() and g_socket_send_to().
-
-If @address is %NULL then the message is sent to the default receiver
-(set by g_socket_connect()).
+Checks if graceful disconnects are used. See
+g_tcp_connection_set_graceful_disconnect().
 
- vectors must point to an array of #GOutputVector structs and
- num_vectors must be the length of this array. (If @num_vectors is -1,
-then @vectors is assumed to be terminated by a #GOutputVector with a
-%NULL buffer pointer.) The #GOutputVector structs describe the buffers
-that the sent data will be gathered from. Using multiple
-#GOutputVector&lt;!-- --&gt;s is more memory-efficient than manually copying
-data from multiple sources into a single buffer, and more
-network-efficient than making multiple calls to g_socket_send().
+Since: 2.22
 
- messages, if non-%NULL, is taken to point to an array of @num_messages
-#GSocketControlMessage instances. These correspond to the control
-messages to be sent on the socket.
-If @num_messages is -1 then @messages is treated as a %NULL-terminated
-array.
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> a #GTcpConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if graceful disconnect is used on close, %FALSE otherwise
 
- flags modify how the message is sent. The commonly available arguments
-for this are available in the #GSocketMsgFlags enum, but the
-values there are the same as the system values, and the flags
-are passed in as-is, so you can pass in system-specific flags too.
+</return>
+</function>
 
-If the socket is in blocking mode the call will block until there is
-space for the data in the socket queue. If there is no space available
-and the socket is in non-blocking mode a %G_IO_ERROR_WOULD_BLOCK error
-will be returned. To be notified when space is available, wait for the
-%G_IO_OUT condition. Note though that you may still receive
-%G_IO_ERROR_WOULD_BLOCK from g_socket_send() even if you were previously
-notified of a %G_IO_OUT condition. (On Windows in particular, this is
-very common due to the way the underlying APIs work.)
+<function name="g_tcp_connection_set_graceful_disconnect">
+<description>
+This enabled graceful disconnects on close. A graceful disconnect
+means that we signal the recieving end that the connection is terminated
+and wait for it to close the connection before closing the connection.
 
-On error -1 is returned and @error is set accordingly.
+A graceful disconnect means that we can be sure that we successfully sent
+all the outstanding data to the other end, or get an error reported.
+However, it also means we have to wait for all the data to reach the
+other side and for it to acknowledge this by closing the socket, which may
+take a while. For this reason it is disabled by default.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket
+<parameter name="connection">
+<parameter_description> a #GTcpConnection
 </parameter_description>
 </parameter>
-<parameter name="address">
-<parameter_description> a #GSocketAddress, or %NULL
+<parameter name="graceful_disconnect">
+<parameter_description> Whether to do graceful disconnects or not
 </parameter_description>
 </parameter>
-<parameter name="vectors">
-<parameter_description> an array of #GOutputVector structs
+</parameters>
+<return></return>
+</function>
+
+<function name="g_tcp_wrapper_connection_get_base_io_stream">
+<description>
+Get's @conn's base #GIOStream
+
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTcpWrapperConnection
 </parameter_description>
 </parameter>
-<parameter name="num_vectors">
-<parameter_description> the number of elements in @vectors, or -1
+</parameters>
+<return> @conn's base #GIOStream
+</return>
+</function>
+
+<function name="g_tcp_wrapper_connection_new">
+<description>
+Wraps @base_io_stream and @socket together as a #GSocketConnection.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="base_io_stream">
+<parameter_description> the #GIOStream to wrap
 </parameter_description>
 </parameter>
-<parameter name="messages">
-<parameter_description> a pointer to an array of #GSocketControlMessages, or
-%NULL.
+<parameter name="socket">
+<parameter_description> the #GSocket associated with @base_io_stream
 </parameter_description>
 </parameter>
-<parameter name="num_messages">
-<parameter_description> number of elements in @messages, or -1.
+</parameters>
+<return> the new #GSocketConnection.
+
+</return>
+</function>
+
+<function name="g_themed_icon_append_name">
+<description>
+Append a name to the list of icons from within @icon.
+
+&lt;note&gt;&lt;para&gt;
+Note that doing so invalidates the hash computed by prior calls
+to g_icon_hash().
+&lt;/para&gt;&lt;/note&gt;
+
+</description>
+<parameters>
+<parameter name="icon">
+<parameter_description> a #GThemedIcon
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> an int containing #GSocketMsgFlags flags
+<parameter name="iconname">
+<parameter_description> name of icon to append to list of icons from within @icon.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+</parameters>
+<return></return>
+</function>
+
+<function name="g_themed_icon_get_names">
+<description>
+Gets the names of icons from within @icon.
+
+
+</description>
+<parameters>
+<parameter name="icon">
+<parameter_description> a #GThemedIcon.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameters>
+<return> a list of icon names.
+</return>
+</function>
+
+<function name="g_themed_icon_new">
+<description>
+Creates a new themed icon for @iconname.
+
+
+</description>
+<parameters>
+<parameter name="iconname">
+<parameter_description> a string containing an icon name.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of bytes written (which may be less than @size), or -1
-on error
-
+<return> a new #GThemedIcon.
 </return>
 </function>
 
-<function name="g_vfs_parse_name">
+<function name="g_themed_icon_new_from_names">
 <description>
-This operation never fails, but the returned object might 
-not support any I/O operations if the @parse_name cannot 
-be parsed by the #GVfs module.
+Creates a new themed icon for @iconnames.
 
 
 </description>
 <parameters>
-<parameter name="vfs">
-<parameter_description> a #GVfs.
+<parameter name="iconnames">
+<parameter_description> an array of strings containing icon names.
 </parameter_description>
 </parameter>
-<parameter name="parse_name">
-<parameter_description> a string to be parsed by the VFS module.
+<parameter name="len">
+<parameter_description> the length of the @iconnames array, or -1 if @iconnames is 
+%NULL-terminated
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFile for the given @parse_name.
-Free the returned object with g_object_unref().
+<return> a new #GThemedIcon
 </return>
 </function>
 
-<function name="g_vfs_is_active">
+<function name="g_themed_icon_new_with_default_fallbacks">
 <description>
-Checks if the VFS is active.
+Creates a new themed icon for @iconname, and all the names
+that can be created by shortening @iconname at '-' characters.
+
+In the following example, @icon1 and @icon2 are equivalent:
+|[
+const char *names[] = { 
+&quot;gnome-dev-cdrom-audio&quot;,
+&quot;gnome-dev-cdrom&quot;,
+&quot;gnome-dev&quot;,
+&quot;gnome&quot;
+};
+
+icon1 = g_themed_icon_new_from_names (names, 4);
+icon2 = g_themed_icon_new_with_default_fallbacks (&quot;gnome-dev-cdrom-audio&quot;);
+]|
 
 
 </description>
 <parameters>
-<parameter name="vfs">
-<parameter_description> a #GVfs.
+<parameter name="iconname">
+<parameter_description> a string containing an icon name
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if construction of the @vfs was successful and it is now active.
+<return> a new #GThemedIcon.
 </return>
 </function>
 
-<function name="g_dbus_proxy_new_for_bus_sync">
+<function name="g_themed_icon_prepend_name">
 <description>
-Like g_dbus_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
+Prepend a name to the list of icons from within @icon.
 
-See &lt;xref linkend=&quot;gdbus-wellknown-proxy&quot;/&gt; for an example of how #GDBusProxy can be used.
+&lt;note&gt;&lt;para&gt;
+Note that doing so invalidates the hash computed by prior calls
+to g_icon_hash().
+&lt;/para&gt;&lt;/note&gt;
 
-Since: 2.26
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="bus_type">
-<parameter_description> A #GBusType.
+<parameter name="icon">
+<parameter_description> a #GThemedIcon
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Flags used when constructing the proxy.
+<parameter name="iconname">
+<parameter_description> name of icon to prepend to list of icons from within @icon.
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> A #GDBusInterfaceInfo specifying the minimal interface that @proxy conforms to or %NULL.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_threaded_socket_service_new">
+<description>
+Creates a new #GThreadedSocketService with no listeners. Listeners
+must be added with g_socket_service_add_listeners().
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="max_threads">
+<parameter_description> the maximal number of threads to execute concurrently
+handling incoming clients, -1 means no limit
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> A bus name (well-known or unique).
+</parameters>
+<return> a new #GSocketService.
+
+</return>
+</function>
+
+<function name="g_tls_backend_get_certificate_type">
+<description>
+Gets the #GType of @backend's #GTlsCertificate implementation.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="backend">
+<parameter_description> the #GTlsBackend
 </parameter_description>
 </parameter>
-<parameter name="object_path">
-<parameter_description> An object path.
+</parameters>
+<return> the #GType of @backend's #GTlsCertificate
+implementation.
+
+</return>
+</function>
+
+<function name="g_tls_backend_get_client_connection_type">
+<description>
+Gets the #GType of @backend's #GTlsClientConnection implementation.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="backend">
+<parameter_description> the #GTlsBackend
 </parameter_description>
 </parameter>
-<parameter name="interface_name">
-<parameter_description> A D-Bus interface name.
+</parameters>
+<return> the #GType of @backend's #GTlsClientConnection
+implementation.
+
+</return>
+</function>
+
+<function name="g_tls_backend_get_default">
+<description>
+Gets the default #GTlsBackend for the system.
+
+Since: 2.28
+
+</description>
+<parameters>
+</parameters>
+<return> a #GTlsBackend
+
+</return>
+</function>
+
+<function name="g_tls_backend_get_server_connection_type">
+<description>
+Gets the #GType of @backend's #GTlsServerConnection implementation.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="backend">
+<parameter_description> the #GTlsBackend
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> A #GCancellable or %NULL.
+</parameters>
+<return> the #GType of @backend's #GTlsServerConnection
+implementation.
+
+</return>
+</function>
+
+<function name="g_tls_backend_supports_tls">
+<description>
+Checks if TLS is supported; if this returns %FALSE for the default
+#GTlsBackend, it means no &quot;real&quot; TLS backend is available.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="backend">
+<parameter_description> the #GTlsBackend
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+</parameters>
+<return> whether or not TLS is supported
+
+</return>
+</function>
+
+<function name="g_tls_certificate_get_issuer">
+<description>
+Gets the #GTlsCertificate representing @cert's issuer, if known
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="cert">
+<parameter_description> a #GTlsCertificate
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusProxy or %NULL if error is set. Free with g_object_unref().
+<return> The certificate of @cert's issuer,
+or %NULL if @cert is self-signed or signed with an unknown
+certificate.
 
 </return>
 </function>
 
-<function name="g_dbus_auth_observer_new">
+<function name="g_tls_certificate_list_new_from_file">
 <description>
-Creates a new #GDBusAuthObserver object.
+Creates one or more #GTlsCertificate&lt;!-- --&gt;s from the PEM-encoded
+data in @file. If @file cannot be read or parsed, the function will
+return %NULL and set @error. If @file does not contain any
+PEM-encoded certificates, this will return an empty list and not
+set @error.
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
+<parameter name="file">
+<parameter_description> file containing PEM-encoded certificates to import
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameter_description>
+</parameter>
 </parameters>
-<return> A #GDBusAuthObserver. Free with g_object_unref().
+<return> a
+#GList containing #GTlsCertificate objects. You must free the list
+and its contents when you are done with it.
 
 </return>
 </function>
 
-<function name="g_dbus_connection_register_object">
+<function name="g_tls_certificate_new_from_file">
 <description>
-Registers callbacks for exported objects at @object_path with the
-D-Bus interface that is described in @interface_info.
+Creates a #GTlsCertificate from the PEM-encoded data in @file. If
+ file cannot be read or parsed, the function will return %NULL and
+set @error. Otherwise, this behaves like g_tls_certificate_new().
 
-Calls to functions in @vtable (and @user_data_free_func) will
-happen in the &lt;link linkend=&quot;g-main-context-push-thread-default&quot;&gt;thread-default main
-loop&lt;/link&gt; of the thread you are calling this method from.
+Since: 2.28
 
-Note that all #GVariant values passed to functions in @vtable will match
-the signature given in @interface_info - if a remote caller passes
-incorrect values, the &lt;literal&gt;org.freedesktop.DBus.Error.InvalidArgs&lt;/literal&gt;
-is returned to the remote caller.
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> file containing a PEM-encoded certificate to import
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameter_description>
+</parameter>
+</parameters>
+<return> the new certificate, or %NULL on error
 
-Additionally, if the remote caller attempts to invoke methods or
-access properties not mentioned in @interface_info the
-&lt;literal&gt;org.freedesktop.DBus.Error.UnknownMethod&lt;/literal&gt; resp.
-&lt;literal&gt;org.freedesktop.DBus.Error.InvalidArgs&lt;/literal&gt; errors
-are returned to the caller.
+</return>
+</function>
 
-It is considered a programming error if the
-#GDBusInterfaceGetPropertyFunc function in @vtable returns a
-#GVariant of incorrect type.
+<function name="g_tls_certificate_new_from_files">
+<description>
+Creates a #GTlsCertificate from the PEM-encoded data in @cert_file
+and @key_file. If either file cannot be read or parsed, the
+function will return %NULL and set @error. Otherwise, this behaves
+like g_tls_certificate_new().
 
-If an existing callback is already registered at @object_path and
- interface_name, then @error is set to #G_IO_ERROR_EXISTS.
+Since: 2.28
 
-GDBus automatically implements the standard D-Bus interfaces
-org.freedesktop.DBus.Properties, org.freedesktop.DBus.Introspectable
-and org.freedesktop.Peer, so you don't have to implement those for
-the objects you export. You &lt;emphasis&gt;can&lt;/emphasis&gt; implement
-org.freedesktop.DBus.Properties yourself, e.g. to handle getting
-and setting of properties asynchronously.
+</description>
+<parameters>
+<parameter name="cert_file">
+<parameter_description> file containing a PEM-encoded certificate to import
+</parameter_description>
+</parameter>
+<parameter name="key_file">
+<parameter_description> file containing a PEM-encoded private key to import
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameter_description>
+</parameter>
+</parameters>
+<return> the new certificate, or %NULL on error
 
-Note that the reference count on @interface_info will be
-incremented by 1 (unless allocated statically, e.g. if the
-reference count is -1, see g_dbus_interface_info_ref()) for as long
-as the object is exported. Also note that @vtable will be copied.
+</return>
+</function>
 
-See &lt;xref linkend=&quot;gdbus-server&quot;/&gt; for an example of how to use this method.
+<function name="g_tls_certificate_new_from_pem">
+<description>
+Creates a new #GTlsCertificate from the PEM-encoded data in @data.
+If @data includes both a certificate and a private key, then the
+returned certificate will include the private key data as well.
 
-Since: 2.26
+If @data includes multiple certificates, only the first one will be
+parsed.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> A #GDBusConnection.
+<parameter name="data">
+<parameter_description> PEM-encoded certificate data
 </parameter_description>
 </parameter>
-<parameter name="object_path">
-<parameter_description> The object path to register at.
+<parameter name="length">
+<parameter_description> the length of @data, or -1 if it's 0-terminated.
 </parameter_description>
 </parameter>
-<parameter name="interface_info">
-<parameter_description> Introspection data for the interface.
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="vtable">
-<parameter_description> A #GDBusInterfaceVTable to call into or %NULL.
+</parameters>
+<return> the new certificate, or %NULL if @data is invalid
+
+</return>
+</function>
+
+<function name="g_tls_certificate_verify">
+<description>
+This verifies @cert and returns a set of #GTlsCertificateFlags
+indicating any problems found with it. This can be used to verify a
+certificate outside the context of making a connection, or to
+check a certificate against a CA that is not part of the system
+CA database.
+
+If @identity is not %NULL, @cert's name(s) will be compared against
+it, and %G_TLS_CERTIFICATE_BAD_IDENTITY will be set in the return
+value if it does not match. If @identity is %NULL, that bit will
+never be set in the return value.
+
+If @trusted_ca is not %NULL, then @cert (or one of the certificates
+in its chain) must be signed by it, or else
+%G_TLS_CERTIFICATE_UNKNOWN_CA will be set in the return value. If
+ trusted_ca is %NULL, that bit will never be set in the return
+value.
+
+(All other #GTlsCertificateFlags values will always be set or unset
+as appropriate.)
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="cert">
+<parameter_description> a #GTlsCertificate
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> Data to pass to functions in @vtable.
+<parameter name="identity">
+<parameter_description> the expected peer identity
 </parameter_description>
 </parameter>
-<parameter name="user_data_free_func">
-<parameter_description> Function to call when the object path is unregistered.
+<parameter name="trusted_ca">
+<parameter_description> the certificate of a trusted authority
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+</parameters>
+<return> the appropriate #GTlsCertificateFlags
+
+</return>
+</function>
+
+<function name="g_tls_client_connection_get_accepted_cas">
+<description>
+Gets the list of distinguished names of the Certificate Authorities
+that the server will accept certificates from. This will be set
+during the TLS handshake if the server requests a certificate.
+Otherwise, it will be %NULL.
+
+Each item in the list is a #GByteArray which contains the complete
+subject DN of the certificate authority.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if @error is set, otherwise a registration id (never 0)
-that can be used with g_dbus_connection_unregister_object() .
+<return> the list of
+CA DNs. You should unref each element with g_byte_array_unref() and then
+the free the list with g_list_free().
 
 </return>
 </function>
 
-<function name="g_srv_target_free">
+<function name="g_tls_client_connection_get_server_identity">
 <description>
-Frees @target
+Gets @conn's expected server identity
 
-Since: 2.22
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GSrvTarget
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSocketConnectable describing the
+expected server identity, or %NULL if the expected identity is not
+known.
+
+</return>
 </function>
 
-<function name="g_io_extension_point_register">
+<function name="g_tls_client_connection_get_use_ssl3">
 <description>
-Registers an extension point.
+Gets whether @conn will use SSL 3.0 rather than the
+highest-supported version of TLS; see
+g_tls_client_connection_set_use_ssl3().
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> The name of the extension point
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GIOExtensionPoint. This object is owned by GIO
-and should not be freed
+<return> whether @conn will use SSL 3.0
+
 </return>
 </function>
 
-<function name="g_async_initable_newv_async">
+<function name="g_tls_client_connection_get_validation_flags">
 <description>
-Helper function for constructing #GAsyncInitiable object. This is
-similar to g_object_newv() but also initializes the object asynchronously.
+Gets @conn's validation flags
 
-When the initialization is finished, @callback will be called. You can
-then call g_async_initable_new_finish() to get the new object and check
-for any errors.
+Since: 2.28
 
-Since: 2.22
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> the validation flags
+
+</return>
+</function>
+
+<function name="g_tls_client_connection_new">
+<description>
+Creates a new #GTlsClientConnection wrapping @base_io_stream (which
+must have pollable input and output streams) which is assumed to
+communicate with the server identified by @server_identity.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> a #GType supporting #GAsyncInitable.
+<parameter name="base_io_stream">
+<parameter_description> the #GIOStream to wrap
 </parameter_description>
 </parameter>
-<parameter name="n_parameters">
-<parameter_description> the number of parameters in @parameters
+<parameter name="server_identity">
+<parameter_description> the expected identity of the server
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> the parameters to use to construct the object
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
-of the operation.
+</parameters>
+<return> the new #GTlsClientConnection, or %NULL on error
+
+</return>
+</function>
+
+<function name="g_tls_client_connection_set_server_identity">
+<description>
+Sets @conn's expected server identity, which is used both to tell
+servers on virtual hosts which certificate to present, and also
+to let @conn know what name to look for in the certificate when
+performing %G_TLS_CERTIFICATE_BAD_IDENTITY validation, if enabled.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="identity">
+<parameter_description> a #GSocketConnectable describing the expected server identity
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the initialization is
-finished
+</parameters>
+<return></return>
+</function>
+
+<function name="g_tls_client_connection_set_use_ssl3">
+<description>
+If @use_ssl3 is %TRUE, this forces @conn to use SSL 3.0 rather than
+trying to properly negotiate the right version of TLS or SSL to use.
+This can be used when talking to servers that do not implement the
+fallbacks correctly and which will therefore fail to handshake with
+a &quot;modern&quot; TLS handshake attempt.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="use_ssl3">
+<parameter_description> whether to use SSL 3.0
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_simple_async_result_new_from_error">
+<function name="g_tls_client_connection_set_validation_flags">
 <description>
-Creates a #GSimpleAsyncResult from an error condition.
+Sets @conn's validation flags, to override the default set of
+checks performed when validating a server certificate. By default,
+%G_TLS_CERTIFICATE_VALIDATE_ALL is used.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="source_object">
-<parameter_description> a #GObject, or %NULL.
+<parameter name="conn">
+<parameter_description> the #GTlsClientConnection
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback.
+<parameter name="flags">
+<parameter_description> the #GTlsCertificateFlags to use
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_tls_connection_emit_accept_certificate">
+<description>
+Used by #GTlsConnection implementations to emit the
+#GTlsConnection::accept-certificate signal.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location.
+<parameter name="peer_cert">
+<parameter_description> the peer's #GTlsCertificate
+</parameter_description>
+</parameter>
+<parameter name="errors">
+<parameter_description> the problems with @peer_cert
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSimpleAsyncResult.
+<return> %TRUE if one of the signal handlers has returned
+%TRUE to accept @peer_cert
+
 </return>
 </function>
 
-<function name="g_unix_mount_is_readonly">
+<function name="g_tls_connection_get_certificate">
 <description>
-Checks if a unix mount is mounted read only.
+Gets @conn's certificate, as set by
+g_tls_connection_set_certificate().
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMount.
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @mount_entry is read only.
+<return> @conn's certificate, or %NULL
+
 </return>
 </function>
 
-<function name="g_dbus_node_info_ref">
+<function name="g_tls_connection_get_peer_certificate">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Gets @conn's peer's certificate after the handshake has completed.
+(It is not set during the emission of
+#GTlsConnection::accept-certificate.)
 
-Since: 2.26
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusNodeInfo
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
+<return> @conn's peer's certificate, or %NULL
 
 </return>
 </function>
 
-<function name="g_output_stream_flush">
+<function name="g_tls_connection_get_peer_certificate_errors">
 <description>
-Flushed any outstanding buffers in the stream. Will block during 
-the operation. Closing the stream will implicitly cause a flush.
+Gets the errors associated with validating @conn's peer's
+certificate, after the handshake has completed. (It is not set
+during the emission of #GTlsConnection::accept-certificate.)
 
-This function is optional for inherited classes.
+Since: 2.28
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> @conn's peer's certificate errors
+
+</return>
+</function>
 
+<function name="g_tls_connection_get_rehandshake_mode">
+<description>
+Gets @conn rehandshaking mode. See
+g_tls_connection_set_rehandshake() for details.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GOutputStream.
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional cancellable object
+</parameters>
+<return> @conn's rehandshaking mode
+
+</return>
+</function>
+
+<function name="g_tls_connection_get_require_close_notify">
+<description>
+Tests whether or not @conn expects a proper TLS close notification
+when the connection is closed. See
+g_tls_connection_set_require_close_notify() for details.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+</parameters>
+<return> %TRUE if @conn requires a proper TLS close
+notification.
+
+</return>
+</function>
+
+<function name="g_tls_connection_get_use_system_certdb">
+<description>
+Gets whether @conn uses the system certificate database to verify
+peer certificates. See g_tls_connection_set_use_system_certdb().
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on error
+<return> whether @conn uses the system certificate database
+
 </return>
 </function>
 
-<function name="g_file_start_mountable_finish">
+<function name="g_tls_connection_handshake">
 <description>
-Finishes a start operation. See g_file_start_mountable() for details.
+Attempts a TLS handshake on @conn.
 
-Finish an asynchronous start operation that was started
-with g_file_start_mountable().
+On the client side, it is never necessary to call this method;
+although the connection needs to perform a handshake after
+connecting (or after sending a &quot;STARTTLS&quot;-type command) and may
+need to rehandshake later if the server requests it,
+#GTlsConnection will handle this for you automatically when you try
+to send or receive data on the connection. However, you can call
+g_tls_connection_handshake() manually if you want to know for sure
+whether the initial handshake succeeded or failed (as opposed to
+just immediately trying to write to @conn's output stream, in which
+case if it fails, it may not be possible to tell if it failed
+before or after completing the handshake).
 
-Since: 2.22
+Likewise, on the server side, although a handshake is necessary at
+the beginning of the communication, you do not need to call this
+function explicitly unless you want clearer error reporting.
+However, you may call g_tls_connection_handshake() later on to
+renegotiate parameters (encryption methods, etc) with the client.
+
+#GTlsConnection::accept_certificate may be emitted during the
+handshake.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -26710,206 +29999,349 @@ Since: 2.22
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation finished successfully. %FALSE
-otherwise.
+<return> success or failure
 
 </return>
 </function>
 
-<function name="g_mount_operation_get_domain">
+<function name="g_tls_connection_handshake_async">
 <description>
-Gets the domain of the mount operation.
+Asynchronously performs a TLS handshake on @conn. See
+g_tls_connection_handshake() for more information.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GMountOperation.
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt;
+of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the handshake is complete
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to the callback function
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string set to the domain. 
-</return>
+<return></return>
 </function>
 
-<function name="g_input_stream_read_async">
+<function name="g_tls_connection_handshake_finish">
 <description>
-Request an asynchronous read of @count bytes from the stream into the buffer
-starting at @buffer. When the operation is finished @callback will be called. 
-You can then call g_input_stream_read_finish() to get the result of the 
-operation.
-
-During an async request no other sync and async calls are allowed on @stream, and will
-result in %G_IO_ERROR_PENDING errors. 
-
-A value of @count larger than %G_MAXSSIZE will cause a %G_IO_ERROR_INVALID_ARGUMENT error.
-
-On success, the number of bytes read into the buffer will be passed to the
-callback. It is not an error if this is not the same as the requested size, as it
-can happen e.g. near the end of a file, but generally we try to read
-as many bytes as requested. Zero is returned on end of file
-(or if @count is zero),  but never otherwise.
+Finish an asynchronous TLS handshake operation. See
+g_tls_connection_handshake() for more information.
 
-Any outstanding i/o request with higher priority (lower numerical value) will
-be executed before an outstanding request with lower priority. Default
-priority is %G_PRIORITY_DEFAULT.
-
-The asyncronous methods have a default fallback that uses threads to implement
-asynchronicity, so they are optional for inheriting classes. However, if you
-override one you must override all.
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> A #GInputStream.
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> a buffer to read data into (which should be at least count bytes long).
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> the number of bytes that will be read from the stream
+<parameter name="error">
+<parameter_description> a #GError pointer, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+</parameters>
+<return> %TRUE on success, %FALSE on failure, in which
+case @error will be set.
+
+</return>
+</function>
+
+<function name="g_tls_connection_set_certificate">
+<description>
+This sets the certificate that @conn will present to its peer
+during the TLS handshake. For a #GTlsServerConnection, it is
+mandatory to set this, and that will normally be done at construct
+time.
+
+For a #GTlsClientConnection, this is optional. If a handshake fails
+with %G_TLS_ERROR_CERTIFICATE_REQUIRED, that means that the server
+requires a certificate, and if you try connecting again, you should
+call this method first. You can call
+g_tls_client_connection_get_accepted_cas() on the failed connection
+to get a list of Certificate Authorities that the server will
+accept certificates from.
+
+(It is also possible that a server will allow the connection with
+or without a certificate; in that case, if you don't provide a
+certificate, you can tell that the server requested one by the fact
+that g_tls_client_connection_get_accepted_cas() will return
+non-%NULL.)
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="certificate">
+<parameter_description> the certificate to use for @conn
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+</parameters>
+<return></return>
+</function>
+
+<function name="g_tls_connection_set_rehandshake_mode">
+<description>
+Sets how @conn behaves with respect to rehandshaking requests.
+
+%G_TLS_REHANDSHAKE_NEVER means that it will never agree to
+rehandshake after the initial handshake is complete. (For a client,
+this means it will refuse rehandshake requests from the server, and
+for a server, this means it will close the connection with an error
+if the client attempts to rehandshake.)
+
+%G_TLS_REHANDSHAKE_SAFELY means that the connection will allow a
+rehandshake only if the other end of the connection supports the
+TLS &lt;literal&gt;renegotiation_info&lt;/literal&gt; extension. This is the
+default behavior, but means that rehandshaking will not work
+against older implementations that do not support that extension.
+
+%G_TLS_REHANDSHAKE_UNSAFELY means that the connection will allow
+rehandshaking even without the
+&lt;literal&gt;renegotiation_info&lt;/literal&gt; extension. On the server side
+in particular, this is not recommended, since it leaves the server
+open to certain attacks. However, this mode is necessary if you
+need to allow renegotiation with older client software.
+
+Since: 2.28
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="mode">
+<parameter_description> the rehandshaking mode
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_info_get_sort_order">
+<function name="g_tls_connection_set_require_close_notify">
 <description>
-Gets the value of the sort_order attribute from the #GFileInfo.
-See %G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER.
+Sets whether or not @conn expects a proper TLS close notification
+before the connection is closed. If this is %TRUE (the default),
+then @conn will expect to receive a TLS close notification from its
+peer before the connection is closed, and will return a
+%G_TLS_ERROR_EOF error if the connection is closed without proper
+notification (since this may indicate a network error, or
+man-in-the-middle attack).
 
+In some protocols, the application will know whether or not the
+connection was closed cleanly based on application-level data
+(because the application-level data includes a length field, or is
+somehow self-delimiting); in this case, the close notify is
+redundant and sometimes omitted. (TLS 1.1 explicitly allows this;
+in TLS 1.0 it is technically an error, but often done anyway.) You
+can use g_tls_connection_set_require_close_notify() to tell @conn
+to allow an &quot;unannounced&quot; connection close, in which case the close
+will show up as a 0-length read, as in a non-TLS
+#GSocketConnection, and it is up to the application to check that
+the data has been fully received.
+
+Note that this only affects the behavior when the peer closes the
+connection; when the application calls g_io_stream_close() itself
+on @conn, this will send a close notification regardless of the
+setting of this property. If you explicitly want to do an unclean
+close, you can close @conn's #GTlsConnection:base-io-stream rather
+than closing @conn itself.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
+</parameter_description>
+</parameter>
+<parameter name="require_close_notify">
+<parameter_description> whether or not to require close notification
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gint32 containing the value of the &quot;standard::sort_order&quot; attribute.
-</return>
+<return></return>
 </function>
 
-<function name="g_app_info_get_executable">
+<function name="g_tls_connection_set_use_system_certdb">
 <description>
-Gets the executable's name for the installed application.
+Sets whether @conn uses the system certificate database to verify
+peer certificates. This is %TRUE by default. If set to %FALSE, then
+peer certificate validation will always set the
+%G_TLS_CERTIFICATE_UNKNOWN_CA error (meaning
+#GTlsConnection::accept-certificate will always be emitted on
+client-side connections, unless that bit is not set in
+#GTlsClientConnection:validation-flags).
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
+</parameter_description>
+</parameter>
+<parameter name="use_system_certdb">
+<parameter_description> whether to use the system certificate database
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the @appinfo's application 
-binaries name
+<return></return>
+</function>
+
+<function name="g_tls_error_quark">
+<description>
+Gets the TLS error quark.
+
+Since: 2.28
+
+</description>
+<parameters>
+</parameters>
+<return> a #GQuark.
+
 </return>
 </function>
 
-<function name="g_file_load_contents_finish">
+<function name="g_tls_server_connection_new">
 <description>
-Finishes an asynchronous load of the @file's contents. 
-The contents are placed in @contents, and @length is set to the 
-size of the @contents string. The @content should be freed with
-g_free() when no longer needed. If @etag_out is present, it will be 
-set to the new entity tag for the @file.
+Creates a new #GTlsServerConnection wrapping @base_io_stream (which
+must have pollable input and output streams).
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="base_io_stream">
+<parameter_description> the #GIOStream to wrap
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter name="certificate">
+<parameter_description> the default server certificate, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="contents">
-<parameter_description> a location to place the contents of the file.
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> a location to place the length of the contents of the file,
-or %NULL if the length is not needed
+</parameters>
+<return> the new #GTlsServerConnection, or %NULL on error
+
+</return>
+</function>
+
+<function name="g_unix_connection_receive_credentials">
+<description>
+Receives credentials from the sending end of the connection.  The
+sending end has to call g_unix_connection_send_credentials() (or
+similar) for this to work.
+
+As well as reading the credentials this also reads (and discards) a
+single byte from the stream, as this is required for credentials
+passing to work on some implementations.
+
+Other ways to exchange credentials with a foreign peer includes the
+#GUnixCredentialsMessage type and g_socket_get_credentials() function.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> A #GUnixConnection.
 </parameter_description>
 </parameter>
-<parameter name="etag_out">
-<parameter_description> a location to place the current entity tag for the file,
-or %NULL if the entity tag is not needed
+<parameter name="cancellable">
+<parameter_description> A #GCancellable or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter_description> Return location for error or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the load was successful. If %FALSE and @error is 
-present, it will be set appropriately. 
+<return> Received credentials on success (free with
+g_object_unref()), %NULL if @error is set.
+
 </return>
 </function>
 
-<function name="g_dbus_message_get_unix_fd_list">
+<function name="g_unix_connection_receive_fd">
 <description>
-Gets the UNIX file descriptors associated with @message, if any.
+Receives a file descriptor from the sending end of the connection.
+The sending end has to call g_unix_connection_send_fd() for this
+to work.
 
-This method is only available on UNIX.
+As well as reading the fd this also reads a single byte from the
+stream, as this is required for fd passing to work on some
+implementations.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="connection">
+<parameter_description> a #GUnixConnection
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GUnixFDList or %NULL if no file descriptors are
-associated. Do not free, this object is owned by @message.
+<return> a file descriptor on success, -1 on error.
 
 </return>
 </function>
 
-<function name="g_dbus_address_get_stream_sync">
+<function name="g_unix_connection_send_credentials">
 <description>
-Synchronously connects to an endpoint specified by @address and
-sets up the connection so it is in a state to run the client-side
-of the D-Bus authentication conversation.
+Passes the credentials of the current user the receiving side
+of the connection. The recieving end has to call
+g_unix_connection_receive_credentials() (or similar) to accept the
+credentials.
 
-This is a synchronous failable function. See
-g_dbus_address_get_stream() for the asynchronous version.
+As well as sending the credentials this also writes a single NUL
+byte to the stream, as this is required for credentials passing to
+work on some implementations.
+
+Other ways to exchange credentials with a foreign peer includes the
+#GUnixCredentialsMessage type and g_socket_get_credentials() function.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> A valid D-Bus address.
-</parameter_description>
-</parameter>
-<parameter name="out_guid">
-<parameter_description> %NULL or return location to store the GUID extracted from @address, if any.
+<parameter name="connection">
+<parameter_description> A #GUnixConnection.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -26921,792 +30353,1207 @@ Since: 2.26
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GIOStream or %NULL if @error is set.
+<return> %TRUE on success, %FALSE if @error is set.
 
 </return>
 </function>
 
-<function name="g_file_replace_contents_finish">
+<function name="g_unix_connection_send_fd">
 <description>
-Finishes an asynchronous replace of the given @file. See
-g_file_replace_contents_async(). Sets @new_etag to the new entity 
-tag for the document, if present.
+Passes a file descriptor to the recieving side of the
+connection. The recieving end has to call g_unix_connection_receive_fd()
+to accept the file descriptor.
+
+As well as sending the fd this also writes a single byte to the
+stream, as this is required for fd passing to work on some
+implementations.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="connection">
+<parameter_description> a #GUnixConnection
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter name="fd">
+<parameter_description> a file descriptor
 </parameter_description>
 </parameter>
-<parameter name="new_etag">
-<parameter_description> a location of a new &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; 
-for the document. This should be freed with g_free() when it is no 
-longer needed, or %NULL
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a #GError, or %NULL 
+<parameter_description> #GError for error reporting, or %NULL to ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on failure.
+<return> a %TRUE on success, %NULL on error.
+
 </return>
 </function>
 
-<function name="g_mount_get_volume">
+<function name="g_unix_credentials_message_get_credentials">
 <description>
-Gets the volume for the @mount.
+Gets the credentials stored in @message.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="message">
+<parameter_description> A #GUnixCredentialsMessage.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GVolume or %NULL if @mount is not associated with a volume.
-The returned object should be unreffed with 
-g_object_unref() when no longer needed.
+<return> A #GCredentials instance. Do not free, it is owned by @message.
+
 </return>
 </function>
 
-<function name="g_buffered_input_stream_get_available">
+<function name="g_unix_credentials_message_is_supported">
 <description>
-Gets the size of the available data within the stream.
+Checks if passing a #GCredential on a #GSocket is supported on this platform.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> #GBufferedInputStream
+</parameters>
+<return> %TRUE if supported, %FALSE otherwise
+
+</return>
+</function>
+
+<function name="g_unix_credentials_message_new">
+<description>
+Creates a new #GUnixCredentialsMessage with credentials matching the current processes.
+
+Since: 2.26
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GUnixCredentialsMessage
+
+</return>
+</function>
+
+<function name="g_unix_credentials_message_new_with_credentials">
+<description>
+Creates a new #GUnixCredentialsMessage holding @credentials.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="credentials">
+<parameter_description> A #GCredentials object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> size of the available stream.
+<return> a new #GUnixCredentialsMessage
+
 </return>
 </function>
 
-<function name="g_settings_reset">
+<function name="g_unix_fd_list_append">
 <description>
-Resets @key to its default value.
+Adds a file descriptor to @list.
 
-This call resets the key, as much as possible, to its default value.
-That might the value specified in the schema or the one set by the
-administrator.
+The file descriptor is duplicated using dup(). You keep your copy
+of the descriptor and the copy contained in @list will be closed
+when @list is finalized.
+
+A possible cause of failure is exceeding the per-process or
+system-wide file descriptor limit.
+
+The index of the file descriptor in the list is returned.  If you use
+this index with g_unix_fd_list_get() then you will receive back a
+duplicated copy of the same file descriptor.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="list">
+<parameter_description> a #GUnixFDList
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of a key
+<parameter name="fd">
+<parameter_description> a valid open file descriptor
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError pointer
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the index of the appended fd in case of success, else -1
+(and @error is set)
+
+</return>
 </function>
 
-<function name="g_memory_output_stream_new">
+<function name="g_unix_fd_list_get">
 <description>
-Creates a new #GMemoryOutputStream.
-
-If @data is non-%NULL, the stream  will use that for its internal storage.
-If @realloc_fn is non-%NULL, it will be used for resizing the internal
-storage when necessary. To construct a fixed-size output stream,
-pass %NULL as @realloc_fn.
+Gets a file descriptor out of @list.
 
-|[
-/ * a stream that can grow * /
-stream = g_memory_output_stream_new (NULL, 0, realloc, free);
+ index_ specifies the index of the file descriptor to get.  It is a
+programmer error for @index_ to be out of range; see
+g_unix_fd_list_get_length().
 
-/ * another stream that can grow * /
-stream2 = g_memory_output_stream_new (NULL, 0, g_realloc, g_free);
+The file descriptor is duplicated using dup() and set as
+close-on-exec before being returned.  You must call close() on it
+when you are done.
 
-/ * a fixed-size stream * /
-data = malloc (200);
-stream3 = g_memory_output_stream_new (data, 200, NULL, free);
-]|
+A possible cause of failure is exceeding the per-process or
+system-wide file descriptor limit.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> pointer to a chunk of memory to use, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> the size of @data
+<parameter name="list">
+<parameter_description> a #GUnixFDList
 </parameter_description>
 </parameter>
-<parameter name="realloc_function">
-<parameter_description> a function with realloc() semantics (like g_realloc())
-to be called when @data needs to be grown, or %NULL
+<parameter name="index_">
+<parameter_description> the index into the list
 </parameter_description>
 </parameter>
-<parameter name="destroy_function">
-<parameter_description> a function to be called on @data when the stream is
-finalized, or %NULL
+<parameter name="error">
+<parameter_description> a #GError pointer
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly created #GMemoryOutputStream object.
+<return> the file descriptor, or -1 in case of error
+
 </return>
 </function>
 
-<function name="g_drive_get_identifier">
+<function name="g_unix_fd_list_get_length">
 <description>
-Gets the identifier of the given kind for @drive.
+Gets the length of @list (ie: the number of file descriptors
+contained within).
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="drive">
-<parameter_description> a #GDrive
-</parameter_description>
-</parameter>
-<parameter name="kind">
-<parameter_description> the kind of identifier to return
+<parameter name="list">
+<parameter_description> a #GUnixFDList
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the
-requested identfier, or %NULL if the #GDrive
-doesn't have this kind of identifier.
+<return> the length of @list
+
 </return>
 </function>
 
-<function name="g_file_monitor_directory">
+<function name="g_unix_fd_list_new">
 <description>
-Obtains a directory monitor for the given file.
-This may fail if directory monitoring is not supported.
+Creates a new #GUnixFDList containing no file descriptors.
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+Since: 2.24
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GUnixFDList
+
+</return>
+</function>
+
+<function name="g_unix_fd_list_new_from_array">
+<description>
+Creates a new #GUnixFDList containing the file descriptors given in
+ fds   The file descriptors become the property of the new list and
+may no longer be used by the caller.  The array itself is owned by
+the caller.
+
+Each file descriptor in the array should be set to close-on-exec.
+
+If @n_fds is -1 then @fds must be terminated with -1.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="fds">
+<parameter_description> the initial list of file descriptors
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileMonitorFlags.
+<parameter name="n_fds">
+<parameter_description> the length of #fds, or -1
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return> a new #GUnixFDList
+
+</return>
+</function>
+
+<function name="g_unix_fd_list_peek_fds">
+<description>
+Returns the array of file descriptors that is contained in this
+object.
+
+After this call, the descriptors remain the property of @list.  The
+caller must not close them and must not free the array.  The array is
+valid only until @list is changed in any way.
+
+If @length is non-%NULL then it is set to the number of file
+descriptors in the returned array. The returned array is also
+terminated with -1.
+
+This function never returns %NULL. In case there are no file
+descriptors contained in @list, an empty array is returned.
+
+Since: 2.24
+
+</description>
+<parameters>
+<parameter name="list">
+<parameter_description> a #GUnixFDList
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL.
+<parameter name="length">
+<parameter_description> pointer to the length of the returned
+array, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileMonitor for the given @file, or %NULL on error.
-Free the returned object with g_object_unref().
+<return> an array of file
+descriptors
+
 </return>
 </function>
 
-<function name="g_keyfile_settings_backend_new">
+<function name="g_unix_fd_list_steal_fds">
 <description>
-Creates a keyfile-backed #GSettingsBackend.
+Returns the array of file descriptors that is contained in this
+object.
 
-The filename of the keyfile to use is given by @filename.
+After this call, the descriptors are no longer contained in
+ list  Further calls will return an empty list (unless more
+descriptors have been added).
 
-All settings read to or written from the backend must fall under the
-path given in @root_path (which must start and end with a slash and
-not contain two consecutive slashes).  @root_path may be &quot;/&quot;.
+The return result of this function must be freed with g_free().
+The caller is also responsible for closing all of the file
+descriptors.  The file descriptors in the array are set to
+close-on-exec.
 
-If @root_group is non-%NULL then it specifies the name of the keyfile
-group used for keys that are written directly below @root_path.  For
-example, if @root_path is &quot;/apps/example/&quot; and @root_group is
-&quot;toplevel&quot;, then settings the key &quot;/apps/example/enabled&quot; to a value
-of %TRUE will cause the following to appear in the keyfile:
+If @length is non-%NULL then it is set to the number of file
+descriptors in the returned array. The returned array is also
+terminated with -1.
 
-|[
-[toplevel]
-enabled=true
-]|
+This function never returns %NULL. In case there are no file
+descriptors contained in @list, an empty array is returned.
 
-If @root_group is %NULL then it is not permitted to store keys
-directly below the @root_path.
+Since: 2.24
 
-For keys not stored directly below @root_path (ie: in a sub-path),
-the name of the subpath (with the final slash stripped) is used as
-the name of the keyfile group.  To continue the example, if
-&quot;/apps/example/profiles/default/font-size&quot; were set to
-12 then the following would appear in the keyfile:
+</description>
+<parameters>
+<parameter name="list">
+<parameter_description> a #GUnixFDList
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> pointer to the length of the returned
+array, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> an array of file
+descriptors
 
-|[
-[profiles/default]
-font-size=12
-]|
+</return>
+</function>
 
-The backend will refuse writes (and return writability as being
-%FALSE) for keys outside of @root_path and, in the event that
- root_group is %NULL, also for keys directly under @root_path.
-Writes will also be refused if the backend detects that it has the
-inability to rewrite the keyfile (ie: the containing directory is not
-writable).
+<function name="g_unix_fd_message_append_fd">
+<description>
+Adds a file descriptor to @message.
 
-There is no checking done for your key namespace clashing with the
-syntax of the key file format.  For example, if you have '[' or ']'
-characters in your path names or '=' in your key names you may be in
-trouble.
+The file descriptor is duplicated using dup(). You keep your copy
+of the descriptor and the copy contained in @message will be closed
+when @message is finalized.
+
+A possible cause of failure is exceeding the per-process or
+system-wide file descriptor limit.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> the filename of the keyfile
+<parameter name="message">
+<parameter_description> a #GUnixFDMessage
 </parameter_description>
 </parameter>
-<parameter name="root_path">
-<parameter_description> the path under which all settings keys appear
+<parameter name="fd">
+<parameter_description> a valid open file descriptor
 </parameter_description>
 </parameter>
-<parameter name="root_group">
-<parameter_description> the group name corresponding to
- root_path, or %NULL
+<parameter name="error">
+<parameter_description> a #GError pointer
 </parameter_description>
 </parameter>
 </parameters>
-<return> a keyfile-backed #GSettingsBackend
+<return> %TRUE in case of success, else %FALSE (and @error is set)
+
 </return>
 </function>
 
-<function name="g_file_dup">
+<function name="g_unix_fd_message_get_fd_list">
 <description>
-Duplicates a #GFile handle. This operation does not duplicate 
-the actual file or directory represented by the #GFile; see 
-g_file_copy() if attempting to copy a file. 
-
-This call does no blocking i/o.
+Gets the #GUnixFDList contained in @message.  This function does not
+return a reference to the caller, but the returned list is valid for
+the lifetime of @message.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="message">
+<parameter_description> a #GUnixFDMessage
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GFile that is a duplicate of the given #GFile. 
+<return> the #GUnixFDList from @message
+
 </return>
 </function>
 
-<function name="g_buffered_output_stream_set_buffer_size">
+<function name="g_unix_fd_message_new">
 <description>
-Sets the size of the internal buffer to @size.
+Creates a new #GUnixFDMessage containing an empty file descriptor
+list.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedOutputStream.
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> a #gsize.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a new #GUnixFDMessage
+
+</return>
 </function>
 
-<function name="g_unix_mount_points_changed_since">
+<function name="g_unix_fd_message_new_with_fd_list">
 <description>
-Checks if the unix mount points have changed since a given unix time.
+Creates a new #GUnixFDMessage containing @list.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="time">
-<parameter_description> guint64 to contain a timestamp.
+<parameter name="fd_list">
+<parameter_description> a #GUnixFDList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount points have changed since @time. 
+<return> a new #GUnixFDMessage
+
 </return>
 </function>
 
-<function name="g_settings_set_string">
+<function name="g_unix_fd_message_steal_fds">
 <description>
-Sets @key in @settings to @value.
+Returns the array of file descriptors that is contained in this
+object.
 
-A convenience variant of g_settings_set() for strings.
+After this call, the descriptors are no longer contained in
+ message  Further calls will return an empty list (unless more
+descriptors have been added).
 
-It is a programmer error to give a @key that isn't specified as
-having a string type in the schema for @settings.
+The return result of this function must be freed with g_free().
+The caller is also responsible for closing all of the file
+descriptors.
 
-Since: 2.26
+If @length is non-%NULL then it is set to the number of file
+descriptors in the returned array. The returned array is also
+terminated with -1.
+
+This function never returns %NULL. In case there are no file
+descriptors contained in @message, an empty array is returned.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="settings">
-<parameter_description> a #GSettings object
+<parameter name="message">
+<parameter_description> a #GUnixFDMessage
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the name of the key to set
+<parameter name="length">
+<parameter_description> pointer to the length of the returned
+array, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to set it to
+</parameters>
+<return> an array of file
+descriptors
+
+</return>
+</function>
+
+<function name="g_unix_input_stream_get_close_fd">
+<description>
+Returns whether the file descriptor of @stream will be
+closed when the stream is closed.
+
+Since: 2.20
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GUnixInputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if setting the key succeeded,
-%FALSE if the key was not writable
+<return> %TRUE if the file descriptor is closed when done
+
 </return>
 </function>
 
-<function name="g_file_replace_contents_async">
+<function name="g_unix_input_stream_get_fd">
 <description>
-Starts an asynchronous replacement of @file with the given 
- contents of @length bytes. @etag will replace the document's 
-current entity tag.
+Return the UNIX file descriptor that the stream reads from.
 
-When this operation has completed, @callback will be called with
- user_user data, and the operation can be finalized with 
-g_file_replace_contents_finish().
+Since: 2.20
 
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. 
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GUnixInputStream
+</parameter_description>
+</parameter>
+</parameters>
+<return> The file descriptor of @stream
+
+</return>
+</function>
+
+<function name="g_unix_input_stream_new">
+<description>
+Creates a new #GUnixInputStream for the given @fd. 
+
+If @close_fd is %TRUE, the file descriptor will be closed 
+when the stream is closed.
 
-If @make_backup is %TRUE, this function will attempt to 
-make a backup of @file.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="fd">
+<parameter_description> a UNIX file descriptor
 </parameter_description>
 </parameter>
-<parameter name="contents">
-<parameter_description> string of contents to replace the file with.
+<parameter name="close_fd">
+<parameter_description> %TRUE to close the file descriptor when done
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of @contents in bytes.
+</parameters>
+<return> a new #GUnixInputStream
+</return>
+</function>
+
+<function name="g_unix_input_stream_set_close_fd">
+<description>
+Sets whether the file descriptor of @stream shall be closed
+when the stream is closed.
+
+Since: 2.20
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GUnixInputStream
 </parameter_description>
 </parameter>
-<parameter name="etag">
-<parameter_description> a new &lt;link linkend=&quot;gfile-etag&quot;&gt;entity tag&lt;/link&gt; for the @file, or %NULL
+<parameter name="close_fd">
+<parameter_description> %TRUE to close the file descriptor when done
 </parameter_description>
 </parameter>
-<parameter name="make_backup">
-<parameter_description> %TRUE if a backup should be created.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_unix_is_mount_path_system_internal">
+<description>
+Determines if @mount_path is considered an implementation of the
+OS. This is primarily used for hiding mountable and mounted volumes
+that only are used in the OS and has little to no relevance to the
+casual user.
+
+
+</description>
+<parameters>
+<parameter name="mount_path">
+<parameter_description> a mount path, e.g. &lt;filename&gt;/media/disk&lt;/filename&gt; 
+or &lt;filename&gt;/usr&lt;/filename&gt;
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> a set of #GFileCreateFlags.
+</parameters>
+<return> %TRUE if @mount_path is considered an implementation detail 
+of the OS.
+</return>
+</function>
+
+<function name="g_unix_mount_at">
+<description>
+Gets a #GUnixMountEntry for a given mount path. If @time_read
+is set, it will be filled with a unix timestamp for checking
+if the mounts have changed since with g_unix_mounts_changed_since().
+
+
+</description>
+<parameters>
+<parameter name="mount_path">
+<parameter_description> path for a possible unix mount.
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="time_read">
+<parameter_description> guint64 to contain a timestamp.
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+</parameters>
+<return> a #GUnixMountEntry.
+</return>
+</function>
+
+<function name="g_unix_mount_compare">
+<description>
+Compares two unix mounts.
+
+
+</description>
+<parameters>
+<parameter name="mount1">
+<parameter_description> first #GUnixMountEntry to compare.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="mount2">
+<parameter_description> second #GUnixMountEntry to compare.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> 1, 0 or -1 if @mount1 is greater than, equal to,
+or less than @mount2, respectively. 
+</return>
 </function>
 
-<function name="g_socket_address_enumerator_next">
+<function name="g_unix_mount_free">
 <description>
-Retrieves the next #GSocketAddress from @enumerator. Note that this
-may block for some amount of time. (Eg, a #GNetworkAddress may need
-to do a DNS lookup before it can return an address.) Use
-g_socket_address_enumerator_next_async() if you need to avoid
-blocking.
-
-If @enumerator is expected to yield addresses, but for some reason
-is unable to (eg, because of a DNS error), then the first call to
-g_socket_address_enumerator_next() will return an appropriate error
-in * error  However, if the first call to
-g_socket_address_enumerator_next() succeeds, then any further
-internal errors (other than @cancellable being triggered) will be
-ignored.
-
+Frees a unix mount.
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GSocketAddressEnumerator
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_unix_mount_get_device_path">
+<description>
+Gets the device path for a unix mount.
+
+
+</description>
+<parameters>
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress (owned by the caller), or %NULL on
-error (in which case * error will be set) or if there are no
-more addresses.
+<return> a string containing the device path.
 </return>
 </function>
 
-<function name="g_mount_unmount_finish">
+<function name="g_unix_mount_get_fs_type">
 <description>
-Finishes unmounting a mount. If any errors occurred during the operation, 
- error will be set to contain the errors and %FALSE will be returned.
+Gets the filesystem type for the unix mount.
 
-Deprecated: 2.22: Use g_mount_unmount_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> a #GMount.
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+</parameters>
+<return> a string containing the file system type.
+</return>
+</function>
+
+<function name="g_unix_mount_get_mount_path">
+<description>
+Gets the mount path for a unix mount.
+
+
+</description>
+<parameters>
+<parameter name="mount_entry">
+<parameter_description> input #GUnixMountEntry to get the mount path for.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to 
-ignore.
+</parameters>
+<return> the mount path for @mount_entry.
+</return>
+</function>
+
+<function name="g_unix_mount_guess_can_eject">
+<description>
+Guesses whether a Unix mount can be ejected.
+
+
+</description>
+<parameters>
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMountEntry
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mount was successfully unmounted. %FALSE otherwise.
-
+<return> %TRUE if @mount_entry is deemed to be ejectable.
 </return>
 </function>
 
-<function name="g_buffered_output_stream_get_buffer_size">
+<function name="g_unix_mount_guess_icon">
 <description>
-Gets the size of the buffer in the @stream.
+Guesses the icon of a Unix mount. 
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GBufferedOutputStream.
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMountEntry
 </parameter_description>
 </parameter>
 </parameters>
-<return> the current size of the buffer.
+<return> a #GIcon
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_int32">
+<function name="g_unix_mount_guess_name">
 <description>
-Gets a signed 32-bit integer contained within the attribute. If the 
-attribute does not contain a signed 32-bit integer, or is invalid, 
-0 will be returned.
+Guesses the name of a Unix mount. 
+The result is a translated string.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMountEntry
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+</parameters>
+<return> A newly allocated string that must
+be freed with g_free()
+</return>
+</function>
+
+<function name="g_unix_mount_guess_should_display">
+<description>
+Guesses whether a Unix mount should be displayed in the UI.
+
+
+</description>
+<parameters>
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMountEntry
 </parameter_description>
 </parameter>
 </parameters>
-<return> a signed 32-bit integer from the attribute.
+<return> %TRUE if @mount_entry is deemed to be displayable.
 </return>
 </function>
 
-<function name="g_file_attribute_info_list_dup">
+<function name="g_unix_mount_is_readonly">
 <description>
-Makes a duplicate of a file attribute info list.
+Checks if a unix mount is mounted read only.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GFileAttributeInfoList to duplicate.
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a copy of the given @list.
+<return> %TRUE if @mount_entry is read only.
 </return>
 </function>
 
-<function name="g_icon_hash">
+<function name="g_unix_mount_is_system_internal">
 <description>
-Gets a hash for an icon.
+Checks if a unix mount is a system path.
 
 
 </description>
 <parameters>
-<parameter name="icon">
-<parameter_description> #gconstpointer to an icon object.
+<parameter name="mount_entry">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #guint containing a hash for the @icon, suitable for 
-use in a #GHashTable or similar data structure.
+<return> %TRUE if the unix mount is for a system path.
 </return>
 </function>
 
-<function name="g_win32_input_stream_new">
+<function name="g_unix_mount_monitor_new">
 <description>
-Creates a new #GWin32InputStream for the given @fd.
+Gets a new #GUnixMountMonitor. The default rate limit for which the
+monitor will report consecutive changes for the mount and mount
+point entry files is the default for a #GFileMonitor. Use
+g_unix_mount_monitor_set_rate_limit() to change this.
 
-If @close_handle is %TRUE, the handle will be closed
-when the stream is closed.
 
-Note that &quot;handle&quot; here means a Win32 HANDLE, not a &quot;file descriptor&quot;
-as used in the Windows C libraries.
+</description>
+<parameters>
+</parameters>
+<return> a #GUnixMountMonitor. 
+</return>
+</function>
 
+<function name="g_unix_mount_monitor_set_rate_limit">
+<description>
+Sets the rate limit to which the @mount_monitor will report
+consecutive change events to the mount and mount point entry files.
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="handle">
-<parameter_description> a Win32 file handle
+<parameter name="mount_monitor">
+<parameter_description> a #GUnixMountMonitor
 </parameter_description>
 </parameter>
-<parameter name="close_fd">
-<parameter_description> %TRUE to close the handle when done
+<parameter name="limit_msec">
+<parameter_description> a integer with the limit in milliseconds to
+poll for changes.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GWin32InputStream
-</return>
+<return></return>
 </function>
 
-<function name="g_file_info_get_attribute_object">
+<function name="g_unix_mount_point_compare">
 <description>
-Gets the value of a #GObject attribute. If the attribute does 
-not contain a #GObject, %NULL will be returned.
+Compares two unix mount points.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="mount1">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="mount2">
+<parameter_description> a #GUnixMount.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GObject associated with the given @attribute, or
-%NULL otherwise.
+<return> 1, 0 or -1 if @mount1 is greater than, equal to,
+or less than @mount2, respectively.
 </return>
 </function>
 
-<function name="g_socket_listener_accept_socket_finish">
+<function name="g_unix_mount_point_free">
 <description>
-Finishes an async accept operation. See g_socket_listener_accept_socket_async()
-
-Since: 2.22
+Frees a unix mount point.
 
 </description>
 <parameters>
-<parameter name="listener">
-<parameter_description> a #GSocketListener
+<parameter name="mount_point">
+<parameter_description> unix mount point to free.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_unix_mount_point_get_device_path">
+<description>
+Gets the device path for a unix mount point.
+
+
+</description>
+<parameters>
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint.
 </parameter_description>
 </parameter>
-<parameter name="source_object">
-<parameter_description> Optional #GObject identifying this source
+</parameters>
+<return> a string containing the device path.
+</return>
+</function>
+
+<function name="g_unix_mount_point_get_fs_type">
+<description>
+Gets the file system type for the mount point.
+
+
+</description>
+<parameters>
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore.
+</parameters>
+<return> a string containing the file system type.
+</return>
+</function>
+
+<function name="g_unix_mount_point_get_mount_path">
+<description>
+Gets the mount path for a unix mount point.
+
+
+</description>
+<parameters>
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocket on success, %NULL on error.
-
+<return> a string containing the mount path.
 </return>
 </function>
 
-<function name="g_dbus_auth_observer_authorize_authenticated_peer">
+<function name="g_unix_mount_point_guess_can_eject">
 <description>
-Emits the #GDBusAuthObserver::authorize-authenticated-peer signal on @observer.
+Guesses whether a Unix mount point can be ejected.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="observer">
-<parameter_description> A #GDBusAuthObserver.
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint
 </parameter_description>
 </parameter>
-<parameter name="stream">
-<parameter_description> A #GIOStream for the #GDBusConnection.
+</parameters>
+<return> %TRUE if @mount_point is deemed to be ejectable.
+</return>
+</function>
+
+<function name="g_unix_mount_point_guess_icon">
+<description>
+Guesses the icon of a Unix mount point. 
+
+
+</description>
+<parameters>
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint
 </parameter_description>
 </parameter>
-<parameter name="credentials">
-<parameter_description> Credentials received from the peer or %NULL.
+</parameters>
+<return> a #GIcon
+</return>
+</function>
+
+<function name="g_unix_mount_point_guess_name">
+<description>
+Guesses the name of a Unix mount point. 
+The result is a translated string.
+
+
+</description>
+<parameters>
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the peer is authorized, %FALSE if not.
-
+<return> A newly allocated string that must 
+be freed with g_free()
 </return>
 </function>
 
-<function name="g_memory_output_stream_get_data_size">
+<function name="g_unix_mount_point_is_loopback">
 <description>
-Returns the number of bytes from the start up
-to including the last byte written in the stream
-that has not been truncated away.
+Checks if a unix mount point is a loopback device.
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="ostream">
-<parameter_description> a #GMemoryOutputStream
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes written to the stream
-
+<return> %TRUE if the mount point is a loopback. %FALSE otherwise. 
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_return_error_literal">
+<function name="g_unix_mount_point_is_readonly">
 <description>
-Like g_dbus_method_invocation_return_error() but without printf()-style formatting.
-
-This method will free @invocation, you cannot use it afterwards.
+Checks if a unix mount point is read only.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="invocation">
-<parameter_description> A #GDBusMethodInvocation.
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint.
 </parameter_description>
 </parameter>
-<parameter name="domain">
-<parameter_description> A #GQuark for the #GError error domain.
+</parameters>
+<return> %TRUE if a mount point is read only.
+</return>
+</function>
+
+<function name="g_unix_mount_point_is_user_mountable">
+<description>
+Checks if a unix mount point is mountable by the user.
+
+
+</description>
+<parameters>
+<parameter name="mount_point">
+<parameter_description> a #GUnixMountPoint.
 </parameter_description>
 </parameter>
-<parameter name="code">
-<parameter_description> The error code.
+</parameters>
+<return> %TRUE if the mount point is user mountable.
+</return>
+</function>
+
+<function name="g_unix_mount_points_changed_since">
+<description>
+Checks if the unix mount points have changed since a given unix time.
+
+
+</description>
+<parameters>
+<parameter name="time">
+<parameter_description> guint64 to contain a timestamp.
 </parameter_description>
 </parameter>
-<parameter name="message">
-<parameter_description> The error message.
+</parameters>
+<return> %TRUE if the mount points have changed since @time. 
+</return>
+</function>
+
+<function name="g_unix_mount_points_get">
+<description>
+Gets a #GList of #GUnixMountPoint containing the unix mount points.
+If @time_read is set, it will be filled with the mount timestamp,
+allowing for checking if the mounts have changed with
+g_unix_mounts_points_changed_since().
+
+
+</description>
+<parameters>
+<parameter name="time_read">
+<parameter_description> guint64 to contain a timestamp.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return>
+a #GList of the UNIX mountpoints.
+</return>
 </function>
 
-<function name="g_dbus_message_get_serial">
+<function name="g_unix_mounts_changed_since">
 <description>
-Gets the serial for @message.
+Checks if the unix mounts have changed since a given unix time.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="time">
+<parameter_description> guint64 to contain a timestamp.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #guint32.
-
+<return> %TRUE if the mounts have changed since @time. 
 </return>
 </function>
 
-<function name="g_dbus_method_invocation_new">
+<function name="g_unix_mounts_get">
 <description>
-Creates a new #GDBusMethodInvocation object.
+Gets a #GList of #GUnixMountEntry containing the unix mounts.
+If @time_read is set, it will be filled with the mount
+timestamp, allowing for checking if the mounts have changed
+with g_unix_mounts_changed_since().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="sender">
-<parameter_description> The bus name that invoked the method or %NULL if @connection is not a bus connection.
+<parameter name="time_read">
+<parameter_description> guint64 to contain a timestamp, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="object_path">
-<parameter_description> The object path the method was invoked on.
+</parameters>
+<return>
+a #GList of the UNIX mounts.
+</return>
+</function>
+
+<function name="g_unix_output_stream_get_close_fd">
+<description>
+Returns whether the file descriptor of @stream will be
+closed when the stream is closed.
+
+Since: 2.20
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GUnixOutputStream
 </parameter_description>
 </parameter>
-<parameter name="interface_name">
-<parameter_description> The name of the D-Bus interface the method was invoked on.
+</parameters>
+<return> %TRUE if the file descriptor is closed when done
+
+</return>
+</function>
+
+<function name="g_unix_output_stream_get_fd">
+<description>
+Return the UNIX file descriptor that the stream writes to.
+
+Since: 2.20
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GUnixOutputStream
 </parameter_description>
 </parameter>
-<parameter name="method_name">
-<parameter_description> The name of the method that was invoked.
+</parameters>
+<return> The file descriptor of @stream
+
+</return>
+</function>
+
+<function name="g_unix_output_stream_new">
+<description>
+Creates a new #GUnixOutputStream for the given @fd. 
+
+If @close_fd, is %TRUE, the file descriptor will be closed when 
+the output stream is destroyed.
+
+
+</description>
+<parameters>
+<parameter name="fd">
+<parameter_description> a UNIX file descriptor
 </parameter_description>
 </parameter>
-<parameter name="method_info">
-<parameter_description> Information about the method call or %NULL.
+<parameter name="close_fd">
+<parameter_description> %TRUE to close the file descriptor when done
 </parameter_description>
 </parameter>
-<parameter name="connection">
-<parameter_description> The #GDBusConnection the method was invoked on.
+</parameters>
+<return> a new #GOutputStream
+</return>
+</function>
+
+<function name="g_unix_output_stream_set_close_fd">
+<description>
+Sets whether the file descriptor of @stream shall be closed
+when the stream is closed.
+
+Since: 2.20
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GUnixOutputStream
 </parameter_description>
 </parameter>
-<parameter name="message">
-<parameter_description> The D-Bus message as a #GDBusMessage.
+<parameter name="close_fd">
+<parameter_description> %TRUE to close the file descriptor when done
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> The parameters as a #GVariant tuple.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_unix_socket_address_abstract_names_supported">
+<description>
+Checks if abstract unix domain socket names are supported.
+
+Since: 2.22
+
+</description>
+<parameters>
+</parameters>
+<return> %TRUE if supported, %FALSE otherwise
+
+</return>
+</function>
+
+<function name="g_unix_socket_address_get_address_type">
+<description>
+Gets @address's type.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="address">
+<parameter_description> a #GInetSocketAddress
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> The @user_data #gpointer passed to g_dbus_connection_register_object().
+</parameters>
+<return> a #GUnixSocketAddressType
+
+</return>
+</function>
+
+<function name="g_unix_socket_address_get_is_abstract">
+<description>
+Tests if @address is abstract.
+
+Since: 2.22
+
+Deprecated: Use g_unix_socket_address_get_address_type()
+
+</description>
+<parameters>
+<parameter name="address">
+<parameter_description> a #GInetSocketAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMethodInvocation. Free with g_object_unref().
+<return> %TRUE if the address is abstract, %FALSE otherwise
 
 </return>
 </function>
 
-<function name="g_file_attribute_matcher_ref">
+<function name="g_unix_socket_address_get_path">
 <description>
-References a file attribute matcher.
+Gets @address's path, or for abstract sockets the &quot;name&quot;.
+
+Guaranteed to be zero-terminated, but an abstract socket
+may contain embedded zeros, and thus you should use
+g_unix_socket_address_get_path_len() to get the true length
+of this string.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="matcher">
-<parameter_description> a #GFileAttributeMatcher.
+<parameter name="address">
+<parameter_description> a #GInetSocketAddress
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileAttributeMatcher.
+<return> the path for @address
+
 </return>
 </function>
 
-<function name="g_inet_socket_address_get_port">
+<function name="g_unix_socket_address_get_path_len">
 <description>
-Gets @address's port.
+Gets the length of @address's path.
+
+For details, see g_unix_socket_address_get_path().
 
 Since: 2.22
 
@@ -27717,255 +31564,574 @@ Since: 2.22
 </parameter_description>
 </parameter>
 </parameters>
-<return> the port for @address
+<return> the length of the path
 
 </return>
 </function>
 
-<function name="g_io_stream_is_closed">
+<function name="g_unix_socket_address_new">
 <description>
-Checks if a stream is closed.
+Creates a new #GUnixSocketAddress for @path.
+
+To create abstract socket addresses, on systems that support that,
+use g_unix_socket_address_new_abstract().
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
+<parameter name="path">
+<parameter_description> the socket path
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the stream is closed.
+<return> a new #GUnixSocketAddress
 
 </return>
 </function>
 
-<function name="g_file_replace_finish">
+<function name="g_unix_socket_address_new_abstract">
 <description>
-Finishes an asynchronous file replace operation started with 
-g_file_replace_async(). 
+Creates a new %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED
+#GUnixSocketAddress for @path.
 
+Deprecated: Use g_unix_socket_address_new_with_type().
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="path">
+<parameter_description> the abstract name
 </parameter_description>
 </parameter>
-<parameter name="res">
-<parameter_description> a #GAsyncResult. 
+<parameter name="path_len">
+<parameter_description> the length of @path, or -1
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+</parameters>
+<return> a new #GUnixSocketAddress
+
+</return>
+</function>
+
+<function name="g_unix_socket_address_new_with_type">
+<description>
+Creates a new #GUnixSocketAddress of type @type with name @path.
+
+If @type is %G_UNIX_SOCKET_ADDRESS_PATH, this is equivalent to
+calling g_unix_socket_address_new().
+
+If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT, then @path_len
+bytes of @path will be copied to the socket's path, and only those
+bytes will be considered part of the name. (If @path_len is -1,
+then @path is assumed to be NUL-terminated.) For example, if @path
+was &quot;test&quot;, then calling g_socket_address_get_native_size() on the
+returned socket would return 7 (2 bytes of overhead, 1 byte for the
+abstract-socket indicator byte, and 4 bytes for the name &quot;test&quot;).
+
+If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED, then
+ path_len bytes of @path will be copied to the socket's path, the
+rest of the path will be padded with 0 bytes, and the entire
+zero-padded buffer will be considered the name. (As above, if
+ path_len is -1, then @path is assumed to be NUL-terminated.) In
+this case, g_socket_address_get_native_size() will always return
+the full size of a &lt;literal&gt;struct sockaddr_un&lt;/literal&gt;, although
+g_unix_socket_address_get_path_len() will still return just the
+length of @path.
+
+%G_UNIX_SOCKET_ADDRESS_ABSTRACT is preferred over
+%G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED for new programs. Of course,
+when connecting to a server created by another process, you must
+use the appropriate type corresponding to how that process created
+its listening socket.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="path">
+<parameter_description> the name
+</parameter_description>
+</parameter>
+<parameter name="path_len">
+<parameter_description> the length of @path, or -1
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a #GUnixSocketAddressType
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GFileOutputStream, or %NULL on error.
+<return> a new #GUnixSocketAddress
+
+</return>
+</function>
+
+<function name="g_vfs_get_default">
+<description>
+Gets the default #GVfs for the system.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a #GVfs. 
+</return>
+</function>
+
+<function name="g_vfs_get_file_for_path">
+<description>
+Gets a #GFile for @path.
+
+
+</description>
+<parameters>
+<parameter name="vfs">
+<parameter_description> a #GVfs.
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> a string containing a VFS path.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GFile. 
 Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_has_parent">
+<function name="g_vfs_get_file_for_uri">
 <description>
-Checks if @file has a parent, and optionally, if it is @parent.
+Gets a #GFile for @uri.
 
-If @parent is %NULL then this function returns %TRUE if @file has any
-parent at all.  If @parent is non-%NULL then %TRUE is only returned
-if @file is a child of @parent.
+This operation never fails, but the returned object
+might not support any I/O operation if the URI 
+is malformed or if the URI scheme is not supported.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile
+<parameter name="vfs">
+<parameter_description> a#GVfs.
 </parameter_description>
 </parameter>
-<parameter name="parent">
-<parameter_description> the parent to check for, or %NULL
+<parameter name="uri">
+<parameter_description> a string containing a URI 
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @file is a child of @parent (or any parent in the
-case that @parent is %NULL).
+<return> a #GFile. 
+Free the returned object with g_object_unref().
+</return>
+</function>
 
+<function name="g_vfs_get_local">
+<description>
+Gets the local #GVfs for the system.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a #GVfs.
 </return>
 </function>
 
-<function name="g_dbus_is_supported_address">
+<function name="g_vfs_get_supported_uri_schemes">
 <description>
-Like g_dbus_is_address() but also checks if the library suppors the
-transports in @string and that key/value pairs for each transport
-are valid.
+Gets a list of URI schemes supported by @vfs.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> A string.
+<parameter name="vfs">
+<parameter_description> a #GVfs.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> Return location for error or %NULL.
+</parameters>
+<return> a %NULL-terminated array of strings.
+The returned array belongs to GIO and must 
+not be freed or modified.
+</return>
+</function>
+
+<function name="g_vfs_is_active">
+<description>
+Checks if the VFS is active.
+
+
+</description>
+<parameters>
+<parameter name="vfs">
+<parameter_description> a #GVfs.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string is a valid D-Bus address that is
-supported by this library, %FALSE if @error is set.
+<return> %TRUE if construction of the @vfs was successful and it is now active.
+</return>
+</function>
 
+<function name="g_vfs_parse_name">
+<description>
+This operation never fails, but the returned object might 
+not support any I/O operations if the @parse_name cannot 
+be parsed by the #GVfs module.
+
+
+</description>
+<parameters>
+<parameter name="vfs">
+<parameter_description> a #GVfs.
+</parameter_description>
+</parameter>
+<parameter name="parse_name">
+<parameter_description> a string to be parsed by the VFS module.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GFile for the given @parse_name.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_file_info_new">
+<function name="g_volume_can_eject">
 <description>
-Creates a new file info structure.
+Checks if a volume can be ejected.
 
 
 </description>
 <parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GFileInfo.
+<return> %TRUE if the @volume can be ejected. %FALSE otherwise.
 </return>
 </function>
 
-<function name="g_unix_output_stream_new">
+<function name="g_volume_can_mount">
 <description>
-Creates a new #GUnixOutputStream for the given @fd. 
+Checks if a volume can be mounted.
 
-If @close_fd, is %TRUE, the file descriptor will be closed when 
-the output stream is destroyed.
 
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the @volume can be mounted. %FALSE otherwise.
+</return>
+</function>
+
+<function name="g_volume_eject">
+<description>
+Ejects a volume. This is an asynchronous operation, and is
+finished by calling g_volume_eject_finish() with the @volume
+and #GAsyncResult returned in the @callback.
+
+Deprecated: 2.22: Use g_volume_eject_with_operation() instead.
 
 </description>
 <parameters>
-<parameter name="fd">
-<parameter_description> a UNIX file descriptor
+<parameter name="volume">
+<parameter_description> a #GVolume.
 </parameter_description>
 </parameter>
-<parameter name="close_fd">
-<parameter_description> %TRUE to close the file descriptor when done
+<parameter name="flags">
+<parameter_description> flags affecting the unmount if required for eject
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data that gets passed to @callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GOutputStream
+<return></return>
+</function>
+
+<function name="g_volume_eject_finish">
+<description>
+Finishes ejecting a volume. If any errors occured during the operation,
+ error will be set to contain the errors and %FALSE will be returned.
+
+Deprecated: 2.22: Use g_volume_eject_with_operation_finish() instead.
+
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> pointer to a #GVolume.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store an error, or %NULL to ignore
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE, %FALSE if operation failed.
+
 </return>
 </function>
 
-<function name="g_dbus_message_set_path">
+<function name="g_volume_eject_with_operation">
 <description>
-Convenience setter for the %G_DBUS_MESSAGE_HEADER_FIELD_PATH header field.
+Ejects a volume. This is an asynchronous operation, and is
+finished by calling g_volume_eject_with_operation_finish() with the @volume
+and #GAsyncResult data returned in the @callback.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="volume">
+<parameter_description> a #GVolume.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> The value to set.
+<parameter name="flags">
+<parameter_description> flags affecting the unmount if required for eject
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to
+avoid user interaction.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @callback.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_stream_set_pending">
+<function name="g_volume_eject_with_operation_finish">
 <description>
-Sets @stream to have actions pending. If the pending flag is
-already set or @stream is closed, it will return %FALSE and set
- error 
+Finishes ejecting a volume. If any errors occurred during the operation,
+ error will be set to contain the errors and %FALSE will be returned.
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
+<parameter name="volume">
+<parameter_description> a #GVolume.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
 </parameter_description>
 </parameter>
 <parameter name="error">
 <parameter_description> a #GError location to store the error occuring, or %NULL to
-ignore
+ignore.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if pending was previously unset and is now set.
+<return> %TRUE if the volume was successfully ejected. %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_socket_connection_get_remote_address">
+<function name="g_volume_enumerate_identifiers">
 <description>
-Try to get the remote address of a socket connection.
+Gets the kinds of &lt;link linkend=&quot;volume-identifier&quot;&gt;identifiers&lt;/link&gt;
+that @volume has. Use g_volume_get_identifer() to obtain 
+the identifiers themselves.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="connection">
-<parameter_description> a #GSocketConnection
+<parameter name="volume">
+<parameter_description> a #GVolume
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameters>
+<return> a %NULL-terminated array
+of strings containing kinds of identifiers. Use g_strfreev() to free.
+</return>
+</function>
+
+<function name="g_volume_get_activation_root">
+<description>
+Gets the activation root for a #GVolume if it is known ahead of
+mount time. Returns %NULL otherwise. If not %NULL and if @volume
+is mounted, then the result of g_mount_get_root() on the
+#GMount object obtained from g_volume_get_mount() will always
+either be equal or a prefix of what this function returns. In
+other words, in code
+
+&lt;programlisting&gt;
+GMount *mount;
+GFile *mount_root
+GFile *volume_activation_root;
+
+mount = g_volume_get_mount (volume); / * mounted, so never NULL * /
+mount_root = g_mount_get_root (mount);
+volume_activation_root = g_volume_get_activation_root(volume); / * assume not NULL * /
+&lt;/programlisting&gt;
+
+then the expression
+
+&lt;programlisting&gt;
+(g_file_has_prefix (volume_activation_root, mount_root) ||
+      g_file_equal (volume_activation_root, mount_root))
+&lt;/programlisting&gt;
+
+will always be %TRUE.
+
+Activation roots are typically used in #GVolumeMonitor
+implementations to find the underlying mount to shadow, see
+g_mount_is_shadowed() for more details.
+
+Since: 2.18
+
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSocketAddress or %NULL on error.
-Free the returned object with g_object_unref().
+<return> the activation root of @volume or %NULL. Use
+g_object_unref() to free.
 
 </return>
 </function>
 
-<function name="g_socket_service_start">
+<function name="g_volume_get_drive">
 <description>
-Starts the service, i.e. start accepting connections
-from the added sockets when the mainloop runs.
+Gets the drive for the @volume.
 
-This call is threadsafe, so it may be called from a thread
-handling an incomming client request.
 
-Since: 2.22
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GDrive or %NULL if @volume is not associated with a drive.
+The returned object should be unreffed with g_object_unref()
+when no longer needed.
+</return>
+</function>
+
+<function name="g_volume_get_icon">
+<description>
+Gets the icon for @volume.
+
 
 </description>
 <parameters>
-<parameter name="service">
-<parameter_description> a #GSocketService
+<parameter name="volume">
+<parameter_description> a #GVolume.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GIcon.
+The returned object should be unreffed with g_object_unref()
+when no longer needed.
+</return>
 </function>
 
-<function name="g_data_output_stream_put_uint16">
+<function name="g_volume_get_identifier">
 <description>
-Puts an unsigned 16-bit integer into the output stream.
+Gets the identifier of the given kind for @volume. 
+See the &lt;link linkend=&quot;volume-identifier&quot;&gt;introduction&lt;/link&gt;
+for more information about volume identifiers.
 
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GDataOutputStream.
+<parameter name="volume">
+<parameter_description> a #GVolume
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a #guint16.
+<parameter name="kind">
+<parameter_description> the kind of identifier to return
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameters>
+<return> a newly allocated string containing the
+requested identfier, or %NULL if the #GVolume
+doesn't have this kind of identifier
+</return>
+</function>
+
+<function name="g_volume_get_mount">
+<description>
+Gets the mount for the @volume.
+
+
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a #GError, %NULL to ignore.
+</parameters>
+<return> a #GMount or %NULL if @volume isn't mounted.
+The returned object should be unreffed with g_object_unref()
+when no longer needed.
+</return>
+</function>
+
+<function name="g_volume_get_name">
+<description>
+Gets the name of @volume.
+
+
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @data was successfully added to the @stream.
+<return> the name for the given @volume. The returned string should 
+be freed with g_free() when no longer needed.
+</return>
+</function>
+
+<function name="g_volume_get_uuid">
+<description>
+Gets the UUID for the @volume. The reference is typically based on
+the file system UUID for the volume in question and should be
+considered an opaque string. Returns %NULL if there is no UUID
+available.
+
+
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
+</parameter_description>
+</parameter>
+</parameters>
+<return> the UUID for @volume or %NULL if no UUID can be computed.
+The returned string should be freed with g_free() 
+when no longer needed.
 </return>
 </function>
 
@@ -28019,177 +32185,138 @@ if no wants to adopt the #GMount.
 </return>
 </function>
 
-<function name="g_dbus_message_new_method_call">
+<function name="g_volume_monitor_get">
 <description>
-Creates a new #GDBusMessage for a method call.
+Gets the volume monitor used by gio.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> A valid D-Bus name or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> A valid object path.
-</parameter_description>
-</parameter>
-<parameter name="interface_">
-<parameter_description> A valid D-Bus interface name or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="method">
-<parameter_description> A valid method name.
-</parameter_description>
-</parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
-
+<return> a reference to the #GVolumeMonitor used by gio. Call
+g_object_unref() when done with it.
 </return>
 </function>
 
-<function name="g_file_enumerator_get_container">
+<function name="g_volume_monitor_get_connected_drives">
 <description>
-Get the #GFile container which is being enumerated.
+Gets a list of drives connected to the system.
+
+The returned list should be freed with g_list_free(), after
+its elements have been unreffed with g_object_unref().
 
-Since: 2.18
 
 </description>
 <parameters>
-<parameter name="enumerator">
-<parameter_description> a #GFileEnumerator
+<parameter name="volume_monitor">
+<parameter_description> a #GVolumeMonitor.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GFile which is being enumerated.
-
+<return> a #GList of connected #GDrive objects.
 </return>
 </function>
 
-<function name="g_simple_async_result_new_error">
+<function name="g_volume_monitor_get_mount_for_uuid">
 <description>
-Creates a new #GSimpleAsyncResult with a set error.
+Finds a #GMount object by its UUID (see g_mount_get_uuid())
 
 
 </description>
 <parameters>
-<parameter name="source_object">
-<parameter_description> a #GObject, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @callback.
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> a #GQuark.
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> an error code.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> a string with format characters.
+<parameter name="volume_monitor">
+<parameter_description> a #GVolumeMonitor.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a list of values to insert into @format.
+<parameter name="uuid">
+<parameter_description> the UUID to look for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSimpleAsyncResult.
+<return> a #GMount or %NULL if no such mount is available.
+Free the returned object with g_object_unref().
 </return>
 </function>
 
-<function name="g_dbus_annotation_info_lookup">
+<function name="g_volume_monitor_get_mounts">
 <description>
-Looks up the value of an annotation.
+Gets a list of the mounts on the system.
 
-This cost of this function is O(n) in number of annotations.
+The returned list should be freed with g_list_free(), after
+its elements have been unreffed with g_object_unref().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="annotations">
-<parameter_description> A %NULL-terminated array of annotations or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> The name of the annotation to look up.
+<parameter name="volume_monitor">
+<parameter_description> a #GVolumeMonitor.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value or %NULL if not found. Do not free, it is owned by @annotations.
-
+<return> a #GList of #GMount objects.
 </return>
 </function>
 
-<function name="g_socket_accept">
+<function name="g_volume_monitor_get_volume_for_uuid">
 <description>
-Accept incoming connections on a connection-based socket. This removes
-the first outstanding connection request from the listening socket and
-creates a #GSocket object for it.
-
-The @socket must be bound to a local address with g_socket_bind() and
-must be listening for incoming connections (g_socket_listen()).
+Finds a #GVolume object by its UUID (see g_volume_get_uuid())
 
-If there are no outstanding connections then the operation will block
-or return %G_IO_ERROR_WOULD_BLOCK if non-blocking I/O is enabled.
-To be notified of an incoming connection, wait for the %G_IO_IN condition.
-
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="socket">
-<parameter_description> a #GSocket.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a %GCancellable or %NULL
+<parameter name="volume_monitor">
+<parameter_description> a #GVolumeMonitor.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> #GError for error reporting, or %NULL to ignore.
+<parameter name="uuid">
+<parameter_description> the UUID to look for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSocket, or %NULL on error.
+<return> a #GVolume or %NULL if no such volume is available.
 Free the returned object with g_object_unref().
-
 </return>
 </function>
 
-<function name="g_file_set_display_name_async">
+<function name="g_volume_monitor_get_volumes">
 <description>
-Asynchronously sets the display name for a given #GFile.
+Gets a list of the volumes on the system.
 
-For more details, see g_file_set_display_name() which is
-the synchronous version of this call.
+The returned list should be freed with g_list_free(), after
+its elements have been unreffed with g_object_unref().
 
-When the operation is finished, @callback will be called. You can then call
-g_file_set_display_name_finish() to get the result of the operation.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="volume_monitor">
+<parameter_description> a #GVolumeMonitor.
 </parameter_description>
 </parameter>
-<parameter name="display_name">
-<parameter_description> a string.
+</parameters>
+<return> a #GList of #GVolume objects.
+</return>
+</function>
+
+<function name="g_volume_mount">
+<description>
+Mounts a volume. This is an asynchronous operation, and is
+finished by calling g_volume_mount_finish() with the @volume
+and #GAsyncResult returned in the @callback.
+
+Virtual: mount_fn
+
+</description>
+<parameters>
+<parameter name="volume">
+<parameter_description> a #GVolume.
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request. 
+<parameter name="flags">
+<parameter_description> flags affecting the operation
+</parameter_description>
+</parameter>
+<parameter name="mount_operation">
+<parameter_description> a #GMountOperation or %NULL to avoid user interaction.
 </parameter_description>
 </parameter>
 <parameter name="cancellable">
@@ -28197,405 +32324,412 @@ of the request.
 </parameter_description>
 </parameter>
 <parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter_description> a #GAsyncReadyCallback, or %NULL.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter_description> user data that gets passed to @callback
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dbus_message_new_method_error_literal">
+<function name="g_volume_mount_finish">
 <description>
-Creates a new #GDBusMessage that is an error reply to @method_call_message.
+Finishes mounting a volume. If any errors occured during the operation,
+ error will be set to contain the errors and %FALSE will be returned.
+
+If the mount operation succeeded, g_volume_get_mount() on @volume
+is guaranteed to return the mount right after calling this
+function; there's no need to listen for the 'mount-added' signal on
+#GVolumeMonitor.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="method_call_message">
-<parameter_description> A message of type %G_DBUS_MESSAGE_TYPE_METHOD_CALL to
-create a reply message to.
+<parameter name="volume">
+<parameter_description> a #GVolume
 </parameter_description>
 </parameter>
-<parameter name="error_name">
-<parameter_description> A valid D-Bus error name.
+<parameter name="result">
+<parameter_description> a #GAsyncResult
 </parameter_description>
 </parameter>
-<parameter name="error_message">
-<parameter_description> The D-Bus error message.
+<parameter name="error">
+<parameter_description> a #GError location to store an error, or %NULL to ignore
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GDBusMessage. Free with g_object_unref().
-
+<return> %TRUE, %FALSE if operation failed.
 </return>
 </function>
 
-<function name="g_file_unmount_mountable_finish">
+<function name="g_volume_should_automount">
 <description>
-Finishes an unmount operation, see g_file_unmount_mountable() for details.
-
-Finish an asynchronous unmount operation that was started 
-with g_file_unmount_mountable().
+Returns whether the volume should be automatically mounted.
 
-Deprecated: 2.22: Use g_file_unmount_mountable_with_operation_finish() instead.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> a #GAsyncResult.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a #GError, or %NULL
+<parameter name="volume">
+<parameter_description> a #GVolume
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation finished successfully. %FALSE
-otherwise.
-
+<return> %TRUE if the volume should be automatically mounted.
 </return>
 </function>
 
-<function name="g_file_supports_thread_contexts">
+<function name="g_win32_input_stream_get_close_handle">
 <description>
-Checks if @file supports &lt;link
-linkend=&quot;g-main-context-push-thread-default-context&quot;&gt;thread-default
-contexts&lt;/link&gt;. If this returns %FALSE, you cannot perform
-asynchronous operations on @file in a thread that has a
-thread-default context.
+Returns whether the handle of @stream will be
+closed when the stream is closed.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GFile.
+<parameter name="stream">
+<parameter_description> a #GWin32InputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> Whether or not @file supports thread-default contexts.
+<return> %TRUE if the handle is closed when done
 
 </return>
 </function>
 
-<function name="g_socket_address_get_native_size">
+<function name="g_win32_input_stream_get_handle">
 <description>
-Gets the size of @address's native &lt;type&gt;struct sockaddr&lt;/type&gt;.
-You can use this to allocate memory to pass to
-g_socket_address_to_native().
+Return the Windows file handle that the stream reads from.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a #GSocketAddress
+<parameter name="stream">
+<parameter_description> a #GWin32InputStream
 </parameter_description>
 </parameter>
 </parameters>
-<return> the size of the native &lt;type&gt;struct sockaddr&lt;/type&gt; that
- address represents
+<return> The file handle of @stream
 
 </return>
 </function>
 
-<function name="g_file_info_get_attribute_uint64">
+<function name="g_win32_input_stream_new">
 <description>
-Gets a unsigned 64-bit integer contained within the attribute. If the 
-attribute does not contain an unsigned 64-bit integer, or is invalid, 
-0 will be returned.
+Creates a new #GWin32InputStream for the given @fd.
+
+If @close_handle is %TRUE, the handle will be closed
+when the stream is closed.
+
+Note that &quot;handle&quot; here means a Win32 HANDLE, not a &quot;file descriptor&quot;
+as used in the Windows C libraries.
 
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="handle">
+<parameter_description> a Win32 file handle
 </parameter_description>
 </parameter>
-<parameter name="attribute">
-<parameter_description> a file attribute key.
+<parameter name="close_fd">
+<parameter_description> %TRUE to close the handle when done
 </parameter_description>
 </parameter>
 </parameters>
-<return> a unsigned 64-bit integer from the attribute. 
+<return> a new #GWin32InputStream
 </return>
 </function>
 
-<function name="g_file_stop_mountable">
+<function name="g_win32_input_stream_set_close_handle">
 <description>
-Stops a file of type G_FILE_TYPE_MOUNTABLE.
-
-If @cancellable is not %NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
-
-When the operation is finished, @callback will be called. You can then call
-g_file_stop_mountable_finish() to get the result of the operation.
+Sets whether the handle of @stream shall be closed
+when the stream is closed.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags affecting the operation
-</parameter_description>
-</parameter>
-<parameter name="mount_operation">
-<parameter_description> a #GMountOperation, or %NULL to avoid user interaction.
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore.
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied, or %NULL.
+<parameter name="stream">
+<parameter_description> a #GWin32InputStream
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter name="close_handle">
+<parameter_description> %TRUE to close the handle when done
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_stream_close_async">
+<function name="g_win32_output_stream_get_close_handle">
 <description>
-Requests an asynchronous close of the stream, releasing resources
-related to it. When the operation is finished @callback will be
-called. You can then call g_io_stream_close_finish() to get
-the result of the operation.
-
-For behaviour details see g_io_stream_close().
-
-The asynchronous methods have a default fallback that uses threads
-to implement asynchronicity, so they are optional for inheriting
-classes. However, if you override one you must override all.
+Returns whether the handle of @stream will be closed when the
+stream is closed.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
 <parameter name="stream">
-<parameter_description> a #GIOStream
-</parameter_description>
-</parameter>
-<parameter name="io_priority">
-<parameter_description> the io priority of the request
+<parameter_description> a #GWin32OutputStream
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> callback to call when the request is satisfied
+</parameters>
+<return> %TRUE if the handle is closed when done
+
+</return>
+</function>
+
+<function name="g_win32_output_stream_get_handle">
+<description>
+Return the Windows handle that the stream writes to.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GWin32OutputStream
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the data to pass to callback function
+</parameters>
+<return> The handle descriptor of @stream
+
+</return>
+</function>
+
+<function name="g_win32_output_stream_new">
+<description>
+Creates a new #GWin32OutputStream for the given @handle.
+
+If @close_handle, is %TRUE, the handle will be closed when the
+output stream is destroyed.
+
+Since: 2.26
+
+</description>
+<parameters>
+<parameter name="handle">
+<parameter_description> a Win32 file handle
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional cancellable object
+<parameter name="close_handle">
+<parameter_description> %TRUE to close the handle when done
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GOutputStream
+
+</return>
 </function>
 
-<function name="g_dbus_signal_info_unref">
+<function name="g_win32_output_stream_set_close_handle">
 <description>
-If @info is statically allocated, does nothing. Otherwise decreases
-the reference count of @info. When its reference count drops to 0,
-the memory used is freed.
+Sets whether the handle of @stream shall be closed when the stream
+is closed.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusSignalInfo.
+<parameter name="stream">
+<parameter_description> a #GWin32OutputStream
+</parameter_description>
+</parameter>
+<parameter name="close_handle">
+<parameter_description> %TRUE to close the handle when done
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_stream_close">
+<function name="g_zlib_compressor_get_file_info">
 <description>
-Closes the stream, releasing resources related to it. This will also
-closes the individual input and output streams, if they are not already
-closed.
-
-Once the stream is closed, all other operations will return
-%G_IO_ERROR_CLOSED. Closing a stream multiple times will not
-return an error.
-
-Closing a stream will automatically flush any outstanding buffers
-in the stream.
+Returns the #GZlibCompressor:file-info property.
 
-Streams will be automatically closed when the last reference
-is dropped, but you might want to call this function to make sure
-resources are released as early as possible.
-
-Some streams might keep the backing store of the stream (e.g. a file
-descriptor) open after the stream is closed. See the documentation for
-the individual stream for details.
+Since: 2.26
 
-On failure the first error that happened will be reported, but the
-close operation will finish as much as possible. A stream that failed
-to close will still return %G_IO_ERROR_CLOSED for all operations.
-Still, it is important to check and report the error to the user,
-otherwise there might be a loss of data as all data might not be written.
+</description>
+<parameters>
+<parameter name="compressor">
+<parameter_description> a #GZlibCompressor
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GFileInfo, or %NULL
 
-If @cancellable is not NULL, then the operation can be cancelled by
-triggering the cancellable object from another thread. If the operation
-was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
-Cancelling a close will still leave the stream closed, but some streams
-can use a faster close that doesn't block to e.g. check errors.
+</return>
+</function>
 
-The default implementation of this method just calls close on the
-individual input/output streams.
+<function name="g_zlib_compressor_new">
+<description>
+Creates a new #GZlibCompressor.
 
-Since: 2.22
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="stream">
-<parameter_description> a #GIOStream
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore
+<parameter name="format">
+<parameter_description> The format to use for the compressed data
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
+<parameter name="level">
+<parameter_description> compression level (0-9), -1 for default
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on failure
+<return> a new #GZlibCompressor
 
 </return>
 </function>
 
-<function name="g_unix_fd_message_new">
+<function name="g_zlib_compressor_set_file_info">
 <description>
-Creates a new #GUnixFDMessage containing an empty file descriptor
-list.
+Sets @file_info in @compressor. If non-%NULL, and @compressor's
+#GZlibCompressor:format property is %G_ZLIB_COMPRESSOR_FORMAT_GZIP,
+it will be used to set the file name and modification time in
+the GZIP header of the compressed data.
 
-Since: 2.22
+Note: it is an error to call this function while a compression is in
+progress; it may only be called immediately after creation of @compressor,
+or after resetting it with g_converter_reset().
+
+Since: 2.26
 
 </description>
 <parameters>
+<parameter name="compressor">
+<parameter_description> a #GZlibCompressor
+</parameter_description>
+</parameter>
+<parameter name="file_info">
+<parameter_description> a #GFileInfo
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GUnixFDMessage
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dbus_message_get_sender">
+<function name="g_zlib_decompressor_get_file_info">
 <description>
-Convenience getter for the %G_DBUS_MESSAGE_HEADER_FIELD_SENDER header field.
+Retrieves the #GFileInfo constructed from the GZIP header data
+of compressed data processed by @compressor, or %NULL if @decompressor's
+#GZlibDecompressor:format property is not %G_ZLIB_COMPRESSOR_FORMAT_GZIP,
+or the header data was not fully processed yet, or it not present in the
+data stream at all.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="message">
-<parameter_description> A #GDBusMessage.
+<parameter name="decompressor">
+<parameter_description> a #GZlibDecompressor
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value.
+<return> a #GFileInfo, or %NULL
 
 </return>
 </function>
 
-<function name="g_app_info_can_remove_supports_type">
+<function name="g_zlib_decompressor_new">
 <description>
-Checks if a supported content type can be removed from an application.
+Creates a new #GZlibDecompressor.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="appinfo">
-<parameter_description> a #GAppInfo.
+<parameter name="format">
+<parameter_description> The format to use for the compressed data
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if it is possible to remove supported 
-content types from a given @appinfo, %FALSE if not.
+<return> a new #GZlibDecompressor
+
 </return>
 </function>
 
-<function name="g_file_info_get_modification_time">
+<function name="get_all_desktop_entries_for_mime_type">
 <description>
-Gets the modification time of the current @info and sets it
-in @result.
+Returns all the desktop ids for @mime_type. The desktop files
+are listed in an order so that default applications are listed before
+non-default ones, and handlers for inherited mimetypes are listed
+after the base ones.
+
+Optionally doesn't list the desktop ids given in the @except 
+
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> a #GFileInfo.
+<parameter name="mime_type">
+<parameter_description> a mime type.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> a #GTimeVal.
+<parameter name="except">
+<parameter_description> NULL or a strv list
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GList containing the desktop ids which claim
+to handle @mime_type.
+</return>
 </function>
 
-<function name="g_file_get_uri">
+<function name="gvdb_table_get_raw_value">
 <description>
-Gets the URI for the @file.
-
-This call does no blocking i/o.
+Looks up a value named @key in @file.
 
+This call is equivalent to gvdb_table_get_value() except that it
+never byteswaps the value.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="table">
+<parameter_description> a #GvdbTable
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the #GFile's URI.
-The returned string should be freed with g_free() when no longer needed.
+<return> a #GVariant, or %NULL
 </return>
 </function>
 
-<function name="g_dbus_proxy_get_name_owner">
+<function name="gvdb_table_get_table">
 <description>
-The unique name that owns the name that @proxy is for or %NULL if
-no-one currently owns that name. You may connect to the
-#GObject::notify signal to track changes to the
-#GDBusProxy:g-name-owner property.
+Looks up the hash table named @key in @file.
 
-Since: 2.26
+The toplevel hash table in a #GvdbTable can contain reference to
+child hash tables (and those can contain further references...).
+
+If @key is not found in @file then %NULL is returned.  Otherwise, a
+new #GvdbTable is returned, referring to the child hashtable as
+contained in the file.  This newly-created #GvdbTable does not depend
+on the continued existence of @file.
+
+You should call gvdb_table_unref() on the return result when you no
+longer require it.
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> A #GDBusProxy.
+<parameter name="file">
+<parameter_description> a #GvdbTable
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> The name owner or %NULL if no name owner exists. Free with g_free().
-
+<return> a new #GvdbTable, or %NULL
 </return>
 </function>
 
@@ -28625,197 +32759,196 @@ longer require it.
 </return>
 </function>
 
-<function name="g_volume_can_eject">
+<function name="gvdb_table_has_value">
 <description>
-Checks if a volume can be ejected.
+Checks for a value named @key in @file.
 
+Note: this function does not consider non-value nodes (other hash
+tables, for example).
 
 </description>
 <parameters>
-<parameter name="volume">
-<parameter_description> a #GVolume.
+<parameter name="file">
+<parameter_description> a #GvdbTable
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @volume can be ejected. %FALSE otherwise.
+<return> %TRUE if @key is in the table
 </return>
 </function>
 
-<function name="g_local_vfs_new">
+<function name="gvdb_table_is_valid">
 <description>
-Returns a new #GVfs handle for a local vfs.
+Checks if the table is still valid.
 
+An on-disk GVDB can be marked as invalid.  This happens when the file
+has been replaced.  The appropriate action is typically to reopen the
+file.
 
 </description>
 <parameters>
+<parameter name="table">
+<parameter_description> a #GvdbTable
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GVfs handle.
+<return> %TRUE if @table is still valid
 </return>
 </function>
 
-<function name="g_mount_shadow">
+<function name="gvdb_table_list">
 <description>
-Increments the shadow count on @mount. Usually used by
-#GVolumeMonitor implementations when creating a shadow mount for
- mount, see g_mount_is_shadowed() for more information. The caller
-will need to emit the #GMount::changed signal on @mount manually.
+List all of the keys that appear below @key.  The nesting of keys
+within the hash file is defined by the program that created the hash
+file.  One thing is constant: each item in the returned array can be
+concatenated to @key to obtain the full name of that key.
 
-Since: 2.20
+It is not possible to tell from this function if a given key is
+itself a path, a value, or another hash table; you are expected to
+know this for yourself.
+
+You should call g_strfreev() on the return result when you no longer
+require it.
 
 </description>
 <parameters>
-<parameter name="mount">
-<parameter_description> A #GMount.
+<parameter name="file">
+<parameter_description> a #GvdbTable
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_unix_mount_guess_can_eject">
-<description>
-Guesses whether a Unix mount can be ejected.
-
-
-</description>
-<parameters>
-<parameter name="mount_entry">
-<parameter_description> a #GUnixMountEntry
+<parameter name="key">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @mount_entry is deemed to be ejectable.
+<return> a %NULL-terminated string array
 </return>
 </function>
 
-<function name="g_unix_credentials_message_is_supported">
+<function name="gvdb_table_new">
 <description>
-Checks if passing a #GCredential on a #GSocket is supported on this platform.
-
-Since: 2.26
-
-</description>
-<parameters>
-</parameters>
-<return> %TRUE if supported, %FALSE otherwise
+Creates a new #GvdbTable from the contents of the file found at
+ filename 
 
-</return>
-</function>
+The only time this function fails is if the file can not be opened.
+In that case, the #GError that is returned will be an error from
+g_mapped_file_new().
 
-<function name="g_resolver_lookup_by_name_async">
-<description>
-Begins asynchronously resolving @hostname to determine its
-associated IP address(es), and eventually calls @callback, which
-must call g_resolver_lookup_by_name_finish() to get the result.
-See g_resolver_lookup_by_name() for more details.
+An empty or otherwise corrupted file is considered to be a valid
+#GvdbTable with no entries.
 
-Since: 2.22
+You should call gvdb_table_unref() on the return result when you no
+longer require it.
 
 </description>
 <parameters>
-<parameter name="resolver">
-<parameter_description> a #GResolver
-</parameter_description>
-</parameter>
-<parameter name="hostname">
-<parameter_description> the hostname to look up the address of
-</parameter_description>
-</parameter>
-<parameter name="cancellable">
-<parameter_description> a #GCancellable, or %NULL
+<parameter name="filename">
+<parameter_description> the path to the hash file
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> callback to call after resolution completes
+<parameter name="trusted">
+<parameter_description> if the contents of @filename are trusted
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data for @callback
+<parameter name="error">
+<parameter_description> %NULL, or a pointer to a %NULL #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GvdbTable
+</return>
 </function>
 
-<function name="g_content_type_is_a">
+<function name="gvdb_table_ref">
 <description>
-Determines if @type is a subset of @supertype.
-
+Increases the reference count on @file.
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a content type string
-</parameter_description>
-</parameter>
-<parameter name="supertype">
-<parameter_description> a content type string
+<parameter name="file">
+<parameter_description> a #GvdbTable
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is a kind of @supertype,
-%FALSE otherwise.
+<return> a new reference on @file
 </return>
 </function>
 
-<function name="g_dbus_signal_info_ref">
+<function name="gvdb_table_unref">
 <description>
-If @info is statically allocated does nothing. Otherwise increases
-the reference count.
+Decreases the reference count on @file, possibly freeing it.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> A #GDBusSignalInfo
+<parameter name="file">
+<parameter_description> a #GvdbTable
 </parameter_description>
 </parameter>
 </parameters>
-<return> The same @info.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_file_query_filesystem_info_async">
+<function name="gvdb_table_walk">
 <description>
-Asynchronously gets the requested information about the filesystem
-that the specified @file is on. The result is a #GFileInfo object
-that contains key-value attributes (such as type or size for the
-file).
+Looks up the list at @key and iterate over the items in it.
 
-For more details, see g_file_query_filesystem_info() which is the
-synchronous version of this call.
+First, @open_func is called to signal that we are starting to iterate over
+the list.  Then the list is iterated.  When all items in the list have been
+iterated over, the @close_func is called.
 
-When the operation is finished, @callback will be called. You can
-then call g_file_query_info_finish() to get the result of the
-operation.
+When iterating, if a given item in the list is a value then @value_func is
+called.
+
+If a given item in the list is itself a list then @open_func is called.  If
+that function returns %TRUE then the walk begins iterating the items in the
+sublist, until there are no more items, at which point a matching
+ close_func call is made.  If @open_func returns %FALSE then no iteration of
+the sublist occurs and no corresponding @close_func call is made.
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> input #GFile.
+<parameter name="table">
+<parameter_description> a #GvdbTable
 </parameter_description>
 </parameter>
-<parameter name="attributes">
-<parameter_description> an attribute query string.
+<parameter name="key">
+<parameter_description> a key corresponding to a list
 </parameter_description>
 </parameter>
-<parameter name="io_priority">
-<parameter_description> the &lt;link linkend=&quot;io-priority&quot;&gt;I/O priority&lt;/link&gt; 
-of the request.
+<parameter name="open_func">
+<parameter_description> the #GvdbWalkOpenFunc
 </parameter_description>
 </parameter>
-<parameter name="cancellable">
-<parameter_description> optional #GCancellable object, %NULL to ignore. 
+<parameter name="value_func">
+<parameter_description> the #GvdbWalkValueFunc
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> a #GAsyncReadyCallback to call when the request is satisfied
+<parameter name="close_func">
+<parameter_description> the #GvdbWalkCloseFunc
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data to pass to callback function
+<parameter_description> data to pass to the callbacks
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="mime_info_cache_reload">
+<description>
+Reload the mime information for the @dir.
+
+</description>
+<parameters>
+<parameter name="dir">
+<parameter_description> directory path which needs reloading.
 </parameter_description>
 </parameter>
 </parameters>
diff --git a/glib/src/glib_docs.xml b/glib/src/glib_docs.xml
index 5d91b10..a31d688 100644
--- a/glib/src/glib_docs.xml
+++ b/glib/src/glib_docs.xml
@@ -1,2739 +1,2809 @@
 <root>
-<function name="g_str_hash">
+<function name="g_access">
 <description>
-Converts a string to a hash value.
-It can be passed to g_hash_table_new() as the @hash_func 
-parameter, when using strings as keys in a #GHashTable.
+A wrapper for the POSIX access() function. This function is used to
+test a pathname for one or several of read, write or execute
+permissions, or just existence.
+
+On Windows, the file protection mechanism is not at all POSIX-like,
+and the underlying function in the C library only checks the
+FAT-style READONLY attribute, and does not look at the ACL of a
+file at all. This function is this in practise almost useless on
+Windows. Software that needs to handle file permissions on Windows
+more exactly should use the Win32 API.
 
+See your C library manual for more details about access().
+
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="v">
-<parameter_description> a string key
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> as in access()
 </parameter_description>
 </parameter>
 </parameters>
-<return> a hash value corresponding to the key
+<return> zero if the pathname refers to an existing file system
+object that has all the tested permissions, or -1 otherwise or on
+error.
+
 </return>
 </function>
 
-<function name="g_shell_unquote">
+<function name="g_allocator_free">
 <description>
-Unquotes a string as the shell (/bin/sh) would. Only handles
-quotes; if a string contains file globs, arithmetic operators,
-variables, backticks, redirections, or other special-to-the-shell
-features, the result will be different from the result a real shell
-would produce (the variables, backticks, etc. will be passed
-through literally instead of being expanded). This function is
-guaranteed to succeed if applied to the result of
-g_shell_quote(). If it fails, it returns %NULL and sets the
-error. The @quoted_string need not actually contain quoted or
-escaped text; g_shell_unquote() simply goes through the string and
-unquotes/unescapes anything that the shell would. Both single and
-double quotes are handled, as are escapes including escaped
-newlines. The return value must be freed with g_free(). Possible
-errors are in the #G_SHELL_ERROR domain.
-
-Shell quoting rules are a bit strange. Single quotes preserve the
-literal string exactly. escape sequences are not allowed; not even
-\' - if you want a ' in the quoted text, you have to do something
-like 'foo'\''bar'.  Double quotes allow $, `, &quot;, \, and newline to
-be escaped with backslash. Otherwise double quotes preserve things
-literally.
+Frees all of the memory allocated by the #GAllocator.
 
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="quoted_string">
-<parameter_description> shell-quoted string
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> error return location or NULL
+<parameter name="allocator">
+<parameter_description> a #GAllocator.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unquoted string
-</return>
+<return></return>
 </function>
 
-<function name="g_type_remove_class_cache_func">
+<function name="g_allocator_new">
 <description>
-Removes a previously installed #GTypeClassCacheFunc. The cache
-maintained by @cache_func has to be empty when calling
-g_type_remove_class_cache_func() to avoid leaks.
+Creates a new #GAllocator.
+
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="cache_data">
-<parameter_description> data that was given when adding @cache_func
+<parameter name="name">
+<parameter_description> the name of the #GAllocator. This name is used to set the
+name of the #GMemChunk used by the #GAllocator, and is only
+used for debugging.
 </parameter_description>
 </parameter>
-<parameter name="cache_func">
-<parameter_description> a #GTypeClassCacheFunc
+<parameter name="n_preallocs">
+<parameter_description> the number of elements in each block of memory
+allocated.  Larger blocks mean less calls to
+g_malloc(), but some memory may be wasted.  (GLib uses
+128 elements per block by default.) The value must be
+between 1 and 65535.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GAllocator.
+</return>
 </function>
 
-<function name="g_build_pathv">
+<function name="g_array_append_val">
 <description>
-Behaves exactly like g_build_path(), but takes the path elements 
-as a string array, instead of varargs. This function is mainly
-meant for language bindings.
+Adds the value on to the end of the array. The array will grow in
+size automatically if necessary.
 
-Since: 2.8
+&lt;note&gt;&lt;para&gt;g_array_append_val() is a macro which uses a reference
+to the value parameter @v. This means that you cannot use it with
+literal values such as &quot;27&quot;. You must use variables.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="separator">
-<parameter_description> a string used to separator the elements of the path.
+<parameter name="a">
+<parameter_description> a #GArray.
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> %NULL-terminated array of strings containing the path elements.
+<parameter name="v">
+<parameter_description> the value to append to the #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string that must be freed with g_free().
-
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_thread_pool_get_num_threads">
+<function name="g_array_append_vals">
 <description>
-Returns the number of threads currently running in @pool.
-
+Adds @len elements onto the end of the array.
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
+<parameter name="array">
+<parameter_description> a #GArray.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a pointer to the elements to append to the end of the array.
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> the number of elements to append.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of threads currently running
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_bookmark_file_get_applications">
+<function name="g_array_free">
 <description>
-Retrieves the names of the applications that have registered the
-bookmark for @uri.
-
-In the event the URI cannot be found, %NULL is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+Frees the memory allocated for the #GArray. If @free_segment is
+%TRUE it frees the memory block holding the elements as well and
+also each element if @array has a @element_free_func set. Pass
+%FALSE if you want to free the #GArray wrapper but preserve the
+underlying array for use elsewhere. If the reference count of @array
+is greater than one, the #GArray wrapper is preserved but the size
+of @array will be set to zero.
 
-Since: 2.12
+&lt;note&gt;&lt;para&gt;If array elements contain dynamically-allocated memory,
+they should be freed separately.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location of the length of the returned list, or %NULL
+<parameter name="array">
+<parameter_description> a #GArray.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="free_segment">
+<parameter_description> if %TRUE the actual element data is freed as well.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated %NULL-terminated array of strings.
-Use g_strfreev() to free it.
-
+<return> the element data if @free_segment is %FALSE, otherwise
+%NULL.  The element data should be freed using g_free().
 </return>
 </function>
 
-<function name="g_atomic_pointer_get">
+<function name="g_array_get_element_size">
 <description>
-Reads the value of the pointer pointed to by @atomic.
-Also acts as a memory barrier.
+Gets the size of the elements in @array.
 
-Since: 2.4
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to a #gpointer.
+<parameter name="array">
+<parameter_description> A #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value to add to * atomic 
+<return> Size of each element, in bytes.
 
 </return>
 </function>
 
-<function name="g_variant_equal">
+<function name="g_array_index">
 <description>
-Checks if @one and @two have the same type and value.
-
-The types of @one and @two are #gconstpointer only to allow use of
-this function with #GHashTable.  They must each be a #GVariant.
+Returns the element of a #GArray at the given index. The return
+value is cast to the given type.
 
-Since: 2.24
+&lt;example&gt;
+&lt;title&gt;Getting a pointer to an element in a #GArray&lt;/title&gt;
+&lt;programlisting&gt;
+EDayViewEvent *event;
+/&lt;!-- --&gt;* This gets a pointer to the 4th element
+in the array of EDayViewEvent structs. *&lt;!-- --&gt;/
+event = &amp;g_array_index (events, EDayViewEvent, 3);
+&lt;/programlisting&gt;
+&lt;/example&gt;
 
 </description>
 <parameters>
-<parameter name="one">
-<parameter_description> a #GVariant instance
+<parameter name="a">
+<parameter_description> a #GArray.
 </parameter_description>
 </parameter>
-<parameter name="two">
-<parameter_description> a #GVariant instance
+<parameter name="t">
+<parameter_description> the type of the elements.
+</parameter_description>
+</parameter>
+<parameter name="i">
+<parameter_description> the index of the element to return.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @one and @two are equal
+<return> the element of the #GArray at the index given by @i.
 </return>
 </function>
 
-<function name="g_intern_string">
+<function name="g_array_insert_val">
 <description>
-Returns a canonical representation for @string. Interned strings can
-be compared for equality by comparing the pointers, instead of using strcmp().
+Inserts an element into an array at the given index.
 
-Since: 2.10
+&lt;note&gt;&lt;para&gt;g_array_insert_val() is a macro which uses a reference
+to the value parameter @v. This means that you cannot use it with
+literal values such as &quot;27&quot;. You must use variables.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a string
+<parameter name="a">
+<parameter_description> a #GArray.
+</parameter_description>
+</parameter>
+<parameter name="i">
+<parameter_description> the index to place the element at.
+</parameter_description>
+</parameter>
+<parameter name="v">
+<parameter_description> the value to insert into the array.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a canonical representation for the string
-
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_type_add_class_private">
+<function name="g_array_insert_vals">
 <description>
-Registers a private class structure for a classed type;
-when the class is allocated, the private structures for
-the class and all of its parent types are allocated
-sequentially in the same memory block as the public
-structures. This function should be called in the
-type's get_type() function after the type is registered.
-The private structure can be retrieved using the
-G_TYPE_CLASS_GET_PRIVATE() macro.
-
-Since: 2.24
+Inserts @len elements into a #GArray at the given index.
 
 </description>
 <parameters>
-<parameter name="class_type">
-<parameter_description> GType of an classed type.
+<parameter name="array">
+<parameter_description> a #GArray.
+</parameter_description>
+</parameter>
+<parameter name="index_">
+<parameter_description> the index to place the elements at.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a pointer to the elements to insert.
 </parameter_description>
 </parameter>
-<parameter name="private_size">
-<parameter_description> size of private structure.
+<parameter name="len">
+<parameter_description> the number of elements to insert.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GArray.
+</return>
 </function>
 
-<function name="g_cclosure_new">
+<function name="g_array_new">
 <description>
-Creates a new closure which invokes @callback_func with @user_data as
-the last parameter.
-
+Creates a new #GArray with a reference count of 1.
 
 </description>
 <parameters>
-<parameter name="callback_func">
-<parameter_description> the function to invoke
+<parameter name="zero_terminated">
+<parameter_description> %TRUE if the array should have an extra element at
+the end which is set to 0.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @callback_func
+<parameter name="clear_">
+<parameter_description> %TRUE if #GArray elements should be automatically cleared
+to 0 when they are allocated.
 </parameter_description>
 </parameter>
-<parameter name="destroy_data">
-<parameter_description> destroy notify to be called when @user_data is no longer used
+<parameter name="element_size">
+<parameter_description> the size of each element in bytes.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GCClosure
+<return> the new #GArray.
 </return>
 </function>
 
-<function name="g_source_new">
+<function name="g_array_prepend_val">
 <description>
-Creates a new #GSource structure. The size is specified to
-allow creating structures derived from #GSource that contain
-additional data. The size passed in must be at least
-&lt;literal&gt;sizeof (GSource)&lt;/literal&gt;.
+Adds the value on to the start of the array. The array will grow in
+size automatically if necessary.
 
-The source will not initially be associated with any #GMainContext
-and must be added to one with g_source_attach() before it will be
-executed.
+This operation is slower than g_array_append_val() since the
+existing elements in the array have to be moved to make space for
+the new element.
 
+&lt;note&gt;&lt;para&gt;g_array_prepend_val() is a macro which uses a reference
+to the value parameter @v. This means that you cannot use it with
+literal values such as &quot;27&quot;. You must use variables.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="source_funcs">
-<parameter_description> structure containing functions that implement
-the sources behavior.
+<parameter name="a">
+<parameter_description> a #GArray.
 </parameter_description>
 </parameter>
-<parameter name="struct_size">
-<parameter_description> size of the #GSource structure to create.
+<parameter name="v">
+<parameter_description> the value to prepend to the #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly-created #GSource.
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_param_spec_sink">
+<function name="g_array_prepend_vals">
 <description>
-The initial reference count of a newly created #GParamSpec is 1,
-even though no one has explicitly called g_param_spec_ref() on it
-yet. So the initial reference count is flagged as &quot;floating&quot;, until
-someone calls &lt;literal&gt;g_param_spec_ref (pspec); g_param_spec_sink
-(pspec);&lt;/literal&gt; in sequence on it, taking over the initial
-reference count (thus ending up with a @pspec that has a reference
-count of 1 still, but is not flagged &quot;floating&quot; anymore).
+Adds @len elements onto the start of the array.
+
+This operation is slower than g_array_append_vals() since the
+existing elements in the array have to be moved to make space for
+the new elements.
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="array">
+<parameter_description> a #GArray.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a pointer to the elements to prepend to the start of the
+array.
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> the number of elements to prepend.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GArray.
+</return>
 </function>
 
-<function name="g_node_n_children">
+<function name="g_array_ref">
 <description>
-Gets the number of children of a #GNode.
+Atomically increments the reference count of @array by one. This
+function is MT-safe and may be called from any thread.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="array">
+<parameter_description> A #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of children of @node
+<return> The passed in #GArray.
+
 </return>
 </function>
 
-<function name="g_string_chunk_new">
+<function name="g_array_remove_index">
 <description>
-Creates a new #GStringChunk. 
-
+Removes the element at the given index from a #GArray. The following
+elements are moved down one place.
 
 </description>
 <parameters>
-<parameter name="size">
-<parameter_description> the default size of the blocks of memory which are 
-allocated to store the strings. If a particular string 
-is larger than this default size, a larger block of 
-memory will be allocated for it.
+<parameter name="array">
+<parameter_description> a #GArray.
+</parameter_description>
+</parameter>
+<parameter name="index_">
+<parameter_description> the index of the element to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GStringChunk
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_chunk_new">
+<function name="g_array_remove_index_fast">
 <description>
-A convenience macro to allocate an atom of memory from a #GMemChunk.
-It calls g_mem_chunk_alloc() and casts the returned atom to a
-pointer to the given type, avoiding a type cast in the source code.
-
-Deprecated:2.10: Use g_slice_new() instead
+Removes the element at the given index from a #GArray. The last
+element in the array is used to fill in the space, so this function
+does not preserve the order of the #GArray. But it is faster than
+g_array_remove_index().
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> the type of the #GMemChunk atoms, typically a structure name.
+<parameter name="array">
+<parameter_description> a @GArray.
 </parameter_description>
 </parameter>
-<parameter name="chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="index_">
+<parameter_description> the index of the element to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the allocated atom, cast to a pointer to
- type 
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_signal_add_emission_hook">
+<function name="g_array_remove_range">
 <description>
-Adds an emission hook for a signal, which will get called for any emission
-of that signal, independent of the instance. This is possible only
-for signals which don't have #G_SIGNAL_NO_HOOKS flag set.
+Removes the given number of elements starting at the given index
+from a #GArray.  The following elements are moved to close the gap.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="signal_id">
-<parameter_description> the signal identifier, as returned by g_signal_lookup().
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> the detail on which to call the hook.
-</parameter_description>
-</parameter>
-<parameter name="hook_func">
-<parameter_description> a #GSignalEmissionHook function.
+<parameter name="array">
+<parameter_description> a @GArray.
 </parameter_description>
 </parameter>
-<parameter name="hook_data">
-<parameter_description> user data for @hook_func.
+<parameter name="index_">
+<parameter_description> the index of the first element to remove.
 </parameter_description>
 </parameter>
-<parameter name="data_destroy">
-<parameter_description> a #GDestroyNotify for @hook_data.
+<parameter name="length">
+<parameter_description> the number of elements to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the hook id, for later use with g_signal_remove_emission_hook().
+<return> the #GArray.
 </return>
 </function>
 
-<function name="g_dir_read_name">
+<function name="g_array_set_size">
 <description>
-Retrieves the name of the next entry in the directory.  The '.' and
-'..' entries are omitted. On Windows, the returned name is in
-UTF-8. On Unix, it is in the on-disk encoding.
-
+Sets the size of the array, expanding it if necessary. If the array
+was created with @clear_ set to %TRUE, the new elements are set to 0.
 
 </description>
 <parameters>
-<parameter name="dir">
-<parameter_description> a #GDir* created by g_dir_open()
+<parameter name="array">
+<parameter_description> a #GArray.
 </parameter_description>
 </parameter>
-</parameters>
-<return> The entry's name or %NULL if there are no 
-more entries. The return value is owned by GLib and
-must not be modified or freed.
-</return>
-</function>
-
-<function name="g_main_context_wakeup">
-<description>
-If @context is currently waiting in a poll(), interrupt
-the poll(), and continue the iteration process.
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="length">
+<parameter_description> the new size of the #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GArray.
+</return>
 </function>
 
-<function name="g_closure_set_meta_marshal">
+<function name="g_array_sized_new">
 <description>
-Sets the meta marshaller of @closure.  A meta marshaller wraps
- closure-&gt;marshal and modifies the way it is called in some
-fashion. The most common use of this facility is for C callbacks.
-The same marshallers (generated by &lt;link
-linkend=&quot;glib-genmarshal&quot;&gt;glib-genmarshal&lt;/link&gt;) are used
-everywhere, but the way that we get the callback function
-differs. In most cases we want to use @closure-&gt;callback, but in
-other cases we want to use some different technique to retrieve the
-callback function.
-
-For example, class closures for signals (see
-g_signal_type_cclosure_new()) retrieve the callback function from a
-fixed offset in the class structure.  The meta marshaller retrieves
-the right callback and passes it to the marshaller as the
- marshal_data argument.
+Creates a new #GArray with @reserved_size elements preallocated and
+a reference count of 1. This avoids frequent reallocation, if you
+are going to add many elements to the array. Note however that the
+size of the array is still 0.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
+<parameter name="zero_terminated">
+<parameter_description> %TRUE if the array should have an extra element at
+the end with all bits cleared.
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> context-dependent data to pass to @meta_marshal
+<parameter name="clear_">
+<parameter_description> %TRUE if all bits in the array should be cleared to 0 on
+allocation.
 </parameter_description>
 </parameter>
-<parameter name="meta_marshal">
-<parameter_description> a #GClosureMarshal function
+<parameter name="element_size">
+<parameter_description> size of each element in the array.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_variant_get_byte">
-<description>
-Returns the byte value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_BYTE.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a byte #GVariant instance
+<parameter name="reserved_size">
+<parameter_description> number of elements preallocated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #guchar
+<return> the new #GArray.
 </return>
 </function>
 
-<function name="g_get_tmp_dir">
+<function name="g_array_sort">
 <description>
-Gets the directory to use for temporary files. This is found from 
-inspecting the environment variables &lt;envar&gt;TMPDIR&lt;/envar&gt;, 
-&lt;envar&gt;TMP&lt;/envar&gt;, and &lt;envar&gt;TEMP&lt;/envar&gt; in that order. If none 
-of those are defined &quot;/tmp&quot; is returned on UNIX and &quot;C:\&quot; on Windows. 
-The encoding of the returned string is system-defined. On Windows, 
-it is always UTF-8. The return value is never %NULL.
+Sorts a #GArray using @compare_func which should be a qsort()-style
+comparison function (returns less than zero for first arg is less
+than second arg, zero for equal, greater zero if first arg is
+greater than second arg).
 
+If two array elements compare equal, their order in the sorted array
+is undefined.
 
 </description>
 <parameters>
+<parameter name="array">
+<parameter_description> a #GArray.
+</parameter_description>
+</parameter>
+<parameter name="compare_func">
+<parameter_description> comparison function.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the directory to use for temporary files.
-</return>
+<return></return>
 </function>
 
-<function name="g_node_copy_deep">
+<function name="g_array_sort_with_data">
 <description>
-Recursively copies a #GNode and its data.
-
-Since: 2.4
+Like g_array_sort(), but the comparison function receives an extra
+user data argument.
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="array">
+<parameter_description> a #GArray.
 </parameter_description>
 </parameter>
-<parameter name="copy_func">
-<parameter_description> the function which is called to copy the data inside each node,
-or %NULL to use the original data.
+<parameter name="compare_func">
+<parameter_description> comparison function.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to pass to @copy_func
+<parameter name="user_data">
+<parameter_description> data to pass to @compare_func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GNode containing copies of the data in @node.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_ref_sink">
+<function name="g_array_unref">
 <description>
-#GVariant uses a floating reference count system.  All functions with
-names starting with &lt;literal&gt;g_variant_new_&lt;/literal&gt; return floating
-references.
-
-Calling g_variant_ref_sink() on a #GVariant with a floating reference
-will convert the floating reference into a full reference.  Calling
-g_variant_ref_sink() on a non-floating #GVariant results in an
-additional normal reference being added.
-
-In other words, if the @value is floating, then this call &quot;assumes
-ownership&quot; of the floating reference, converting it to a normal
-reference.  If the @value is not floating, then this call adds a
-new normal reference increasing the reference count by one.
-
-All calls that result in a #GVariant instance being inserted into a
-container will call g_variant_ref_sink() on the instance.  This means
-that if the value was just created (and has only its floating
-reference) then the container will assume sole ownership of the value
-at that point and the caller will not need to unreference it.  This
-makes certain common styles of programming much easier while still
-maintaining normal refcounting semantics in situations where values
-are not floating.
+Atomically decrements the reference count of @array by one. If the
+reference count drops to 0, all memory allocated by the array is
+released. This function is MT-safe and may be called from any
+thread.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="array">
+<parameter_description> A #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the same @value
-</return>
+<return></return>
 </function>
 
-<function name="g_match_info_get_string">
+<function name="g_ascii_digit_value">
 <description>
-Returns the string searched with @match_info. This is the
-string passed to g_regex_match() or g_regex_replace() so
-you may not free it before calling this function.
+Determines the numeric value of a character as a decimal
+digit. Differs from g_unichar_digit_value() because it takes
+a char, so there's no worry about sign extension if characters
+are signed.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo
+<parameter name="c">
+<parameter_description> an ASCII character.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the string searched with @match_info
-
+<return> If @c is a decimal digit (according to
+g_ascii_isdigit()), its numeric value. Otherwise, -1.
 </return>
 </function>
 
-<function name="g_sequence_iter_compare">
+<function name="g_ascii_dtostr">
 <description>
-Returns a negative number if @a comes before @b, 0 if they are equal,
-and a positive number if @a comes after @b.
+Converts a #gdouble to a string, using the '.' as
+decimal point.
 
-The @a and @b iterators must point into the same sequence.
+This functions generates enough precision that converting
+the string back using g_ascii_strtod() gives the same machine-number
+(on machines with IEEE compatible 64bit doubles). It is
+guaranteed that the size of the resulting string will never
+be larger than @G_ASCII_DTOSTR_BUF_SIZE bytes.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #GSequenceIter
+<parameter name="buffer">
+<parameter_description> A buffer to place the resulting string in
 </parameter_description>
 </parameter>
-<parameter name="b">
-<parameter_description> a #GSequenceIter
+<parameter name="buf_len">
+<parameter_description> The length of the buffer.
+</parameter_description>
+</parameter>
+<parameter name="d">
+<parameter_description> The #gdouble to convert
 </parameter_description>
 </parameter>
 </parameters>
-<return> A negative number if @a comes before @b, 0 if they are
-equal, and a positive number if @a comes after @b.
-
+<return> The pointer to the buffer with the converted string.
 </return>
 </function>
 
-<function name="g_idle_add_full">
+<function name="g_ascii_formatd">
 <description>
-Adds a function to be called whenever there are no higher priority
-events pending.  If the function returns %FALSE it is automatically
-removed from the list of event sources and will not be called again.
+Converts a #gdouble to a string, using the '.' as
+decimal point. To format the number you pass in
+a printf()-style format string. Allowed conversion
+specifiers are 'e', 'E', 'f', 'F', 'g' and 'G'.
 
-This internally creates a main loop source using g_idle_source_new()
-and attaches it to the main loop context using g_source_attach(). 
-You can do these steps manually if you need greater control.
+If you just want to want to serialize the value into a
+string, use g_ascii_dtostr().
 
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the idle source. Typically this will be in the
-range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.
+<parameter name="buffer">
+<parameter_description> A buffer to place the resulting string in
 </parameter_description>
 </parameter>
-<parameter name="function">
-<parameter_description> function to call
+<parameter name="buf_len">
+<parameter_description> The length of the buffer.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description>     data to pass to @function
+<parameter name="format">
+<parameter_description> The printf()-style format to use for the
+code to use for converting.
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description>   function to call when the idle is removed, or %NULL
+<parameter name="d">
+<parameter_description> The #gdouble to convert
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> The pointer to the buffer with the converted string.
 </return>
 </function>
 
-<function name="g_variant_type_is_definite">
+<function name="g_ascii_strcasecmp">
 <description>
-Determines if the given @type is definite (ie: not indefinite).
+Compare two strings, ignoring the case of ASCII characters.
 
-A type is definite if its type string does not contain any indefinite
-type characters ('*', '?', or 'r').
+Unlike the BSD strcasecmp() function, this only recognizes standard
+ASCII letters and ignores the locale, treating all non-ASCII
+bytes as if they are not letters.
 
-A #GVariant instance may not have an indefinite type, so calling
-this function on the result of g_variant_get_type() will always
-result in %TRUE being returned.  Calling this function on an
-indefinite type like %G_VARIANT_TYPE_ARRAY, however, will result in
-%FALSE being returned.
+This function should be used only on strings that are known to be
+in encodings where the bytes corresponding to ASCII letters always
+represent themselves. This includes UTF-8 and the ISO-8859-*
+charsets, but not for instance double-byte encodings like the
+Windows Codepage 932, where the trailing bytes of double-byte
+characters include all ASCII letters. If you compare two CP932
+strings using this function, you will get false matches.
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="s1">
+<parameter_description> string to compare with @s2.
+</parameter_description>
+</parameter>
+<parameter name="s2">
+<parameter_description> string to compare with @s1.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is definite
+<return> 0 if the strings match, a negative value if @s1 &lt; @s2,
+or a positive value if @s1 &gt; @s2.
 </return>
 </function>
 
-<function name="g_queue_pop_nth">
+<function name="g_ascii_strdown">
 <description>
-Removes the @n'th element of @queue.
+Converts all upper case ASCII letters to lower case ASCII letters.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="str">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the position of the element.
+<parameter name="len">
+<parameter_description> length of @str in bytes, or -1 if @str is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element's data, or %NULL if @n is off the end of @queue.
-
+<return> a newly-allocated string, with all the upper case
+characters in @str converted to lower case, with
+semantics that exactly match g_ascii_tolower(). (Note
+that this is unlike the old g_strdown(), which modified
+the string in place.)
 </return>
 </function>
 
-<function name="g_timer_destroy">
+<function name="g_ascii_strncasecmp">
 <description>
-Destroys a timer, freeing associated resources.
+Compare @s1 and @s2, ignoring the case of ASCII characters and any
+characters after the first @n in each string.
+
+Unlike the BSD strcasecmp() function, this only recognizes standard
+ASCII letters and ignores the locale, treating all non-ASCII
+characters as if they are not letters.
+
+The same warning as in g_ascii_strcasecmp() applies: Use this
+function only on strings known to be in encodings where bytes
+corresponding to ASCII letters always represent themselves.
+
 
 </description>
 <parameters>
-<parameter name="timer">
-<parameter_description> a #GTimer to destroy.
+<parameter name="s1">
+<parameter_description> string to compare with @s2.
+</parameter_description>
+</parameter>
+<parameter name="s2">
+<parameter_description> string to compare with @s1.
+</parameter_description>
+</parameter>
+<parameter name="n">
+<parameter_description>  number of characters to compare.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> 0 if the strings match, a negative value if @s1 &lt; @s2,
+or a positive value if @s1 &gt; @s2.
+</return>
 </function>
 
-<function name="g_slist_prepend">
+<function name="g_ascii_strtod">
 <description>
-Adds a new element on to the start of the list.
+Converts a string to a #gdouble value.
 
-&lt;note&gt;&lt;para&gt;
-The return value is the new start of the list, which 
-may have changed, so make sure you store the new value.
-&lt;/para&gt;&lt;/note&gt;
+This function behaves like the standard strtod() function
+does in the C locale. It does this without actually changing
+the current locale, since that would not be thread-safe.
+A limitation of the implementation is that this function
+will still accept localized versions of infinities and NANs.
 
-|[
-/ * Notice that it is initialized to the empty list. * /
-GSList *list = NULL;
-list = g_slist_prepend (list, &quot;last&quot;);
-list = g_slist_prepend (list, &quot;first&quot;);
-]|
+This function is typically used when reading configuration
+files or other non-user input that should be locale independent.
+To handle input from the user you should normally use the
+locale-sensitive system strtod() function.
+
+To convert from a #gdouble to a string in a locale-insensitive
+way, use g_ascii_dtostr().
+
+If the correct value would cause overflow, plus or minus %HUGE_VAL
+is returned (according to the sign of the value), and %ERANGE is
+stored in %errno. If the correct value would cause underflow,
+zero is returned and %ERANGE is stored in %errno.
+
+This function resets %errno before calling strtod() so that
+you can reliably detect overflow and underflow.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="nptr">
+<parameter_description>    the string to convert to a numeric value.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="endptr">
+<parameter_description>  if non-%NULL, it returns the character after
+the last character used in the conversion.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList
+<return> the #gdouble value.
 </return>
 </function>
 
-<function name="g_rand_double">
+<function name="g_ascii_strtoll">
 <description>
-Returns the next random #gdouble from @rand_ equally distributed over
-the range [0..1).
+Converts a string to a #gint64 value.
+This function behaves like the standard strtoll() function
+does in the C locale. It does this without actually
+changing the current locale, since that would not be
+thread-safe.
 
+This function is typically used when reading configuration
+files or other non-user input that should be locale independent.
+To handle input from the user you should normally use the
+locale-sensitive system strtoll() function.
 
-</description>
-<parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
-</parameter_description>
-</parameter>
-</parameters>
-<return> A random number.
-</return>
-</function>
+If the correct value would cause overflow, %G_MAXINT64 or %G_MININT64
+is returned, and %ERANGE is stored in %errno.  If the base is
+outside the valid range, zero is returned, and %EINVAL is stored
+in %errno.  If the string conversion fails, zero is returned, and
+ endptr returns @nptr (if @endptr is non-%NULL).
 
-<function name="g_dataset_foreach">
-<description>
-Calls the given function for each data element which is associated
-with the given location. Note that this function is NOT thread-safe.
-So unless @datalist can be protected from any modifications during
-invocation of this function, it should not be called.
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="dataset_location">
-<parameter_description> the location identifying the dataset.
+<parameter name="nptr">
+<parameter_description>    the string to convert to a numeric value.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to call for each data element.
+<parameter name="endptr">
+<parameter_description>  if non-%NULL, it returns the character after
+the last character used in the conversion.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="base">
+<parameter_description>    to be used for the conversion, 2..36 or 0
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #gint64 value or zero on error.
+
+</return>
 </function>
 
-<function name="g_variant_type_is_container">
+<function name="g_ascii_strtoull">
 <description>
-Determines if the given @type is a container type.
+Converts a string to a #guint64 value.
+This function behaves like the standard strtoull() function
+does in the C locale. It does this without actually
+changing the current locale, since that would not be
+thread-safe.
 
-Container types are any array, maybe, tuple, or dictionary
-entry types plus the variant type.
+This function is typically used when reading configuration
+files or other non-user input that should be locale independent.
+To handle input from the user you should normally use the
+locale-sensitive system strtoull() function.
 
-This function returns %TRUE for any indefinite type for which every
-definite subtype is a container -- %G_VARIANT_TYPE_ARRAY, for
-example.
+If the correct value would cause overflow, %G_MAXUINT64
+is returned, and %ERANGE is stored in %errno.  If the base is
+outside the valid range, zero is returned, and %EINVAL is stored
+in %errno.  If the string conversion fails, zero is returned, and
+ endptr returns @nptr (if @endptr is non-%NULL).
 
-Since 2.24
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="nptr">
+<parameter_description>    the string to convert to a numeric value.
+</parameter_description>
+</parameter>
+<parameter name="endptr">
+<parameter_description>  if non-%NULL, it returns the character after
+the last character used in the conversion.
+</parameter_description>
+</parameter>
+<parameter name="base">
+<parameter_description>    to be used for the conversion, 2..36 or 0
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is a container type
+<return> the #guint64 value or zero on error.
+
 </return>
 </function>
 
-<function name="g_signal_emit_valist">
+<function name="g_ascii_strup">
 <description>
-Emits a signal.
+Converts all lower case ASCII letters to upper case ASCII letters.
 
-Note that g_signal_emit_valist() resets the return value to the default
-if no handlers are connected, in contrast to g_signal_emitv().
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance the signal is being emitted on.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> the signal id
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> the detail
+<parameter name="str">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
-<parameter name="var_args">
-<parameter_description> a list of parameters to be passed to the signal, followed by a
-location for the return value. If the return type of the signal
-is #G_TYPE_NONE, the return value location can be omitted.
+<parameter name="len">
+<parameter_description> length of @str in bytes, or -1 if @str is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string, with all the lower case
+characters in @str converted to upper case, with
+semantics that exactly match g_ascii_toupper(). (Note
+that this is unlike the old g_strup(), which modified
+the string in place.)
+</return>
 </function>
 
-<function name="g_ptr_array_ref">
+<function name="g_ascii_tolower">
 <description>
-Atomically increments the reference count of @array by one. This
-function is MT-safe and may be called from any thread.
+Convert a character to ASCII lower case.
+
+Unlike the standard C library tolower() function, this only
+recognizes standard ASCII letters and ignores the locale, returning
+all non-ASCII characters unchanged, even if they are lower case
+letters in a particular character set. Also unlike the standard
+library function, this takes and returns a char, not an int, so
+don't call it on %EOF but no need to worry about casting to #guchar
+before passing a possibly non-ASCII character in.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GArray.
+<parameter name="c">
+<parameter_description> any character.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The passed in #GPtrArray.
-
+<return> the result of converting @c to lower case.
+If @c is not an ASCII upper case letter,
+ c is returned unchanged.
 </return>
 </function>
 
-<function name="g_bookmark_file_load_from_data_dirs">
+<function name="g_ascii_toupper">
 <description>
-This function looks for a desktop bookmark file named @file in the
-paths returned from g_get_user_data_dir() and g_get_system_data_dirs(), 
-loads the file into @bookmark and returns the file's full path in 
- full_path   If the file could not be loaded then an %error is
-set to either a #GFileError or #GBookmarkFileError.
+Convert a character to ASCII upper case.
+
+Unlike the standard C library toupper() function, this only
+recognizes standard ASCII letters and ignores the locale, returning
+all non-ASCII characters unchanged, even if they are upper case
+letters in a particular character set. Also unlike the standard
+library function, this takes and returns a char, not an int, so
+don't call it on %EOF but no need to worry about casting to #guchar
+before passing a possibly non-ASCII character in.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="file">
-<parameter_description> a relative path to a filename to open and parse
-</parameter_description>
-</parameter>
-<parameter name="full_path">
-<parameter_description> return location for a string containing the full path
-of the file, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="c">
+<parameter_description> any character.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a key file could be loaded, %FALSE othewise
-
+<return> the result of converting @c to upper case.
+If @c is not an ASCII lower case letter,
+ c is returned unchanged.
 </return>
 </function>
 
-<function name="g_option_context_get_main_group">
+<function name="g_ascii_xdigit_value">
 <description>
-Returns a pointer to the main group of @context.
+Determines the numeric value of a character as a hexidecimal
+digit. Differs from g_unichar_xdigit_value() because it takes
+a char, so there's no worry about sign extension if characters
+are signed.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="c">
+<parameter_description> an ASCII character.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the main group of @context, or %NULL if @context doesn't
-have a main group. Note that group belongs to @context and should
-not be modified or freed.
-
+<return> If @c is a hex digit (according to
+g_ascii_isxdigit()), its numeric value. Otherwise, -1.
 </return>
 </function>
 
-<function name="g_ascii_strdown">
+<function name="g_async_queue_length">
 <description>
-Converts all upper case ASCII letters to lower case ASCII letters.
+Returns the length of the queue, negative values mean waiting
+threads, positive values mean available entries in the
+ queue  Actually this function returns the number of data items in
+the queue minus the number of waiting threads. Thus a return value
+of 0 could mean 'n' entries in the queue and 'n' thread waiting.
+That can happen due to locking of the queue or due to
+scheduling.  
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a string.
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> length of @str in bytes, or -1 if @str is nul-terminated.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string, with all the upper case
-characters in @str converted to lower case, with
-semantics that exactly match g_ascii_tolower(). (Note
-that this is unlike the old g_strdown(), which modified
-the string in place.)
+<return> the length of the @queue.
 </return>
 </function>
 
-<function name="g_bookmark_file_get_groups">
+<function name="g_async_queue_length_unlocked">
 <description>
-Retrieves the list of group names of the bookmark for @uri.
-
-In the event the URI cannot be found, %NULL is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
-
-The returned array is %NULL terminated, so @length may optionally
-be %NULL.
+Returns the length of the queue, negative values mean waiting
+threads, positive values mean available entries in the
+ queue  Actually this function returns the number of data items in
+the queue minus the number of waiting threads. Thus a return value
+of 0 could mean 'n' entries in the queue and 'n' thread waiting.
+That can happen due to locking of the queue or due to
+scheduling. This function must be called while holding the @queue's
+lock.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location for the length of the returned string, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated %NULL-terminated array of group names.
-Use g_strfreev() to free it.
-
+<return> the length of the @queue.
 </return>
 </function>
 
-<function name="g_static_private_set">
+<function name="g_async_queue_lock">
 <description>
-Sets the pointer keyed to @private_key for the current thread and
-the function @notify to be called with that pointer (%NULL or
-non-%NULL), whenever the pointer is set again or whenever the
-current thread ends.
-
-This function works even if g_thread_init() has not yet been called.
-If g_thread_init() is called later, the @data keyed to @private_key
-will be inherited only by the main thread, i.e. the one that called
-g_thread_init().
-
-&lt;note&gt;&lt;para&gt;@notify is used quite differently from @destructor in
-g_private_new().&lt;/para&gt;&lt;/note&gt;
+Acquires the @queue's lock. After that you can only call the
+&lt;function&gt;g_async_queue_*_unlocked()&lt;/function&gt; function variants on that
+ queue  Otherwise it will deadlock.
 
 </description>
 <parameters>
-<parameter name="private_key">
-<parameter_description> a #GStaticPrivate.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the new pointer.
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> a function to be called with the pointer whenever the
-current thread ends or sets this pointer again.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_key_file_get_start_group">
+<function name="g_async_queue_new">
 <description>
-Returns the name of the start group of the file. 
+Creates a new asynchronous queue with the initial reference count of 1.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
 </parameters>
-<return> The start group of the key file.
-
+<return> the new #GAsyncQueue.
 </return>
 </function>
 
-<function name="g_thread_pool_get_max_idle_time">
+<function name="g_async_queue_new_full">
 <description>
-This function will return the maximum @interval that a thread will
-wait in the thread pool for new tasks before being stopped.
-
-If this function returns 0, threads waiting in the thread pool for
-new work are not stopped.
+Creates a new asynchronous queue with an initial reference count of 1 and
+sets up a destroy notify function that is used to free any remaining
+queue items when the queue is destroyed after the final unref.
 
-Since: 2.10
+Since: 2.16
 
 </description>
 <parameters>
+<parameter name="item_free_func">
+<parameter_description> function to free queue elements
+</parameter_description>
+</parameter>
 </parameters>
-<return> the maximum @interval to wait for new tasks in the
-thread pool before stopping the thread (1/1000ths of a second).
+<return> the new #GAsyncQueue.
 
 </return>
 </function>
 
-<function name="g_string_erase">
+<function name="g_async_queue_pop">
 <description>
-Removes @len bytes from a #GString, starting at position @pos.
-The rest of the #GString is shifted down to fill the gap.
+Pops data from the @queue. This function blocks until data become
+available.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> the position of the content to remove
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the number of bytes to remove, or -1 to remove all
-following bytes
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> data from the queue.
 </return>
 </function>
 
-<function name="g_type_set_qdata">
+<function name="g_async_queue_pop_unlocked">
 <description>
-Attaches arbitrary data to a type.
+Pops data from the @queue. This function blocks until data become
+available. This function must be called while holding the @queue's
+lock.
+
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GType
-</parameter_description>
-</parameter>
-<parameter name="quark">
-<parameter_description> a #GQuark id to identify the data
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> data from the queue.
+</return>
 </function>
 
-<function name="g_slist_find_custom">
+<function name="g_async_queue_push">
 <description>
-Finds an element in a #GSList, using a supplied function to 
-find the desired element. It iterates over the list, calling 
-the given function which should return 0 when the desired 
-element is found. The function takes two #gconstpointer arguments, 
-the #GSList element's data as the first argument and the 
-given user data.
-
+Pushes the @data into the @queue. @data must not be %NULL.
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description> user data passed to the function
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each element. 
-It should return 0 when the desired element is found
+<parameter_description> @data to push into the @queue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the found #GSList element, or %NULL if it is not found
-</return>
+<return></return>
 </function>
 
-<function name="g_get_user_data_dir">
+<function name="g_async_queue_push_sorted">
 <description>
-Returns a base directory in which to access application data such
-as icons that is customized for a particular user.  
+Inserts @data into @queue using @func to determine the new
+position. 
 
-On UNIX platforms this is determined using the mechanisms described in
-the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
-XDG Base Directory Specification&lt;/ulink&gt;.
-In this case the directory retrieved will be XDG_DATA_HOME.
+This function requires that the @queue is sorted before pushing on
+new elements.
 
-On Windows is the virtual folder that represents the My Documents
-desktop item. See documentation for CSIDL_PERSONAL.
+This function will lock @queue before it sorts the queue and unlock
+it when it is finished.
 
-Since: 2.6
+For an example of @func see g_async_queue_sort(). 
+
+Since: 2.10
 
 </description>
 <parameters>
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> the @data to push into the @queue
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the #GCompareDataFunc is used to sort @queue. This function
+is passed two elements of the @queue. The function should return
+0 if they are equal, a negative value if the first element
+should be higher in the @queue or a positive value if the first
+element should be lower in the @queue than the second element.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @func.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a string owned by GLib that must not be modified 
-or freed.
-</return>
+<return></return>
 </function>
 
-<function name="g_dgettext">
+<function name="g_async_queue_push_sorted_unlocked">
 <description>
-This function is a wrapper of dgettext() which does not translate
-the message if the default domain as set with textdomain() has no
-translations for the current locale.
-
-The advantage of using this function over dgettext() proper is that
-libraries using this function (like GTK+) will not use translations
-if the application using the library does not have translations for
-the current locale.  This results in a consistent English-only
-interface instead of one having partial translations.  For this
-feature to work, the call to textdomain() and setlocale() should
-precede any g_dgettext() invocations.  For GTK+, it means calling
-textdomain() before gtk_init or its variants.
+Inserts @data into @queue using @func to determine the new
+position.
 
-This function disables translations if and only if upon its first
-call all the following conditions hold:
-&lt;itemizedlist&gt;
-&lt;listitem&gt;@domain is not %NULL&lt;/listitem&gt;
-&lt;listitem&gt;textdomain() has been called to set a default text domain&lt;/listitem&gt;
-&lt;listitem&gt;there is no translations available for the default text domain
-and the current locale&lt;/listitem&gt;
-&lt;listitem&gt;current locale is not &quot;C&quot; or any English locales (those
-starting with &quot;en_&quot;)&lt;/listitem&gt;
-&lt;/itemizedlist&gt;
+This function requires that the @queue is sorted before pushing on
+new elements.
 
-Note that this behavior may not be desired for example if an application
-has its untranslated messages in a language other than English.  In those
-cases the application should call textdomain() after initializing GTK+.
+This function is called while holding the @queue's lock.
 
-Applications should normally not use this function directly,
-but use the _() macro for translations.
+For an example of @func see g_async_queue_sort(). 
 
-Since: 2.18
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="domain">
-<parameter_description> the translation domain to use, or %NULL to use
-the domain set with textdomain()
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue
 </parameter_description>
 </parameter>
-<parameter name="msgid">
-<parameter_description> message to translate
+<parameter name="data">
+<parameter_description> the @data to push into the @queue
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the #GCompareDataFunc is used to sort @queue. This function
+is passed two elements of the @queue. The function should return
+0 if they are equal, a negative value if the first element
+should be higher in the @queue or a positive value if the first
+element should be lower in the @queue than the second element.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The translated string
-
-</return>
+<return></return>
 </function>
 
-<function name="g_ascii_strncasecmp">
+<function name="g_async_queue_push_unlocked">
 <description>
-Compare @s1 and @s2, ignoring the case of ASCII characters and any
-characters after the first @n in each string.
-
-Unlike the BSD strcasecmp() function, this only recognizes standard
-ASCII letters and ignores the locale, treating all non-ASCII
-characters as if they are not letters.
-
-The same warning as in g_ascii_strcasecmp() applies: Use this
-function only on strings known to be in encodings where bytes
-corresponding to ASCII letters always represent themselves.
-
+Pushes the @data into the @queue. @data must not be %NULL. This
+function must be called while holding the @queue's lock.
 
 </description>
 <parameters>
-<parameter name="s1">
-<parameter_description> string to compare with @s2.
-</parameter_description>
-</parameter>
-<parameter name="s2">
-<parameter_description> string to compare with @s1.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description>  number of characters to compare.
+<parameter name="data">
+<parameter_description> @data to push into the @queue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the strings match, a negative value if @s1 &lt; @s2, 
-or a positive value if @s1 &gt; @s2.
-</return>
+<return></return>
 </function>
 
-<function name="g_hash_table_ref">
+<function name="g_async_queue_ref">
 <description>
-Atomically increments the reference count of @hash_table by one.
-This function is MT-safe and may be called from any thread.
+Increases the reference count of the asynchronous @queue by 1. You
+do not need to hold the lock to call this function.
 
-Since: 2.10
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a valid #GHashTable.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the passed in #GHashTable.
-
+<return> the @queue that was passed in (since 2.6)
 </return>
 </function>
 
-<function name="g_main_loop_run">
+<function name="g_async_queue_ref_unlocked">
 <description>
-Runs a main loop until g_main_loop_quit() is called on the loop.
-If this is called for the thread of the loop's #GMainContext,
-it will process events from the loop, otherwise it will
-simply wait.
+Increases the reference count of the asynchronous @queue by 1.
+
+ Deprecated: Since 2.8, reference counting is done atomically
+so g_async_queue_ref() can be used regardless of the @queue's
+lock.
 
 </description>
 <parameters>
-<parameter name="loop">
-<parameter_description> a #GMainLoop
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_push_head_link">
+<function name="g_async_queue_sort">
 <description>
-Adds a new element at the head of the queue.
+Sorts @queue using @func. 
+
+This function will lock @queue before it sorts the queue and unlock
+it when it is finished.
+
+If you were sorting a list of priority numbers to make sure the
+lowest priority would be at the top of the queue, you could use:
+|[
+gint32 id1;
+gint32 id2;
+
+id1 = GPOINTER_TO_INT (element1);
+id2 = GPOINTER_TO_INT (element2);
+
+return (id1 &gt; id2 ? +1 : id1 == id2 ? 0 : -1);
+]|
+
+Since: 2.10
 
 </description>
 <parameters>
 <parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter_description> a #GAsyncQueue
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> a single #GList element, &lt;emphasis&gt;not&lt;/emphasis&gt; a list with
-more than one element.
+<parameter name="func">
+<parameter_description> the #GCompareDataFunc is used to sort @queue. This
+function is passed two elements of the @queue. The function
+should return 0 if they are equal, a negative value if the
+first element should be higher in the @queue or a positive
+value if the first element should be lower in the @queue than
+the second element. 
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_strdown">
+<function name="g_async_queue_sort_unlocked">
 <description>
-Converts a string to lower case.  
+Sorts @queue using @func. 
 
-Deprecated:2.2: This function is totally broken for the reasons discussed 
-in the g_strncasecmp() docs - use g_ascii_strdown() or g_utf8_strdown() 
-instead.
+This function is called while holding the @queue's lock.
+
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the string to convert.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the #GCompareDataFunc is used to sort @queue. This
+function is passed two elements of the @queue. The function
+should return 0 if they are equal, a negative value if the
+first element should be higher in the @queue or a positive
+value if the first element should be lower in the @queue than
+the second element. 
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @func
 </parameter_description>
 </parameter>
 </parameters>
-<return> the string 
-
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_find_custom">
+<function name="g_async_queue_timed_pop">
 <description>
-Finds an element in a #GQueue, using a supplied function to find the
-desired element. It iterates over the queue, calling the given function
-which should return 0 when the desired element is found. The function
-takes two gconstpointer arguments, the #GQueue element's data as the
-first argument and the given user data as the second argument.
+Pops data from the @queue. If no data is received before @end_time,
+%NULL is returned.
+
+To easily calculate @end_time a combination of g_get_current_time()
+and g_time_val_add() can be used.
 
-Since: 2.4
 
 </description>
 <parameters>
 <parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> user data passed to @func
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> a #GCompareFunc to call for each element. It should return 0
-when the desired element is found
+<parameter name="end_time">
+<parameter_description> a #GTimeVal, determining the final time.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The found link, or %NULL if it wasn't found
-
+<return> data from the queue or %NULL, when no data is
+received before @end_time.
 </return>
 </function>
 
-<function name="g_option_group_set_error_hook">
+<function name="g_async_queue_timed_pop_unlocked">
 <description>
-Associates a function with @group which will be called 
-from g_option_context_parse() when an error occurs.
+Pops data from the @queue. If no data is received before @end_time,
+%NULL is returned. This function must be called while holding the
+ queue's lock.
 
-Note that the user data to be passed to @error_func can be
-specified when constructing the group with g_option_group_new().
+To easily calculate @end_time a combination of g_get_current_time()
+and g_time_val_add() can be used.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> a #GOptionGroup
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
-<parameter name="error_func">
-<parameter_description> a function to call when an error occurs
+<parameter name="end_time">
+<parameter_description> a #GTimeVal, determining the final time.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> data from the queue or %NULL, when no data is
+received before @end_time.
+</return>
 </function>
 
-<function name="g_type_children">
+<function name="g_async_queue_try_pop">
 <description>
-Return a newly allocated and 0-terminated array of type IDs, listing the
-child types of @type. The return value has to be g_free()ed after use.
+Tries to pop data from the @queue. If no data is available, %NULL is
+returned.
 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> The parent type.
-</parameter_description>
-</parameter>
-<parameter name="n_children">
-<parameter_description> Optional #guint pointer to contain the number of child types.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Newly allocated and 0-terminated array of child types.
+<return> data from the queue or %NULL, when no data is
+available immediately.
 </return>
 </function>
 
-<function name="g_hash_table_iter_init">
+<function name="g_async_queue_try_pop_unlocked">
 <description>
-Initializes a key/value pair iterator and associates it with
- hash_table  Modifying the hash table after calling this function
-invalidates the returned iterator.
-|[
-GHashTableIter iter;
-gpointer key, value;
-
-g_hash_table_iter_init (&amp;iter, hash_table);
-while (g_hash_table_iter_next (&amp;iter, &amp;key, &amp;value)) 
-{
-/ * do something with key and value * /
-}
-]|
+Tries to pop data from the @queue. If no data is available, %NULL is
+returned. This function must be called while holding the @queue's
+lock.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> an uninitialized #GHashTableIter.
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+</parameters>
+<return> data from the queue or %NULL, when no data is
+available immediately.
+</return>
+</function>
+
+<function name="g_async_queue_unlock">
+<description>
+Releases the queue's lock.
+
+</description>
+<parameters>
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_thread_pool_free">
+<function name="g_async_queue_unref">
 <description>
-Frees all resources allocated for @pool.
-
-If @immediate is %TRUE, no new task is processed for
- pool  Otherwise @pool is not freed before the last task is
-processed. Note however, that no thread of this pool is
-interrupted, while processing a task. Instead at least all still
-running threads can finish their tasks before the @pool is freed.
-
-If @wait_ is %TRUE, the functions does not return before all tasks
-to be processed (dependent on @immediate, whether all or only the
-currently running) are ready. Otherwise the function returns immediately.
-
-After calling this function @pool must not be used anymore. 
+Decreases the reference count of the asynchronous @queue by 1. If
+the reference count went to 0, the @queue will be destroyed and the
+memory allocated will be freed. So you are not allowed to use the
+ queue afterwards, as it might have disappeared. You do not need to
+hold the lock to call this function.
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
-</parameter_description>
-</parameter>
-<parameter name="immediate">
-<parameter_description> should @pool shut down immediately?
-</parameter_description>
-</parameter>
-<parameter name="wait_">
-<parameter_description> should the function wait for all tasks to be finished?
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_flags_get_value_by_nick">
+<function name="g_async_queue_unref_and_unlock">
 <description>
-Looks up a #GFlagsValue by nickname.
+Decreases the reference count of the asynchronous @queue by 1 and
+releases the lock. This function must be called while holding the
+ queue's lock. If the reference count went to 0, the @queue will be
+destroyed and the memory allocated will be freed.
 
+ Deprecated: Since 2.8, reference counting is done atomically
+so g_async_queue_unref() can be used regardless of the @queue's
+lock.
 
 </description>
 <parameters>
-<parameter name="flags_class">
-<parameter_description> a #GFlagsClass
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> the nickname to look up
+<parameter name="queue">
+<parameter_description> a #GAsyncQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GFlagsValue with nickname @nick, or %NULL if there is
-no flag with that nickname
-</return>
+<return></return>
 </function>
 
-<function name="g_type_free_instance">
+<function name="g_atexit">
 <description>
-Frees an instance of a type, returning it to the instance pool for
-the type, if there is one.
+Specifies a function to be called at normal program termination.
+
+Since GLib 2.8.2, on Windows g_atexit() actually is a preprocessor
+macro that maps to a call to the atexit() function in the C
+library. This means that in case the code that calls g_atexit(),
+i.e. atexit(), is in a DLL, the function will be called when the
+DLL is detached from the program. This typically makes more sense
+than that the function is called when the GLib DLL is detached,
+which happened earlier when g_atexit() was a function in the GLib
+DLL.
 
-Like g_type_create_instance(), this function is reserved for
-implementors of fundamental types.
+The behaviour of atexit() in the context of dynamically loaded
+modules is not formally specified and varies wildly.
+
+On POSIX systems, calling g_atexit() (or atexit()) in a dynamically
+loaded module which is unloaded before the program terminates might
+well cause a crash at program exit.
+
+Some POSIX systems implement atexit() like Windows, and have each
+dynamically loaded module maintain an own atexit chain that is
+called when the module is unloaded.
+
+On other POSIX systems, before a dynamically loaded module is
+unloaded, the registered atexit functions (if any) residing in that
+module are called, regardless where the code that registered them
+resided. This is presumably the most robust approach.
+
+As can be seen from the above, for portability it's best to avoid
+calling g_atexit() (or atexit()) except in the main executable of a
+program.
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> an instance of a type.
+<parameter name="func">
+<parameter_description> the function to call on normal program termination.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_hash_table_lookup">
+<function name="g_atomic_int_add">
 <description>
-Looks up a key in a #GHashTable. Note that this function cannot
-distinguish between a key that is not present and one which is present
-and has the value %NULL. If you need this distinction, use
-g_hash_table_lookup_extended().
+Atomically adds @val to the integer pointed to by @atomic.
+Also acts as a memory barrier.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+<parameter name="atomic">
+<parameter_description> a pointer to an integer
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to look up.
+<parameter name="val">
+<parameter_description> the value to add to * atomic
 </parameter_description>
 </parameter>
 </parameters>
-<return> the associated value, or %NULL if the key is not found.
-</return>
+<return></return>
 </function>
 
-<function name="g_path_get_basename">
+<function name="g_atomic_int_compare_and_exchange">
 <description>
-Gets the last component of the filename. If @file_name ends with a 
-directory separator it gets the component before the last slash. If 
- file_name consists only of directory separators (and on Windows, 
-possibly a drive letter), a single separator is returned. If
- file_name is empty, it gets &quot;.&quot;.
+Compares @oldval with the integer pointed to by @atomic and
+if they are equal, atomically exchanges * atomic with @newval.
+Also acts as a memory barrier.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="file_name">
-<parameter_description> the name of the file.
+<parameter name="atomic">
+<parameter_description> a pointer to an integer
+</parameter_description>
+</parameter>
+<parameter name="oldval">
+<parameter_description> the assumed old value of * atomic
+</parameter_description>
+</parameter>
+<parameter name="newval">
+<parameter_description> the new value of * atomic
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the last component of 
-the filename.
+<return> %TRUE, if * atomic was equal @oldval. %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_dataset_id_remove_no_notify">
+<function name="g_atomic_int_exchange_and_add">
 <description>
-Removes an element, without calling its destroy notification
-function.
+Atomically adds @val to the integer pointed to by @atomic.
+It returns the value of * atomic just before the addition
+took place. Also acts as a memory barrier.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="dataset_location">
-<parameter_description> the location identifying the dataset.
+<parameter name="atomic">
+<parameter_description> a pointer to an integer
 </parameter_description>
 </parameter>
-<parameter name="key_id">
-<parameter_description> the #GQuark ID identifying the data element.
+<parameter name="val">
+<parameter_description> the value to add to * atomic
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data previously stored at @key_id, or %NULL if none.
+<return> the value of * atomic before the addition.
+
 </return>
 </function>
 
-<function name="g_base64_encode">
+<function name="g_atomic_int_get">
 <description>
-Encode a sequence of binary data into its Base-64 stringified
-representation.
+Reads the value of the integer pointed to by @atomic.
+Also acts as a memory barrier.
 
-Since: 2.12
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> the binary data to encode
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the length of @data
+<parameter name="atomic">
+<parameter_description> a pointer to an integer
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated, zero-terminated Base-64 encoded
-string representing @data. The returned string must 
-be freed with g_free().
+<return> the value of * atomic
 
 </return>
 </function>
 
-<function name="g_closure_new_object">
+<function name="g_atomic_int_set">
 <description>
-A variant of g_closure_new_simple() which stores @object in the
- data field of the closure and calls g_object_watch_closure() on
- object and the created closure. This function is mainly useful
-when implementing new types of closures.
+Sets the value of the integer pointed to by @atomic.
+Also acts as a memory barrier.
 
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="sizeof_closure">
-<parameter_description> the size of the structure to allocate, must be at least
-&lt;literal&gt;sizeof (GClosure)&lt;/literal&gt;
+<parameter name="atomic">
+<parameter_description> a pointer to an integer
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GObject pointer to store in the @data field of the newly
-allocated #GClosure
+<parameter name="newval">
+<parameter_description> the new value
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GClosure
-</return>
+<return></return>
 </function>
 
-<function name="g_string_chunk_insert">
+<function name="g_atomic_pointer_compare_and_exchange">
 <description>
-Adds a copy of @string to the #GStringChunk.
-It returns a pointer to the new copy of the string 
-in the #GStringChunk. The characters in the string 
-can be changed, if necessary, though you should not 
-change anything after the end of the string.
-
-Unlike g_string_chunk_insert_const(), this function 
-does not check for duplicates. Also strings added 
-with g_string_chunk_insert() will not be searched 
-by g_string_chunk_insert_const() when looking for 
-duplicates.
+Compares @oldval with the pointer pointed to by @atomic and
+if they are equal, atomically exchanges * atomic with @newval.
+Also acts as a memory barrier.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="chunk">
-<parameter_description> a #GStringChunk
+<parameter name="atomic">
+<parameter_description> a pointer to a #gpointer
 </parameter_description>
 </parameter>
-<parameter name="string">
-<parameter_description> the string to add
+<parameter name="oldval">
+<parameter_description> the assumed old value of * atomic
+</parameter_description>
+</parameter>
+<parameter name="newval">
+<parameter_description> the new value of * atomic
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the copy of @string within 
-the #GStringChunk
+<return> %TRUE, if * atomic was equal @oldval. %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_node_destroy">
+<function name="g_atomic_pointer_get">
 <description>
-Removes @root and its children from the tree, freeing any memory
-allocated.
+Reads the value of the pointer pointed to by @atomic.
+Also acts as a memory barrier.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="root">
-<parameter_description> the root of the tree/subtree to destroy
+<parameter name="atomic">
+<parameter_description> a pointer to a #gpointer.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value to add to * atomic 
+
+</return>
 </function>
 
-<function name="g_mem_chunk_clean">
+<function name="g_atomic_pointer_set">
 <description>
-Frees any blocks in a #GMemChunk which are no longer being used.
+Sets the value of the pointer pointed to by @atomic.
+Also acts as a memory barrier.
 
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="atomic">
+<parameter_description> a pointer to a #gpointer
+</parameter_description>
+</parameter>
+<parameter name="newval">
+<parameter_description> the new value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_match_info_next">
+<function name="g_base64_decode">
 <description>
-Scans for the next match using the same parameters of the previous
-call to g_regex_match_full() or g_regex_match() that returned
- match_info 
-
-The match is done on the string passed to the match function, so you
-cannot free it before calling this function.
+Decode a sequence of Base-64 encoded text into binary data
 
-Since: 2.14
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo structure
+<parameter name="text">
+<parameter_description> zero-terminated string with base64 text to decode
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore errors
+<parameter name="out_len">
+<parameter_description> The length of the decoded data is written here
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the string matched, %FALSE otherwise
+<return> a newly allocated buffer containing the binary data
+that @text represents. The returned buffer must
+be freed with g_free().
 
 </return>
 </function>
 
-<function name="g_find_program_in_path">
+<function name="g_base64_decode_inplace">
 <description>
-Locates the first executable named @program in the user's path, in the
-same way that execvp() would locate it. Returns an allocated string
-with the absolute path name, or %NULL if the program is not found in
-the path. If @program is already an absolute path, returns a copy of
- program if @program exists and is executable, and %NULL otherwise.
-
-On Windows, if @program does not have a file type suffix, tries
-with the suffixes .exe, .cmd, .bat and .com, and the suffixes in
-the &lt;envar&gt;PATHEXT&lt;/envar&gt; environment variable. 
-
-On Windows, it looks for the file in the same way as CreateProcess() 
-would. This means first in the directory where the executing
-program was loaded from, then in the current directory, then in the
-Windows 32-bit system directory, then in the Windows directory, and
-finally in the directories in the &lt;envar&gt;PATH&lt;/envar&gt; environment 
-variable. If the program is found, the return value contains the 
-full name including the type suffix.
+Decode a sequence of Base-64 encoded text into binary data
+by overwriting the input data.
 
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="program">
-<parameter_description> a program name in the GLib file name encoding
+<parameter name="text">
+<parameter_description> zero-terminated string with base64 text to decode
+</parameter_description>
+</parameter>
+<parameter name="out_len">
+<parameter_description> The length of the decoded data is written here
 </parameter_description>
 </parameter>
 </parameters>
-<return> absolute path, or %NULL
+<return> The binary data that @text responds. This pointer
+is the same as the input @text.
+
 </return>
 </function>
 
-<function name="g_markup_printf_escaped">
+<function name="g_base64_decode_step">
 <description>
-Formats arguments according to @format, escaping
-all string and character arguments in the fashion
-of g_markup_escape_text(). This is useful when you
-want to insert literal strings into XML-style markup
-output, without having to worry that the strings
-might themselves contain markup.
+Incrementally decode a sequence of binary data from its Base-64 stringified
+representation. By calling this function multiple times you can convert
+data in chunks to avoid having to have the full encoded data in memory.
 
-|[
-const char *store = &quot;Fortnum &amp; Mason&quot;;
-const char *item = &quot;Tea&quot;;
-char *output;
-&#160;
-output = g_markup_printf_escaped (&quot;&lt;purchase&gt;&quot;
-&quot;&lt;store&gt;%s&lt;/store&gt;&quot;
-&quot;&lt;item&gt;%s&lt;/item&gt;&quot;
-&quot;&lt;/purchase&gt;&quot;,
-store, item);
-]|
+The output buffer must be large enough to fit all the data that will
+be written to it. Since base64 encodes 3 bytes in 4 chars you need
+at least: (@len / 4) * 3 + 3 bytes (+ 3 may be needed in case of non-zero
+state).
 
-Since: 2.4
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> printf() style format string
+<parameter name="in">
+<parameter_description> binary input data
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to insert in the format string
+<parameter name="len">
+<parameter_description> max length of @in data to decode
+</parameter_description>
+</parameter>
+<parameter name="out">
+<parameter_description> output buffer
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> Saved state between steps, initialize to 0
+</parameter_description>
+</parameter>
+<parameter name="save">
+<parameter_description> Saved state between steps, initialize to 0
 </parameter_description>
 </parameter>
 </parameters>
-<return> newly allocated result from formatting
-operation. Free with g_free().
+<return> The number of bytes of output that was written
 
 </return>
 </function>
 
-<function name="g_static_private_get">
+<function name="g_base64_encode">
 <description>
-Works like g_private_get() only for a #GStaticPrivate.
+Encode a sequence of binary data into its Base-64 stringified
+representation.
 
-This function works even if g_thread_init() has not yet been called.
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="private_key">
-<parameter_description> a #GStaticPrivate.
+<parameter name="data">
+<parameter_description> the binary data to encode
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> the length of @data
 </parameter_description>
 </parameter>
 </parameters>
-<return> the corresponding pointer.
+<return> a newly allocated, zero-terminated Base-64 encoded
+string representing @data. The returned string must
+be freed with g_free().
+
 </return>
 </function>
 
-<function name="g_param_spec_ulong">
+<function name="g_base64_encode_close">
 <description>
-Creates a new #GParamSpecULong instance specifying a %G_TYPE_ULONG
-property.
+Flush the status from a sequence of calls to g_base64_encode_step().
 
-See g_param_spec_internal() for details on property names.
+The output buffer must be large enough to fit all the data that will
+be written to it. It will need up to 4 bytes, or up to 5 bytes if
+line-breaking is enabled.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
+<parameter name="break_lines">
+<parameter_description> whether to break long lines
 </parameter_description>
 </parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
+<parameter name="out">
+<parameter_description> pointer to destination buffer
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="state">
+<parameter_description> Saved state from g_base64_encode_step()
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="save">
+<parameter_description> Saved state from g_base64_encode_step()
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> The number of bytes of output that was written
+
 </return>
 </function>
 
-<function name="g_string_vprintf">
+<function name="g_base64_encode_step">
 <description>
-Writes a formatted string into a #GString. 
-This function is similar to g_string_printf() except that 
-the arguments to the format string are passed as a va_list.
+Incrementally encode a sequence of binary data into its Base-64 stringified
+representation. By calling this function multiple times you can convert
+data in chunks to avoid having to have the full encoded data in memory.
 
-Since: 2.14
+When all of the data has been converted you must call
+g_base64_encode_close() to flush the saved state.
+
+The output buffer must be large enough to fit all the data that will
+be written to it. Due to the way base64 encodes you will need
+at least: (@len / 3 + 1) * 4 + 4 bytes (+ 4 may be needed in case of
+non-zero state). If you enable line-breaking you will need at least:
+((@len / 3 + 1) * 4 + 4) / 72 + 1 bytes of extra space.
+
+ break_lines is typically used when putting base64-encoded data in emails.
+It breaks the lines at 72 columns instead of putting all of the text on
+the same line. This avoids problems with long lines in the email system.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="in">
+<parameter_description> the binary data to encode
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> the string format. See the printf() documentation
+<parameter name="len">
+<parameter_description> the length of @in
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the parameters to insert into the format string
+<parameter name="break_lines">
+<parameter_description> whether to break long lines
+</parameter_description>
+</parameter>
+<parameter name="out">
+<parameter_description> pointer to destination buffer
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> Saved state between steps, initialize to 0
+</parameter_description>
+</parameter>
+<parameter name="save">
+<parameter_description> Saved state between steps, initialize to 0
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The number of bytes of output that was written
+
+</return>
 </function>
 
-<function name="g_listenv">
+<function name="g_basename">
 <description>
-Gets the names of all variables set in the environment.
+Gets the name of the file without any leading directory components.  
+It returns a pointer into the given file name string.
 
-Since: 2.8
+Deprecated:2.2: Use g_path_get_basename() instead, but notice that
+g_path_get_basename() allocates new memory for the returned string, unlike
+this function which returns a pointer into the argument.
 
 </description>
 <parameters>
+<parameter name="file_name">
+<parameter_description> the name of the file.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a %NULL-terminated list of strings which must be freed
-with g_strfreev().
-
-Programs that want to be portable to Windows should typically use
-this function and g_getenv() instead of using the environ array
-from the C library directly. On Windows, the strings in the environ
-array are in system codepage encoding, while in most of the typical
-use cases for environment variables in GLib-using programs you want
-the UTF-8 encoding that this function and g_getenv() provide.
+<return> the name of the file without any leading directory components.
 
 </return>
 </function>
 
-<function name="g_sequence_set">
+<function name="g_bit_lock">
 <description>
-Changes the data for the item pointed to by @iter to be @data. If
-the sequence has a data destroy function associated with it, that
-function is called on the existing data that @iter pointed to.
+Sets the indicated @lock_bit in @address.  If the bit is already
+set, this call will block until g_bit_unlock() unsets the
+corresponding bit.
 
-Since: 2.14
+Attempting to lock on two different bits within the same integer is
+not supported and will very probably cause deadlocks.
+
+The value of the bit that is set is (1u &lt;&lt; @bit).  If @bit is not
+between 0 and 31 then the result is undefined.
+
+This function accesses @address atomically.  All other accesses to
+ address must be atomic in order for this function to work
+reliably.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="address">
+<parameter_description> a pointer to an integer
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> new data for the item
+<parameter name="lock_bit">
+<parameter_description> a bit value between 0 and 31
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_static_rec_mutex_init">
+<function name="g_bit_trylock">
 <description>
-A #GStaticRecMutex must be initialized with this function before it
-can be used. Alternatively you can initialize it with
-#G_STATIC_REC_MUTEX_INIT.
+Sets the indicated @lock_bit in @address, returning %TRUE if
+successful.  If the bit is already set, returns %FALSE immediately.
+
+Attempting to lock on two different bits within the same integer is
+not supported.
+
+The value of the bit that is set is (1u &lt;&lt; @bit).  If @bit is not
+between 0 and 31 then the result is undefined.
+
+This function accesses @address atomically.  All other accesses to
+ address must be atomic in order for this function to work
+reliably.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to be initialized.
+<parameter name="address">
+<parameter_description> a pointer to an integer
+</parameter_description>
+</parameter>
+<parameter name="lock_bit">
+<parameter_description> a bit value between 0 and 31
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the lock was acquired
+</return>
 </function>
 
-<function name="g_random_int">
+<function name="g_bit_unlock">
 <description>
-Return a random #guint32 equally distributed over the range
-[0..2^32-1].
+Clears the indicated @lock_bit in @address.  If another thread is
+currently blocked in g_bit_lock() on this same bit then it will be
+woken up.
 
+This function accesses @address atomically.  All other accesses to
+ address must be atomic in order for this function to work
+reliably.
+
+Since: 2.24
 
 </description>
 <parameters>
+<parameter name="address">
+<parameter_description> a pointer to an integer
+</parameter_description>
+</parameter>
+<parameter name="lock_bit">
+<parameter_description> a bit value between 0 and 31
+</parameter_description>
+</parameter>
 </parameters>
-<return> A random number.
-</return>
+<return></return>
 </function>
 
-<function name="g_get_application_name">
+<function name="g_blow_chunks">
 <description>
-Gets a human-readable name for the application, as set by
-g_set_application_name(). This name should be localized if
-possible, and is intended for display to the user.  Contrast with
-g_get_prgname(), which gets a non-localized name. If
-g_set_application_name() has not been called, returns the result of
-g_get_prgname() (which may be %NULL if g_set_prgname() has also not
-been called).
+Calls g_mem_chunk_clean() on all #GMemChunk objects.
 
-Since: 2.2
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
 </parameters>
-<return> human-readable application name. may return %NULL
-
-</return>
+<return></return>
 </function>
 
-<function name="g_sequence_get_length">
+<function name="g_bookmark_file_add_application">
 <description>
-Returns the length of @seq
+Adds the application with @name and @exec to the list of
+applications that have registered a bookmark for @uri into
+ bookmark 
 
-Since: 2.14
+Every bookmark inside a #GBookmarkFile must have at least an
+application registered.  Each application must provide a name, a
+command line useful for launching the bookmark, the number of times
+the bookmark has been registered by the application and the last
+time the application registered this bookmark.
 
-</description>
-<parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
-</parameter_description>
-</parameter>
-</parameters>
-<return> the length of @seq
+If @name is %NULL, the name of the application will be the
+same returned by g_get_application_name(); if @exec is %NULL, the
+command line will be a composition of the program name as
+returned by g_get_prgname() and the &quot;%u&quot; modifier, which will be
+expanded to the bookmark's URI.
 
-</return>
-</function>
+This function will automatically take care of updating the
+registrations count and timestamping in case an application
+with the same @name had already registered a bookmark for
+ uri inside @bookmark.
 
-<function name="g_date_set_time">
-<description>
-Sets the value of a date from a #GTime value.
-The time to date conversion is done using the user's current timezone.
+If no bookmark for @uri is found, one is created.
 
-Deprecated: 2.10: Use g_date_set_time_t() instead.
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="date">
-<parameter_description> a #GDate.
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="time_">
-<parameter_description> #GTime value to set.
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of the application registering the bookmark
+or %NULL
+</parameter_description>
+</parameter>
+<parameter name="exec">
+<parameter_description> command line to be used to launch the bookmark or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_test_timer_elapsed">
+<function name="g_bookmark_file_add_group">
 <description>
-Get the time since the last start of the timer with g_test_timer_start().
+Adds @group to the list of groups to which the bookmark for @uri
+belongs to.
 
-Since: 2.16
+If no bookmark for @uri is found then it is created.
+
+Since: 2.12
 
 </description>
 <parameters>
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="group">
+<parameter_description> the group name to be added
+</parameter_description>
+</parameter>
 </parameters>
-<return> the time since the last start of the timer, as a double
-
-</return>
+<return></return>
 </function>
 
-<function name="g_static_rw_lock_reader_lock">
+<function name="g_bookmark_file_free">
 <description>
-Locks @lock for reading. There may be unlimited concurrent locks for
-reading of a #GStaticRWLock at the same time.  If @lock is already
-locked for writing by another thread or if another thread is already
-waiting to lock @lock for writing, this function will block until
- lock is unlocked by the other writing thread and no other writing
-threads want to lock @lock. This lock has to be unlocked by
-g_static_rw_lock_reader_unlock().
+Frees a #GBookmarkFile.
 
-#GStaticRWLock is not recursive. It might seem to be possible to
-recursively lock for reading, but that can result in a deadlock, due
-to writer preference.
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to lock for reading.
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_markup_vprintf_escaped">
+<function name="g_bookmark_file_get_added">
 <description>
-Formats the data in @args according to @format, escaping
-all string and character arguments in the fashion
-of g_markup_escape_text(). See g_markup_printf_escaped().
+Gets the time the bookmark for @uri was added to @bookmark
 
-Since: 2.4
+In the event the URI cannot be found, -1 is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> printf() style format string
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> variable argument list, similar to vprintf()
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> newly allocated result from formatting
-operation. Free with g_free().
+<return> a timestamp
 
 </return>
 </function>
 
-<function name="g_param_spec_gtype">
+<function name="g_bookmark_file_get_app_info">
 <description>
-Creates a new #GParamSpecGType instance specifying a
-%G_TYPE_GTYPE property.
+Gets the registration informations of @app_name for the bookmark for
+ uri   See g_bookmark_file_set_app_info() for more informations about
+the returned data.
 
-See g_param_spec_internal() for details on property names.
+The string returned in @app_exec must be freed.
 
-Since: 2.10
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.  In the
+event that no application with name @app_name has registered a bookmark
+for @uri,  %FALSE is returned and error is set to
+#G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. In the event that unquoting
+the command line fails, an error of the #G_SHELL_ERROR domain is
+set and %FALSE is returned.
 
+Since: 2.12
 
 </description>
 <parameters>
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
 <parameter name="name">
-<parameter_description> canonical name of the property specified
+<parameter_description> an application's name
 </parameter_description>
 </parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
+<parameter name="exec">
+<parameter_description> location for the command line of the application, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="count">
+<parameter_description> return location for the registration count, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="is_a_type">
-<parameter_description> a #GType whose subtypes are allowed as values
-of the property (use %G_TYPE_NONE for any type)
+<parameter name="stamp">
+<parameter_description> return location for the last registration time, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> %TRUE on success.
+
 </return>
 </function>
 
-<function name="g_slist_copy">
+<function name="g_bookmark_file_get_applications">
 <description>
-Copies a #GSList.
+Retrieves the names of the applications that have registered the
+bookmark for @uri.
 
-&lt;note&gt;&lt;para&gt;
-Note that this is a &quot;shallow&quot; copy. If the list elements 
-consist of pointers to data, the pointers are copied but 
-the actual data isn't.
-&lt;/para&gt;&lt;/note&gt;
+In the event the URI cannot be found, %NULL is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-</parameters>
-<return> a copy of @list
-</return>
-</function>
-
-<function name="g_match_info_free">
-<description>
-Frees all the memory associated with the #GMatchInfo structure.
-
-Since: 2.14
-
-</description>
-<parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> return location of the length of the returned list, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated %NULL-terminated array of strings.
+Use g_strfreev() to free it.
+
+</return>
 </function>
 
-<function name="g_variant_dup_bytestring_array">
+<function name="g_bookmark_file_get_description">
 <description>
-Gets the contents of an array of array of bytes #GVariant.  This call
-makes a deep copy; the return result should be released with
-g_strfreev().
-
-If @length is non-%NULL then the number of elements in the result is
-stored there.  In any case, the resulting array will be
-%NULL-terminated.
+Retrieves the description of the bookmark for @uri.
 
-For an empty array, @length will be set to 0 and a pointer to a
-%NULL pointer will be returned.
+In the event the URI cannot be found, %NULL is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
-Since: 2.26
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> an array of array of bytes #GVariant ('aay')
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of the result, or %NULL
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of strings
+<return> a newly allocated string or %NULL if the specified
+URI cannot be found.
+
 </return>
 </function>
 
-<function name="g_variant_type_new_tuple">
+<function name="g_bookmark_file_get_groups">
 <description>
-Constructs a new tuple type, from @items.
+Retrieves the list of group names of the bookmark for @uri.
 
- length is the number of items in @items, or -1 to indicate that
- items is %NULL-terminated.
+In the event the URI cannot be found, %NULL is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
-It is appropriate to call g_variant_type_free() on the return value.
+The returned array is %NULL terminated, so @length may optionally
+be %NULL.
 
-Since 2.24
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="items">
-<parameter_description> an array of #GVariantTypes, one for each item
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
 <parameter name="length">
-<parameter_description> the length of @items, or -1
+<parameter_description> return location for the length of the returned string, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new tuple #GVariantType
-</return>
-</function>
-
-<function name="g_queue_peek_head">
-<description>
-Returns the first element of the queue.
-
-
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data of the first element in the queue, or %NULL if the queue
-is empty.
+<return> a newly allocated %NULL-terminated array of group names.
+Use g_strfreev() to free it.
+
 </return>
 </function>
 
-<function name="g_get_system_data_dirs">
+<function name="g_bookmark_file_get_icon">
 <description>
-Returns an ordered list of base directories in which to access 
-system-wide application data.
-
-On UNIX platforms this is determined using the mechanisms described in
-the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
-XDG Base Directory Specification&lt;/ulink&gt;
-In this case the list of directories retrieved will be XDG_DATA_DIRS.
-
-On Windows the first elements in the list are the Application Data
-and Documents folders for All Users. (These can be determined only
-on Windows 2000 or later and are not present in the list on other
-Windows versions.) See documentation for CSIDL_COMMON_APPDATA and
-CSIDL_COMMON_DOCUMENTS.
-
-Then follows the &quot;share&quot; subfolder in the installation folder for
-the package containing the DLL that calls this function, if it can
-be determined.
-
-Finally the list contains the &quot;share&quot; subfolder in the installation
-folder for GLib, and in the installation folder for the package the
-application's .exe file belongs to.
-
-The installation folders above are determined by looking up the
-folder where the module (DLL or EXE) in question is located. If the
-folder's name is &quot;bin&quot;, its parent is used, otherwise the folder
-itself.
+Gets the icon of the bookmark for @uri.
 
-Note that on Windows the returned list can vary depending on where
-this function is called.
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
-Since: 2.6
+Since: 2.12
 
 </description>
 <parameters>
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="href">
+<parameter_description> return location for the icon's location or %NULL
+</parameter_description>
+</parameter>
+<parameter name="mime_type">
+<parameter_description> return location for the icon's MIME type or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> a %NULL-terminated array of strings owned by GLib that must 
-not be modified or freed.
+<return> %TRUE if the icon for the bookmark for the URI was found.
+You should free the returned strings.
+
 </return>
 </function>
 
-<function name="g_object_class_list_properties">
+<function name="g_bookmark_file_get_is_private">
 <description>
-Get an array of #GParamSpec* for all properties of a class.
+Gets whether the private flag of the bookmark for @uri is set.
 
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.  In the
+event that the private flag cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="oclass">
-<parameter_description> a #GObjectClass
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="n_properties">
-<parameter_description> return location for the length of the returned array
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of #GParamSpec* which should be freed after use
+<return> %TRUE if the private flag is set, %FALSE otherwise.
+
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__BOXED">
+<function name="g_bookmark_file_get_mime_type">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, GBoxed *arg1, gpointer user_data)&lt;/literal&gt;.
+Retrieves the MIME type of the resource pointed by @uri.
+
+In the event the URI cannot be found, %NULL is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.  In the
+event that the MIME type cannot be found, %NULL is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #GBoxed* parameter
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string or %NULL if the specified
+URI cannot be found.
+
+</return>
 </function>
 
-<function name="g_param_spec_pool_lookup">
+<function name="g_bookmark_file_get_modified">
 <description>
-Looks up a #GParamSpec in the pool.
+Gets the time when the bookmark for @uri was last modified.
+
+In the event the URI cannot be found, -1 is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GParamSpecPool
-</parameter_description>
-</parameter>
-<parameter name="param_name">
-<parameter_description> the name to look for
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="owner_type">
-<parameter_description> the owner to look for
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="walk_ancestors">
-<parameter_description> If %TRUE, also try to find a #GParamSpec with @param_name
-owned by an ancestor of @owner_type.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The found #GParamSpec, or %NULL if no matching #GParamSpec was found.
+<return> a timestamp
+
 </return>
 </function>
 
-<function name="g_unichar_combining_class">
+<function name="g_bookmark_file_get_size">
 <description>
-Determines the canonical combining class of a Unicode character.
+Gets the number of bookmarks inside @bookmark.
 
-Since: 2.14
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="uc">
-<parameter_description> a Unicode character
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
 </parameters>
-<return> the combining class of the character
+<return> the number of bookmarks
 
 </return>
 </function>
 
-<function name="g_signal_query">
+<function name="g_bookmark_file_get_title">
 <description>
-Queries the signal system for in-depth information about a
-specific signal. This function will fill in a user-provided
-structure to hold signal-specific information. If an invalid
-signal id is passed in, the @signal_id member of the #GSignalQuery
-is 0. All members filled into the #GSignalQuery structure should
-be considered constant and have to be left untouched.
+Returns the title of the bookmark for @uri.
+
+If @uri is %NULL, the title of @bookmark is returned.
+
+In the event the URI cannot be found, %NULL is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="signal_id">
-<parameter_description> The signal id of the signal to query information for.
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="query">
-<parameter_description> A user provided structure that is filled in with constant
-values upon success.
+<parameter name="uri">
+<parameter_description> a valid URI or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string or %NULL if the specified
+URI cannot be found.
+
+</return>
 </function>
 
-<function name="g_queue_push_nth">
+<function name="g_bookmark_file_get_uris">
 <description>
-Inserts a new element into @queue at the given position
+Returns all URIs of the bookmarks in the bookmark file @bookmark.
+The array of returned URIs will be %NULL-terminated, so @length may
+optionally be %NULL.
 
-Since: 2.4
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the position to insert the new element. If @n is negative or
-larger than the number of elements in the @queue, the element is
-added to the end of the queue.
+<parameter name="length">
+<parameter_description> return location for the number of returned URIs, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated %NULL-terminated array of strings.
+Use g_strfreev() to free it.
+
+</return>
 </function>
 
-<function name="g_queue_insert_after">
+<function name="g_bookmark_file_get_visited">
 <description>
-Inserts @data into @queue after @sibling
+Gets the time the bookmark for @uri was last visited.
 
- sibling must be part of @queue
+In the event the URI cannot be found, -1 is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
-Since: 2.4
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="sibling">
-<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data to insert
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a timestamp.
+
+</return>
 </function>
 
-<function name="g_list_find">
+<function name="g_bookmark_file_has_application">
 <description>
-Finds the element in a #GList which 
-contains the given data.
+Checks whether the bookmark for @uri inside @bookmark has been
+registered by application @name.
+
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the element data to find
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of the application
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the found #GList element, 
-or %NULL if it is not found
+<return> %TRUE if the application @name was found
+
 </return>
 </function>
 
-<function name="g_base64_encode_step">
+<function name="g_bookmark_file_has_group">
 <description>
-Incrementally encode a sequence of binary data into its Base-64 stringified
-representation. By calling this function multiple times you can convert 
-data in chunks to avoid having to have the full encoded data in memory.
-
-When all of the data has been converted you must call 
-g_base64_encode_close() to flush the saved state.
-
-The output buffer must be large enough to fit all the data that will
-be written to it. Due to the way base64 encodes you will need
-at least: (@len / 3 + 1) * 4 + 4 bytes (+ 4 may be needed in case of
-non-zero state). If you enable line-breaking you will need at least:
-((@len / 3 + 1) * 4 + 4) / 72 + 1 bytes of extra space.
+Checks whether @group appears in the list of groups to which
+the bookmark for @uri belongs to.
 
- break_lines is typically used when putting base64-encoded data in emails.
-It breaks the lines at 72 columns instead of putting all of the text on 
-the same line. This avoids problems with long lines in the email system.
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
 Since: 2.12
 
 </description>
 <parameters>
-<parameter name="in">
-<parameter_description> the binary data to encode
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the length of @in
-</parameter_description>
-</parameter>
-<parameter name="break_lines">
-<parameter_description> whether to break long lines
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="out">
-<parameter_description> pointer to destination buffer
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="state">
-<parameter_description> Saved state between steps, initialize to 0
+<parameter name="group">
+<parameter_description> the group name to be searched
 </parameter_description>
 </parameter>
-<parameter name="save">
-<parameter_description> Saved state between steps, initialize to 0
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of bytes of output that was written
+<return> %TRUE if @group was found.
 
 </return>
 </function>
 
-<function name="g_slist_pop_allocator">
+<function name="g_bookmark_file_has_item">
 <description>
-Restores the previous #GAllocator, used when allocating #GSList
-elements.
-
-Note that this function is not available if GLib has been compiled
-with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
+Looks whether the desktop bookmark has an item with its URI set to @uri.
 
-Deprecated: 2.10: It does nothing, since #GSList has been converted
-to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt;
+Since: 2.12
 
 </description>
 <parameters>
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @uri is inside @bookmark, %FALSE otherwise
+
+</return>
 </function>
 
-<function name="g_ptr_array_sort">
+<function name="g_bookmark_file_load_from_data">
 <description>
-Sorts the array, using @compare_func which should be a qsort()-style
-comparison function (returns less than zero for first arg is less
-than second arg, zero for equal, greater than zero if irst arg is
-greater than second arg).
-
-If two array elements compare equal, their order in the sorted array
-is undefined.
+Loads a bookmark file from memory into an empty #GBookmarkFile
+structure.  If the object cannot be created then @error is set to a
+#GBookmarkFileError.
 
-&lt;note&gt;&lt;para&gt;The comparison function for g_ptr_array_sort() doesn't
-take the pointers from the array as arguments, it takes pointers to
-the pointers in the array.&lt;/para&gt;&lt;/note&gt;
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
+<parameter name="bookmark">
+<parameter_description> an empty #GBookmarkFile struct
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function.
+<parameter name="data">
+<parameter_description> desktop bookmarks loaded in memory
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the length of @data in bytes
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if a desktop bookmark could be loaded.
+
+</return>
 </function>
 
-<function name="g_mapped_file_ref">
+<function name="g_bookmark_file_load_from_data_dirs">
 <description>
-Increments the reference count of @file by one.  It is safe to call
-this function from any thread.
+This function looks for a desktop bookmark file named @file in the
+paths returned from g_get_user_data_dir() and g_get_system_data_dirs(), 
+loads the file into @bookmark and returns the file's full path in 
+ full_path   If the file could not be loaded then an %error is
+set to either a #GFileError or #GBookmarkFileError.
 
-Since: 2.22
+Since: 2.12
 
 </description>
 <parameters>
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
 <parameter name="file">
-<parameter_description> a #GMappedFile
+<parameter_description> a relative path to a filename to open and parse
+</parameter_description>
+</parameter>
+<parameter name="full_path">
+<parameter_description> return location for a string containing the full path
+of the file, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the passed in #GMappedFile.
+<return> %TRUE if a key file could be loaded, %FALSE othewise
 
 </return>
 </function>
 
-<function name="g_slist_sort_with_data">
+<function name="g_bookmark_file_load_from_file">
 <description>
-Like g_slist_sort(), but the sort function accepts a user data argument.
+Loads a desktop bookmark file into an empty #GBookmarkFile structure.
+If the file could not be loaded then @error is set to either a #GFileError
+or #GBookmarkFileError.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="bookmark">
+<parameter_description> an empty #GBookmarkFile struct
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function
+<parameter name="filename">
+<parameter_description> the path of a filename to load, in the GLib file name encoding
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to comparison function
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> new head of the list
+<return> %TRUE if a desktop bookmark file could be loaded
+
 </return>
 </function>
 
-<function name="g_strtod">
+<function name="g_bookmark_file_move_item">
 <description>
-Converts a string to a #gdouble value.
-It calls the standard strtod() function to handle the conversion, but
-if the string is not completely converted it attempts the conversion
-again with g_ascii_strtod(), and returns the best match.
+Changes the URI of a bookmark item from @old_uri to @new_uri.  Any
+existing bookmark for @new_uri will be overwritten.  If @new_uri is
+%NULL, then the bookmark is removed.
 
-This function should seldomly be used. The normal situation when reading
-numbers not for human consumption is to use g_ascii_strtod(). Only when
-you know that you must expect both locale formatted and C formatted numbers
-should you use this. Make sure that you don't pass strings such as comma
-separated lists of values, since the commas may be interpreted as a decimal
-point in some locales, causing unexpected results.
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="nptr">
-<parameter_description>    the string to convert to a numeric value.
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="endptr">
-<parameter_description>  if non-%NULL, it returns the character after
-the last character used in the conversion.
+<parameter name="old_uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-</parameters>
-<return> the #gdouble value.
-</return>
-</function>
-
-<function name="g_type_qname">
-<description>
-Get the corresponding quark of the type IDs name.
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> Type to return quark of type name for.
+<parameter name="new_uri">
+<parameter_description> a valid URI, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The type names quark or 0.
+<return> %TRUE if the URI was successfully changed
+
 </return>
 </function>
 
-<function name="g_variant_get_strv">
+<function name="g_bookmark_file_new">
 <description>
-Gets the contents of an array of strings #GVariant.  This call
-makes a shallow copy; the return result should be released with
-g_free(), but the individual strings must not be modified.
-
-If @length is non-%NULL then the number of elements in the result
-is stored there.  In any case, the resulting array will be
-%NULL-terminated.
+Creates a new empty #GBookmarkFile object.
 
-For an empty array, @length will be set to 0 and a pointer to a
-%NULL pointer will be returned.
+Use g_bookmark_file_load_from_file(), g_bookmark_file_load_from_data()
+or g_bookmark_file_load_from_data_dirs() to read an existing bookmark
+file.
 
-Since: 2.24
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> an array of strings #GVariant
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the length of the result, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> an array of constant
-strings
+<return> an empty #GBookmarkFile
+
 </return>
 </function>
 
-<function name="g_param_spec_boxed">
+<function name="g_bookmark_file_remove_application">
 <description>
-Creates a new #GParamSpecBoxed instance specifying a %G_TYPE_BOXED
-derived property.
+Removes application registered with @name from the list of applications
+that have registered a bookmark for @uri inside @bookmark.
 
-See g_param_spec_internal() for details on property names.
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+In the event that no application with name @app_name has registered
+a bookmark for @uri,  %FALSE is returned and error is set to
+#G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="boxed_type">
-<parameter_description> %G_TYPE_BOXED derived type of this property
+<parameter name="name">
+<parameter_description> the name of the application
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> %TRUE if the application was successfully removed.
+
 </return>
 </function>
 
-<function name="g_key_file_get_locale_string">
+<function name="g_bookmark_file_remove_group">
 <description>
-Returns the value associated with @key under @group_name
-translated in the given @locale if available.  If @locale is
-%NULL then the current locale is assumed. 
+Removes @group from the list of groups to which the bookmark
+for @uri belongs to.
 
-If @key cannot be found then %NULL is returned and @error is set 
-to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the value associated
-with @key cannot be interpreted or no suitable translation can
-be found then the untranslated value is returned.
+In the event the URI cannot be found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+In the event no group was defined, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
 
-Since: 2.6
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="locale">
-<parameter_description> a locale identifier or %NULL
+<parameter name="group">
+<parameter_description> the group name to be removed
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -2741,90 +2811,93 @@ Since: 2.6
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string or %NULL if the specified 
-key cannot be found.
+<return> %TRUE if @group was successfully removed.
 
 </return>
 </function>
 
-<function name="g_param_spec_pointer">
+<function name="g_bookmark_file_remove_item">
 <description>
-Creates a new #GParamSpecPoiner instance specifying a pointer property.
-
-See g_param_spec_internal() for details on property names.
+Removes the bookmark for @uri from the bookmark file @bookmark.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
-</return>
-</function>
-
-<function name="g_int_hash">
-<description>
-Converts a pointer to a #gint to a hash value.
-It can be passed to g_hash_table_new() as the @hash_func parameter, 
-when using pointers to integers values as keys in a #GHashTable.
-
+<return> %TRUE if the bookmark was removed successfully.
 
-</description>
-<parameters>
-<parameter name="v">
-<parameter_description> a pointer to a #gint key
-</parameter_description>
-</parameter>
-</parameters>
-<return> a hash value corresponding to the key.
 </return>
 </function>
 
-<function name="g_strdup_vprintf">
+<function name="g_bookmark_file_set_added">
 <description>
-Similar to the standard C vsprintf() function but safer, since it 
-calculates the maximum space required and allocates memory to hold 
-the result. The returned string should be freed with g_free() when 
-no longer needed.
+Sets the time the bookmark for @uri was added into @bookmark.
 
-See also g_vasprintf(), which offers the same functionality, but 
-additionally returns the length of the allocated string.
+If no bookmark for @uri is found then it is created.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of parameters to insert into the format string
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="added">
+<parameter_description> a timestamp or -1 to use the current time
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string holding the result
-</return>
+<return></return>
 </function>
 
-<function name="g_bookmark_file_remove_item">
+<function name="g_bookmark_file_set_app_info">
 <description>
-Removes the bookmark for @uri from the bookmark file @bookmark.
+Sets the meta-data of application @name inside the list of
+applications that have registered a bookmark for @uri inside
+ bookmark 
+
+You should rarely use this function; use g_bookmark_file_add_application()
+and g_bookmark_file_remove_application() instead.
+
+ name can be any UTF-8 encoded string used to identify an
+application.
+ exec can have one of these two modifiers: &quot;%f&quot;, which will
+be expanded as the local file name retrieved from the bookmark's
+URI; &quot;%u&quot;, which will be expanded as the bookmark's URI.
+The expansion is done automatically when retrieving the stored
+command line using the g_bookmark_file_get_app_info() function.
+ count is the number of times the application has registered the
+bookmark; if is &lt; 0, the current registration count will be increased
+by one, if is 0, the application with @name will be removed from
+the list of registered applications.
+ stamp is the Unix time of the last registration; if it is -1, the
+current time will be used.
+
+If you try to remove an application by setting its registration count to
+zero, and no bookmark for @uri is found, %FALSE is returned and
+ error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND; similarly,
+in the event that no application @name has registered a bookmark
+for @uri,  %FALSE is returned and error is set to
+#G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED.  Otherwise, if no bookmark
+for @uri is found, one is created.
 
 Since: 2.12
 
@@ -2838,308 +2911,319 @@ Since: 2.12
 <parameter_description> a valid URI
 </parameter_description>
 </parameter>
+<parameter name="name">
+<parameter_description> an application's name
+</parameter_description>
+</parameter>
+<parameter name="exec">
+<parameter_description> an application's command line
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> the number of registrations done for this application
+</parameter_description>
+</parameter>
+<parameter name="stamp">
+<parameter_description> the time of the last registration for this application
+</parameter_description>
+</parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the bookmark was removed successfully.
+<return> %TRUE if the application's meta-data was successfully
+changed.
 
 </return>
 </function>
 
-<function name="g_completion_complete_utf8">
+<function name="g_bookmark_file_set_description">
 <description>
-Attempts to complete the string @prefix using the #GCompletion target items.
-In contrast to g_completion_complete(), this function returns the largest common
-prefix that is a valid UTF-8 string, omitting a possible common partial 
-character.
+Sets @description as the description of the bookmark for @uri.
 
-You should use this function instead of g_completion_complete() if your 
-items are UTF-8 strings.
+If @uri is %NULL, the description of @bookmark is set.
 
-Since: 2.4
+If a bookmark for @uri cannot be found then it is created.
 
-Deprecated: 2.26: Rarely used API
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="cmp">
-<parameter_description> the #GCompletion
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="prefix">
-<parameter_description> the prefix string, typically used by the user, which is compared
-with each of the items
+<parameter name="uri">
+<parameter_description> a valid URI or %NULL
 </parameter_description>
 </parameter>
-<parameter name="new_prefix">
-<parameter_description> if non-%NULL, returns the longest prefix which is common to all
-items that matched @prefix, or %NULL if no items matched @prefix.
-This string should be freed when no longer needed.
+<parameter name="description">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the list of items whose strings begin with @prefix. This should
-not be changed.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_node_find">
+<function name="g_bookmark_file_set_groups">
 <description>
-Finds a #GNode in a tree.
+Sets a list of group names for the item with URI @uri.  Each previously
+set group name list is removed.
+
+If @uri cannot be found then an item for it is created.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="root">
-<parameter_description> the root #GNode of the tree to search
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="order">
-<parameter_description> the order in which nodes are visited - %G_IN_ORDER, 
-%G_PRE_ORDER, %G_POST_ORDER, or %G_LEVEL_ORDER
+<parameter name="uri">
+<parameter_description> an item's URI
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> which types of children are to be searched, one of 
-%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
+<parameter name="groups">
+<parameter_description> an array of group names, or %NULL to remove all groups
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data to find
+<parameter name="length">
+<parameter_description> number of group name values in @groups
 </parameter_description>
 </parameter>
 </parameters>
-<return> the found #GNode, or %NULL if the data is not found
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_push_nth_link">
+<function name="g_bookmark_file_set_icon">
 <description>
-Inserts @link into @queue at the given position.
+Sets the icon for the bookmark for @uri. If @href is %NULL, unsets
+the currently set icon. @href can either be a full URL for the icon
+file or the icon name following the Icon Naming specification.
 
-Since: 2.4
+If no bookmark for @uri is found one is created.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the position to insert the link. If this is negative or larger than
-the number of elements in @queue, the link is added to the end of
- queue 
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> the link to add to @queue
+<parameter name="href">
+<parameter_description> the URI of the icon for the bookmark, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="mime_type">
+<parameter_description> the MIME type of the icon for the bookmark
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_thread_foreach">
+<function name="g_bookmark_file_set_is_private">
 <description>
-Call @thread_func on all existing #GThread structures. Note that
-threads may decide to exit while @thread_func is running, so
-without intimate knowledge about the lifetime of foreign threads,
- thread_func shouldn't access the GThread* pointer passed in as
-first argument. However, @thread_func will not be called for threads
-which are known to have exited already.
+Sets the private flag of the bookmark for @uri.
 
-Due to thread lifetime checks, this function has an execution complexity
-which is quadratic in the number of existing threads.
+If a bookmark for @uri cannot be found then it is created.
 
-Since: 2.10
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="thread_func">
-<parameter_description> function to call for all GThread structures
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description>   second argument to @thread_func
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="is_private">
+<parameter_description> %TRUE if the bookmark should be marked as private
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_str_has_prefix">
+<function name="g_bookmark_file_set_mime_type">
 <description>
-Looks whether the string @str begins with @prefix.
+Sets @mime_type as the MIME type of the bookmark for @uri.
 
-Since: 2.2
+If a bookmark for @uri cannot be found then it is created.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a nul-terminated string.
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="prefix">
-<parameter_description> the nul-terminated prefix to look for.
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="mime_type">
+<parameter_description> a MIME type
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @str begins with @prefix, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_push_head">
+<function name="g_bookmark_file_set_modified">
 <description>
-Adds a new element at the head of the queue.
+Sets the last time the bookmark for @uri was last modified.
+
+If no bookmark for @uri is found then it is created.
+
+The &quot;modified&quot; time should only be set when the bookmark's meta-data
+was actually changed.  Every function of #GBookmarkFile that
+modifies a bookmark also changes the modification time, except for
+g_bookmark_file_set_visited().
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data for the new element.
+<parameter name="uri">
+<parameter_description> a valid URI
+</parameter_description>
+</parameter>
+<parameter name="modified">
+<parameter_description> a timestamp or -1 to use the current time
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_get_prgname">
+<function name="g_bookmark_file_set_title">
 <description>
-Gets the name of the program. This name should &lt;emphasis&gt;not&lt;/emphasis&gt; 
-be localized, contrast with g_get_application_name().
-(If you are using GDK or GTK+ the program name is set in gdk_init(), 
-which is called by gtk_init(). The program name is found by taking 
-the last component of &lt;literal&gt;argv[0]&lt;/literal&gt;.)
-
+Sets @title as the title of the bookmark for @uri inside the
+bookmark file @bookmark.
 
-</description>
-<parameters>
-</parameters>
-<return> the name of the program. The returned string belongs 
-to GLib and must not be modified or freed.
-</return>
-</function>
+If @uri is %NULL, the title of @bookmark is set.
 
-<function name="g_sequence_iter_is_begin">
-<description>
-Returns whether @iter is the begin iterator
+If a bookmark for @uri cannot be found then it is created.
 
-Since: 2.14
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
+</parameter_description>
+</parameter>
+<parameter name="uri">
+<parameter_description> a valid URI or %NULL
+</parameter_description>
+</parameter>
+<parameter name="title">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether @iter is the begin iterator
-
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_override_class_handler">
+<function name="g_bookmark_file_set_visited">
 <description>
-Overrides the class closure (i.e. the default handler) for the
-given signal for emissions on instances of @instance_type with
-callabck @class_handler. @instance_type must be derived from the
-type to which the signal belongs.
+Sets the time the bookmark for @uri was last visited.
 
-See g_signal_chain_from_overridden() and
-g_signal_chain_from_overridden_handler() for how to chain up to the
-parent class closure from inside the overridden one.
+If no bookmark for @uri is found then it is created.
 
-Since: 2.18
+The &quot;visited&quot; time should only be set if the bookmark was launched, 
+either using the command line retrieved by g_bookmark_file_get_app_info()
+or by the default application for the bookmark's MIME type, retrieved
+using g_bookmark_file_get_mime_type().  Changing the &quot;visited&quot; time
+does not affect the &quot;modified&quot; time.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="signal_name">
-<parameter_description> the name for the signal
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="instance_type">
-<parameter_description> the instance type on which to override the class handler
-for the signal.
+<parameter name="uri">
+<parameter_description> a valid URI
 </parameter_description>
 </parameter>
-<parameter name="class_handler">
-<parameter_description> the handler.
+<parameter name="visited">
+<parameter_description> a timestamp or -1 to use the current time
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_pattern_match">
+<function name="g_bookmark_file_to_data">
 <description>
-Matches a string against a compiled pattern. Passing the correct
-length of the string given is mandatory. The reversed string can be
-omitted by passing %NULL, this is more efficient if the reversed
-version of the string to be matched is not at hand, as
-g_pattern_match() will only construct it if the compiled pattern
-requires reverse matches.
-
-Note that, if the user code will (possibly) match a string against a
-multitude of patterns containing wildcards, chances are high that
-some patterns will require a reversed string. In this case, it's
-more efficient to provide the reversed string to avoid multiple
-constructions thereof in the various calls to g_pattern_match().
+This function outputs @bookmark as a string.
 
-Note also that the reverse of a UTF-8 encoded string can in general
-&lt;emphasis&gt;not&lt;/emphasis&gt; be obtained by g_strreverse(). This works
-only if the string doesn't contain any multibyte characters. GLib
-offers the g_utf8_strreverse() function to reverse UTF-8 encoded
-strings.
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a #GPatternSpec
-</parameter_description>
-</parameter>
-<parameter name="string_length">
-<parameter_description> the length of @string (in bytes, i.e. strlen(),
-&lt;emphasis&gt;not&lt;/emphasis&gt; g_utf8_strlen())
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="string">
-<parameter_description> the UTF-8 encoded string to match
+<parameter name="length">
+<parameter_description> return location for the length of the returned string, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="string_reversed">
-<parameter_description> the reverse of @string or %NULL
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string matches @pspec
+<return> a newly allocated string holding
+the contents of the #GBookmarkFile
+
 </return>
 </function>
 
-<function name="g_strnfill">
+<function name="g_bookmark_file_to_file">
 <description>
-Creates a new string @length bytes long filled with @fill_char.
-The returned string should be freed when no longer needed.
+This function outputs @bookmark into a file.  The write process is
+guaranteed to be atomic by using g_file_set_contents() internally.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="length">
-<parameter_description> the length of the new string
+<parameter name="bookmark">
+<parameter_description> a #GBookmarkFile
 </parameter_description>
 </parameter>
-<parameter name="fill_char">
-<parameter_description> the byte to fill the string with
+<parameter name="filename">
+<parameter_description> path of the output file
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string filled the @fill_char
+<return> %TRUE if the file was successfully written.
+
 </return>
 </function>
 
@@ -3178,1246 +3262,1381 @@ be a relative path.
 </return>
 </function>
 
-<function name="g_flags_get_first_value">
+<function name="g_build_filenamev">
 <description>
-Returns the first #GFlagsValue which is set in @value.
+Behaves exactly like g_build_filename(), but takes the path elements 
+as a string array, instead of varargs. This function is mainly
+meant for language bindings.
 
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="flags_class">
-<parameter_description> a #GFlagsClass
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value
+<parameter name="args">
+<parameter_description> %NULL-terminated array of strings containing the path elements.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the first #GFlagsValue which is set in @value, or %NULL if
-none is set
+<return> a newly-allocated string that must be freed with g_free().
+
 </return>
 </function>
 
-<function name="g_list_first">
+<function name="g_build_path">
 <description>
-Gets the first element in a #GList.
+Creates a path from a series of elements using @separator as the
+separator between elements. At the boundary between two elements,
+any trailing occurrences of separator in the first element, or
+leading occurrences of separator in the second element are removed
+and exactly one copy of the separator is inserted.
+
+Empty elements are ignored.
+
+The number of leading copies of the separator on the result is
+the same as the number of leading copies of the separator on
+the first non-empty element.
+
+The number of trailing copies of the separator on the result is
+the same as the number of trailing copies of the separator on
+the last non-empty element. (Determination of the number of
+trailing copies is done without stripping leading copies, so
+if the separator is &lt;literal&gt;ABA&lt;/literal&gt;, &lt;literal&gt;ABABA&lt;/literal&gt;
+has 1 trailing copy.)
+
+However, if there is only a single non-empty element, and there
+are no characters in that element not part of the leading or
+trailing separators, then the result is exactly the original value
+of that element.
+
+Other than for determination of the number of leading and trailing
+copies of the separator, elements consisting only of copies
+of the separator are ignored.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="separator">
+<parameter_description> a string used to separator the elements of the path.
+</parameter_description>
+</parameter>
+<parameter name="first_element">
+<parameter_description> the first element in the path
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> remaining elements in path, terminated by %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the first element in the #GList, 
-or %NULL if the #GList has no elements
+<return> a newly-allocated string that must be freed with g_free().
 </return>
 </function>
 
-<function name="g_relation_delete">
+<function name="g_build_pathv">
 <description>
-Deletes any records from a #GRelation that have the given key value
-in the given field.
+Behaves exactly like g_build_path(), but takes the path elements 
+as a string array, instead of varargs. This function is mainly
+meant for language bindings.
 
-Deprecated: 2.26: Rarely used API
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the value to compare with.
+<parameter name="separator">
+<parameter_description> a string used to separator the elements of the path.
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> the field of each record to match.
+<parameter name="args">
+<parameter_description> %NULL-terminated array of strings containing the path elements.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of records deleted.
+<return> a newly-allocated string that must be freed with g_free().
+
 </return>
 </function>
 
-<function name="g_cache_remove">
+<function name="g_byte_array_append">
 <description>
-Decreases the reference count of the given value. If it drops to 0
-then the value and its corresponding key are destroyed, using the
- value_destroy_func and @key_destroy_func passed to g_cache_new().
+Adds the given bytes to the end of the #GByteArray. The array will
+grow in size automatically if necessary.
 
 </description>
 <parameters>
-<parameter name="cache">
-<parameter_description> a #GCache.
+<parameter name="array">
+<parameter_description> a #GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to remove.
+<parameter name="data">
+<parameter_description> the byte data to be added.
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> the number of bytes to add.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GByteArray.
+</return>
 </function>
 
-<function name="g_io_channel_write">
+<function name="g_byte_array_free">
 <description>
-Writes data to a #GIOChannel. 
-
-Deprecated:2.2: Use g_io_channel_write_chars() instead.
+Frees the memory allocated by the #GByteArray. If @free_segment is
+%TRUE it frees the actual byte data. If the reference count of
+ array is greater than one, the #GByteArray wrapper is preserved but
+the size of @array will be set to zero.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description>  a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="buf">
-<parameter_description> the buffer containing the data to write
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of bytes to write
+<parameter name="array">
+<parameter_description> a #GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="bytes_written">
-<parameter_description> the number of bytes actually written
+<parameter name="free_segment">
+<parameter_description> if %TRUE the actual byte data is freed as well.
 </parameter_description>
 </parameter>
 </parameters>
-<return>  %G_IO_ERROR_NONE if the operation was successful.
-
+<return> the element data if @free_segment is %FALSE, otherwise
+%NULL.  The element data should be freed using g_free().
 </return>
 </function>
 
-<function name="g_key_file_load_from_data_dirs">
+<function name="g_byte_array_new">
 <description>
-This function looks for a key file named @file in the paths 
-returned from g_get_user_data_dir() and g_get_system_data_dirs(), 
-loads the file into @key_file and returns the file's full path in 
- full_path   If the file could not be loaded then an %error is
-set to either a #GFileError or #GKeyFileError.
+Creates a new #GByteArray with a reference count of 1.
 
-Since: 2.6
+</description>
+<parameters>
+</parameters>
+<return> the new #GByteArray.
+</return>
+</function>
+
+<function name="g_byte_array_prepend">
+<description>
+Adds the given data to the start of the #GByteArray. The array will
+grow in size automatically if necessary.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> an empty #GKeyFile struct
-</parameter_description>
-</parameter>
-<parameter name="file">
-<parameter_description> a relative path to a filename to open and parse
-</parameter_description>
-</parameter>
-<parameter name="full_path">
-<parameter_description> return location for a string containing the full path
-of the file, or %NULL
+<parameter name="array">
+<parameter_description> a #GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags from #GKeyFileFlags 
+<parameter name="data">
+<parameter_description> the byte data to be added.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="len">
+<parameter_description> the number of bytes to add.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a key file could be loaded, %FALSE othewise
+<return> the #GByteArray.
 </return>
 </function>
 
-<function name="g_test_bug">
+<function name="g_byte_array_ref">
 <description>
-This function adds a message to test reports that
-associates a bug URI with a test case.
-Bug URIs are constructed from a base URI set with g_test_bug_base()
-and @bug_uri_snippet.
+Atomically increments the reference count of @array by one. This
+function is MT-safe and may be called from any thread.
 
-Since: 2.16
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="bug_uri_snippet">
-<parameter_description> Bug specific bug tracker URI portion.
+<parameter name="array">
+<parameter_description> A #GByteArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The passed in #GByteArray.
+
+</return>
 </function>
 
-<function name="g_dataset_id_remove_data">
+<function name="g_byte_array_remove_index">
 <description>
-Removes a data element from a dataset. The data element's destroy
-function is called if it has been set.
+Removes the byte at the given index from a #GByteArray. The
+following bytes are moved down one place.
 
 </description>
 <parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
+<parameter name="array">
+<parameter_description> a #GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="k">
-<parameter_description> the #GQuark id identifying the data element.
+<parameter name="index_">
+<parameter_description> the index of the byte to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GByteArray.
+</return>
 </function>
 
-<function name="g_string_hash">
+<function name="g_byte_array_remove_index_fast">
 <description>
-Creates a hash code for @str; for use with #GHashTable.
-
+Removes the byte at the given index from a #GByteArray. The last
+element in the array is used to fill in the space, so this function
+does not preserve the order of the #GByteArray. But it is faster
+than g_byte_array_remove_index().
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a string to hash
+<parameter name="array">
+<parameter_description> a #GByteArray.
+</parameter_description>
+</parameter>
+<parameter name="index_">
+<parameter_description> the index of the byte to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> hash code for @str
+<return> the #GByteArray.
 </return>
 </function>
 
-<function name="g_vsprintf">
+<function name="g_byte_array_remove_range">
 <description>
-An implementation of the standard vsprintf() function which supports 
-positional parameters, as specified in the Single Unix Specification.
+Removes the given number of bytes starting at the given index from a
+#GByteArray.  The following elements are moved to close the gap.
 
-Since: 2.2
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the buffer to hold the output.
+<parameter name="array">
+<parameter_description> a @GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice 
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="index_">
+<parameter_description> the index of the first byte to remove.
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of arguments to insert in the output.
+<parameter name="length">
+<parameter_description> the number of bytes to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
-
+<return> the #GByteArray.
 </return>
 </function>
 
-<function name="g_async_queue_try_pop">
+<function name="g_byte_array_set_size">
 <description>
-Tries to pop data from the @queue. If no data is available, %NULL is
-returned.
-
+Sets the size of the #GByteArray, expanding it if necessary.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="array">
+<parameter_description> a #GByteArray.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the new size of the #GByteArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> data from the queue or %NULL, when no data is
-available immediately.
+<return> the #GByteArray.
 </return>
 </function>
 
-<function name="g_value_take_param">
+<function name="g_byte_array_sized_new">
 <description>
-Sets the contents of a %G_TYPE_PARAM #GValue to @param and takes
-over the ownership of the callers reference to @param; the caller
-doesn't have to unref it any more.
-
-Since: 2.4
+Creates a new #GByteArray with @reserved_size bytes preallocated.
+This avoids frequent reallocation, if you are going to add many
+bytes to the array. Note however that the size of the array is still
+0.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_PARAM
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> the #GParamSpec to be set
+<parameter name="reserved_size">
+<parameter_description> number of bytes preallocated.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new #GByteArray.
+</return>
 </function>
 
-<function name="g_io_channel_read_line_string">
+<function name="g_byte_array_sort">
 <description>
-Reads a line from a #GIOChannel, using a #GString as a buffer.
+Sorts a byte array, using @compare_func which should be a
+qsort()-style comparison function (returns less than zero for first
+arg is less than second arg, zero for equal, greater than zero if
+first arg is greater than second arg).
 
+If two array elements compare equal, their order in the sorted array
+is undefined.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> a #GString into which the line will be written.
-If @buffer already contains data, the old data will
-be overwritten.
-</parameter_description>
-</parameter>
-<parameter name="terminator_pos">
-<parameter_description> location to store position of line terminator, or %NULL
+<parameter name="array">
+<parameter_description> a #GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a location to store an error of type #GConvertError
-or #GIOChannelError
+<parameter name="compare_func">
+<parameter_description> comparison function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation.
-</return>
+<return></return>
 </function>
 
-<function name="g_set_error">
+<function name="g_byte_array_sort_with_data">
 <description>
-Does nothing if @err is %NULL; if @err is non-%NULL, then * err
-must be %NULL. A new #GError is created and assigned to * err 
+Like g_byte_array_sort(), but the comparison function takes an extra
+user data argument.
 
 </description>
 <parameters>
-<parameter name="err">
-<parameter_description> a return location for a #GError, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> error domain
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> error code
+<parameter name="array">
+<parameter_description> a #GByteArray.
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> printf()-style format
+<parameter name="compare_func">
+<parameter_description> comparison function.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> args for @format
+<parameter name="user_data">
+<parameter_description> data to pass to @compare_func.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_peek_head_link">
+<function name="g_byte_array_unref">
 <description>
-Returns the first link in @queue
+Atomically decrements the reference count of @array by one. If the
+reference count drops to 0, all memory allocated by the array is
+released. This function is MT-safe and may be called from any
+thread.
 
-Since: 2.4
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="array">
+<parameter_description> A #GByteArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the first link in @queue, or %NULL if @queue is empty
-
-</return>
+<return></return>
 </function>
 
-<function name="g_list_alloc">
+<function name="g_cache_destroy">
 <description>
-Allocates space for one #GList element. It is called by
-g_list_append(), g_list_prepend(), g_list_insert() and
-g_list_insert_sorted() and so is rarely used on its own.
+Frees the memory allocated for the #GCache.
+
+Note that it does not destroy the keys and values which were
+contained in the #GCache.
 
 </description>
 <parameters>
+<parameter name="cache">
+<parameter_description> a #GCache.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a pointer to the newly-allocated #GList element.
-</return>
+<return></return>
 </function>
 
-<function name="g_slist_insert_before">
+<function name="g_cache_insert">
 <description>
-Inserts a node before @sibling containing @data. 
-
+Gets the value corresponding to the given key, creating it if
+necessary. It first checks if the value already exists in the
+#GCache, by using the @key_equal_func function passed to
+g_cache_new(). If it does already exist it is returned, and its
+reference count is increased by one. If the value does not currently
+exist, if is created by calling the @value_new_func. The key is
+duplicated by calling @key_dup_func and the duplicated key and value
+are inserted into the #GCache.
 
 </description>
 <parameters>
-<parameter name="slist">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="sibling">
-<parameter_description> node to insert @data before
+<parameter name="cache">
+<parameter_description> a #GCache.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to put in the newly-inserted node
+<parameter name="key">
+<parameter_description> a key describing a #GCache object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new head of the list.
+<return> a pointer to a #GCache value.
 </return>
 </function>
 
-<function name="g_mapped_file_free">
+<function name="g_cache_key_foreach">
 <description>
-This call existed before #GMappedFile had refcounting and is currently
-exactly the same as g_mapped_file_unref().
+Calls the given function for each of the keys in the #GCache.
 
-Since: 2.8
-Deprecated:2.22: Use g_mapped_file_unref() instead.
+NOTE @func is passed three parameters, the value and key of a cache
+entry and the @user_data. The order of value and key is different
+from the order in which g_hash_table_foreach() passes key-value
+pairs to its callback function !
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GMappedFile
+<parameter name="cache">
+<parameter_description> a #GCache.
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the function to call with each #GCache key.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mem_chunk_destroy">
+<function name="g_cache_new">
 <description>
-Frees all of the memory allocated for a #GMemChunk.
-
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
+Creates a new #GCache.
 
 </description>
 <parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="value_new_func">
+<parameter_description> a function to create a new object given a key.
+This is called by g_cache_insert() if an object
+with the given key does not already exist.
+</parameter_description>
+</parameter>
+<parameter name="value_destroy_func">
+<parameter_description> a function to destroy an object. It is called
+by g_cache_remove() when the object is no
+longer needed (i.e. its reference count drops
+to 0).
+</parameter_description>
+</parameter>
+<parameter name="key_dup_func">
+<parameter_description> a function to copy a key. It is called by
+g_cache_insert() if the key does not already exist in
+the #GCache.
+</parameter_description>
+</parameter>
+<parameter name="key_destroy_func">
+<parameter_description> a function to destroy a key. It is called by
+g_cache_remove() when the object is no longer
+needed (i.e. its reference count drops to 0).
+</parameter_description>
+</parameter>
+<parameter name="hash_key_func">
+<parameter_description> a function to create a hash value from a key.
+</parameter_description>
+</parameter>
+<parameter name="hash_value_func">
+<parameter_description> a function to create a hash value from a value.
+</parameter_description>
+</parameter>
+<parameter name="key_equal_func">
+<parameter_description> a function to compare two keys. It should return
+%TRUE if the two keys are equivalent.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GCache.
+</return>
 </function>
 
-<function name="g_variant_iter_init">
+<function name="g_cache_remove">
 <description>
-Initialises (without allocating) a #GVariantIter.  @iter may be
-completely uninitialised prior to this call; its old value is
-ignored.
-
-The iterator remains valid for as long as @value exists, and need not
-be freed in any way.
-
-Since: 2.24
+Decreases the reference count of the given value. If it drops to 0
+then the value and its corresponding key are destroyed, using the
+ value_destroy_func and @key_destroy_func passed to g_cache_new().
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a pointer to a #GVariantIter
+<parameter name="cache">
+<parameter_description> a #GCache.
 </parameter_description>
 </parameter>
 <parameter name="value">
-<parameter_description> a container #GVariant
+<parameter_description> the value to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of items in @value
-</return>
+<return></return>
 </function>
 
-<function name="g_cond_new">
+<function name="g_cache_value_foreach">
 <description>
-Creates a new #GCond. This function will abort, if g_thread_init()
-has not been called yet.
+Calls the given function for each of the values in the #GCache.
+
+Deprecated:2.10: The reason is that it passes pointers to internal
+data structures to @func; use g_cache_key_foreach()
+instead
 
 </description>
 <parameters>
+<parameter name="cache">
+<parameter_description> a #GCache.
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the function to call with each #GCache value.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GCond.
-</return>
+<return></return>
 </function>
 
-<function name="g_array_prepend_val">
+<function name="g_chdir">
 <description>
-Adds the value on to the start of the array. The array will grow in
-size automatically if necessary.
+A wrapper for the POSIX chdir() function. The function changes the
+current directory of the process to @path.
 
-This operation is slower than g_array_append_val() since the
-existing elements in the array have to be moved to make space for
-the new element.
+See your C library manual for more details about chdir().
 
-&lt;note&gt;&lt;para&gt;g_array_prepend_val() is a macro which uses a reference
-to the value parameter @v. This means that you cannot use it with
-literal values such as &quot;27&quot;. You must use variables.&lt;/para&gt;&lt;/note&gt;
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #GArray.
-</parameter_description>
-</parameter>
-<parameter name="v">
-<parameter_description> the value to prepend to the #GArray.
+<parameter name="path">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> 0 on success, -1 if an error occurred.
+
 </return>
 </function>
 
-<function name="g_bookmark_file_get_title">
+<function name="g_checksum_copy">
 <description>
-Returns the title of the bookmark for @uri.
-
-If @uri is %NULL, the title of @bookmark is returned.
-
-In the event the URI cannot be found, %NULL is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+Copies a #GChecksum. If @checksum has been closed, by calling
+g_checksum_get_string() or g_checksum_get_digest(), the copied
+checksum will be closed as well.
 
-Since: 2.12
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="checksum">
+<parameter_description> the #GChecksum to copy
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string or %NULL if the specified
-URI cannot be found.
+<return> the copy of the passed #GChecksum. Use g_checksum_free()
+when finished using it.
 
 </return>
 </function>
 
-<function name="g_option_group_free">
+<function name="g_checksum_free">
 <description>
-Frees a #GOptionGroup. Note that you must &lt;emphasis&gt;not&lt;/emphasis&gt;
-free groups which have been added to a #GOptionContext.
+Frees the memory allocated for @checksum.
 
-Since: 2.6
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> a #GOptionGroup
+<parameter name="checksum">
+<parameter_description> a #GChecksum
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_param">
+<function name="g_checksum_get_digest">
 <description>
-Set the contents of a %G_TYPE_PARAM #GValue to @param.
+Gets the digest from @checksum as a raw binary vector and places it
+into @buffer. The size of the digest depends on the type of checksum.
+
+Once this function has been called, the #GChecksum is closed and can
+no longer be updated with g_checksum_update().
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_PARAM
+<parameter name="checksum">
+<parameter_description> a #GChecksum
 </parameter_description>
 </parameter>
-<parameter name="param">
-<parameter_description> the #GParamSpec to be set
+<parameter name="buffer">
+<parameter_description> output buffer
+</parameter_description>
+</parameter>
+<parameter name="digest_len">
+<parameter_description> an inout parameter. The caller initializes it to the size of @buffer.
+After the call it contains the length of the digest.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_thread_pool_stop_unused_threads">
+<function name="g_checksum_get_string">
 <description>
-Stops all currently unused threads. This does not change the
-maximal number of unused threads. This function can be used to
-regularly stop all unused threads e.g. from g_timeout_add().
+Gets the digest as an hexadecimal string.
+
+Once this function has been called the #GChecksum can no longer be
+updated with g_checksum_update().
+
+The hexadecimal characters will be lower case.
+
+Since: 2.16
 
 </description>
 <parameters>
+<parameter name="checksum">
+<parameter_description> a #GChecksum
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the hexadecimal representation of the checksum. The
+returned string is owned by the checksum and should not be modified
+or freed.
+
+</return>
 </function>
 
-<function name="g_static_rw_lock_reader_unlock">
+<function name="g_checksum_new">
 <description>
-Unlocks @lock. If a thread waits to lock @lock for writing and all
-locks for reading have been unlocked, the waiting thread is woken up
-and can lock @lock for writing.
+Creates a new #GChecksum, using the checksum algorithm @checksum_type.
+If the @checksum_type is not known, %NULL is returned.
+A #GChecksum can be used to compute the checksum, or digest, of an
+arbitrary binary blob, using different hashing algorithms.
+
+A #GChecksum works by feeding a binary blob through g_checksum_update()
+until there is data to be checked; the digest can then be extracted
+using g_checksum_get_string(), which will return the checksum as a
+hexadecimal string; or g_checksum_get_digest(), which will return a
+vector of raw bytes. Once either g_checksum_get_string() or
+g_checksum_get_digest() have been called on a #GChecksum, the checksum
+will be closed and it won't be possible to call g_checksum_update()
+on it anymore.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to unlock after reading.
+<parameter name="checksum_type">
+<parameter_description> the desired type of checksum
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GChecksum, or %NULL.
+Use g_checksum_free() to free the memory allocated by it.
+
+</return>
 </function>
 
-<function name="g_source_get_priority">
+<function name="g_checksum_reset">
 <description>
-Gets the priority of a source.
+Resets the state of the @checksum back to its initial state.
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="checksum">
+<parameter_description> the #GChecksum to reset
 </parameter_description>
 </parameter>
 </parameters>
-<return> the priority of the source
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_new_valist">
+<function name="g_checksum_type_get_length">
 <description>
-Creates a new signal. (This is usually done in the class initializer.)
-
-See g_signal_new() for details on allowed signal names.
+Gets the length in bytes of digests of type @checksum_type
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="signal_name">
-<parameter_description> the name for the signal
-</parameter_description>
-</parameter>
-<parameter name="itype">
-<parameter_description> the type this signal pertains to. It will also pertain to
-types which are derived from this type.
-</parameter_description>
-</parameter>
-<parameter name="signal_flags">
-<parameter_description> a combination of #GSignalFlags specifying detail of when
-the default handler is to be invoked. You should at least specify
-%G_SIGNAL_RUN_FIRST or %G_SIGNAL_RUN_LAST.
-</parameter_description>
-</parameter>
-<parameter name="class_closure">
-<parameter_description> The closure to invoke on signal emission; may be %NULL.
+<parameter name="checksum_type">
+<parameter_description> a #GChecksumType
 </parameter_description>
 </parameter>
-<parameter name="accumulator">
-<parameter_description> the accumulator for this signal; may be %NULL.
+</parameters>
+<return> the checksum length, or -1 if @checksum_type is
+not supported.
+
+</return>
+</function>
+
+<function name="g_checksum_update">
+<description>
+Feeds @data into an existing #GChecksum. The checksum must still be
+open, that is g_checksum_get_string() or g_checksum_get_digest() must
+not have been called on @checksum.
+
+Since: 2.16
+
+</description>
+<parameters>
+<parameter name="checksum">
+<parameter_description> a #GChecksum
 </parameter_description>
 </parameter>
-<parameter name="accu_data">
-<parameter_description> user data for the @accumulator.
+<parameter name="data">
+<parameter_description> buffer used to compute the checksum
 </parameter_description>
 </parameter>
-<parameter name="c_marshaller">
-<parameter_description> the function to translate arrays of parameter values to
-signal emissions into C language callback invocations.
+<parameter name="length">
+<parameter_description> size of the buffer, or -1 if it is a null-terminated string.
 </parameter_description>
 </parameter>
-<parameter name="return_type">
-<parameter_description> the type of return value, or #G_TYPE_NONE for a signal
-without a return value.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_child_watch_add">
+<description>
+Sets a function to be called when the child indicated by @pid 
+exits, at a default priority, #G_PRIORITY_DEFAULT.
+
+If you obtain @pid from g_spawn_async() or g_spawn_async_with_pipes() 
+you will need to pass #G_SPAWN_DO_NOT_REAP_CHILD as flag to 
+the spawn function for the child watching to work.
+
+Note that on platforms where #GPid must be explicitly closed
+(see g_spawn_close_pid()) @pid must not be closed while the
+source is still active. Typically, you will want to call
+g_spawn_close_pid() in the callback function for the source.
+
+GLib supports only a single callback per process id.
+
+This internally creates a main loop source using 
+g_child_watch_source_new() and attaches it to the main loop context 
+using g_source_attach(). You can do these steps manually if you 
+need greater control.
+
+Since: 2.4
+
+</description>
+<parameters>
+<parameter name="pid">
+<parameter_description>      process id to watch. On POSIX the pid of a child process. On
+Windows a handle for a process (which doesn't have to be a child).
 </parameter_description>
 </parameter>
-<parameter name="n_params">
-<parameter_description> the number of parameter types in @args.
+<parameter name="function">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> va_list of #GType, one for each parameter.
+<parameter name="data">
+<parameter_description>     data to pass to @function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the signal id
+<return> the ID (greater than 0) of the event source.
+
 </return>
 </function>
 
-<function name="g_regex_replace_literal">
+<function name="g_child_watch_add_full">
 <description>
-Replaces all occurrences of the pattern in @regex with the
-replacement text. @replacement is replaced literally, to
-include backreferences use g_regex_replace().
+Sets a function to be called when the child indicated by @pid 
+exits, at the priority @priority.
 
-Setting @start_position differs from just passing over a
-shortened string and setting #G_REGEX_MATCH_NOTBOL in the
-case of a pattern that begins with any kind of lookbehind
-assertion, such as &quot;\b&quot;.
+If you obtain @pid from g_spawn_async() or g_spawn_async_with_pipes() 
+you will need to pass #G_SPAWN_DO_NOT_REAP_CHILD as flag to 
+the spawn function for the child watching to work.
 
-Since: 2.14
+Note that on platforms where #GPid must be explicitly closed
+(see g_spawn_close_pid()) @pid must not be closed while the
+source is still active. Typically, you will want to call
+g_spawn_close_pid() in the callback function for the source.
+
+GLib supports only a single callback per process id.
+
+This internally creates a main loop source using 
+g_child_watch_source_new() and attaches it to the main loop context 
+using g_source_attach(). You can do these steps manually if you 
+need greater control.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to perform matches against
-</parameter_description>
-</parameter>
-<parameter name="string_len">
-<parameter_description> the length of @string, or -1 if @string is nul-terminated
+<parameter name="priority">
+<parameter_description> the priority of the idle source. Typically this will be in the
+range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.
 </parameter_description>
 </parameter>
-<parameter name="start_position">
-<parameter_description> starting index of the string to match
+<parameter name="pid">
+<parameter_description>      process to watch. On POSIX the pid of a child process. On
+Windows a handle for a process (which doesn't have to be a child).
 </parameter_description>
 </parameter>
-<parameter name="replacement">
-<parameter_description> text to replace each match with
+<parameter name="function">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> options for the match
+<parameter name="data">
+<parameter_description>     data to pass to @function
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore errors
+<parameter name="notify">
+<parameter_description>   function to call when the idle is removed, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the replacements
+<return> the ID (greater than 0) of the event source.
 
 </return>
 </function>
 
-<function name="g_variant_new_handle">
+<function name="g_child_watch_source_new">
 <description>
-Creates a new handle #GVariant instance.
+Creates a new child_watch source.
 
-By convention, handles are indexes into an array of file descriptors
-that are sent alongside a DBus message.  If you're not interacting
-with DBus, you probably don't need them.
+The source will not initially be associated with any #GMainContext
+and must be added to one with g_source_attach() before it will be
+executed.
 
-Since: 2.24
+Note that child watch sources can only be used in conjunction with
+&lt;literal&gt;g_spawn...&lt;/literal&gt; when the %G_SPAWN_DO_NOT_REAP_CHILD
+flag is used.
 
-</description>
-<parameters>
-<parameter name="handle">
-<parameter_description> a #gint32 value
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new handle #GVariant instance
-</return>
-</function>
+Note that on platforms where #GPid must be explicitly closed
+(see g_spawn_close_pid()) @pid must not be closed while the
+source is still active. Typically, you will want to call
+g_spawn_close_pid() in the callback function for the source.
 
-<function name="g_param_spec_pool_list_owned">
-<description>
-Gets an #GList of all #GParamSpec&lt;!-- --&gt;s owned by @owner_type in
-the pool.
+Note further that using g_child_watch_source_new() is not 
+compatible with calling &lt;literal&gt;waitpid(-1)&lt;/literal&gt; in 
+the application. Calling waitpid() for individual pids will
+still work fine. 
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GParamSpecPool
-</parameter_description>
-</parameter>
-<parameter name="owner_type">
-<parameter_description> the owner to look for
+<parameter name="pid">
+<parameter_description> process to watch. On POSIX the pid of a child process. On
+Windows a handle for a process (which doesn't have to be a child).
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of all #GParamSpec&lt;!-- --&gt;s owned by @owner_type
-in the pool#GParamSpec&lt;!-- --&gt;s.
+<return> the newly-created child watch source
+
 </return>
 </function>
 
-<function name="g_variant_new_tuple">
+<function name="g_chmod">
 <description>
-Creates a new tuple #GVariant out of the items in @children.  The
-type is determined from the types of @children.  No entry in the
- children array may be %NULL.
+A wrapper for the POSIX chmod() function. The chmod() function is
+used to set the permissions of a file system object.
 
-If @n_children is 0 then the unit tuple is constructed.
+On Windows the file protection mechanism is not at all POSIX-like,
+and the underlying chmod() function in the C library just sets or
+clears the FAT-style READONLY attribute. It does not touch any
+ACL. Software that needs to manage file permissions on Windows
+exactly should use the Win32 API.
 
-Since: 2.24
+See your C library manual for more details about chmod().
+
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="children">
-<parameter_description> the items to make the tuple out of
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="n_children">
-<parameter_description> the length of @children
+<parameter name="mode">
+<parameter_description> as in chmod()
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GVariant tuple
+<return> zero if the operation succeeded, -1 on error.
+
 </return>
 </function>
 
-<function name="glib_gettext">
+<function name="g_chunk_free">
 <description>
-Returns the translated string from the glib translations.
-This is an internal function and should only be used by
-the internals of glib (such as libgio).
+A convenience macro to free an atom of memory from a #GMemChunk. It
+simply switches the arguments and calls g_mem_chunk_free() It is
+included simply to complement the other convenience macros,
+g_chunk_new() and g_chunk_new0().
 
+Deprecated:2.10: Use g_slice_free() instead
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> The string to be translated
+<parameter name="mem">
+<parameter_description> a pointer to the atom to be freed.
+</parameter_description>
+</parameter>
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the transation of @str to the current locale
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_get_int32">
+<function name="g_chunk_new">
 <description>
-Returns the 32-bit signed integer value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_INT32.
+A convenience macro to allocate an atom of memory from a #GMemChunk.
+It calls g_mem_chunk_alloc() and casts the returned atom to a
+pointer to the given type, avoiding a type cast in the source code.
 
-Since: 2.24
+Deprecated:2.10: Use g_slice_new() instead
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a int32 #GVariant instance
+<parameter name="type">
+<parameter_description> the type of the #GMemChunk atoms, typically a structure name.
+</parameter_description>
+</parameter>
+<parameter name="chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gint32
+<return> a pointer to the allocated atom, cast to a pointer to
+ type 
 </return>
 </function>
 
-<function name="g_variant_new_bytestring_array">
+<function name="g_chunk_new0">
 <description>
-Constructs an array of bytestring #GVariant from the given array of
-strings.
-
-If @length is -1 then @strv is %NULL-terminated.
+A convenience macro to allocate an atom of memory from a #GMemChunk.
+It calls g_mem_chunk_alloc0() and casts the returned atom to a
+pointer to the given type, avoiding a type cast in the source code.
 
-Since: 2.26
+Deprecated:2.10: Use g_slice_new0() instead
 
 </description>
 <parameters>
-<parameter name="strv">
-<parameter_description> an array of strings
+<parameter name="type">
+<parameter_description> the type of the #GMemChunk atoms, typically a structure name.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of @strv, or -1
+<parameter name="chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new floating #GVariant instance
+<return> a pointer to the allocated atom, cast to a pointer to
+ type 
 </return>
 </function>
 
-<function name="g_byte_array_sort_with_data">
+<function name="g_clear_error">
 <description>
-Like g_byte_array_sort(), but the comparison function takes an extra
-user data argument.
+If @err is %NULL, does nothing. If @err is non-%NULL,
+calls g_error_free() on * err and sets * err to %NULL.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
-</parameter_description>
-</parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @compare_func.
+<parameter name="err">
+<parameter_description> a #GError return location
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_enum_get_value_by_name">
+<function name="g_completion_add_items">
 <description>
-Looks up a #GEnumValue by name.
+Adds items to the #GCompletion.
 
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="enum_class">
-<parameter_description> a #GEnumClass
+<parameter name="cmp">
+<parameter_description> the #GCompletion.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name to look up
+<parameter name="items">
+<parameter_description> the list of items to add.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GEnumValue with name @name, or %NULL if the
-enumeration doesn't have a member with that name
-</return>
+<return></return>
 </function>
 
-<function name="g_mkstemp">
+<function name="g_completion_clear_items">
 <description>
-Opens a temporary file. See the mkstemp() documentation
-on most UNIX-like systems. 
-
-The parameter is a string that should follow the rules for
-mkstemp() templates, i.e. contain the string &quot;XXXXXX&quot;. 
-g_mkstemp() is slightly more flexible than mkstemp()
-in that the sequence does not have to occur at the very end of the 
-template. The X string will 
-be modified to form the name of a file that didn't exist.
-The string should be in the GLib file name encoding. Most importantly, 
-on Windows it should be in UTF-8.
+Removes all items from the #GCompletion.
 
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="tmpl">
-<parameter_description> template filename
+<parameter name="cmp">
+<parameter_description> the #GCompletion.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A file handle (as from open()) to the file
-opened for reading and writing. The file is opened in binary mode
-on platforms where there is a difference. The file handle should be
-closed with close(). In case of errors, -1 is returned.  
-</return>
+<return></return>
 </function>
 
-<function name="g_utf8_to_ucs4_fast">
+<function name="g_completion_complete">
 <description>
-Convert a string from UTF-8 to a 32-bit fixed width
-representation as UCS-4, assuming valid UTF-8 input.
-This function is roughly twice as fast as g_utf8_to_ucs4()
-but does no error checking on the input.
+Attempts to complete the string @prefix using the #GCompletion
+target items.
 
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
+<parameter name="cmp">
+<parameter_description> the #GCompletion.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the maximum length of @str to use, in bytes. If @len &lt; 0,
-then the string is nul-terminated.
+<parameter name="prefix">
+<parameter_description> the prefix string, typically typed by the user, which is
+compared with each of the items.
 </parameter_description>
 </parameter>
-<parameter name="items_written">
-<parameter_description> location to store the number of characters in the
-result, or %NULL.
+<parameter name="new_prefix">
+<parameter_description> if non-%NULL, returns the longest prefix which is
+common to all items that matched @prefix, or %NULL if
+no items matched @prefix.  This string should be freed
+when no longer needed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a newly allocated UCS-4 string.
-This value must be freed with g_free().
+<return> the list of items whose strings begin with @prefix. This
+should not be changed.
 </return>
 </function>
 
-<function name="g_hash_table_replace">
+<function name="g_completion_complete_utf8">
 <description>
-Inserts a new key and value into a #GHashTable similar to
-g_hash_table_insert(). The difference is that if the key already exists
-in the #GHashTable, it gets replaced by the new key. If you supplied a
- value_destroy_func when creating the #GHashTable, the old value is freed
-using that function. If you supplied a @key_destroy_func when creating the
-#GHashTable, the old key is freed using that function.
+Attempts to complete the string @prefix using the #GCompletion target items.
+In contrast to g_completion_complete(), this function returns the largest common
+prefix that is a valid UTF-8 string, omitting a possible common partial 
+character.
+
+You should use this function instead of g_completion_complete() if your 
+items are UTF-8 strings.
+
+Since: 2.4
+
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+<parameter name="cmp">
+<parameter_description> the #GCompletion
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key to insert.
+<parameter name="prefix">
+<parameter_description> the prefix string, typically used by the user, which is compared
+with each of the items
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to associate with the key.
+<parameter name="new_prefix">
+<parameter_description> if non-%NULL, returns the longest prefix which is common to all
+items that matched @prefix, or %NULL if no items matched @prefix.
+This string should be freed when no longer needed.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the list of items whose strings begin with @prefix. This should
+not be changed.
+
+</return>
 </function>
 
-<function name="g_type_module_add_interface">
+<function name="g_completion_free">
 <description>
-Registers an additional interface for a type, whose interface lives
-in the given type plugin. If the interface was already registered
-for the type in this plugin, nothing will be done.
+Frees all memory used by the #GCompletion.
 
-As long as any instances of the type exist, the type plugin will
-not be unloaded.
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule
-</parameter_description>
-</parameter>
-<parameter name="instance_type">
-<parameter_description> type to which to add the interface.
-</parameter_description>
-</parameter>
-<parameter name="interface_type">
-<parameter_description> interface type to add
-</parameter_description>
-</parameter>
-<parameter name="interface_info">
-<parameter_description> type information structure
+<parameter name="cmp">
+<parameter_description> the #GCompletion.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_type_register_static">
+<function name="g_completion_new">
 <description>
-Registers @type_name as the name of a new static type derived from
- parent_type   The type system uses the information contained in the
-#GTypeInfo structure pointed to by @info to manage the type and its
-instances (if not abstract).  The value of @flags determines the nature
-(e.g. abstract or not) of the type.
-
+Creates a new #GCompletion.
 
 </description>
 <parameters>
-<parameter name="parent_type">
-<parameter_description> Type from which this type will be derived.
-</parameter_description>
-</parameter>
-<parameter name="type_name">
-<parameter_description> 0-terminated string used as the name of the new type.
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> The #GTypeInfo structure for this type.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Bitwise combination of #GTypeFlags values.
+<parameter name="func">
+<parameter_description> the function to be called to return the string representing
+an item in the #GCompletion, or %NULL if strings are going to
+be used as the #GCompletion items.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The new type identifier.
+<return> the new #GCompletion.
 </return>
 </function>
 
-<function name="g_error_new_literal">
+<function name="g_completion_remove_items">
 <description>
-Creates a new #GError; unlike g_error_new(), @message is
-not a printf()-style format string. Use this function if
- message contains text you don't have control over,
-that could include printf() escape sequences.
+Removes items from a #GCompletion.
 
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="domain">
-<parameter_description> error domain
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> error code
+<parameter name="cmp">
+<parameter_description> the #GCompletion.
 </parameter_description>
 </parameter>
-<parameter name="message">
-<parameter_description> error message
+<parameter name="items">
+<parameter_description> the items to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GError
-</return>
+<return></return>
 </function>
 
-<function name="g_slist_free1">
+<function name="g_completion_set_compare">
 <description>
-A macro which does the same as g_slist_free_1().
+Sets the function to use for string comparisons. The default string
+comparison function is strncmp().
 
-Since: 2.10
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
+<parameter name="cmp">
+<parameter_description> a #GCompletion.
+</parameter_description>
+</parameter>
+<parameter name="strncmp_func">
+<parameter_description> the string comparison function.
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_link_index">
+<function name="g_compute_checksum_for_data">
 <description>
-Returns the position of @link_ in @queue.
+Computes the checksum for a binary @data of @length. This is a
+convenience wrapper for g_checksum_new(), g_checksum_get_string()
+and g_checksum_free().
 
-Since: 2.4
+The hexadecimal string returned will be in lower case.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #Gqueue
+<parameter name="checksum_type">
+<parameter_description> a #GChecksumType
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> A #GList link
+<parameter name="data">
+<parameter_description> binary blob to compute the digest of
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> length of @data
 </parameter_description>
 </parameter>
 </parameters>
-<return> The position of @link_, or -1 if the link is
-not part of @queue
+<return> the digest of the binary data as a string in hexadecimal.
+The returned string should be freed with g_free() when done using it.
 
 </return>
 </function>
 
-<function name="g_mutex_free">
+<function name="g_compute_checksum_for_string">
 <description>
-Destroys @mutex.
+Computes the checksum of a string.
 
-&lt;note&gt;&lt;para&gt;Calling g_mutex_free() on a locked mutex may result in
-undefined behaviour.&lt;/para&gt;&lt;/note&gt;
+The hexadecimal string returned will be in lower case.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GMutex.
+<parameter name="checksum_type">
+<parameter_description> a #GChecksumType
+</parameter_description>
+</parameter>
+<parameter name="str">
+<parameter_description> the string to compute the checksum of
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the length of the string, or -1 if the string is null-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the checksum as a hexadecimal string. The returned string
+should be freed with g_free() when done using it.
+
+</return>
 </function>
 
-<function name="g_thread_yield">
+<function name="g_cond_broadcast">
 <description>
-Gives way to other threads waiting to be scheduled.
+If threads are waiting for @cond, all of them are woken up. It is
+good practice to lock the same mutex as the waiting threads, while
+calling this function, though not required.
 
-This function is often used as a method to make busy wait less evil.
-But in most cases you will encounter, there are better methods to do
-that. So in general you shouldn't use this function.
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will do nothing.
 
 </description>
 <parameters>
+<parameter name="cond">
+<parameter_description> a #GCond.
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_get_uint64">
+<function name="g_cond_free">
 <description>
-Get the contents of a %G_TYPE_UINT64 #GValue.
-
+Destroys the #GCond.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_UINT64
+<parameter name="cond">
+<parameter_description> a #GCond.
 </parameter_description>
 </parameter>
 </parameters>
-<return> unsigned 64bit integer contents of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_test_rand_double">
+<function name="g_cond_new">
 <description>
-Get a reproducible random floating point number,
-see g_test_rand_int() for details on test case random numbers.
-
-Since: 2.16
+Creates a new #GCond. This function will abort, if g_thread_init()
+has not been called yet.
 
 </description>
 <parameters>
 </parameters>
-<return> a random number from the seeded random number generator.
-
+<return> a new #GCond.
 </return>
 </function>
 
-<function name="g_int64_equal">
+<function name="g_cond_signal">
 <description>
-Compares the two #gint64 values being pointed to and returns 
-%TRUE if they are equal.
-It can be passed to g_hash_table_new() as the @key_equal_func
-parameter, when using pointers to 64-bit integers as keys in a #GHashTable.
+If threads are waiting for @cond, exactly one of them is woken up.
+It is good practice to hold the same lock as the waiting thread
+while calling this function, though not required.
 
-Since: 2.22
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will do nothing.
 
 </description>
 <parameters>
-<parameter name="v1">
-<parameter_description> a pointer to a #gint64 key.
-</parameter_description>
-</parameter>
-<parameter name="v2">
-<parameter_description> a pointer to a #gint64 key to compare with @v1.
+<parameter name="cond">
+<parameter_description> a #GCond.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the two keys match.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_option_group_add_entries">
+<function name="g_cond_timed_wait">
 <description>
-Adds the options specified in @entries to @group.
+Waits until this thread is woken up on @cond, but not longer than
+until the time specified by @abs_time. The @mutex is unlocked before
+falling asleep and locked again before resuming.
 
-Since: 2.6
+If @abs_time is %NULL, g_cond_timed_wait() acts like g_cond_wait().
+
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will immediately return %TRUE.
+
+To easily calculate @abs_time a combination of g_get_current_time()
+and g_time_val_add() can be used.
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> a #GOptionGroup
+<parameter name="cond">
+<parameter_description> a #GCond.
 </parameter_description>
 </parameter>
-<parameter name="entries">
-<parameter_description> a %NULL-terminated array of #GOptionEntry&lt;!-- --&gt;s
+<parameter name="mutex">
+<parameter_description> a #GMutex that is currently locked.
+</parameter_description>
+</parameter>
+<parameter name="abs_time">
+<parameter_description> a #GTimeVal, determining the final time.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @cond was signalled, or %FALSE on timeout.
+</return>
 </function>
 
-<function name="g_byte_array_remove_index">
+<function name="g_cond_wait">
 <description>
-Removes the byte at the given index from a #GByteArray. The
-following bytes are moved down one place.
+Waits until this thread is woken up on @cond. The @mutex is unlocked
+before falling asleep and locked again before resuming.
+
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will immediately return.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
+<parameter name="cond">
+<parameter_description> a #GCond.
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the byte to remove.
+<parameter name="mutex">
+<parameter_description> a #GMutex, that is currently locked.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GByteArray.
-</return>
+<return></return>
 </function>
 
-<function name="g_filename_to_utf8">
+<function name="g_convert">
 <description>
-Converts a string which is in the encoding used by GLib for
-filenames into a UTF-8 string. Note that on Windows GLib uses UTF-8
-for filenames; on other platforms, this function indirectly depends on 
-the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
+Converts a string from one character set to another.
+
+Note that you should use g_iconv() for streaming 
+conversions&lt;footnoteref linkend=&quot;streaming-state&quot;/&gt;.
 
 
 </description>
 <parameters>
-<parameter name="opsysstring">
-<parameter_description>   a string in the encoding for filenames
+<parameter name="str">
+<parameter_description>           the string to convert
 </parameter_description>
 </parameter>
 <parameter name="len">
-<parameter_description>           the length of the string, or -1 if the string is
-nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
+<parameter_description>           the length of the string, or -1 if the string is 
+nul-terminated&lt;footnote id=&quot;nul-unsafe&quot;&gt;
+                     &lt;para&gt;
+                       Note that some encodings may allow nul bytes to 
+                       occur inside strings. In that case, using -1 for 
+                       the @len parameter is unsafe.
+                     &lt;/para&gt;
+                   &lt;/footnote&gt;. 
+</parameter_description>
+</parameter>
+<parameter name="to_codeset">
+<parameter_description>    name of character set into which to convert @str
+</parameter_description>
+</parameter>
+<parameter name="from_codeset">
+<parameter_description>  character set of @str.
 </parameter_description>
 </parameter>
 <parameter name="bytes_read">
@@ -4442,3112 +4661,2833 @@ errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The converted string, or %NULL on an error.
+<return> If the conversion was successful, a newly allocated
+nul-terminated string, which must be freed with
+g_free(). Otherwise %NULL and @error will be set.
 </return>
 </function>
 
-<function name="g_strrstr">
+<function name="g_convert_with_fallback">
 <description>
-Searches the string @haystack for the last occurrence
-of the string @needle.
+Converts a string from one character set to another, possibly
+including fallback sequences for characters not representable
+in the output. Note that it is not guaranteed that the specification
+for the fallback sequences in @fallback will be honored. Some
+systems may do an approximate conversion from @from_codeset
+to @to_codeset in their iconv() functions, 
+in which case GLib will simply return that approximate conversion.
+
+Note that you should use g_iconv() for streaming 
+conversions&lt;footnoteref linkend=&quot;streaming-state&quot;/&gt;.
 
 
 </description>
 <parameters>
-<parameter name="haystack">
-<parameter_description> a nul-terminated string.
+<parameter name="str">
+<parameter_description>          the string to convert
 </parameter_description>
 </parameter>
-<parameter name="needle">
-<parameter_description> the nul-terminated string to search for.
+<parameter name="len">
+<parameter_description>          the length of the string, or -1 if the string is 
+nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
+</parameter_description>
+</parameter>
+<parameter name="to_codeset">
+<parameter_description>   name of character set into which to convert @str
+</parameter_description>
+</parameter>
+<parameter name="from_codeset">
+<parameter_description> character set of @str.
+</parameter_description>
+</parameter>
+<parameter name="fallback">
+<parameter_description>     UTF-8 string to use in place of character not
+present in the target encoding. (The string must be
+representable in the target encoding). 
+                  If %NULL, characters not in the target encoding will 
+                  be represented as Unicode escapes \uxxxx or \Uxxxxyyyy.
+</parameter_description>
+</parameter>
+<parameter name="bytes_read">
+<parameter_description>   location to store the number of bytes in the
+input string that were successfully converted, or %NULL.
+Even if the conversion was successful, this may be 
+less than @len if there were partial characters
+at the end of the input.
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> the number of bytes stored in the output buffer (not 
+including the terminating nul).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description>        location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the found occurrence, or
-%NULL if not found.
+<return> If the conversion was successful, a newly allocated
+nul-terminated string, which must be freed with
+g_free(). Otherwise %NULL and @error will be set.
 </return>
 </function>
 
-<function name="g_param_spec_ref">
+<function name="g_convert_with_iconv">
 <description>
-Increments the reference count of @pspec.
+Converts a string from one character set to another. 
+
+Note that you should use g_iconv() for streaming 
+conversions&lt;footnote id=&quot;streaming-state&quot;&gt;
+&lt;para&gt;
+Despite the fact that @byes_read can return information about partial 
+characters, the &lt;literal&gt;g_convert_...&lt;/literal&gt; functions
+are not generally suitable for streaming. If the underlying converter 
+being used maintains internal state, then this won't be preserved 
+across successive calls to g_convert(), g_convert_with_iconv() or 
+g_convert_with_fallback(). (An example of this is the GNU C converter 
+for CP1255 which does not emit a base character until it knows that 
+the next character is not a mark that could combine with the base 
+character.)
+&lt;/para&gt;
+&lt;/footnote&gt;. 
 
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="str">
+<parameter_description>           the string to convert
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description>           the length of the string, or -1 if the string is 
+nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
+</parameter_description>
+</parameter>
+<parameter name="converter">
+<parameter_description>     conversion descriptor from g_iconv_open()
+</parameter_description>
+</parameter>
+<parameter name="bytes_read">
+<parameter_description>    location to store the number of bytes in the
+input string that were successfully converted, or %NULL.
+Even if the conversion was successful, this may be 
+less than @len if there were partial characters
+at the end of the input. If the error
+#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+stored will the byte offset after the last valid
+input sequence.
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> the number of bytes stored in the output buffer (not 
+including the terminating nul).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description>         location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GParamSpec that was passed into this function
+<return> If the conversion was successful, a newly allocated
+nul-terminated string, which must be freed with
+g_free(). Otherwise %NULL and @error will be set.
 </return>
 </function>
 
-<function name="g_get_host_name">
+<function name="g_creat">
 <description>
-Return a name for the machine. 
-
-The returned name is not necessarily a fully-qualified domain name,
-or even present in DNS or some other name service at all. It need
-not even be unique on your local network or site, but usually it
-is. Callers should not rely on the return value having any specific
-properties like uniqueness for security purposes. Even if the name
-of the machine is changed while an application is running, the
-return value from this function does not change. The returned
-string is owned by GLib and should not be modified or freed. If no
-name can be determined, a default fixed string &quot;localhost&quot; is
-returned.
-
-Since: 2.8
-
-</description>
-<parameters>
-</parameters>
-<return> the host name of the machine.
+A wrapper for the POSIX creat() function. The creat() function is
+used to convert a pathname into a file descriptor, creating a file
+if necessary.
 
-</return>
-</function>
+On POSIX systems file descriptors are implemented by the operating
+system. On Windows, it's the C library that implements creat() and
+file descriptors. The actual Windows API for opening files is
+different, see MSDN documentation for CreateFile(). The Win32 API
+uses file handles, which are more randomish integers, not small
+integers like file descriptors.
 
-<function name="g_date_set_time_t">
-<description>
-Sets the value of a date to the date corresponding to a time 
-specified as a time_t. The time to date conversion is done using 
-the user's current timezone.
+Because file descriptors are specific to the C library on Windows,
+the file descriptor returned by this function makes sense only to
+functions in the same C library. Thus if the GLib-using code uses a
+different C library than GLib does, the file descriptor returned by
+this function cannot be passed to C library functions like write()
+or read().
 
-To set the value of a date to the current day, you could write:
-|[
-g_date_set_time_t (date, time (NULL)); 
-]|
+See your C library manual for more details about creat().
 
-Since: 2.10
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="date">
-<parameter_description> a #GDate 
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="timet">
-<parameter_description> &lt;type&gt;time_t&lt;/type&gt; value to set
+<parameter name="mode">
+<parameter_description> as in creat()
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new file descriptor, or -1 if an error occurred. The
+return value can be used exactly like the return value from creat().
+
+</return>
 </function>
 
-<function name="g_hostname_is_non_ascii">
+<function name="g_datalist_clear">
 <description>
-Tests if @hostname contains Unicode characters. If this returns
-%TRUE, you need to encode the hostname with g_hostname_to_ascii()
-before using it in non-IDN-aware contexts.
-
-Note that a hostname might contain a mix of encoded and unencoded
-segments, and so it is possible for g_hostname_is_non_ascii() and
-g_hostname_is_ascii_encoded() to both return %TRUE for a name.
-
-Since: 2.22
+Frees all the data elements of the datalist. The data elements'
+destroy functions are called if they have been set.
 
 </description>
 <parameters>
-<parameter name="hostname">
-<parameter_description> a hostname
+<parameter name="datalist">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @hostname contains any non-ASCII characters
-
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_get_size">
+<function name="g_datalist_foreach">
 <description>
-Determines the number of bytes that would be required to store @value
-with g_variant_store().
-
-If @value has a fixed-sized type then this function always returned
-that fixed size.
-
-In the case that @value is already in serialised form or the size has
-already been calculated (ie: this function has been called before)
-then this function is O(1).  Otherwise, the size is calculated, an
-operation which is approximately O(n) in the number of values
-involved.
-
-Since: 2.24
+Calls the given function for each data element of the datalist. The
+function is called with each data element's #GQuark id and data,
+together with the given @user_data parameter. Note that this
+function is NOT thread-safe. So unless @datalist can be protected
+from any modifications during invocation of this function, it should
+not be called.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant instance
+<parameter name="datalist">
+<parameter_description> a datalist.
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the function to call for each data element.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the serialised size of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_static_rec_mutex_unlock">
+<function name="g_datalist_get_data">
 <description>
-Unlocks @mutex. Another thread will be allowed to lock @mutex only
-when it has been unlocked as many times as it had been locked
-before. If @mutex is completely unlocked and another thread is
-blocked in a g_static_rec_mutex_lock() call for @mutex, it will be
-woken and can lock @mutex itself.
+Gets a data element, using its string identifer. This is slower than
+g_datalist_id_get_data() because the string is first converted to a
+#GQuark.
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to unlock.
+<parameter name="dl">
+<parameter_description> a datalist.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the string identifying a data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the data element, or %NULL if it is not found.
+</return>
 </function>
 
-<function name="g_slist_next">
+<function name="g_datalist_get_flags">
 <description>
-A convenience macro to get the next element in a #GSList.
+Gets flags values packed in together with the datalist.
+See g_datalist_set_flags().
+
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="slist">
-<parameter_description> an element in a #GSList.
+<parameter name="datalist">
+<parameter_description> pointer to the location that holds a list
 </parameter_description>
 </parameter>
 </parameters>
-<return> the next element, or %NULL if there are no more elements.
+<return> the flags of the datalist
+
 </return>
 </function>
 
-<function name="g_atomic_pointer_compare_and_exchange">
+<function name="g_datalist_id_get_data">
 <description>
-Compares @oldval with the pointer pointed to by @atomic and
-if they are equal, atomically exchanges * atomic with @newval.
-Also acts as a memory barrier.
-
-Since: 2.4
+Retrieves the data element corresponding to @key_id.
 
 </description>
 <parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to a #gpointer
-</parameter_description>
-</parameter>
-<parameter name="oldval">
-<parameter_description> the assumed old value of * atomic
+<parameter name="datalist">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="newval">
-<parameter_description> the new value of * atomic
+<parameter name="key_id">
+<parameter_description> the #GQuark identifying a data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, if * atomic was equal @oldval. %FALSE otherwise.
-
+<return> the data element, or %NULL if it is not found.
 </return>
 </function>
 
-<function name="g_strndup">
+<function name="g_datalist_id_remove_data">
 <description>
-Duplicates the first @n bytes of a string, returning a newly-allocated
-buffer @n + 1 bytes long which will always be nul-terminated.
-If @str is less than @n bytes long the buffer is padded with nuls.
-If @str is %NULL it returns %NULL.
-The returned value should be freed when no longer needed.
-
-&lt;note&gt;&lt;para&gt;
-To copy a number of characters from a UTF-8 encoded string, use
-g_utf8_strncpy() instead.
-&lt;/para&gt;&lt;/note&gt;
-
+Removes an element, using its #GQuark identifier.
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> the string to duplicate
+<parameter name="dl">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the maximum number of bytes to copy from @str
+<parameter name="q">
+<parameter_description> the #GQuark identifying the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated buffer containing the first @n bytes 
-of @str, nul-terminated 
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_steal_qdata">
+<function name="g_datalist_id_remove_no_notify">
 <description>
-Gets back user data pointers stored via g_param_spec_set_qdata()
-and removes the @data from @pspec without invoking its destroy()
-function (if any was set).  Usually, calling this function is only
-required to update user data pointers with a destroy notifier.
-
+Removes an element, without calling its destroy notification
+function.
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec to get a stored user data pointer from
+<parameter name="datalist">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="quark">
-<parameter_description> a #GQuark, naming the user data pointer
+<parameter name="key_id">
+<parameter_description> the #GQuark identifying a data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the user data pointer set, or %NULL
+<return> the data previously stored at @key_id, or %NULL if none.
 </return>
 </function>
 
-<function name="g_relation_index">
+<function name="g_datalist_id_set_data">
 <description>
-Creates an index on the given field. Note that this must be called
-before any records are added to the #GRelation.
-
-Deprecated: 2.26: Rarely used API
+Sets the data corresponding to the given #GQuark id. Any previous
+data with the same key is removed, and its destroy function is
+called.
 
 </description>
 <parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> the field to index, counting from 0.
+<parameter name="dl">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="hash_func">
-<parameter_description> a function to produce a hash value from the field data.
+<parameter name="q">
+<parameter_description> the #GQuark to identify the data element.
 </parameter_description>
 </parameter>
-<parameter name="key_equal_func">
-<parameter_description> a function to compare two values of the given field.
+<parameter name="d">
+<parameter_description> the data element, or %NULL to remove any previous element
+corresponding to @q.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_test_log_buffer_free">
-<description>
-Internal function for gtester to free test log messages, no ABI guarantees provided.
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_key_file_get_string">
+<function name="g_datalist_id_set_data_full">
 <description>
-Returns the string value associated with @key under @group_name.
-Unlike g_key_file_get_value(), this function handles escape sequences
-like \s.
-
-In the event the key cannot be found, %NULL is returned and 
- error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND.  In the 
-event that the @group_name cannot be found, %NULL is returned 
-and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
-
-Since: 2.6
+Sets the data corresponding to the given #GQuark id, and the
+function to be called when the element is removed from the datalist.
+Any previous data with the same key is removed, and its destroy
+function is called.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="datalist">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="key_id">
+<parameter_description> the #GQuark to identify the data element.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="data">
+<parameter_description> the data element or %NULL to remove any previous element
+corresponding to @key_id.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="destroy_func">
+<parameter_description> the function to call when the data element is
+removed. This function will be called with the data
+element and can be used to free any memory allocated
+for it. If @data is %NULL, then @destroy_func must
+also be %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string or %NULL if the specified 
-key cannot be found.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_unsetenv">
+<function name="g_datalist_init">
 <description>
-Removes an environment variable from the environment.
-
-Note that on some systems, when variables are overwritten, the memory 
-used for the previous variables and its value isn't reclaimed.
-Furthermore, this function can't be guaranteed to operate in a 
-threadsafe way.
-
-Since: 2.4 
+Resets the datalist to %NULL. It does not free any memory or call
+any destroy functions.
 
 </description>
 <parameters>
-<parameter name="variable">
-<parameter_description> the environment variable to remove, must not contain '='.
+<parameter name="datalist">
+<parameter_description> a pointer to a pointer to a datalist.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_regex_match_all_full">
+<function name="g_datalist_remove_data">
 <description>
-Using the standard algorithm for regular expression matching only
-the longest match in the string is retrieved, it is not possibile
-to obtain all the available matches. For instance matching
-&quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot; against the pattern &quot;&lt;.*&gt;&quot;
-you get &quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot;.
-
-This function uses a different algorithm (called DFA, i.e. deterministic
-finite automaton), so it can retrieve all the possible matches, all
-starting at the same point in the string. For instance matching
-&quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot; against the pattern &quot;&lt;.*&gt;&quot;
-you would obtain three matches: &quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot;,
-&quot;&lt;a&gt; &lt;b&gt;&quot; and &quot;&lt;a&gt;&quot;.
-
-The number of matched strings is retrieved using
-g_match_info_get_match_count(). To obtain the matched strings and
-their position you can use, respectively, g_match_info_fetch() and
-g_match_info_fetch_pos(). Note that the strings are returned in
-reverse order of length; that is, the longest matching string is
-given first.
-
-Note that the DFA algorithm is slower than the standard one and it
-is not able to capture substrings, so backreferences do not work.
-
-Setting @start_position differs from just passing over a shortened
-string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
-that begins with any kind of lookbehind assertion, such as &quot;\b&quot;.
-
-A #GMatchInfo structure, used to get information on the match, is
-stored in @match_info if not %NULL. Note that if @match_info is
-not %NULL then it is created even if the function returns %FALSE,
-i.e. you must free it regardless if regular expression actually
-matched.
-
- string is not copied and is used in #GMatchInfo internally. If
-you use any #GMatchInfo method (except g_match_info_free()) after
-freeing or modifying @string then the behaviour is undefined.
-
-Since: 2.14
+Removes an element using its string identifier. The data element's
+destroy function is called if it has been set.
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure from g_regex_new()
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to scan for matches
-</parameter_description>
-</parameter>
-<parameter name="string_len">
-<parameter_description> the length of @string, or -1 if @string is nul-terminated
-</parameter_description>
-</parameter>
-<parameter name="start_position">
-<parameter_description> starting index of the string to match
-</parameter_description>
-</parameter>
-<parameter name="match_options">
-<parameter_description> match options
-</parameter_description>
-</parameter>
-<parameter name="match_info">
-<parameter_description> pointer to location where to store
-the #GMatchInfo, or %NULL if you do not need it
+<parameter name="dl">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore errors
+<parameter name="k">
+<parameter_description> the string identifying the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the string matched, %FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
-<function name="g_get_real_name">
+<function name="g_datalist_remove_no_notify">
 <description>
-Gets the real name of the user. This usually comes from the user's entry 
-in the &lt;filename&gt;passwd&lt;/filename&gt; file. The encoding of the returned 
-string is system-defined. (On Windows, it is, however, always UTF-8.) 
-If the real user name cannot be determined, the string &quot;Unknown&quot; is 
-returned.
-
+Removes an element, without calling its destroy notifier.
 
 </description>
 <parameters>
+<parameter name="dl">
+<parameter_description> a datalist.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the string identifying the data element.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the user's real name.
-</return>
+<return></return>
 </function>
 
-<function name="g_unichar_type">
+<function name="g_datalist_set_data">
 <description>
-Classifies a Unicode character by type.
-
+Sets the data element corresponding to the given string identifier.
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="dl">
+<parameter_description> a datalist.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the string to identify the data element.
+</parameter_description>
+</parameter>
+<parameter name="d">
+<parameter_description> the data element, or %NULL to remove any previous element
+corresponding to @k.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type of the character.
-</return>
+<return></return>
 </function>
 
-<function name="g_key_file_set_value">
+<function name="g_datalist_set_data_full">
 <description>
-Associates a new value with @key under @group_name.  
-
-If @key cannot be found then it is created. If @group_name cannot 
-be found then it is created. To set an UTF-8 string which may contain 
-characters that need escaping (such as newlines or spaces), use 
-g_key_file_set_string().
-
-Since: 2.6
+Sets the data element corresponding to the given string identifier,
+and the function to be called when the data element is removed.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="dl">
+<parameter_description> a datalist.
 </parameter_description>
 </parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="k">
+<parameter_description> the string to identify the data element.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="d">
+<parameter_description> the data element, or %NULL to remove any previous element
+corresponding to @k.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a string
+<parameter name="f">
+<parameter_description> the function to call when the data element is removed. This
+function will be called with the data element and can be used to
+free any memory allocated for it. If @d is %NULL, then @f must
+also be %NULL.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_node_depth">
+<function name="g_datalist_set_flags">
 <description>
-Gets the depth of a #GNode.
-
-If @node is %NULL the depth is 0. The root node has a depth of 1.
-For the children of the root node the depth is 2. And so on.
+Turns on flag values for a data list. This function is used
+to keep a small number of boolean flags in an object with
+a data list without using any additional space. It is
+not generally useful except in circumstances where space
+is very tight. (It is used in the base #GObject type, for
+example.)
 
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="datalist">
+<parameter_description> pointer to the location that holds a list
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> the flags to turn on. The values of the flags are
+restricted by %G_DATALIST_FLAGS_MASK (currently
+3; giving two possible boolean flags).
+A value for @flags that doesn't fit within the mask is
+an error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the depth of the #GNode
-</return>
+<return></return>
 </function>
 
-<function name="g_value_dup_variant">
+<function name="g_datalist_unset_flags">
 <description>
-Get the contents of a variant #GValue, increasing its refcount.
+Turns off flag values for a data list. See g_datalist_unset_flags()
 
-Since: 2.26
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_VARIANT
+<parameter name="datalist">
+<parameter_description> pointer to the location that holds a list
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> the flags to turn off. The values of the flags are
+restricted by %G_DATALIST_FLAGS_MASK (currently
+3: giving two possible boolean flags).
+A value for @flags that doesn't fit within the mask is
+an error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> variant contents of @value, should be unrefed using
-g_variant_unref() when no longer needed
-
-</return>
+<return></return>
 </function>
 
-<function name="g_value_get_long">
+<function name="g_dataset_destroy">
 <description>
-Get the contents of a %G_TYPE_LONG #GValue.
-
+Destroys the dataset, freeing all memory allocated, and calling any
+destroy functions set for data elements.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_LONG
+<parameter name="dataset_location">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
 </parameters>
-<return> long integer contents of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_async_queue_push_sorted_unlocked">
+<function name="g_dataset_foreach">
 <description>
-Inserts @data into @queue using @func to determine the new
-position.
-
-This function requires that the @queue is sorted before pushing on
-new elements.
-
-This function is called while holding the @queue's lock.
-
-For an example of @func see g_async_queue_sort(). 
-
-Since: 2.10
+Calls the given function for each data element which is associated
+with the given location. Note that this function is NOT thread-safe.
+So unless @datalist can be protected from any modifications during
+invocation of this function, it should not be called.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the @data to push into the @queue
+<parameter name="dataset_location">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
 <parameter name="func">
-<parameter_description> the #GCompareDataFunc is used to sort @queue. This function
-is passed two elements of the @queue. The function should return
-0 if they are equal, a negative value if the first element
-should be higher in the @queue or a positive value if the first
-element should be lower in the @queue than the second element.
+<parameter_description> the function to call for each data element.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @func.
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_thread_init">
+<function name="g_dataset_get_data">
 <description>
-If you use GLib from more than one thread, you must initialize the
-thread system by calling g_thread_init(). Most of the time you will
-only have to call &lt;literal&gt;g_thread_init (NULL)&lt;/literal&gt;.
-
-&lt;note&gt;&lt;para&gt;Do not call g_thread_init() with a non-%NULL parameter unless
-you really know what you are doing.&lt;/para&gt;&lt;/note&gt;
-
-&lt;note&gt;&lt;para&gt;g_thread_init() must not be called directly or indirectly as a
-callback from GLib. Also no mutexes may be currently locked while
-calling g_thread_init().&lt;/para&gt;&lt;/note&gt;
-
-&lt;note&gt;&lt;para&gt;g_thread_init() changes the way in which #GTimer measures
-elapsed time. As a consequence, timers that are running while
-g_thread_init() is called may report unreliable times.&lt;/para&gt;&lt;/note&gt;
-
-Calling g_thread_init() multiple times is allowed (since version
-2.24), but nothing happens except for the first call. If the
-argument is non-%NULL on such a call a warning will be printed, but
-otherwise the argument is ignored.
-
-If no thread system is available and @vtable is %NULL or if not all
-elements of @vtable are non-%NULL, then g_thread_init() will abort.
-
-&lt;note&gt;&lt;para&gt;To use g_thread_init() in your program, you have to link with
-the libraries that the command &lt;command&gt;pkg-config --libs
-gthread-2.0&lt;/command&gt; outputs. This is not the case for all the
-other thread related functions of GLib. Those can be used without
-having to link with the thread libraries.&lt;/para&gt;&lt;/note&gt;
+Gets the data element corresponding to a string.
 
 </description>
 <parameters>
-<parameter name="vtable">
-<parameter_description> a function table of type #GThreadFunctions, that provides
-the entry points to the thread system to be used.
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the string identifying the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the data element corresponding to the string, or %NULL if
+it is not found.
+</return>
 </function>
 
-<function name="g_value_get_boolean">
+<function name="g_dataset_id_get_data">
 <description>
-Get the contents of a %G_TYPE_BOOLEAN #GValue.
-
+Gets the data element corresponding to a #GQuark.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_BOOLEAN
+<parameter name="dataset_location">
+<parameter_description> the location identifying the dataset.
+</parameter_description>
+</parameter>
+<parameter name="key_id">
+<parameter_description> the #GQuark id to identify the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> boolean contents of @value
+<return> the data element corresponding to the #GQuark, or %NULL if
+it is not found.
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__VARIANT">
+<function name="g_dataset_id_remove_data">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, GVariant *arg1, gpointer user_data)&lt;/literal&gt;.
-
-Since: 2.26
+Removes a data element from a dataset. The data element's destroy
+function is called if it has been set.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #GVariant* parameter
+<parameter name="k">
+<parameter_description> the #GQuark id identifying the data element.
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+</parameters>
+<return></return>
+</function>
+
+<function name="g_dataset_id_remove_no_notify">
+<description>
+Removes an element, without calling its destroy notification
+function.
+
+</description>
+<parameters>
+<parameter name="dataset_location">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="key_id">
+<parameter_description> the #GQuark ID identifying the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the data previously stored at @key_id, or %NULL if none.
+</return>
 </function>
 
-<function name="g_key_file_free">
+<function name="g_dataset_id_set_data">
 <description>
-Frees a #GKeyFile.
-
-Since: 2.6
+Sets the data element associated with the given #GQuark id. Any
+previous data with the same key is removed, and its destroy function
+is called.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the #GQuark id to identify the data element.
+</parameter_description>
+</parameter>
+<parameter name="d">
+<parameter_description> the data element.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_tree_traverse">
+<function name="g_dataset_id_set_data_full">
 <description>
-Calls the given function for each node in the #GTree. 
-
-Deprecated:2.2: The order of a balanced tree is somewhat arbitrary. If you 
-just want to visit all nodes in sorted order, use g_tree_foreach() 
-instead. If you really need to visit nodes in a different order, consider
-using an &lt;link linkend=&quot;glib-N-ary-Trees&quot;&gt;N-ary Tree&lt;/link&gt;.
+Sets the data element associated with the given #GQuark id, and also
+the function to call when the data element is destroyed. Any
+previous data with the same key is removed, and its destroy function
+is called.
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="dataset_location">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
-<parameter name="traverse_func">
-<parameter_description> the function to call for each node visited. If this 
-function returns %TRUE, the traversal is stopped.
+<parameter name="key_id">
+<parameter_description> the #GQuark id to identify the data element.
 </parameter_description>
 </parameter>
-<parameter name="traverse_type">
-<parameter_description> the order in which nodes are visited, one of %G_IN_ORDER,
-%G_PRE_ORDER and %G_POST_ORDER.
+<parameter name="data">
+<parameter_description> the data element.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="destroy_func">
+<parameter_description> the function to call when the data element is
+removed. This function will be called with the data
+element and can be used to free any memory allocated
+for it.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_once_init_enter">
+<function name="g_dataset_remove_data">
 <description>
-Function to be called when starting a critical initialization
-section. The argument @value_location must point to a static
-0-initialized variable that will be set to a value other than 0 at
-the end of the initialization section. In combination with
-g_once_init_leave() and the unique address @value_location, it can
-be ensured that an initialization section will be executed only once
-during a program's life time, and that concurrent threads are
-blocked until initialization completed. To be used in constructs
-like this:
-
-&lt;informalexample&gt;
-&lt;programlisting&gt;
-static gsize initialization_value = 0;
-
-if (g_once_init_enter (&amp;initialization_value))
-{
-gsize setup_value = 42; /&lt;!-- --&gt;* initialization code here *&lt;!-- --&gt;/
-
-g_once_init_leave (&amp;initialization_value, setup_value);
-}
-
-/&lt;!-- --&gt;* use initialization_value here *&lt;!-- --&gt;/
-&lt;/programlisting&gt;
-&lt;/informalexample&gt;
-
-Since: 2.14
+Removes a data element corresponding to a string. Its destroy
+function is called if it has been set.
 
 </description>
 <parameters>
-<parameter name="value_location">
-<parameter_description> location of a static initializable variable
-containing 0.
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the string identifying the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the initialization section should be entered,
-%FALSE and blocks otherwise
-</return>
+<return></return>
 </function>
 
-<function name="g_value_array_prepend">
+<function name="g_dataset_remove_no_notify">
 <description>
-Insert a copy of @value as first element of @value_array. If @value is
-%NULL, an uninitialized value is prepended.
-
-
+Removes an element, without calling its destroy notifier.
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to add an element to
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> #GValue to copy into #GValueArray, or %NULL
+<parameter name="k">
+<parameter_description> the string identifying the data element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GValueArray passed in as @value_array
-</return>
+<return></return>
 </function>
 
-<function name="g_markup_parse_context_push">
+<function name="g_dataset_set_data">
 <description>
-Temporarily redirects markup data to a sub-parser.
-
-This function may only be called from the start_element handler of
-a #GMarkupParser.  It must be matched with a corresponding call to
-g_markup_parse_context_pop() in the matching end_element handler
-(except in the case that the parser aborts due to an error).
-
-All tags, text and other data between the matching tags is
-redirected to the subparser given by @parser.  @user_data is used
-as the user_data for that parser.  @user_data is also passed to the
-error callback in the event that an error occurs.  This includes
-errors that occur in subparsers of the subparser.
-
-The end tag matching the start tag for which this call was made is
-handled by the previous parser (which is given its own user_data)
-which is why g_markup_parse_context_pop() is provided to allow &quot;one
-last access&quot; to the @user_data provided to this function.  In the
-case of error, the @user_data provided here is passed directly to
-the error callback of the subparser and g_markup_parse_context()
-should not be called.  In either case, if @user_data was allocated
-then it ought to be freed from both of these locations.
-
-This function is not intended to be directly called by users
-interested in invoking subparsers.  Instead, it is intended to be
-used by the subparsers themselves to implement a higher-level
-interface.
-
-As an example, see the following implementation of a simple
-parser that counts the number of tags encountered.
-
-|[
-typedef struct
-{
-gint tag_count;
-} CounterData;
-
-static void
-counter_start_element (GMarkupParseContext  *context,
-const gchar          *element_name,
-const gchar         **attribute_names,
-const gchar         **attribute_values,
-gpointer              user_data,
-GError              **error)
-{
-CounterData *data = user_data;
-
-data-&gt;tag_count++;
-}
-
-static void
-counter_error (GMarkupParseContext *context,
-GError              *error,
-gpointer             user_data)
-{
-CounterData *data = user_data;
-
-g_slice_free (CounterData, data);
-}
-
-static GMarkupParser counter_subparser =
-{
-counter_start_element,
-NULL,
-NULL,
-NULL,
-counter_error
-};
-]|
-
-In order to allow this parser to be easily used as a subparser, the
-following interface is provided:
-
-|[
-void
-start_counting (GMarkupParseContext *context)
-{
-CounterData *data = g_slice_new (CounterData);
-
-data-&gt;tag_count = 0;
-g_markup_parse_context_push (context, &amp;counter_subparser, data);
-}
-
-gint
-end_counting (GMarkupParseContext *context)
-{
-CounterData *data = g_markup_parse_context_pop (context);
-int result;
-
-result = data-&gt;tag_count;
-g_slice_free (CounterData, data);
-
-return result;
-}
-]|
-
-The subparser would then be used as follows:
-
-|[
-static void start_element (context, element_name, ...)
-{
-if (strcmp (element_name, &quot;count-these&quot;) == 0)
-start_counting (context);
-
-/ * else, handle other tags... * /
-}
-
-static void end_element (context, element_name, ...)
-{
-if (strcmp (element_name, &quot;count-these&quot;) == 0)
-g_print (&quot;Counted %d tags\n&quot;, end_counting (context));
-
-/ * else, handle other tags... * /
-}
-]|
-
-Since: 2.18
+Sets the data corresponding to the given string identifier.
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
 </parameter_description>
 </parameter>
-<parameter name="parser">
-<parameter_description> a #GMarkupParser
+<parameter name="k">
+<parameter_description> the string to identify the data element.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to #GMarkupParser functions
+<parameter name="d">
+<parameter_description> the data element.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_get_filename_charsets">
+<function name="g_dataset_set_data_full">
 <description>
-Determines the preferred character sets used for filenames.
-The first character set from the @charsets is the filename encoding, the
-subsequent character sets are used when trying to generate a displayable
-representation of a filename, see g_filename_display_name().
-
-On Unix, the character sets are determined by consulting the
-environment variables &lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; and
-&lt;envar&gt;G_BROKEN_FILENAMES&lt;/envar&gt;. On Windows, the character set
-used in the GLib API is always UTF-8 and said environment variables
-have no effect.
-
-&lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; may be set to a comma-separated list 
-of character set names. The special token &quot;@locale&quot; is taken to 
-mean the character set for the &lt;link linkend=&quot;setlocale&quot;&gt;current 
-locale&lt;/link&gt;. If &lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; is not set, but 
-&lt;envar&gt;G_BROKEN_FILENAMES&lt;/envar&gt; is, the character set of the current 
-locale is taken as the filename encoding. If neither environment variable 
-is set, UTF-8 is taken as the filename encoding, but the character
-set of the current locale is also put in the list of encodings.
-
-The returned @charsets belong to GLib and must not be freed.
-
-Note that on Unix, regardless of the locale character set or
-&lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; value, the actual file names present 
-on a system might be in any random encoding or just gibberish.
-
-Since: 2.6
+Sets the data corresponding to the given string identifier, and the
+function to call when the data element is destroyed.
 
 </description>
 <parameters>
-<parameter name="charsets">
-<parameter_description> return location for the %NULL-terminated list of encoding names
+<parameter name="l">
+<parameter_description> the location identifying the dataset.
+</parameter_description>
+</parameter>
+<parameter name="k">
+<parameter_description> the string to identify the data element.
+</parameter_description>
+</parameter>
+<parameter name="d">
+<parameter_description> the data element.
+</parameter_description>
+</parameter>
+<parameter name="f">
+<parameter_description> the function to call when the data element is removed. This
+function will be called with the data element and can be used to
+free any memory allocated for it.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the filename encoding is UTF-8.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_peek_tail_link">
+<function name="g_date_get_iso8601_week_of_year">
 <description>
-Returns the last link @queue.
+Returns the week of the year, where weeks are interpreted according
+to ISO 8601. 
 
-Since: 2.4
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="date">
+<parameter_description> a valid #GDate
 </parameter_description>
 </parameter>
 </parameters>
-<return> the last link in @queue, or %NULL if @queue is empty
+<return> ISO 8601 week number of the year.
 
 </return>
 </function>
 
-<function name="g_param_spec_get_qdata">
+<function name="g_date_set_time">
 <description>
-Gets back user data pointers stored via g_param_spec_set_qdata().
+Sets the value of a date from a #GTime value.
+The time to date conversion is done using the user's current timezone.
 
+Deprecated: 2.10: Use g_date_set_time_t() instead.
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="date">
+<parameter_description> a #GDate.
 </parameter_description>
 </parameter>
-<parameter name="quark">
-<parameter_description> a #GQuark, naming the user data pointer
+<parameter name="time_">
+<parameter_description> #GTime value to set.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the user data pointer set, or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="g_list_find_custom">
+<function name="g_date_set_time_t">
 <description>
-Finds an element in a #GList, using a supplied function to 
-find the desired element. It iterates over the list, calling 
-the given function which should return 0 when the desired 
-element is found. The function takes two #gconstpointer arguments, 
-the #GList element's data as the first argument and the 
-given user data.
+Sets the value of a date to the date corresponding to a time 
+specified as a time_t. The time to date conversion is done using 
+the user's current timezone.
+
+To set the value of a date to the current day, you could write:
+|[
+g_date_set_time_t (date, time (NULL)); 
+]|
 
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> user data passed to the function
+<parameter name="date">
+<parameter_description> a #GDate 
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to call for each element. 
-It should return 0 when the desired element is found
+<parameter name="timet">
+<parameter_description> &lt;type&gt;time_t&lt;/type&gt; value to set
 </parameter_description>
 </parameter>
 </parameters>
-<return> the found #GList element, or %NULL if it is not found
-</return>
+<return></return>
 </function>
 
-<function name="g_mem_chunk_reset">
+<function name="g_date_set_time_val">
 <description>
-Resets a GMemChunk to its initial state. It frees all of the
-currently allocated blocks of memory.
-
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
+Sets the value of a date from a #GTimeVal value.  Note that the
+ tv_usec member is ignored, because #GDate can't make use of the
+additional precision.
 
-</description>
-<parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+The time to date conversion is done using the user's current timezone.
 
-<function name="g_closure_add_invalidate_notifier">
-<description>
-Registers an invalidation notifier which will be called when the
- closure is invalidated with g_closure_invalidate(). Invalidation
-notifiers are invoked before finalization notifiers, in an
-unspecified order.
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
-</parameter_description>
-</parameter>
-<parameter name="notify_data">
-<parameter_description> data to pass to @notify_func
+<parameter name="date">
+<parameter_description> a #GDate 
 </parameter_description>
 </parameter>
-<parameter name="notify_func">
-<parameter_description> the callback function to register
+<parameter name="timeval">
+<parameter_description> #GTimeVal value to set
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_foreach">
+<function name="g_date_time_add">
 <description>
-Calls @func for each element in the queue passing @user_data to the
-function.
+Creates a copy of @datetime and adds the specified timespan to the copy.
 
-Since: 2.4
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each element's data
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @func
+<parameter name="timespan">
+<parameter_description> a #GTimeSpan
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
+</return>
 </function>
 
-<function name="g_source_get_id">
+<function name="g_date_time_add_days">
 <description>
-Returns the numeric ID for a particular source. The ID of a source
-is a positive integer which is unique within a particular main loop 
-context. The reverse
-mapping from ID to source is done by g_main_context_find_source_by_id().
+Creates a copy of @datetime and adds the specified number of days to the
+copy.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="datetime">
+<parameter_description> a #GDateTime
+</parameter_description>
+</parameter>
+<parameter name="days">
+<parameter_description> the number of days
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) for the source
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
 </return>
 </function>
 
-<function name="g_variant_new_variant">
+<function name="g_date_time_add_full">
 <description>
-Boxes @value.  The result is a #GVariant instance representing a
-variant containing the original value.
+Creates a new #GDateTime adding the specified values to the current date and
+time in @datetime.
 
-Since: 2.24
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariance instance
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new variant #GVariant instance
-</return>
-</function>
-
-<function name="g_cclosure_marshal_VOID__ENUM">
-<description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gint arg1, gpointer user_data)&lt;/literal&gt; where the #gint parameter denotes an enumeration type..
-
-</description>
-<parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
+<parameter name="years">
+<parameter_description> the number of years to add
 </parameter_description>
 </parameter>
-<parameter name="return_value">
-<parameter_description> ignored
+<parameter name="months">
+<parameter_description> the number of months to add
 </parameter_description>
 </parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
+<parameter name="days">
+<parameter_description> the number of days to add
 </parameter_description>
 </parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the enumeration parameter
+<parameter name="hours">
+<parameter_description> the number of hours to add
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="minutes">
+<parameter_description> the number of minutes to add
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="seconds">
+<parameter_description> the number of seconds to add
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GDateTime that should be freed with
+g_date_time_unref().
+
+</return>
 </function>
 
-<function name="g_bookmark_file_load_from_data">
+<function name="g_date_time_add_hours">
 <description>
-Loads a bookmark file from memory into an empty #GBookmarkFile
-structure.  If the object cannot be created then @error is set to a
-#GBookmarkFileError.
+Creates a copy of @datetime and adds the specified number of hours
 
-Since: 2.12
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> an empty #GBookmarkFile struct
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> desktop bookmarks loaded in memory
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the length of @data in bytes
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="hours">
+<parameter_description> the number of hours to add
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a desktop bookmark could be loaded.
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
 
 </return>
 </function>
 
-<function name="g_ptr_array_unref">
+<function name="g_date_time_add_minutes">
 <description>
-Atomically decrements the reference count of @array by one. If the
-reference count drops to 0, the effect is the same as calling
-g_ptr_array_free() with @free_segment set to %TRUE. This function
-is MT-safe and may be called from any thread.
+Creates a copy of @datetime adding the specified number of minutes.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GPtrArray.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_getenv">
-<description>
-Returns the value of an environment variable. The name and value
-are in the GLib file name encoding. On UNIX, this means the actual
-bytes which might or might not be in some consistent character set
-and encoding. On Windows, it is in UTF-8. On Windows, in case the
-environment variable's value contains references to other
-environment variables, they are expanded.
-
-
-</description>
-<parameters>
-<parameter name="variable">
-<parameter_description> the environment variable to get, in the GLib file name encoding.
+<parameter name="minutes">
+<parameter_description> the number of minutes to add
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value of the environment variable, or %NULL if
-the environment variable is not found. The returned string may be
-overwritten by the next call to g_getenv(), g_setenv() or
-g_unsetenv().
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
 </return>
 </function>
 
-<function name="g_signal_chain_from_overridden_handler">
+<function name="g_date_time_add_months">
 <description>
-Calls the original class closure of a signal. This function should
-only be called from an overridden class closure; see
-g_signal_override_class_closure() and
-g_signal_override_class_handler().
+Creates a copy of @datetime and adds the specified number of months to the
+copy.
 
-Since: 2.18
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance the signal is being emitted on.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> parameters to be passed to the parent class closure, followed by a
-location for the return value. If the return type of the signal
-is #G_TYPE_NONE, the return value location can be omitted.
+<parameter name="months">
+<parameter_description> the number of months
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
+</return>
 </function>
 
-<function name="g_param_spec_pool_insert">
+<function name="g_date_time_add_seconds">
 <description>
-Inserts a #GParamSpec in the pool.
+Creates a copy of @datetime and adds the specified number of seconds.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GParamSpecPool.
-</parameter_description>
-</parameter>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec to insert
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="owner_type">
-<parameter_description> a #GType identifying the owner of @pspec
+<parameter name="seconds">
+<parameter_description> the number of seconds to add
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
+</return>
 </function>
 
-<function name="g_type_register_static_simple">
+<function name="g_date_time_add_weeks">
 <description>
-Registers @type_name as the name of a new static type derived from
- parent_type   The value of @flags determines the nature (e.g.
-abstract or not) of the type. It works by filling a #GTypeInfo
-struct and calling g_type_register_static().
-
-Since: 2.12
+Creates a copy of @datetime and adds the specified number of weeks to the
+copy.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="parent_type">
-<parameter_description> Type from which this type will be derived.
-</parameter_description>
-</parameter>
-<parameter name="type_name">
-<parameter_description> 0-terminated string used as the name of the new type.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="class_size">
-<parameter_description> Size of the class structure (see #GTypeInfo)
-</parameter_description>
-</parameter>
-<parameter name="class_init">
-<parameter_description> Location of the class initialization function (see #GTypeInfo)
-</parameter_description>
-</parameter>
-<parameter name="instance_size">
-<parameter_description> Size of the instance structure (see #GTypeInfo)
-</parameter_description>
-</parameter>
-<parameter name="instance_init">
-<parameter_description> Location of the instance initialization function (see #GTypeInfo)
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Bitwise combination of #GTypeFlags values.
+<parameter name="weeks">
+<parameter_description> the number of weeks
 </parameter_description>
 </parameter>
 </parameters>
-<return> The new type identifier.
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
 </return>
 </function>
 
-<function name="g_variant_ref">
+<function name="g_date_time_add_years">
 <description>
-Increases the reference count of @value.
+Creates a copy of @datetime and adds the specified number of years to the
+copy.
 
-Since: 2.24
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="datetime">
+<parameter_description> a #GDateTime
+</parameter_description>
+</parameter>
+<parameter name="years">
+<parameter_description> the number of years
 </parameter_description>
 </parameter>
 </parameters>
-<return> the same @value
+<return> the newly created #GDateTime which should be freed with
+g_date_time_unref().
+
 </return>
 </function>
 
-<function name="g_signal_handler_disconnect">
+<function name="g_date_time_compare">
 <description>
-Disconnects a handler from an instance so it will not be called during
-any future or currently ongoing emissions of the signal it has been
-connected to. The @handler_id becomes invalid and may be reused.
+#GCompareFunc-compatible comparison for #GDateTime&lt;!-- --&gt;'s. Both
+#GDateTime&lt;-- --&gt;'s must be non-%NULL.
 
-The @handler_id has to be a valid signal handler id, connected to a
-signal of @instance.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance to remove the signal handler from.
+<parameter name="dt1">
+<parameter_description> first #GDateTime to compare
 </parameter_description>
 </parameter>
-<parameter name="handler_id">
-<parameter_description> Handler id of the handler to be disconnected.
+<parameter name="dt2">
+<parameter_description> second #GDateTime to compare
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> -1, 0 or 1 if @dt1 is less than, equal to or greater
+than @dt2.
+
+</return>
 </function>
 
-<function name="g_uri_unescape_segment">
+<function name="g_date_time_difference">
 <description>
-Unescapes a segment of an escaped string.
+Calculates the difference in time between @end and @begin.  The
+#GTimeSpan that is returned is effectively @end - @begin (ie:
+positive if the first simparameter is larger).
 
-If any of the characters in @illegal_characters or the character zero appears
-as an escaped character in @escaped_string then that is an error and %NULL
-will be returned. This is useful it you want to avoid for instance having a
-slash being expanded in an escaped path element, which might confuse pathname
-handling.
-
-Since: 2.16
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="escaped_string">
-<parameter_description> a string.
-</parameter_description>
-</parameter>
-<parameter name="escaped_string_end">
-<parameter_description> a string.
+<parameter name="end">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="illegal_characters">
-<parameter_description> an optional string of illegal characters not to be allowed.
+<parameter name="begin">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unescaped version of @escaped_string or %NULL on error.
-The returned string should be freed when no longer needed.
+<return> the difference between the two #GDateTime, as a time
+span expressed in microseconds.
 
 </return>
 </function>
 
-<function name="g_file_get_contents">
+<function name="g_date_time_equal">
 <description>
-Reads an entire file into allocated memory, with good error
-checking.
+Checks to see if @dt1 and @dt2 are equal.
 
-If the call was successful, it returns %TRUE and sets @contents to the file
-contents and @length to the length of the file contents in bytes. The string
-stored in @contents will be nul-terminated, so for text files you can pass
-%NULL for the @length argument. If the call was not successful, it returns
-%FALSE and sets @error. The error domain is #G_FILE_ERROR. Possible error
-codes are those in the #GFileError enumeration. In the error case,
- contents is set to %NULL and @length is set to zero.
+Equal here means that they represent the same moment after converting
+them to the same time zone.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> name of a file to read contents from, in the GLib file name encoding
-</parameter_description>
-</parameter>
-<parameter name="contents">
-<parameter_description> location to store an allocated string, use g_free() to free
-the returned string
+<parameter name="dt1">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> location to store length in bytes of the contents, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="dt2">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if an error occurred
+<return> %TRUE if @dt1 and @dt2 are equal
+
 </return>
 </function>
 
-<function name="g_key_file_set_uint64">
+<function name="g_date_time_format">
 <description>
-Associates a new integer value with @key under @group_name.
-If @key cannot be found then it is created.
+Creates a newly allocated string representing the requested @format.
+
+The following format specifiers are supported:
+
+&lt;variablelist&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%a&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the abbreviated weekday name according to the current locale
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%A&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the full weekday name according to the current locale
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%b&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the abbreviated month name according to the current locale
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%B&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the full month name according to the current locale
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%d&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the day of the month as a decimal number (range 01 to 31)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%e&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the day of the month as a decimal number (range  1 to 31)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%F&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+equivalent to &lt;literal&gt;%%Y-%%m-%%d&lt;/literal&gt; (the ISO 8601 date
+format)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%h&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+equivalent to &lt;literal&gt;%%b&lt;/literal&gt;
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%H&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the hour as a decimal number using a 24-hour clock (range 00 to
+23)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%I&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the hour as a decimal number using a 12-hour clock (range 01 to
+12)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%j&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the day of the year as a decimal number (range 001 to 366)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%k&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the hour (24-hour clock) as a decimal number (range 0 to 23);
+single digits are preceded by a blank
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%l&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the hour (12-hour clock) as a decimal number (range 1 to 12);
+single digits are preceded by a blank
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%m&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the month as a decimal number (range 01 to 12)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%M&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the minute as a decimal number (range 00 to 59)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%N&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the micro-seconds as a decimal number
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%p&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+either &quot;AM&quot; or &quot;PM&quot; according to the given time value, or the
+corresponding  strings for the current locale.  Noon is treated as
+&quot;PM&quot; and midnight as &quot;AM&quot;.
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%P&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+like %%p but lowercase: &quot;am&quot; or &quot;pm&quot; or a corresponding string for
+the current locale
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%r&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the time in a.m. or p.m. notation
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%R&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the time in 24-hour notation (&lt;literal&gt;%%H:%%M&lt;/literal&gt;)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%s&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the number of seconds since the Epoch, that is, since 1970-01-01
+00:00:00 UTC
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%S&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the second as a decimal number (range 00 to 60)
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%t&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+a tab character
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%u&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the day of the week as a decimal, range 1 to 7, Monday being 1
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%W&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the week number of the current year as a decimal number
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%x&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the preferred date representation for the current locale without
+the time
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%X&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the preferred time representation for the current locale without
+the date
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%y&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the year as a decimal number without the century
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%Y&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the year as a decimal number including the century
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%z&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the time-zone as hour offset from UTC
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%Z&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+the time zone or name or abbreviation
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;
+&lt;literal&gt;%%%&lt;/literal&gt;:
+&lt;/term&gt;&lt;listitem&gt;&lt;simpara&gt;
+a literal &lt;literal&gt;%%&lt;/literal&gt; character
+&lt;/simpara&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;/variablelist&gt;
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="datetime">
+<parameter_description> A #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> an integer value
+<parameter name="format">
+<parameter_description> a valid UTF-8 string, containing the format for the
+#GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string formatted to the requested format
+or %NULL in the case that there was an error.  The string
+should be freed with g_free().
+
+</return>
 </function>
 
-<function name="g_hash_table_iter_next">
+<function name="g_date_time_get_day_of_month">
 <description>
-Advances @iter and retrieves the key and/or value that are now
-pointed to as a result of this advancement. If %FALSE is returned,
- key and @value are not set, and the iterator becomes invalid.
+Retrieves the day of the month represented by @datetime in the gregorian
+calendar.
 
-Since: 2.16
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> an initialized #GHashTableIter.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a location to store the key, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a location to store the value, or %NULL.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> %FALSE if the end of the #GHashTable has been reached.
+<return> the day of the month
 
 </return>
 </function>
 
-<function name="g_list_length">
+<function name="g_date_time_get_day_of_week">
 <description>
-Gets the number of elements in a #GList.
-
-&lt;note&gt;&lt;para&gt;
-This function iterates over the whole list to 
-count its elements.
-&lt;/para&gt;&lt;/note&gt;
+Retrieves the ISO 8601 day of the week on which @datetime falls (1 is
+Monday, 2 is Tuesday... 7 is Sunday).
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of elements in the #GList
+<return> the day of the week
+
 </return>
 </function>
 
-<function name="g_test_add_func">
+<function name="g_date_time_get_day_of_year">
 <description>
-Create a new test case, similar to g_test_create_case(). However
-the test is assumed to use no fixture, and test suites are automatically
-created on the fly and added to the root fixture, based on the
-slash-separated portions of @testpath.
+Retrieves the day of the year represented by @datetime in the Gregorian
+calendar.
 
-Since: 2.16
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="testpath">
-<parameter_description>   Slash-separated test case path name for the test.
-</parameter_description>
-</parameter>
-<parameter name="test_func">
-<parameter_description>  The test function to invoke for this test.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the day of the year
+
+</return>
 </function>
 
-<function name="g_list_remove_link">
+<function name="g_date_time_get_hour">
 <description>
-Removes an element from a #GList, without freeing the element.
-The removed element's prev and next links are set to %NULL, so 
-that it becomes a self-contained list with one element.
+Retrieves the hour of the day represented by @datetime
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
-</parameter_description>
-</parameter>
-<parameter name="llink">
-<parameter_description> an element in the #GList
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList, without the element
+<return> the hour of the day
+
 </return>
 </function>
 
-<function name="g_param_spec_pool_remove">
+<function name="g_date_time_get_microsecond">
 <description>
-Removes a #GParamSpec from the pool.
-
-</description>
-<parameters>
-<parameter name="pool">
-<parameter_description> a #GParamSpecPool
-</parameter_description>
-</parameter>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec to remove
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Retrieves the microsecond of the date represented by @datetime
 
-<function name="g_param_spec_unref">
-<description>
-Decrements the reference count of a @pspec.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the microsecond of the second
+
+</return>
 </function>
 
-<function name="g_strjoin">
+<function name="g_date_time_get_minute">
 <description>
-Joins a number of strings together to form one long string, with the 
-optional @separator inserted between each of them. The returned string
-should be freed with g_free().
+Retrieves the minute of the hour represented by @datetime
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="separator">
-<parameter_description> a string to insert between each of the strings, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a %NULL-terminated list of strings to join
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string containing all of the strings joined
-together, with @separator between them
+<return> the minute of the hour
+
 </return>
 </function>
 
-<function name="g_io_channel_read">
+<function name="g_date_time_get_month">
 <description>
-Reads data from a #GIOChannel. 
+Retrieves the month of the year represented by @datetime in the Gregorian
+calendar.
 
-Deprecated:2.2: Use g_io_channel_read_chars() instead.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="buf">
-<parameter_description> a buffer to read the data into (which should be at least 
-count bytes long)
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of bytes to read from the #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="bytes_read">
-<parameter_description> returns the number of bytes actually read
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> %G_IO_ERROR_NONE if the operation was successful. 
+<return> the month represented by @datetime
 
 </return>
 </function>
 
-<function name="g_array_index">
+<function name="g_date_time_get_second">
 <description>
-Returns the element of a #GArray at the given index. The return
-value is cast to the given type.
+Retrieves the second of the minute represented by @datetime
 
-&lt;example&gt;
-&lt;title&gt;Getting a pointer to an element in a #GArray&lt;/title&gt;
-&lt;programlisting&gt;
-EDayViewEvent *event;
-/&lt;!-- --&gt;* This gets a pointer to the 4th element
-in the array of EDayViewEvent structs. *&lt;!-- --&gt;/
-event = &amp;g_array_index (events, EDayViewEvent, 3);
-&lt;/programlisting&gt;
-&lt;/example&gt;
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #GArray.
-</parameter_description>
-</parameter>
-<parameter name="t">
-<parameter_description> the type of the elements.
-</parameter_description>
-</parameter>
-<parameter name="i">
-<parameter_description> the index of the element to return.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element of the #GArray at the index given by @i.
+<return> the second represented by @datetime
+
 </return>
 </function>
 
-<function name="g_value_get_variant">
+<function name="g_date_time_get_seconds">
 <description>
-Get the contents of a variant #GValue.
+Retrieves the number of seconds since the start of the last minute,
+including the fractional part.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_VARIANT
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> variant contents of @value
+<return> the number of seconds
 
 </return>
 </function>
 
-<function name="g_checksum_get_string">
+<function name="g_date_time_get_timezone_abbreviation">
 <description>
-Gets the digest as an hexadecimal string.
+Determines the time zone abbreviation to be used at the time and in
+the time zone of @datetime.
 
-Once this function has been called the #GChecksum can no longer be
-updated with g_checksum_update().
-
-The hexadecimal characters will be lower case. 
+For example, in Toronto this is currently &quot;EST&quot; during the winter
+months and &quot;EDT&quot; during the summer months when daylight savings
+time is in effect.
 
-Since: 2.16
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="checksum">
-<parameter_description> a #GChecksum
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the hexadecimal representation of the checksum. The
-returned string is owned by the checksum and should not be modified
-or freed.
+<return> the time zone abbreviation. The returned
+string is owned by the #GDateTime and it should not be
+modified or freed
 
 </return>
 </function>
 
-<function name="g_checksum_new">
+<function name="g_date_time_get_utc_offset">
 <description>
-Creates a new #GChecksum, using the checksum algorithm @checksum_type. 
-If the @checksum_type is not known, %NULL is returned.
-A #GChecksum can be used to compute the checksum, or digest, of an
-arbitrary binary blob, using different hashing algorithms.
+Determines the offset to UTC in effect at the time and in the time
+zone of @datetime.
 
-A #GChecksum works by feeding a binary blob through g_checksum_update()
-until there is data to be checked; the digest can then be extracted
-using g_checksum_get_string(), which will return the checksum as a
-hexadecimal string; or g_checksum_get_digest(), which will return a
-vector of raw bytes. Once either g_checksum_get_string() or
-g_checksum_get_digest() have been called on a #GChecksum, the checksum
-will be closed and it won't be possible to call g_checksum_update()
-on it anymore.
+The offset is the number of microseconds that you add to UTC time to
+arrive at local time for the time zone (ie: negative numbers for time
+zones west of GMT, positive numbers for east).
 
-Since: 2.16
+If @datetime represents UTC time, then the offset is always zero.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="checksum_type">
-<parameter_description> the desired type of checksum
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GChecksum, or %NULL. 
-Use g_checksum_free() to free the memory allocated by it.
+<return> the number of microseconds that should be added to UTC to
+get the local time
 
 </return>
 </function>
 
-<function name="g_variant_new_array">
+<function name="g_date_time_get_week_numbering_year">
 <description>
-Creates a new #GVariant array from @children.
+Returns the ISO 8601 week-numbering year in which the week containing
+ datetime falls.
 
- child_type must be non-%NULL if @n_children is zero.  Otherwise, the
-child type is determined by inspecting the first element of the
- children array.  If @child_type is non-%NULL then it must be a
-definite type.
+This function, taken together with g_date_time_get_week_of_year() and
+g_date_time_get_day_of_week() can be used to determine the full ISO
+week date on which @datetime falls.
 
-The items of the array are taken from the @children array.  No entry
-in the @children array may be %NULL.
+This is usually equal to the normal Gregorian year (as returned by
+g_date_time_get_year()), except as detailed below:
 
-All items in the array must have the same type, which must be the
-same as @child_type, if given.
+For Thursday, the week-numbering year is always equal to the usual
+calendar year.  For other days, the number is such that every day
+within a complete week (Monday to Sunday) is contained within the
+same week-numbering year.
 
-Since: 2.24
+For Monday, Tuesday and Wednesday occuring near the end of the year,
+this may mean that the week-numbering year is one greater than the
+calendar year (so that these days have the same week-numbering year
+as the Thursday occuring early in the next year).
+
+For Friday, Saturaday and Sunday occuring near the start of the year,
+this may mean that the week-numbering year is one less than the
+calendar year (so that these days have the same week-numbering year
+as the Thursday occuring late in the previous year).
+
+An equivalent description is that the week-numbering year is equal to
+the calendar year containing the majority of the days in the current
+week (Monday to Sunday).
+
+Note that January 1 0001 in the proleptic Gregorian calendar is a
+Monday, so this function never returns 0.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="child_type">
-<parameter_description> the element type of the new array
-</parameter_description>
-</parameter>
-<parameter name="children">
-<parameter_description> an array of
-#GVariant pointers, the children
-</parameter_description>
-</parameter>
-<parameter name="n_children">
-<parameter_description> the length of @children
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GVariant array
+<return> the ISO 8601 week-numbering year for @datetime
+
 </return>
 </function>
 
-<function name="g_object_run_dispose">
+<function name="g_date_time_get_week_of_year">
 <description>
-Releases all references to other objects. This can be used to break
-reference cycles.
+Returns the ISO 8601 week number for the week containing @datetime.
+The ISO 8601 week number is the same for every day of the week (from
+Moday through Sunday).  That can produce some unusual results
+(described below).
+
+The first week of the year is week 1.  This is the week that contains
+the first Thursday of the year.  Equivalently, this is the first week
+that has more than 4 of its days falling within the calendar year.
 
-This functions should only be called from object system implementations.
+The value 0 is never returned by this function.  Days contained
+within a year but occuring before the first ISO 8601 week of that
+year are considered as being contained in the last week of the
+previous year.  Similarly, the final days of a calendar year may be
+considered as being part of the first ISO 8601 week of the next year
+if 4 or more days of that week are contained within the new year.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the ISO 8601 week number for @datetime.
+
+</return>
 </function>
 
-<function name="g_ascii_xdigit_value">
+<function name="g_date_time_get_year">
 <description>
-Determines the numeric value of a character as a hexidecimal
-digit. Differs from g_unichar_xdigit_value() because it takes
-a char, so there's no worry about sign extension if characters
-are signed.
+Retrieves the year represented by @datetime in the Gregorian calendar.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> an ASCII character.
+<parameter name="datetime">
+<parameter_description> A #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> If @c is a hex digit (according to
-g_ascii_isxdigit()), its numeric value. Otherwise, -1.
+<return> the year represented by @datetime
+
 </return>
 </function>
 
-<function name="g_dataset_id_set_data_full">
+<function name="g_date_time_get_ymd">
 <description>
-Sets the data element associated with the given #GQuark id, and also
-the function to call when the data element is destroyed. Any
-previous data with the same key is removed, and its destroy function
-is called.
+Retrieves the Gregorian day, month, and year of a given #GDateTime.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="dataset_location">
-<parameter_description> the location identifying the dataset.
+<parameter name="datetime">
+<parameter_description> a #GDateTime.
 </parameter_description>
 </parameter>
-<parameter name="key_id">
-<parameter_description> the #GQuark id to identify the data element.
+<parameter name="year">
+<parameter_description> the return location for the gregorian year, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data element.
+<parameter name="month">
+<parameter_description> the return location for the month of the year, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="destroy_func">
-<parameter_description> the function to call when the data element is
-removed. This function will be called with the data
-element and can be used to free any memory allocated
-for it.
+<parameter name="day">
+<parameter_description> the return location for the day of the month, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_strconcat">
+<function name="g_date_time_hash">
 <description>
-Concatenates all of the given strings into one long string.
-The returned string should be freed with g_free() when no longer needed.
-
-Note that this function is usually not the right function to use to
-assemble a translated message from pieces, since proper translation
-often requires the pieces to be reordered.
-
-&lt;warning&gt;&lt;para&gt;The variable argument list &lt;emphasis&gt;must&lt;/emphasis&gt; end
-with %NULL. If you forget the %NULL, g_strconcat() will start appending
-random memory junk to your string.&lt;/para&gt;&lt;/warning&gt;
+Hashes @datetime into a #guint, suitable for use within #GHashTable.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="string1">
-<parameter_description> the first string to add, which must not be %NULL
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a %NULL-terminated list of strings to append to the string
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string containing all the string arguments
+<return> a #guint containing the hash
+
 </return>
 </function>
 
-<function name="g_main_context_release">
+<function name="g_date_time_is_daylight_savings">
 <description>
-Releases ownership of a context previously acquired by this thread
-with g_main_context_acquire(). If the context was acquired multiple
-times, the ownership will be released only when g_main_context_release()
-is called as many times as it was acquired.
+Determines if daylight savings time is in effect at the time and in
+the time zone of @datetime.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if daylight savings time is in effect
+
+</return>
 </function>
 
-<function name="g_dngettext">
+<function name="g_date_time_new">
 <description>
-This function is a wrapper of dngettext() which does not translate
-the message if the default domain as set with textdomain() has no
-translations for the current locale.
+Creates a new #GDateTime corresponding to the given date and time in
+the time zone @tz.
 
-See g_dgettext() for details of how this differs from dngettext()
-proper.
+The @year must be between 1 and 9999, @month between 1 and 12 and @day
+between 1 and 28, 29, 30 or 31 depending on the month and the year.
 
-Since: 2.18
+ hour must be between 0 and 23 and @minute must be between 0 and 59.
+
+ seconds must be at least 0.0 and must be strictly less than 60.0.
+It will be rounded down to the nearest microsecond.
+
+If the given time is not representable in the given time zone (for
+example, 02:30 on March 14th 2010 in Toronto, due to daylight savings
+time) then the time will be rounded up to the nearest existing time
+(in this case, 03:00).  If this matters to you then you should verify
+the return value for containing the same as the numbers you gave.
+
+In the case that the given time is ambiguous in the given time zone
+(for example, 01:30 on November 7th 2010 in Toronto, due to daylight
+savings time) then the time falling within standard (ie:
+non-daylight) time is taken.
+
+It not considered a programmer error for the values to this function
+to be out of range, but in the case that they are, the function will
+return %NULL.
+
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="domain">
-<parameter_description> the translation domain to use, or %NULL to use
-the domain set with textdomain()
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
-<parameter name="msgid">
-<parameter_description> message to translate
+<parameter name="year">
+<parameter_description> the year component of the date
 </parameter_description>
 </parameter>
-<parameter name="msgid_plural">
-<parameter_description> plural form of the message
+<parameter name="month">
+<parameter_description> the month component of the date
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the quantity for which translation is needed
+<parameter name="day">
+<parameter_description> the day component of the date
 </parameter_description>
 </parameter>
-</parameters>
-<return> The translated string
-
-</return>
-</function>
-
-<function name="g_strsignal">
-<description>
-Returns a string describing the given signal, e.g. &quot;Segmentation fault&quot;.
-You should use this function in preference to strsignal(), because it 
-returns a string in UTF-8 encoding, and since not all platforms support
-the strsignal() function.
-
-
-</description>
-<parameters>
-<parameter name="signum">
-<parameter_description> the signal number. See the &lt;literal&gt;signal&lt;/literal&gt;
-documentation
+<parameter name="hour">
+<parameter_description> the hour component of the date
 </parameter_description>
 </parameter>
-</parameters>
-<return> a UTF-8 string describing the signal. If the signal is unknown,
-it returns &quot;unknown signal (&lt;signum&gt;)&quot;. The string can only be 
-used until the next call to g_strsignal()
-</return>
-</function>
-
-<function name="g_list_sort">
-<description>
-Sorts a #GList using the given comparison function.
-
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="minute">
+<parameter_description> the minute component of the date
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> the comparison function used to sort the #GList.
-This function is passed the data from 2 elements of the #GList 
-and should return 0 if they are equal, a negative value if the 
-first element comes before the second, or a positive value if 
-the first element comes after the second.
+<parameter name="seconds">
+<parameter_description> the number of seconds past the minute
 </parameter_description>
 </parameter>
 </parameters>
-<return> the start of the sorted #GList
+<return> a new #GDateTime, or %NULL
+
 </return>
 </function>
 
-<function name="g_list_insert_sorted">
+<function name="g_date_time_new_from_timeval_local">
 <description>
-Inserts a new element into the list, using the given comparison 
-function to determine its position.
+Creates a #GDateTime corresponding to the given #GTimeVal @tv in the
+local time zone.
+
+The time contained in a #GTimeVal is always stored in the form of
+seconds elapsed since 1970-01-01 00:00:00 UTC, regardless of the
+local time offset.
+
+This call can fail (returning %NULL) if @tv represents a time outside
+of the supported range of #GDateTime.
 
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a pointer to a #GList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to compare elements in the list. It should 
-return a number &gt; 0 if the first parameter comes after the 
-second parameter in the sort order.
+<parameter name="tv">
+<parameter_description> a #GTimeVal
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
+<return> a new #GDateTime, or %NULL
+
 </return>
 </function>
 
-<function name="g_param_spec_unichar">
+<function name="g_date_time_new_from_timeval_utc">
 <description>
-Creates a new #GParamSpecUnichar instance specifying a %G_TYPE_UINT
-property. #GValue structures for this property can be accessed with
-g_value_set_uint() and g_value_get_uint().
+Creates a #GDateTime corresponding to the given #GTimeVal @tv in UTC.
+
+The time contained in a #GTimeVal is always stored in the form of
+seconds elapsed since 1970-01-01 00:00:00 UTC.
 
-See g_param_spec_internal() for details on property names.
+This call can fail (returning %NULL) if @tv represents a time outside
+of the supported range of #GDateTime.
 
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="tv">
+<parameter_description> a #GTimeVal
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> a new #GDateTime, or %NULL
+
 </return>
 </function>
 
-<function name="g_bookmark_file_set_mime_type">
+<function name="g_date_time_new_from_unix_local">
 <description>
-Sets @mime_type as the MIME type of the bookmark for @uri.
+Creates a #GDateTime corresponding to the given Unix time @t in the
+local time zone.
 
-If a bookmark for @uri cannot be found then it is created.
+Unix time is the number of seconds that have elapsed since 1970-01-01
+00:00:00 UTC, regardless of the local time offset.
 
-Since: 2.12
+This call can fail (returning %NULL) if @t represents a time outside
+of the supported range of #GDateTime.
+
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="mime_type">
-<parameter_description> a MIME type
+<parameter name="t">
+<parameter_description> the Unix time
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GDateTime, or %NULL
+
+</return>
 </function>
 
-<function name="g_regex_match">
+<function name="g_date_time_new_from_unix_utc">
 <description>
-Scans for a match in string for the pattern in @regex.
-The @match_options are combined with the match options specified
-when the @regex structure was created, letting you have more
-flexibility in reusing #GRegex structures.
-
-A #GMatchInfo structure, used to get information on the match,
-is stored in @match_info if not %NULL. Note that if @match_info
-is not %NULL then it is created even if the function returns %FALSE,
-i.e. you must free it regardless if regular expression actually matched.
+Creates a #GDateTime corresponding to the given Unix time @t in UTC.
 
-To retrieve all the non-overlapping matches of the pattern in
-string you can use g_match_info_next().
+Unix time is the number of seconds that have elapsed since 1970-01-01
+00:00:00 UTC.
 
-|[
-static void
-print_uppercase_words (const gchar *string)
-{
-/ * Print all uppercase-only words. * /
-GRegex *regex;
-GMatchInfo *match_info;
-&#160;
-regex = g_regex_new (&quot;[A-Z]+&quot;, 0, 0, NULL);
-g_regex_match (regex, string, 0, &amp;match_info);
-while (g_match_info_matches (match_info))
-{
-gchar *word = g_match_info_fetch (match_info, 0);
-g_print (&quot;Found: %s\n&quot;, word);
-g_free (word);
-g_match_info_next (match_info, NULL);
-}
-g_match_info_free (match_info);
-g_regex_unref (regex);
-}
-]|
+This call can fail (returning %NULL) if @t represents a time outside
+of the supported range of #GDateTime.
 
- string is not copied and is used in #GMatchInfo internally. If
-you use any #GMatchInfo method (except g_match_info_free()) after
-freeing or modifying @string then the behaviour is undefined.
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
 
-Since: 2.14
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure from g_regex_new()
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to scan for matches
-</parameter_description>
-</parameter>
-<parameter name="match_options">
-<parameter_description> match options
-</parameter_description>
-</parameter>
-<parameter name="match_info">
-<parameter_description> pointer to location where to store
-the #GMatchInfo, or %NULL if you do not need it
+<parameter name="t">
+<parameter_description> the Unix time
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the string matched, %FALSE otherwise
+<return> a new #GDateTime, or %NULL
 
 </return>
 </function>
 
-<function name="g_key_file_remove_comment">
+<function name="g_date_time_new_local">
 <description>
-Removes a comment above @key from @group_name.
-If @key is %NULL then @comment will be removed above @group_name. 
-If both @key and @group_name are %NULL, then @comment will
-be removed above the first group in the file.
+Creates a new #GDateTime corresponding to the given date and time in
+the local time zone.
 
-Since: 2.6
+This call is equivalent to calling g_date_time_new() with the time
+zone returned by g_time_zone_new_local().
+
+Since: 2.26.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="year">
+<parameter_description> the year component of the date
 </parameter_description>
 </parameter>
-<parameter name="group_name">
-<parameter_description> a group name, or %NULL
+<parameter name="month">
+<parameter_description> the month component of the date
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="day">
+<parameter_description> the day component of the date
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="hour">
+<parameter_description> the hour component of the date
+</parameter_description>
+</parameter>
+<parameter name="minute">
+<parameter_description> the minute component of the date
+</parameter_description>
+</parameter>
+<parameter name="seconds">
+<parameter_description> the number of seconds past the minute
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the comment was removed, %FALSE otherwise
+<return> a #GDateTime, or %NULL
 
 </return>
 </function>
 
-<function name="g_unichar_isgraph">
+<function name="g_date_time_new_now">
 <description>
-Determines whether a character is printable and not a space
-(returns %FALSE for control characters, format characters, and
-spaces). g_unichar_isprint() is similar, but returns %TRUE for
-spaces. Given some UTF-8 text, obtain a character value with
-g_utf8_get_char().
+Creates a #GDateTime corresponding to this exact instant in the given
+time zone @tz.  The time is as accurate as the system allows, to a
+maximum accuracy of 1 microsecond.
 
+This function will always succeed unless the system clock is set to
+truly insane values (or unless GLib is still being used after the
+year 9999).
 
-</description>
-<parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if @c is printable unless it's a space
-</return>
-</function>
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
 
-<function name="g_node_unlink">
-<description>
-Unlinks a #GNode from a tree, resulting in two separate trees.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> the #GNode to unlink, which becomes the root of a new tree
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GDateTime, or %NULL
+
+</return>
 </function>
 
-<function name="g_unichar_ismark">
+<function name="g_date_time_new_now_local">
 <description>
-Determines whether a character is a mark (non-spacing mark,
-combining mark, or enclosing mark in Unicode speak).
-Given some UTF-8 text, obtain a character value
-with g_utf8_get_char().
+Creates a #GDateTime corresponding to this exact instant in the local
+time zone.
 
-Note: in most cases where isalpha characters are allowed,
-ismark characters should be allowed to as they are essential
-for writing most European languages as well as many non-Latin
-scripts.
+This is equivalent to calling g_date_time_new_now() with the time
+zone returned by g_time_zone_new_local().
 
-Since: 2.14
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if @c is a mark character
+<return> a new #GDateTime, or %NULL
 
 </return>
 </function>
 
-<function name="g_node_last_child">
+<function name="g_date_time_new_now_utc">
 <description>
-Gets the last child of a #GNode.
+Creates a #GDateTime corresponding to this exact instant in UTC.
 
+This is equivalent to calling g_date_time_new_now() with the time
+zone returned by g_time_zone_new_utc().
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode (must not be %NULL)
-</parameter_description>
-</parameter>
 </parameters>
-<return> the last child of @node, or %NULL if @node has no children
+<return> a new #GDateTime, or %NULL
+
 </return>
 </function>
 
-<function name="g_bookmark_file_get_app_info">
+<function name="g_date_time_new_utc">
 <description>
-Gets the registration informations of @app_name for the bookmark for
- uri   See g_bookmark_file_set_app_info() for more informations about
-the returned data.
-
-The string returned in @app_exec must be freed.
+Creates a new #GDateTime corresponding to the given date and time in
+UTC.
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.  In the
-event that no application with name @app_name has registered a bookmark
-for @uri,  %FALSE is returned and error is set to
-#G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. In the event that unquoting
-the command line fails, an error of the #G_SHELL_ERROR domain is
-set and %FALSE is returned.
+This call is equivalent to calling g_date_time_new() with the time
+zone returned by g_time_zone_new_utc().
 
-Since: 2.12
+Since: 2.26.
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="year">
+<parameter_description> the year component of the date
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="month">
+<parameter_description> the month component of the date
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> an application's name
-</parameter_description>
-</parameter>
-<parameter name="exec">
-<parameter_description> location for the command line of the application, or %NULL
+<parameter name="day">
+<parameter_description> the day component of the date
 </parameter_description>
 </parameter>
-<parameter name="count">
-<parameter_description> return location for the registration count, or %NULL
+<parameter name="hour">
+<parameter_description> the hour component of the date
 </parameter_description>
 </parameter>
-<parameter name="stamp">
-<parameter_description> return location for the last registration time, or %NULL
+<parameter name="minute">
+<parameter_description> the minute component of the date
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="seconds">
+<parameter_description> the number of seconds past the minute
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success.
+<return> a #GDateTime, or %NULL
 
 </return>
 </function>
 
-<function name="g_unichar_ispunct">
+<function name="g_date_time_ref">
 <description>
-Determines whether a character is punctuation or a symbol.
-Given some UTF-8 text, obtain a character value with
-g_utf8_get_char().
+Atomically increments the reference count of @datetime by one.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is a punctuation or symbol character
+<return> the #GDateTime with the reference count increased
+
 </return>
 </function>
 
-<function name="g_object_bind_property_with_closures">
+<function name="g_date_time_to_local">
 <description>
-Creates a binding between @source_property on @source and @target_property
-on @target, allowing you to set the transformation functions to be used by
-the binding.
+Creates a new #GDateTime corresponding to the same instant in time as
+ datetime, but in the local time zone.
 
-This function is the language bindings friendly version of
-g_object_bind_property_full(), using #GClosure&lt;!-- --&gt;s instead of
-function pointers.
+This call is equivalent to calling g_date_time_to_timezone() with the
+time zone returned by g_time_zone_new_local().
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> the source #GObject
-</parameter_description>
-</parameter>
-<parameter name="source_property">
-<parameter_description> the property on @source to bind
-</parameter_description>
-</parameter>
-<parameter name="target">
-<parameter_description> the target #GObject
-</parameter_description>
-</parameter>
-<parameter name="target_property">
-<parameter_description> the property on @target to bind
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags to pass to #GBinding
-</parameter_description>
-</parameter>
-<parameter name="transform_to">
-<parameter_description> a #GClosure wrapping the transformation function
-from the @source to the @target, or %NULL to use the default
-</parameter_description>
-</parameter>
-<parameter name="transform_from">
-<parameter_description> a #GClosure wrapping the transformation function
-from the @target to the @source, or %NULL to use the default
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GBinding instance representing the
-binding between the two #GObject instances. The binding is released
-whenever the #GBinding reference count reaches zero.
+<return> the newly created #GDateTime
 
 </return>
 </function>
 
-<function name="g_completion_add_items">
+<function name="g_date_time_to_timeval">
 <description>
-Adds items to the #GCompletion.
+Stores the instant in time that @datetime represents into @tv.
 
-Deprecated: 2.26: Rarely used API
+The time contained in a #GTimeVal is always stored in the form of
+seconds elapsed since 1970-01-01 00:00:00 UTC, regardless of the time
+zone associated with @datetime.
+
+On systems where 'long' is 32bit (ie: all 32bit systems and all
+Windows systems), a #GTimeVal is incapable of storing the entire
+range of values that #GDateTime is capable of expressing.  On those
+systems, this function returns %FALSE to indicate that the time is
+out of range.
+
+On systems where 'long' is 64bit, this function never fails.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="cmp">
-<parameter_description> the #GCompletion.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="items">
-<parameter_description> the list of items to add.
+<parameter name="tv">
+<parameter_description> a #GTimeVal to modify
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if successful, else %FALSE
+
+</return>
 </function>
 
-<function name="g_vprintf">
+<function name="g_date_time_to_timezone">
 <description>
-An implementation of the standard vprintf() function which supports 
-positional parameters, as specified in the Single Unix Specification.
+Create a new #GDateTime corresponding to the same instant in time as
+ datetime, but in the time zone @tz.
 
-Since: 2.2
+This call can fail in the case that the time goes out of bounds.  For
+example, converting 0001-01-01 00:00:00 UTC to a time zone west of
+Greenwich will fail (due to the year 0 being out of range).
+
+You should release the return value by calling g_date_time_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice 
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of arguments to insert in the output.
+<parameter name="tz">
+<parameter_description> the new #GTimeZone
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
+<return> a new #GDateTime, or %NULL
 
 </return>
 </function>
 
-<function name="g_bookmark_file_has_group">
+<function name="g_date_time_to_unix">
 <description>
-Checks whether @group appears in the list of groups to which
-the bookmark for @uri belongs to.
+Gives the Unix time corresponding to @datetime, rounding down to the
+nearest second.
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+Unix time is the number of seconds that have elapsed since 1970-01-01
+00:00:00 UTC, regardless of the time zone associated with @datetime.
 
-Since: 2.12
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="group">
-<parameter_description> the group name to be searched
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @group was found.
+<return> the Unix time corresponding to @datetime
 
 </return>
 </function>
 
-<function name="g_dataset_get_data">
+<function name="g_date_time_to_utc">
 <description>
-Gets the data element corresponding to a string.
+Creates a new #GDateTime corresponding to the same instant in time as
+ datetime, but in UTC.
+
+This call is equivalent to calling g_date_time_to_timezone() with the
+time zone returned by g_time_zone_new_utc().
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string identifying the data element.
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data element corresponding to the string, or %NULL if
-it is not found.
+<return> the newly created #GDateTime
+
 </return>
 </function>
 
-<function name="g_cclosure_marshal_STRING__OBJECT_POINTER">
+<function name="g_date_time_unref">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;gchar* (*callback) (gpointer instance, GObject *arg1, gpointer arg2, gpointer user_data)&lt;/literal&gt;.
+Atomically decrements the reference count of @datetime by one.
+
+When the reference count reaches zero, the resources allocated by
+ datetime are freed
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> a #GValue, which can store the returned string
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 3
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding instance, arg1 and arg2
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="datetime">
+<parameter_description> a #GDateTime
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_param_take_ownership">
+<function name="g_dcgettext">
 <description>
-This is an internal function introduced mainly for C marshallers.
+This is a variant of g_dgettext() that allows specifying a locale
+category instead of always using %LC_MESSAGES. See g_dgettext() for
+more information about how this functions differs from calling
+dcgettext() directly.
 
-Deprecated: 2.4: Use g_value_take_param() instead.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_PARAM
+<parameter name="domain">
+<parameter_description> the translation domain to use, or %NULL to use
+the domain set with textdomain()
+</parameter_description>
+</parameter>
+<parameter name="msgid">
+<parameter_description> message to translate
 </parameter_description>
 </parameter>
-<parameter name="param">
-<parameter_description> the #GParamSpec to be set
+<parameter name="category">
+<parameter_description> a locale category
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the translated string for the given locale category
+
+</return>
 </function>
 
-<function name="g_rand_new">
+<function name="g_dgettext">
 <description>
-Creates a new random number generator initialized with a seed taken
-either from &lt;filename&gt;/dev/urandom&lt;/filename&gt; (if existing) or from 
-the current time (as a fallback).
+This function is a wrapper of dgettext() which does not translate
+the message if the default domain as set with textdomain() has no
+translations for the current locale.
+
+The advantage of using this function over dgettext() proper is that
+libraries using this function (like GTK+) will not use translations
+if the application using the library does not have translations for
+the current locale.  This results in a consistent English-only
+interface instead of one having partial translations.  For this
+feature to work, the call to textdomain() and setlocale() should
+precede any g_dgettext() invocations.  For GTK+, it means calling
+textdomain() before gtk_init or its variants.
+
+This function disables translations if and only if upon its first
+call all the following conditions hold:
+&lt;itemizedlist&gt;
+&lt;listitem&gt;@domain is not %NULL&lt;/listitem&gt;
+&lt;listitem&gt;textdomain() has been called to set a default text domain&lt;/listitem&gt;
+&lt;listitem&gt;there is no translations available for the default text domain
+and the current locale&lt;/listitem&gt;
+&lt;listitem&gt;current locale is not &quot;C&quot; or any English locales (those
+starting with &quot;en_&quot;)&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
+
+Note that this behavior may not be desired for example if an application
+has its untranslated messages in a language other than English.  In those
+cases the application should call textdomain() after initializing GTK+.
 
+Applications should normally not use this function directly,
+but use the _() macro for translations.
+
+Since: 2.18
 
 </description>
 <parameters>
+<parameter name="domain">
+<parameter_description> the translation domain to use, or %NULL to use
+the domain set with textdomain()
+</parameter_description>
+</parameter>
+<parameter name="msgid">
+<parameter_description> message to translate
+</parameter_description>
+</parameter>
 </parameters>
-<return> the new #GRand.
+<return> The translated string
+
 </return>
 </function>
 
-<function name="g_static_rw_lock_free">
+<function name="g_dir_close">
 <description>
-Releases all resources allocated to @lock.
-
-You don't have to call this functions for a #GStaticRWLock with an
-unbounded lifetime, i.e. objects declared 'static', but if you have
-a #GStaticRWLock as a member of a structure, and the structure is
-freed, you should also free the #GStaticRWLock.
+Closes the directory and deallocates all related resources.
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to be freed.
+<parameter name="dir">
+<parameter_description> a #GDir* created by g_dir_open()
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_hash_table_find">
+<function name="g_dir_open">
 <description>
-Calls the given function for key/value pairs in the #GHashTable until
- predicate returns %TRUE.  The function is passed the key and value of
-each pair, and the given @user_data parameter. The hash table may not
-be modified while iterating over it (you can't add/remove items).
-
-Note, that hash tables are really only optimized for forward lookups,
-i.e. g_hash_table_lookup().
-So code that frequently issues g_hash_table_find() or
-g_hash_table_foreach() (e.g. in the order of once per every entry in a
-hash table) should probably be reworked to use additional or different
-data structures for reverse lookups (keep in mind that an O(n) find/foreach
-operation issued for all n values in a hash table ends up needing O(n*n)
-operations).
+Opens a directory for reading. The names of the files in the
+directory can then be retrieved using g_dir_read_name().  Note
+that the ordering is not defined.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+<parameter name="path">
+<parameter_description> the path to the directory you are interested in. On Unix
+in the on-disk encoding. On Windows in UTF-8
 </parameter_description>
 </parameter>
-<parameter name="predicate">
-<parameter_description>  function to test the key/value pairs for a certain property.
+<parameter name="flags">
+<parameter_description> Currently must be set to 0. Reserved for future use.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description>  user data to pass to the function.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL.
+If non-%NULL, an error will be set if and only if
+g_dir_open() fails.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The value of the first key/value pair is returned, for which
-func evaluates to %TRUE. If no pair with the requested property is found,
-%NULL is returned.
-
+<return> a newly allocated #GDir on success, %NULL on failure.
+If non-%NULL, you must free the result with g_dir_close()
+when you are finished with it.
 </return>
 </function>
 
-<function name="g_object_new">
+<function name="g_dir_read_name">
 <description>
-Creates a new instance of a #GObject subtype and sets its properties.
+Retrieves the name of another entry in the directory, or %NULL.
+The order of entries returned from this function is not defined,
+and may vary by file system or other operating-system dependent
+factors. 
+
+On Unix, the '.' and '..' entries are omitted, and the returned
+name is in the on-disk encoding.
 
-Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY)
-which are not explicitly specified are set to their default values.
+On Windows, as is true of all GLib functions which operate on
+filenames, the returned name is in UTF-8.
 
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> the type id of the #GObject subtype to instantiate
-</parameter_description>
-</parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of the first property
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> the value of the first property, followed optionally by more
-name/value pairs, followed by %NULL
+<parameter name="dir">
+<parameter_description> a #GDir* created by g_dir_open()
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new instance of @object_type
+<return> The entry's name or %NULL if there are no 
+more entries. The return value is owned by GLib and
+must not be modified or freed.
 </return>
 </function>
 
-<function name="g_flags_get_value_by_name">
+<function name="g_dir_rewind">
 <description>
-Looks up a #GFlagsValue by name.
-
+Resets the given directory. The next call to g_dir_read_name()
+will return the first entry again.
 
 </description>
 <parameters>
-<parameter name="flags_class">
-<parameter_description> a #GFlagsClass
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name to look up
+<parameter name="dir">
+<parameter_description> a #GDir* created by g_dir_open()
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GFlagsValue with name @name, or %NULL if there is no
-flag with that name
-</return>
+<return></return>
 </function>
 
-<function name="g_cclosure_new_object">
+<function name="g_direct_equal">
 <description>
-A variant of g_cclosure_new() which uses @object as @user_data and
-calls g_object_watch_closure() on @object and the created
-closure. This function is useful when you have a callback closely
-associated with a #GObject, and want the callback to no longer run
-after the object is is freed.
+Compares two #gpointer arguments and returns %TRUE if they are equal.
+It can be passed to g_hash_table_new() as the @key_equal_func
+parameter, when using pointers as keys in a #GHashTable.
 
 
 </description>
 <parameters>
-<parameter name="callback_func">
-<parameter_description> the function to invoke
+<parameter name="v1">
+<parameter_description> a key.
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GObject pointer to pass to @callback_func
+<parameter name="v2">
+<parameter_description> a key to compare with @v1.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GCClosure
+<return> %TRUE if the two keys match.
 </return>
 </function>
 
-<function name="g_static_mutex_free">
+<function name="g_direct_hash">
 <description>
-Releases all resources allocated to @mutex.
-
-You don't have to call this functions for a #GStaticMutex with an
-unbounded lifetime, i.e. objects declared 'static', but if you have
-a #GStaticMutex as a member of a structure and the structure is
-freed, you should also free the #GStaticMutex.
+Converts a gpointer to a hash value.
+It can be passed to g_hash_table_new() as the @hash_func parameter, 
+when using pointers as keys in a #GHashTable.
 
-&lt;note&gt;&lt;para&gt;Calling g_static_mutex_free() on a locked mutex may
-result in undefined behaviour.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticMutex to be freed.
+<parameter name="v">
+<parameter_description> a #gpointer key
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a hash value corresponding to the key.
+</return>
 </function>
 
-<function name="g_io_channel_win32_new_fd">
+<function name="g_dngettext">
 <description>
-Creates a new #GIOChannel given a file descriptor on Windows. This
-works for file descriptors from the C runtime.
-
-This function works for file descriptors as returned by the open(),
-creat(), pipe() and fileno() calls in the Microsoft C runtime. In
-order to meaningfully use this function your code should use the
-same C runtime as GLib uses, which is msvcrt.dll. Note that in
-current Microsoft compilers it is near impossible to convince it to
-build code that would use msvcrt.dll. The last Microsoft compiler
-version that supported using msvcrt.dll as the C runtime was version
-6. The GNU compiler and toolchain for Windows, also known as Mingw,
-fully supports msvcrt.dll.
+This function is a wrapper of dngettext() which does not translate
+the message if the default domain as set with textdomain() has no
+translations for the current locale.
 
-If you have created a #GIOChannel for a file descriptor and started
-watching (polling) it, you shouldn't call read() on the file
-descriptor. This is because adding polling for a file descriptor is
-implemented in GLib on Windows by starting a thread that sits
-blocked in a read() from the file descriptor most of the time. All
-reads from the file descriptor should be done by this internal GLib
-thread. Your code should call only g_io_channel_read().
+See g_dgettext() for details of how this differs from dngettext()
+proper.
 
-This function is available only in GLib on Windows.
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="fd">
-<parameter_description> a C library file descriptor.
+<parameter name="domain">
+<parameter_description> the translation domain to use, or %NULL to use
+the domain set with textdomain()
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new #GIOChannel.
-</return>
-</function>
-
-<function name="g_utf8_strchr">
-<description>
-Finds the leftmost occurrence of the given Unicode character
-in a UTF-8 encoded string, while limiting the search to @len bytes.
-If @len is -1, allow unbounded search.
-
-
-</description>
-<parameters>
-<parameter name="p">
-<parameter_description> a nul-terminated UTF-8 encoded string
+<parameter name="msgid">
+<parameter_description> message to translate
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the maximum length of @p
+<parameter name="msgid_plural">
+<parameter_description> plural form of the message
 </parameter_description>
 </parameter>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="n">
+<parameter_description> the quantity for which translation is needed
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if the string does not contain the character, 
-otherwise, a pointer to the start of the leftmost occurrence of 
-the character in the string.
+<return> The translated string
+
 </return>
 </function>
 
-<function name="g_key_file_get_string_list">
+<function name="g_double_equal">
 <description>
-Returns the values associated with @key under @group_name.
-
-In the event the key cannot be found, %NULL is returned and
- error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND.  In the
-event that the @group_name cannot be found, %NULL is returned
-and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+Compares the two #gdouble values being pointed to and returns 
+%TRUE if they are equal.
+It can be passed to g_hash_table_new() as the @key_equal_func
+parameter, when using pointers to doubles as keys in a #GHashTable.
 
-Since: 2.6
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location for the number of returned strings, or %NULL
+<parameter name="v1">
+<parameter_description> a pointer to a #gdouble key.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="v2">
+<parameter_description> a pointer to a #gdouble key to compare with @v1.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated string array or %NULL if the specified 
-key cannot be found. The array should be freed with g_strfreev().
+<return> %TRUE if the two keys match.
 
 </return>
 </function>
 
-<function name="g_regex_unref">
+<function name="g_double_hash">
 <description>
-Decreases reference count of @regex by 1. When reference count drops
-to zero, it frees all the memory associated with the regex structure.
+Converts a pointer to a #gdouble to a hash value.
+It can be passed to g_hash_table_new() as the @hash_func parameter, 
+when using pointers to doubles as keys in a #GHashTable.
 
-Since: 2.14
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex
+<parameter name="v">
+<parameter_description> a pointer to a #gdouble key
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a hash value corresponding to the key.
+
+</return>
 </function>
 
-<function name="g_value_dup_string">
+<function name="g_dpgettext">
 <description>
-Get a copy the contents of a %G_TYPE_STRING #GValue.
+This function is a variant of g_dgettext() which supports
+a disambiguating message context. GNU gettext uses the
+'\004' character to separate the message context and
+message id in @msgctxtid.
+If 0 is passed as @msgidoffset, this function will fall back to
+trying to use the deprecated convention of using &quot;|&quot; as a separation
+character.
+
+This uses g_dgettext() internally.  See that functions for differences
+with dgettext() proper.
 
+Applications should normally not use this function directly,
+but use the C_() macro for translations with context.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_STRING
+<parameter name="domain">
+<parameter_description> the translation domain to use, or %NULL to use
+the domain set with textdomain()
+</parameter_description>
+</parameter>
+<parameter name="msgctxtid">
+<parameter_description> a combined message context and message id, separated
+by a \004 character
+</parameter_description>
+</parameter>
+<parameter name="msgidoffset">
+<parameter_description> the offset of the message id in @msgctxid
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated copy of the string content of @value
+<return> The translated string
+
 </return>
 </function>
 
-<function name="g_shell_parse_argv">
+<function name="g_dpgettext2">
 <description>
-Parses a command line into an argument vector, in much the same way
-the shell would, but without many of the expansions the shell would
-perform (variable expansion, globs, operators, filename expansion,
-etc. are not supported). The results are defined to be the same as
-those you would get from a UNIX98 /bin/sh, as long as the input
-contains none of the unsupported shell expansions. If the input
-does contain such expansions, they are passed through
-literally. Possible errors are those from the #G_SHELL_ERROR
-domain. Free the returned vector with g_strfreev().
+This function is a variant of g_dgettext() which supports
+a disambiguating message context. GNU gettext uses the
+'\004' character to separate the message context and
+message id in @msgctxtid.
 
+This uses g_dgettext() internally.  See that functions for differences
+with dgettext() proper.
+
+This function differs from C_() in that it is not a macro and
+thus you may use non-string-literals as context and msgid arguments.
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="command_line">
-<parameter_description> command line to parse
-</parameter_description>
-</parameter>
-<parameter name="argcp">
-<parameter_description> return location for number of args
+<parameter name="domain">
+<parameter_description> the translation domain to use, or %NULL to use
+the domain set with textdomain()
 </parameter_description>
 </parameter>
-<parameter name="argvp">
-<parameter_description> return location for array of args
+<parameter name="context">
+<parameter_description> the message context
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error
+<parameter name="msgid">
+<parameter_description> the message
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if error set
+<return> The translated string
+
 </return>
 </function>
 
-<function name="g_value_set_boxed">
+<function name="g_error_copy">
 <description>
-Set the contents of a %G_TYPE_BOXED derived #GValue to @v_boxed.
+Makes a copy of @error.
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_BOXED derived type
-</parameter_description>
-</parameter>
-<parameter name="v_boxed">
-<parameter_description> boxed value to be set
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GError
+</return>
 </function>
 
-<function name="g_thread_set_priority">
+<function name="g_error_free">
 <description>
-Changes the priority of @thread to @priority.
-
-&lt;note&gt;&lt;para&gt;It is not guaranteed that threads with different
-priorities really behave accordingly. On some systems (e.g. Linux)
-there are no thread priorities. On other systems (e.g. Solaris) there
-doesn't seem to be different scheduling for different priorities. All
-in all try to avoid being dependent on priorities.&lt;/para&gt;&lt;/note&gt;
+Frees a #GError and associated resources.
 
 </description>
 <parameters>
-<parameter name="thread">
-<parameter_description> a #GThread.
-</parameter_description>
-</parameter>
-<parameter name="priority">
-<parameter_description> a new priority for @thread.
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_iconv_close">
+<function name="g_error_matches">
 <description>
-Same as the standard UNIX routine iconv_close(), but
-may be implemented via libiconv on UNIX flavors that lack
-a native implementation. Should be called to clean up
-the conversion descriptor from g_iconv_open() when
-you are done converting things.
-
-GLib provides g_convert() and g_locale_to_utf8() which are likely
-more convenient than the raw iconv wrappers.
+Returns %TRUE if @error matches @domain and @code, %FALSE
+otherwise. In particular, when @error is %NULL, %FALSE will
+be returned.
 
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> a conversion descriptor from g_iconv_open()
+<parameter name="error">
+<parameter_description> a #GError or %NULL
+</parameter_description>
+</parameter>
+<parameter name="domain">
+<parameter_description> an error domain
+</parameter_description>
+</parameter>
+<parameter name="code">
+<parameter_description> an error code
 </parameter_description>
 </parameter>
 </parameters>
-<return> -1 on error, 0 on success
+<return> whether @error has @domain and @code
 </return>
 </function>
 
-<function name="g_async_queue_ref_unlocked">
+<function name="g_error_new">
 <description>
-Increases the reference count of the asynchronous @queue by 1.
+Creates a new #GError with the given @domain and @code,
+and a message formatted with @format.
 
- Deprecated: Since 2.8, reference counting is done atomically
-so g_async_queue_ref() can be used regardless of the @queue's
-lock.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="domain">
+<parameter_description> error domain
+</parameter_description>
+</parameter>
+<parameter name="code">
+<parameter_description> error code
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> printf()-style format for error message
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> parameters for message format
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GError
+</return>
 </function>
 
-<function name="g_list_sort_with_data">
+<function name="g_error_new_literal">
 <description>
-Like g_list_sort(), but the comparison function accepts 
-a user data argument.
+Creates a new #GError; unlike g_error_new(), @message is
+not a printf()-style format string. Use this function if
+ message contains text you don't have control over,
+that could include printf() escape sequences.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="domain">
+<parameter_description> error domain
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function
+<parameter name="code">
+<parameter_description> error code
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to comparison function
+<parameter name="message">
+<parameter_description> error message
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new head of @list
+<return> a new #GError
 </return>
 </function>
 
-<function name="g_object_bind_property">
+<function name="g_error_new_valist">
 <description>
-Creates a binding between @source_property on @source and @target_property
-on @target. Whenever the @source_property is changed the @target_property is
-updated using the same value. For instance:
-
-|[
-g_object_bind_property (action, &quot;active&quot;, widget, &quot;sensitive&quot;, 0);
-]|
-
-Will result in the &quot;sensitive&quot; property of the widget #GObject instance to be
-updated with the same value of the &quot;active&quot; property of the action #GObject
-instance.
-
-If @flags contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
-if @target_property on @target changes then the @source_property on @source
-will be updated as well.
-
-The binding will automatically be removed when either the @source or the
- target instances are finalized. To remove the binding without affecting the
- source and the @target you can just call g_object_unref() on the returned
-#GBinding instance.
-
-A #GObject can have multiple bindings.
+Creates a new #GError with the given @domain and @code,
+and a message formatted with @format.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> the source #GObject
-</parameter_description>
-</parameter>
-<parameter name="source_property">
-<parameter_description> the property on @source to bind
+<parameter name="domain">
+<parameter_description> error domain
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description> the target #GObject
+<parameter name="code">
+<parameter_description> error code
 </parameter_description>
 </parameter>
-<parameter name="target_property">
-<parameter_description> the property on @target to bind
+<parameter name="format">
+<parameter_description> printf()-style format for error message
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags to pass to #GBinding
+<parameter name="args">
+<parameter_description> #va_list of parameters for the message format
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GBinding instance representing the
-binding between the two #GObject instances. The binding is released
-whenever the #GBinding reference count reaches zero.
+<return> a new #GError
 
 </return>
 </function>
 
-<function name="g_binding_get_source">
+<function name="g_file_error_from_errno">
 <description>
-Retrieves the #GObject instance used as the source of the binding
+Gets a #GFileError constant based on the passed-in @errno.
+For example, if you pass in %EEXIST this function returns
+#G_FILE_ERROR_EXIST. Unlike @errno values, you can portably
+assume that all #GFileError values will exist.
+
+Normally a #GFileError value goes into a #GError returned
+from a function that manipulates files. So you would use
+g_file_error_from_errno() when constructing a #GError.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="binding">
-<parameter_description> a #GBinding
+<parameter name="err_no">
+<parameter_description> an &quot;errno&quot; value
 </parameter_description>
 </parameter>
 </parameters>
-<return> the source #GObject
-
+<return> #GFileError corresponding to the given @errno
 </return>
 </function>
 
-<function name="g_key_file_to_data">
+<function name="g_file_get_contents">
 <description>
-This function outputs @key_file as a string.  
+Reads an entire file into allocated memory, with good error
+checking.
 
-Note that this function never reports an error,
-so it is safe to pass %NULL as @error.
+If the call was successful, it returns %TRUE and sets @contents to the file
+contents and @length to the length of the file contents in bytes. The string
+stored in @contents will be nul-terminated, so for text files you can pass
+%NULL for the @length argument. If the call was not successful, it returns
+%FALSE and sets @error. The error domain is #G_FILE_ERROR. Possible error
+codes are those in the #GFileError enumeration. In the error case,
+ contents is set to %NULL and @length is set to zero.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="filename">
+<parameter_description> name of a file to read contents from, in the GLib file name encoding
+</parameter_description>
+</parameter>
+<parameter name="contents">
+<parameter_description> location to store an allocated string, use g_free() to free
+the returned string
 </parameter_description>
 </parameter>
 <parameter name="length">
-<parameter_description> return location for the length of the 
-returned string, or %NULL
+<parameter_description> location to store length in bytes of the contents, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -7555,264 +7495,380 @@ returned string, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string holding
-the contents of the #GKeyFile 
-
+<return> %TRUE on success, %FALSE if an error occurred
 </return>
 </function>
 
-<function name="g_match_info_matches">
+<function name="g_file_open_tmp">
 <description>
-Returns whether the previous match operation succeeded.
+Opens a file for writing in the preferred directory for temporary
+files (as returned by g_get_tmp_dir()). 
+
+ tmpl should be a string in the GLib file name encoding containing 
+a sequence of six 'X' characters, as the parameter to g_mkstemp().
+However, unlike these functions, the template should only be a
+basename, no directory components are allowed. If template is
+%NULL, a default template is used.
+
+Note that in contrast to g_mkstemp() (and mkstemp()) 
+ tmpl is not modified, and might thus be a read-only literal string.
+
+The actual name used is returned in @name_used if non-%NULL. This
+string should be freed with g_free() when not needed any longer.
+The returned name is in the GLib file name encoding.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo structure
+<parameter name="tmpl">
+<parameter_description> Template for file name, as in g_mkstemp(), basename only,
+or %NULL, to a default template
+</parameter_description>
+</parameter>
+<parameter name="name_used">
+<parameter_description> location to store actual name used, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the previous match operation succeeded,
-%FALSE otherwise
-
+<return> A file handle (as from open()) to 
+the file opened for reading and writing. The file is opened in binary 
+mode on platforms where there is a difference. The file handle should be
+closed with close(). In case of errors, -1 is returned 
+and @error will be set.
 </return>
 </function>
 
-<function name="g_timer_elapsed">
+<function name="g_file_read_link">
 <description>
-If @timer has been started but not stopped, obtains the time since
-the timer was started. If @timer has been stopped, obtains the
-elapsed time between the time it was started and the time it was
-stopped. The return value is the number of seconds elapsed,
-including any fractional part. The @microseconds out parameter is
-essentially useless.
+Reads the contents of the symbolic link @filename like the POSIX
+readlink() function.  The returned string is in the encoding used
+for filenames. Use g_filename_to_utf8() to convert it to UTF-8.
 
-&lt;warning&gt;&lt;para&gt;
-Calling initialization functions, in particular g_thread_init(), while a
-timer is running will cause invalid return values from this function.
-&lt;/para&gt;&lt;/warning&gt;
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="timer">
-<parameter_description> a #GTimer.
+<parameter name="filename">
+<parameter_description> the symbolic link
 </parameter_description>
 </parameter>
-<parameter name="microseconds">
-<parameter_description> return location for the fractional part of seconds
-elapsed, in microseconds (that is, the total number
-of microseconds elapsed, modulo 1000000), or %NULL
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> seconds elapsed as a floating point value, including any
-fractional part.
+<return> A newly-allocated string with the contents of the symbolic link, 
+or %NULL if an error occurred.
+
 </return>
 </function>
 
-<function name="g_option_group_set_translate_func">
+<function name="g_file_set_contents">
 <description>
-Sets the function which is used to translate user-visible
-strings, for &lt;option&gt;--help&lt;/option&gt; output. Different
-groups can use different #GTranslateFunc&lt;!-- --&gt;s. If @func
-is %NULL, strings are not translated.
+Writes all of @contents to a file named @filename, with good error checking.
+If a file called @filename already exists it will be overwritten.
 
-If you are using gettext(), you only need to set the translation
-domain, see g_option_group_set_translation_domain().
+This write is atomic in the sense that it is first written to a temporary
+file which is then renamed to the final name. Notes:
+&lt;itemizedlist&gt;
+&lt;listitem&gt;
+On Unix, if @filename already exists hard links to @filename will break.
+Also since the file is recreated, existing permissions, access control
+lists, metadata etc. may be lost. If @filename is a symbolic link,
+the link itself will be replaced, not the linked file.
+&lt;/listitem&gt;
+&lt;listitem&gt;
+On Windows renaming a file will not remove an existing file with the
+new name, so on Windows there is a race condition between the existing
+file being removed and the temporary file being renamed.
+&lt;/listitem&gt;
+&lt;listitem&gt;
+On Windows there is no way to remove a file that is open to some
+process, or mapped into memory. Thus, this function will fail if
+ filename already exists and is open.
+&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
 
-Since: 2.6
+If the call was sucessful, it returns %TRUE. If the call was not successful,
+it returns %FALSE and sets @error. The error domain is #G_FILE_ERROR.
+Possible error codes are those in the #GFileError enumeration.
+
+Note that the name for the temporary file is constructed by appending up
+to 7 characters to @filename.
+
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> a #GOptionGroup
+<parameter name="filename">
+<parameter_description> name of a file to write @contents to, in the GLib file name
+encoding
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the #GTranslateFunc, or %NULL 
+<parameter name="contents">
+<parameter_description> string to write to the file
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> user data to pass to @func, or %NULL
+<parameter name="length">
+<parameter_description> length of @contents, or -1 if @contents is a nul-terminated string
 </parameter_description>
 </parameter>
-<parameter name="destroy_notify">
-<parameter_description> a function which gets called to free @data, or %NULL
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on success, %FALSE if an error occurred
+
+</return>
 </function>
 
-<function name="g_key_file_get_int64">
+<function name="g_file_test">
 <description>
-Returns the value associated with @key under @group_name as a signed
-64-bit integer. This is similar to g_key_file_get_integer() but can return
-64-bit results without truncation.
+Returns %TRUE if any of the tests in the bitfield @test are
+%TRUE. For example, &lt;literal&gt;(G_FILE_TEST_EXISTS | 
+G_FILE_TEST_IS_DIR)&lt;/literal&gt; will return %TRUE if the file exists; 
+the check whether it's a directory doesn't matter since the existence 
+test is %TRUE. With the current set of available tests, there's no point
+passing in more than one test at a time.
+
+Apart from %G_FILE_TEST_IS_SYMLINK all tests follow symbolic links,
+so for a symbolic link to a regular file g_file_test() will return
+%TRUE for both %G_FILE_TEST_IS_SYMLINK and %G_FILE_TEST_IS_REGULAR.
+
+Note, that for a dangling symbolic link g_file_test() will return
+%TRUE for %G_FILE_TEST_IS_SYMLINK and %FALSE for all other flags.
+
+You should never use g_file_test() to test whether it is safe
+to perform an operation, because there is always the possibility
+of the condition changing before you actually perform the operation.
+For example, you might think you could use %G_FILE_TEST_IS_SYMLINK
+to know whether it is safe to write to a file without being
+tricked into writing into a different location. It doesn't work!
+|[
+/ * DON'T DO THIS * /
+if (!g_file_test (filename, G_FILE_TEST_IS_SYMLINK)) 
+{
+fd = g_open (filename, O_WRONLY);
+/ * write to fd * /
+}
+]|
+
+Another thing to note is that %G_FILE_TEST_EXISTS and
+%G_FILE_TEST_IS_EXECUTABLE are implemented using the access()
+system call. This usually doesn't matter, but if your program
+is setuid or setgid it means that these tests will give you
+the answer for the real user ID and group ID, rather than the
+effective user ID and group ID.
+
+On Windows, there are no symlinks, so testing for
+%G_FILE_TEST_IS_SYMLINK will always return %FALSE. Testing for
+%G_FILE_TEST_IS_EXECUTABLE will just check that the file exists and
+its name indicates that it is executable, checking for well-known
+extensions and those listed in the %PATHEXT environment variable.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a non-%NULL #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a non-%NULL group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a non-%NULL key
+<parameter name="filename">
+<parameter_description> a filename to test in the GLib file name encoding
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="test">
+<parameter_description> bitfield of #GFileTest flags
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value associated with the key as a signed 64-bit integer, or
-0 if the key was not found or could not be parsed.
-
+<return> whether a test was %TRUE
 </return>
 </function>
 
-<function name="g_get_language_names">
+<function name="g_filename_display_basename">
 <description>
-Computes a list of applicable locale names, which can be used to 
-e.g. construct locale-dependent filenames or search paths. The returned 
-list is sorted from most desirable to least desirable and always contains 
-the default locale &quot;C&quot;.
+Returns the display basename for the particular filename, guaranteed
+to be valid UTF-8. The display name might not be identical to the filename,
+for instance there might be problems converting it to UTF-8, and some files
+can be translated in the display.
 
-For example, if LANGUAGE=de:en_US, then the returned list is
-&quot;de&quot;, &quot;en_US&quot;, &quot;en&quot;, &quot;C&quot;.
+If GLib can not make sense of the encoding of @filename, as a last resort it 
+replaces unknown characters with U+FFFD, the Unicode replacement character.
+You can search the result for the UTF-8 encoding of this character (which is
+&quot;\357\277\275&quot; in octal notation) to find out if @filename was in an invalid
+encoding.
 
-This function consults the environment variables &lt;envar&gt;LANGUAGE&lt;/envar&gt;, 
-&lt;envar&gt;LC_ALL&lt;/envar&gt;, &lt;envar&gt;LC_MESSAGES&lt;/envar&gt; and &lt;envar&gt;LANG&lt;/envar&gt; 
-to find the list of locales specified by the user.
+You must pass the whole absolute pathname to this functions so that
+translation of well known locations can be done.
+
+This function is preferred over g_filename_display_name() if you know the
+whole path, as it allows translation.
 
 Since: 2.6
 
 </description>
 <parameters>
+<parameter name="filename">
+<parameter_description> an absolute pathname in the GLib file name encoding
+</parameter_description>
+</parameter>
 </parameters>
-<return> a %NULL-terminated array of strings owned by GLib 
-that must not be modified or freed.
+<return> a newly allocated string containing
+a rendition of the basename of the filename in valid UTF-8
 
 </return>
 </function>
 
-<function name="g_thread_pool_set_sort_function">
+<function name="g_filename_display_name">
 <description>
-Sets the function used to sort the list of tasks. This allows the
-tasks to be processed by a priority determined by @func, and not
-just in the order in which they were added to the pool.
+Converts a filename into a valid UTF-8 string. The conversion is 
+not necessarily reversible, so you should keep the original around 
+and use the return value of this function only for display purposes.
+Unlike g_filename_to_utf8(), the result is guaranteed to be non-%NULL 
+even if the filename actually isn't in the GLib file name encoding.
 
-Note, if the maximum number of threads is more than 1, the order
-that threads are executed can not be guranteed 100%. Threads are
-scheduled by the operating system and are executed at random. It
-cannot be assumed that threads are executed in the order they are
-created. 
+If GLib can not make sense of the encoding of @filename, as a last resort it 
+replaces unknown characters with U+FFFD, the Unicode replacement character.
+You can search the result for the UTF-8 encoding of this character (which is
+&quot;\357\277\275&quot; in octal notation) to find out if @filename was in an invalid
+encoding.
 
-Since: 2.10
+If you know the whole pathname of the file you should use
+g_filename_display_basename(), since that allows location-based
+translation of filenames.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the #GCompareDataFunc used to sort the list of tasks. 
-This function is passed two tasks. It should return
-0 if the order in which they are handled does not matter, 
-a negative value if the first task should be processed before
-the second or a positive value if the second task should be 
-processed first.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @func.
+<parameter name="filename">
+<parameter_description> a pathname hopefully in the GLib file name encoding
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string containing
+a rendition of the filename in valid UTF-8
+
+</return>
 </function>
 
-<function name="g_tree_insert">
+<function name="g_filename_from_uri">
 <description>
-Inserts a key/value pair into a #GTree. If the given key already exists 
-in the #GTree its corresponding value is set to the new value. If you 
-supplied a value_destroy_func when creating the #GTree, the old value is 
-freed using that function. If you supplied a @key_destroy_func when 
-creating the #GTree, the passed key is freed using that function.
+Converts an escaped ASCII-encoded URI to a local filename in the
+encoding used for filenames. 
 
-The tree is automatically 'balanced' as new key/value pairs are added,
-so that the distance from the root to every leaf is as small as possible.
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="uri">
+<parameter_description> a uri describing a filename (escaped, encoded in ASCII).
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to insert.
+<parameter name="hostname">
+<parameter_description> Location to store hostname for the URI, or %NULL.
+If there is no hostname in the URI, %NULL will be
+stored in this location.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value corresponding to the key.
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly-allocated string holding the resulting
+filename, or %NULL on an error.
+</return>
 </function>
 
-<function name="g_async_queue_unlock">
+<function name="g_filename_from_utf8">
 <description>
-Releases the queue's lock.
+Converts a string from UTF-8 to the encoding GLib uses for
+filenames. Note that on Windows GLib uses UTF-8 for filenames;
+on other platforms, this function indirectly depends on the 
+&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
+
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="utf8string">
+<parameter_description>    a UTF-8 encoded string.
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description>           the length of the string, or -1 if the string is
+nul-terminated.
+</parameter_description>
+</parameter>
+<parameter name="bytes_read">
+<parameter_description>    location to store the number of bytes in the
+input string that were successfully converted, or %NULL.
+Even if the conversion was successful, this may be 
+less than @len if there were partial characters
+at the end of the input. If the error
+#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+stored will the byte offset after the last valid
+input sequence.
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> the number of bytes stored in the output buffer (not 
+including the terminating nul).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description>         location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The converted string, or %NULL on an error.
+</return>
 </function>
 
-<function name="g_rand_new_with_seed">
+<function name="g_filename_to_uri">
 <description>
-Creates a new random number generator initialized with @seed.
+Converts an absolute filename to an escaped ASCII-encoded URI, with the path
+component following Section 3.3. of RFC 2396.
 
 
 </description>
 <parameters>
-<parameter name="seed">
-<parameter_description> a value to initialize the random number generator.
+<parameter name="filename">
+<parameter_description> an absolute filename specified in the GLib file name encoding,
+which is the on-disk file name bytes on Unix, and UTF-8 on 
+Windows
+</parameter_description>
+</parameter>
+<parameter name="hostname">
+<parameter_description> A UTF-8 encoded hostname, or %NULL for none.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GRand.
+<return> a newly-allocated string holding the resulting
+URI, or %NULL on an error.
 </return>
 </function>
 
-<function name="g_locale_to_utf8">
+<function name="g_filename_to_utf8">
 <description>
-Converts a string which is in the encoding used for strings by
-the C runtime (usually the same as that used by the operating
-system) in the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt; into a
-UTF-8 string.
+Converts a string which is in the encoding used by GLib for
+filenames into a UTF-8 string. Note that on Windows GLib uses UTF-8
+for filenames; on other platforms, this function indirectly depends on 
+the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
 
 
 </description>
 <parameters>
 <parameter name="opsysstring">
-<parameter_description>   a string in the encoding of the current locale. On Windows
-this means the system codepage.
+<parameter_description>   a string in the encoding for filenames
 </parameter_description>
 </parameter>
 <parameter name="len">
@@ -7846,3126 +7902,2501 @@ errors. Any of the errors in #GConvertError may occur.
 </return>
 </function>
 
-<function name="g_async_queue_push_sorted">
+<function name="g_find_program_in_path">
 <description>
-Inserts @data into @queue using @func to determine the new
-position. 
-
-This function requires that the @queue is sorted before pushing on
-new elements.
+Locates the first executable named @program in the user's path, in the
+same way that execvp() would locate it. Returns an allocated string
+with the absolute path name, or %NULL if the program is not found in
+the path. If @program is already an absolute path, returns a copy of
+ program if @program exists and is executable, and %NULL otherwise.
 
-This function will lock @queue before it sorts the queue and unlock
-it when it is finished.
+On Windows, if @program does not have a file type suffix, tries
+with the suffixes .exe, .cmd, .bat and .com, and the suffixes in
+the &lt;envar&gt;PATHEXT&lt;/envar&gt; environment variable. 
 
-For an example of @func see g_async_queue_sort(). 
+On Windows, it looks for the file in the same way as CreateProcess() 
+would. This means first in the directory where the executing
+program was loaded from, then in the current directory, then in the
+Windows 32-bit system directory, then in the Windows directory, and
+finally in the directories in the &lt;envar&gt;PATH&lt;/envar&gt; environment 
+variable. If the program is found, the return value contains the 
+full name including the type suffix.
 
-Since: 2.10
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the @data to push into the @queue
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the #GCompareDataFunc is used to sort @queue. This function
-is passed two elements of the @queue. The function should return
-0 if they are equal, a negative value if the first element
-should be higher in the @queue or a positive value if the first
-element should be lower in the @queue than the second element.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @func.
+<parameter name="program">
+<parameter_description> a program name in the GLib file name encoding
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> absolute path, or %NULL
+</return>
 </function>
 
-<function name="g_node_pop_allocator">
+<function name="g_fopen">
 <description>
-Restores the previous #GAllocator, used when allocating #GNode
-elements.
-
-Note that this function is not available if GLib has been compiled
-with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
-
-Deprecated:2.10: It does nothing, since #GNode has been converted to
-the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt;
+A wrapper for the stdio fopen() function. The fopen() function
+opens a file and associates a new stream with it.
 
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
+Because file descriptors are specific to the C library on Windows,
+and a file descriptor is partof the &lt;type&gt;FILE&lt;/type&gt; struct, the
+&lt;type&gt;FILE&lt;/type&gt; pointer returned by this function makes sense
+only to functions in the same C library. Thus if the GLib-using
+code uses a different C library than GLib does, the
+&lt;type&gt;FILE&lt;/type&gt; pointer returned by this function cannot be
+passed to C library functions like fprintf() or fread().
 
-<function name="g_string_overwrite">
-<description>
-Overwrites part of a string, lengthening it if necessary.
+See your C library manual for more details about fopen().
 
-Since: 2.14
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> the position at which to start overwriting
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> the string that will overwrite the @string starting at @pos
+<parameter name="mode">
+<parameter_description> a string describing the mode in which the file should be 
+opened
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> A &lt;type&gt;FILE&lt;/type&gt; pointer if the file was successfully
+opened, or %NULL if an error occurred
 
 </return>
 </function>
 
-<function name="g_win32_get_windows_version">
+<function name="g_format_size_for_display">
 <description>
-Returns version information for the Windows operating system the
-code is running on. See MSDN documentation for the GetVersion()
-function. To summarize, the most significant bit is one on Win9x,
-and zero on NT-based systems. Since version 2.14, GLib works only
-on NT-based systems, so checking whether your are running on Win9x
-in your own software is moot. The least significant byte is 4 on
-Windows NT 4, and 5 on Windows XP. Software that needs really
-detailled version and feature information should use Win32 API like
-GetVersionEx() and VerifyVersionInfo().
-
-Since: 2.6
-
-</description>
-<parameters>
-</parameters>
-<return> The version information.
+Formats a size (for example the size of a file) into a human readable string.
+Sizes are rounded to the nearest size prefix (KB, MB, GB) and are displayed 
+rounded to the nearest  tenth. E.g. the file size 3292528 bytes will be
+converted into the string &quot;3.1 MB&quot;.
 
-</return>
-</function>
+The prefix units base is 1024 (i.e. 1 KB is 1024 bytes).
 
-<function name="g_value_get_double">
-<description>
-Get the contents of a %G_TYPE_DOUBLE #GValue.
+This string should be freed with g_free() when not needed any longer.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_DOUBLE
+<parameter name="size">
+<parameter_description> a size in bytes.
 </parameter_description>
 </parameter>
 </parameters>
-<return> double contents of @value
+<return> a newly-allocated formatted string containing a human readable
+file size.
+
 </return>
 </function>
 
-<function name="g_filename_from_uri">
+<function name="g_fprintf">
 <description>
-Converts an escaped ASCII-encoded URI to a local filename in the
-encoding used for filenames. 
+An implementation of the standard fprintf() function which supports 
+positional parameters, as specified in the Single Unix Specification.
 
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="uri">
-<parameter_description> a uri describing a filename (escaped, encoded in ASCII).
+<parameter name="file">
+<parameter_description> the stream to write to.
 </parameter_description>
 </parameter>
-<parameter name="hostname">
-<parameter_description> Location to store hostname for the URI, or %NULL.
-If there is no hostname in the URI, %NULL will be
-stored in this location.
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice 
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
+<parameter name="Varargs">
+<parameter_description> the arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string holding the resulting
-filename, or %NULL on an error.
+<return> the number of bytes printed.
+
 </return>
 </function>
 
-<function name="g_io_channel_get_buffered">
+<function name="g_free">
 <description>
-Returns whether @channel is buffered.
-
+Frees the memory pointed to by @mem.
+If @mem is %NULL it simply returns.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="mem">
+<parameter_description> the memory to free
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the @channel is buffered. 
-</return>
+<return></return>
 </function>
 
-<function name="g_source_get_context">
+<function name="g_freopen">
 <description>
-Gets the #GMainContext with which the source is associated.
-Calling this function on a destroyed source is an error.
+A wrapper for the POSIX freopen() function. The freopen() function
+opens a file and associates it with an existing stream.
 
+See your C library manual for more details about freopen().
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> a string describing the mode in which the file should be 
+opened
+</parameter_description>
+</parameter>
+<parameter name="stream">
+<parameter_description> an existing stream which will be reused, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GMainContext with which the source is associated,
-or %NULL if the context has not yet been added
-to a source.
+<return> A &lt;type&gt;FILE&lt;/type&gt; pointer if the file was successfully
+opened, or %NULL if an error occurred.
+
 </return>
 </function>
 
-<function name="g_unichar_tolower">
+<function name="g_get_application_name">
 <description>
-Converts a character to lower case.
+Gets a human-readable name for the application, as set by
+g_set_application_name(). This name should be localized if
+possible, and is intended for display to the user.  Contrast with
+g_get_prgname(), which gets a non-localized name. If
+g_set_application_name() has not been called, returns the result of
+g_get_prgname() (which may be %NULL if g_set_prgname() has also not
+been called).
 
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the result of converting @c to lower case.
-If @c is not an upperlower or titlecase character,
-or has no lowercase equivalent @c is returned unchanged.
+<return> human-readable application name. may return %NULL
+
 </return>
 </function>
 
-<function name="g_completion_free">
+<function name="g_get_charset">
 <description>
-Frees all memory used by the #GCompletion.
+Obtains the character set for the &lt;link linkend=&quot;setlocale&quot;&gt;current 
+locale&lt;/link&gt;; you might use this character set as an argument to 
+g_convert(), to convert from the current locale's encoding to some 
+other encoding. (Frequently g_locale_to_utf8() and g_locale_from_utf8()
+are nice shortcuts, though.)
+
+On Windows the character set returned by this function is the
+so-called system default ANSI code-page. That is the character set
+used by the &quot;narrow&quot; versions of C library and Win32 functions that
+handle file names. It might be different from the character set
+used by the C library's current locale.
+
+The return value is %TRUE if the locale's encoding is UTF-8, in that
+case you can perhaps avoid calling g_convert().
+
+The string returned in @charset is not allocated, and should not be
+freed.
 
-Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="cmp">
-<parameter_description> the #GCompletion.
+<parameter name="charset">
+<parameter_description> return location for character set name
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the returned charset is UTF-8
+</return>
 </function>
 
-<function name="g_byte_array_unref">
+<function name="g_get_codeset">
 <description>
-Atomically decrements the reference count of @array by one. If the
-reference count drops to 0, all memory allocated by the array is
-released. This function is MT-safe and may be called from any
-thread.
+Get the codeset for the current locale.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GByteArray.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string containing the name
+of the codeset. This string must be freed with g_free().
+</return>
 </function>
 
-<function name="g_utf8_pointer_to_offset">
+<function name="g_get_current_dir">
 <description>
-Converts from a pointer to position within a string to a integer
-character offset.
-
-Since 2.10, this function allows @pos to be before @str, and returns
-a negative offset in this case.
+Gets the current directory.
+The returned string should be freed when no longer needed. The encoding 
+of the returned string is system defined. On Windows, it is always UTF-8.
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> a pointer to a position within @str
-</parameter_description>
-</parameter>
 </parameters>
-<return> the resulting character offset
+<return> the current directory.
 </return>
 </function>
 
-<function name="g_spawn_sync">
+<function name="g_get_current_time">
 <description>
-Executes a child synchronously (waits for the child to exit before returning).
-All output from the child is stored in @standard_output and @standard_error,
-if those parameters are non-%NULL. Note that you must set the  
-%G_SPAWN_STDOUT_TO_DEV_NULL and %G_SPAWN_STDERR_TO_DEV_NULL flags when
-passing %NULL for @standard_output and @standard_error.
-If @exit_status is non-%NULL, the exit status of the child is stored
-there as it would be returned by waitpid(); standard UNIX macros such 
-as WIFEXITED() and WEXITSTATUS() must be used to evaluate the exit status.
-Note that this function call waitpid() even if @exit_status is %NULL, and
-does not accept the %G_SPAWN_DO_NOT_REAP_CHILD flag.
-If an error occurs, no data is returned in @standard_output, 
- standard_error, or @exit_status. 
-
-This function calls g_spawn_async_with_pipes() internally; see that
-function for full details on the other parameters and details on
-how these functions work on Windows.
+Equivalent to the UNIX gettimeofday() function, but portable.
 
+You may find g_get_real_time() to be more convenient.
 
 </description>
 <parameters>
-<parameter name="working_directory">
-<parameter_description> child's current working directory, or %NULL to inherit parent's
-</parameter_description>
-</parameter>
-<parameter name="argv">
-<parameter_description> child's argument vector
-</parameter_description>
-</parameter>
-<parameter name="envp">
-<parameter_description> child's environment, or %NULL to inherit parent's
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags from #GSpawnFlags 
-</parameter_description>
-</parameter>
-<parameter name="child_setup">
-<parameter_description> function to run in the child just before exec()
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data for @child_setup
-</parameter_description>
-</parameter>
-<parameter name="standard_output">
-<parameter_description> return location for child output, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="standard_error">
-<parameter_description> return location for child error messages, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="exit_status">
-<parameter_description> return location for child exit status, as returned by waitpid(), or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for error, or %NULL
+<parameter name="result">
+<parameter_description> #GTimeVal structure in which to store current time.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if an error was set.
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_index">
+<function name="g_get_environ">
 <description>
-Returns the position of the first element in @queue which contains @data.
+Gets the list of environment variables for the current process.  The
+list is %NULL terminated and each item in the list is of the form
+'NAME=VALUE'.
 
-Since: 2.4
+This is equivalent to direct access to the 'environ' global variable,
+except portable.
+
+The return value is freshly allocated and it should be freed with
+g_strfreev() when it is no longer needed.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data to find.
-</parameter_description>
-</parameter>
 </parameters>
-<return> The position of the first element in @queue which contains @data, or -1 if no element in @queue contains @data.
+<return> the list of environment variables
 
 </return>
 </function>
 
-<function name="g_type_add_interface_check">
+<function name="g_get_filename_charsets">
 <description>
-Adds a function to be called after an interface vtable is
-initialized for any class (i.e. after the @interface_init member of
-#GInterfaceInfo has been called).
+Determines the preferred character sets used for filenames.
+The first character set from the @charsets is the filename encoding, the
+subsequent character sets are used when trying to generate a displayable
+representation of a filename, see g_filename_display_name().
 
-This function is useful when you want to check an invariant that
-depends on the interfaces of a class. For instance, the
-implementation of #GObject uses this facility to check that an
-object implements all of the properties that are defined on its
-interfaces.
+On Unix, the character sets are determined by consulting the
+environment variables &lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; and
+&lt;envar&gt;G_BROKEN_FILENAMES&lt;/envar&gt;. On Windows, the character set
+used in the GLib API is always UTF-8 and said environment variables
+have no effect.
 
-Since: 2.4
+&lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; may be set to a comma-separated list 
+of character set names. The special token &quot;@locale&quot; is taken to 
+mean the character set for the &lt;link linkend=&quot;setlocale&quot;&gt;current 
+locale&lt;/link&gt;. If &lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; is not set, but 
+&lt;envar&gt;G_BROKEN_FILENAMES&lt;/envar&gt; is, the character set of the current 
+locale is taken as the filename encoding. If neither environment variable 
+is set, UTF-8 is taken as the filename encoding, but the character
+set of the current locale is also put in the list of encodings.
 
-</description>
-<parameters>
-<parameter name="check_data">
-<parameter_description> data to pass to @check_func
-</parameter_description>
-</parameter>
-<parameter name="check_func">
-<parameter_description> function to be called after each interface
-is initialized.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+The returned @charsets belong to GLib and must not be freed.
 
-<function name="g_test_message">
-<description>
-Add a message to the test report.
+Note that on Unix, regardless of the locale character set or
+&lt;envar&gt;G_FILENAME_ENCODING&lt;/envar&gt; value, the actual file names present 
+on a system might be in any random encoding or just gibberish.
 
-Since: 2.16
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> the format string
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description>    printf-like arguments to @format
+<parameter name="charsets">
+<parameter_description> return location for the %NULL-terminated list of encoding names
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the filename encoding is UTF-8.
+
+</return>
 </function>
 
-<function name="g_value_array_copy">
+<function name="g_get_home_dir">
 <description>
-Construct an exact copy of a #GValueArray by duplicating all its
-contents.
+Gets the current user's home directory as defined in the 
+password database.
+
+Note that in contrast to traditional UNIX tools, this function 
+prefers &lt;filename&gt;passwd&lt;/filename&gt; entries over the &lt;envar&gt;HOME&lt;/envar&gt; 
+environment variable. 
+
+One of the reasons for this decision is that applications in many 
+cases need special handling to deal with the case where 
+&lt;envar&gt;HOME&lt;/envar&gt; is
+&lt;simplelist&gt;
+&lt;member&gt;Not owned by the user&lt;/member&gt;
+&lt;member&gt;Not writeable&lt;/member&gt;
+&lt;member&gt;Not even readable&lt;/member&gt;
+&lt;/simplelist&gt;
+Since applications are in general &lt;emphasis&gt;not&lt;/emphasis&gt; written 
+to deal with these situations it was considered better to make 
+g_get_home_dir() not pay attention to &lt;envar&gt;HOME&lt;/envar&gt; and to 
+return the real home directory for the user. If applications
+want to pay attention to &lt;envar&gt;HOME&lt;/envar&gt;, they can do:
+|[
+const char *homedir = g_getenv (&quot;HOME&quot;);
+if (!homedir)
+homedir = g_get_home_dir (&lt;!-- --&gt;);
+]|
 
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to copy
-</parameter_description>
-</parameter>
 </parameters>
-<return> Newly allocated copy of #GValueArray
+<return> the current user's home directory
 </return>
 </function>
 
-<function name="g_utf8_strrchr">
+<function name="g_get_host_name">
 <description>
-Find the rightmost occurrence of the given Unicode character
-in a UTF-8 encoded string, while limiting the search to @len bytes.
-If @len is -1, allow unbounded search.
+Return a name for the machine. 
+
+The returned name is not necessarily a fully-qualified domain name,
+or even present in DNS or some other name service at all. It need
+not even be unique on your local network or site, but usually it
+is. Callers should not rely on the return value having any specific
+properties like uniqueness for security purposes. Even if the name
+of the machine is changed while an application is running, the
+return value from this function does not change. The returned
+string is owned by GLib and should not be modified or freed. If no
+name can be determined, a default fixed string &quot;localhost&quot; is
+returned.
 
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="p">
-<parameter_description> a nul-terminated UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the maximum length of @p
-</parameter_description>
-</parameter>
-<parameter name="c">
-<parameter_description> a Unicode character
-</parameter_description>
-</parameter>
 </parameters>
-<return> %NULL if the string does not contain the character, 
-otherwise, a pointer to the start of the rightmost occurrence of the 
-character in the string.
+<return> the host name of the machine.
+
 </return>
 </function>
 
-<function name="g_clear_error">
+<function name="g_get_language_names">
 <description>
-If @err is %NULL, does nothing. If @err is non-%NULL,
-calls g_error_free() on * err and sets * err to %NULL.
+Computes a list of applicable locale names, which can be used to 
+e.g. construct locale-dependent filenames or search paths. The returned 
+list is sorted from most desirable to least desirable and always contains 
+the default locale &quot;C&quot;.
 
-</description>
-<parameters>
-<parameter name="err">
-<parameter_description> a #GError return location
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+For example, if LANGUAGE=de:en_US, then the returned list is
+&quot;de&quot;, &quot;en_US&quot;, &quot;en&quot;, &quot;C&quot;.
 
-<function name="g_sequence_get_end_iter">
-<description>
-Returns the end iterator for @seg
+This function consults the environment variables &lt;envar&gt;LANGUAGE&lt;/envar&gt;, 
+&lt;envar&gt;LC_ALL&lt;/envar&gt;, &lt;envar&gt;LC_MESSAGES&lt;/envar&gt; and &lt;envar&gt;LANG&lt;/envar&gt; 
+to find the list of locales specified by the user.
 
-Since: 2.14
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence 
-</parameter_description>
-</parameter>
 </parameters>
-<return> the end iterator for @seq
+<return> a %NULL-terminated array of strings owned by GLib 
+that must not be modified or freed.
 
 </return>
 </function>
 
-<function name="g_ascii_tolower">
+<function name="g_get_locale_variants">
 <description>
-Convert a character to ASCII lower case.
+Returns a list of derived variants of @locale, which can be used to
+e.g. construct locale-dependent filenames or search paths. The returned
+list is sorted from most desirable to least desirable.
+This function handles territory, charset and extra locale modifiers.
 
-Unlike the standard C library tolower() function, this only
-recognizes standard ASCII letters and ignores the locale, returning
-all non-ASCII characters unchanged, even if they are lower case
-letters in a particular character set. Also unlike the standard
-library function, this takes and returns a char, not an int, so
-don't call it on %EOF but no need to worry about casting to #guchar
-before passing a possibly non-ASCII character in.
+For example, if @locale is &quot;fr_BE&quot;, then the returned list
+is &quot;fr_BE&quot;, &quot;fr&quot;.
+
+If you need the list of variants for the &lt;emphasis&gt;current locale&lt;/emphasis&gt;,
+use g_get_language_names().
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> any character.
+<parameter name="locale">
+<parameter_description> a locale identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return> the result of converting @c to lower case.
-If @c is not an ASCII upper case letter,
- c is returned unchanged.
+<return> a newly
+allocated array of newly allocated strings with the locale variants. Free with
+g_strfreev().
+
 </return>
 </function>
 
-<function name="g_variant_get_string">
+<function name="g_get_monotonic_time">
 <description>
-Returns the string value of a #GVariant instance with a string
-type.  This includes the types %G_VARIANT_TYPE_STRING,
-%G_VARIANT_TYPE_OBJECT_PATH and %G_VARIANT_TYPE_SIGNATURE.
+Queries the system monotonic time, if available.
 
-The string will always be utf8 encoded.
-
-If @length is non-%NULL then the length of the string (in bytes) is
-returned there.  For trusted values, this information is already
-known.  For untrusted values, a strlen() will be performed.
-
-It is an error to call this function with a @value of any type
-other than those three.
+On POSIX systems with clock_gettime() and %CLOCK_MONOTONIC this call
+is a very shallow wrapper for that.  Otherwise, we make a best effort
+that probably involves returning the wall clock time (with at least
+microsecond accuracy, subject to the limitations of the OS kernel).
 
-The return value remains valid as long as @value exists.
+Note that, on Windows, &quot;limitations of the OS kernel&quot; is a rather
+substantial statement.  Depending on the configuration of the system,
+the wall clock time is updated as infrequently as 64 times a second
+(which is approximately every 16ms).
 
-Since: 2.24
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a string #GVariant instance
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> a pointer to a #gsize,
-to store the length
-</parameter_description>
-</parameter>
 </parameters>
-<return> the constant string, utf8 encoded
+<return> the monotonic time, in microseconds
+
 </return>
 </function>
 
-<function name="g_byte_array_remove_index_fast">
+<function name="g_get_prgname">
 <description>
-Removes the byte at the given index from a #GByteArray. The last
-element in the array is used to fill in the space, so this function
-does not preserve the order of the #GByteArray. But it is faster
-than g_byte_array_remove_index().
+Gets the name of the program. This name should &lt;emphasis&gt;not&lt;/emphasis&gt; 
+be localized, contrast with g_get_application_name().
+(If you are using GDK or GTK+ the program name is set in gdk_init(), 
+which is called by gtk_init(). The program name is found by taking 
+the last component of &lt;literal&gt;argv[0]&lt;/literal&gt;.)
+
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the byte to remove.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the #GByteArray.
+<return> the name of the program. The returned string belongs 
+to GLib and must not be modified or freed.
 </return>
 </function>
 
-<function name="g_type_remove_interface_check">
+<function name="g_get_real_name">
 <description>
-Removes an interface check function added with
-g_type_add_interface_check().
+Gets the real name of the user. This usually comes from the user's entry 
+in the &lt;filename&gt;passwd&lt;/filename&gt; file. The encoding of the returned 
+string is system-defined. (On Windows, it is, however, always UTF-8.) 
+If the real user name cannot be determined, the string &quot;Unknown&quot; is 
+returned.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="check_data">
-<parameter_description> callback data passed to g_type_add_interface_check()
-</parameter_description>
-</parameter>
-<parameter name="check_func">
-<parameter_description> callback function passed to g_type_add_interface_check()
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the user's real name.
+</return>
 </function>
 
-<function name="g_variant_type_next">
+<function name="g_get_real_time">
 <description>
-Determines the next item type of a tuple or dictionary entry
-type.
+Queries the system wall-clock time.
 
- type must be the result of a previous call to
-g_variant_type_first() or g_variant_type_next().
+This call is functionally equivalent to g_get_current_time() except
+that the return value is often more convenient than dealing with a
+#GTimeVal.
 
-If called on the key type of a dictionary entry then this call
-returns the value type.  If called on the value type of a dictionary
-entry then this call returns %NULL.
+You should only use this call if you are actually interested in the real
+wall-clock time.  g_get_monotonic_time() is probably more useful for
+measuring intervals.
 
-For tuples, %NULL is returned when @type is the last item in a tuple.
-
-Since 2.24
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType from a previous call
-</parameter_description>
-</parameter>
 </parameters>
-<return> the next #GVariantType after @type, or %NULL
+<return> the number of microseconds since January 1, 1970 UTC.
+
 </return>
 </function>
 
-<function name="g_static_rw_lock_init">
+<function name="g_get_system_config_dirs">
 <description>
-A #GStaticRWLock must be initialized with this function before it
-can be used. Alternatively you can initialize it with
-#G_STATIC_RW_LOCK_INIT.
+Returns an ordered list of base directories in which to access 
+system-wide configuration information.
+
+On UNIX platforms this is determined using the mechanisms described in
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
+XDG Base Directory Specification&lt;/ulink&gt;.
+In this case the list of directories retrieved will be XDG_CONFIG_DIRS.
+
+On Windows is the directory that contains application data for all users.
+A typical path is C:\Documents and Settings\All Users\Application Data.
+This folder is used for application data that is not user specific.
+For example, an application can store a spell-check dictionary, a database
+of clip art, or a log file in the CSIDL_COMMON_APPDATA folder.
+This information will not roam and is available to anyone using the computer.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to be initialized.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a %NULL-terminated array of strings owned by GLib that must 
+not be modified or freed.
+</return>
 </function>
 
-<function name="g_win32_error_message">
+<function name="g_get_system_data_dirs">
 <description>
-Translate a Win32 error code (as returned by GetLastError()) into
-the corresponding message. The message is either language neutral,
-or in the thread's language, or the user's language, the system's
-language, or US English (see docs for FormatMessage()). The
-returned string is in UTF-8. It should be deallocated with
-g_free().
+Returns an ordered list of base directories in which to access 
+system-wide application data.
+
+On UNIX platforms this is determined using the mechanisms described in
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
+XDG Base Directory Specification&lt;/ulink&gt;
+In this case the list of directories retrieved will be XDG_DATA_DIRS.
+
+On Windows the first elements in the list are the Application Data
+and Documents folders for All Users. (These can be determined only
+on Windows 2000 or later and are not present in the list on other
+Windows versions.) See documentation for CSIDL_COMMON_APPDATA and
+CSIDL_COMMON_DOCUMENTS.
+
+Then follows the &quot;share&quot; subfolder in the installation folder for
+the package containing the DLL that calls this function, if it can
+be determined.
+
+Finally the list contains the &quot;share&quot; subfolder in the installation
+folder for GLib, and in the installation folder for the package the
+application's .exe file belongs to.
+
+The installation folders above are determined by looking up the
+folder where the module (DLL or EXE) in question is located. If the
+folder's name is &quot;bin&quot;, its parent is used, otherwise the folder
+itself.
+
+Note that on Windows the returned list can vary depending on where
+this function is called.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> error code.
-</parameter_description>
-</parameter>
 </parameters>
-<return> newly-allocated error message
+<return> a %NULL-terminated array of strings owned by GLib that must 
+not be modified or freed.
 </return>
 </function>
 
-<function name="g_value_array_sort">
+<function name="g_get_tmp_dir">
 <description>
-Sort @value_array using @compare_func to compare the elements accoring to
-the semantics of #GCompareFunc.
-
-The current implementation uses Quick-Sort as sorting algorithm.
+Gets the directory to use for temporary files. This is found from 
+inspecting the environment variables &lt;envar&gt;TMPDIR&lt;/envar&gt;, 
+&lt;envar&gt;TMP&lt;/envar&gt;, and &lt;envar&gt;TEMP&lt;/envar&gt; in that order. If none 
+of those are defined &quot;/tmp&quot; is returned on UNIX and &quot;C:\&quot; on Windows. 
+The encoding of the returned string is system-defined. On Windows, 
+it is always UTF-8. The return value is never %NULL or the empty string.
 
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to sort
-</parameter_description>
-</parameter>
-<parameter name="compare_func">
-<parameter_description> function to compare elements
-</parameter_description>
-</parameter>
 </parameters>
-<return> the #GValueArray passed in as @value_array
+<return> the directory to use for temporary files.
 </return>
 </function>
 
-<function name="g_unlink">
+<function name="g_get_user_cache_dir">
 <description>
-A wrapper for the POSIX unlink() function. The unlink() function 
-deletes a name from the filesystem. If this was the last link to the 
-file and no processes have it opened, the diskspace occupied by the
-file is freed.
+Returns a base directory in which to store non-essential, cached
+data specific to particular user.
 
-See your C library manual for more details about unlink(). Note
-that on Windows, it is in general not possible to delete files that
-are open to some process, or mapped into memory.
+On UNIX platforms this is determined using the mechanisms described in
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
+XDG Base Directory Specification&lt;/ulink&gt;.
+In this case the directory retrieved will be XDG_CACHE_HOME.
+
+On Windows is the directory that serves as a common repository for
+temporary Internet files. A typical path is
+C:\Documents and Settings\username\Local Settings\Temporary Internet Files.
+See documentation for CSIDL_INTERNET_CACHE.
 
 Since: 2.6
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
-</parameter_description>
-</parameter>
 </parameters>
-<return> 0 if the name was successfully deleted, -1 if an error 
-occurred
-
+<return> a string owned by GLib that must not be modified 
+or freed.
 </return>
 </function>
 
-<function name="g_type_default_interface_ref">
+<function name="g_get_user_config_dir">
 <description>
-Increments the reference count for the interface type @g_type,
-and returns the default interface vtable for the type.
+Returns a base directory in which to store user-specific application 
+configuration information such as user preferences and settings. 
 
-If the type is not currently in use, then the default vtable
-for the type will be created and initalized by calling
-the base interface init and default vtable init functions for
-the type (the @&lt;structfield&gt;base_init&lt;/structfield&gt;
-and &lt;structfield&gt;class_init&lt;/structfield&gt; members of #GTypeInfo).
-Calling g_type_default_interface_ref() is useful when you
-want to make sure that signals and properties for an interface
-have been installed.
+On UNIX platforms this is determined using the mechanisms described in
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
+XDG Base Directory Specification&lt;/ulink&gt;.
+In this case the directory retrieved will be XDG_CONFIG_HOME.
 
-Since: 2.4
+On Windows this is the folder to use for local (as opposed to
+roaming) application data. See documentation for
+CSIDL_LOCAL_APPDATA. Note that on Windows it thus is the same as
+what g_get_user_data_dir() returns.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="g_type">
-<parameter_description> an interface type
-</parameter_description>
-</parameter>
 </parameters>
-<return> the default vtable for the interface; call
-g_type_default_interface_unref() when you are done using
-the interface.
+<return> a string owned by GLib that must not be modified 
+or freed.
 </return>
 </function>
 
-<function name="g_object_unref">
+<function name="g_get_user_data_dir">
 <description>
-Decreases the reference count of @object. When its reference count
-drops to 0, the object is finalized (i.e. its memory is freed).
+Returns a base directory in which to access application data such
+as icons that is customized for a particular user.  
+
+On UNIX platforms this is determined using the mechanisms described in
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
+XDG Base Directory Specification&lt;/ulink&gt;.
+In this case the directory retrieved will be XDG_DATA_HOME.
+
+On Windows this is the folder to use for local (as opposed to
+roaming) application data. See documentation for
+CSIDL_LOCAL_APPDATA. Note that on Windows it thus is the same as
+what g_get_user_config_dir() returns.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a string owned by GLib that must not be modified 
+or freed.
+</return>
 </function>
 
-<function name="g_value_take_object">
+<function name="g_get_user_name">
 <description>
-Sets the contents of a %G_TYPE_OBJECT derived #GValue to @v_object
-and takes over the ownership of the callers reference to @v_object;
-the caller doesn't have to unref it any more (i.e. the reference
-count of the object is not increased).
-
-If you want the #GValue to hold its own reference to @v_object, use
-g_value_set_object() instead.
+Gets the user name of the current user. The encoding of the returned
+string is system-defined. On UNIX, it might be the preferred file name
+encoding, or something else, and there is no guarantee that it is even
+consistent on a machine. On Windows, it is always UTF-8.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_OBJECT derived type
-</parameter_description>
-</parameter>
-<parameter name="v_object">
-<parameter_description> object value to be set
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the user name of the current user.
+</return>
 </function>
 
-<function name="g_main_depth">
+<function name="g_get_user_runtime_dir">
 <description>
-Returns the depth of the stack of calls to
-g_main_context_dispatch() on any #GMainContext in the current thread.
-That is, when called from the toplevel, it gives 0. When
-called from within a callback from g_main_context_iteration()
-(or g_main_loop_run(), etc.) it returns 1. When called from within 
-a callback to a recursive call to g_main_context_iterate(),
-it returns 2. And so forth.
-
-This function is useful in a situation like the following:
-Imagine an extremely simple &quot;garbage collected&quot; system.
-
-|[
-static GList *free_list;
-
-gpointer
-allocate_memory (gsize size)
-{ 
-gpointer result = g_malloc (size);
-free_list = g_list_prepend (free_list, result);
-return result;
-}
-
-void
-free_allocated_memory (void)
-{
-GList *l;
-for (l = free_list; l; l = l-&gt;next);
-g_free (l-&gt;data);
-g_list_free (free_list);
-free_list = NULL;
-}
-
-[...]
-
-while (TRUE); 
-{
-g_main_context_iteration (NULL, TRUE);
-free_allocated_memory();
-}
-]|
-
-This works from an application, however, if you want to do the same
-thing from a library, it gets more difficult, since you no longer
-control the main loop. You might think you can simply use an idle
-function to make the call to free_allocated_memory(), but that
-doesn't work, since the idle function could be called from a
-recursive callback. This can be fixed by using g_main_depth()
+Returns a directory that is unique to the current user on the local
+system.
 
-|[
-gpointer
-allocate_memory (gsize size)
-{ 
-FreeListBlock *block = g_new (FreeListBlock, 1);
-block-&gt;mem = g_malloc (size);
-block-&gt;depth = g_main_depth ();   
-free_list = g_list_prepend (free_list, block);
-return block-&gt;mem;
-}
-
-void
-free_allocated_memory (void)
-{
-GList *l;
-
-int depth = g_main_depth ();
-for (l = free_list; l; );
-{
-GList *next = l-&gt;next;
-FreeListBlock *block = l-&gt;data;
-if (block-&gt;depth &gt; depth)
-{
-g_free (block-&gt;mem);
-g_free (block);
-free_list = g_list_delete_link (free_list, l);
-}
-
-l = next;
-}
-}
-]|
-
-There is a temptation to use g_main_depth() to solve
-problems with reentrancy. For instance, while waiting for data
-to be received from the network in response to a menu item,
-the menu item might be selected again. It might seem that
-one could make the menu item's callback return immediately
-and do nothing if g_main_depth() returns a value greater than 1.
-However, this should be avoided since the user then sees selecting
-the menu item do nothing. Furthermore, you'll find yourself adding
-these checks all over your code, since there are doubtless many,
-many things that the user could do. Instead, you can use the
-following techniques:
+On UNIX platforms this is determined using the mechanisms described in
+the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
+XDG Base Directory Specification&lt;/ulink&gt;.  This is the directory
+specified in the &lt;envar&gt;XDG_RUNTIME_DIR&lt;/envar&gt; environment variable.
+In the case that this variable is not set, GLib will issue a warning
+message to stderr and return the value of g_get_user_cache_dir().
 
-&lt;orderedlist&gt;
-&lt;listitem&gt;
-&lt;para&gt;
-Use gtk_widget_set_sensitive() or modal dialogs to prevent
-the user from interacting with elements while the main
-loop is recursing.
-&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;
-Avoid main loop recursion in situations where you can't handle
-arbitrary  callbacks. Instead, structure your code so that you
-simply return to the main loop and then get called again when
-there is more work to do.
-&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;/orderedlist&gt;
+On Windows this is the folder to use for local (as opposed to
+roaming) application data. See documentation for
+CSIDL_LOCAL_APPDATA.  Note that on Windows it thus is the same as
+what g_get_user_config_dir() returns.
 
+Since: 2.28
 
 </description>
 <parameters>
 </parameters>
-<return> The main loop recursion level in the current thread
+<return> a string owned by GLib that must not be modified or freed.
+
 </return>
 </function>
 
-<function name="g_signal_accumulator_true_handled">
+<function name="g_get_user_special_dir">
 <description>
-A predefined #GSignalAccumulator for signals that return a
-boolean values. The behavior that this accumulator gives is
-that a return of %TRUE stops the signal emission: no further
-callbacks will be invoked, while a return of %FALSE allows
-the emission to coninue. The idea here is that a %TRUE return
-indicates that the callback &lt;emphasis&gt;handled&lt;/emphasis&gt; the signal,
-and no further handling is needed.
+Returns the full path of a special directory using its logical id.
 
-Since: 2.4
+On Unix this is done using the XDG special user directories.
+For compatibility with existing practise, %G_USER_DIRECTORY_DESKTOP
+falls back to &lt;filename&gt;$HOME/Desktop&lt;/filename&gt; when XDG special
+user directories have not been set up. 
 
+Depending on the platform, the user might be able to change the path
+of the special directory without requiring the session to restart; GLib
+will not reflect any change once the special directories are loaded.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="ihint">
-<parameter_description> standard #GSignalAccumulator parameter
-</parameter_description>
-</parameter>
-<parameter name="return_accu">
-<parameter_description> standard #GSignalAccumulator parameter
-</parameter_description>
-</parameter>
-<parameter name="handler_return">
-<parameter_description> standard #GSignalAccumulator parameter
-</parameter_description>
-</parameter>
-<parameter name="dummy">
-<parameter_description> standard #GSignalAccumulator parameter
+<parameter name="directory">
+<parameter_description> the logical id of special directory
 </parameter_description>
 </parameter>
 </parameters>
-<return> standard #GSignalAccumulator result
+<return> the path to the specified special directory, or %NULL
+if the logical id was not found. The returned string is owned by
+GLib and should not be modified or freed.
+
 </return>
 </function>
 
-<function name="g_error_matches">
+<function name="g_getenv">
 <description>
-Returns %TRUE if @error matches @domain and @code, %FALSE
-otherwise. In particular, when @error is %NULL, %FALSE will
-be returned.
+Returns the value of an environment variable. The name and value
+are in the GLib file name encoding. On UNIX, this means the actual
+bytes which might or might not be in some consistent character set
+and encoding. On Windows, it is in UTF-8. On Windows, in case the
+environment variable's value contains references to other
+environment variables, they are expanded.
 
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> a #GError or %NULL
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> an error domain
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> an error code
+<parameter name="variable">
+<parameter_description> the environment variable to get, in the GLib file name encoding.
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether @error has @domain and @code
+<return> the value of the environment variable, or %NULL if
+the environment variable is not found. The returned string may be
+overwritten by the next call to g_getenv(), g_setenv() or
+g_unsetenv().
 </return>
 </function>
 
-<function name="g_string_sized_new">
+<function name="g_hash_table_destroy">
 <description>
-Creates a new #GString, with enough space for @dfl_size 
-bytes. This is useful if you are going to add a lot of 
-text to the string and don't want it to be reallocated 
-too often.
-
+Destroys all keys and values in the #GHashTable and decrements its
+reference count by 1. If keys and/or values are dynamically allocated,
+you should either free them first or create the #GHashTable with destroy
+notifiers using g_hash_table_new_full(). In the latter case the destroy
+functions you supplied will be called on all keys and values during the
+destruction phase.
 
 </description>
 <parameters>
-<parameter name="dfl_size">
-<parameter_description> the default size of the space allocated to 
-hold the string
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GString
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_is_signature">
+<function name="g_hash_table_find">
 <description>
-Determines if a given string is a valid DBus type signature.  You
-should ensure that a string is a valid DBus type signature before
-passing it to g_variant_new_signature().
+Calls the given function for key/value pairs in the #GHashTable until
+ predicate returns %TRUE.  The function is passed the key and value of
+each pair, and the given @user_data parameter. The hash table may not
+be modified while iterating over it (you can't add/remove items).
 
-DBus type signatures consist of zero or more definite #GVariantType
-strings in sequence.
+Note, that hash tables are really only optimized for forward lookups,
+i.e. g_hash_table_lookup().
+So code that frequently issues g_hash_table_find() or
+g_hash_table_foreach() (e.g. in the order of once per every entry in a
+hash table) should probably be reworked to use additional or different
+data structures for reverse lookups (keep in mind that an O(n) find/foreach
+operation issued for all n values in a hash table ends up needing O(n*n)
+operations).
 
-Since: 2.24
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a normal C nul-terminated string
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @string is a DBus type signature
-</return>
-</function>
-
-<function name="g_variant_is_of_type">
-<description>
-Checks if a value has a type matching the provided type.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant instance
+<parameter name="predicate">
+<parameter_description>  function to test the key/value pairs for a certain property.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="user_data">
+<parameter_description>  user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the type of @value matches @type
+<return> The value of the first key/value pair is returned, for which
+func evaluates to %TRUE. If no pair with the requested property is found,
+%NULL is returned.
+
 </return>
 </function>
 
-<function name="g_slist_foreach">
+<function name="g_hash_table_foreach">
 <description>
-Calls a function for each element of a #GSList.
+Calls the given function for each of the key/value pairs in the
+#GHashTable.  The function is passed the key and value of each
+pair, and the given @user_data parameter.  The hash table may not
+be modified while iterating over it (you can't add/remove
+items). To remove all items matching a predicate, use
+g_hash_table_foreach_remove().
+
+See g_hash_table_find() for performance caveats for linear
+order searches in contrast to g_hash_table_lookup().
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
 <parameter name="func">
-<parameter_description> the function to call with each element's data
+<parameter_description> the function to call for each key/value pair.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data to pass to the function
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dir_open">
+<function name="g_hash_table_foreach_remove">
 <description>
-Opens a directory for reading. The names of the files in the
-directory can then be retrieved using g_dir_read_name().
+Calls the given function for each key/value pair in the #GHashTable.
+If the function returns %TRUE, then the key/value pair is removed from the
+#GHashTable. If you supplied key or value destroy functions when creating
+the #GHashTable, they are used to free the memory allocated for the removed
+keys and values.
+
+See #GHashTableIter for an alternative way to loop over the 
+key/value pairs in the hash table.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> the path to the directory you are interested in. On Unix
-in the on-disk encoding. On Windows in UTF-8
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Currently must be set to 0. Reserved for future use.
+<parameter name="func">
+<parameter_description> the function to call for each key/value pair.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL.
-If non-%NULL, an error will be set if and only if
-g_dir_open() fails.
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GDir on success, %NULL on failure.
-If non-%NULL, you must free the result with g_dir_close()
-when you are finished with it.
+<return> the number of key/value pairs removed.
 </return>
 </function>
 
-<function name="g_lstat">
+<function name="g_hash_table_foreach_steal">
 <description>
-A wrapper for the POSIX lstat() function. The lstat() function is
-like stat() except that in the case of symbolic links, it returns
-information about the symbolic link itself and not the file that it
-refers to. If the system does not support symbolic links g_lstat()
-is identical to g_stat().
+Calls the given function for each key/value pair in the #GHashTable.
+If the function returns %TRUE, then the key/value pair is removed from the
+#GHashTable, but no key or value destroy functions are called.
 
-See your C library manual for more details about lstat().
+See #GHashTableIter for an alternative way to loop over the 
+key/value pairs in the hash table.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-<parameter name="buf">
-<parameter_description> a pointer to a &lt;structname&gt;stat&lt;/structname&gt; struct, which
-will be filled with the file information
+<parameter name="func">
+<parameter_description> the function to call for each key/value pair.
 </parameter_description>
 </parameter>
-</parameters>
-<return> 0 if the information was successfully retrieved, -1 if an error 
-occurred
-
-</return>
-</function>
-
-<function name="g_array_get_element_size">
-<description>
-Gets the size of the elements in @array.
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="array">
-<parameter_description> A #GArray.
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Size of each element, in bytes.
-
+<return> the number of key/value pairs removed.
 </return>
 </function>
 
-<function name="g_test_bug_base">
+<function name="g_hash_table_get_keys">
 <description>
-Specify the base URI for bug reports.
-
-The base URI is used to construct bug report messages for
-g_test_message() when g_test_bug() is called.
-Calling this function outside of a test case sets the
-default base URI for all test cases. Calling it from within
-a test case changes the base URI for the scope of the test
-case only.
-Bug URIs are constructed by appending a bug specific URI
-portion to @uri_pattern, or by replacing the special string
-'%s' within @uri_pattern if that is present.
+Retrieves every key inside @hash_table. The returned data is valid
+until @hash_table is modified.
 
-Since: 2.16
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="uri_pattern">
-<parameter_description> the base pattern for bug URIs
+<parameter name="hash_table">
+<parameter_description> a #GHashTable
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GList containing all the keys inside the hash
+table. The content of the list is owned by the hash table and
+should not be modified or freed. Use g_list_free() when done
+using the list.
+
+</return>
 </function>
 
-<function name="g_strip_context">
+<function name="g_hash_table_get_values">
 <description>
-An auxiliary function for gettext() support (see Q_()).
+Retrieves every value inside @hash_table. The returned data is
+valid until @hash_table is modified.
 
-Since: 2.4
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="msgid">
-<parameter_description> a string
-</parameter_description>
-</parameter>
-<parameter name="msgval">
-<parameter_description> another string
+<parameter name="hash_table">
+<parameter_description> a #GHashTable
 </parameter_description>
 </parameter>
 </parameters>
-<return> @msgval, unless @msgval is identical to @msgid and contains
-a '|' character, in which case a pointer to the substring of msgid after
-the first '|' character is returned. 
+<return> a #GList containing all the values inside the hash
+table. The content of the list is owned by the hash table and
+should not be modified or freed. Use g_list_free() when done
+using the list.
 
 </return>
 </function>
 
-<function name="g_object_notify">
+<function name="g_hash_table_insert">
 <description>
-Emits a &quot;notify&quot; signal for the property @property_name on @object.
+Inserts a new key and value into a #GHashTable.
 
-When possible, eg. when signaling a property change from within the class
-that registered the property, you should use g_object_notify_by_pspec()
-instead.
+If the key already exists in the #GHashTable its current value is replaced
+with the new value. If you supplied a @value_destroy_func when creating the
+#GHashTable, the old value is freed using that function. If you supplied
+a @key_destroy_func when creating the #GHashTable, the passed key is freed
+using that function.
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> the name of a property installed on the class of @object.
+<parameter name="key">
+<parameter_description> a key to insert.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> the value to associate with the key.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_init">
+<function name="g_hash_table_iter_get_hash_table">
 <description>
-A statically-allocated #GQueue must be initialized with this function
-before it can be used. Alternatively you can initialize it with
-#G_QUEUE_INIT. It is not necessary to initialize queues created with
-g_queue_new().
+Returns the #GHashTable associated with @iter.
 
-Since: 2.14
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> an uninitialized #GQueue
+<parameter name="iter">
+<parameter_description> an initialized #GHashTableIter.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GHashTable associated with @iter.
+
+</return>
 </function>
 
-<function name="g_match_info_expand_references">
+<function name="g_hash_table_iter_init">
 <description>
-Returns a new string containing the text in @string_to_expand with
-references and escape sequences expanded. References refer to the last
-match done with @string against @regex and have the same syntax used by
-g_regex_replace().
-
-The @string_to_expand must be UTF-8 encoded even if #G_REGEX_RAW was
-passed to g_regex_new().
-
-The backreferences are extracted from the string passed to the match
-function, so you cannot call this function after freeing the string.
+Initializes a key/value pair iterator and associates it with
+ hash_table  Modifying the hash table after calling this function
+invalidates the returned iterator.
+|[
+GHashTableIter iter;
+gpointer key, value;
 
- match_info may be %NULL in which case @string_to_expand must not
-contain references. For instance &quot;foo\n&quot; does not refer to an actual
-pattern and '\n' merely will be replaced with \n character,
-while to expand &quot;\0&quot; (whole match) one needs the result of a match.
-Use g_regex_check_replacement() to find out whether @string_to_expand
-contains references.
+g_hash_table_iter_init (&amp;iter, hash_table);
+while (g_hash_table_iter_next (&amp;iter, &amp;key, &amp;value)) 
+{
+/ * do something with key and value * /
+}
+]|
 
-Since: 2.14
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo or %NULL
-</parameter_description>
-</parameter>
-<parameter name="string_to_expand">
-<parameter_description> the string to expand
+<parameter name="iter">
+<parameter_description> an uninitialized #GHashTableIter.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore errors
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the expanded string, or %NULL if an error occurred
-
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_char">
+<function name="g_hash_table_iter_next">
 <description>
-Creates a new #GParamSpecChar instance specifying a %G_TYPE_CHAR property.
+Advances @iter and retrieves the key and/or value that are now
+pointed to as a result of this advancement. If %FALSE is returned,
+ key and @value are not set, and the iterator becomes invalid.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
+<parameter name="iter">
+<parameter_description> an initialized #GHashTableIter.
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="key">
+<parameter_description> a location to store the key, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="value">
+<parameter_description> a location to store the value, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> %FALSE if the end of the #GHashTable has been reached.
+
 </return>
 </function>
 
-<function name="g_datalist_set_data_full">
+<function name="g_hash_table_iter_remove">
 <description>
-Sets the data element corresponding to the given string identifier,
-and the function to be called when the data element is removed.
+Removes the key/value pair currently pointed to by the iterator
+from its associated #GHashTable. Can only be called after
+g_hash_table_iter_next() returned %TRUE, and cannot be called more
+than once for the same key/value pair.
+
+If the #GHashTable was created using g_hash_table_new_full(), the
+key and value are freed using the supplied destroy functions, otherwise
+you have to make sure that any dynamically allocated values are freed 
+yourself.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string to identify the data element.
-</parameter_description>
-</parameter>
-<parameter name="d">
-<parameter_description> the data element, or %NULL to remove any previous element
-corresponding to @k.
-</parameter_description>
-</parameter>
-<parameter name="f">
-<parameter_description> the function to call when the data element is removed. This
-function will be called with the data element and can be used to
-free any memory allocated for it. If @d is %NULL, then @f must
-also be %NULL.
+<parameter name="iter">
+<parameter_description> an initialized #GHashTableIter.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_classify">
+<function name="g_hash_table_iter_steal">
 <description>
-Classifies @value according to its top-level type.
+Removes the key/value pair currently pointed to by the iterator
+from its associated #GHashTable, without calling the key and value
+destroy functions. Can only be called after
+g_hash_table_iter_next() returned %TRUE, and cannot be called more
+than once for the same key/value pair.
 
-Since: 2.24
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="iter">
+<parameter_description> an initialized #GHashTableIter.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GVariantClass of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_main_context_set_poll_func">
+<function name="g_hash_table_lookup">
 <description>
-Sets the function to use to handle polling of file descriptors. It
-will be used instead of the poll() system call 
-(or GLib's replacement function, which is used where 
-poll() isn't available).
+Looks up a key in a #GHashTable. Note that this function cannot
+distinguish between a key that is not present and one which is present
+and has the value %NULL. If you need this distinction, use
+g_hash_table_lookup_extended().
 
-This function could possibly be used to integrate the GLib event
-loop with an external event loop.
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to call to poll all file descriptors
+<parameter name="key">
+<parameter_description> the key to look up.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the associated value, or %NULL if the key is not found.
+</return>
 </function>
 
-<function name="g_queue_pop_tail">
+<function name="g_hash_table_lookup_extended">
 <description>
-Removes the last element of the queue.
+Looks up a key in the #GHashTable, returning the original key and the
+associated value and a #gboolean which is %TRUE if the key was found. This
+is useful if you need to free the memory allocated for the original key,
+for example before calling g_hash_table_remove().
+
+You can actually pass %NULL for @lookup_key to test
+whether the %NULL key exists.
 
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="hash_table">
+<parameter_description> a #GHashTable
+</parameter_description>
+</parameter>
+<parameter name="lookup_key">
+<parameter_description> the key to look up
+</parameter_description>
+</parameter>
+<parameter name="orig_key">
+<parameter_description> return location for the original key, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> return location for the value associated with the key, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data of the last element in the queue, or %NULL if the queue
-is empty.
+<return> %TRUE if the key was found in the #GHashTable.
 </return>
 </function>
 
-<function name="g_value_dup_param">
+<function name="g_hash_table_new">
 <description>
-Get the contents of a %G_TYPE_PARAM #GValue, increasing its
-reference count.
+Creates a new #GHashTable with a reference count of 1.
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_PARAM
+<parameter name="hash_func">
+<parameter_description> a function to create a hash value from a key.
+Hash values are used to determine where keys are stored within the
+#GHashTable data structure. The g_direct_hash(), g_int_hash(),
+g_int64_hash(), g_double_hash() and g_str_hash() functions are provided
+for some common types of keys.
+If hash_func is %NULL, g_direct_hash() is used.
+</parameter_description>
+</parameter>
+<parameter name="key_equal_func">
+<parameter_description> a function to check two keys for equality.  This is
+used when looking up keys in the #GHashTable.  The g_direct_equal(),
+g_int_equal(), g_int64_equal(), g_double_equal() and g_str_equal()
+functions are provided for the most common types of keys.
+If @key_equal_func is %NULL, keys are compared directly in a similar
+fashion to g_direct_equal(), but without the overhead of a function call.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GParamSpec content of @value, should be unreferenced when
-no longer needed.
+<return> a new #GHashTable.
 </return>
 </function>
 
-<function name="g_array_sized_new">
+<function name="g_hash_table_new_full">
 <description>
-Creates a new #GArray with @reserved_size elements preallocated and
-a reference count of 1. This avoids frequent reallocation, if you
-are going to add many elements to the array. Note however that the
-size of the array is still 0.
+Creates a new #GHashTable like g_hash_table_new() with a reference count
+of 1 and allows to specify functions to free the memory allocated for the
+key and value that get called when removing the entry from the #GHashTable.
+
 
 </description>
 <parameters>
-<parameter name="zero_terminated">
-<parameter_description> %TRUE if the array should have an extra element at
-the end with all bits cleared.
+<parameter name="hash_func">
+<parameter_description> a function to create a hash value from a key.
 </parameter_description>
 </parameter>
-<parameter name="clear_">
-<parameter_description> %TRUE if all bits in the array should be cleared to 0 on
-allocation.
+<parameter name="key_equal_func">
+<parameter_description> a function to check two keys for equality.
 </parameter_description>
 </parameter>
-<parameter name="element_size">
-<parameter_description> size of each element in the array.
+<parameter name="key_destroy_func">
+<parameter_description> a function to free the memory allocated for the key
+used when removing the entry from the #GHashTable or %NULL if you
+don't want to supply such a function.
 </parameter_description>
 </parameter>
-<parameter name="reserved_size">
-<parameter_description> number of elements preallocated.
+<parameter name="value_destroy_func">
+<parameter_description> a function to free the memory allocated for the
+value used when removing the entry from the #GHashTable or %NULL if
+you don't want to supply such a function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GArray.
+<return> a new #GHashTable.
 </return>
 </function>
 
-<function name="g_utf8_strncpy">
+<function name="g_hash_table_ref">
 <description>
-Like the standard C strncpy() function, but 
-copies a given number of characters instead of a given number of 
-bytes. The @src string must be valid UTF-8 encoded text. 
-(Use g_utf8_validate() on all text before trying to use UTF-8 
-utility functions with it.)
+Atomically increments the reference count of @hash_table by one.
+This function is MT-safe and may be called from any thread.
 
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> buffer to fill with characters from @src
-</parameter_description>
-</parameter>
-<parameter name="src">
-<parameter_description> UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="n">
-<parameter_description> character count
+<parameter name="hash_table">
+<parameter_description> a valid #GHashTable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @dest
+<return> the passed in #GHashTable.
+
 </return>
 </function>
 
-<function name="g_filename_display_name">
+<function name="g_hash_table_remove">
 <description>
-Converts a filename into a valid UTF-8 string. The conversion is 
-not necessarily reversible, so you should keep the original around 
-and use the return value of this function only for display purposes.
-Unlike g_filename_to_utf8(), the result is guaranteed to be non-%NULL 
-even if the filename actually isn't in the GLib file name encoding.
-
-If GLib can not make sense of the encoding of @filename, as a last resort it 
-replaces unknown characters with U+FFFD, the Unicode replacement character.
-You can search the result for the UTF-8 encoding of this character (which is
-&quot;\357\277\275&quot; in octal notation) to find out if @filename was in an invalid
-encoding.
+Removes a key and its associated value from a #GHashTable.
 
-If you know the whole pathname of the file you should use
-g_filename_display_basename(), since that allows location-based
-translation of filenames.
+If the #GHashTable was created using g_hash_table_new_full(), the
+key and value are freed using the supplied destroy functions, otherwise
+you have to make sure that any dynamically allocated values are freed
+yourself.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname hopefully in the GLib file name encoding
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> the key to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing
-a rendition of the filename in valid UTF-8
-
+<return> %TRUE if the key was found and removed from the #GHashTable.
 </return>
 </function>
 
-<function name="g_cond_broadcast">
+<function name="g_hash_table_remove_all">
 <description>
-If threads are waiting for @cond, all of them are woken up. It is
-good practice to lock the same mutex as the waiting threads, while
-calling this function, though not required.
+Removes all keys and their associated values from a #GHashTable.
 
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will do nothing.
+If the #GHashTable was created using g_hash_table_new_full(), the keys
+and values are freed using the supplied destroy functions, otherwise you
+have to make sure that any dynamically allocated values are freed
+yourself.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="cond">
-<parameter_description> a #GCond.
+<parameter name="hash_table">
+<parameter_description> a #GHashTable
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_error_copy">
+<function name="g_hash_table_replace">
 <description>
-Makes a copy of @error.
-
+Inserts a new key and value into a #GHashTable similar to
+g_hash_table_insert(). The difference is that if the key already exists
+in the #GHashTable, it gets replaced by the new key. If you supplied a
+ value_destroy_func when creating the #GHashTable, the old value is freed
+using that function. If you supplied a @key_destroy_func when creating the
+#GHashTable, the old key is freed using that function.
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> a #GError
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new #GError
-</return>
-</function>
-
-<function name="g_value_array_append">
-<description>
-Insert a copy of @value as last element of @value_array. If @value is
-%NULL, an uninitialized value is appended.
-
-
-</description>
-<parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to add an element to
+<parameter name="key">
+<parameter_description> a key to insert.
 </parameter_description>
 </parameter>
 <parameter name="value">
-<parameter_description> #GValue to copy into #GValueArray, or %NULL
+<parameter_description> the value to associate with the key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GValueArray passed in as @value_array
-</return>
+<return></return>
 </function>
 
-<function name="g_io_channel_unix_get_fd">
+<function name="g_hash_table_size">
 <description>
-Returns the file descriptor of the #GIOChannel.
+Returns the number of elements contained in the #GHashTable.
 
-On Windows this function returns the file descriptor or socket of
-the #GIOChannel.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel, created with g_io_channel_unix_new().
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the file descriptor of the #GIOChannel.
+<return> the number of key/value pairs in the #GHashTable.
 </return>
 </function>
 
-<function name="g_ascii_strup">
+<function name="g_hash_table_steal">
 <description>
-Converts all lower case ASCII letters to upper case ASCII letters.
+Removes a key and its associated value from a #GHashTable without
+calling the key and value destroy functions.
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a string.
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> length of @str in bytes, or -1 if @str is nul-terminated.
+<parameter name="key">
+<parameter_description> the key to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string, with all the lower case
-characters in @str converted to upper case, with
-semantics that exactly match g_ascii_toupper(). (Note
-that this is unlike the old g_strup(), which modified
-the string in place.)
+<return> %TRUE if the key was found and removed from the #GHashTable.
 </return>
 </function>
 
-<function name="g_source_attach">
+<function name="g_hash_table_steal_all">
 <description>
-Adds a #GSource to a @context so that it will be executed within
-that context. Remove it by calling g_source_destroy().
+Removes all keys and their associated values from a #GHashTable
+without calling the key and value destroy functions.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
-</parameter_description>
-</parameter>
-<parameter name="context">
-<parameter_description> a #GMainContext (if %NULL, the default context will be used)
+<parameter name="hash_table">
+<parameter_description> a #GHashTable.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) for the source within the 
-#GMainContext. 
-</return>
+<return></return>
 </function>
 
-<function name="g_value_set_boolean">
+<function name="g_hash_table_unref">
 <description>
-Set the contents of a %G_TYPE_BOOLEAN #GValue to @v_boolean.
+Atomically decrements the reference count of @hash_table by one.
+If the reference count drops to 0, all keys and values will be
+destroyed, and all memory allocated by the hash table is released.
+This function is MT-safe and may be called from any thread.
+
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_BOOLEAN
-</parameter_description>
-</parameter>
-<parameter name="v_boolean">
-<parameter_description> boolean value to be set
+<parameter name="hash_table">
+<parameter_description> a valid #GHashTable.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_thread_supported">
+<function name="g_hostname_is_ascii_encoded">
 <description>
-This function returns %TRUE if the thread system is initialized, and
-%FALSE if it is not.
-
-&lt;note&gt;&lt;para&gt;This function is actually a macro. Apart from taking the
-address of it you can however use it as if it was a
-function.&lt;/para&gt;&lt;/note&gt;
-
-</description>
-<parameters>
-</parameters>
-<return> %TRUE, if the thread system is initialized.
-</return>
-</function>
+Tests if @hostname contains segments with an ASCII-compatible
+encoding of an Internationalized Domain Name. If this returns
+%TRUE, you should decode the hostname with g_hostname_to_unicode()
+before displaying it to the user.
 
-<function name="g_value_set_string_take_ownership">
-<description>
-This is an internal function introduced mainly for C marshallers.
+Note that a hostname might contain a mix of encoded and unencoded
+segments, and so it is possible for g_hostname_is_non_ascii() and
+g_hostname_is_ascii_encoded() to both return %TRUE for a name.
 
-Deprecated: 2.4: Use g_value_take_string() instead.
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_STRING
-</parameter_description>
-</parameter>
-<parameter name="v_string">
-<parameter_description> duplicated unowned string to be set
+<parameter name="hostname">
+<parameter_description> a hostname
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="g_async_queue_new">
-<description>
-Creates a new asynchronous queue with the initial reference count of 1.
-
+<return> %TRUE if @hostname contains any ASCII-encoded
+segments.
 
-</description>
-<parameters>
-</parameters>
-<return> the new #GAsyncQueue.
 </return>
 </function>
 
-<function name="g_type_interface_add_prerequisite">
+<function name="g_hostname_is_ip_address">
 <description>
-Adds @prerequisite_type to the list of prerequisites of @interface_type.
-This means that any type implementing @interface_type must also implement
- prerequisite_type  Prerequisites can be thought of as an alternative to
-interface derivation (which GType doesn't support). An interface can have
-at most one instantiatable prerequisite type.
+Tests if @hostname is the string form of an IPv4 or IPv6 address.
+(Eg, &quot;192.168.0.1&quot;.)
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="interface_type">
-<parameter_description> #GType value of an interface type.
-</parameter_description>
-</parameter>
-<parameter name="prerequisite_type">
-<parameter_description> #GType value of an interface or instantiatable type.
+<parameter name="hostname">
+<parameter_description> a hostname (or IP address in string form)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @hostname is an IP address
+
+</return>
 </function>
 
-<function name="g_uri_list_extract_uris">
+<function name="g_hostname_is_non_ascii">
 <description>
-Splits an URI list conforming to the text/uri-list
-mime type defined in RFC 2483 into individual URIs,
-discarding any comments. The URIs are not validated.
+Tests if @hostname contains Unicode characters. If this returns
+%TRUE, you need to encode the hostname with g_hostname_to_ascii()
+before using it in non-IDN-aware contexts.
 
-Since: 2.6
+Note that a hostname might contain a mix of encoded and unencoded
+segments, and so it is possible for g_hostname_is_non_ascii() and
+g_hostname_is_ascii_encoded() to both return %TRUE for a name.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="uri_list">
-<parameter_description> an URI list 
+<parameter name="hostname">
+<parameter_description> a hostname
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated %NULL-terminated list of
-strings holding the individual URIs. The array should
-be freed with g_strfreev().
+<return> %TRUE if @hostname contains any non-ASCII characters
 
 </return>
 </function>
 
-<function name="g_filename_to_uri">
+<function name="g_hostname_to_ascii">
 <description>
-Converts an absolute filename to an escaped ASCII-encoded URI, with the path
-component following Section 3.3. of RFC 2396.
+Converts @hostname to its canonical ASCII form; an ASCII-only
+string containing no uppercase letters and not ending with a
+trailing dot.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> an absolute filename specified in the GLib file name encoding,
-which is the on-disk file name bytes on Unix, and UTF-8 on 
-Windows
-</parameter_description>
-</parameter>
 <parameter name="hostname">
-<parameter_description> A UTF-8 encoded hostname, or %NULL for none.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
+<parameter_description> a valid UTF-8 or ASCII hostname
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string holding the resulting
-URI, or %NULL on an error.
+<return> an ASCII hostname, which must be freed, or %NULL if
+ hostname is in some way invalid.
+
 </return>
 </function>
 
-<function name="g_variant_compare">
+<function name="g_hostname_to_unicode">
 <description>
-Compares @one and @two.
-
-The types of @one and @two are #gconstpointer only to allow use of
-this function with #GTree, #GPtrArray, etc.  They must each be a
-#GVariant.
-
-Comparison is only defined for basic types (ie: booleans, numbers,
-strings).  For booleans, %FALSE is less than %TRUE.  Numbers are
-ordered in the usual way.  Strings are in ASCII lexographical order.
-
-It is a programmer error to attempt to compare container values or
-two values that have types that are not exactly equal.  For example,
-you can not compare a 32-bit signed integer with a 32-bit unsigned
-integer.  Also note that this function is not particularly
-well-behaved when it comes to comparison of doubles; in particular,
-the handling of incomparable values (ie: NaN) is undefined.
+Converts @hostname to its canonical presentation form; a UTF-8
+string in Unicode normalization form C, containing no uppercase
+letters, no forbidden characters, and no ASCII-encoded segments,
+and not ending with a trailing dot.
 
-If you only require an equality comparison, g_variant_equal() is more
-general.
+Of course if @hostname is not an internationalized hostname, then
+the canonical presentation form will be entirely ASCII.
 
-Since: 2.26
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="one">
-<parameter_description> a basic-typed #GVariant instance
-</parameter_description>
-</parameter>
-<parameter name="two">
-<parameter_description> a #GVariant instance of the same type
+<parameter name="hostname">
+<parameter_description> a valid UTF-8 or ASCII hostname
 </parameter_description>
 </parameter>
 </parameters>
-<return> negative value if a &lt; b;
-zero if a = b;
-positive value if a &gt; b.
+<return> a UTF-8 hostname, which must be freed, or %NULL if
+ hostname is in some way invalid.
+
 </return>
 </function>
 
-<function name="g_uri_escape_string">
+<function name="g_iconv">
 <description>
-Escapes a string for use in a URI.
+Same as the standard UNIX routine iconv(), but
+may be implemented via libiconv on UNIX flavors that lack
+a native implementation.
 
-Normally all characters that are not &quot;unreserved&quot; (i.e. ASCII alphanumerical
-characters plus dash, dot, underscore and tilde) are escaped.
-But if you specify characters in @reserved_chars_allowed they are not
-escaped. This is useful for the &quot;reserved&quot; characters in the URI
-specification, since those are allowed unescaped in some portions of
-a URI. 
+GLib provides g_convert() and g_locale_to_utf8() which are likely
+more convenient than the raw iconv wrappers.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="unescaped">
-<parameter_description> the unescaped input string.
+<parameter name="converter">
+<parameter_description> conversion descriptor from g_iconv_open()
 </parameter_description>
 </parameter>
-<parameter name="reserved_chars_allowed">
-<parameter_description> a string of reserved characters that are
-allowed to be used, or %NULL.
+<parameter name="inbuf">
+<parameter_description> bytes to convert
 </parameter_description>
 </parameter>
-<parameter name="allow_utf8">
-<parameter_description> %TRUE if the result can include UTF-8 characters.
+<parameter name="inbytes_left">
+<parameter_description> inout parameter, bytes remaining to convert in @inbuf
 </parameter_description>
 </parameter>
-</parameters>
-<return> an escaped version of @unescaped. The returned string should be 
-freed when no longer needed.
-
-</return>
-</function>
-
-<function name="g_string_chunk_insert_const">
-<description>
-Adds a copy of @string to the #GStringChunk, unless the same
-string has already been added to the #GStringChunk with
-g_string_chunk_insert_const().
-
-This function is useful if you need to copy a large number
-of strings but do not want to waste space storing duplicates.
-But you must remember that there may be several pointers to
-the same string, and so any changes made to the strings
-should be done very carefully.
-
-Note that g_string_chunk_insert_const() will not return a
-pointer to a string added with g_string_chunk_insert(), even
-if they do match.
-
-
-</description>
-<parameters>
-<parameter name="chunk">
-<parameter_description> a #GStringChunk
+<parameter name="outbuf">
+<parameter_description> converted output bytes
 </parameter_description>
 </parameter>
-<parameter name="string">
-<parameter_description> the string to add
+<parameter name="outbytes_left">
+<parameter_description> inout parameter, bytes available to fill in @outbuf
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the new or existing copy of @string
-within the #GStringChunk
+<return> count of non-reversible conversions, or -1 on error
 </return>
 </function>
 
-<function name="g_hostname_is_ascii_encoded">
+<function name="g_iconv_close">
 <description>
-Tests if @hostname contains segments with an ASCII-compatible
-encoding of an Internationalized Domain Name. If this returns
-%TRUE, you should decode the hostname with g_hostname_to_unicode()
-before displaying it to the user.
+Same as the standard UNIX routine iconv_close(), but
+may be implemented via libiconv on UNIX flavors that lack
+a native implementation. Should be called to clean up
+the conversion descriptor from g_iconv_open() when
+you are done converting things.
 
-Note that a hostname might contain a mix of encoded and unencoded
-segments, and so it is possible for g_hostname_is_non_ascii() and
-g_hostname_is_ascii_encoded() to both return %TRUE for a name.
+GLib provides g_convert() and g_locale_to_utf8() which are likely
+more convenient than the raw iconv wrappers.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="hostname">
-<parameter_description> a hostname
+<parameter name="converter">
+<parameter_description> a conversion descriptor from g_iconv_open()
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @hostname contains any ASCII-encoded
-segments.
-
+<return> -1 on error, 0 on success
 </return>
 </function>
 
-<function name="g_test_maximized_result">
+<function name="g_iconv_open">
 <description>
-Report the result of a performance or measurement test.
-The test should generally strive to maximize the reported
-quantities (larger values are better than smaller ones),
-this and @maximized_quantity can determine sorting
-order for test result reports.
+Same as the standard UNIX routine iconv_open(), but
+may be implemented via libiconv on UNIX flavors that lack
+a native implementation.
+
+GLib provides g_convert() and g_locale_to_utf8() which are likely
+more convenient than the raw iconv wrappers.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="maximized_quantity">
-<parameter_description> the reported value
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> the format string of the report message
+<parameter name="to_codeset">
+<parameter_description> destination codeset
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments to pass to the printf() function
+<parameter name="from_codeset">
+<parameter_description> source codeset
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a &quot;conversion descriptor&quot;, or (GIConv)-1 if
+opening the converter failed.
+</return>
 </function>
 
-<function name="g_unicode_canonical_decomposition">
+<function name="g_idle_add">
 <description>
-Computes the canonical decomposition of a Unicode character.  
+Adds a function to be called whenever there are no higher priority
+events pending to the default main loop. The function is given the
+default idle priority, #G_PRIORITY_DEFAULT_IDLE.  If the function
+returns %FALSE it is automatically removed from the list of event
+sources and will not be called again.
+
+This internally creates a main loop source using g_idle_source_new()
+and attaches it to the main loop context using g_source_attach(). 
+You can do these steps manually if you need greater control.
 
 
 </description>
 <parameters>
-<parameter name="ch">
-<parameter_description> a Unicode character.
+<parameter name="function">
+<parameter_description> function to call 
 </parameter_description>
 </parameter>
-<parameter name="result_len">
-<parameter_description> location to store the length of the return value.
+<parameter name="data">
+<parameter_description> data to pass to @function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string of Unicode characters.
- result_len is set to the resulting length of the string.
+<return> the ID (greater than 0) of the event source.
 </return>
 </function>
 
-<function name="g_node_get_root">
+<function name="g_idle_add_full">
 <description>
-Gets the root of a tree.
+Adds a function to be called whenever there are no higher priority
+events pending.  If the function returns %FALSE it is automatically
+removed from the list of event sources and will not be called again.
+
+This internally creates a main loop source using g_idle_source_new()
+and attaches it to the main loop context using g_source_attach(). 
+You can do these steps manually if you need greater control.
 
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="priority">
+<parameter_description> the priority of the idle source. Typically this will be in the
+range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.
+</parameter_description>
+</parameter>
+<parameter name="function">
+<parameter_description> function to call
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description>     data to pass to @function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description>   function to call when the idle is removed, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the root of the tree
+<return> the ID (greater than 0) of the event source.
 </return>
 </function>
 
-<function name="g_rand_int">
+<function name="g_idle_remove_by_data">
 <description>
-Returns the next random #guint32 from @rand_ equally distributed over
-the range [0..2^32-1].
+Removes the idle function with the given data.
 
 
 </description>
 <parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="data">
+<parameter_description> the data for the idle source's callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A random number.
+<return> %TRUE if an idle source was found and removed.
 </return>
 </function>
 
-<function name="g_value_copy">
+<function name="g_idle_source_new">
 <description>
-Copies the value of @src_value into @dest_value.
+Creates a new idle source.
+
+The source will not initially be associated with any #GMainContext
+and must be added to one with g_source_attach() before it will be
+executed. Note that the default priority for idle sources is
+%G_PRIORITY_DEFAULT_IDLE, as compared to other sources which
+have a default priority of %G_PRIORITY_DEFAULT.
+
 
 </description>
 <parameters>
-<parameter name="src_value">
-<parameter_description> An initialized #GValue structure.
-</parameter_description>
-</parameter>
-<parameter name="dest_value">
-<parameter_description> An initialized #GValue structure of the same type as @src_value.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the newly-created idle source
+</return>
 </function>
 
-<function name="g_hash_table_foreach">
+<function name="g_int64_equal">
 <description>
-Calls the given function for each of the key/value pairs in the
-#GHashTable.  The function is passed the key and value of each
-pair, and the given @user_data parameter.  The hash table may not
-be modified while iterating over it (you can't add/remove
-items). To remove all items matching a predicate, use
-g_hash_table_foreach_remove().
+Compares the two #gint64 values being pointed to and returns 
+%TRUE if they are equal.
+It can be passed to g_hash_table_new() as the @key_equal_func
+parameter, when using pointers to 64-bit integers as keys in a #GHashTable.
 
-See g_hash_table_find() for performance caveats for linear
-order searches in contrast to g_hash_table_lookup().
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each key/value pair.
+<parameter name="v1">
+<parameter_description> a pointer to a #gint64 key.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="v2">
+<parameter_description> a pointer to a #gint64 key to compare with @v1.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the two keys match.
+
+</return>
 </function>
 
-<function name="g_variant_type_n_items">
+<function name="g_int64_hash">
 <description>
-Determines the number of items contained in a tuple or
-dictionary entry type.
-
-This function may only be used with tuple or dictionary entry types,
-but must not be used with the generic tuple type
-%G_VARIANT_TYPE_TUPLE.
-
-In the case of a dictionary entry type, this function will always
-return 2.
+Converts a pointer to a #gint64 to a hash value.
+It can be passed to g_hash_table_new() as the @hash_func parameter, 
+when using pointers to 64-bit integers values as keys in a #GHashTable.
 
-Since 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a tuple or dictionary entry #GVariantType
+<parameter name="v">
+<parameter_description> a pointer to a #gint64 key
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of items in @type
+<return> a hash value corresponding to the key.
+
 </return>
 </function>
 
-<function name="g_sequence_append">
+<function name="g_int_equal">
 <description>
-Adds a new item to the end of @seq.
+Compares the two #gint values being pointed to and returns 
+%TRUE if they are equal.
+It can be passed to g_hash_table_new() as the @key_equal_func
+parameter, when using pointers to integers as keys in a #GHashTable.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequencePointer
+<parameter name="v1">
+<parameter_description> a pointer to a #gint key.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data for the new item
+<parameter name="v2">
+<parameter_description> a pointer to a #gint key to compare with @v1.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an iterator pointing to the new item
-
+<return> %TRUE if the two keys match.
 </return>
 </function>
 
-<function name="g_datalist_set_data">
+<function name="g_int_hash">
 <description>
-Sets the data element corresponding to the given string identifier.
+Converts a pointer to a #gint to a hash value.
+It can be passed to g_hash_table_new() as the @hash_func parameter, 
+when using pointers to integers values as keys in a #GHashTable.
+
 
 </description>
 <parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string to identify the data element.
-</parameter_description>
-</parameter>
-<parameter name="d">
-<parameter_description> the data element, or %NULL to remove any previous element
-corresponding to @k.
+<parameter name="v">
+<parameter_description> a pointer to a #gint key
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a hash value corresponding to the key.
+</return>
 </function>
 
-<function name="g_nullify_pointer">
+<function name="g_intern_static_string">
 <description>
-Set the pointer at the specified location to %NULL.
+Returns a canonical representation for @string. Interned strings can
+be compared for equality by comparing the pointers, instead of using strcmp().
+g_intern_static_string() does not copy the string, therefore @string must
+not be freed or modified. 
+
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="nullify_location">
-<parameter_description> the memory address of the pointer.
+<parameter name="string">
+<parameter_description> a static string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a canonical representation for the string
+
+</return>
 </function>
 
-<function name="g_test_init">
+<function name="g_intern_string">
 <description>
-Initialize the GLib testing framework, e.g. by seeding the
-test random number generator, the name for g_get_prgname()
-and parsing test related command line args.
-So far, the following arguments are understood:
-&lt;variablelist&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;-l&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-list test cases available in a test executable.
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;--seed=&lt;replaceable&gt;RANDOMSEED&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-provide a random seed to reproduce test runs using random numbers.
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;--verbose&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;run tests verbosely.&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;-q&lt;/option&gt;, &lt;option&gt;--quiet&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;run tests quietly.&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;-p &lt;replaceable&gt;TESTPATH&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-execute all tests matching &lt;replaceable&gt;TESTPATH&lt;/replaceable&gt;.
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;-m {perf|slow|thorough|quick}&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-execute tests according to these test modes:
-&lt;variablelist&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;perf&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-performance tests, may take long and report results.
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;slow, thorough&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-slow and thorough tests, may take quite long and 
-maximize coverage.
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;quick&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-quick tests, should run really quickly and give good coverage.
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;/variablelist&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;--debug-log&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;debug test logging output.&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;-k&lt;/option&gt;, &lt;option&gt;--keep-going&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;gtester-specific argument.&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;--GTestLogFD &lt;replaceable&gt;N&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;gtester-specific argument.&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;&lt;option&gt;--GTestSkipCount &lt;replaceable&gt;N&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;gtester-specific argument.&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;/variablelist&gt;
+Returns a canonical representation for @string. Interned strings can
+be compared for equality by comparing the pointers, instead of using strcmp().
 
-Since: 2.16
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="argc">
-<parameter_description> Address of the @argc parameter of the main() function.
-Changed if any arguments were handled.
-</parameter_description>
-</parameter>
-<parameter name="argv">
-<parameter_description> Address of the @argv parameter of main().
-Any parameters understood by g_test_init() stripped before return.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> Reserved for future extension. Currently, you must pass %NULL.
+<parameter name="string">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a canonical representation for the string
+
+</return>
 </function>
 
-<function name="g_key_file_set_locale_string">
+<function name="g_io_add_watch">
 <description>
-Associates a string value for @key and @locale under @group_name.
-If the translation for @key cannot be found then it is created.
+Adds the #GIOChannel into the default main loop context
+with the default priority.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="locale">
-<parameter_description> a locale identifier
+<parameter name="condition">
+<parameter_description> the condition to watch for
 </parameter_description>
 </parameter>
-<parameter name="string">
-<parameter_description> a string
+<parameter name="func">
+<parameter_description> the function to call when the condition is satisfied
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_bookmark_file_free">
-<description>
-Frees a #GBookmarkFile.
-
-Since: 2.12
-
-</description>
-<parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="user_data">
+<parameter_description> user data to pass to @func
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the event source id
+</return>
 </function>
 
-<function name="g_regex_match_full">
+<function name="g_io_add_watch_full">
 <description>
-Scans for a match in string for the pattern in @regex.
-The @match_options are combined with the match options specified
-when the @regex structure was created, letting you have more
-flexibility in reusing #GRegex structures.
-
-Setting @start_position differs from just passing over a shortened
-string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
-that begins with any kind of lookbehind assertion, such as &quot;\b&quot;.
-
-A #GMatchInfo structure, used to get information on the match, is
-stored in @match_info if not %NULL. Note that if @match_info is
-not %NULL then it is created even if the function returns %FALSE,
-i.e. you must free it regardless if regular expression actually
-matched.
-
- string is not copied and is used in #GMatchInfo internally. If
-you use any #GMatchInfo method (except g_match_info_free()) after
-freeing or modifying @string then the behaviour is undefined.
-
-To retrieve all the non-overlapping matches of the pattern in
-string you can use g_match_info_next().
+Adds the #GIOChannel into the default main loop context
+with the given priority.
 
-|[
-static void
-print_uppercase_words (const gchar *string)
-{
-/ * Print all uppercase-only words. * /
-GRegex *regex;
-GMatchInfo *match_info;
-GError *error = NULL;
-&#160;
-regex = g_regex_new (&quot;[A-Z]+&quot;, 0, 0, NULL);
-g_regex_match_full (regex, string, -1, 0, 0, &amp;match_info, &amp;error);
-while (g_match_info_matches (match_info))
-{
-gchar *word = g_match_info_fetch (match_info, 0);
-g_print (&quot;Found: %s\n&quot;, word);
-g_free (word);
-g_match_info_next (match_info, &amp;error);
-}
-g_match_info_free (match_info);
-g_regex_unref (regex);
-if (error != NULL)
-{
-g_printerr (&quot;Error while matching: %s\n&quot;, error-&gt;message);
-g_error_free (error);
-}
-}
-]|
+This internally creates a main loop source using g_io_create_watch()
+and attaches it to the main loop context with g_source_attach().
+You can do these steps manually if you need greater control.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure from g_regex_new()
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to scan for matches
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="string_len">
-<parameter_description> the length of @string, or -1 if @string is nul-terminated
+<parameter name="priority">
+<parameter_description> the priority of the #GIOChannel source
 </parameter_description>
 </parameter>
-<parameter name="start_position">
-<parameter_description> starting index of the string to match
+<parameter name="condition">
+<parameter_description> the condition to watch for
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> match options
+<parameter name="func">
+<parameter_description> the function to call when the condition is satisfied
 </parameter_description>
 </parameter>
-<parameter name="match_info">
-<parameter_description> pointer to location where to store
-the #GMatchInfo, or %NULL if you do not need it
+<parameter name="user_data">
+<parameter_description> user data to pass to @func
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore errors
+<parameter name="notify">
+<parameter_description> the function to call when the source is removed
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the string matched, %FALSE otherwise
-
+<return> the event source id
 </return>
 </function>
 
-<function name="g_key_file_set_string_list">
+<function name="g_io_channel_close">
 <description>
-Associates a list of string values for @key under @group_name.
-If @key cannot be found then it is created.
-If @group_name cannot be found then it is created.
+Close an IO channel. Any pending data to be written will be
+flushed, ignoring errors. The channel will not be freed until the
+last reference is dropped using g_io_channel_unref(). 
 
-Since: 2.6
+Deprecated:2.2: Use g_io_channel_shutdown() instead.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="list">
-<parameter_description> an array of string values
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> number of string values in @list
+<parameter name="channel">
+<parameter_description> A #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_param_spec_override">
+<function name="g_io_channel_error_from_errno">
 <description>
-Creates a new property of type #GParamSpecOverride. This is used
-to direct operations to another paramspec, and will not be directly
-useful unless you are implementing a new base type similar to GObject.
-
-Since: 2.4
+Converts an &lt;literal&gt;errno&lt;/literal&gt; error number to a #GIOChannelError.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name of the property.
-</parameter_description>
-</parameter>
-<parameter name="overridden">
-<parameter_description> The property that is being overridden
+<parameter name="en">
+<parameter_description> an &lt;literal&gt;errno&lt;/literal&gt; error number, e.g. %EINVAL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GParamSpec
+<return> a #GIOChannelError error number, e.g. 
+%G_IO_CHANNEL_ERROR_INVAL.
 </return>
 </function>
 
-<function name="g_type_value_table_peek">
+<function name="g_io_channel_error_quark">
 <description>
-Returns the location of the #GTypeValueTable associated with @type.
-&lt;emphasis&gt;Note that this function should only be used from source code
-that implements or has internal knowledge of the implementation of
- type &lt;/emphasis&gt;
-
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> A #GType value.
-</parameter_description>
-</parameter>
 </parameters>
-<return> Location of the #GTypeValueTable associated with @type or
-%NULL if there is no #GTypeValueTable associated with @type.
+<return> the quark used as %G_IO_CHANNEL_ERROR
 </return>
 </function>
 
-<function name="g_closure_unref">
+<function name="g_io_channel_flush">
 <description>
-Decrements the reference count of a closure after it was previously
-incremented by the same caller. If no other callers are using the
-closure, then the closure will be destroyed and freed.
+Flushes the write buffer for the GIOChannel.
+
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> #GClosure to decrement the reference count on
+<parameter name="channel">
+<parameter_description> a #GIOChannel
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store an error of type #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the status of the operation: One of
+#G_IO_STATUS_NORMAL, #G_IO_STATUS_AGAIN, or
+#G_IO_STATUS_ERROR.
+</return>
 </function>
 
-<function name="g_signal_emitv">
+<function name="g_io_channel_get_buffer_condition">
 <description>
-Emits a signal.
+This function returns a #GIOCondition depending on whether there
+is data to be read/space to write data in the internal buffers in 
+the #GIOChannel. Only the flags %G_IO_IN and %G_IO_OUT may be set.
 
-Note that g_signal_emitv() doesn't change @return_value if no handlers are
-connected, in contrast to g_signal_emit() and g_signal_emit_valist().
 
 </description>
 <parameters>
-<parameter name="instance_and_params">
-<parameter_description> argument list for the signal emission. The first
-element in the array is a #GValue for the instance the signal is
-being emitted on. The rest are any arguments to be passed to the
-signal.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> the signal id
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> the detail
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> Location to store the return value of the signal emission.
+<parameter name="channel">
+<parameter_description> A #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A #GIOCondition
+</return>
 </function>
 
-<function name="g_signal_list_ids">
+<function name="g_io_channel_get_buffer_size">
 <description>
-Lists the signals by id that a certain instance or interface type
-created. Further information about the signals can be acquired through
-g_signal_query().
+Gets the buffer size.
 
 
 </description>
 <parameters>
-<parameter name="itype">
-<parameter_description> Instance or interface type.
-</parameter_description>
-</parameter>
-<parameter name="n_ids">
-<parameter_description> Location to store the number of signal ids for @itype.
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return> Newly allocated array of signal IDs.
+<return> the size of the buffer.
 </return>
 </function>
 
-<function name="g_boxed_copy">
+<function name="g_io_channel_get_buffered">
 <description>
-Provide a copy of a boxed structure @src_boxed which is of type @boxed_type.
+Returns whether @channel is buffered.
 
 
 </description>
 <parameters>
-<parameter name="boxed_type">
-<parameter_description> The type of @src_boxed.
-</parameter_description>
-</parameter>
-<parameter name="src_boxed">
-<parameter_description> The boxed structure to be copied.
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return> The newly created copy of the boxed structure.
+<return> %TRUE if the @channel is buffered. 
 </return>
 </function>
 
-<function name="g_pattern_spec_free">
+<function name="g_io_channel_get_close_on_unref">
 <description>
-Frees the memory allocated for the #GPatternSpec.
+Returns whether the file/socket/whatever associated with @channel
+will be closed when @channel receives its final unref and is
+destroyed. The default value of this is %TRUE for channels created
+by g_io_channel_new_file (), and %FALSE for all other channels.
+
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a #GPatternSpec
+<parameter name="channel">
+<parameter_description> a #GIOChannel.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> Whether the channel will be closed on the final unref of
+the GIOChannel data structure.
+</return>
 </function>
 
-<function name="g_variant_type_hash">
+<function name="g_io_channel_get_encoding">
 <description>
-Hashes @type.
-
-The argument type of @type is only #gconstpointer to allow use with
-#GHashTable without function pointer casting.  A valid
-#GVariantType must be provided.
+Gets the encoding for the input/output of the channel. 
+The internal encoding is always UTF-8. The encoding %NULL 
+makes the channel safe for binary data.
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return> the hash value
+<return> A string containing the encoding, this string is
+owned by GLib and must not be freed.
 </return>
 </function>
 
-<function name="g_once_init_leave">
+<function name="g_io_channel_get_flags">
 <description>
-Counterpart to g_once_init_enter(). Expects a location of a static
-0-initialized initialization variable, and an initialization value
-other than 0. Sets the variable to the initialization value, and
-releases concurrent threads blocking in g_once_init_enter() on this
-initialization variable.
+Gets the current flags for a #GIOChannel, including read-only
+flags such as %G_IO_FLAG_IS_READABLE.
+
+The values of the flags %G_IO_FLAG_IS_READABLE and %G_IO_FLAG_IS_WRITEABLE
+are cached for internal use by the channel when it is created.
+If they should change at some later point (e.g. partial shutdown
+of a socket with the UNIX shutdown() function), the user
+should immediately call g_io_channel_get_flags() to update
+the internal values of these flags.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value_location">
-<parameter_description> location of a static initializable variable
-containing 0.
-</parameter_description>
-</parameter>
-<parameter name="initialization_value">
-<parameter_description> new non-0 value for * value_location 
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the flags which are set on the channel
+</return>
 </function>
 
-<function name="g_slist_delete_link">
+<function name="g_io_channel_get_line_term">
 <description>
-Removes the node link_ from the list and frees it. 
-Compare this to g_slist_remove_link() which removes the node 
-without freeing it.
+This returns the string that #GIOChannel uses to determine
+where in the file a line break occurs. A value of %NULL
+indicates autodetection.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> node to delete
+<parameter name="length">
+<parameter_description> a location to return the length of the line terminator
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new head of @list
+<return> The line termination string. This value
+is owned by GLib and must not be freed.
 </return>
 </function>
 
-<function name="g_value_set_variant">
+<function name="g_io_channel_init">
 <description>
-Set the contents of a variant #GValue to @variant.
-If the variant is floating, it is consumed.
+Initializes a #GIOChannel struct. 
 
-Since: 2.26
+This is called by each of the above functions when creating a 
+#GIOChannel, and so is not often needed by the application 
+programmer (unless you are creating a new type of #GIOChannel).
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_VARIANT
-</parameter_description>
-</parameter>
-<parameter name="variant">
-<parameter_description> a #GVariant, or %NULL
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_strsplit">
+<function name="g_io_channel_new_file">
 <description>
-Splits a string into a maximum of @max_tokens pieces, using the given
- delimiter  If @max_tokens is reached, the remainder of @string is appended
-to the last token. 
-
-As a special case, the result of splitting the empty string &quot;&quot; is an empty
-vector, not a vector containing a single string. The reason for this
-special case is that being able to represent a empty vector is typically
-more useful than consistent handling of empty elements. If you do need
-to represent empty elements, you'll need to check for the empty string
-before calling g_strsplit().
+Open a file @filename as a #GIOChannel using mode @mode. This
+channel will be closed when the last reference to it is dropped,
+so there is no need to call g_io_channel_close() (though doing
+so will not cause problems, as long as no attempt is made to
+access the channel after it is closed).
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a string to split.
+<parameter name="filename">
+<parameter_description> A string containing the name of a file
 </parameter_description>
 </parameter>
-<parameter name="delimiter">
-<parameter_description> a string which specifies the places at which to split the string.
-The delimiter is not included in any of the resulting strings, unless
- max_tokens is reached.
+<parameter name="mode">
+<parameter_description> One of &quot;r&quot;, &quot;w&quot;, &quot;a&quot;, &quot;r+&quot;, &quot;w+&quot;, &quot;a+&quot;. These have
+the same meaning as in fopen()
 </parameter_description>
 </parameter>
-<parameter name="max_tokens">
-<parameter_description> the maximum number of pieces to split @string into. If this is
-less than 1, the string is split completely.
+<parameter name="error">
+<parameter_description> A location to return an error of type %G_FILE_ERROR
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated %NULL-terminated array of strings. Use 
-g_strfreev() to free it.
+<return> A #GIOChannel on success, %NULL on failure.
 </return>
 </function>
 
-<function name="g_static_mutex_lock">
+<function name="g_io_channel_read">
 <description>
-Works like g_mutex_lock(), but for a #GStaticMutex.
+Reads data from a #GIOChannel. 
+
+Deprecated:2.2: Use g_io_channel_read_chars() instead.
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticMutex.
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_variant_new_double">
-<description>
-Creates a new double #GVariant instance.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="floating">
-<parameter_description> a #gdouble floating point value
+<parameter name="buf">
+<parameter_description> a buffer to read the data into (which should be at least 
+count bytes long)
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> the number of bytes to read from the #GIOChannel
+</parameter_description>
+</parameter>
+<parameter name="bytes_read">
+<parameter_description> returns the number of bytes actually read
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new double #GVariant instance
+<return> %G_IO_ERROR_NONE if the operation was successful. 
+
 </return>
 </function>
 
-<function name="g_param_spec_param">
+<function name="g_io_channel_read_chars">
 <description>
-Creates a new #GParamSpecParam instance specifying a %G_TYPE_PARAM
-property.
-
-See g_param_spec_internal() for details on property names.
+Replacement for g_io_channel_read() with the new API.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
+<parameter name="buf">
+<parameter_description> a buffer to read data into
 </parameter_description>
 </parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="count">
+<parameter_description> the size of the buffer. Note that the buffer may not be
+complelely filled even if there is data in the buffer if the
+remaining data is not a complete character.
 </parameter_description>
 </parameter>
-<parameter name="param_type">
-<parameter_description> a #GType derived from %G_TYPE_PARAM
+<parameter name="bytes_read">
+<parameter_description> The number of bytes read. This may be
+zero even on success if count &lt; 6 and the channel's encoding
+is non-%NULL. This indicates that the next UTF-8 character is
+too wide for the buffer.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="error">
+<parameter_description> a location to return an error of type #GConvertError
+or #GIOChannelError.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> the status of the operation.
 </return>
 </function>
 
-<function name="g_list_free_1">
-<description>
-Frees one #GList element.
-It is usually used after g_list_remove_link().
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> a #GList element
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_variant_type_is_tuple">
+<function name="g_io_channel_read_line">
 <description>
-Determines if the given @type is a tuple type.  This is true if the
-type string for @type starts with a '(' or if @type is
-%G_VARIANT_TYPE_TUPLE.
-
-This function returns %TRUE for any indefinite type for which every
-definite subtype is a tuple type -- %G_VARIANT_TYPE_TUPLE, for
-example.
+Reads a line, including the terminating character(s),
+from a #GIOChannel into a newly-allocated string.
+ str_return will contain allocated memory if the return
+is %G_IO_STATUS_NORMAL.
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @type is a tuple type
-</return>
-</function>
-
-<function name="g_async_queue_length">
-<description>
-Returns the length of the queue, negative values mean waiting
-threads, positive values mean available entries in the
- queue  Actually this function returns the number of data items in
-the queue minus the number of waiting threads. Thus a return value
-of 0 could mean 'n' entries in the queue and 'n' thread waiting.
-That can happen due to locking of the queue or due to
-scheduling.  
-
-
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="str_return">
+<parameter_description> The line read from the #GIOChannel, including the
+line terminator. This data should be freed with g_free()
+when no longer needed. This is a nul-terminated string. 
+If a @length of zero is returned, this will be %NULL instead.
 </parameter_description>
 </parameter>
-</parameters>
-<return> the length of the @queue.
-</return>
-</function>
-
-<function name="g_ascii_strtoll">
-<description>
-Converts a string to a #gint64 value.
-This function behaves like the standard strtoll() function
-does in the C locale. It does this without actually
-changing the current locale, since that would not be
-thread-safe.
-
-This function is typically used when reading configuration
-files or other non-user input that should be locale independent.
-To handle input from the user you should normally use the
-locale-sensitive system strtoll() function.
-
-If the correct value would cause overflow, %G_MAXINT64 or %G_MININT64
-is returned, and %ERANGE is stored in %errno.  If the base is
-outside the valid range, zero is returned, and %EINVAL is stored
-in %errno.  If the string conversion fails, zero is returned, and
- endptr returns @nptr (if @endptr is non-%NULL).
-
-Since: 2.12
-
-</description>
-<parameters>
-<parameter name="nptr">
-<parameter_description>    the string to convert to a numeric value.
+<parameter name="length">
+<parameter_description> location to store length of the read data, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="endptr">
-<parameter_description>  if non-%NULL, it returns the character after
-the last character used in the conversion.
+<parameter name="terminator_pos">
+<parameter_description> location to store position of line terminator, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="base">
-<parameter_description>    to be used for the conversion, 2..36 or 0
+<parameter name="error">
+<parameter_description> A location to return an error of type #GConvertError
+or #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #gint64 value or zero on error.
-
+<return> the status of the operation.
 </return>
 </function>
 
-<function name="g_pattern_spec_equal">
+<function name="g_io_channel_read_line_string">
 <description>
-Compares two compiled pattern specs and returns whether they will
-match the same set of strings.
+Reads a line from a #GIOChannel, using a #GString as a buffer.
+
 
 </description>
 <parameters>
-<parameter name="pspec1">
-<parameter_description> a #GPatternSpec
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="pspec2">
-<parameter_description> another #GPatternSpec
+<parameter name="buffer">
+<parameter_description> a #GString into which the line will be written.
+If @buffer already contains data, the old data will
+be overwritten.
 </parameter_description>
 </parameter>
-</parameters>
-<return> Whether the compiled patterns are equal
-</return>
-</function>
-
-<function name="g_mkdir">
-<description>
-A wrapper for the POSIX mkdir() function. The mkdir() function 
-attempts to create a directory with the given name and permissions.
-The mode argument is ignored on Windows.
-
-See your C library manual for more details about mkdir().
-
-Since: 2.6
-
-</description>
-<parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="terminator_pos">
+<parameter_description> location to store position of line terminator, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> permissions to use for the newly created directory
+<parameter name="error">
+<parameter_description> a location to store an error of type #GConvertError
+or #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the directory was successfully created, -1 if an error 
-occurred
-
+<return> the status of the operation.
 </return>
 </function>
 
-<function name="g_option_context_get_summary">
+<function name="g_io_channel_read_to_end">
 <description>
-Returns the summary. See g_option_context_set_summary().
+Reads all the remaining data from the file.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="channel">
+<parameter_description> a #GIOChannel
+</parameter_description>
+</parameter>
+<parameter name="str_return">
+<parameter_description> Location to store a pointer to a string holding
+the remaining data in the #GIOChannel. This data should
+be freed with g_free() when no longer needed. This
+data is terminated by an extra nul character, but there 
+may be other nuls in the intervening data.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> location to store length of the data
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to return an error of type #GConvertError
+or #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the summary
-
+<return> %G_IO_STATUS_NORMAL on success. 
+This function never returns %G_IO_STATUS_EOF.
 </return>
 </function>
 
-<function name="g_object_class_override_property">
+<function name="g_io_channel_read_unichar">
 <description>
-Registers @property_id as referring to a property with the
-name @name in a parent class or in an interface implemented
-by @oclass. This allows this class to &lt;firstterm&gt;override&lt;/firstterm&gt;
-a property implementation in a parent class or to provide
-the implementation of a property from an interface.
-
-&lt;note&gt;
-Internally, overriding is implemented by creating a property of type
-#GParamSpecOverride; generally operations that query the properties of
-the object class, such as g_object_class_find_property() or
-g_object_class_list_properties() will return the overridden
-property. However, in one case, the @construct_properties argument of
-the @constructor virtual function, the #GParamSpecOverride is passed
-instead, so that the @param_id field of the #GParamSpec will be
-correct.  For virtually all uses, this makes no difference. If you
-need to get the overridden property, you can call
-g_param_spec_get_redirect_target().
-&lt;/note&gt;
+Reads a Unicode character from @channel.
+This function cannot be called on a channel with %NULL encoding.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="oclass">
-<parameter_description> a #GObjectClass
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="property_id">
-<parameter_description> the new property ID
+<parameter name="thechar">
+<parameter_description> a location to return a character
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of a property registered in a parent class or
-in an interface of this class.
+<parameter name="error">
+<parameter_description> a location to return an error of type #GConvertError
+or #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GIOStatus
+</return>
 </function>
 
-<function name="g_unichar_isalpha">
+<function name="g_io_channel_ref">
 <description>
-Determines whether a character is alphabetic (i.e. a letter).
-Given some UTF-8 text, obtain a character value with
-g_utf8_get_char().
+Increments the reference count of a #GIOChannel.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is an alphabetic character
+<return> the @channel that was passed in (since 2.6)
 </return>
 </function>
 
-<function name="g_queue_unlink">
+<function name="g_io_channel_seek">
 <description>
-Unlinks @link_ so that it will no longer be part of @queue. The link is
-not freed.
-
- link_ must be part of @queue,
+Sets the current position in the #GIOChannel, similar to the standard 
+library function fseek(). 
 
-Since: 2.4
+Deprecated:2.2: Use g_io_channel_seek_position() instead.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
+<parameter name="offset">
+<parameter_description> an offset, in bytes, which is added to the position specified 
+by @type
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_io_channel_win32_new_socket">
-<description>
-Creates a new #GIOChannel given a socket on Windows.
-
-This function works for sockets created by Winsock. It's available
-only in GLib on Windows.
-
-Polling a #GSource created to watch a channel for a socket puts the
-socket in non-blocking mode. This is a side-effect of the
-implementation and unavoidable.
-
-</description>
-<parameters>
-<parameter name="socket">
-<parameter_description> a Winsock socket
+<parameter name="type">
+<parameter_description> the position in the file, which can be %G_SEEK_CUR (the current
+position), %G_SEEK_SET (the start of the file), or %G_SEEK_END 
+(the end of the file)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GIOChannel
+<return> %G_IO_ERROR_NONE if the operation was successful.
+
 </return>
 </function>
 
-<function name="g_source_destroy">
+<function name="g_io_channel_seek_position">
 <description>
-Removes a source from its #GMainContext, if any, and mark it as
-destroyed.  The source cannot be subsequently added to another
-context.
+Replacement for g_io_channel_seek() with the new API.
+
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_bookmark_file_get_is_private">
-<description>
-Gets whether the private flag of the bookmark for @uri is set.
-
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.  In the
-event that the private flag cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
-
-Since: 2.12
-
-</description>
-<parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="offset">
+<parameter_description> The offset in bytes from the position specified by @type
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="type">
+<parameter_description> a #GSeekType. The type %G_SEEK_CUR is only allowed in those
+cases where a call to g_io_channel_set_encoding ()
+is allowed. See the documentation for
+g_io_channel_set_encoding () for details.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> A location to return an error of type #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the private flag is set, %FALSE otherwise.
-
+<return> the status of the operation.
 </return>
 </function>
 
-<function name="g_source_set_closure">
+<function name="g_io_channel_set_buffer_size">
 <description>
-Set the callback for a source as a #GClosure.
-
-If the source is not one of the standard GLib types, the @closure_callback
-and @closure_marshal fields of the #GSourceFuncs structure must have been
-filled in with pointers to appropriate functions.
+Sets the buffer size.
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> the source
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="closure">
-<parameter_description> a #GClosure
+<parameter name="size">
+<parameter_description> the size of the buffer, or 0 to let GLib pick a good size
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_type_interface_peek_parent">
+<function name="g_io_channel_set_buffered">
 <description>
-Returns the corresponding #GTypeInterface structure of the parent type
-of the instance type to which @g_iface belongs. This is useful when
-deriving the implementation of an interface from the parent type and
-then possibly overriding some methods.
-
-
-</description>
-<parameters>
-<parameter name="g_iface">
-<parameter_description> A #GTypeInterface structure.
-</parameter_description>
-</parameter>
-</parameters>
-<return> The corresponding #GTypeInterface structure of the parent
-type of the instance type to which @g_iface belongs, or
-%NULL if the parent type doesn't conform to the interface.
-</return>
-</function>
+The buffering state can only be set if the channel's encoding
+is %NULL. For any other encoding, the channel must be buffered.
 
-<function name="g_variant_type_value">
-<description>
-Determines the value type of a dictionary entry type.
+A buffered channel can only be set unbuffered if the channel's
+internal buffers have been flushed. Newly created channels or
+channels which have returned %G_IO_STATUS_EOF
+not require such a flush. For write-only channels, a call to
+g_io_channel_flush () is sufficient. For all other channels,
+the buffers may be flushed by a call to g_io_channel_seek_position ().
+This includes the possibility of seeking with seek type %G_SEEK_CUR
+and an offset of zero. Note that this means that socket-based
+channels cannot be set unbuffered once they have had data
+read from them.
 
-This function may only be used with a dictionary entry type.
+On unbuffered channels, it is safe to mix read and write
+calls from the new and old APIs, if this is necessary for
+maintaining old code.
 
-Since 2.24
+The default state of the channel is buffered.
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a dictionary entry #GVariantType
+<parameter name="channel">
+<parameter_description> a #GIOChannel
+</parameter_description>
+</parameter>
+<parameter name="buffered">
+<parameter_description> whether to set the channel buffered or unbuffered
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value type of the dictionary entry
-</return>
+<return></return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__CHAR">
+<function name="g_io_channel_set_close_on_unref">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gchar arg1, gpointer user_data)&lt;/literal&gt;.
+Setting this flag to %TRUE for a channel you have already closed
+can cause problems.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gchar parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="do_close">
+<parameter_description> Whether to close the channel on the final unref of
+the GIOChannel data structure. The default value of
+this is %TRUE for channels created by g_io_channel_new_file (),
+and %FALSE for all other channels.
 </parameter_description>
 </parameter>
 </parameters>
@@ -11038,412 +10469,395 @@ calling one of the API &quot;read&quot; functions.
 </return>
 </function>
 
-<function name="g_mapped_file_get_contents">
+<function name="g_io_channel_set_flags">
 <description>
-Returns the contents of a #GMappedFile. 
-
-Note that the contents may not be zero-terminated,
-even if the #GMappedFile is backed by a text file.
-
-If the file is empty then %NULL is returned.
+Sets the (writeable) flags in @channel to (@flags &amp; %G_IO_CHANNEL_SET_MASK).
 
-Since: 2.8
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GMappedFile
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-</parameters>
-<return> the contents of @file, or %NULL.
-
-</return>
-</function>
-
-<function name="g_type_create_instance">
-<description>
-Creates and initializes an instance of @type if @type is valid and
-can be instantiated. The type system only performs basic allocation
-and structure setups for instances: actual instance creation should
-happen through functions supplied by the type's fundamental type
-implementation.  So use of g_type_create_instance() is reserved for
-implementators of fundamental types only. E.g. instances of the
-#GObject hierarchy should be created via g_object_new() and
-&lt;emphasis&gt;never&lt;/emphasis&gt; directly through
-g_type_create_instance() which doesn't handle things like singleton
-objects or object construction.  Note: Do &lt;emphasis&gt;not&lt;/emphasis&gt;
-use this function, unless you're implementing a fundamental
-type. Also language bindings should &lt;emphasis&gt;not&lt;/emphasis&gt; use
-this function but g_object_new() instead.
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> An instantiatable type to create an instance for.
+<parameter name="flags">
+<parameter_description> the flags to set on the IO channel
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> A location to return an error of type #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> An allocated and initialized instance, subject to further
-treatment by the fundamental type implementation.
+<return> the status of the operation. 
 </return>
 </function>
 
-<function name="g_qsort_with_data">
+<function name="g_io_channel_set_line_term">
 <description>
-This is just like the standard C qsort() function, but
-the comparison routine accepts a user data argument.
-
+This sets the string that #GIOChannel uses to determine
+where in the file a line break occurs.
 
 </description>
 <parameters>
-<parameter name="pbase">
-<parameter_description> start of array to sort
-</parameter_description>
-</parameter>
-<parameter name="total_elems">
-<parameter_description> elements in the array
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> size of each element
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> function to compare elements
+<parameter name="line_term">
+<parameter_description> The line termination string. Use %NULL for autodetect.
+Autodetection breaks on &quot;\n&quot;, &quot;\r\n&quot;, &quot;\r&quot;, &quot;\0&quot;, and
+the Unicode paragraph separator. Autodetection should
+not be used for anything other than file-based channels.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @compare_func
+<parameter name="length">
+<parameter_description> The length of the termination string. If -1 is passed, the
+string is assumed to be nul-terminated. This option allows
+termination strings with embedded nuls.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_builder_end">
+<function name="g_io_channel_shutdown">
 <description>
-Ends the builder process and returns the constructed value.
-
-It is not permissible to use @builder in any way after this call
-except for reference counting operations (in the case of a
-heap-allocated #GVariantBuilder) or by reinitialising it with
-g_variant_builder_init() (in the case of stack-allocated).
-
-It is an error to call this function in any way that would create an
-inconsistent value to be constructed (ie: insufficient number of
-items added to a container with a specific number of children
-required).  It is also an error to call this function if the builder
-was created with an indefinite array or maybe type and no children
-have been added; in this case it is impossible to infer the type of
-the empty array.
+Close an IO channel. Any pending data to be written will be
+flushed if @flush is %TRUE. The channel will not be freed until the
+last reference is dropped using g_io_channel_unref().
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
+<parameter name="channel">
+<parameter_description> a #GIOChannel
+</parameter_description>
+</parameter>
+<parameter name="flush">
+<parameter_description> if %TRUE, flush pending
+</parameter_description>
+</parameter>
+<parameter name="err">
+<parameter_description> location to store a #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new, floating, #GVariant
+<return> the status of the operation.
 </return>
 </function>
 
-<function name="g_static_rec_mutex_lock_full">
+<function name="g_io_channel_unix_get_fd">
 <description>
-Works like calling g_static_rec_mutex_lock() for @mutex @depth times.
+Returns the file descriptor of the #GIOChannel.
+
+On Windows this function returns the file descriptor or socket of
+the #GIOChannel.
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to lock.
-</parameter_description>
-</parameter>
-<parameter name="depth">
-<parameter_description> number of times this mutex has to be unlocked to be
-completely unlocked.
+<parameter name="channel">
+<parameter_description> a #GIOChannel, created with g_io_channel_unix_new().
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the file descriptor of the #GIOChannel.
+</return>
 </function>
 
-<function name="g_value_type_transformable">
+<function name="g_io_channel_unix_new">
 <description>
-Check whether g_value_transform() is able to transform values
-of type @src_type into values of type @dest_type.
+Creates a new #GIOChannel given a file descriptor. On UNIX systems
+this works for plain files, pipes, and sockets.
+
+The returned #GIOChannel has a reference count of 1.
 
+The default encoding for #GIOChannel is UTF-8. If your application
+is reading output from a command using via pipe, you may need to set
+the encoding to the encoding of the current locale (see
+g_get_charset()) with the g_io_channel_set_encoding() function.
+
+If you want to read raw binary data without interpretation, then
+call the g_io_channel_set_encoding() function with %NULL for the
+encoding argument.
+
+This function is available in GLib on Windows, too, but you should
+avoid using it on Windows. The domain of file descriptors and
+sockets overlap. There is no way for GLib to know which one you mean
+in case the argument you pass to this function happens to be both a
+valid file descriptor and socket. If that happens a warning is
+issued, and GLib assumes that it is the file descriptor you mean.
 
 </description>
 <parameters>
-<parameter name="src_type">
-<parameter_description> Source type.
-</parameter_description>
-</parameter>
-<parameter name="dest_type">
-<parameter_description> Target type.
+<parameter name="fd">
+<parameter_description> a file descriptor.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the transformation is possible, %FALSE otherwise.
+<return> a new #GIOChannel.
 </return>
 </function>
 
-<function name="g_main_context_ref">
+<function name="g_io_channel_unref">
 <description>
-Increases the reference count on a #GMainContext object by one.
-
+Decrements the reference count of a #GIOChannel.
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
 </parameters>
-<return> the @context that was passed in (since 2.6)
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_builder_unref">
+<function name="g_io_channel_win32_new_fd">
 <description>
-Decreases the reference count on @builder.
+Creates a new #GIOChannel given a file descriptor on Windows. This
+works for file descriptors from the C runtime.
 
-In the event that there are no more references, releases all memory
-associated with the #GVariantBuilder.
+This function works for file descriptors as returned by the open(),
+creat(), pipe() and fileno() calls in the Microsoft C runtime. In
+order to meaningfully use this function your code should use the
+same C runtime as GLib uses, which is msvcrt.dll. Note that in
+current Microsoft compilers it is near impossible to convince it to
+build code that would use msvcrt.dll. The last Microsoft compiler
+version that supported using msvcrt.dll as the C runtime was version
+6. The GNU compiler and toolchain for Windows, also known as Mingw,
+fully supports msvcrt.dll.
 
-Don't call this on stack-allocated #GVariantBuilder instances or bad
-things will happen.
+If you have created a #GIOChannel for a file descriptor and started
+watching (polling) it, you shouldn't call read() on the file
+descriptor. This is because adding polling for a file descriptor is
+implemented in GLib on Windows by starting a thread that sits
+blocked in a read() from the file descriptor most of the time. All
+reads from the file descriptor should be done by this internal GLib
+thread. Your code should call only g_io_channel_read().
 
-Since: 2.24
+This function is available only in GLib on Windows.
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder allocated by g_variant_builder_new()
+<parameter name="fd">
+<parameter_description> a C library file descriptor.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GIOChannel.
+</return>
 </function>
 
-<function name="g_test_timer_start">
+<function name="g_io_channel_win32_new_messages">
 <description>
-Start a timing test. Call g_test_timer_elapsed() when the task is supposed
-to be done. Call this function again to restart the timer.
+Creates a new #GIOChannel given a window handle on Windows.
 
-Since: 2.16
+This function creates a #GIOChannel that can be used to poll for
+Windows messages for the window in question.
 
 </description>
 <parameters>
+<parameter name="hwnd">
+<parameter_description> a window handle.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> a new #GIOChannel.
+</return>
 </function>
 
-<function name="g_closure_sink">
+<function name="g_io_channel_win32_new_socket">
 <description>
-Takes over the initial ownership of a closure.  Each closure is
-initially created in a &lt;firstterm&gt;floating&lt;/firstterm&gt; state, which
-means that the initial reference count is not owned by any caller.
-g_closure_sink() checks to see if the object is still floating, and
-if so, unsets the floating state and decreases the reference
-count. If the closure is not floating, g_closure_sink() does
-nothing. The reason for the existance of the floating state is to
-prevent cumbersome code sequences like:
-|[
-closure = g_cclosure_new (cb_func, cb_data);
-g_source_set_closure (source, closure);
-g_closure_unref (closure); // XXX GObject doesn't really need this
-]|
-Because g_source_set_closure() (and similar functions) take ownership of the
-initial reference count, if it is unowned, we instead can write:
-|[
-g_source_set_closure (source, g_cclosure_new (cb_func, cb_data));
-]|
+Creates a new #GIOChannel given a socket on Windows.
 
-Generally, this function is used together with g_closure_ref(). Ane example
-of storing a closure for later notification looks like:
-|[
-static GClosure *notify_closure = NULL;
-void
-foo_notify_set_closure (GClosure *closure)
-{
-if (notify_closure)
-g_closure_unref (notify_closure);
-notify_closure = closure;
-if (notify_closure)
-{
-g_closure_ref (notify_closure);
-g_closure_sink (notify_closure);
-}
-}
-]|
+This function works for sockets created by Winsock. It's available
+only in GLib on Windows.
 
-Because g_closure_sink() may decrement the reference count of a closure
-(if it hasn't been called on @closure yet) just like g_closure_unref(),
-g_closure_ref() should be called prior to this function.
+Polling a #GSource created to watch a channel for a socket puts the
+socket in non-blocking mode. This is a side-effect of the
+implementation and unavoidable.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> #GClosure to decrement the initial reference count on, if it's
-still being held
+<parameter name="socket">
+<parameter_description> a Winsock socket
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GIOChannel
+</return>
 </function>
 
-<function name="g_dir_rewind">
+<function name="g_io_channel_write">
 <description>
-Resets the given directory. The next call to g_dir_read_name()
-will return the first entry again.
+Writes data to a #GIOChannel. 
+
+Deprecated:2.2: Use g_io_channel_write_chars() instead.
 
 </description>
 <parameters>
-<parameter name="dir">
-<parameter_description> a #GDir* created by g_dir_open()
+<parameter name="channel">
+<parameter_description>  a #GIOChannel
+</parameter_description>
+</parameter>
+<parameter name="buf">
+<parameter_description> the buffer containing the data to write
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> the number of bytes to write
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> the number of bytes actually written
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return>  %G_IO_ERROR_NONE if the operation was successful.
+
+</return>
 </function>
 
-<function name="g_signal_handlers_unblock_matched">
+<function name="g_io_channel_write_chars">
 <description>
-Unblocks all handlers on an instance that match a certain selection
-criteria. The criteria mask is passed as an OR-ed combination of
-#GSignalMatchType flags, and the criteria values are passed as arguments.
-Passing at least one of the %G_SIGNAL_MATCH_CLOSURE, %G_SIGNAL_MATCH_FUNC
-or %G_SIGNAL_MATCH_DATA match flags is required for successful matches.
-If no handlers were found, 0 is returned, the number of unblocked handlers
-otherwise. The match criteria should not apply to any handlers that are
-not currently blocked.
+Replacement for g_io_channel_write() with the new API.
+
+On seekable channels with encodings other than %NULL or UTF-8, generic
+mixing of reading and writing is not allowed. A call to g_io_channel_write_chars ()
+may only be made on a channel from which data has been read in the
+cases described in the documentation for g_io_channel_set_encoding ().
 
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance to unblock handlers from.
-</parameter_description>
-</parameter>
-<parameter name="mask">
-<parameter_description> Mask indicating which of @signal_id, @detail, @closure, @func
-and/or @data the handlers have to match.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> Signal the handlers have to be connected to.
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="detail">
-<parameter_description> Signal detail the handlers have to be connected to.
+<parameter name="buf">
+<parameter_description> a buffer to write data from
 </parameter_description>
 </parameter>
-<parameter name="closure">
-<parameter_description> The closure the handlers will invoke.
+<parameter name="count">
+<parameter_description> the size of the buffer. If -1, the buffer
+is taken to be a nul-terminated string.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> The C closure callback of the handlers (useless for non-C closures).
+<parameter name="bytes_written">
+<parameter_description> The number of bytes written. This can be nonzero
+even if the return value is not %G_IO_STATUS_NORMAL.
+If the return value is %G_IO_STATUS_NORMAL and the
+channel is blocking, this will always be equal
+to @count if @count &gt;= 0.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> The closure data of the handlers' closures.
+<parameter name="error">
+<parameter_description> a location to return an error of type #GConvertError
+or #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of handlers that matched.
+<return> the status of the operation.
 </return>
 </function>
 
-<function name="g_key_file_has_key">
+<function name="g_io_channel_write_unichar">
 <description>
-Looks whether the key file has the key @key in the group
- group_name  
+Writes a Unicode character to @channel.
+This function cannot be called on a channel with %NULL encoding.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="channel">
+<parameter_description> a #GIOChannel
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key name
+<parameter name="thechar">
+<parameter_description> a character
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError
+<parameter_description> location to return an error of type #GConvertError
+or #GIOChannelError
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @key is a part of @group_name, %FALSE
-otherwise.
-
+<return> a #GIOStatus
 </return>
 </function>
 
-<function name="g_allocator_new">
+<function name="g_io_create_watch">
 <description>
-Creates a new #GAllocator.
+Creates a #GSource that's dispatched when @condition is met for the 
+given @channel. For example, if condition is #G_IO_IN, the source will 
+be dispatched when there's data available for reading.
+
+g_io_add_watch() is a simpler interface to this same functionality, for 
+the case where you want to add the source to the default main loop context 
+at the default priority.
+
+On Windows, polling a #GSource created to watch a channel for a socket
+puts the socket in non-blocking mode. This is a side-effect of the
+implementation and unavoidable.
 
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name of the #GAllocator. This name is used to set the
-name of the #GMemChunk used by the #GAllocator, and is only
-used for debugging.
+<parameter name="channel">
+<parameter_description> a #GIOChannel to watch
 </parameter_description>
 </parameter>
-<parameter name="n_preallocs">
-<parameter_description> the number of elements in each block of memory
-allocated.  Larger blocks mean less calls to
-g_malloc(), but some memory may be wasted.  (GLib uses
-128 elements per block by default.) The value must be
-between 1 and 65535.
+<parameter name="condition">
+<parameter_description> conditions to watch for
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GAllocator.
+<return> a new #GSource
 </return>
 </function>
 
-<function name="g_markup_parse_context_parse">
+<function name="g_key_file_free">
 <description>
-Feed some data to the #GMarkupParseContext. The data need not
-be valid UTF-8; an error will be signaled if it's invalid.
-The data need not be an entire document; you can feed a document
-into the parser incrementally, via multiple calls to this function.
-Typically, as you receive data from a network connection or file,
-you feed each received chunk of data into this function, aborting
-the process if an error occurs. Once an error is reported, no further
-data may be fed to the #GMarkupParseContext; all errors are fatal.
+Frees a #GKeyFile.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="text">
-<parameter_description> chunk of text to parse
+</parameters>
+<return></return>
+</function>
+
+<function name="g_key_file_get_boolean">
+<description>
+Returns the value associated with @key under @group_name as a
+boolean. 
+
+If @key cannot be found then %FALSE is returned and @error is set
+to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value
+associated with @key cannot be interpreted as a boolean then %FALSE
+is returned and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+
+Since: 2.6
+
+</description>
+<parameters>
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="text_len">
-<parameter_description> length of @text in bytes
+<parameter name="group_name">
+<parameter_description> a group name
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -11451,63 +10865,74 @@ data may be fed to the #GMarkupParseContext; all errors are fatal.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %FALSE if an error occurred, %TRUE on success
+<return> the value associated with the key as a boolean, 
+or %FALSE if the key was not found or could not be parsed.
+
 </return>
 </function>
 
-<function name="g_io_add_watch_full">
+<function name="g_key_file_get_boolean_list">
 <description>
-Adds the #GIOChannel into the default main loop context
-with the given priority.
+Returns the values associated with @key under @group_name as
+booleans. 
 
-This internally creates a main loop source using g_io_create_watch()
-and attaches it to the main loop context with g_source_attach().
-You can do these steps manuallt if you need greater control.
+If @key cannot be found then %NULL is returned and @error is set to
+#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
+with @key cannot be interpreted as booleans then %NULL is returned
+and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="priority">
-<parameter_description> the priority of the #GIOChannel source
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="condition">
-<parameter_description> the condition to watch for
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to call when the condition is satisfied
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @func
+<parameter name="length">
+<parameter_description> the number of booleans returned
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> the function to call when the source is removed
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the event source id
+<return> the values associated with the key as a list of
+booleans, or %NULL if the key was not found or could not be parsed.
+
 </return>
 </function>
 
-<function name="g_file_read_link">
+<function name="g_key_file_get_comment">
 <description>
-Reads the contents of the symbolic link @filename like the POSIX
-readlink() function.  The returned string is in the encoding used
-for filenames. Use g_filename_to_utf8() to convert it to UTF-8.
+Retrieves a comment above @key from @group_name.
+If @key is %NULL then @comment will be read from above 
+ group_name  If both @key and @group_name are %NULL, then 
+ comment will be read from above the first group in the file.
 
-Since: 2.4
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> the symbolic link
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
+</parameter_description>
+</parameter>
+<parameter name="group_name">
+<parameter_description> a group name, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -11515,1461 +10940,1105 @@ Since: 2.4
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly-allocated string with the contents of the symbolic link, 
-or %NULL if an error occurred.
+<return> a comment that should be freed with g_free()
 
 </return>
 </function>
 
-<function name="g_signal_lookup">
+<function name="g_key_file_get_double">
 <description>
-Given the name of the signal and the type of object it connects to, gets
-the signal's identifying integer. Emitting the signal by number is
-somewhat faster than using the name each time.
-
-Also tries the ancestors of the given type.
+Returns the value associated with @key under @group_name as a
+double. If @group_name is %NULL, the start_group is used.
 
-See g_signal_new() for details on allowed signal names.
+If @key cannot be found then 0.0 is returned and @error is set to
+#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
+with @key cannot be interpreted as a double then 0.0 is returned
+and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the signal's name.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
+</parameter_description>
+</parameter>
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="itype">
-<parameter_description> the type that the signal operates on.
+<parameter name="key">
+<parameter_description> a key
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the signal's identifying number, or 0 if no signal was found.
+<return> the value associated with the key as a double, or
+0.0 if the key was not found or could not be parsed.
+
 </return>
 </function>
 
-<function name="g_strlcat">
+<function name="g_key_file_get_double_list">
 <description>
-Portability wrapper that calls strlcat() on systems which have it, 
-and emulates it otherwise. Appends nul-terminated @src string to @dest, 
-guaranteeing nul-termination for @dest. The total size of @dest won't 
-exceed @dest_size. 
-
-At most dest_size - 1 characters will be copied.
-Unlike strncat, dest_size is the full size of dest, not the space left over.
-This function does NOT allocate memory.
-This always NUL terminates (unless siz == 0 or there were no NUL characters
-in the dest_size characters of dest to start with).
+Returns the values associated with @key under @group_name as
+doubles. 
 
-&lt;note&gt;&lt;para&gt;Caveat: this is supposedly a more secure alternative to 
-strcat() or strncat(), but for real security g_strconcat() is harder 
-to mess up.&lt;/para&gt;&lt;/note&gt;
+If @key cannot be found then %NULL is returned and @error is set to
+#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
+with @key cannot be interpreted as doubles then %NULL is returned
+and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> destination buffer, already containing one nul-terminated string
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="src">
-<parameter_description> source buffer
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="dest_size">
-<parameter_description> length of @dest buffer in bytes (not length of existing string 
-inside @dest)
+<parameter name="key">
+<parameter_description> a key
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the number of doubles returned
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> size of attempted result, which is MIN (dest_size, strlen
-(original dest)) + strlen (src), so if retval &gt;= dest_size,
-truncation occurred.
+<return> the values associated with the key as a list of
+doubles, or %NULL if the key was not found or could not be parsed.
+
 </return>
 </function>
 
-<function name="g_async_queue_unref_and_unlock">
+<function name="g_key_file_get_groups">
 <description>
-Decreases the reference count of the asynchronous @queue by 1 and
-releases the lock. This function must be called while holding the
- queue's lock. If the reference count went to 0, the @queue will be
-destroyed and the memory allocated will be freed.
+Returns all groups in the key file loaded with @key_file.  
+The array of returned groups will be %NULL-terminated, so 
+ length may optionally be %NULL.
 
- Deprecated: Since 2.8, reference counting is done atomically
-so g_async_queue_unref() can be used regardless of the @queue's
-lock.
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> return location for the number of returned groups, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly-allocated %NULL-terminated array of strings. 
+Use g_strfreev() to free it.
+</return>
 </function>
 
-<function name="g_list_copy">
+<function name="g_key_file_get_int64">
 <description>
-Copies a #GList.
-
-&lt;note&gt;&lt;para&gt;
-Note that this is a &quot;shallow&quot; copy. If the list elements 
-consist of pointers to data, the pointers are copied but 
-the actual data is not.
-&lt;/para&gt;&lt;/note&gt;
+Returns the value associated with @key under @group_name as a signed
+64-bit integer. This is similar to g_key_file_get_integer() but can return
+64-bit results without truncation.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="key_file">
+<parameter_description> a non-%NULL #GKeyFile
+</parameter_description>
+</parameter>
+<parameter name="group_name">
+<parameter_description> a non-%NULL group name
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a non-%NULL key
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a copy of @list
+<return> the value associated with the key as a signed 64-bit integer, or
+0 if the key was not found or could not be parsed.
+
 </return>
 </function>
 
-<function name="g_base64_decode_step">
+<function name="g_key_file_get_integer">
 <description>
-Incrementally decode a sequence of binary data from its Base-64 stringified
-representation. By calling this function multiple times you can convert 
-data in chunks to avoid having to have the full encoded data in memory.
+Returns the value associated with @key under @group_name as an
+integer. 
 
-The output buffer must be large enough to fit all the data that will
-be written to it. Since base64 encodes 3 bytes in 4 chars you need
-at least: (@len / 4) * 3 + 3 bytes (+ 3 may be needed in case of non-zero
-state).
+If @key cannot be found then 0 is returned and @error is set to
+#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
+with @key cannot be interpreted as an integer then 0 is returned
+and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
 
-Since: 2.12
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="in">
-<parameter_description> binary input data
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> max length of @in data to decode
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="out">
-<parameter_description> output buffer
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="state">
-<parameter_description> Saved state between steps, initialize to 0
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="save">
-<parameter_description> Saved state between steps, initialize to 0
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of bytes of output that was written
+<return> the value associated with the key as an integer, or
+0 if the key was not found or could not be parsed.
 
 </return>
 </function>
 
-<function name="g_convert">
+<function name="g_key_file_get_integer_list">
 <description>
-Converts a string from one character set to another.
+Returns the values associated with @key under @group_name as
+integers. 
 
-Note that you should use g_iconv() for streaming 
-conversions&lt;footnoteref linkend=&quot;streaming-state&quot;/&gt;.
+If @key cannot be found then %NULL is returned and @error is set to
+#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
+with @key cannot be interpreted as integers then %NULL is returned
+and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description>           the string to convert
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description>           the length of the string, or -1 if the string is 
-nul-terminated&lt;footnote id=&quot;nul-unsafe&quot;&gt;
-                     &lt;para&gt;
-                       Note that some encodings may allow nul bytes to 
-                       occur inside strings. In that case, using -1 for 
-                       the @len parameter is unsafe.
-                     &lt;/para&gt;
-                   &lt;/footnote&gt;. 
-</parameter_description>
-</parameter>
-<parameter name="to_codeset">
-<parameter_description>    name of character set into which to convert @str
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="from_codeset">
-<parameter_description>  character set of @str.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="bytes_read">
-<parameter_description>    location to store the number of bytes in the
-input string that were successfully converted, or %NULL.
-Even if the conversion was successful, this may be 
-less than @len if there were partial characters
-at the end of the input. If the error
-#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
-stored will the byte offset after the last valid
-input sequence.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="bytes_written">
-<parameter_description> the number of bytes stored in the output buffer (not 
-including the terminating nul).
+<parameter name="length">
+<parameter_description> the number of integers returned
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description>         location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> If the conversion was successful, a newly allocated
-nul-terminated string, which must be freed with
-g_free(). Otherwise %NULL and @error will be set.
+<return> the values associated with the key as a list of
+integers, or %NULL if the key was not found or could not be parsed.
+
 </return>
 </function>
 
-<function name="g_main_context_add_poll">
+<function name="g_key_file_get_keys">
 <description>
-Adds a file descriptor to the set of file descriptors polled for
-this context. This will very seldomly be used directly. Instead
-a typical event source will use g_source_add_poll() instead.
+Returns all keys for the group name @group_name.  The array of
+returned keys will be %NULL-terminated, so @length may
+optionally be %NULL. In the event that the @group_name cannot
+be found, %NULL is returned and @error is set to
+#G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext (or %NULL for the default context)
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="fd">
-<parameter_description> a #GPollFD structure holding information about a file
-descriptor to watch.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="priority">
-<parameter_description> the priority for this file descriptor which should be
-the same as the priority used for g_source_attach() to ensure that the
-file descriptor is polled whenever the results may be needed.
+<parameter name="length">
+<parameter_description> return location for the number of keys returned, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_test_run_suite">
-<description>
-Execute the tests within @suite and all nested #GTestSuites.
-The test suites to be executed are filtered according to
-test path arguments (-p &lt;replaceable&gt;testpath&lt;/replaceable&gt;) 
-as parsed by g_test_init().
-g_test_run_suite() or g_test_run() may only be called once
-in a program.
-
-Since: 2.16
-
-</description>
-<parameters>
-<parameter name="suite">
-<parameter_description> a #GTestSuite
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 on success
+<return> a newly-allocated %NULL-terminated array of strings. 
+Use g_strfreev() to free it.
 
 </return>
 </function>
 
-<function name="g_tuples_index">
+<function name="g_key_file_get_locale_string">
 <description>
-Gets a field from the records returned by g_relation_select(). It
-returns the given field of the record at the given index. The
-returned value should not be changed.
+Returns the value associated with @key under @group_name
+translated in the given @locale if available.  If @locale is
+%NULL then the current locale is assumed. 
 
-Deprecated: 2.26: Rarely used API
+If @key cannot be found then %NULL is returned and @error is set 
+to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the value associated
+with @key cannot be interpreted or no suitable translation can
+be found then the untranslated value is returned.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="tuples">
-<parameter_description> the tuple data, returned by g_relation_select().
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the record.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> the field to return.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-</parameters>
-<return> the field of the record.
-</return>
-</function>
-
-<function name="g_quark_from_string">
-<description>
-Gets the #GQuark identifying the given string. If the string does
-not currently have an associated #GQuark, a new #GQuark is created,
-using a copy of the string.
-
-</description>
-<parameters>
-<parameter name="string">
-<parameter_description> a string.
+<parameter name="locale">
+<parameter_description> a locale identifier or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GQuark identifying the string, or 0 if @string is
-%NULL.
+<return> a newly allocated string or %NULL if the specified 
+key cannot be found.
+
 </return>
 </function>
 
-<function name="g_variant_builder_close">
+<function name="g_key_file_get_locale_string_list">
 <description>
-Closes the subcontainer inside the given @builder that was opened by
-the most recent call to g_variant_builder_open().
+Returns the values associated with @key under @group_name
+translated in the given @locale if available.  If @locale is
+%NULL then the current locale is assumed.
 
-It is an error to call this function in any way that would create an
-inconsistent value to be constructed (ie: too few values added to the
-subcontainer).
+If @key cannot be found then %NULL is returned and @error is set 
+to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the values associated
+with @key cannot be interpreted or no suitable translations
+can be found then the untranslated values are returned. The 
+returned array is %NULL-terminated, so @length may optionally 
+be %NULL.
 
-Since: 2.24
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_signal_emit_by_name">
-<description>
-Emits a signal.
-
-Note that g_signal_emit_by_name() resets the return value to the default
-if no handlers are connected, in contrast to g_signal_emitv().
-
-</description>
-<parameters>
-<parameter name="instance">
-<parameter_description> the instance the signal is being emitted on.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="detailed_signal">
-<parameter_description> a string of the form &quot;signal-name::detail&quot;.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> parameters to be passed to the signal, followed by a
-location for the return value. If the return type of the signal
-is #G_TYPE_NONE, the return value location can be omitted.
+<parameter name="locale">
+<parameter_description> a locale identifier or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_datalist_id_remove_no_notify">
-<description>
-Removes an element, without calling its destroy notification
-function.
-
-</description>
-<parameters>
-<parameter name="datalist">
-<parameter_description> a datalist.
+<parameter name="length">
+<parameter_description> return location for the number of returned strings or %NULL
 </parameter_description>
 </parameter>
-<parameter name="key_id">
-<parameter_description> the #GQuark identifying a data element.
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data previously stored at @key_id, or %NULL if none.
+<return> a newly allocated %NULL-terminated string array
+or %NULL if the key isn't found. The string array should be freed
+with g_strfreev().
+
 </return>
 </function>
 
-<function name="g_signal_type_cclosure_new">
+<function name="g_key_file_get_start_group">
 <description>
-Creates a new closure which invokes the function found at the offset
- struct_offset in the class structure of the interface or classed type
-identified by @itype.
+Returns the name of the start group of the file. 
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="itype">
-<parameter_description> the #GType identifier of an interface or classed type
-</parameter_description>
-</parameter>
-<parameter name="struct_offset">
-<parameter_description> the offset of the member function of @itype's class
-structure which is to be invoked by the new closure
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GCClosure
+<return> The start group of the key file.
+
 </return>
 </function>
 
-<function name="g_str_equal">
+<function name="g_key_file_get_string">
 <description>
-Compares two strings for byte-by-byte equality and returns %TRUE
-if they are equal. It can be passed to g_hash_table_new() as the
- key_equal_func parameter, when using strings as keys in a #GHashTable.
+Returns the string value associated with @key under @group_name.
+Unlike g_key_file_get_value(), this function handles escape sequences
+like \s.
 
-Note that this function is primarily meant as a hash table comparison
-function. For a general-purpose, %NULL-safe string comparison function,
-see g_strcmp0().
+In the event the key cannot be found, %NULL is returned and 
+ error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND.  In the 
+event that the @group_name cannot be found, %NULL is returned 
+and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="v1">
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
+</parameter_description>
+</parameter>
+<parameter name="group_name">
+<parameter_description> a group name
+</parameter_description>
+</parameter>
+<parameter name="key">
 <parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="v2">
-<parameter_description> a key to compare with @v1
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the two keys match
+<return> a newly allocated string or %NULL if the specified 
+key cannot be found.
+
 </return>
 </function>
 
-<function name="g_type_class_ref">
+<function name="g_key_file_get_string_list">
 <description>
-Increments the reference count of the class structure belonging to
- type  This function will demand-create the class if it doesn't
-exist already.
+Returns the values associated with @key under @group_name.
+
+In the event the key cannot be found, %NULL is returned and
+ error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND.  In the
+event that the @group_name cannot be found, %NULL is returned
+and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> Type ID of a classed type.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-</parameters>
-<return> The #GTypeClass structure for the given type ID.
-</return>
-</function>
-
-<function name="g_bookmark_file_has_item">
-<description>
-Looks whether the desktop bookmark has an item with its URI set to @uri.
-
-Since: 2.12
-
-</description>
-<parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="key">
+<parameter_description> a key
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> return location for the number of returned strings, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @uri is inside @bookmark, %FALSE otherwise
+<return> a %NULL-terminated string array or %NULL if the specified 
+key cannot be found. The array should be freed with g_strfreev().
 
 </return>
 </function>
 
-<function name="g_param_spec_variant">
+<function name="g_key_file_get_uint64">
 <description>
-Creates a new #GParamSpecVariant instance specifying a #GVariant
-property.
-
-If @default_value is floating, it is consumed.
-
-See g_param_spec_internal() for details on property names.
+Returns the value associated with @key under @group_name as an unsigned
+64-bit integer. This is similar to g_key_file_get_integer() but can return
+large positive results without truncation.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="key_file">
+<parameter_description> a non-%NULL #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="group_name">
+<parameter_description> a non-%NULL group name
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> a #GVariant of type @type to use as the
-default value, or %NULL
+<parameter name="key">
+<parameter_description> a non-%NULL key
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GParamSpec
+<return> the value associated with the key as an unsigned 64-bit integer,
+or 0 if the key was not found or could not be parsed.
 
 </return>
 </function>
 
-<function name="g_source_unref">
+<function name="g_key_file_get_value">
 <description>
-Decreases the reference count of a source by one. If the
-resulting reference count is zero the source and associated
-memory will be destroyed. 
+Returns the raw value associated with @key under @group_name. 
+Use g_key_file_get_string() to retrieve an unescaped UTF-8 string. 
 
-</description>
-<parameters>
-<parameter name="source">
-<parameter_description> a #GSource
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+In the event the key cannot be found, %NULL is returned and 
+ error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND.  In the 
+event that the @group_name cannot be found, %NULL is returned 
+and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
 
-<function name="g_relation_insert">
-<description>
-Inserts a record into a #GRelation.
 
-Deprecated: 2.26: Rarely used API
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the fields of the record to add. These must match the
-number of fields in the #GRelation, and of type #gpointer
-or #gconstpointer.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_atomic_int_add">
-<description>
-Atomically adds @val to the integer pointed to by @atomic.
-Also acts as a memory barrier.
-
-Since: 2.4
-
-</description>
-<parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to an integer
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> the value to add to * atomic
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string or %NULL if the specified 
+key cannot be found.
+
+</return>
 </function>
 
-<function name="g_ptr_array_remove_index">
+<function name="g_key_file_has_group">
 <description>
-Removes the pointer at the given index from the pointer array. The
-following elements are moved down one place. If @array has a
-non-%NULL #GDestroyNotify function it is called for the removed
-element.
+Looks whether the key file has the group @group_name.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the pointer to remove.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
 </parameters>
-<return> the pointer which was removed.
+<return> %TRUE if @group_name is a part of @key_file, %FALSE
+otherwise.
 </return>
 </function>
 
-<function name="g_utf8_prev_char">
+<function name="g_key_file_has_key">
 <description>
-Finds the previous UTF-8 character in the string before @p.
-
- p does not have to be at the beginning of a UTF-8 character. No check
-is made to see if the character found is actually valid other than
-it starts with an appropriate byte. If @p might be the first
-character of the string, you must use g_utf8_find_prev_char() instead.
+Looks whether the key file has the key @key in the group
+ group_name  
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="p">
-<parameter_description> a pointer to a position within a UTF-8 encoded string
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-</parameters>
-<return> a pointer to the found character.
-</return>
-</function>
-
-<function name="g_fprintf">
-<description>
-An implementation of the standard fprintf() function which supports 
-positional parameters, as specified in the Single Unix Specification.
-
-Since: 2.2
-
-</description>
-<parameters>
-<parameter name="file">
-<parameter_description> the stream to write to.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice 
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="key">
+<parameter_description> a key name
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to insert in the output.
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
+<return> %TRUE if @key is a part of @group_name, %FALSE
+otherwise.
 
 </return>
 </function>
 
-<function name="g_value_set_double">
+<function name="g_key_file_load_from_data">
 <description>
-Set the contents of a %G_TYPE_DOUBLE #GValue to @v_double.
+Loads a key file from memory into an empty #GKeyFile structure.  
+If the object cannot be created then %error is set to a #GKeyFileError. 
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_DOUBLE
+<parameter name="key_file">
+<parameter_description> an empty #GKeyFile struct
 </parameter_description>
 </parameter>
-<parameter name="v_double">
-<parameter_description> double value to be set
+<parameter name="data">
+<parameter_description> key file loaded in memory
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="find_conversion">
-<description>
-Find the next conversion in a printf-style format string.
-Partially based on code from printf-parser.c,
-Copyright (C) 1999-2000, 2002-2003 Free Software Foundation, Inc.
-
-
-</description>
-<parameters>
-<parameter name="format">
-<parameter_description> a printf-style format string
+<parameter name="length">
+<parameter_description> the length of @data in bytes
 </parameter_description>
 </parameter>
-<parameter name="after">
-<parameter_description> location to store a pointer to the character after
-the returned conversion. On a %NULL return, returns the
-pointer to the trailing NUL in the string
+<parameter name="flags">
+<parameter_description> flags from #GKeyFileFlags
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> pointer to the next conversion in @format,
-or %NULL, if none.
+<return> %TRUE if a key file could be loaded, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_filename_from_utf8">
+<function name="g_key_file_load_from_data_dirs">
 <description>
-Converts a string from UTF-8 to the encoding GLib uses for
-filenames. Note that on Windows GLib uses UTF-8 for filenames;
-on other platforms, this function indirectly depends on the 
-&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
+This function looks for a key file named @file in the paths 
+returned from g_get_user_data_dir() and g_get_system_data_dirs(), 
+loads the file into @key_file and returns the file's full path in 
+ full_path   If the file could not be loaded then an %error is
+set to either a #GFileError or #GKeyFileError.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="utf8string">
-<parameter_description>    a UTF-8 encoded string.
+<parameter name="key_file">
+<parameter_description> an empty #GKeyFile struct
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description>           the length of the string, or -1 if the string is
-nul-terminated.
+<parameter name="file">
+<parameter_description> a relative path to a filename to open and parse
 </parameter_description>
 </parameter>
-<parameter name="bytes_read">
-<parameter_description>    location to store the number of bytes in the
-input string that were successfully converted, or %NULL.
-Even if the conversion was successful, this may be 
-less than @len if there were partial characters
-at the end of the input. If the error
-#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
-stored will the byte offset after the last valid
-input sequence.
+<parameter name="full_path">
+<parameter_description> return location for a string containing the full path
+of the file, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="bytes_written">
-<parameter_description> the number of bytes stored in the output buffer (not 
-including the terminating nul).
+<parameter name="flags">
+<parameter_description> flags from #GKeyFileFlags 
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description>         location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
-</parameter_description>
-</parameter>
-</parameters>
-<return> The converted string, or %NULL on an error.
-</return>
-</function>
-
-<function name="g_variant_get_normal_form">
-<description>
-Gets a #GVariant instance that has the same value as @value and is
-trusted to be in normal form.
-
-If @value is already trusted to be in normal form then a new
-reference to @value is returned.
-
-If @value is not already trusted, then it is scanned to check if it
-is in normal form.  If it is found to be in normal form then it is
-marked as trusted and a new reference to it is returned.
-
-If @value is found not to be in normal form then a new trusted
-#GVariant is created with the same value as @value.
-
-It makes sense to call this function if you've received #GVariant
-data from untrusted sources and you want to ensure your serialised
-output is definitely in normal form.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a trusted #GVariant
+<return> %TRUE if a key file could be loaded, %FALSE othewise
 </return>
 </function>
 
-<function name="g_value_set_gtype">
+<function name="g_key_file_load_from_dirs">
 <description>
-Set the contents of a %G_TYPE_GTYPE #GValue to @v_gtype.
+This function looks for a key file named @file in the paths
+specified in @search_dirs, loads the file into @key_file and
+returns the file's full path in @full_path.  If the file could not
+be loaded then an %error is set to either a #GFileError or
+#GKeyFileError.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_GTYPE
+<parameter name="key_file">
+<parameter_description> an empty #GKeyFile struct
 </parameter_description>
 </parameter>
-<parameter name="v_gtype">
-<parameter_description> #GType to be set
+<parameter name="file">
+<parameter_description> a relative path to a filename to open and parse
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_value_fits_pointer">
-<description>
-Determines if @value will fit inside the size of a pointer value.
-This is an internal function introduced mainly for C marshallers.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> An initialized #GValue structure.
+<parameter name="search_dirs">
+<parameter_description> %NULL-terminated array of directories to search
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @value will fit inside a pointer value.
-</return>
-</function>
-
-<function name="g_byte_array_append">
-<description>
-Adds the given bytes to the end of the #GByteArray. The array will
-grow in size automatically if necessary.
-
-</description>
-<parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
+<parameter name="full_path">
+<parameter_description> return location for a string containing the full path
+of the file, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the byte data to be added.
+<parameter name="flags">
+<parameter_description> flags from #GKeyFileFlags
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the number of bytes to add.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GByteArray.
+<return> %TRUE if a key file could be loaded, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_slist_sort">
+<function name="g_key_file_load_from_file">
 <description>
-Sorts a #GSList using the given comparison function.
+Loads a key file into an empty #GKeyFile structure.
+If the file could not be loaded then %error is set to 
+either a #GFileError or #GKeyFileError.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="key_file">
+<parameter_description> an empty #GKeyFile struct
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> the comparison function used to sort the #GSList.
-This function is passed the data from 2 elements of the #GSList 
-and should return 0 if they are equal, a negative value if the 
-first element comes before the second, or a positive value if 
-the first element comes after the second.
+<parameter name="file">
+<parameter_description> the path of a filename to load, in the GLib filename encoding
 </parameter_description>
 </parameter>
-</parameters>
-<return> the start of the sorted #GSList
-</return>
-</function>
-
-<function name="g_list_free">
-<description>
-Frees all of the memory used by a #GList.
-The freed elements are returned to the slice allocator.
-
-&lt;note&gt;&lt;para&gt;
-If list elements contain dynamically-allocated memory, 
-they should be freed first.
-&lt;/para&gt;&lt;/note&gt;
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="flags">
+<parameter_description> flags from #GKeyFileFlags
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_async_queue_length_unlocked">
-<description>
-Returns the length of the queue, negative values mean waiting
-threads, positive values mean available entries in the
- queue  Actually this function returns the number of data items in
-the queue minus the number of waiting threads. Thus a return value
-of 0 could mean 'n' entries in the queue and 'n' thread waiting.
-That can happen due to locking of the queue or due to
-scheduling. This function must be called while holding the @queue's
-lock.
-
-
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of the @queue.
+<return> %TRUE if a key file could be loaded, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_list_free1">
+<function name="g_key_file_new">
 <description>
-Another name for g_list_free_1().
+Creates a new empty #GKeyFile object. Use
+g_key_file_load_from_file(), g_key_file_load_from_data(),
+g_key_file_load_from_dirs() or g_key_file_load_from_data_dirs() to
+read an existing key file.
+
+Since: 2.6
 
 </description>
 <parameters>
 </parameters>
-<return></return>
+<return> an empty #GKeyFile.
+
+</return>
 </function>
 
-<function name="g_hash_table_new_full">
+<function name="g_key_file_remove_comment">
 <description>
-Creates a new #GHashTable like g_hash_table_new() with a reference count
-of 1 and allows to specify functions to free the memory allocated for the
-key and value that get called when removing the entry from the #GHashTable.
+Removes a comment above @key from @group_name.
+If @key is %NULL then @comment will be removed above @group_name. 
+If both @key and @group_name are %NULL, then @comment will
+be removed above the first group in the file.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="hash_func">
-<parameter_description> a function to create a hash value from a key.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="key_equal_func">
-<parameter_description> a function to check two keys for equality.
+<parameter name="group_name">
+<parameter_description> a group name, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="key_destroy_func">
-<parameter_description> a function to free the memory allocated for the key
-used when removing the entry from the #GHashTable or %NULL if you
-don't want to supply such a function.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="value_destroy_func">
-<parameter_description> a function to free the memory allocated for the
-value used when removing the entry from the #GHashTable or %NULL if
-you don't want to supply such a function.
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GHashTable.
+<return> %TRUE if the comment was removed, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_io_channel_set_buffered">
+<function name="g_key_file_remove_group">
 <description>
-The buffering state can only be set if the channel's encoding
-is %NULL. For any other encoding, the channel must be buffered.
-
-A buffered channel can only be set unbuffered if the channel's
-internal buffers have been flushed. Newly created channels or
-channels which have returned %G_IO_STATUS_EOF
-not require such a flush. For write-only channels, a call to
-g_io_channel_flush () is sufficient. For all other channels,
-the buffers may be flushed by a call to g_io_channel_seek_position ().
-This includes the possibility of seeking with seek type %G_SEEK_CUR
-and an offset of zero. Note that this means that socket-based
-channels cannot be set unbuffered once they have had data
-read from them.
-
-On unbuffered channels, it is safe to mix read and write
-calls from the new and old APIs, if this is necessary for
-maintaining old code.
+Removes the specified group, @group_name, 
+from the key file. 
 
-The default state of the channel is buffered.
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="buffered">
-<parameter_description> whether to set the channel buffered or unbuffered
+<parameter name="group_name">
+<parameter_description> a group name
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the group was removed, %FALSE otherwise
+
+</return>
 </function>
 
-<function name="g_utf8_find_prev_char">
+<function name="g_key_file_remove_key">
 <description>
-Given a position @p with a UTF-8 encoded string @str, find the start
-of the previous UTF-8 character starting before @p. Returns %NULL if no
-UTF-8 characters are present in @str before @p.
-
- p does not have to be at the beginning of a UTF-8 character. No check
-is made to see if the character found is actually valid other than
-it starts with an appropriate byte.
+Removes @key in @group_name from the key file. 
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> pointer to the beginning of a UTF-8 encoded string
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="p">
-<parameter_description> pointer to some position within @str
+<parameter name="group_name">
+<parameter_description> a group name
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a key name to remove
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the found character or %NULL.
+<return> %TRUE if the key was removed, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_sequence_move">
+<function name="g_key_file_set_boolean">
 <description>
-Moves the item pointed to by @src to the position indicated by @dest.
-After calling this function @dest will point to the position immediately
-after @src. It is allowed for @src and @dest to point into different
-sequences.
+Associates a new boolean value with @key under @group_name.
+If @key cannot be found then it is created. 
 
-Since: 2.14
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="src">
-<parameter_description> a #GSequenceIter pointing to the item to move
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="dest">
-<parameter_description> a #GSequenceIter pointing to the position to which
-the item is moved.
+<parameter name="group_name">
+<parameter_description> a group name
+</parameter_description>
+</parameter>
+<parameter name="key">
+<parameter_description> a key
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> %TRUE or %FALSE
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cond_wait">
+<function name="g_key_file_set_boolean_list">
 <description>
-Waits until this thread is woken up on @cond. The @mutex is unlocked
-before falling asleep and locked again before resuming.
+Associates a list of boolean values with @key under @group_name.  
+If @key cannot be found then it is created.
+If @group_name is %NULL, the start_group is used.
 
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will immediately return.
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="cond">
-<parameter_description> a #GCond.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="mutex">
-<parameter_description> a #GMutex, that is currently locked.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_array_append_vals">
-<description>
-Adds @len elements onto the end of the array.
-
-</description>
-<parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a pointer to the elements to append to the end of the array.
+<parameter name="list">
+<parameter_description> an array of boolean values
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the number of elements to append.
+<parameter name="length">
+<parameter_description> length of @list
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_iter_loop">
+<function name="g_key_file_set_comment">
 <description>
-Gets the next item in the container and unpacks it into the variable
-argument list according to @format_string, returning %TRUE.
-
-If no more items remain then %FALSE is returned.
-
-On the first call to this function, the pointers appearing on the
-variable argument list are assumed to point at uninitialised memory.
-On the second and later calls, it is assumed that the same pointers
-will be given and that they will point to the memory as set by the
-previous call to this function.  This allows the previous values to
-be freed, as appropriate.
-
-This function is intended to be used with a while loop as
-demonstrated in the following example.  This function can only be
-used when iterating over an array.  It is only valid to call this
-function with a string constant for the format string and the same
-string constant must be used each time.  Mixing calls to this
-function and g_variant_iter_next() or g_variant_iter_next_value() on
-the same iterator is not recommended.
-
-See the section on &lt;link linkend='gvariant-format-strings'&gt;GVariant
-Format Strings&lt;/link&gt;.
-
-&lt;example&gt;
-&lt;title&gt;Memory management with g_variant_iter_loop()&lt;/title&gt;
-&lt;programlisting&gt;
-/&lt;!-- --&gt;* Iterates a dictionary of type 'a{sv}' *&lt;!-- --&gt;/
-void
-iterate_dictionary (GVariant *dictionary)
-{
-GVariantIter iter;
-GVariant *value;
-gchar *key;
-
-g_variant_iter_init (&amp;iter, dictionary);
-while (g_variant_iter_loop (&amp;iter, &quot;{sv}&quot;, &amp;key, &amp;value))
-{
-g_print (&quot;Item '%s' has type '%s'\n&quot;, key,
-g_variant_get_type_string (value));
-
-/&lt;!-- --&gt;* no need to free 'key' and 'value' here *&lt;!-- --&gt;/
-}
-}
-&lt;/programlisting&gt;
-&lt;/example&gt;
-
-If you want a slightly less magical alternative that requires more
-typing, see g_variant_iter_next().
+Places a comment above @key from @group_name.
+If @key is %NULL then @comment will be written above @group_name.  
+If both @key and @group_name  are %NULL, then @comment will be 
+written above the first group in the file.
 
-Since: 2.24
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GVariantIter
-</parameter_description>
-</parameter>
-<parameter name="format_string">
-<parameter_description> a GVariant format string
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to unpack the value into
+<parameter name="group_name">
+<parameter_description> a group name, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if a value was unpacked, or %FALSE if there as no
-value
-</return>
-</function>
-
-<function name="g_dpgettext">
-<description>
-This function is a variant of g_dgettext() which supports
-a disambiguating message context. GNU gettext uses the
-'\004' character to separate the message context and
-message id in @msgctxtid.
-If 0 is passed as @msgidoffset, this function will fall back to
-trying to use the deprecated convention of using &quot;|&quot; as a separation
-character.
-
-This uses g_dgettext() internally.  See that functions for differences
-with dgettext() proper.
-
-Applications should normally not use this function directly,
-but use the C_() macro for translations with context.
-
-Since: 2.16
-
-</description>
-<parameters>
-<parameter name="domain">
-<parameter_description> the translation domain to use, or %NULL to use
-the domain set with textdomain()
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="msgctxtid">
-<parameter_description> a combined message context and message id, separated
-by a \004 character
+<parameter name="comment">
+<parameter_description> a comment
 </parameter_description>
 </parameter>
-<parameter name="msgidoffset">
-<parameter_description> the offset of the message id in @msgctxid
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> The translated string
+<return> %TRUE if the comment was written, %FALSE otherwise
 
 </return>
 </function>
 
-<function name="g_bookmark_file_set_added">
+<function name="g_key_file_set_double">
 <description>
-Sets the time the bookmark for @uri was added into @bookmark.
-
-If no bookmark for @uri is found then it is created.
+Associates a new double value with @key under @group_name.
+If @key cannot be found then it is created. 
 
 Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="added">
-<parameter_description> a timestamp or -1 to use the current time
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_main_context_is_owner">
-<description>
-Determines whether this thread holds the (recursive)
-ownership of this #GMaincontext. This is useful to
-know before waiting on another thread that may be
-blocking to get ownership of @context.
-
-Since: 2.10
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="value">
+<parameter_description> an double value
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if current thread is owner of @context.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_datalist_get_data">
+<function name="g_key_file_set_double_list">
 <description>
-Gets a data element, using its string identifer. This is slower than
-g_datalist_id_get_data() because the string is first converted to a
-#GQuark.
+Associates a list of double values with @key under
+ group_name   If @key cannot be found then it is created.
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="k">
-<parameter_description> the string identifying a data element.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-</parameters>
-<return> the data element, or %NULL if it is not found.
-</return>
-</function>
-
-<function name="g_dataset_set_data">
-<description>
-Sets the data corresponding to the given string identifier.
-
-</description>
-<parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="k">
-<parameter_description> the string to identify the data element.
+<parameter name="list">
+<parameter_description> an array of double values
 </parameter_description>
 </parameter>
-<parameter name="d">
-<parameter_description> the data element.
+<parameter name="length">
+<parameter_description> number of double values in @list
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_ptr_array_remove">
+<function name="g_key_file_set_int64">
 <description>
-Removes the first occurrence of the given pointer from the pointer
-array. The following elements are moved down one place. If @array
-has a non-%NULL #GDestroyNotify function it is called for the
-removed element.
+Associates a new integer value with @key under @group_name.
+If @key cannot be found then it is created.
 
-It returns %TRUE if the pointer was removed, or %FALSE if the
-pointer was not found.
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the pointer to remove.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the pointer is removed. %FALSE if the pointer is
-not found in the array.
-</return>
-</function>
-
-<function name="g_datalist_clear">
-<description>
-Frees all the data elements of the datalist. The data elements'
-destroy functions are called if they have been set.
-
-</description>
-<parameters>
-<parameter name="datalist">
-<parameter_description> a datalist.
+<parameter name="key">
+<parameter_description> a key
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> an integer value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_source_set_callback_indirect">
+<function name="g_key_file_set_integer">
 <description>
-Sets the callback function storing the data as a refcounted callback
-&quot;object&quot;. This is used internally. Note that calling 
-g_source_set_callback_indirect() assumes
-an initial reference count on @callback_data, and thus
- callback_funcs-&gt;unref will eventually be called once more
-than @callback_funcs-&gt;ref.
+Associates a new integer value with @key under @group_name.
+If @key cannot be found then it is created.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> the source
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="callback_data">
-<parameter_description> pointer to callback data &quot;object&quot;
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="callback_funcs">
-<parameter_description> functions for reference counting @callback_data
-and getting the callback and data
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_allocator_free">
-<description>
-Frees all of the memory allocated by the #GAllocator.
-
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
-
-</description>
-<parameters>
-<parameter name="allocator">
-<parameter_description> a #GAllocator.
+<parameter name="value">
+<parameter_description> an integer value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_get_int64">
+<function name="g_key_file_set_integer_list">
 <description>
-Returns the 64-bit signed integer value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_INT64.
+Associates a list of integer values with @key under @group_name.  
+If @key cannot be found then it is created.
 
-Since: 2.24
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a int64 #GVariant instance
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #gint64
-</return>
-</function>
-
-<function name="g_strlcpy">
-<description>
-Portability wrapper that calls strlcpy() on systems which have it, 
-and emulates strlcpy() otherwise. Copies @src to @dest; @dest is 
-guaranteed to be nul-terminated; @src must be nul-terminated; 
- dest_size is the buffer size, not the number of chars to copy. 
-
-At most dest_size - 1 characters will be copied. Always nul-terminates
-(unless dest_size == 0). This function does &lt;emphasis&gt;not&lt;/emphasis&gt; 
-allocate memory. Unlike strncpy(), this function doesn't pad dest (so 
-it's often faster). It returns the size of the attempted result, 
-strlen (src), so if @retval &gt;= @dest_size, truncation occurred.
-
-&lt;note&gt;&lt;para&gt;Caveat: strlcpy() is supposedly more secure than
-strcpy() or strncpy(), but if you really want to avoid screwups, 
-g_strdup() is an even better idea.&lt;/para&gt;&lt;/note&gt;
-
-
-</description>
-<parameters>
-<parameter name="dest">
-<parameter_description> destination buffer
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="src">
-<parameter_description> source buffer
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="dest_size">
-<parameter_description> length of @dest in bytes
+<parameter name="list">
+<parameter_description> an array of integer values
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> number of integer values in @list
 </parameter_description>
 </parameter>
 </parameters>
-<return> length of @src
-</return>
+<return></return>
 </function>
 
-<function name="g_option_context_new">
+<function name="g_key_file_set_list_separator">
 <description>
-Creates a new option context. 
-
-The @parameter_string can serve multiple purposes. It can be used
-to add descriptions for &quot;rest&quot; arguments, which are not parsed by
-the #GOptionContext, typically something like &quot;FILES&quot; or
-&quot;FILE1 FILE2...&quot;. If you are using #G_OPTION_REMAINING for
-collecting &quot;rest&quot; arguments, GLib handles this automatically by
-using the @arg_description of the corresponding #GOptionEntry in
-the usage summary.
-
-Another usage is to give a short summary of the program
-functionality, like &quot; - frob the strings&quot;, which will be displayed
-in the same line as the usage. For a longer description of the
-program functionality that should be displayed as a paragraph
-below the usage line, use g_option_context_set_summary().
-
-Note that the @parameter_string is translated using the
-function set with g_option_context_set_translate_func(), so
-it should normally be passed untranslated.
+Sets the character which is used to separate
+values in lists. Typically ';' or ',' are used
+as separators. The default list separator is ';'.
 
 Since: 2.6
 
 </description>
 <parameters>
-<parameter name="parameter_string">
-<parameter_description> a string which is displayed in
-the first line of &lt;option&gt;--help&lt;/option&gt; output, after the
-usage summary 
-&lt;literal&gt;&lt;replaceable&gt;programname&lt;/replaceable&gt; [OPTION...]&lt;/literal&gt;
+<parameter name="key_file">
+<parameter_description> a #GKeyFile 
+</parameter_description>
+</parameter>
+<parameter name="separator">
+<parameter_description> the separator
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created #GOptionContext, which must be
-freed with g_option_context_free() after use.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_key_file_has_group">
+<function name="g_key_file_set_locale_string">
 <description>
-Looks whether the key file has the group @group_name.
+Associates a string value for @key and @locale under @group_name.
+If the translation for @key cannot be found then it is created.
 
 Since: 2.6
 
@@ -12983,1707 +12052,1418 @@ Since: 2.6
 <parameter_description> a group name
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @group_name is a part of @key_file, %FALSE
-otherwise.
-</return>
-</function>
-
-<function name="g_param_value_validate">
-<description>
-Ensures that the contents of @value comply with the specifications
-set out by @pspec. For example, a #GParamSpecInt might require
-that integers stored in @value may not be smaller than -42 and not be
-greater than +42. If @value contains an integer outside of this range,
-it is modified accordingly, so the resulting value will fit into the
-range -42 .. +42.
-
-
-</description>
-<parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue of correct type for @pspec
+<parameter name="locale">
+<parameter_description> a locale identifier
+</parameter_description>
+</parameter>
+<parameter name="string">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether modifying @value was necessary to ensure validity
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_handler_find">
+<function name="g_key_file_set_locale_string_list">
 <description>
-Finds the first signal handler that matches certain selection criteria.
-The criteria mask is passed as an OR-ed combination of #GSignalMatchType
-flags, and the criteria values are passed as arguments.
-The match @mask has to be non-0 for successful matches.
-If no handler was found, 0 is returned.
+Associates a list of string values for @key and @locale under
+ group_name   If the translation for @key cannot be found then
+it is created. 
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance owning the signal handler to be found.
-</parameter_description>
-</parameter>
-<parameter name="mask">
-<parameter_description> Mask indicating which of @signal_id, @detail, @closure, @func
-and/or @data the handler has to match.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="signal_id">
-<parameter_description> Signal the handler has to be connected to.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="detail">
-<parameter_description> Signal detail the handler has to be connected to.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="closure">
-<parameter_description> The closure the handler will invoke.
+<parameter name="locale">
+<parameter_description> a locale identifier
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> The C closure callback of the handler (useless for non-C closures).
+<parameter name="list">
+<parameter_description> a %NULL-terminated array of locale string values
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> The closure data of the handler's closure.
+<parameter name="length">
+<parameter_description> the length of @list
 </parameter_description>
 </parameter>
 </parameters>
-<return> A valid non-0 signal handler id for a successful match.
-</return>
+<return></return>
 </function>
 
-<function name="g_unichar_isalnum">
+<function name="g_key_file_set_string">
 <description>
-Determines whether a character is alphanumeric.
-Given some UTF-8 text, obtain a character value
-with g_utf8_get_char().
+Associates a new string value with @key under @group_name.  
+If @key cannot be found then it is created.  
+If @group_name cannot be found then it is created.
+Unlike g_key_file_set_value(), this function handles characters
+that need escaping, such as newlines.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @c is an alphanumeric character
-</return>
-</function>
-
-<function name="g_io_channel_unref">
-<description>
-Decrements the reference count of a #GIOChannel.
-
-</description>
-<parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_utime">
-<description>
-A wrapper for the POSIX utime() function. The utime() function
-sets the access and modification timestamps of a file.
-
-See your C library manual for more details about how utime() works
-on your system.
-
-Since: 2.18
-
-</description>
-<parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="utb">
-<parameter_description> a pointer to a struct utimbuf.
+<parameter name="string">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the operation was successful, -1 if an error 
-occurred
-
-</return>
+<return></return>
 </function>
 
-<function name="g_type_check_instance">
+<function name="g_key_file_set_string_list">
 <description>
-Private helper function to aid implementation of the G_TYPE_CHECK_INSTANCE()
-macro.
+Associates a list of string values for @key under @group_name.
+If @key cannot be found then it is created.
+If @group_name cannot be found then it is created.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> A valid #GTypeInstance structure.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-</parameters>
-<return>  #TRUE if @instance is valid, #FALSE otherwise.
-</return>
-</function>
-
-<function name="g_string_append_len">
-<description>
-Appends @len bytes of @val to @string. Because @len is 
-provided, @val may contain embedded nuls and need not 
-be nul-terminated.
-
-Since this function does not stop at nul bytes, it is 
-the caller's responsibility to ensure that @val has at 
-least @len addressable bytes.
-
-
-</description>
-<parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> bytes to append
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> number of bytes of @val to use
+<parameter name="list">
+<parameter_description> an array of string values
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> number of string values in @list
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_has_handler_pending">
+<function name="g_key_file_set_uint64">
 <description>
-Returns whether there are any handlers connected to @instance for the
-given signal id and detail.
-
-One example of when you might use this is when the arguments to the
-signal are difficult to compute. A class implementor may opt to not
-emit the signal if no one is attached anyway, thus saving the cost
-of building the arguments.
+Associates a new integer value with @key under @group_name.
+If @key cannot be found then it is created.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the object whose signal handlers are sought.
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="signal_id">
-<parameter_description> the signal id.
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="detail">
-<parameter_description> the detail.
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="may_be_blocked">
-<parameter_description> whether blocked handlers should count as match.
+<parameter name="value">
+<parameter_description> an integer value
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a handler is connected to the signal, %FALSE
-otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_enum">
+<function name="g_key_file_set_value">
 <description>
-Creates a new #GParamSpecEnum instance specifying a %G_TYPE_ENUM
-property.
+Associates a new value with @key under @group_name.  
 
-See g_param_spec_internal() for details on property names.
+If @key cannot be found then it is created. If @group_name cannot 
+be found then it is created. To set an UTF-8 string which may contain 
+characters that need escaping (such as newlines or spaces), use 
+g_key_file_set_string().
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
-<parameter name="enum_type">
-<parameter_description> a #GType derived from %G_TYPE_ENUM
+<parameter name="group_name">
+<parameter_description> a group name
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="key">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="value">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_dup_bytestring">
+<function name="g_key_file_to_data">
 <description>
-Similar to g_variant_get_bytestring() except that instead of
-returning a constant string, the string is duplicated.
+This function outputs @key_file as a string.  
 
-The return value must be freed using g_free().
+Note that this function never reports an error,
+so it is safe to pass %NULL as @error.
 
-Since: 2.26
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> an array-of-bytes #GVariant instance
+<parameter name="key_file">
+<parameter_description> a #GKeyFile
 </parameter_description>
 </parameter>
 <parameter name="length">
-<parameter_description> a pointer to a #gsize, to store
-the length (not including the nul terminator)
+<parameter_description> return location for the length of the 
+returned string, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string
+<return> a newly allocated string holding
+the contents of the #GKeyFile 
+
 </return>
 </function>
 
-<function name="g_value_set_long">
+<function name="g_list_alloc">
 <description>
-Set the contents of a %G_TYPE_LONG #GValue to @v_long.
+Allocates space for one #GList element. It is called by
+g_list_append(), g_list_prepend(), g_list_insert() and
+g_list_insert_sorted() and so is rarely used on its own.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_LONG
-</parameter_description>
-</parameter>
-<parameter name="v_long">
-<parameter_description> long integer value to be set
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a pointer to the newly-allocated #GList element.
+</return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__DOUBLE">
+<function name="g_list_append">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gdouble arg1, gpointer user_data)&lt;/literal&gt;.
+Adds a new element on to the end of the list.
 
-</description>
-<parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gdouble parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+&lt;note&gt;&lt;para&gt;
+The return value is the new start of the list, which 
+may have changed, so make sure you store the new value.
+&lt;/para&gt;&lt;/note&gt;
 
-<function name="g_time_val_from_iso8601">
-<description>
-Converts a string containing an ISO 8601 encoded date and time
-to a #GTimeVal and puts it into @time_.
+&lt;note&gt;&lt;para&gt;
+Note that g_list_append() has to traverse the entire list 
+to find the end, which is inefficient when adding multiple 
+elements. A common idiom to avoid the inefficiency is to prepend 
+the elements and reverse the list when all elements have been added.
+&lt;/para&gt;&lt;/note&gt;
+
+|[
+/ * Notice that these are initialized to the empty list. * /
+GList *list = NULL, *number_list = NULL;
+
+/ * This is a list of strings. * /
+list = g_list_append (list, &quot;first&quot;);
+list = g_list_append (list, &quot;second&quot;);
+
+/ * This is a list of integers. * /
+number_list = g_list_append (number_list, GINT_TO_POINTER (27));
+number_list = g_list_append (number_list, GINT_TO_POINTER (14));
+]|
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="iso_date">
-<parameter_description> an ISO 8601 encoded date string
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-<parameter name="time_">
-<parameter_description> a #GTimeVal
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the conversion was successful.
-
+<return> the new start of the #GList
 </return>
 </function>
 
-<function name="g_async_queue_push">
+<function name="g_list_concat">
 <description>
-Pushes the @data into the @queue. @data must not be %NULL.
+Adds the second #GList onto the end of the first #GList.
+Note that the elements of the second #GList are not copied.
+They are used directly.
+
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="list1">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> @data to push into the @queue.
+<parameter name="list2">
+<parameter_description> the #GList to add to the end of the first #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the start of the new #GList
+</return>
 </function>
 
-<function name="g_param_spec_set_qdata">
+<function name="g_list_copy">
 <description>
-Sets an opaque, named pointer on a #GParamSpec. The name is
-specified through a #GQuark (retrieved e.g. via
-g_quark_from_static_string()), and the pointer can be gotten back
-from the @pspec with g_param_spec_get_qdata().  Setting a
-previously set user data pointer, overrides (frees) the old pointer
-set, using %NULL as pointer essentially removes the data stored.
+Copies a #GList.
+
+&lt;note&gt;&lt;para&gt;
+Note that this is a &quot;shallow&quot; copy. If the list elements 
+consist of pointers to data, the pointers are copied but 
+the actual data is not.
+&lt;/para&gt;&lt;/note&gt;
+
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec to set store a user data pointer
-</parameter_description>
-</parameter>
-<parameter name="quark">
-<parameter_description> a #GQuark, naming the user data pointer
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> an opaque user data pointer
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a copy of @list
+</return>
 </function>
 
-<function name="g_thread_exit">
+<function name="g_list_delete_link">
 <description>
-Exits the current thread. If another thread is waiting for that
-thread using g_thread_join() and the current thread is joinable, the
-waiting thread will be woken up and get @retval as the return value
-of g_thread_join(). If the current thread is not joinable, @retval
-is ignored. Calling
-
-&lt;informalexample&gt;
-&lt;programlisting&gt;
-g_thread_exit (retval);
-&lt;/programlisting&gt;
-&lt;/informalexample&gt;
-
-is equivalent to returning @retval from the function @func, as given
-to g_thread_create().
+Removes the node link_ from the list and frees it. 
+Compare this to g_list_remove_link() which removes the node 
+without freeing it.
 
-&lt;note&gt;&lt;para&gt;Never call g_thread_exit() from within a thread of a
-#GThreadPool, as that will mess up the bookkeeping and lead to funny
-and unwanted results.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="retval">
-<parameter_description> the return value of this thread.
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="link_">
+<parameter_description> node to delete from @list
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new head of @list
+</return>
 </function>
 
-<function name="g_dcgettext">
+<function name="g_list_find">
 <description>
-This is a variant of g_dgettext() that allows specifying a locale
-category instead of always using %LC_MESSAGES. See g_dgettext() for
-more information about how this functions differs from calling
-dcgettext() directly.
+Finds the element in a #GList which 
+contains the given data.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="domain">
-<parameter_description> the translation domain to use, or %NULL to use
-the domain set with textdomain()
-</parameter_description>
-</parameter>
-<parameter name="msgid">
-<parameter_description> message to translate
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="category">
-<parameter_description> a locale category
+<parameter name="data">
+<parameter_description> the element data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> the translated string for the given locale category
-
+<return> the found #GList element, 
+or %NULL if it is not found
 </return>
 </function>
 
-<function name="g_strstr_len">
+<function name="g_list_find_custom">
 <description>
-Searches the string @haystack for the first occurrence
-of the string @needle, limiting the length of the search
-to @haystack_len. 
+Finds an element in a #GList, using a supplied function to 
+find the desired element. It iterates over the list, calling 
+the given function which should return 0 when the desired 
+element is found. The function takes two #gconstpointer arguments, 
+the #GList element's data as the first argument and the 
+given user data.
 
 
 </description>
 <parameters>
-<parameter name="haystack">
-<parameter_description> a string.
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="haystack_len">
-<parameter_description> the maximum length of @haystack. Note that -1 is
-a valid length, if @haystack is nul-terminated, meaning it will
-search through the whole string.
+<parameter name="data">
+<parameter_description> user data passed to the function
 </parameter_description>
 </parameter>
-<parameter name="needle">
-<parameter_description> the string to search for.
+<parameter name="func">
+<parameter_description> the function to call for each element. 
+It should return 0 when the desired element is found
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the found occurrence, or
-%NULL if not found.
+<return> the found #GList element, or %NULL if it is not found
 </return>
 </function>
 
-<function name="g_unichar_isxdigit">
+<function name="g_list_first">
 <description>
-Determines if a character is a hexidecimal digit.
+Gets the first element in a #GList.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character.
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the character is a hexadecimal digit
+<return> the first element in the #GList, 
+or %NULL if the #GList has no elements
 </return>
 </function>
 
-<function name="g_string_chunk_clear">
+<function name="g_list_foreach">
 <description>
-Frees all strings contained within the #GStringChunk.
-After calling g_string_chunk_clear() it is not safe to
-access any of the strings which were contained within it.
-
-Since: 2.14
+Calls a function for each element of a #GList.
 
 </description>
 <parameters>
-<parameter name="chunk">
-<parameter_description> a #GStringChunk
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the function to call with each element's data
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_array_ref">
+<function name="g_list_free">
 <description>
-Atomically increments the reference count of @array by one. This
-function is MT-safe and may be called from any thread.
+Frees all of the memory used by a #GList.
+The freed elements are returned to the slice allocator.
 
-Since: 2.22
+&lt;note&gt;&lt;para&gt;
+If list elements contain dynamically-allocated memory, 
+you should either use g_list_free_full() or free them manually
+first.
+&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GArray.
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return> The passed in #GArray.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_async_queue_unref">
+<function name="g_list_free1">
 <description>
-Decreases the reference count of the asynchronous @queue by 1. If
-the reference count went to 0, the @queue will be destroyed and the
-memory allocated will be freed. So you are not allowed to use the
- queue afterwards, as it might have disappeared. You do not need to
-hold the lock to call this function.
+Another name for g_list_free_1().
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_stat">
+<function name="g_list_free_1">
 <description>
-A wrapper for the POSIX stat() function. The stat() function
-returns information about a file. On Windows the stat() function in
-the C library checks only the FAT-style READONLY attribute and does
-not look at the ACL at all. Thus on Windows the protection bits in
-the st_mode field are a fabrication of little use.
-
-On Windows the Microsoft C libraries have several variants of the
-&lt;structname&gt;stat&lt;/structname&gt; struct and stat() function with names
-like &quot;_stat&quot;, &quot;_stat32&quot;, &quot;_stat32i64&quot; and &quot;_stat64i32&quot;. The one
-used here is for 32-bit code the one with 32-bit size and time
-fields, specifically called &quot;_stat32&quot;.
-
-In Microsoft's compiler, by default &quot;struct stat&quot; means one with
-64-bit time fields while in MinGW &quot;struct stat&quot; is the legacy one
-with 32-bit fields. To hopefully clear up this messs, the gstdio.h
-header defines a type GStatBuf which is the appropriate struct type
-depending on the platform and/or compiler being used. On POSIX it
-is just &quot;struct stat&quot;, but note that even on POSIX platforms,
-&quot;stat&quot; might be a macro.
-
-See your C library manual for more details about stat().
-
-Since: 2.6
+Frees one #GList element.
+It is usually used after g_list_remove_link().
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
-</parameter_description>
-</parameter>
-<parameter name="buf">
-<parameter_description> a pointer to a &lt;structname&gt;stat&lt;/structname&gt; struct, which
-will be filled with the file information
+<parameter name="list">
+<parameter_description> a #GList element
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the information was successfully retrieved, -1 if an error 
-occurred
-
-</return>
+<return></return>
 </function>
 
-<function name="g_timeout_source_new_seconds">
+<function name="g_list_free_full">
 <description>
-Creates a new timeout source.
+Convenience method, which frees all the memory used by a #GList, and
+calls the specified destroy function on every element's data.
 
-The source will not initially be associated with any #GMainContext
-and must be added to one with g_source_attach() before it will be
-executed.
-
-The scheduling granularity/accuracy of this timeout source will be
-in seconds.
-
-Since: 2.14	
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> the timeout interval in seconds
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-</parameters>
-<return> the newly-created timeout source
-
-</return>
-</function>
-
-<function name="g_atexit">
-<description>
-Specifies a function to be called at normal program termination.
-
-Since GLib 2.8.2, on Windows g_atexit() actually is a preprocessor
-macro that maps to a call to the atexit() function in the C
-library. This means that in case the code that calls g_atexit(),
-i.e. atexit(), is in a DLL, the function will be called when the
-DLL is detached from the program. This typically makes more sense
-than that the function is called when the GLib DLL is detached,
-which happened earlier when g_atexit() was a function in the GLib
-DLL.
-
-The behaviour of atexit() in the context of dynamically loaded
-modules is not formally specified and varies wildly.
-
-On POSIX systems, calling g_atexit() (or atexit()) in a dynamically
-loaded module which is unloaded before the program terminates might
-well cause a crash at program exit.
-
-Some POSIX systems implement atexit() like Windows, and have each
-dynamically loaded module maintain an own atexit chain that is
-called when the module is unloaded.
-
-On other POSIX systems, before a dynamically loaded module is
-unloaded, the registered atexit functions (if any) residing in that
-module are called, regardless where the code that registered them
-resided. This is presumably the most robust approach.
-
-As can be seen from the above, for portability it's best to avoid
-calling g_atexit() (or atexit()) except in the main executable of a
-program.
-
-</description>
-<parameters>
-<parameter name="func">
-<parameter_description> the function to call on normal program termination.
+<parameter name="free_func">
+<parameter_description> the function to be called to free each element's data
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_ascii_dtostr">
+<function name="g_list_index">
 <description>
-Converts a #gdouble to a string, using the '.' as
-decimal point. 
-
-This functions generates enough precision that converting
-the string back using g_ascii_strtod() gives the same machine-number
-(on machines with IEEE compatible 64bit doubles). It is
-guaranteed that the size of the resulting string will never
-be larger than @G_ASCII_DTOSTR_BUF_SIZE bytes.
+Gets the position of the element containing 
+the given data (starting from 0).
 
 
 </description>
 <parameters>
-<parameter name="buffer">
-<parameter_description> A buffer to place the resulting string in
-</parameter_description>
-</parameter>
-<parameter name="buf_len">
-<parameter_description> The length of the buffer.
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="d">
-<parameter_description> The #gdouble to convert
+<parameter name="data">
+<parameter_description> the data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> The pointer to the buffer with the converted string.
+<return> the index of the element containing the data, 
+or -1 if the data is not found
 </return>
 </function>
 
-<function name="g_test_add">
+<function name="g_list_insert">
 <description>
-Hook up a new test case at @testpath, similar to g_test_add_func().
-A fixture data structure with setup and teardown function may be provided
-though, similar to g_test_create_case().
-g_test_add() is implemented as a macro, so that the fsetup(), ftest() and
-fteardown() callbacks can expect a @Fixture pointer as first argument in
-a type safe manner.
+Inserts a new element into the list at the given position.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="testpath">
-<parameter_description>  The test path for a new test case.
-</parameter_description>
-</parameter>
-<parameter name="Fixture">
-<parameter_description>   The type of a fixture data structure.
-</parameter_description>
-</parameter>
-<parameter name="tdata">
-<parameter_description>     Data argument for the test functions.
-</parameter_description>
-</parameter>
-<parameter name="fsetup">
-<parameter_description>    The function to set up the fixture data.
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-<parameter name="ftest">
-<parameter_description>     The actual test function.
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="fteardown">
-<parameter_description> The function to tear down the fixture data.
+<parameter name="position">
+<parameter_description> the position to insert the element. If this is 
+negative, or is larger than the number of elements in the 
+list, the new element is added on to the end of the list.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new start of the #GList
+</return>
 </function>
 
-<function name="g_signal_handlers_disconnect_matched">
+<function name="g_list_insert_before">
 <description>
-Disconnects all handlers on an instance that match a certain
-selection criteria. The criteria mask is passed as an OR-ed
-combination of #GSignalMatchType flags, and the criteria values are
-passed as arguments.  Passing at least one of the
-%G_SIGNAL_MATCH_CLOSURE, %G_SIGNAL_MATCH_FUNC or
-%G_SIGNAL_MATCH_DATA match flags is required for successful
-matches.  If no handlers were found, 0 is returned, the number of
-disconnected handlers otherwise.
+Inserts a new element into the list before the given position.
 
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance to remove handlers from.
-</parameter_description>
-</parameter>
-<parameter name="mask">
-<parameter_description> Mask indicating which of @signal_id, @detail, @closure, @func
-and/or @data the handlers have to match.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> Signal the handlers have to be connected to.
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> Signal detail the handlers have to be connected to.
-</parameter_description>
-</parameter>
-<parameter name="closure">
-<parameter_description> The closure the handlers will invoke.
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> The C closure callback of the handlers (useless for non-C closures).
+<parameter name="sibling">
+<parameter_description> the list element before which the new element 
+is inserted or %NULL to insert at the end of the list
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description> The closure data of the handlers' closures.
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of handlers that matched.
+<return> the new start of the #GList
 </return>
 </function>
 
-<function name="g_test_trap_fork">
+<function name="g_list_insert_sorted">
 <description>
-Fork the current test program to execute a test case that might
-not return or that might abort. The forked test case is aborted
-and considered failing if its run time exceeds @usec_timeout.
-
-The forking behavior can be configured with the #GTestTrapFlags flags.
-
-In the following example, the test code forks, the forked child
-process produces some sample output and exits successfully.
-The forking parent process then asserts successful child program
-termination and validates child program outputs.
-
-|[
-static void
-test_fork_patterns (void)
-{
-if (g_test_trap_fork (0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR))
-{
-g_print (&quot;some stdout text: somagic17\n&quot;);
-g_printerr (&quot;some stderr text: semagic43\n&quot;);
-exit (0); / * successful test run * /
-}
-g_test_trap_assert_passed();
-g_test_trap_assert_stdout (&quot;*somagic17*&quot;);
-g_test_trap_assert_stderr (&quot;*semagic43*&quot;);
-}
-]|
-
-This function is implemented only on Unix platforms.
+Inserts a new element into the list, using the given comparison 
+function to determine its position.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="usec_timeout">
-<parameter_description>    Timeout for the forked test in micro seconds.
-</parameter_description>
-</parameter>
-<parameter name="test_trap_flags">
-<parameter_description> Flags to modify forking behaviour.
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE for the forked child and %FALSE for the executing parent process.
-
-</return>
-</function>
-
-<function name="g_main_context_find_source_by_user_data">
-<description>
-Finds a source with the given user data for the callback.  If
-multiple sources exist with the same user data, the first
-one found will be returned.
-
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the user_data for the callback.
+<parameter name="func">
+<parameter_description> the function to compare elements in the list. It should 
+return a number &gt; 0 if the first parameter comes after the 
+second parameter in the sort order.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the source, if one was found, otherwise %NULL
+<return> the new start of the #GList
 </return>
 </function>
 
-<function name="g_spawn_async">
+<function name="g_list_insert_sorted_with_data">
 <description>
-See g_spawn_async_with_pipes() for a full description; this function
-simply calls the g_spawn_async_with_pipes() without any pipes.
-
-You should call g_spawn_close_pid() on the returned child process
-reference when you don't need it any more.
-
-&lt;note&gt;&lt;para&gt;
-If you are writing a GTK+ application, and the program you 
-are spawning is a graphical application, too, then you may
-want to use gdk_spawn_on_screen() instead to ensure that 
-the spawned program opens its windows on the right screen.
-&lt;/para&gt;&lt;/note&gt;
-
-&lt;note&gt;&lt;para&gt; Note that the returned @child_pid on Windows is a
-handle to the child process and not its identifier. Process handles
-and process identifiers are different concepts on Windows.
-&lt;/para&gt;&lt;/note&gt;
+Inserts a new element into the list, using the given comparison 
+function to determine its position.
 
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="working_directory">
-<parameter_description> child's current working directory, or %NULL to inherit parent's
-</parameter_description>
-</parameter>
-<parameter name="argv">
-<parameter_description> child's argument vector
-</parameter_description>
-</parameter>
-<parameter name="envp">
-<parameter_description> child's environment, or %NULL to inherit parent's
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags from #GSpawnFlags
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="child_setup">
-<parameter_description> function to run in the child just before exec()
+<parameter name="func">
+<parameter_description> the function to compare elements in the list. 
+It should return a number &gt; 0 if the first parameter 
+comes after the second parameter in the sort order.
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data for @child_setup
-</parameter_description>
-</parameter>
-<parameter name="child_pid">
-<parameter_description> return location for child process reference, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for error
+<parameter_description> user data to pass to comparison function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if error is set
+<return> the new start of the #GList
+
 </return>
 </function>
 
-<function name="g_object_class_find_property">
+<function name="g_list_last">
 <description>
-Looks up the #GParamSpec for a property of a class.
+Gets the last element in a #GList.
 
 
 </description>
 <parameters>
-<parameter name="oclass">
-<parameter_description> a #GObjectClass
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of the property to look up
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GParamSpec for the property, or %NULL if the class
-doesn't have a property of that name
+<return> the last element in the #GList, 
+or %NULL if the #GList has no elements
 </return>
 </function>
 
-<function name="g_string_sprintfa">
+<function name="g_list_length">
 <description>
-Appends a formatted string onto the end of a #GString.
-This function is similar to g_string_sprintf() except that
-the text is appended to the #GString. 
+Gets the number of elements in a #GList.
+
+&lt;note&gt;&lt;para&gt;
+This function iterates over the whole list to 
+count its elements.
+&lt;/para&gt;&lt;/note&gt;
 
-Deprecated: This function has been renamed to g_string_append_printf()
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> the string format. See the sprintf() documentation
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> the parameters to insert into the format string
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of elements in the #GList
+</return>
 </function>
 
-<function name="g_closure_ref">
+<function name="g_list_next">
 <description>
-Increments the reference count on a closure to force it staying
-alive while the caller holds a pointer to it.
-
+A convenience macro to get the next element in a #GList.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> #GClosure to increment the reference count on
+<parameter name="list">
+<parameter_description> an element in a #GList.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The @closure passed in, for convenience
+<return> the next element, or %NULL if there are no more elements.
 </return>
 </function>
 
-<function name="g_random_set_seed">
+<function name="g_list_nth">
 <description>
-Sets the seed for the global random number generator, which is used
-by the &lt;function&gt;g_random_*&lt;/function&gt; functions, to @seed.
+Gets the element at the given position in a #GList.
+
 
 </description>
 <parameters>
-<parameter name="seed">
-<parameter_description> a value to reinitialize the global random number generator.
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="n">
+<parameter_description> the position of the element, counting from 0
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the element, or %NULL if the position is off 
+the end of the #GList
+</return>
 </function>
 
-<function name="g_option_group_new">
+<function name="g_list_nth_data">
 <description>
-Creates a new #GOptionGroup.
+Gets the data of the element at the given position.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name for the option group, this is used to provide
-help for the options in this group with &lt;option&gt;--help-&lt;/option&gt;@name
-</parameter_description>
-</parameter>
-<parameter name="description">
-<parameter_description> a description for this group to be shown in 
-&lt;option&gt;--help&lt;/option&gt;. This string is translated using the translation
-domain or translation function of the group
-</parameter_description>
-</parameter>
-<parameter name="help_description">
-<parameter_description> a description for the &lt;option&gt;--help-&lt;/option&gt;@name option.
-This string is translated using the translation domain or translation function
-of the group
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data that will be passed to the pre- and post-parse hooks,
-the error hook and to callbacks of %G_OPTION_ARG_CALLBACK options, or %NULL
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="destroy">
-<parameter_description> a function that will be called to free @user_data, or %NULL
+<parameter name="n">
+<parameter_description> the position of the element
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created option group. It should be added 
-to a #GOptionContext or freed with g_option_group_free().
-
+<return> the element's data, or %NULL if the position 
+is off the end of the #GList
 </return>
 </function>
 
-<function name="g_binding_get_target">
+<function name="g_list_nth_prev">
 <description>
-Retrieves the #GObject instance used as the target of the binding
+Gets the element @n places before @list.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="binding">
-<parameter_description> a #GBinding
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="n">
+<parameter_description> the position of the element, counting from 0
 </parameter_description>
 </parameter>
 </parameters>
-<return> the target #GObject
-
+<return> the element, or %NULL if the position is 
+off the end of the #GList
 </return>
 </function>
 
-<function name="g_thread_pool_get_max_unused_threads">
+<function name="g_list_pop_allocator">
 <description>
-Returns the maximal allowed number of unused threads.
+Restores the previous #GAllocator, used when allocating #GList
+elements.
 
+Note that this function is not available if GLib has been compiled
+with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
+
+Deprecated:2.10: It does nothing, since #GList has been converted
+to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt;
 
 </description>
 <parameters>
 </parameters>
-<return> the maximal number of unused threads
-</return>
+<return></return>
 </function>
 
-<function name="g_int_equal">
+<function name="g_list_position">
 <description>
-Compares the two #gint values being pointed to and returns 
-%TRUE if they are equal.
-It can be passed to g_hash_table_new() as the @key_equal_func
-parameter, when using pointers to integers as keys in a #GHashTable.
+Gets the position of the given element 
+in the #GList (starting from 0).
 
 
 </description>
 <parameters>
-<parameter name="v1">
-<parameter_description> a pointer to a #gint key.
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="v2">
-<parameter_description> a pointer to a #gint key to compare with @v1.
+<parameter name="llink">
+<parameter_description> an element in the #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the two keys match.
+<return> the position of the element in the #GList, 
+or -1 if the element is not found
 </return>
 </function>
 
-<function name="g_signal_emit">
+<function name="g_list_prepend">
 <description>
-Emits a signal.
+Adds a new element on to the start of the list.
+
+&lt;note&gt;&lt;para&gt;
+The return value is the new start of the list, which 
+may have changed, so make sure you store the new value.
+&lt;/para&gt;&lt;/note&gt;
+
+|[ 
+/ * Notice that it is initialized to the empty list. * /
+GList *list = NULL;
+list = g_list_prepend (list, &quot;last&quot;);
+list = g_list_prepend (list, &quot;first&quot;);
+]|
 
-Note that g_signal_emit() resets the return value to the default
-if no handlers are connected, in contrast to g_signal_emitv().
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance the signal is being emitted on.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> the signal id
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> the detail
+<parameter name="list">
+<parameter_description> a pointer to a #GList
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> parameters to be passed to the signal, followed by a
-location for the return value. If the return type of the signal
-is #G_TYPE_NONE, the return value location can be omitted.
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new start of the #GList
+</return>
 </function>
 
-<function name="g_byte_array_free">
+<function name="g_list_previous">
 <description>
-Frees the memory allocated by the #GByteArray. If @free_segment is
-%TRUE it frees the actual byte data. If the reference count of
- array is greater than one, the #GByteArray wrapper is preserved but
-the size of @array will be set to zero.
+A convenience macro to get the previous element in a #GList.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
-</parameter_description>
-</parameter>
-<parameter name="free_segment">
-<parameter_description> if %TRUE the actual byte data is freed as well.
+<parameter name="list">
+<parameter_description> an element in a #GList.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element data if @free_segment is %FALSE, otherwise
-%NULL.  The element data should be freed using g_free().
+<return> the previous element, or %NULL if there are no previous
+elements.
 </return>
 </function>
 
-<function name="g_async_queue_sort">
+<function name="g_list_push_allocator">
 <description>
-Sorts @queue using @func. 
-
-This function will lock @queue before it sorts the queue and unlock
-it when it is finished.
-
-If you were sorting a list of priority numbers to make sure the
-lowest priority would be at the top of the queue, you could use:
-|[
-gint32 id1;
-gint32 id2;
-
-id1 = GPOINTER_TO_INT (element1);
-id2 = GPOINTER_TO_INT (element2);
+Sets the allocator to use to allocate #GList elements. Use
+g_list_pop_allocator() to restore the previous allocator.
 
-return (id1 &gt; id2 ? +1 : id1 == id2 ? 0 : -1);
-]|
+Note that this function is not available if GLib has been compiled
+with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
 
-Since: 2.10
+Deprecated:2.10: It does nothing, since #GList has been converted
+to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt;
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the #GCompareDataFunc is used to sort @queue. This
-function is passed two elements of the @queue. The function
-should return 0 if they are equal, a negative value if the
-first element should be higher in the @queue or a positive
-value if the first element should be lower in the @queue than
-the second element. 
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @func
+<parameter name="allocator">
+<parameter_description> the #GAllocator to use when allocating #GList elements.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_path_is_absolute">
+<function name="g_list_remove">
 <description>
-Returns %TRUE if the given @file_name is an absolute file name,
-i.e. it contains a full path from the root directory such as &quot;/usr/local&quot;
-on UNIX or &quot;C:\windows&quot; on Windows systems.
+Removes an element from a #GList.
+If two elements contain the same data, only the first is removed.
+If none of the elements contain the data, the #GList is unchanged.
 
 
 </description>
 <parameters>
-<parameter name="file_name">
-<parameter_description> a file name.
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> the data of the element to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @file_name is an absolute path. 
+<return> the new start of the #GList
 </return>
 </function>
 
-<function name="g_string_prepend_len">
+<function name="g_list_remove_all">
 <description>
-Prepends @len bytes of @val to @string. 
-Because @len is provided, @val may contain 
-embedded nuls and need not be nul-terminated.
-
-Since this function does not stop at nul bytes, 
-it is the caller's responsibility to ensure that 
- val has at least @len addressable bytes.
+Removes all list nodes with data equal to @data. 
+Returns the new head of the list. Contrast with 
+g_list_remove() which removes only the first node 
+matching the given data.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> bytes to prepend
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> number of bytes in @val to prepend
+<parameter name="data">
+<parameter_description> data to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> new head of @list
 </return>
 </function>
 
-<function name="g_string_overwrite_len">
+<function name="g_list_remove_link">
 <description>
-Overwrites part of a string, lengthening it if necessary. 
-This function will work with embedded nuls.
+Removes an element from a #GList, without freeing the element.
+The removed element's prev and next links are set to %NULL, so 
+that it becomes a self-contained list with one element.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> the position at which to start overwriting
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> the string that will overwrite the @string starting at @pos
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the number of bytes to write from @val
+<parameter name="llink">
+<parameter_description> an element in the #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
-
+<return> the new start of the #GList, without the element
 </return>
 </function>
 
-<function name="g_main_loop_is_running">
+<function name="g_list_reverse">
 <description>
-Checks to see if the main loop is currently being run via g_main_loop_run().
+Reverses a #GList.
+It simply switches the next and prev pointers of each element.
 
 
 </description>
 <parameters>
-<parameter name="loop">
-<parameter_description> a #GMainLoop.
+<parameter name="list">
+<parameter_description> a #GList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the mainloop is currently being run.
+<return> the start of the reversed #GList
 </return>
 </function>
 
-<function name="g_string_new">
+<function name="g_list_sort">
 <description>
-Creates a new #GString, initialized with the given string.
+Sorts a #GList using the given comparison function.
 
 
 </description>
 <parameters>
-<parameter name="init">
-<parameter_description> the initial text to copy into the string
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="compare_func">
+<parameter_description> the comparison function used to sort the #GList.
+This function is passed the data from 2 elements of the #GList 
+and should return 0 if they are equal, a negative value if the 
+first element comes before the second, or a positive value if 
+the first element comes after the second.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GString
+<return> the start of the sorted #GList
 </return>
 </function>
 
-<function name="g_source_remove_by_user_data">
+<function name="g_list_sort_with_data">
 <description>
-Removes a source from the default main loop context given the user
-data for the callback. If multiple sources exist with the same user
-data, only one will be destroyed.
+Like g_list_sort(), but the comparison function accepts 
+a user data argument.
 
 
 </description>
 <parameters>
+<parameter name="list">
+<parameter_description> a #GList
+</parameter_description>
+</parameter>
+<parameter name="compare_func">
+<parameter_description> comparison function
+</parameter_description>
+</parameter>
 <parameter name="user_data">
-<parameter_description> the user_data for the callback.
+<parameter_description> user data to pass to comparison function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a source was found and removed. 
+<return> the new head of @list
 </return>
 </function>
 
-<function name="g_variant_type_key">
+<function name="g_listenv">
 <description>
-Determines the key type of a dictionary entry type.
-
-This function may only be used with a dictionary entry type.  Other
-than the additional restriction, this call is equivalent to
-g_variant_type_first().
+Gets the names of all variables set in the environment.
 
-Since 2.24
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a dictionary entry #GVariantType
-</parameter_description>
-</parameter>
 </parameters>
-<return> the key type of the dictionary entry
+<return> a %NULL-terminated list of strings which must be freed
+with g_strfreev().
+
+Programs that want to be portable to Windows should typically use
+this function and g_getenv() instead of using the environ array
+from the C library directly. On Windows, the strings in the environ
+array are in system codepage encoding, while in most of the typical
+use cases for environment variables in GLib-using programs you want
+the UTF-8 encoding that this function and g_getenv() provide.
+
 </return>
 </function>
 
-<function name="g_mem_chunk_alloc0">
+<function name="g_locale_from_utf8">
 <description>
-Allocates an atom of memory from a #GMemChunk, setting the memory to
-0.
+Converts a string from UTF-8 to the encoding used for strings by
+the C runtime (usually the same as that used by the operating
+system) in the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;. On
+Windows this means the system codepage.
 
-Deprecated:2.10: Use g_slice_alloc0() instead
 
 </description>
 <parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="utf8string">
+<parameter_description>    a UTF-8 encoded string 
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description>           the length of the string, or -1 if the string is
+nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
+</parameter_description>
+</parameter>
+<parameter name="bytes_read">
+<parameter_description>    location to store the number of bytes in the
+input string that were successfully converted, or %NULL.
+Even if the conversion was successful, this may be 
+less than @len if there were partial characters
+at the end of the input. If the error
+#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+stored will the byte offset after the last valid
+input sequence.
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> the number of bytes stored in the output buffer (not 
+including the terminating nul).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description>         location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the allocated atom.
+<return> The converted string, or %NULL on an error.
 </return>
 </function>
 
-<function name="g_key_file_remove_key">
+<function name="g_locale_to_utf8">
 <description>
-Removes @key in @group_name from the key file. 
+Converts a string which is in the encoding used for strings by
+the C runtime (usually the same as that used by the operating
+system) in the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt; into a
+UTF-8 string.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="opsysstring">
+<parameter_description>   a string in the encoding of the current locale. On Windows
+this means the system codepage.
 </parameter_description>
 </parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="len">
+<parameter_description>           the length of the string, or -1 if the string is
+nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key name to remove
+<parameter name="bytes_read">
+<parameter_description>    location to store the number of bytes in the
+input string that were successfully converted, or %NULL.
+Even if the conversion was successful, this may be 
+less than @len if there were partial characters
+at the end of the input. If the error
+#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+stored will the byte offset after the last valid
+input sequence.
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> the number of bytes stored in the output buffer (not 
+including the terminating nul).
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter_description>         location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the key was removed, %FALSE otherwise
-
+<return> The converted string, or %NULL on an error.
 </return>
 </function>
 
-<function name="g_bookmark_file_new">
+<function name="g_lstat">
 <description>
-Creates a new empty #GBookmarkFile object.
+A wrapper for the POSIX lstat() function. The lstat() function is
+like stat() except that in the case of symbolic links, it returns
+information about the symbolic link itself and not the file that it
+refers to. If the system does not support symbolic links g_lstat()
+is identical to g_stat().
 
-Use g_bookmark_file_load_from_file(), g_bookmark_file_load_from_data()
-or g_bookmark_file_load_from_data_dirs() to read an existing bookmark
-file.
+See your C library manual for more details about lstat().
 
-Since: 2.12
+Since: 2.6
 
 </description>
 <parameters>
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+</parameter_description>
+</parameter>
+<parameter name="buf">
+<parameter_description> a pointer to a &lt;structname&gt;stat&lt;/structname&gt; struct, which
+will be filled with the file information
+</parameter_description>
+</parameter>
 </parameters>
-<return> an empty #GBookmarkFile
+<return> 0 if the information was successfully retrieved, -1 if an error 
+occurred
 
 </return>
 </function>
 
-<function name="g_binding_get_source_property">
+<function name="g_main_context_acquire">
 <description>
-Retrieves the name of the property of #GBinding:source used as the source
-of the binding
+Tries to become the owner of the specified context.
+If some other thread is the owner of the context,
+returns %FALSE immediately. Ownership is properly
+recursive: the owner can require ownership again
+and will release ownership when g_main_context_release()
+is called as many times as g_main_context_acquire().
+
+You must be the owner of a context before you
+can call g_main_context_prepare(), g_main_context_query(),
+g_main_context_check(), g_main_context_dispatch().
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="binding">
-<parameter_description> a #GBinding
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the source property
-
+<return> %TRUE if the operation succeeded, and
+this thread is now the owner of @context.
 </return>
 </function>
 
-<function name="g_queue_pop_nth_link">
+<function name="g_main_context_add_poll">
 <description>
-Removes and returns the link at the given position.
-
-Since: 2.4
+Adds a file descriptor to the set of file descriptors polled for
+this context. This will very seldomly be used directly. Instead
+a typical event source will use g_source_add_poll() instead.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="context">
+<parameter_description> a #GMainContext (or %NULL for the default context)
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the link's position
+<parameter name="fd">
+<parameter_description> a #GPollFD structure holding information about a file
+descriptor to watch.
+</parameter_description>
+</parameter>
+<parameter name="priority">
+<parameter_description> the priority for this file descriptor which should be
+the same as the priority used for g_source_attach() to ensure that the
+file descriptor is polled whenever the results may be needed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The @n'th link, or %NULL if @n is off the end of @queue.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_async_queue_pop">
+<function name="g_main_context_check">
 <description>
-Pops data from the @queue. This function blocks until data become
-available.
+Passes the results of polling back to the main loop.
 
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="context">
+<parameter_description> a #GMainContext
+</parameter_description>
+</parameter>
+<parameter name="max_priority">
+<parameter_description> the maximum numerical priority of sources to check
+</parameter_description>
+</parameter>
+<parameter name="fds">
+<parameter_description> array of #GPollFD's that was passed to the last call to
+g_main_context_query()
+</parameter_description>
+</parameter>
+<parameter name="n_fds">
+<parameter_description> return value of g_main_context_query()
 </parameter_description>
 </parameter>
 </parameters>
-<return> data from the queue.
+<return> %TRUE if some sources are ready to be dispatched.
 </return>
 </function>
 
-<function name="g_stpcpy">
+<function name="g_main_context_default">
 <description>
-Copies a nul-terminated string into the dest buffer, include the
-trailing nul, and return a pointer to the trailing nul byte.
-This is useful for concatenating multiple strings together
-without having to repeatedly scan for the end.
+Returns the global default main context. This is the main context
+used for main loop functions when a main loop is not explicitly
+specified, and corresponds to the &quot;main&quot; main loop. See also
+g_main_context_get_thread_default().
 
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> destination buffer.
-</parameter_description>
-</parameter>
-<parameter name="src">
-<parameter_description> source string.
+</parameters>
+<return> the global default main context.
+</return>
+</function>
+
+<function name="g_main_context_dispatch">
+<description>
+Dispatches all pending sources.
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to trailing nul byte.
-</return>
+<return></return>
 </function>
 
-<function name="g_string_insert_c">
+<function name="g_main_context_find_source_by_funcs_user_data">
 <description>
-Inserts a byte into a #GString, expanding it if necessary.
+Finds a source with the given source functions and user data.  If
+multiple sources exist with the same source function and user data,
+the first one found will be returned.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="context">
+<parameter_description> a #GMainContext (if %NULL, the default context will be used).
 </parameter_description>
 </parameter>
-<parameter name="pos">
-<parameter_description> the position to insert the byte
+<parameter name="funcs">
+<parameter_description> the @source_funcs passed to g_source_new().
 </parameter_description>
 </parameter>
-<parameter name="c">
-<parameter_description> the byte to insert
+<parameter name="user_data">
+<parameter_description> the user data from the callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> the source, if one was found, otherwise %NULL
 </return>
 </function>
 
-<function name="g_variant_new_parsed">
+<function name="g_main_context_find_source_by_id">
 <description>
-Parses @format and returns the result.
-
- format must be a text format #GVariant with one extension: at any
-point that a value may appear in the text, a '%' character followed
-by a GVariant format string (as per g_variant_new()) may appear.  In
-that case, the same arguments are collected from the argument list as
-g_variant_new() would have collected.
-
-Consider this simple example:
-
-&lt;informalexample&gt;&lt;programlisting&gt;
-g_variant_new_parsed (&quot;[('one', 1), ('two', %i), (%s, 3)]&quot;, 2, &quot;three&quot;);
-&lt;/programlisting&gt;&lt;/informalexample&gt;
-
-In the example, the variable argument parameters are collected and
-filled in as if they were part of the original string to produce the
-result of &lt;code&gt;[('one', 1), ('two', 2), ('three', 3)]&lt;/code&gt;.
-
-This function is intended only to be used with @format as a string
-literal.  Any parse error is fatal to the calling process.  If you
-want to parse data from untrusted sources, use g_variant_parse().
+Finds a #GSource given a pair of context and ID.
 
-You may not use this function to return, unmodified, a single
-#GVariant pointer from the argument list.  ie: @format may not solely
-be anything along the lines of &quot;%*&quot;, &quot;%?&quot;, &quot;%r&quot;, or anything starting
-with &quot;%@&quot;.
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> a text format #GVariant
+<parameter name="context">
+<parameter_description> a #GMainContext (if %NULL, the default context will be used)
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments as per @format
+<parameter name="source_id">
+<parameter_description> the source ID, as returned by g_source_get_id(). 
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new floating #GVariant instance
+<return> the #GSource if found, otherwise, %NULL
 </return>
 </function>
 
-<function name="g_thread_pool_unprocessed">
+<function name="g_main_context_find_source_by_user_data">
 <description>
-Returns the number of tasks still unprocessed in @pool.
+Finds a source with the given user data for the callback.  If
+multiple sources exist with the same user data, the first
+one found will be returned.
 
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
+<parameter name="context">
+<parameter_description> a #GMainContext
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the user_data for the callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of unprocessed tasks
+<return> the source, if one was found, otherwise %NULL
 </return>
 </function>
 
-<function name="g_bookmark_file_set_description">
+<function name="g_main_context_get_poll_func">
 <description>
-Sets @description as the description of the bookmark for @uri.
-
-If @uri is %NULL, the description of @bookmark is set.
-
-If a bookmark for @uri cannot be found then it is created.
+Gets the poll function set by g_main_context_set_poll_func().
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI or %NULL
-</parameter_description>
-</parameter>
-<parameter name="description">
-<parameter_description> a string
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the poll function
+</return>
 </function>
 
-<function name="g_tree_unref">
+<function name="g_main_context_get_thread_default">
 <description>
-Decrements the reference count of @tree by one.  If the reference count
-drops to 0, all keys and values will be destroyed (if destroy
-functions were specified) and all memory allocated by @tree will be
-released.
-
-It is safe to call this function from any thread.
+Gets the thread-default #GMainContext for this thread. Asynchronous
+operations that want to be able to be run in contexts other than
+the default one should call this method to get a #GMainContext to
+add their #GSource&lt;!-- --&gt;s to. (Note that even in single-threaded
+programs applications may sometimes want to temporarily push a
+non-default context, so it is not safe to assume that this will
+always return %NULL if threads are not initialized.)
 
 Since: 2.22
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the thread-default #GMainContext, or %NULL if the
+thread-default context is the global default context.
+
+</return>
 </function>
 
-<function name="g_signal_connect_closure">
+<function name="g_main_context_invoke">
 <description>
-Connects a closure to a signal for a particular object.
+Invokes a function in such a way that @context is owned during the
+invocation of @function.
+
+If @context is %NULL then the global default main context â?? as
+returned by g_main_context_default() â?? is used.
+
+If @context is owned by the current thread, @function is called
+directly.  Otherwise, if @context is the thread-default main context
+of the current thread and g_main_context_acquire() succeeds, then
+ function is called and g_main_context_release() is called
+afterwards.
+
+In any other case, an idle source is created to call @function and
+that source is attached to @context (presumably to be run in another
+thread).  The idle source is attached with #G_PRIORITY_DEFAULT
+priority.  If you want a different priority, use
+g_main_context_invoke_full().
 
+Note that, as with normal idle functions, @function should probably
+return %FALSE.  If it returns %TRUE, it will be continuously run in a
+loop (and may prevent this call from returning).
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance to connect to.
-</parameter_description>
-</parameter>
-<parameter name="detailed_signal">
-<parameter_description> a string of the form &quot;signal-name::detail&quot;.
+<parameter name="context">
+<parameter_description> a #GMainContext, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="closure">
-<parameter_description> the closure to connect.
+<parameter name="function">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="after">
-<parameter_description> whether the handler should be called before or after the
-default handler of the signal.
+<parameter name="data">
+<parameter_description> data to pass to @function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the handler id
-</return>
+<return></return>
 </function>
 
-<function name="g_timeout_add_seconds_full">
+<function name="g_main_context_invoke_full">
 <description>
-Sets a function to be called at regular intervals, with @priority.
-The function is called repeatedly until it returns %FALSE, at which
-point the timeout is automatically destroyed and the function will
-not be called again.
-
-Unlike g_timeout_add(), this function operates at whole second granularity.
-The initial starting point of the timer is determined by the implementation
-and the implementation is expected to group multiple timers together so that
-they fire all at the same time.
-To allow this grouping, the @interval to the first timer is rounded
-and can deviate up to one second from the specified interval.
-Subsequent timer iterations will generally run at the specified interval.
-
-Note that timeout functions may be delayed, due to the processing of other
-event sources. Thus they should not be relied on for precise timing.
-After each call to the timeout function, the time of the next
-timeout is recalculated based on the current time and the given @interval
+Invokes a function in such a way that @context is owned during the
+invocation of @function.
 
-If you want timing more precise than whole seconds, use g_timeout_add()
-instead.
+This function is the same as g_main_context_invoke() except that it
+lets you specify the priority incase @function ends up being
+scheduled as an idle and also lets you give a #GDestroyNotify for @data.
 
-The grouping of timers to fire at the same time results in a more power
-and CPU efficient behavior so if your timer is in multiples of seconds
-and you don't require the first timer exactly one second from now, the
-use of g_timeout_add_seconds() is preferred over g_timeout_add().
-
-This internally creates a main loop source using 
-g_timeout_source_new_seconds() and attaches it to the main loop context 
-using g_source_attach(). You can do these steps manually if you need 
-greater control.
+ notify should not assume that it is called from any particular
+thread or with any particular context acquired.
 
-Since: 2.14
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the timeout source. Typically this will be in
-the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
+<parameter name="context">
+<parameter_description> a #GMainContext, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="interval">
-<parameter_description> the time between calls to the function, in seconds
+<parameter name="priority">
+<parameter_description> the priority at which to run @function
 </parameter_description>
 </parameter>
 <parameter name="function">
@@ -14691,98 +13471,134 @@ the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description>     data to pass to @function
+<parameter_description> data to pass to @function
 </parameter_description>
 </parameter>
 <parameter name="notify">
-<parameter_description>   function to call when the timeout is removed, or %NULL
+<parameter_description> a function to call when @data is no longer in use, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return></return>
+</function>
+
+<function name="g_main_context_is_owner">
+<description>
+Determines whether this thread holds the (recursive)
+ownership of this #GMaincontext. This is useful to
+know before waiting on another thread that may be
+blocking to get ownership of @context.
+
+Since: 2.10
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GMainContext
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if current thread is owner of @context.
 
 </return>
 </function>
 
-<function name="g_mkstemp_full">
+<function name="g_main_context_iteration">
 <description>
-Opens a temporary file. See the mkstemp() documentation
-on most UNIX-like systems.
+Runs a single iteration for the given main loop. This involves
+checking to see if any event sources are ready to be processed,
+then if no events sources are ready and @may_block is %TRUE, waiting
+for a source to become ready, then dispatching the highest priority
+events sources that are ready. Otherwise, if @may_block is %FALSE 
+sources are not waited to become ready, only those highest priority 
+events sources will be dispatched (if any), that are ready at this 
+given moment without further waiting.
 
-The parameter is a string that should follow the rules for
-mkstemp() templates, i.e. contain the string &quot;XXXXXX&quot;.
-g_mkstemp_full() is slightly more flexible than mkstemp()
-in that the sequence does not have to occur at the very end of the
-template and you can pass a @mode and additional @flags. The X
-string will be modified to form the name of a file that didn't exist.
-The string should be in the GLib file name encoding. Most importantly,
-on Windows it should be in UTF-8.
+Note that even when @may_block is %TRUE, it is still possible for 
+g_main_context_iteration() to return %FALSE, since the the wait may 
+be interrupted for other reasons than an event source becoming ready.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="tmpl">
-<parameter_description> template filename
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags to pass to an open() call in addition to O_EXCL and
-O_CREAT, which are passed automatically
+<parameter name="context">
+<parameter_description> a #GMainContext (if %NULL, the default context will be used) 
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> permissios to create the temporary file with
+<parameter name="may_block">
+<parameter_description> whether the call may block.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A file handle (as from open()) to the file
-opened for reading and writing. The file handle should be
-closed with close(). In case of errors, -1 is returned.
+<return> %TRUE if events were dispatched.
+</return>
+</function>
+
+<function name="g_main_context_new">
+<description>
+Creates a new #GMainContext structure.
+
 
+</description>
+<parameters>
+</parameters>
+<return> the new #GMainContext
 </return>
 </function>
 
-<function name="g_string_insert">
+<function name="g_main_context_pending">
 <description>
-Inserts a copy of a string into a #GString, 
-expanding it if necessary.
+Checks if any sources have pending events for the given context.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> the position to insert the copy of the string
+<parameter name="context">
+<parameter_description> a #GMainContext (if %NULL, the default context will be used)
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> the string to insert
+</parameters>
+<return> %TRUE if events are pending.
+</return>
+</function>
+
+<function name="g_main_context_pop_thread_default">
+<description>
+Pops @context off the thread-default context stack (verifying that
+it was on the top of the stack).
+
+Since: 2.22
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GMainContext object, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
-</return>
+<return></return>
 </function>
 
-<function name="g_async_queue_pop_unlocked">
+<function name="g_main_context_prepare">
 <description>
-Pops data from the @queue. This function blocks until data become
-available. This function must be called while holding the @queue's
-lock.
+Prepares to poll sources within a main loop. The resulting information
+for polling is determined by calling g_main_context_query ().
 
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="context">
+<parameter_description> a #GMainContext
+</parameter_description>
+</parameter>
+<parameter name="priority">
+<parameter_description> location to store priority of highest priority
+source already ready.
 </parameter_description>
 </parameter>
 </parameters>
-<return> data from the queue.
+<return> %TRUE if some source is ready to be dispatched
+prior to polling.
 </return>
 </function>
 
@@ -14829,2305 +13645,2219 @@ Since: 2.22
 <return></return>
 </function>
 
-<function name="g_value_array_remove">
+<function name="g_main_context_query">
 <description>
-Remove the value at position @index_ from @value_array.
+Determines information necessary to poll this main loop.
 
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to remove an element from
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> position of value to remove, must be &lt; value_array-&gt;n_values
+<parameter name="max_priority">
+<parameter_description> maximum priority source to check
+</parameter_description>
+</parameter>
+<parameter name="timeout_">
+<parameter_description> location to store timeout to be used in polling
+</parameter_description>
+</parameter>
+<parameter name="fds">
+<parameter_description> location to store #GPollFD records that need to be polled.
+</parameter_description>
+</parameter>
+<parameter name="n_fds">
+<parameter_description> length of @fds.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GValueArray passed in as @value_array
+<return> the number of records actually stored in @fds,
+or, if more than @n_fds records need to be stored, the number
+of records that need to be stored.
 </return>
 </function>
 
-<function name="g_slist_alloc">
+<function name="g_main_context_ref">
 <description>
-Allocates space for one #GSList element. It is called by the
-g_slist_append(), g_slist_prepend(), g_slist_insert() and
-g_slist_insert_sorted() functions and so is rarely used on its own.
+Increases the reference count on a #GMainContext object by one.
+
 
 </description>
 <parameters>
+<parameter name="context">
+<parameter_description> a #GMainContext
+</parameter_description>
+</parameter>
 </parameters>
-<return> a pointer to the newly-allocated #GSList element.
+<return> the @context that was passed in (since 2.6)
 </return>
 </function>
 
-<function name="g_object_watch_closure">
+<function name="g_main_context_release">
 <description>
-This function essentially limits the life time of the @closure to
-the life time of the object. That is, when the object is finalized,
-the @closure is invalidated by calling g_closure_invalidate() on
-it, in order to prevent invocations of the closure with a finalized
-(nonexisting) object. Also, g_object_ref() and g_object_unref() are
-added as marshal guards to the @closure, to ensure that an extra
-reference count is held on @object during invocation of the
- closure   Usually, this function will be called on closures that
-use this @object as closure data.
+Releases ownership of a context previously acquired by this thread
+with g_main_context_acquire(). If the context was acquired multiple
+times, the ownership will be released only when g_main_context_release()
+is called as many times as it was acquired.
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> GObject restricting lifetime of @closure
-</parameter_description>
-</parameter>
-<parameter name="closure">
-<parameter_description> GClosure to watch
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_channel_get_close_on_unref">
+<function name="g_main_context_remove_poll">
 <description>
-Returns whether the file/socket/whatever associated with @channel
-will be closed when @channel receives its final unref and is
-destroyed. The default value of this is %TRUE for channels created
-by g_io_channel_new_file (), and %FALSE for all other channels.
-
+Removes file descriptor from the set of file descriptors to be
+polled for a particular context.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel.
+<parameter name="context">
+<parameter_description>a #GMainContext 
+</parameter_description>
+</parameter>
+<parameter name="fd">
+<parameter_description> a #GPollFD descriptor previously added with g_main_context_add_poll()
 </parameter_description>
 </parameter>
 </parameters>
-<return> Whether the channel will be closed on the final unref of
-the GIOChannel data structure.
-</return>
+<return></return>
 </function>
 
-<function name="g_value_get_gtype">
+<function name="g_main_context_set_poll_func">
 <description>
-Get the contents of a %G_TYPE_GTYPE #GValue.
-
-Since: 2.12
+Sets the function to use to handle polling of file descriptors. It
+will be used instead of the poll() system call 
+(or GLib's replacement function, which is used where 
+poll() isn't available).
 
+This function could possibly be used to integrate the GLib event
+loop with an external event loop.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_GTYPE
+<parameter name="context">
+<parameter_description> a #GMainContext
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the function to call to poll all file descriptors
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GType stored in @value
-</return>
+<return></return>
 </function>
 
-<function name="g_uri_parse_scheme">
+<function name="g_main_context_unref">
 <description>
-Gets the scheme portion of a URI string. RFC 3986 decodes the scheme as:
-&lt;programlisting&gt;
-URI = scheme &quot;:&quot; hier-part [ &quot;?&quot; query ] [ &quot;#&quot; fragment ] 
-&lt;/programlisting&gt;
-Common schemes include &quot;file&quot;, &quot;http&quot;, &quot;svn+ssh&quot;, etc.
-
-Since: 2.16
+Decreases the reference count on a #GMainContext object by one. If
+the result is zero, free the context and free all associated memory.
 
 </description>
 <parameters>
-<parameter name="uri">
-<parameter_description> a valid URI.
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> The &quot;Scheme&quot; component of the URI, or %NULL on error. 
-The returned string should be freed when no longer needed.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_vfprintf">
+<function name="g_main_context_wait">
 <description>
-An implementation of the standard fprintf() function which supports 
-positional parameters, as specified in the Single Unix Specification.
+Tries to become the owner of the specified context,
+as with g_main_context_acquire(). But if another thread
+is the owner, atomically drop @mutex and wait on @cond until 
+that owner releases ownership or until @cond is signaled, then
+try again (once) to become the owner.
 
-Since: 2.2
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> the stream to write to.
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice 
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="cond">
+<parameter_description> a condition variable
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of arguments to insert in the output.
+<parameter name="mutex">
+<parameter_description> a mutex, currently held
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
-
+<return> %TRUE if the operation succeeded, and
+this thread is now the owner of @context.
 </return>
 </function>
 
-<function name="g_match_info_get_regex">
+<function name="g_main_context_wakeup">
 <description>
-Returns #GRegex object used in @match_info. It belongs to Glib
-and must not be freed. Use g_regex_ref() if you need to keep it
-after you free @match_info object.
-
-Since: 2.14
+If @context is currently waiting in a poll(), interrupt
+the poll(), and continue the iteration process.
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo
+<parameter name="context">
+<parameter_description> a #GMainContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GRegex object used in @match_info
-
-</return>
+<return></return>
 </function>
 
-<function name="g_value_get_boxed">
+<function name="g_main_current_source">
 <description>
-Get the contents of a %G_TYPE_BOXED derived #GValue.
+Returns the currently firing source for this thread.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_BOXED derived type
-</parameter_description>
-</parameter>
 </parameters>
-<return> boxed contents of @value
+<return> The currently firing source or %NULL.
+
 </return>
 </function>
 
-<function name="g_variant_print_string">
+<function name="g_main_depth">
 <description>
-Behaves as g_variant_print(), but operates on a #GString.
+Returns the depth of the stack of calls to
+g_main_context_dispatch() on any #GMainContext in the current thread.
+That is, when called from the toplevel, it gives 0. When
+called from within a callback from g_main_context_iteration()
+(or g_main_loop_run(), etc.) it returns 1. When called from within 
+a callback to a recursive call to g_main_context_iterate(),
+it returns 2. And so forth.
 
-If @string is non-%NULL then it is appended to and returned.  Else,
-a new empty #GString is allocated and it is returned.
+This function is useful in a situation like the following:
+Imagine an extremely simple &quot;garbage collected&quot; system.
 
-Since: 2.24
+|[
+static GList *free_list;
 
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> a #GString, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="type_annotate">
-<parameter_description> %TRUE if type information should be included in
-the output
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #GString containing the string
-</return>
-</function>
+gpointer
+allocate_memory (gsize size)
+{ 
+gpointer result = g_malloc (size);
+free_list = g_list_prepend (free_list, result);
+return result;
+}
 
-<function name="g_array_free">
-<description>
-Frees the memory allocated for the #GArray. If @free_segment is
-%TRUE it frees the memory block holding the elements as well and
-also each element if @array has a @element_free_func set. Pass
-%FALSE if you want to free the #GArray wrapper but preserve the
-underlying array for use elsewhere. If the reference count of @array
-is greater than one, the #GArray wrapper is preserved but the size
-of @array will be set to zero.
+void
+free_allocated_memory (void)
+{
+GList *l;
+for (l = free_list; l; l = l-&gt;next);
+g_free (l-&gt;data);
+g_list_free (free_list);
+free_list = NULL;
+}
 
-&lt;note&gt;&lt;para&gt;If array elements contain dynamically-allocated memory,
-they should be freed separately.&lt;/para&gt;&lt;/note&gt;
+[...]
 
-</description>
-<parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
-</parameter_description>
-</parameter>
-<parameter name="free_segment">
-<parameter_description> if %TRUE the actual element data is freed as well.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the element data if @free_segment is %FALSE, otherwise
-%NULL.  The element data should be freed using g_free().
-</return>
-</function>
+while (TRUE); 
+{
+g_main_context_iteration (NULL, TRUE);
+free_allocated_memory();
+}
+]|
 
-<function name="g_relation_exists">
-<description>
-Returns %TRUE if a record with the given values exists in a
-#GRelation. Note that the values are compared directly, so that, for
-example, two copies of the same string will not match.
+This works from an application, however, if you want to do the same
+thing from a library, it gets more difficult, since you no longer
+control the main loop. You might think you can simply use an idle
+function to make the call to free_allocated_memory(), but that
+doesn't work, since the idle function could be called from a
+recursive callback. This can be fixed by using g_main_depth()
+
+|[
+gpointer
+allocate_memory (gsize size)
+{ 
+FreeListBlock *block = g_new (FreeListBlock, 1);
+block-&gt;mem = g_malloc (size);
+block-&gt;depth = g_main_depth ();   
+free_list = g_list_prepend (free_list, block);
+return block-&gt;mem;
+}
+
+void
+free_allocated_memory (void)
+{
+GList *l;
+
+int depth = g_main_depth ();
+for (l = free_list; l; );
+{
+GList *next = l-&gt;next;
+FreeListBlock *block = l-&gt;data;
+if (block-&gt;depth &gt; depth)
+{
+g_free (block-&gt;mem);
+g_free (block);
+free_list = g_list_delete_link (free_list, l);
+}
+
+l = next;
+}
+}
+]|
+
+There is a temptation to use g_main_depth() to solve
+problems with reentrancy. For instance, while waiting for data
+to be received from the network in response to a menu item,
+the menu item might be selected again. It might seem that
+one could make the menu item's callback return immediately
+and do nothing if g_main_depth() returns a value greater than 1.
+However, this should be avoided since the user then sees selecting
+the menu item do nothing. Furthermore, you'll find yourself adding
+these checks all over your code, since there are doubtless many,
+many things that the user could do. Instead, you can use the
+following techniques:
+
+&lt;orderedlist&gt;
+&lt;listitem&gt;
+&lt;para&gt;
+Use gtk_widget_set_sensitive() or modal dialogs to prevent
+the user from interacting with elements while the main
+loop is recursing.
+&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;
+Avoid main loop recursion in situations where you can't handle
+arbitrary  callbacks. Instead, structure your code so that you
+simply return to the main loop and then get called again when
+there is more work to do.
+&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;/orderedlist&gt;
 
-Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> the fields of the record to compare. The number must match
-the number of fields in the #GRelation.
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if a record matches.
+<return> The main loop recursion level in the current thread
 </return>
 </function>
 
-<function name="g_strerror">
+<function name="g_main_loop_get_context">
 <description>
-Returns a string corresponding to the given error code, e.g. 
-&quot;no such process&quot;. You should use this function in preference to 
-strerror(), because it returns a string in UTF-8 encoding, and since 
-not all platforms support the strerror() function.
+Returns the #GMainContext of @loop.
 
 
 </description>
 <parameters>
-<parameter name="errnum">
-<parameter_description> the system error number. See the standard C %errno
-documentation
+<parameter name="loop">
+<parameter_description> a #GMainLoop.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a UTF-8 string describing the error code. If the error code 
-is unknown, it returns &quot;unknown error (&lt;code&gt;)&quot;. The string 
-can only be used until the next call to g_strerror()
+<return> the #GMainContext of @loop
 </return>
 </function>
 
-<function name="g_variant_type_new_dict_entry">
+<function name="g_main_loop_is_running">
 <description>
-Constructs the type corresponding to a dictionary entry with a key
-of type @key and a value of type @value.
-
-It is appropriate to call g_variant_type_free() on the return value.
+Checks to see if the main loop is currently being run via g_main_loop_run().
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="key">
-<parameter_description> a basic #GVariantType
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a #GVariantType
+<parameter name="loop">
+<parameter_description> a #GMainLoop.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new dictionary entry #GVariantType
+<return> %TRUE if the mainloop is currently being run.
 </return>
 </function>
 
-<function name="g_hash_table_foreach_remove">
+<function name="g_main_loop_new">
 <description>
-Calls the given function for each key/value pair in the #GHashTable.
-If the function returns %TRUE, then the key/value pair is removed from the
-#GHashTable. If you supplied key or value destroy functions when creating
-the #GHashTable, they are used to free the memory allocated for the removed
-keys and values.
-
-See #GHashTableIter for an alternative way to loop over the 
-key/value pairs in the hash table.
+Creates a new #GMainLoop structure.
 
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each key/value pair.
+<parameter name="context">
+<parameter_description> a #GMainContext  (if %NULL, the default context will be used).
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="is_running">
+<parameter_description> set to %TRUE to indicate that the loop is running. This
+is not very important since calling g_main_loop_run() will set this to
+%TRUE anyway.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of key/value pairs removed.
+<return> a new #GMainLoop.
 </return>
 </function>
 
-<function name="g_test_get_root">
+<function name="g_main_loop_quit">
 <description>
-Get the toplevel test suite for the test path API.
+Stops a #GMainLoop from running. Any calls to g_main_loop_run()
+for the loop will return. 
 
-Since: 2.16
+Note that sources that have already been dispatched when 
+g_main_loop_quit() is called will still be executed.
 
 </description>
 <parameters>
+<parameter name="loop">
+<parameter_description> a #GMainLoop
+</parameter_description>
+</parameter>
 </parameters>
-<return> the toplevel #GTestSuite
-
-</return>
+<return></return>
 </function>
 
-<function name="g_hostname_to_unicode">
+<function name="g_main_loop_ref">
 <description>
-Converts @hostname to its canonical presentation form; a UTF-8
-string in Unicode normalization form C, containing no uppercase
-letters, no forbidden characters, and no ASCII-encoded segments,
-and not ending with a trailing dot.
-
-Of course if @hostname is not an internationalized hostname, then
-the canonical presentation form will be entirely ASCII.
+Increases the reference count on a #GMainLoop object by one.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="hostname">
-<parameter_description> a valid UTF-8 or ASCII hostname
+<parameter name="loop">
+<parameter_description> a #GMainLoop
 </parameter_description>
 </parameter>
 </parameters>
-<return> a UTF-8 hostname, which must be freed, or %NULL if
- hostname is in some way invalid.
-
+<return> @loop
 </return>
 </function>
 
-<function name="g_ptr_array_remove_range">
+<function name="g_main_loop_run">
 <description>
-Removes the given number of pointers starting at the given index
-from a #GPtrArray.  The following elements are moved to close the
-gap. If @array has a non-%NULL #GDestroyNotify function it is called
-for the removed elements.
-
-Since: 2.4
+Runs a main loop until g_main_loop_quit() is called on the loop.
+If this is called for the thread of the loop's #GMainContext,
+it will process events from the loop, otherwise it will
+simply wait.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a @GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the first pointer to remove.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the number of pointers to remove.
+<parameter name="loop">
+<parameter_description> a #GMainLoop
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_source_set_name_by_id">
+<function name="g_main_loop_unref">
 <description>
-Sets the name of a source using its ID.
-
-This is a convenience utility to set source names from the return
-value of g_idle_add(), g_timeout_add(), etc.
-
-Since: 2.26
+Decreases the reference count on a #GMainLoop object by one. If
+the result is zero, free the loop and free all associated memory.
 
 </description>
 <parameters>
-<parameter name="tag">
-<parameter_description> a #GSource ID
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> debug name for the source
+<parameter name="loop">
+<parameter_description> a #GMainLoop
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_string_append_c">
+<function name="g_malloc">
 <description>
-Adds a byte onto the end of a #GString, expanding 
-it if necessary.
+Allocates @n_bytes bytes of memory.
+If @n_bytes is 0 it returns %NULL.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="c">
-<parameter_description> the byte to append onto the end of @string
+<parameter name="n_bytes">
+<parameter_description> the number of bytes to allocate
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> a pointer to the allocated memory
 </return>
 </function>
 
-<function name="g_key_file_set_integer_list">
+<function name="g_malloc0">
 <description>
-Associates a list of integer values with @key under @group_name.  
-If @key cannot be found then it is created.
+Allocates @n_bytes bytes of memory, initialized to 0's.
+If @n_bytes is 0 it returns %NULL.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="list">
-<parameter_description> an array of integer values
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> number of integer values in @list
+<parameter name="n_bytes">
+<parameter_description> the number of bytes to allocate
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the allocated memory
+</return>
 </function>
 
-<function name="g_variant_get">
+<function name="g_malloc0_n">
 <description>
-Deconstructs a #GVariant instance.
-
-Think of this function as an analogue to scanf().
-
-The arguments that are expected by this function are entirely
-determined by @format_string.  @format_string also restricts the
-permissible types of @value.  It is an error to give a value with
-an incompatible type.  See the section on &lt;link
-linkend='gvariant-format-strings'&gt;GVariant Format Strings&lt;/link&gt;.
-Please note that the syntax of the format string is very likely to be
-extended in the future.
+This function is similar to g_malloc0(), allocating (@n_blocks * @n_block_bytes) bytes,
+but care is taken to detect possible overflow during multiplication.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant instance
+<parameter name="n_blocks">
+<parameter_description> the number of blocks to allocate
 </parameter_description>
 </parameter>
-<parameter name="format_string">
-<parameter_description> a #GVariant format string
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> arguments, as per @format_string
+<parameter name="n_block_bytes">
+<parameter_description> the size of each block in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the allocated memory
+</return>
 </function>
 
-<function name="g_ptr_array_free">
+<function name="g_malloc_n">
 <description>
-Frees the memory allocated for the #GPtrArray. If @free_seg is %TRUE
-it frees the memory block holding the elements as well. Pass %FALSE
-if you want to free the #GPtrArray wrapper but preserve the
-underlying array for use elsewhere. If the reference count of @array
-is greater than one, the #GPtrArray wrapper is preserved but the
-size of @array will be set to zero.
+This function is similar to g_malloc(), allocating (@n_blocks * @n_block_bytes) bytes,
+but care is taken to detect possible overflow during multiplication.
 
-&lt;note&gt;&lt;para&gt;If array contents point to dynamically-allocated
-memory, they should be freed separately if @free_seg is %TRUE and no
-#GDestroyNotify function has been set for @array.&lt;/para&gt;&lt;/note&gt;
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
+<parameter name="n_blocks">
+<parameter_description> the number of blocks to allocate
 </parameter_description>
 </parameter>
-<parameter name="free_seg">
-<parameter_description> if %TRUE the actual pointer array is freed as well.
+<parameter name="n_block_bytes">
+<parameter_description> the size of each block in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return> the pointer array if @free_seg is %FALSE, otherwise %NULL.
-The pointer array should be freed using g_free().
+<return> a pointer to the allocated memory
 </return>
 </function>
 
-<function name="g_variant_builder_ref">
+<function name="g_mapped_file_free">
 <description>
-Increases the reference count on @builder.
-
-Don't call this on stack-allocated #GVariantBuilder instances or bad
-things will happen.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder allocated by g_variant_builder_new()
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new reference to @builder
-</return>
-</function>
+This call existed before #GMappedFile had refcounting and is currently
+exactly the same as g_mapped_file_unref().
 
-<function name="g_static_rw_lock_writer_unlock">
-<description>
-Unlocks @lock. If a thread is waiting to lock @lock for writing and
-all locks for reading have been unlocked, the waiting thread is
-woken up and can lock @lock for writing. If no thread is waiting to
-lock @lock for writing, and some thread or threads are waiting to
-lock @lock for reading, the waiting threads are woken up and can
-lock @lock for reading.
+Since: 2.8
+Deprecated:2.22: Use g_mapped_file_unref() instead.
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to unlock after writing.
+<parameter name="file">
+<parameter_description> a #GMappedFile
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_dup_string">
+<function name="g_mapped_file_get_contents">
 <description>
-Similar to g_variant_get_string() except that instead of returning
-a constant string, the string is duplicated.
+Returns the contents of a #GMappedFile. 
 
-The string will always be utf8 encoded.
+Note that the contents may not be zero-terminated,
+even if the #GMappedFile is backed by a text file.
 
-The return value must be freed using g_free().
+If the file is empty then %NULL is returned.
 
-Since: 2.24
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a string #GVariant instance
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> a pointer to a #gsize, to store the length
+<parameter name="file">
+<parameter_description> a #GMappedFile
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string, utf8 encoded
+<return> the contents of @file, or %NULL.
+
 </return>
 </function>
 
-<function name="g_variant_get_uint64">
+<function name="g_mapped_file_get_length">
 <description>
-Returns the 64-bit unsigned integer value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_UINT64.
+Returns the length of the contents of a #GMappedFile.
 
-Since: 2.24
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a uint64 #GVariant instance
+<parameter name="file">
+<parameter_description> a #GMappedFile
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #guint64
+<return> the length of the contents of @file.
+
 </return>
 </function>
 
-<function name="g_rand_int_range">
+<function name="g_mapped_file_new">
 <description>
-Returns the next random #gint32 from @rand_ equally distributed over
-the range [ begin  @end-1].
+Maps a file into memory. On UNIX, this is using the mmap() function.
+
+If @writable is %TRUE, the mapped buffer may be modified, otherwise
+it is an error to modify the mapped buffer. Modifications to the buffer 
+are not visible to other processes mapping the same file, and are not 
+written back to the file.
 
+Note that modifications of the underlying file might affect the contents
+of the #GMappedFile. Therefore, mapping should only be used if the file 
+will not be modified, or if all modifications of the file are done
+atomically (e.g. using g_file_set_contents()). 
+
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="filename">
+<parameter_description> The path of the file to load, in the GLib filename encoding
 </parameter_description>
 </parameter>
-<parameter name="begin">
-<parameter_description> lower closed bound of the interval.
+<parameter name="writable">
+<parameter_description> whether the mapping should be writable
 </parameter_description>
 </parameter>
-<parameter name="end">
-<parameter_description> upper open bound of the interval.
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A random number.
+<return> a newly allocated #GMappedFile which must be unref'd
+with g_mapped_file_unref(), or %NULL if the mapping failed.
+
 </return>
 </function>
 
-<function name="g_value_array_insert">
+<function name="g_mapped_file_ref">
 <description>
-Insert a copy of @value at specified position into @value_array. If @value
-is %NULL, an uninitialized value is inserted.
+Increments the reference count of @file by one.  It is safe to call
+this function from any thread.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to add an element to
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> insertion position, must be &lt;= value_array-&gt;n_values
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> #GValue to copy into #GValueArray, or %NULL
+<parameter name="file">
+<parameter_description> a #GMappedFile
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GValueArray passed in as @value_array
+<return> the passed in #GMappedFile.
+
 </return>
 </function>
 
-<function name="g_source_get_current_time">
+<function name="g_mapped_file_unref">
 <description>
-Gets the &quot;current time&quot; to be used when checking 
-this source. The advantage of calling this function over
-calling g_get_current_time() directly is that when 
-checking multiple sources, GLib can cache a single value
-instead of having to repeatedly get the system time.
+Decrements the reference count of @file by one.  If the reference count
+drops to 0, unmaps the buffer of @file and frees it.
 
-</description>
-<parameters>
-<parameter name="source">
-<parameter_description>  a #GSource
-</parameter_description>
-</parameter>
-<parameter name="timeval">
-<parameter_description> #GTimeVal structure in which to store current time.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+It is safe to call this function from any thread.
 
-<function name="g_async_queue_push_unlocked">
-<description>
-Pushes the @data into the @queue. @data must not be %NULL. This
-function must be called while holding the @queue's lock.
+Since 2.22
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> @data to push into the @queue.
+<parameter name="file">
+<parameter_description> a #GMappedFile
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_new_uint32">
+<function name="g_markup_collect_attributes">
 <description>
-Creates a new uint32 #GVariant instance.
+Collects the attributes of the element from the data passed to the
+#GMarkupParser start_element function, dealing with common error
+conditions and supporting boolean values.
 
-Since: 2.24
+This utility function is not required to write a parser but can save
+a lot of typing.
 
-</description>
-<parameters>
-<parameter name="uint32">
-<parameter_description> a #guint32 value
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new uint32 #GVariant instance
-</return>
-</function>
+The @element_name, @attribute_names, @attribute_values and @error
+parameters passed to the start_element callback should be passed
+unmodified to this function.
 
-<function name="g_type_init">
-<description>
-Prior to any use of the type system, g_type_init() has to be called
-to initialize the type system and assorted other code portions
-(such as the various fundamental type implementations or the signal
-system).
+Following these arguments is a list of &quot;supported&quot; attributes to collect.
+It is an error to specify multiple attributes with the same name. If any
+attribute not in the list appears in the @attribute_names array then an
+unknown attribute error will result.
 
-Since version 2.24 this also initializes the thread system
+The #GMarkupCollectType field allows specifying the type of collection
+to perform and if a given attribute must appear or is optional.
 
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
+The attribute name is simply the name of the attribute to collect.
 
-<function name="g_slist_find">
-<description>
-Finds the element in a #GSList which 
-contains the given data.
+The pointer should be of the appropriate type (see the descriptions
+under #GMarkupCollectType) and may be %NULL in case a particular
+attribute is to be allowed but ignored.
+
+This function deals with issuing errors for missing attributes
+(of type %G_MARKUP_ERROR_MISSING_ATTRIBUTE), unknown attributes
+(of type %G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE) and duplicate
+attributes (of type %G_MARKUP_ERROR_INVALID_CONTENT) as well
+as parse errors for boolean-valued attributes (again of type
+%G_MARKUP_ERROR_INVALID_CONTENT). In all of these cases %FALSE
+will be returned and @error will be set as appropriate.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="element_name">
+<parameter_description> the current tag name
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the element data to find
+<parameter name="attribute_names">
+<parameter_description> the attribute names
 </parameter_description>
 </parameter>
-</parameters>
-<return> the found #GSList element, 
-or %NULL if it is not found
-</return>
-</function>
-
-<function name="g_build_path">
-<description>
-Creates a path from a series of elements using @separator as the
-separator between elements. At the boundary between two elements,
-any trailing occurrences of separator in the first element, or
-leading occurrences of separator in the second element are removed
-and exactly one copy of the separator is inserted.
-
-Empty elements are ignored.
-
-The number of leading copies of the separator on the result is
-the same as the number of leading copies of the separator on
-the first non-empty element.
-
-The number of trailing copies of the separator on the result is
-the same as the number of trailing copies of the separator on
-the last non-empty element. (Determination of the number of
-trailing copies is done without stripping leading copies, so
-if the separator is &lt;literal&gt;ABA&lt;/literal&gt;, &lt;literal&gt;ABABA&lt;/literal&gt;
-has 1 trailing copy.)
-
-However, if there is only a single non-empty element, and there
-are no characters in that element not part of the leading or
-trailing separators, then the result is exactly the original value
-of that element.
-
-Other than for determination of the number of leading and trailing
-copies of the separator, elements consisting only of copies
-of the separator are ignored.
-
-
-</description>
-<parameters>
-<parameter name="separator">
-<parameter_description> a string used to separator the elements of the path.
+<parameter name="attribute_values">
+<parameter_description> the attribute values
 </parameter_description>
 </parameter>
-<parameter name="first_element">
-<parameter_description> the first element in the path
+<parameter name="error">
+<parameter_description> a pointer to a #GError or %NULL
+</parameter_description>
+</parameter>
+<parameter name="first_type">
+<parameter_description> the #GMarkupCollectType of the first attribute
+</parameter_description>
+</parameter>
+<parameter name="first_attr">
+<parameter_description> the name of the first attribute
 </parameter_description>
 </parameter>
 <parameter name="Varargs">
-<parameter_description> remaining elements in path, terminated by %NULL
+<parameter_description> a pointer to the storage location of the first attribute
+(or %NULL), followed by more types names and pointers, ending
+with %G_MARKUP_COLLECT_INVALID
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string that must be freed with g_free().
+<return> %TRUE if successful
+
 </return>
 </function>
 
-<function name="g_param_type_register_static">
+<function name="g_markup_escape_text">
 <description>
-Registers @name as the name of a new static type derived from
-#G_TYPE_PARAM. The type system uses the information contained in
-the #GParamSpecTypeInfo structure pointed to by @info to manage the
-#GParamSpec type and its instances.
+Escapes text so that the markup parser will parse it verbatim.
+Less than, greater than, ampersand, etc. are replaced with the
+corresponding entities. This function would typically be used
+when writing out a file to be parsed with the markup parser.
+
+Note that this function doesn't protect whitespace and line endings
+from being processed according to the XML rules for normalization
+of line endings and attribute values.
+
+Note also that this function will produce character references in
+the range of &amp;#x1; ... &amp;#x1f; for all control sequences
+except for tabstop, newline and carriage return.  The character
+references in this range are not valid XML 1.0, but they are
+valid XML 1.1 and will be accepted by the GMarkup parser.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> 0-terminated string used as the name of the new #GParamSpec type.
+<parameter name="text">
+<parameter_description> some valid UTF-8 text
 </parameter_description>
 </parameter>
-<parameter name="pspec_info">
-<parameter_description> The #GParamSpecTypeInfo for this #GParamSpec type.
+<parameter name="length">
+<parameter_description> length of @text in bytes, or -1 if the text is nul-terminated
 </parameter_description>
 </parameter>
 </parameters>
-<return> The new type identifier.
+<return> a newly allocated string with the escaped text
 </return>
 </function>
 
-<function name="g_cclosure_new_object_swap">
+<function name="g_markup_parse_context_end_parse">
 <description>
-A variant of g_cclosure_new_swap() which uses @object as @user_data
-and calls g_object_watch_closure() on @object and the created
-closure. This function is useful when you have a callback closely
-associated with a #GObject, and want the callback to no longer run
-after the object is is freed.
+Signals to the #GMarkupParseContext that all data has been
+fed into the parse context with g_markup_parse_context_parse().
+
+This function reports an error if the document isn't complete,
+for example if elements are still open.
 
 
 </description>
 <parameters>
-<parameter name="callback_func">
-<parameter_description> the function to invoke
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GObject pointer to pass to @callback_func
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GCClosure
+<return> %TRUE on success, %FALSE if an error was set
 </return>
 </function>
 
-<function name="g_mem_chunk_info">
+<function name="g_markup_parse_context_free">
 <description>
-Outputs debugging information for all #GMemChunk objects currently
-in use. It outputs the number of #GMemChunk objects currently
-allocated, and calls g_mem_chunk_print() to output information on
-each one.
-
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
+Frees a #GMarkupParseContext.
 
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_source_set_priority">
-<description>
-Sets the priority of a source. While the main loop is being
-run, a source will be dispatched if it is ready to be dispatched and no sources 
-at a higher (numerically smaller) priority are ready to be dispatched.
+This function can't be called from inside one of the
+#GMarkupParser functions or while a subparser is pushed.
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
-</parameter_description>
-</parameter>
-<parameter name="priority">
-<parameter_description> the new priority.
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_checksum_get_digest">
+<function name="g_markup_parse_context_get_element">
 <description>
-Gets the digest from @checksum as a raw binary vector and places it
-into @buffer. The size of the digest depends on the type of checksum.
+Retrieves the name of the currently open element.
 
-Once this function has been called, the #GChecksum is closed and can
-no longer be updated with g_checksum_update().
+If called from the start_element or end_element handlers this will
+give the element_name as passed to those functions. For the parent
+elements, see g_markup_parse_context_get_element_stack().
 
-Since: 2.16
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="checksum">
-<parameter_description> a #GChecksum
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> output buffer
-</parameter_description>
-</parameter>
-<parameter name="digest_len">
-<parameter_description> an inout parameter. The caller initializes it to the size of @buffer.
-After the call it contains the length of the digest.
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of the currently open element, or %NULL
+
+</return>
 </function>
 
-<function name="g_variant_type_is_basic">
+<function name="g_markup_parse_context_get_element_stack">
 <description>
-Determines if the given @type is a basic type.
-
-Basic types are booleans, bytes, integers, doubles, strings, object
-paths and signatures.
+Retrieves the element stack from the internal state of the parser.
 
-Only a basic type may be used as the key of a dictionary entry.
+The returned #GSList is a list of strings where the first item is
+the currently open tag (as would be returned by
+g_markup_parse_context_get_element()) and the next item is its
+immediate parent.
 
-This function returns %FALSE for all indefinite types except
-%G_VARIANT_TYPE_BASIC.
+This function is intended to be used in the start_element and
+end_element handlers where g_markup_parse_context_get_element()
+would merely return the name of the element that is being
+processed.
 
-Since 2.24
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is a basic type
+<return> the element stack, which must not be modified
+
 </return>
 </function>
 
-<function name="g_sequence_foreach">
+<function name="g_markup_parse_context_get_position">
 <description>
-Calls @func for each item in the sequence passing @user_data
-to the function.
-
-Since: 2.14
+Retrieves the current line number and the number of the character on
+that line. Intended for use in error messages; there are no strict
+semantics for what constitutes the &quot;current&quot; line number other than
+&quot;the best number we could come up with for error messages.&quot;
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to call for each item in @seq
+<parameter name="line_number">
+<parameter_description> return location for a line number, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @func
+<parameter name="char_number">
+<parameter_description> return location for a char-on-line number, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_hash_table_steal_all">
+<function name="g_markup_parse_context_get_user_data">
 <description>
-Removes all keys and their associated values from a #GHashTable
-without calling the key and value destroy functions.
+Returns the user_data associated with @context.
 
-Since: 2.12
+This will either be the user_data that was provided to
+g_markup_parse_context_new() or to the most recent call
+of g_markup_parse_context_push().
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the provided user_data. The returned data belongs to
+the markup context and will be freed when g_markup_context_free()
+is called.
+
+</return>
 </function>
 
-<function name="g_chunk_new0">
+<function name="g_markup_parse_context_new">
 <description>
-A convenience macro to allocate an atom of memory from a #GMemChunk.
-It calls g_mem_chunk_alloc0() and casts the returned atom to a
-pointer to the given type, avoiding a type cast in the source code.
+Creates a new parse context. A parse context is used to parse
+marked-up documents. You can feed any number of documents into
+a context, as long as no errors occur; once an error occurs,
+the parse context can't continue to parse text (you have to
+free it and create a new parse context).
 
-Deprecated:2.10: Use g_slice_new0() instead
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> the type of the #GMemChunk atoms, typically a structure name.
+<parameter name="parser">
+<parameter_description> a #GMarkupParser
 </parameter_description>
 </parameter>
-<parameter name="chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="flags">
+<parameter_description> one or more #GMarkupParseFlags
 </parameter_description>
 </parameter>
-</parameters>
-<return> a pointer to the allocated atom, cast to a pointer to
- type 
-</return>
-</function>
-
-<function name="g_completion_new">
-<description>
-Creates a new #GCompletion.
-
-</description>
-<parameters>
-<parameter name="func">
-<parameter_description> the function to be called to return the string representing
-an item in the #GCompletion, or %NULL if strings are going to
-be used as the #GCompletion items.
+<parameter name="user_data">
+<parameter_description> user data to pass to #GMarkupParser functions
+</parameter_description>
+</parameter>
+<parameter name="user_data_dnotify">
+<parameter_description> user data destroy notifier called when
+the parse context is freed
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GCompletion.
+<return> a new #GMarkupParseContext
 </return>
 </function>
 
-<function name="g_variant_new_strv">
+<function name="g_markup_parse_context_parse">
 <description>
-Constructs an array of strings #GVariant from the given array of
-strings.
+Feed some data to the #GMarkupParseContext.
 
-If @length is -1 then @strv is %NULL-terminated.
+The data need not be valid UTF-8; an error will be signaled if
+it's invalid. The data need not be an entire document; you can
+feed a document into the parser incrementally, via multiple calls
+to this function. Typically, as you receive data from a network
+connection or file, you feed each received chunk of data into this
+function, aborting the process if an error occurs. Once an error
+is reported, no further data may be fed to the #GMarkupParseContext;
+all errors are fatal.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="strv">
-<parameter_description> an array of strings
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of @strv, or -1
+<parameter name="text">
+<parameter_description> chunk of text to parse
+</parameter_description>
+</parameter>
+<parameter name="text_len">
+<parameter_description> length of @text in bytes
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new floating #GVariant instance
+<return> %FALSE if an error occurred, %TRUE on success
 </return>
 </function>
 
-<function name="g_quark_to_string">
+<function name="g_markup_parse_context_pop">
 <description>
-Gets the string associated with the given #GQuark.
+Completes the process of a temporary sub-parser redirection.
+
+This function exists to collect the user_data allocated by a
+matching call to g_markup_parse_context_push(). It must be called
+in the end_element handler corresponding to the start_element
+handler during which g_markup_parse_context_push() was called.
+You must not call this function from the error callback -- the
+ user_data is provided directly to the callback in that case.
+
+This function is not intended to be directly called by users
+interested in invoking subparsers. Instead, it is intended to
+be used by the subparsers themselves to implement a higher-level
+interface.
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="quark">
-<parameter_description> a #GQuark.
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> the string associated with the #GQuark.
+<return> the user data passed to g_markup_parse_context_push()
+
 </return>
 </function>
 
-<function name="g_hash_table_new">
+<function name="g_markup_parse_context_push">
 <description>
-Creates a new #GHashTable with a reference count of 1.
+Temporarily redirects markup data to a sub-parser.
 
+This function may only be called from the start_element handler of
+a #GMarkupParser. It must be matched with a corresponding call to
+g_markup_parse_context_pop() in the matching end_element handler
+(except in the case that the parser aborts due to an error).
+
+All tags, text and other data between the matching tags is
+redirected to the subparser given by @parser. @user_data is used
+as the user_data for that parser. @user_data is also passed to the
+error callback in the event that an error occurs. This includes
+errors that occur in subparsers of the subparser.
+
+The end tag matching the start tag for which this call was made is
+handled by the previous parser (which is given its own user_data)
+which is why g_markup_parse_context_pop() is provided to allow &quot;one
+last access&quot; to the @user_data provided to this function. In the
+case of error, the @user_data provided here is passed directly to
+the error callback of the subparser and g_markup_parse_context()
+should not be called. In either case, if @user_data was allocated
+then it ought to be freed from both of these locations.
+
+This function is not intended to be directly called by users
+interested in invoking subparsers. Instead, it is intended to be
+used by the subparsers themselves to implement a higher-level
+interface.
+
+As an example, see the following implementation of a simple
+parser that counts the number of tags encountered.
+
+|[
+typedef struct
+{
+gint tag_count;
+} CounterData;
+
+static void
+counter_start_element (GMarkupParseContext  *context,
+const gchar          *element_name,
+const gchar         **attribute_names,
+const gchar         **attribute_values,
+gpointer              user_data,
+GError              **error)
+{
+CounterData *data = user_data;
+
+data-&gt;tag_count++;
+}
+
+static void
+counter_error (GMarkupParseContext *context,
+GError              *error,
+gpointer             user_data)
+{
+CounterData *data = user_data;
+
+g_slice_free (CounterData, data);
+}
+
+static GMarkupParser counter_subparser =
+{
+counter_start_element,
+NULL,
+NULL,
+NULL,
+counter_error
+};
+]|
+
+In order to allow this parser to be easily used as a subparser, the
+following interface is provided:
+
+|[
+void
+start_counting (GMarkupParseContext *context)
+{
+CounterData *data = g_slice_new (CounterData);
+
+data-&gt;tag_count = 0;
+g_markup_parse_context_push (context, &amp;counter_subparser, data);
+}
+
+gint
+end_counting (GMarkupParseContext *context)
+{
+CounterData *data = g_markup_parse_context_pop (context);
+int result;
+
+result = data-&gt;tag_count;
+g_slice_free (CounterData, data);
+
+return result;
+}
+]|
+
+The subparser would then be used as follows:
+
+|[
+static void start_element (context, element_name, ...)
+{
+if (strcmp (element_name, &quot;count-these&quot;) == 0)
+start_counting (context);
+
+/ * else, handle other tags... * /
+}
+
+static void end_element (context, element_name, ...)
+{
+if (strcmp (element_name, &quot;count-these&quot;) == 0)
+g_print (&quot;Counted %d tags\n&quot;, end_counting (context));
+
+/ * else, handle other tags... * /
+}
+]|
+
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="hash_func">
-<parameter_description> a function to create a hash value from a key.
-Hash values are used to determine where keys are stored within the
-#GHashTable data structure. The g_direct_hash(), g_int_hash(),
-g_int64_hash(), g_double_hash() and g_str_hash() functions are provided
-for some common types of keys.
-If hash_func is %NULL, g_direct_hash() is used.
+<parameter name="context">
+<parameter_description> a #GMarkupParseContext
 </parameter_description>
 </parameter>
-<parameter name="key_equal_func">
-<parameter_description> a function to check two keys for equality.  This is
-used when looking up keys in the #GHashTable.  The g_direct_equal(),
-g_int_equal(), g_int64_equal(), g_double_equal() and g_str_equal()
-functions are provided for the most common types of keys.
-If @key_equal_func is %NULL, keys are compared directly in a similar
-fashion to g_direct_equal(), but without the overhead of a function call.
+<parameter name="parser">
+<parameter_description> a #GMarkupParser
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to #GMarkupParser functions
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GHashTable.
-</return>
+<return></return>
 </function>
 
-<function name="g_tree_nnodes">
+<function name="g_markup_printf_escaped">
 <description>
-Gets the number of nodes in a #GTree.
+Formats arguments according to @format, escaping
+all string and character arguments in the fashion
+of g_markup_escape_text(). This is useful when you
+want to insert literal strings into XML-style markup
+output, without having to worry that the strings
+might themselves contain markup.
+
+|[
+const char *store = &quot;Fortnum &amp; Mason&quot;;
+const char *item = &quot;Tea&quot;;
+char *output;
+&#160;
+output = g_markup_printf_escaped (&quot;&lt;purchase&gt;&quot;
+&quot;&lt;store&gt;%s&lt;/store&gt;&quot;
+&quot;&lt;item&gt;%s&lt;/item&gt;&quot;
+&quot;&lt;/purchase&gt;&quot;,
+store, item);
+]|
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="format">
+<parameter_description> printf() style format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the arguments to insert in the format string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of nodes in the #GTree.
+<return> newly allocated result from formatting
+operation. Free with g_free().
+
 </return>
 </function>
 
-<function name="g_option_context_set_translation_domain">
+<function name="g_markup_vprintf_escaped">
 <description>
-A convenience function to use gettext() for translating
-user-visible strings. 
+Formats the data in @args according to @format, escaping
+all string and character arguments in the fashion
+of g_markup_escape_text(). See g_markup_printf_escaped().
 
-Since: 2.12
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="format">
+<parameter_description> printf() style format string
 </parameter_description>
 </parameter>
-<parameter name="domain">
-<parameter_description> the domain to use
+<parameter name="args">
+<parameter_description> variable argument list, similar to vprintf()
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> newly allocated result from formatting
+operation. Free with g_free().
+
+</return>
 </function>
 
-<function name="g_object_add_toggle_ref">
+<function name="g_match_info_expand_references">
 <description>
-Increases the reference count of the object by one and sets a
-callback to be called when all other references to the object are
-dropped, or when this is already the last reference to the object
-and another reference is established.
-
-This functionality is intended for binding @object to a proxy
-object managed by another memory manager. This is done with two
-paired references: the strong reference added by
-g_object_add_toggle_ref() and a reverse reference to the proxy
-object which is either a strong reference or weak reference.
+Returns a new string containing the text in @string_to_expand with
+references and escape sequences expanded. References refer to the last
+match done with @string against @regex and have the same syntax used by
+g_regex_replace().
 
-The setup is that when there are no other references to @object,
-only a weak reference is held in the reverse direction from @object
-to the proxy object, but when there are other references held to
- object, a strong reference is held. The @notify callback is called
-when the reference from @object to the proxy object should be
-&lt;firstterm&gt;toggled&lt;/firstterm&gt; from strong to weak (@is_last_ref
-true) or weak to strong (@is_last_ref false).
+The @string_to_expand must be UTF-8 encoded even if #G_REGEX_RAW was
+passed to g_regex_new().
 
-Since a (normal) reference must be held to the object before
-calling g_object_toggle_ref(), the initial state of the reverse
-link is always strong.
+The backreferences are extracted from the string passed to the match
+function, so you cannot call this function after freeing the string.
 
-Multiple toggle references may be added to the same gobject,
-however if there are multiple toggle references to an object, none
-of them will ever be notified until all but one are removed.  For
-this reason, you should only ever use a toggle reference if there
-is important state in the proxy object.
+ match_info may be %NULL in which case @string_to_expand must not
+contain references. For instance &quot;foo\n&quot; does not refer to an actual
+pattern and '\n' merely will be replaced with \n character,
+while to expand &quot;\0&quot; (whole match) one needs the result of a match.
+Use g_regex_check_replacement() to find out whether @string_to_expand
+contains references.
 
-Since: 2.8
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo or %NULL
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> a function to call when this reference is the
-last reference to the object, or is no longer
-the last reference.
+<parameter name="string_to_expand">
+<parameter_description> the string to expand
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to pass to @notify
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore errors
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the expanded string, or %NULL if an error occurred
+
+</return>
 </function>
 
-<function name="g_signal_handler_unblock">
+<function name="g_match_info_fetch">
 <description>
-Undoes the effect of a previous g_signal_handler_block() call.  A
-blocked handler is skipped during signal emissions and will not be
-invoked, unblocking it (for exactly the amount of times it has been
-blocked before) reverts its &quot;blocked&quot; state, so the handler will be
-recognized by the signal system and is called upon future or
-currently ongoing signal emissions (since the order in which
-handlers are called during signal emissions is deterministic,
-whether the unblocked handler in question is called as part of a
-currently ongoing emission depends on how far that emission has
-proceeded yet).
+Retrieves the text matching the @match_num&lt;!-- --&gt;'th capturing
+parentheses. 0 is the full text of the match, 1 is the first paren
+set, 2 the second, and so on.
+
+If @match_num is a valid sub pattern but it didn't match anything
+(e.g. sub pattern 1, matching &quot;b&quot; against &quot;(a)?b&quot;) then an empty
+string is returned.
+
+If the match was obtained using the DFA algorithm, that is using
+g_regex_match_all() or g_regex_match_all_full(), the retrieved
+string is not that of a set of parentheses but that of a matched
+substring. Substrings are matched in reverse order of length, so
+0 is the longest match.
+
+The string is fetched from the string passed to the match function,
+so you cannot call this function after freeing the string.
 
-The @handler_id has to be a valid id of a signal handler that is
-connected to a signal of @instance and is currently blocked.
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance to unblock the signal handler of.
+<parameter name="match_info">
+<parameter_description> #GMatchInfo structure
 </parameter_description>
 </parameter>
-<parameter name="handler_id">
-<parameter_description> Handler id of the handler to be unblocked.
+<parameter name="match_num">
+<parameter_description> number of the sub expression
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The matched substring, or %NULL if an error
+occurred. You have to free the string yourself
+
+</return>
 </function>
 
-<function name="g_rename">
+<function name="g_match_info_fetch_all">
 <description>
-A wrapper for the POSIX rename() function. The rename() function 
-renames a file, moving it between directories if required.
+Bundles up pointers to each of the matching substrings from a match
+and stores them in an array of gchar pointers. The first element in
+the returned array is the match number 0, i.e. the entire matched
+text.
 
-See your C library manual for more details about how rename() works
-on your system. It is not possible in general on Windows to rename
-a file that is open to some process.
+If a sub pattern didn't match anything (e.g. sub pattern 1, matching
+&quot;b&quot; against &quot;(a)?b&quot;) then an empty string is inserted.
 
-Since: 2.6
+If the last match was obtained using the DFA algorithm, that is using
+g_regex_match_all() or g_regex_match_all_full(), the retrieved
+strings are not that matched by sets of parentheses but that of the
+matched substring. Substrings are matched in reverse order of length,
+so the first one is the longest match.
+
+The strings are fetched from the string passed to the match function,
+so you cannot call this function after freeing the string.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="oldfilename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
-</parameter_description>
-</parameter>
-<parameter name="newfilename">
-<parameter_description> a pathname in the GLib file name encoding
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the renaming succeeded, -1 if an error occurred
+<return> a %NULL-terminated array of gchar * pointers.
+It must be freed using g_strfreev(). If the previous match failed
+%NULL is returned
 
 </return>
 </function>
 
-<function name="g_io_channel_get_buffer_size">
+<function name="g_match_info_fetch_named">
 <description>
-Gets the buffer size.
+Retrieves the text matching the capturing parentheses named @name.
+
+If @name is a valid sub pattern name but it didn't match anything
+(e.g. sub pattern &quot;X&quot;, matching &quot;b&quot; against &quot;(?P&lt;X&gt;a)?b&quot;)
+then an empty string is returned.
 
+The string is fetched from the string passed to the match function,
+so you cannot call this function after freeing the string.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="match_info">
+<parameter_description> #GMatchInfo structure
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> name of the subexpression
 </parameter_description>
 </parameter>
 </parameters>
-<return> the size of the buffer.
+<return> The matched substring, or %NULL if an error
+occurred. You have to free the string yourself
+
 </return>
 </function>
 
-<function name="g_param_spec_float">
+<function name="g_match_info_fetch_named_pos">
 <description>
-Creates a new #GParamSpecFloat instance specifying a %G_TYPE_FLOAT property.
+Retrieves the position in bytes of the capturing parentheses named @name.
 
-See g_param_spec_internal() for details on property names.
+If @name is a valid sub pattern name but it didn't match anything
+(e.g. sub pattern &quot;X&quot;, matching &quot;b&quot; against &quot;(?P&lt;X&gt;a)?b&quot;)
+then @start_pos and @end_pos are set to -1 and %TRUE is returned.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
+<parameter name="match_info">
+<parameter_description> #GMatchInfo structure
 </parameter_description>
 </parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
+<parameter name="name">
+<parameter_description> name of the subexpression
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="start_pos">
+<parameter_description> pointer to location where to store
+the start position, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="end_pos">
+<parameter_description> pointer to location where to store
+the end position, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
-</return>
-</function>
-
-<function name="g_unichar_digit_value">
-<description>
-Determines the numeric value of a character as a decimal
-digit.
-
+<return> %TRUE if the position was fetched, %FALSE otherwise.
+If the position cannot be fetched, @start_pos and @end_pos
+are left unchanged.
 
-</description>
-<parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
-</parameter_description>
-</parameter>
-</parameters>
-<return> If @c is a decimal digit (according to
-g_unichar_isdigit()), its numeric value. Otherwise, -1.
 </return>
 </function>
 
-<function name="g_bookmark_file_remove_application">
+<function name="g_match_info_fetch_pos">
 <description>
-Removes application registered with @name from the list of applications
-that have registered a bookmark for @uri inside @bookmark.
+Retrieves the position in bytes of the @match_num&lt;!-- --&gt;'th capturing
+parentheses. 0 is the full text of the match, 1 is the first
+paren set, 2 the second, and so on.
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
-In the event that no application with name @app_name has registered
-a bookmark for @uri,  %FALSE is returned and error is set to
-#G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED.
+If @match_num is a valid sub pattern but it didn't match anything
+(e.g. sub pattern 1, matching &quot;b&quot; against &quot;(a)?b&quot;) then @start_pos
+and @end_pos are set to -1 and %TRUE is returned.
 
-Since: 2.12
+If the match was obtained using the DFA algorithm, that is using
+g_regex_match_all() or g_regex_match_all_full(), the retrieved
+position is not that of a set of parentheses but that of a matched
+substring. Substrings are matched in reverse order of length, so
+0 is the longest match.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="match_info">
+<parameter_description> #GMatchInfo structure
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="match_num">
+<parameter_description> number of the sub expression
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the application
+<parameter name="start_pos">
+<parameter_description> pointer to location where to store
+the start position, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="end_pos">
+<parameter_description> pointer to location where to store
+the end position, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the application was successfully removed.
+<return> %TRUE if the position was fetched, %FALSE otherwise. If
+the position cannot be fetched, @start_pos and @end_pos are left
+unchanged
 
 </return>
 </function>
 
-<function name="g_value_get_int64">
+<function name="g_match_info_free">
 <description>
-Get the contents of a %G_TYPE_INT64 #GValue.
+Frees all the memory associated with the #GMatchInfo structure.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_INT64
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> 64bit integer contents of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_option_context_set_main_group">
+<function name="g_match_info_get_match_count">
 <description>
-Sets a #GOptionGroup as main group of the @context. 
-This has the same effect as calling g_option_context_add_group(), 
-the only difference is that the options in the main group are 
-treated differently when generating &lt;option&gt;--help&lt;/option&gt; output.
+Retrieves the number of matched substrings (including substring 0,
+that is the whole matched text), so 1 is returned if the pattern
+has no substrings in it and 0 is returned if the match failed.
 
-Since: 2.6
+If the last match was obtained using the DFA algorithm, that is
+using g_regex_match_all() or g_regex_match_all_full(), the retrieved
+count is not that of the number of capturing parentheses but that of
+the number of matched substrings.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
-</parameter_description>
-</parameter>
-<parameter name="group">
-<parameter_description> the group to set as main group
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="g_thread_pool_get_num_unused_threads">
-<description>
-Returns the number of currently unused threads.
-
+<return> Number of matched substrings, or -1 if an error occurred
 
-</description>
-<parameters>
-</parameters>
-<return> the number of currently unused threads
 </return>
 </function>
 
-<function name="g_string_truncate">
+<function name="g_match_info_get_regex">
 <description>
-Cuts off the end of the GString, leaving the first @len bytes. 
+Returns #GRegex object used in @match_info. It belongs to Glib
+and must not be freed. Use g_regex_ref() if you need to keep it
+after you free @match_info object.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the new size of @string
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> #GRegex object used in @match_info
+
 </return>
 </function>
 
-<function name="g_list_concat">
+<function name="g_match_info_get_string">
 <description>
-Adds the second #GList onto the end of the first #GList.
-Note that the elements of the second #GList are not copied.
-They are used directly.
+Returns the string searched with @match_info. This is the
+string passed to g_regex_match() or g_regex_replace() so
+you may not free it before calling this function.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="list1">
-<parameter_description> a #GList
-</parameter_description>
-</parameter>
-<parameter name="list2">
-<parameter_description> the #GList to add to the end of the first #GList
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo
 </parameter_description>
 </parameter>
 </parameters>
-<return> the start of the new #GList
+<return> the string searched with @match_info
+
 </return>
 </function>
 
-<function name="g_test_log_buffer_new">
+<function name="g_match_info_is_partial_match">
 <description>
-Internal function for gtester to decode test log messages, no ABI guarantees provided.
+Usually if the string passed to g_regex_match*() matches as far as
+it goes, but is too short to match the entire pattern, %FALSE is
+returned. There are circumstances where it might be helpful to
+distinguish this case from other cases in which there is no match.
 
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
+Consider, for example, an application where a human is required to
+type in data for a field with specific formatting requirements. An
+example might be a date in the form ddmmmyy, defined by the pattern
+&quot;^\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d$&quot;.
+If the application sees the userâ??s keystrokes one by one, and can
+check that what has been typed so far is potentially valid, it is
+able to raise an error as soon as a mistake is made.
 
-<function name="g_strdup_printf">
-<description>
-Similar to the standard C sprintf() function but safer, since it 
-calculates the maximum space required and allocates memory to hold 
-the result. The returned string should be freed with g_free() when no 
-longer needed.
+GRegex supports the concept of partial matching by means of the
+#G_REGEX_MATCH_PARTIAL flag. When this is set the return code for
+g_regex_match() or g_regex_match_full() is, as usual, %TRUE
+for a complete match, %FALSE otherwise. But, when these functions
+return %FALSE, you can check if the match was partial calling
+g_match_info_is_partial_match().
+
+When using partial matching you cannot use g_match_info_fetch*().
+
+Because of the way certain internal optimizations are implemented
+the partial matching algorithm cannot be used with all patterns.
+So repeated single characters such as &quot;a{2,4}&quot; and repeated single
+meta-sequences such as &quot;\d+&quot; are not permitted if the maximum number
+of occurrences is greater than one. Optional items such as &quot;\d?&quot;
+(where the maximum is one) are permitted. Quantifiers with any values
+are permitted after parentheses, so the invalid examples above can be
+coded thus &quot;(a){2,4}&quot; and &quot;(\d)+&quot;. If #G_REGEX_MATCH_PARTIAL is set
+for a pattern that does not conform to the restrictions, matching
+functions return an error.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> the parameters to insert into the format string
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string holding the result
-</return>
-</function>
-
-<function name="g_test_log_buffer_push">
-<description>
-Internal function for gtester to decode test log messages, no ABI guarantees provided.
+<return> %TRUE if the match was partial, %FALSE otherwise
 
-</description>
-<parameters>
-</parameters>
-<return></return>
+</return>
 </function>
 
-<function name="g_unichar_iscntrl">
+<function name="g_match_info_matches">
 <description>
-Determines whether a character is a control character.
-Given some UTF-8 text, obtain a character value with
-g_utf8_get_char().
+Returns whether the previous match operation succeeded.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is a control character
+<return> %TRUE if the previous match operation succeeded,
+%FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_mapped_file_new">
+<function name="g_match_info_next">
 <description>
-Maps a file into memory. On UNIX, this is using the mmap() function.
-
-If @writable is %TRUE, the mapped buffer may be modified, otherwise
-it is an error to modify the mapped buffer. Modifications to the buffer 
-are not visible to other processes mapping the same file, and are not 
-written back to the file.
+Scans for the next match using the same parameters of the previous
+call to g_regex_match_full() or g_regex_match() that returned
+ match_info 
 
-Note that modifications of the underlying file might affect the contents
-of the #GMappedFile. Therefore, mapping should only be used if the file 
-will not be modified, or if all modifications of the file are done
-atomically (e.g. using g_file_set_contents()). 
+The match is done on the string passed to the match function, so you
+cannot free it before calling this function.
 
-Since: 2.8
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> The path of the file to load, in the GLib filename encoding
-</parameter_description>
-</parameter>
-<parameter name="writable">
-<parameter_description> whether the mapping should be writable
+<parameter name="match_info">
+<parameter_description> a #GMatchInfo structure
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> location to store the error occuring, or %NULL to ignore errors
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GMappedFile which must be unref'd
-with g_mapped_file_unref(), or %NULL if the mapping failed.
+<return> %TRUE is the string matched, %FALSE otherwise
 
 </return>
 </function>
 
-<function name="g_pattern_match_string">
+<function name="g_mem_chunk_alloc">
 <description>
-Matches a string against a compiled pattern. If the string is to be
-matched against more than one pattern, consider using
-g_pattern_match() instead while supplying the reversed string.
+Allocates an atom of memory from a #GMemChunk.
+
+Deprecated:2.10: Use g_slice_alloc() instead
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a #GPatternSpec
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the UTF-8 encoded string to match
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string matches @pspec
+<return> a pointer to the allocated atom.
 </return>
 </function>
 
-<function name="g_variant_type_new">
+<function name="g_mem_chunk_alloc0">
 <description>
-Creates a new #GVariantType corresponding to the type string given
-by @type_string.  It is appropriate to call g_variant_type_free() on
-the return value.
-
-It is a programmer error to call this function with an invalid type
-string.  Use g_variant_type_string_is_valid() if you are unsure.
+Allocates an atom of memory from a #GMemChunk, setting the memory to
+0.
 
-Since: 2.24
+Deprecated:2.10: Use g_slice_alloc0() instead
 
 </description>
 <parameters>
-<parameter name="type_string">
-<parameter_description> a valid GVariant type string
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GVariantType
+<return> a pointer to the allocated atom.
 </return>
 </function>
 
-<function name="g_source_set_callback">
+<function name="g_mem_chunk_clean">
 <description>
-Sets the callback function for a source. The callback for a source is
-called from the source's dispatch function.
-
-The exact type of @func depends on the type of source; ie. you
-should not count on @func being called with @data as its first
-parameter.
+Frees any blocks in a #GMemChunk which are no longer being used.
 
-Typically, you won't use this function. Instead use functions specific
-to the type of source you are using.
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> the source
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> a callback function
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data to pass to callback function
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> a function to call when @data is no longer in use, or %NULL.
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_sequence_sort_iter">
+<function name="g_mem_chunk_create">
 <description>
-Like g_sequence_sort(), but uses a #GSequenceIterCompareFunc instead
-of a GCompareDataFunc as the compare function
+A convenience macro for creating a new #GMemChunk. It calls
+g_mem_chunk_new(), using the given type to create the #GMemChunk
+name. The atom size is determined using
+&lt;function&gt;sizeof()&lt;/function&gt;, and the area size is calculated by
+multiplying the @pre_alloc parameter with the atom size.
 
-Since: 2.14
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
+<parameter name="type">
+<parameter_description> the type of the atoms, typically a structure name.
 </parameter_description>
 </parameter>
-<parameter name="cmp_func">
-<parameter_description> the #GSequenceItercompare used to compare iterators in the
-sequence. It is called with two iterators pointing into @seq. It should
-return 0 if the iterators are equal, a negative value if the first
-iterator comes before the second, and a positive value if the second
-iterator comes before the first.
+<parameter name="pre_alloc">
+<parameter_description> the number of atoms to store in each block of memory.
 </parameter_description>
 </parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @cmp_func
+<parameter name="alloc_type">
+<parameter_description> the type of the #GMemChunk.  #G_ALLOC_AND_FREE is used
+if the atoms will be freed individually.  #G_ALLOC_ONLY
+should be used if atoms will never be freed
+individually.  #G_ALLOC_ONLY is quicker, since it does
+not need to track free atoms, but it obviously wastes
+memory if you no longer need many of the atoms.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="g_get_user_config_dir">
-<description>
-Returns a base directory in which to store user-specific application 
-configuration information such as user preferences and settings. 
-
-On UNIX platforms this is determined using the mechanisms described in
-the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
-XDG Base Directory Specification&lt;/ulink&gt;.
-In this case the directory retrieved will be XDG_CONFIG_HOME.
-
-On Windows is the directory that serves as a common repository for
-application-specific data. A typical path is
-C:\Documents and Settings\username\Application. See documentation for
-CSIDL_APPDATA.
-
-Since: 2.6
-
-</description>
-<parameters>
-</parameters>
-<return> a string owned by GLib that must not be modified 
-or freed.
+<return> the new #GMemChunk.
 </return>
 </function>
 
-<function name="g_async_queue_lock">
+<function name="g_mem_chunk_destroy">
 <description>
-Acquires the @queue's lock. After that you can only call the
-&lt;function&gt;g_async_queue_*_unlocked()&lt;/function&gt; function variants on that
- queue  Otherwise it will deadlock.
+Frees all of the memory allocated for a #GMemChunk.
+
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_utf8_strup">
+<function name="g_mem_chunk_free">
 <description>
-Converts all Unicode characters in the string that have a case
-to uppercase. The exact manner that this is done depends
-on the current locale, and may result in the number of
-characters in the string increasing. (For instance, the
-German ess-zet will be changed to SS.)
+Frees an atom in a #GMemChunk. This should only be called if the
+#GMemChunk was created with #G_ALLOC_AND_FREE. Otherwise it will
+simply return.
 
+Deprecated:2.10: Use g_slice_free1() instead
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
+<parameter name="mem">
+<parameter_description> a pointer to the atom to free.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string, with all characters
-converted to uppercase.  
-</return>
+<return></return>
 </function>
 
-<function name="g_source_set_can_recurse">
+<function name="g_mem_chunk_info">
 <description>
-Sets whether a source can be called recursively. If @can_recurse is
-%TRUE, then while the source is being dispatched then this source
-will be processed normally. Otherwise, all processing of this
-source is blocked until the dispatch function returns.
+Outputs debugging information for all #GMemChunk objects currently
+in use. It outputs the number of #GMemChunk objects currently
+allocated, and calls g_mem_chunk_print() to output information on
+each one.
+
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
-</parameter_description>
-</parameter>
-<parameter name="can_recurse">
-<parameter_description> whether recursion is allowed for this source
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_type_parent">
+<function name="g_mem_chunk_new">
 <description>
-Return the direct parent type of the passed in type.  If the passed
-in type has no parent, i.e. is a fundamental type, 0 is returned.
+Creates a new #GMemChunk.
 
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> The derived type.
+<parameter name="name">
+<parameter_description> a string to identify the #GMemChunk. It is not copied so it
+should be valid for the lifetime of the #GMemChunk. It is
+only used in g_mem_chunk_print(), which is used for debugging.
 </parameter_description>
 </parameter>
-</parameters>
-<return> The parent type.
-</return>
-</function>
-
-<function name="g_io_channel_new_file">
-<description>
-Open a file @filename as a #GIOChannel using mode @mode. This
-channel will be closed when the last reference to it is dropped,
-so there is no need to call g_io_channel_close() (though doing
-so will not cause problems, as long as no attempt is made to
-access the channel after it is closed).
-
-
-</description>
-<parameters>
-<parameter name="filename">
-<parameter_description> A string containing the name of a file
+<parameter name="atom_size">
+<parameter_description> the size, in bytes, of each element in the #GMemChunk.
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> One of &quot;r&quot;, &quot;w&quot;, &quot;a&quot;, &quot;r+&quot;, &quot;w+&quot;, &quot;a+&quot;. These have
-the same meaning as in fopen()
+<parameter name="area_size">
+<parameter_description> the size, in bytes, of each block of memory allocated to
+contain the atoms.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> A location to return an error of type %G_FILE_ERROR
+<parameter name="type">
+<parameter_description> the type of the #GMemChunk.  #G_ALLOC_AND_FREE is used if the
+atoms will be freed individually.  #G_ALLOC_ONLY should be
+used if atoms will never be freed individually.
+#G_ALLOC_ONLY is quicker, since it does not need to track
+free atoms, but it obviously wastes memory if you no longer
+need many of the atoms.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GIOChannel on success, %NULL on failure.
+<return> the new #GMemChunk.
 </return>
 </function>
 
-<function name="g_queue_insert_before">
+<function name="g_mem_chunk_print">
 <description>
-Inserts @data into @queue before @sibling.
-
- sibling must be part of @queue.
+Outputs debugging information for a #GMemChunk. It outputs the name
+of the #GMemChunk (set with g_mem_chunk_new()), the number of bytes
+used, and the number of blocks of memory allocated.
 
-Since: 2.4
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="sibling">
-<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data to insert
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_timer_continue">
+<function name="g_mem_chunk_reset">
 <description>
-Resumes a timer that has previously been stopped with
-g_timer_stop(). g_timer_stop() must be called before using this
-function.
+Resets a GMemChunk to its initial state. It frees all of the
+currently allocated blocks of memory.
 
-Since: 2.4
+Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="timer">
-<parameter_description> a #GTimer.
+<parameter name="mem_chunk">
+<parameter_description> a #GMemChunk.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_sequence_free">
+<function name="g_mem_gc_friendly">
 <description>
-Frees the memory allocated for @seq. If @seq has a data destroy 
-function associated with it, that function is called on all items in
- seq 
-
-Since: 2.14
+This variable is %TRUE if the &lt;envar&gt;G_DEBUG&lt;/envar&gt; environment variable
+includes the key &lt;link linkend=&quot;G_DEBUG&quot;&gt;gc-friendly&lt;/link&gt;.
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_param_spec_flags">
+<function name="g_mem_is_system_malloc">
 <description>
-Creates a new #GParamSpecFlags instance specifying a %G_TYPE_FLAGS
-property.
+Checks whether the allocator used by g_malloc() is the system's
+malloc implementation. If it returns %TRUE memory allocated with
+malloc() can be used interchangeable with memory allocated using g_malloc().
+This function is useful for avoiding an extra copy of allocated memory returned
+by a non-GLib-based API.
 
-See g_param_spec_internal() for details on property names.
+A different allocator can be set using g_mem_set_vtable().
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags_type">
-<parameter_description> a #GType derived from %G_TYPE_FLAGS
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
-</parameter_description>
-</parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> if %TRUE, malloc() and g_malloc() can be mixed.
 </return>
 </function>
 
-<function name="g_datalist_unset_flags">
+<function name="g_mem_profile">
 <description>
-Turns off flag values for a data list. See g_datalist_unset_flags()
+Outputs a summary of memory usage.
 
-Since: 2.8
+It outputs the frequency of allocations of different sizes,
+the total number of bytes which have been allocated,
+the total number of bytes which have been freed,
+and the difference between the previous two values, i.e. the number of bytes
+still in use.
+
+Note that this function will not output anything unless you have
+previously installed the #glib_mem_profiler_table with g_mem_set_vtable().
 
 </description>
 <parameters>
-<parameter name="datalist">
-<parameter_description> pointer to the location that holds a list
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> the flags to turn off. The values of the flags are
-restricted by %G_DATALIST_FLAGS_MASK (currently
-3: giving two possible boolean flags).
-A value for @flags that doesn't fit within the mask is
-an error.
+<parameter name="void">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_utf8_collate_key_for_filename">
+<function name="g_mem_set_vtable">
 <description>
-Converts a string into a collation key that can be compared
-with other collation keys produced by the same function using strcmp(). 
+Sets the #GMemVTable to use for memory allocation. You can use this to provide
+custom memory allocation routines. &lt;emphasis&gt;This function must be called
+before using any other GLib functions.&lt;/emphasis&gt; The @vtable only needs to
+provide malloc(), realloc(), and free() functions; GLib can provide default
+implementations of the others. The malloc() and realloc() implementations
+should return %NULL on failure, GLib will handle error-checking for you.
+ vtable is copied, so need not persist after this function has been called.
 
-In order to sort filenames correctly, this function treats the dot '.' 
-as a special case. Most dictionary orderings seem to consider it
-insignificant, thus producing the ordering &quot;event.c&quot; &quot;eventgenerator.c&quot;
-&quot;event.h&quot; instead of &quot;event.c&quot; &quot;event.h&quot; &quot;eventgenerator.c&quot;. Also, we
-would like to treat numbers intelligently so that &quot;file1&quot; &quot;file10&quot; &quot;file5&quot;
-is sorted as &quot;file1&quot; &quot;file5&quot; &quot;file10&quot;.
+</description>
+<parameters>
+<parameter name="vtable">
+<parameter_description> table of memory allocation routines.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-Note that this function depends on the 
-&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
+<function name="g_memdup">
+<description>
+Allocates @byte_size bytes of memory, and copies @byte_size bytes into it
+from @mem. If @mem is %NULL it returns %NULL.
 
-Since: 2.8
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string.
+<parameter name="mem">
+<parameter_description> the memory to copy.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
+<parameter name="byte_size">
+<parameter_description> the number of bytes to copy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string. This string should
-be freed with g_free() when you are done with it.
-
+<return> a pointer to the newly-allocated copy of the memory, or %NULL if @mem
+is %NULL.
 </return>
 </function>
 
-<function name="g_checksum_update">
+<function name="g_memmove">
 <description>
-Feeds @data into an existing #GChecksum. The checksum must still be
-open, that is g_checksum_get_string() or g_checksum_get_digest() must
-not have been called on @checksum.
+Copies a block of memory @len bytes long, from @src to @dest.
+The source and destination areas may overlap.
 
-Since: 2.16
+In order to use this function, you must include 
+&lt;filename&gt;string.h&lt;/filename&gt; yourself, because this macro will 
+typically simply resolve to memmove() and GLib does not include 
+&lt;filename&gt;string.h&lt;/filename&gt; for you.
 
 </description>
 <parameters>
-<parameter name="checksum">
-<parameter_description> a #GChecksum
+<parameter name="dest">
+<parameter_description> the destination address to copy the bytes to.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> buffer used to compute the checksum
+<parameter name="src">
+<parameter_description> the source address to copy the bytes from.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> size of the buffer, or -1 if it is a null-terminated string.
+<parameter name="len">
+<parameter_description> the number of bytes to copy.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_key_file_get_locale_string_list">
+<function name="g_mkdir">
 <description>
-Returns the values associated with @key under @group_name
-translated in the given @locale if available.  If @locale is
-%NULL then the current locale is assumed.
+A wrapper for the POSIX mkdir() function. The mkdir() function 
+attempts to create a directory with the given name and permissions.
+The mode argument is ignored on Windows.
 
-If @key cannot be found then %NULL is returned and @error is set 
-to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the values associated
-with @key cannot be interpreted or no suitable translations
-can be found then the untranslated values are returned. The 
-returned array is %NULL-terminated, so @length may optionally 
-be %NULL.
+See your C library manual for more details about mkdir().
 
 Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="locale">
-<parameter_description> a locale identifier or %NULL
+<parameter name="mode">
+<parameter_description> permissions to use for the newly created directory
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> return location for the number of returned strings or %NULL
+</parameters>
+<return> 0 if the directory was successfully created, -1 if an error 
+occurred
+
+</return>
+</function>
+
+<function name="g_mkdir_with_parents">
+<description>
+Create a directory if it doesn't already exist. Create intermediate
+parent directories as needed, too.
+
+Since: 2.8
+
+</description>
+<parameters>
+<parameter name="pathname">
+<parameter_description> a pathname in the GLib file name encoding
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="mode">
+<parameter_description> permissions to use for newly created directories
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated %NULL-terminated string array
-or %NULL if the key isn't found. The string array should be freed
-with g_strfreev().
+<return> 0 if the directory already exists, or was successfully
+created. Returns -1 if an error occurred, with errno set.
 
 </return>
 </function>
 
-<function name="g_io_create_watch">
+<function name="g_mkstemp">
 <description>
-Creates a #GSource that's dispatched when @condition is met for the 
-given @channel. For example, if condition is #G_IO_IN, the source will 
-be dispatched when there's data available for reading.
-
-g_io_add_watch() is a simpler interface to this same functionality, for 
-the case where you want to add the source to the default main loop context 
-at the default priority.
+Opens a temporary file. See the mkstemp() documentation
+on most UNIX-like systems. 
 
-On Windows, polling a #GSource created to watch a channel for a socket
-puts the socket in non-blocking mode. This is a side-effect of the
-implementation and unavoidable.
+The parameter is a string that should follow the rules for
+mkstemp() templates, i.e. contain the string &quot;XXXXXX&quot;. 
+g_mkstemp() is slightly more flexible than mkstemp()
+in that the sequence does not have to occur at the very end of the 
+template. The X string will 
+be modified to form the name of a file that didn't exist.
+The string should be in the GLib file name encoding. Most importantly, 
+on Windows it should be in UTF-8.
 
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel to watch
-</parameter_description>
-</parameter>
-<parameter name="condition">
-<parameter_description> conditions to watch for
+<parameter name="tmpl">
+<parameter_description> template filename
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSource
+<return> A file handle (as from open()) to the file
+opened for reading and writing. The file is opened in binary mode
+on platforms where there is a difference. The file handle should be
+closed with close(). In case of errors, -1 is returned.  
 </return>
 </function>
 
-<function name="g_array_append_val">
+<function name="g_mkstemp_full">
 <description>
-Adds the value on to the end of the array. The array will grow in
-size automatically if necessary.
+Opens a temporary file. See the mkstemp() documentation
+on most UNIX-like systems.
 
-&lt;note&gt;&lt;para&gt;g_array_append_val() is a macro which uses a reference
-to the value parameter @v. This means that you cannot use it with
-literal values such as &quot;27&quot;. You must use variables.&lt;/para&gt;&lt;/note&gt;
+The parameter is a string that should follow the rules for
+mkstemp() templates, i.e. contain the string &quot;XXXXXX&quot;.
+g_mkstemp_full() is slightly more flexible than mkstemp()
+in that the sequence does not have to occur at the very end of the
+template and you can pass a @mode and additional @flags. The X
+string will be modified to form the name of a file that didn't exist.
+The string should be in the GLib file name encoding. Most importantly,
+on Windows it should be in UTF-8.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #GArray.
+<parameter name="tmpl">
+<parameter_description> template filename
 </parameter_description>
 </parameter>
-<parameter name="v">
-<parameter_description> the value to append to the #GArray.
+<parameter name="flags">
+<parameter_description> flags to pass to an open() call in addition to O_EXCL and
+O_CREAT, which are passed automatically
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> permissios to create the temporary file with
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> A file handle (as from open()) to the file
+opened for reading and writing. The file handle should be
+closed with close(). In case of errors, -1 is returned.
+
 </return>
 </function>
 
-<function name="g_array_unref">
+<function name="g_mutex_free">
 <description>
-Atomically decrements the reference count of @array by one. If the
-reference count drops to 0, all memory allocated by the array is
-released. This function is MT-safe and may be called from any
-thread.
+Destroys @mutex.
 
-Since: 2.22
+&lt;note&gt;&lt;para&gt;Calling g_mutex_free() on a locked mutex may result in
+undefined behaviour.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GArray.
+<parameter name="mutex">
+<parameter_description> a #GMutex.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_param_spec_get_blurb">
+<function name="g_mutex_lock">
 <description>
-Get the short description of a #GParamSpec.
+Locks @mutex. If @mutex is already locked by another thread, the
+current thread will block until @mutex is unlocked by the other
+thread.
 
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will do nothing.
+
+&lt;note&gt;&lt;para&gt;#GMutex is neither guaranteed to be recursive nor to be
+non-recursive, i.e. a thread could deadlock while calling
+g_mutex_lock(), if it already has locked @mutex. Use
+#GStaticRecMutex, if you need recursive mutexes.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="mutex">
+<parameter_description> a #GMutex.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the short description of @pspec.
-</return>
+<return></return>
 </function>
 
-<function name="g_slist_remove_all">
+<function name="g_mutex_new">
 <description>
-Removes all list nodes with data equal to @data. 
-Returns the new head of the list. Contrast with 
-g_slist_remove() which removes only the first node 
-matching the given data.
+Creates a new #GMutex.
 
+&lt;note&gt;&lt;para&gt;This function will abort if g_thread_init() has not been
+called yet.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to remove
-</parameter_description>
-</parameter>
 </parameters>
-<return> new head of @list
+<return> a new #GMutex.
 </return>
 </function>
 
-<function name="g_bit_unlock">
+<function name="g_mutex_trylock">
 <description>
-Clears the indicated @lock_bit in @address.  If another thread is
-currently blocked in g_bit_lock() on this same bit then it will be
-woken up.
+Tries to lock @mutex. If @mutex is already locked by another thread,
+it immediately returns %FALSE. Otherwise it locks @mutex and returns
+%TRUE.
 
-This function accesses @address atomically.  All other accesses to
- address must be atomic in order for this function to work
-reliably.
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will immediately return %TRUE.
 
-Since: 2.24
+&lt;note&gt;&lt;para&gt;#GMutex is neither guaranteed to be recursive nor to be
+non-recursive, i.e. the return value of g_mutex_trylock() could be
+both %FALSE or %TRUE, if the current thread already has locked
+ mutex  Use #GStaticRecMutex, if you need recursive
+mutexes.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a pointer to an integer
-</parameter_description>
-</parameter>
-<parameter name="lock_bit">
-<parameter_description> a bit value between 0 and 31
+<parameter name="mutex">
+<parameter_description> a #GMutex.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE, if @mutex could be locked.
+</return>
 </function>
 
-<function name="g_queue_delete_link">
+<function name="g_mutex_unlock">
 <description>
-Removes @link_ from @queue and frees it.
-
- link_ must be part of @queue.
+Unlocks @mutex. If another thread is blocked in a g_mutex_lock()
+call for @mutex, it will be woken and can lock @mutex itself.
 
-Since: 2.4
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will do nothing.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="link_">
-<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
+<parameter name="mutex">
+<parameter_description> a #GMutex.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_get_bytestring_array">
+<function name="g_node_child_index">
 <description>
-Gets the contents of an array of array of bytes #GVariant.  This call
-makes a shallow copy; the return result should be released with
-g_free(), but the individual strings must not be modified.
-
-If @length is non-%NULL then the number of elements in the result is
-stored there.  In any case, the resulting array will be
-%NULL-terminated.
-
-For an empty array, @length will be set to 0 and a pointer to a
-%NULL pointer will be returned.
+Gets the position of the first child of a #GNode 
+which contains the given data.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> an array of array of bytes #GVariant ('aay')
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of the result, or %NULL
+<parameter name="data">
+<parameter_description> the data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of constant strings
+<return> the index of the child of @node which contains 
+ data, or -1 if the data is not found
 </return>
 </function>
 
-<function name="g_io_add_watch">
+<function name="g_node_child_position">
 <description>
-Adds the #GIOChannel into the default main loop context
-with the default priority.
+Gets the position of a #GNode with respect to its siblings.
+ child must be a child of @node. The first child is numbered 0, 
+the second 1, and so on.
 
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="condition">
-<parameter_description> the condition to watch for
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call when the condition is satisfied
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @func
+<parameter name="child">
+<parameter_description> a child of @node
 </parameter_description>
 </parameter>
 </parameters>
-<return> the event source id
+<return> the position of @child with respect to its siblings
 </return>
 </function>
 
-<function name="g_variant_new_bytestring">
+<function name="g_node_children_foreach">
 <description>
-Creates an array-of-bytes #GVariant with the contents of @string.
-This function is just like g_variant_new_string() except that the
-string need not be valid utf8.
-
-The nul terminator character at the end of the string is stored in
-the array.
-
-Since: 2.26
+Calls a function for each of the children of a #GNode.
+Note that it doesn't descend beneath the child nodes.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a normal nul-terminated string in no particular encoding
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new bytestring #GVariant instance
-</return>
-</function>
-
-<function name="g_list_foreach">
-<description>
-Calls a function for each element of a #GList.
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="flags">
+<parameter_description> which types of children are to be visited, one of 
+%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
 </parameter_description>
 </parameter>
 <parameter name="func">
-<parameter_description> the function to call with each element's data
+<parameter_description> the function to call for each visited node
 </parameter_description>
 </parameter>
-<parameter name="user_data">
+<parameter name="data">
 <parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
@@ -17135,10 +15865,10 @@ Calls a function for each element of a #GList.
 <return></return>
 </function>
 
-<function name="g_node_child_index">
+<function name="g_node_copy">
 <description>
-Gets the position of the first child of a #GNode 
-which contains the given data.
+Recursively copies a #GNode (but does not deep-copy the data inside the 
+nodes, see g_node_copy_deep() if you need that).
 
 
 </description>
@@ -17147,848 +15877,646 @@ which contains the given data.
 <parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data to find
-</parameter_description>
-</parameter>
 </parameters>
-<return> the index of the child of @node which contains 
- data, or -1 if the data is not found
+<return> a new #GNode containing the same data pointers
 </return>
 </function>
 
-<function name="g_hostname_is_ip_address">
+<function name="g_node_copy_deep">
 <description>
-Tests if @hostname is the string form of an IPv4 or IPv6 address.
-(Eg, &quot;192.168.0.1&quot;.)
+Recursively copies a #GNode and its data.
 
-Since: 2.22
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="hostname">
-<parameter_description> a hostname (or IP address in string form)
+<parameter name="node">
+<parameter_description> a #GNode
+</parameter_description>
+</parameter>
+<parameter name="copy_func">
+<parameter_description> the function which is called to copy the data inside each node,
+or %NULL to use the original data.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to @copy_func
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @hostname is an IP address
+<return> a new #GNode containing copies of the data in @node.
 
 </return>
 </function>
 
-<function name="g_string_insert_unichar">
+<function name="g_node_depth">
 <description>
-Converts a Unicode character into UTF-8, and insert it
-into the string at the given position.
+Gets the depth of a #GNode.
+
+If @node is %NULL the depth is 0. The root node has a depth of 1.
+For the children of the root node the depth is 2. And so on.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> the position at which to insert character, or -1 to
-append at the end of the string
-</parameter_description>
-</parameter>
-<parameter name="wc">
-<parameter_description> a Unicode character
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> the depth of the #GNode
 </return>
 </function>
 
-<function name="g_mutex_lock">
+<function name="g_node_destroy">
 <description>
-Locks @mutex. If @mutex is already locked by another thread, the
-current thread will block until @mutex is unlocked by the other
-thread.
-
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will do nothing.
-
-&lt;note&gt;&lt;para&gt;#GMutex is neither guaranteed to be recursive nor to be
-non-recursive, i.e. a thread could deadlock while calling
-g_mutex_lock(), if it already has locked @mutex. Use
-#GStaticRecMutex, if you need recursive mutexes.&lt;/para&gt;&lt;/note&gt;
+Removes @root and its children from the tree, freeing any memory
+allocated.
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GMutex.
+<parameter name="root">
+<parameter_description> the root of the tree/subtree to destroy
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_slist_append">
+<function name="g_node_find">
 <description>
-Adds a new element on to the end of the list.
-
-&lt;note&gt;&lt;para&gt;
-The return value is the new start of the list, which may 
-have changed, so make sure you store the new value.
-&lt;/para&gt;&lt;/note&gt;
-
-&lt;note&gt;&lt;para&gt;
-Note that g_slist_append() has to traverse the entire list 
-to find the end, which is inefficient when adding multiple 
-elements. A common idiom to avoid the inefficiency is to prepend 
-the elements and reverse the list when all elements have been added.
-&lt;/para&gt;&lt;/note&gt;
-
-|[
-/ * Notice that these are initialized to the empty list. * /
-GSList *list = NULL, *number_list = NULL;
-
-/ * This is a list of strings. * /
-list = g_slist_append (list, &quot;first&quot;);
-list = g_slist_append (list, &quot;second&quot;);
-
-/ * This is a list of integers. * /
-number_list = g_slist_append (number_list, GINT_TO_POINTER (27));
-number_list = g_slist_append (number_list, GINT_TO_POINTER (14));
-]|
+Finds a #GNode in a tree.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="root">
+<parameter_description> the root #GNode of the tree to search
+</parameter_description>
+</parameter>
+<parameter name="order">
+<parameter_description> the order in which nodes are visited - %G_IN_ORDER, 
+%G_PRE_ORDER, %G_POST_ORDER, or %G_LEVEL_ORDER
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> which types of children are to be searched, one of 
+%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description> the data for the new element
+<parameter_description> the data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList
+<return> the found #GNode, or %NULL if the data is not found
 </return>
 </function>
 
-<function name="g_relation_select">
+<function name="g_node_find_child">
 <description>
-Returns all of the tuples which have the given key in the given
-field. Use g_tuples_index() to access the returned records. The
-returned records should be freed with g_tuples_destroy().
+Finds the first child of a #GNode with the given data.
 
-Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the value to compare with.
+<parameter name="flags">
+<parameter_description> which types of children are to be searched, one of 
+%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> the field of each record to match.
+<parameter name="data">
+<parameter_description> the data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> the records (tuples) that matched.
+<return> the found child #GNode, or %NULL if the data is not found
 </return>
 </function>
 
-<function name="g_variant_new_boolean">
+<function name="g_node_first_sibling">
 <description>
-Creates a new boolean #GVariant instance -- either %TRUE or %FALSE.
+Gets the first sibling of a #GNode.
+This could possibly be the node itself.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="boolean">
-<parameter_description> a #gboolean value
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new boolean #GVariant instance
+<return> the first sibling of @node
 </return>
 </function>
 
-<function name="g_unichar_islower">
+<function name="g_node_get_root">
 <description>
-Determines whether a character is a lowercase letter.
-Given some UTF-8 text, obtain a character value with
-g_utf8_get_char().
+Gets the root of a tree.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is a lowercase letter
+<return> the root of the tree
 </return>
 </function>
 
-<function name="g_variant_store">
+<function name="g_node_insert">
 <description>
-Stores the serialised form of @value at @data.  @data should be
-large enough.  See g_variant_get_size().
-
-The stored data is in machine native byte order but may not be in
-fully-normalised form if read from an untrusted source.  See
-g_variant_normalise() for a solution.
-
-This function is approximately O(n) in the size of @data.
+Inserts a #GNode beneath the parent at the given position.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> the #GVariant to store
+<parameter name="parent">
+<parameter_description> the #GNode to place @node under
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the location to store the serialised data at
+<parameter name="position">
+<parameter_description> the position to place @node at, with respect to its siblings
+If position is -1, @node is inserted as the last child of @parent
+</parameter_description>
+</parameter>
+<parameter name="node">
+<parameter_description> the #GNode to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the inserted #GNode
+</return>
 </function>
 
-<function name="g_object_get">
+<function name="g_node_insert_after">
 <description>
-Gets properties of an object.
-
-In general, a copy is made of the property contents and the caller
-is responsible for freeing the memory in the appropriate manner for
-the type, for instance by calling g_free() or g_object_unref().
-
-&lt;example&gt;
-&lt;title&gt;Using g_object_get(&lt;!-- --&gt;)&lt;/title&gt;
-An example of using g_object_get() to get the contents
-of three properties - one of type #G_TYPE_INT,
-one of type #G_TYPE_STRING, and one of type #G_TYPE_OBJECT:
-&lt;programlisting&gt;
-gint intval;
-gchar *strval;
-GObject *objval;
-
-g_object_get (my_object,
-&quot;int-property&quot;, &amp;intval,
-&quot;str-property&quot;, &amp;strval,
-&quot;obj-property&quot;, &amp;objval,
-NULL);
+Inserts a #GNode beneath the parent after the given sibling.
 
-// Do something with intval, strval, objval
-
-g_free (strval);
-g_object_unref (objval);
-&lt;/programlisting&gt;
-&lt;/example&gt;
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="parent">
+<parameter_description> the #GNode to place @node under
 </parameter_description>
 </parameter>
-<parameter name="first_property_name">
-<parameter_description> name of the first property to get
+<parameter name="sibling">
+<parameter_description> the sibling #GNode to place @node after. 
+If sibling is %NULL, the node is inserted as the first child of @parent.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> return location for the first property, followed optionally by more
-name/return location pairs, followed by %NULL
+<parameter name="node">
+<parameter_description> the #GNode to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the inserted #GNode
+</return>
 </function>
 
-<function name="g_node_push_allocator">
+<function name="g_node_insert_before">
 <description>
-Sets the allocator to use to allocate #GNode elements. Use
-g_node_pop_allocator() to restore the previous allocator.
+Inserts a #GNode beneath the parent before the given sibling.
 
-Note that this function is not available if GLib has been compiled
-with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
-
-Deprecated:2.10: It does nothing, since #GNode has been converted to
-the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt;
 
 </description>
 <parameters>
-<parameter name="dummy">
-<parameter_description> the #GAllocator to use when allocating #GNode elements.
+<parameter name="parent">
+<parameter_description> the #GNode to place @node under
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_param_spec_pool_new">
-<description>
-Creates a new #GParamSpecPool.
-
-If @type_prefixing is %TRUE, lookups in the newly created pool will
-allow to specify the owner as a colon-separated prefix of the
-property name, like &quot;GtkContainer:border-width&quot;. This feature is
-deprecated, so you should always set @type_prefixing to %FALSE.
-
-
-</description>
-<parameters>
-<parameter name="type_prefixing">
-<parameter_description> Whether the pool will support type-prefixed property names.
+<parameter name="sibling">
+<parameter_description> the sibling #GNode to place @node before. 
+If sibling is %NULL, the node is inserted as the last child of @parent.
+</parameter_description>
+</parameter>
+<parameter name="node">
+<parameter_description> the #GNode to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GParamSpecPool.
+<return> the inserted #GNode
 </return>
 </function>
 
-<function name="g_sequence_insert_sorted">
+<function name="g_node_is_ancestor">
 <description>
-Inserts @data into @sequence using @func to determine the new position.
-The sequence must already be sorted according to @cmp_func; otherwise the
-new position of @data is undefined.
+Returns %TRUE if @node is an ancestor of @descendant.
+This is true if node is the parent of @descendant, 
+or if node is the grandparent of @descendant etc.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data to insert
-</parameter_description>
-</parameter>
-<parameter name="cmp_func">
-<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
-is called with two items of the @seq and @user_data. It should
-return 0 if the items are equal, a negative value if the first
-item comes before the second, and a positive value if the second
-item comes before the first.
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @cmp_func.
+<parameter name="descendant">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSequenceIter pointing to the new item.
-
+<return> %TRUE if @node is an ancestor of @descendant
 </return>
 </function>
 
-<function name="g_value_set_boxed_take_ownership">
+<function name="g_node_last_child">
 <description>
-This is an internal function introduced mainly for C marshallers.
+Gets the last child of a #GNode.
 
-Deprecated: 2.4: Use g_value_take_boxed() instead.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_BOXED derived type
-</parameter_description>
-</parameter>
-<parameter name="v_boxed">
-<parameter_description> duplicated unowned boxed value to be set
+<parameter name="node">
+<parameter_description> a #GNode (must not be %NULL)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the last child of @node, or %NULL if @node has no children
+</return>
 </function>
 
-<function name="g_variant_get_int16">
+<function name="g_node_last_sibling">
 <description>
-Returns the 16-bit signed integer value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_INT16.
+Gets the last sibling of a #GNode.
+This could possibly be the node itself.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a int16 #GVariant instance
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gint16
+<return> the last sibling of @node
 </return>
 </function>
 
-<function name="g_sequence_iter_next">
+<function name="g_node_max_height">
 <description>
-Returns an iterator pointing to the next position after @iter. If
- iter is the end iterator, the end iterator is returned.
+Gets the maximum height of all branches beneath a #GNode.
+This is the maximum distance from the #GNode to all leaf nodes.
+
+If @root is %NULL, 0 is returned. If @root has no children, 
+1 is returned. If @root has children, 2 is returned. And so on.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="root">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSequenceIter pointing to the next position after @iter.
-
+<return> the maximum height of the tree beneath @root
 </return>
 </function>
 
-<function name="g_ptr_array_sized_new">
+<function name="g_node_n_children">
 <description>
-Creates a new #GPtrArray with @reserved_size pointers preallocated
-and a reference count of 1. This avoids frequent reallocation, if
-you are going to add many pointers to the array. Note however that
-the size of the array is still 0.
+Gets the number of children of a #GNode.
+
 
 </description>
 <parameters>
-<parameter name="reserved_size">
-<parameter_description> number of pointers preallocated.
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GPtrArray.
+<return> the number of children of @node
 </return>
 </function>
 
-<function name="g_object_remove_toggle_ref">
+<function name="g_node_n_nodes">
 <description>
-Removes a reference added with g_object_add_toggle_ref(). The
-reference count of the object is decreased by one.
+Gets the number of nodes in a tree.
 
-Since: 2.8
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> a function to call when this reference is the
-last reference to the object, or is no longer
-the last reference.
+<parameter name="root">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to pass to @notify
+<parameter name="flags">
+<parameter_description> which types of children are to be counted, one of 
+%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of nodes in the tree
+</return>
 </function>
 
-<function name="g_strdup_value_contents">
+<function name="g_node_new">
 <description>
-Return a newly allocated string, which describes the contents of a
-#GValue.  The main purpose of this function is to describe #GValue
-contents for debugging output, the way in which the contents are
-described may change between different GLib versions.
+Creates a new #GNode containing the given data.
+Used to create the first node in a tree.
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> #GValue which contents are to be described.
+<parameter name="data">
+<parameter_description> the data of the new node
 </parameter_description>
 </parameter>
 </parameters>
-<return> Newly allocated string.
+<return> a new #GNode
 </return>
 </function>
 
-<function name="g_option_context_parse">
+<function name="g_node_nth_child">
 <description>
-Parses the command line arguments, recognizing options
-which have been added to @context. A side-effect of 
-calling this function is that g_set_prgname() will be
-called.
-
-If the parsing is successful, any parsed arguments are
-removed from the array and @argc and @argv are updated 
-accordingly. A '--' option is stripped from @argv
-unless there are unparsed options before and after it, 
-or some of the options after it start with '-'. In case 
-of an error, @argc and @argv are left unmodified. 
-
-If automatic &lt;option&gt;--help&lt;/option&gt; support is enabled
-(see g_option_context_set_help_enabled()), and the 
- argv array contains one of the recognized help options,
-this function will produce help output to stdout and
-call &lt;literal&gt;exit (0)&lt;/literal&gt;.
-
-Note that function depends on the 
-&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt; for 
-automatic character set conversion of string and filename
-arguments.
+Gets a child of a #GNode, using the given index.
+The first child is at index 0. If the index is 
+too big, %NULL is returned.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
-</parameter_description>
-</parameter>
-<parameter name="argc">
-<parameter_description> a pointer to the number of command line arguments
-</parameter_description>
-</parameter>
-<parameter name="argv">
-<parameter_description> a pointer to the array of command line arguments
+<parameter name="node">
+<parameter_description> a #GNode
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a return location for errors 
+<parameter name="n">
+<parameter_description> the index of the desired child
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the parsing was successful, 
-%FALSE if an error occurred
-
+<return> the child of @node at index @n
 </return>
 </function>
 
-<function name="g_source_set_name">
+<function name="g_node_pop_allocator">
 <description>
-Sets a name for the source, used in debugging and profiling.
-The name defaults to #NULL.
-
-The source name should describe in a human-readable way
-what the source does. For example, &quot;X11 event queue&quot;
-or &quot;GTK+ repaint idle handler&quot; or whatever it is.
+Restores the previous #GAllocator, used when allocating #GNode
+elements.
 
-It is permitted to call this function multiple times, but is not
-recommended due to the potential performance impact.  For example,
-one could change the name in the &quot;check&quot; function of a #GSourceFuncs 
-to include details like the event type in the source name.
+Note that this function is not available if GLib has been compiled
+with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
 
-Since: 2.26
+Deprecated:2.10: It does nothing, since #GNode has been converted to
+the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt;
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> debug name for the source
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_uint64">
+<function name="g_node_prepend">
 <description>
-Set the contents of a %G_TYPE_UINT64 #GValue to @v_uint64.
+Inserts a #GNode as the first child of the given parent.
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_UINT64
+<parameter name="parent">
+<parameter_description> the #GNode to place the new #GNode under
 </parameter_description>
 </parameter>
-<parameter name="v_uint64">
-<parameter_description> unsigned 64bit integer value to be set
+<parameter name="node">
+<parameter_description> the #GNode to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the inserted #GNode
+</return>
 </function>
 
-<function name="g_sequence_search">
+<function name="g_node_push_allocator">
 <description>
-Returns an iterator pointing to the position where @data would
-be inserted according to @cmp_func and @cmp_data.
+Sets the allocator to use to allocate #GNode elements. Use
+g_node_pop_allocator() to restore the previous allocator.
 
-Since: 2.14
+Note that this function is not available if GLib has been compiled
+with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
+
+Deprecated:2.10: It does nothing, since #GNode has been converted to
+the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt;
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data for the new item
-</parameter_description>
-</parameter>
-<parameter name="cmp_func">
-<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
-is called with two items of the @seq and @user_data. It should
-return 0 if the items are equal, a negative value if the first
-item comes before the second, and a positive value if the second
-item comes before the first.
+<parameter name="dummy">
+<parameter_description> the #GAllocator to use when allocating #GNode elements.
 </parameter_description>
 </parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @cmp_func.
+</parameters>
+<return></return>
+</function>
+
+<function name="g_node_reverse_children">
+<description>
+Reverses the order of the children of a #GNode.
+(It doesn't change the order of the grandchildren.)
+
+</description>
+<parameters>
+<parameter name="node">
+<parameter_description> a #GNode.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an #GSequenceIter pointing to the position where @data
-would have been inserted according to @cmp_func and @cmp_data.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__UINT_POINTER">
+<function name="g_node_traverse">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, guint arg1, gpointer arg2, gpointer user_data)&lt;/literal&gt;.
+Traverses a tree starting at the given root #GNode.
+It calls the given function for each node visited.
+The traversal can be halted at any point by returning %TRUE from @func.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
+<parameter name="root">
+<parameter_description> the root #GNode of the tree to traverse
 </parameter_description>
 </parameter>
-<parameter name="return_value">
-<parameter_description> ignored
+<parameter name="order">
+<parameter_description> the order in which nodes are visited - %G_IN_ORDER, 
+%G_PRE_ORDER, %G_POST_ORDER, or %G_LEVEL_ORDER.
 </parameter_description>
 </parameter>
-<parameter name="n_param_values">
-<parameter_description> 3
+<parameter name="flags">
+<parameter_description> which types of children are to be visited, one of 
+%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
 </parameter_description>
 </parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding instance, arg1 and arg2
+<parameter name="max_depth">
+<parameter_description> the maximum depth of the traversal. Nodes below this
+depth will not be visited. If max_depth is -1 all nodes in 
+the tree are visited. If depth is 1, only the root is visited. 
+If depth is 2, the root and its children are visited. And so on.
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="func">
+<parameter_description> the function to call for each visited #GNode
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="data">
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_type_class_unref">
+<function name="g_node_unlink">
 <description>
-Decrements the reference count of the class structure being passed in.
-Once the last reference count of a class has been released, classes
-may be finalized by the type system, so further dereferencing of a
-class pointer after g_type_class_unref() are invalid.
+Unlinks a #GNode from a tree, resulting in two separate trees.
 
 </description>
 <parameters>
-<parameter name="g_class">
-<parameter_description> The #GTypeClass structure to unreference.
+<parameter name="node">
+<parameter_description> the #GNode to unlink, which becomes the root of a new tree
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_int">
+<function name="g_nullify_pointer">
 <description>
-Set the contents of a %G_TYPE_INT #GValue to @v_int.
+Set the pointer at the specified location to %NULL.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_INT
-</parameter_description>
-</parameter>
-<parameter name="v_int">
-<parameter_description> integer value to be set
+<parameter name="nullify_location">
+<parameter_description> the memory address of the pointer.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mapped_file_unref">
+<function name="g_once">
 <description>
-Decrements the reference count of @file by one.  If the reference count
-drops to 0, unmaps the buffer of @file and frees it.
-
-It is safe to call this function from any thread.
-
-Since 2.22
-
-</description>
-<parameters>
-<parameter name="file">
-<parameter_description> a #GMappedFile
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+The first call to this routine by a process with a given #GOnce
+struct calls @func with the given argument. Thereafter, subsequent
+calls to g_once()  with the same #GOnce struct do not call @func
+again, but return the stored result of the first call. On return
+from g_once(), the status of @once will be %G_ONCE_STATUS_READY.
 
-<function name="g_match_info_is_partial_match">
-<description>
-Usually if the string passed to g_regex_match*() matches as far as
-it goes, but is too short to match the entire pattern, %FALSE is
-returned. There are circumstances where it might be helpful to
-distinguish this case from other cases in which there is no match.
+For example, a mutex or a thread-specific data key must be created
+exactly once. In a threaded environment, calling g_once() ensures
+that the initialization is serialized across multiple threads.
 
-Consider, for example, an application where a human is required to
-type in data for a field with specific formatting requirements. An
-example might be a date in the form ddmmmyy, defined by the pattern
-&quot;^\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d$&quot;.
-If the application sees the userâ??s keystrokes one by one, and can
-check that what has been typed so far is potentially valid, it is
-able to raise an error as soon as a mistake is made.
+&lt;note&gt;&lt;para&gt;Calling g_once() recursively on the same #GOnce struct in
+ func will lead to a deadlock.&lt;/para&gt;&lt;/note&gt;
 
-GRegex supports the concept of partial matching by means of the
-#G_REGEX_MATCH_PARTIAL flag. When this is set the return code for
-g_regex_match() or g_regex_match_full() is, as usual, %TRUE
-for a complete match, %FALSE otherwise. But, when these functions
-return %FALSE, you can check if the match was partial calling
-g_match_info_is_partial_match().
+&lt;informalexample&gt;
+&lt;programlisting&gt;
+gpointer
+get_debug_flags (void)
+{
+static GOnce my_once = G_ONCE_INIT;
 
-When using partial matching you cannot use g_match_info_fetch*().
+g_once (&amp;my_once, parse_debug_flags, NULL);
 
-Because of the way certain internal optimizations are implemented
-the partial matching algorithm cannot be used with all patterns.
-So repeated single characters such as &quot;a{2,4}&quot; and repeated single
-meta-sequences such as &quot;\d+&quot; are not permitted if the maximum number
-of occurrences is greater than one. Optional items such as &quot;\d?&quot;
-(where the maximum is one) are permitted. Quantifiers with any values
-are permitted after parentheses, so the invalid examples above can be
-coded thus &quot;(a){2,4}&quot; and &quot;(\d)+&quot;. If #G_REGEX_MATCH_PARTIAL is set
-for a pattern that does not conform to the restrictions, matching
-functions return an error.
+return my_once.retval;
+}
+&lt;/programlisting&gt;
+&lt;/informalexample&gt;
 
-Since: 2.14
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo structure
+<parameter name="once">
+<parameter_description> a #GOnce structure
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the match was partial, %FALSE otherwise
-
-</return>
-</function>
-
-<function name="g_timer_stop">
-<description>
-Marks an end time, so calls to g_timer_elapsed() will return the
-difference between this end time and the start time.
-
-</description>
-<parameters>
-<parameter name="timer">
-<parameter_description> a #GTimer.
+<parameter name="func">
+<parameter_description> the #GThreadFunc function associated to @once. This function
+is called only once, regardless of the number of times it and
+its associated #GOnce struct are passed to g_once().
+</parameter_description>
+</parameter>
+<parameter name="arg">
+<parameter_description> data to be passed to @func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_match_info_fetch_all">
+<function name="g_once_init_enter">
 <description>
-Bundles up pointers to each of the matching substrings from a match
-and stores them in an array of gchar pointers. The first element in
-the returned array is the match number 0, i.e. the entire matched
-text.
-
-If a sub pattern didn't match anything (e.g. sub pattern 1, matching
-&quot;b&quot; against &quot;(a)?b&quot;) then an empty string is inserted.
-
-If the last match was obtained using the DFA algorithm, that is using
-g_regex_match_all() or g_regex_match_all_full(), the retrieved
-strings are not that matched by sets of parentheses but that of the
-matched substring. Substrings are matched in reverse order of length,
-so the first one is the longest match.
-
-The strings are fetched from the string passed to the match function,
-so you cannot call this function after freeing the string.
+Function to be called when starting a critical initialization
+section. The argument @value_location must point to a static
+0-initialized variable that will be set to a value other than 0 at
+the end of the initialization section. In combination with
+g_once_init_leave() and the unique address @value_location, it can
+be ensured that an initialization section will be executed only once
+during a program's life time, and that concurrent threads are
+blocked until initialization completed. To be used in constructs
+like this:
 
-Since: 2.14
+&lt;informalexample&gt;
+&lt;programlisting&gt;
+static gsize initialization_value = 0;
 
-</description>
-<parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo structure
-</parameter_description>
-</parameter>
-</parameters>
-<return> a %NULL-terminated array of gchar * pointers.
-It must be freed using g_strfreev(). If the previous match failed
-%NULL is returned
+if (g_once_init_enter (&amp;initialization_value))
+{
+gsize setup_value = 42; /&lt;!-- --&gt;* initialization code here *&lt;!-- --&gt;/
 
-</return>
-</function>
+g_once_init_leave (&amp;initialization_value, setup_value);
+}
 
-<function name="g_signal_get_invocation_hint">
-<description>
-Returns the invocation hint of the innermost signal emission of instance.
+/&lt;!-- --&gt;* use initialization_value here *&lt;!-- --&gt;/
+&lt;/programlisting&gt;
+&lt;/informalexample&gt;
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance to query
+<parameter name="value_location">
+<parameter_description> location of a static initializable variable
+containing 0.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the invocation hint of the innermost signal emission.
+<return> %TRUE if the initialization section should be entered,
+%FALSE and blocks otherwise
 </return>
 </function>
 
-<function name="g_type_get_plugin">
+<function name="g_once_init_leave">
 <description>
-Returns the #GTypePlugin structure for @type or
-%NULL if @type does not have a #GTypePlugin structure.
+Counterpart to g_once_init_enter(). Expects a location of a static
+0-initialized initialization variable, and an initialization value
+other than 0. Sets the variable to the initialization value, and
+releases concurrent threads blocking in g_once_init_enter() on this
+initialization variable.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> The #GType to retrieve the plugin for.
+<parameter name="value_location">
+<parameter_description> location of a static initializable variable
+containing 0.
 </parameter_description>
 </parameter>
-</parameters>
-<return> The corresponding plugin if @type is a dynamic type,
-%NULL otherwise.
-</return>
-</function>
-
-<function name="g_utf8_get_char">
-<description>
-Converts a sequence of bytes encoded as UTF-8 to a Unicode character.
-If @p does not point to a valid UTF-8 encoded character, results are
-undefined. If you are not sure that the bytes are complete
-valid Unicode characters, you should use g_utf8_get_char_validated()
-instead.
-
-
-</description>
-<parameters>
-<parameter name="p">
-<parameter_description> a pointer to Unicode character encoded as UTF-8
+<parameter name="initialization_value">
+<parameter_description> new non-0 value for * value_location 
 </parameter_description>
 </parameter>
 </parameters>
-<return> the resulting character
-</return>
+<return></return>
 </function>
 
 <function name="g_open">
@@ -18035,484 +16563,292 @@ return value can be used exactly like the return value from open().
 </return>
 </function>
 
-<function name="g_variant_is_floating">
+<function name="g_option_context_add_group">
 <description>
-Checks whether @value has a floating reference count.
-
-This function should only ever be used to assert that a given variant
-is or is not floating, or for debug purposes. To acquire a reference
-to a variant that might be floating, always use g_variant_ref_sink().
-
-See g_variant_ref_sink() for more information about floating reference
-counts.
+Adds a #GOptionGroup to the @context, so that parsing with @context
+will recognize the options in the group. Note that the group will
+be freed together with the context when g_option_context_free() is
+called, so you must not free the group yourself after adding it
+to a context.
 
-Since: 2.26
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-</parameters>
-<return> whether @value is floating
-</return>
-</function>
-
-<function name="g_ascii_toupper">
-<description>
-Convert a character to ASCII upper case.
-
-Unlike the standard C library toupper() function, this only
-recognizes standard ASCII letters and ignores the locale, returning
-all non-ASCII characters unchanged, even if they are upper case
-letters in a particular character set. Also unlike the standard
-library function, this takes and returns a char, not an int, so
-don't call it on %EOF but no need to worry about casting to #guchar
-before passing a possibly non-ASCII character in.
-
-
-</description>
-<parameters>
-<parameter name="c">
-<parameter_description> any character.
+<parameter name="group">
+<parameter_description> the group to add
 </parameter_description>
 </parameter>
 </parameters>
-<return> the result of converting @c to upper case.
-If @c is not an ASCII lower case letter,
- c is returned unchanged.
-</return>
+<return></return>
 </function>
 
-<function name="g_flags_register_static">
+<function name="g_option_context_add_main_entries">
 <description>
-Registers a new static flags type with the name @name.
-
-It is normally more convenient to let &lt;link
-linkend=&quot;glib-mkenums&quot;&gt;glib-mkenums&lt;/link&gt; generate a
-my_flags_get_type() function from a usual C enumeration definition
-than to write one yourself using g_flags_register_static().
-
-
-</description>
-<parameters>
-<parameter name="name">
-<parameter_description> A nul-terminated string used as the name of the new type.
-</parameter_description>
-</parameter>
-<parameter name="const_static_values">
-<parameter_description> An array of #GFlagsValue structs for the possible
-flags values. The array is terminated by a struct with all members being 0.
-GObject keeps a reference to the data, so it cannot be stack-allocated.
-</parameter_description>
-</parameter>
-</parameters>
-<return> The new type identifier.
-</return>
-</function>
+A convenience function which creates a main group if it doesn't
+exist, adds the @entries to it and sets the translation domain.
 
-<function name="g_cclosure_marshal_VOID__FLAGS">
-<description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gint arg1, gpointer user_data)&lt;/literal&gt; where the #gint parameter denotes a flags type.
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the flags parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_mem_chunk_free">
-<description>
-Frees an atom in a #GMemChunk. This should only be called if the
-#GMemChunk was created with #G_ALLOC_AND_FREE. Otherwise it will
-simply return.
-
-Deprecated:2.10: Use g_slice_free1() instead
-
-</description>
-<parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="entries">
+<parameter_description> a %NULL-terminated array of #GOptionEntry&lt;!-- --&gt;s
 </parameter_description>
 </parameter>
-<parameter name="mem">
-<parameter_description> a pointer to the atom to free.
+<parameter name="translation_domain">
+<parameter_description> a translation domain to use for translating
+the &lt;option&gt;--help&lt;/option&gt; output for the options in @entries
+with gettext(), or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_type_is_maybe">
+<function name="g_option_context_free">
 <description>
-Determines if the given @type is a maybe type.  This is true if the
-type string for @type starts with an 'm'.
+Frees context and all the groups which have been
+added to it.
 
-This function returns %TRUE for any indefinite type for which every
-definite subtype is a maybe type -- %G_VARIANT_TYPE_MAYBE, for
-example.
+Please note that parsed arguments need to be freed separately (see
+#GOptionEntry).
 
-Since 2.24
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is a maybe type
-</return>
+<return></return>
 </function>
 
-<function name="g_base64_decode_inplace">
+<function name="g_option_context_get_description">
 <description>
-Decode a sequence of Base-64 encoded text into binary data
-by overwriting the input data.
+Returns the description. See g_option_context_set_description().
 
-Since: 2.20
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="text">
-<parameter_description> zero-terminated string with base64 text to decode
-</parameter_description>
-</parameter>
-<parameter name="out_len">
-<parameter_description> The length of the decoded data is written here
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> The binary data that @text responds. This pointer
-is the same as the input @text.
+<return> the description
 
 </return>
 </function>
 
-<function name="g_type_add_class_cache_func">
-<description>
-Adds a #GTypeClassCacheFunc to be called before the reference count of a
-class goes from one to zero. This can be used to prevent premature class
-destruction. All installed #GTypeClassCacheFunc functions will be chained
-until one of them returns %TRUE. The functions have to check the class id
-passed in to figure whether they actually want to cache the class of this
-type, since all classes are routed through the same #GTypeClassCacheFunc
-chain.
-
-</description>
-<parameters>
-<parameter name="cache_data">
-<parameter_description> data to be passed to @cache_func
-</parameter_description>
-</parameter>
-<parameter name="cache_func">
-<parameter_description> a #GTypeClassCacheFunc
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_prefix_error">
+<function name="g_option_context_get_help">
 <description>
-Formats a string according to @format and
-prefix it to an existing error message.  If
- err is %NULL (ie: no error variable) then do
-nothing.
-
-If * err is %NULL (ie: an error variable is
-present but there is no error condition) then
-also do nothing.  Whether or not it makes
-sense to take advantage of this feature is up
-to you.
+Returns a formatted, translated help text for the given context.
+To obtain the text produced by &lt;option&gt;--help&lt;/option&gt;, call
+&lt;literal&gt;g_option_context_get_help (context, TRUE, NULL)&lt;/literal&gt;.
+To obtain the text produced by &lt;option&gt;--help-all&lt;/option&gt;, call
+&lt;literal&gt;g_option_context_get_help (context, FALSE, NULL)&lt;/literal&gt;.
+To obtain the help text for an option group, call
+&lt;literal&gt;g_option_context_get_help (context, FALSE, group)&lt;/literal&gt;.
 
-Since: 2.16
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="err">
-<parameter_description> a return location for a #GError, or %NULL
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> printf()-style format string
+<parameter name="main_help">
+<parameter_description> if %TRUE, only include the main group
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments to @format
+<parameter name="group">
+<parameter_description> the #GOptionGroup to create help for, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A newly allocated string containing the help text
+
+</return>
 </function>
 
-<function name="g_hash_table_get_values">
+<function name="g_option_context_get_help_enabled">
 <description>
-Retrieves every value inside @hash_table. The returned data is
-valid until @hash_table is modified.
+Returns whether automatic &lt;option&gt;--help&lt;/option&gt; generation
+is turned on for @context. See g_option_context_set_help_enabled().
 
-Since: 2.14
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList containing all the values inside the hash
-table. The content of the list is owned by the hash table and
-should not be modified or freed. Use g_list_free() when done
-using the list.
+<return> %TRUE if automatic help generation is turned on.
 
 </return>
 </function>
 
-<function name="g_object_interface_find_property">
+<function name="g_option_context_get_ignore_unknown_options">
 <description>
-Find the #GParamSpec with the given name for an
-interface. Generally, the interface vtable passed in as @g_iface
-will be the default vtable from g_type_default_interface_ref(), or,
-if you know the interface has already been loaded,
-g_type_default_interface_peek().
-
-Since: 2.4
+Returns whether unknown options are ignored or not. See
+g_option_context_set_ignore_unknown_options().
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="g_iface">
-<parameter_description> any interface vtable for the interface, or the default
-vtable for the interface
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> name of a property to lookup.
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GParamSpec for the property of the interface with the
-name @property_name, or %NULL if no such property exists.
+<return> %TRUE if unknown options are ignored.
+
 </return>
 </function>
 
-<function name="g_node_new">
+<function name="g_option_context_get_main_group">
 <description>
-Creates a new #GNode containing the given data.
-Used to create the first node in a tree.
+Returns a pointer to the main group of @context.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> the data of the new node
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GNode
-</return>
-</function>
-
-<function name="g_main_context_get_thread_default">
-<description>
-Gets the thread-default #GMainContext for this thread. Asynchronous
-operations that want to be able to be run in contexts other than
-the default one should call this method to get a #GMainContext to
-add their #GSource&lt;!-- --&gt;s to. (Note that even in single-threaded
-programs applications may sometimes want to temporarily push a
-non-default context, so it is not safe to assume that this will
-always return %NULL if threads are not initialized.)
-
-Since: 2.22
-
-</description>
-<parameters>
-</parameters>
-<return> the thread-default #GMainContext, or %NULL if the
-thread-default context is the global default context.
+<return> the main group of @context, or %NULL if @context doesn't
+have a main group. Note that group belongs to @context and should
+not be modified or freed.
 
 </return>
 </function>
 
-<function name="g_slist_insert_sorted">
+<function name="g_option_context_get_summary">
 <description>
-Inserts a new element into the list, using the given 
-comparison function to determine its position.
+Returns the summary. See g_option_context_set_summary().
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to compare elements in the list. 
-It should return a number &gt; 0 if the first parameter 
-comes after the second parameter in the sort order.
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList
+<return> the summary
+
 </return>
 </function>
 
-<function name="g_hash_table_foreach_steal">
+<function name="g_option_context_new">
 <description>
-Calls the given function for each key/value pair in the #GHashTable.
-If the function returns %TRUE, then the key/value pair is removed from the
-#GHashTable, but no key or value destroy functions are called.
-
-See #GHashTableIter for an alternative way to loop over the 
-key/value pairs in the hash table.
-
+Creates a new option context.
 
-</description>
-<parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each key/value pair.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of key/value pairs removed.
-</return>
-</function>
+The @parameter_string can serve multiple purposes. It can be used
+to add descriptions for &quot;rest&quot; arguments, which are not parsed by
+the #GOptionContext, typically something like &quot;FILES&quot; or
+&quot;FILE1 FILE2...&quot;. If you are using #G_OPTION_REMAINING for
+collecting &quot;rest&quot; arguments, GLib handles this automatically by
+using the @arg_description of the corresponding #GOptionEntry in
+the usage summary.
 
-<function name="g_base64_encode_close">
-<description>
-Flush the status from a sequence of calls to g_base64_encode_step().
+Another usage is to give a short summary of the program
+functionality, like &quot; - frob the strings&quot;, which will be displayed
+in the same line as the usage. For a longer description of the
+program functionality that should be displayed as a paragraph
+below the usage line, use g_option_context_set_summary().
 
-The output buffer must be large enough to fit all the data that will
-be written to it. It will need up to 4 bytes, or up to 5 bytes if
-line-breaking is enabled.
+Note that the @parameter_string is translated using the
+function set with g_option_context_set_translate_func(), so
+it should normally be passed untranslated.
 
-Since: 2.12
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="break_lines">
-<parameter_description> whether to break long lines
-</parameter_description>
-</parameter>
-<parameter name="out">
-<parameter_description> pointer to destination buffer
-</parameter_description>
-</parameter>
-<parameter name="state">
-<parameter_description> Saved state from g_base64_encode_step()
-</parameter_description>
-</parameter>
-<parameter name="save">
-<parameter_description> Saved state from g_base64_encode_step()
+<parameter name="parameter_string">
+<parameter_description> a string which is displayed in
+the first line of &lt;option&gt;--help&lt;/option&gt; output, after the
+usage summary
+&lt;literal&gt;&lt;replaceable&gt;programname&lt;/replaceable&gt; [OPTION...]&lt;/literal&gt;
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of bytes of output that was written
+<return> a newly created #GOptionContext, which must be
+freed with g_option_context_free() after use.
 
 </return>
 </function>
 
-<function name="g_datalist_id_set_data">
+<function name="g_option_context_parse">
 <description>
-Sets the data corresponding to the given #GQuark id. Any previous
-data with the same key is removed, and its destroy function is
+Parses the command line arguments, recognizing options
+which have been added to @context. A side-effect of
+calling this function is that g_set_prgname() will be
 called.
 
-</description>
-<parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="q">
-<parameter_description> the #GQuark to identify the data element.
-</parameter_description>
-</parameter>
-<parameter name="d">
-<parameter_description> the data element, or %NULL to remove any previous element
-corresponding to @q.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+If the parsing is successful, any parsed arguments are
+removed from the array and @argc and @argv are updated
+accordingly. A '--' option is stripped from @argv
+unless there are unparsed options before and after it,
+or some of the options after it start with '-'. In case
+of an error, @argc and @argv are left unmodified.
 
-<function name="g_str_has_suffix">
-<description>
-Looks whether the string @str ends with @suffix.
+If automatic &lt;option&gt;--help&lt;/option&gt; support is enabled
+(see g_option_context_set_help_enabled()), and the
+ argv array contains one of the recognized help options,
+this function will produce help output to stdout and
+call &lt;literal&gt;exit (0)&lt;/literal&gt;.
 
-Since: 2.2
+Note that function depends on the
+&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt; for
+automatic character set conversion of string and filename
+arguments.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a nul-terminated string.
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-<parameter name="suffix">
-<parameter_description> the nul-terminated suffix to look for.
+<parameter name="argc">
+<parameter_description> a pointer to the number of command line arguments
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @str end with @suffix, %FALSE otherwise.
-
-</return>
-</function>
-
-<function name="g_path_get_dirname">
-<description>
-Gets the directory components of a file name.  If the file name has no
-directory components &quot;.&quot; is returned.  The returned string should be
-freed when no longer needed.
-
-
-</description>
-<parameters>
-<parameter name="file_name">
-<parameter_description> the name of the file.
+<parameter name="argv">
+<parameter_description> a pointer to the array of command line arguments
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a return location for errors
 </parameter_description>
 </parameter>
 </parameters>
-<return> the directory components of the file.
+<return> %TRUE if the parsing was successful,
+%FALSE if an error occurred
+
 </return>
 </function>
 
@@ -18522,7 +16858,7 @@ Adds a string to be displayed in &lt;option&gt;--help&lt;/option&gt; output
 after the list of options. This text often includes a bug reporting
 address.
 
-Note that the summary is translated (see 
+Note that the summary is translated (see
 g_option_context_set_translate_func()).
 
 Since: 2.12
@@ -18534,7 +16870,7 @@ Since: 2.12
 </parameter_description>
 </parameter>
 <parameter name="description">
-<parameter_description> a string to be shown in &lt;option&gt;--help&lt;/option&gt; output 
+<parameter_description> a string to be shown in &lt;option&gt;--help&lt;/option&gt; output
 after the list of options, or %NULL
 </parameter_description>
 </parameter>
@@ -18542,2156 +16878,1535 @@ after the list of options, or %NULL
 <return></return>
 </function>
 
-<function name="g_variant_get_uint16">
+<function name="g_option_context_set_help_enabled">
 <description>
-Returns the 16-bit unsigned integer value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_UINT16.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a uint16 #GVariant instance
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #guint16
-</return>
-</function>
+Enables or disables automatic generation of &lt;option&gt;--help&lt;/option&gt;
+output. By default, g_option_context_parse() recognizes
+&lt;option&gt;--help&lt;/option&gt;, &lt;option&gt;-h&lt;/option&gt;,
+&lt;option&gt;-?&lt;/option&gt;, &lt;option&gt;--help-all&lt;/option&gt;
+and &lt;option&gt;--help-&lt;/option&gt;&lt;replaceable&gt;groupname&lt;/replaceable&gt; and creates
+suitable output to stdout.
 
-<function name="g_pattern_match_simple">
-<description>
-Matches a string against a pattern given as a string. If this
-function is to be called in a loop, it's more efficient to compile
-the pattern once with g_pattern_spec_new() and call
-g_pattern_match_string() repeatedly.
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="pattern">
-<parameter_description> the UTF-8 encoded pattern
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-<parameter name="string">
-<parameter_description> the UTF-8 encoded string to match
+<parameter name="help_enabled">
+<parameter_description> %TRUE to enable &lt;option&gt;--help&lt;/option&gt;, %FALSE to disable it
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string matches @pspec
-</return>
+<return></return>
 </function>
 
-<function name="g_bookmark_file_set_visited">
+<function name="g_option_context_set_ignore_unknown_options">
 <description>
-Sets the time the bookmark for @uri was last visited.
-
-If no bookmark for @uri is found then it is created.
+Sets whether to ignore unknown options or not. If an argument is
+ignored, it is left in the @argv array after parsing. By default,
+g_option_context_parse() treats unknown options as error.
 
-The &quot;visited&quot; time should only be set if the bookmark was launched, 
-either using the command line retrieved by g_bookmark_file_get_app_info()
-or by the default application for the bookmark's MIME type, retrieved
-using g_bookmark_file_get_mime_type().  Changing the &quot;visited&quot; time
-does not affect the &quot;modified&quot; time.
+This setting does not affect non-option arguments (i.e. arguments
+which don't start with a dash). But note that GOption cannot reliably
+determine whether a non-option belongs to a preceding unknown option.
 
-Since: 2.12
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-<parameter name="visited">
-<parameter_description> a timestamp or -1 to use the current time
+<parameter name="ignore_unknown">
+<parameter_description> %TRUE to ignore unknown options, %FALSE to produce
+an error when unknown options are met
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_list_insert">
+<function name="g_option_context_set_main_group">
 <description>
-Inserts a new element into the list at the given position.
+Sets a #GOptionGroup as main group of the @context.
+This has the same effect as calling g_option_context_add_group(),
+the only difference is that the options in the main group are
+treated differently when generating &lt;option&gt;--help&lt;/option&gt; output.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a pointer to a #GList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-<parameter name="position">
-<parameter_description> the position to insert the element. If this is 
-negative, or is larger than the number of elements in the 
-list, the new element is added on to the end of the list.
+<parameter name="group">
+<parameter_description> the group to set as main group
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
-</return>
+<return></return>
 </function>
 
-<function name="g_build_filenamev">
+<function name="g_option_context_set_summary">
 <description>
-Behaves exactly like g_build_filename(), but takes the path elements 
-as a string array, instead of varargs. This function is mainly
-meant for language bindings.
+Adds a string to be displayed in &lt;option&gt;--help&lt;/option&gt; output
+before the list of options. This is typically a summary of the
+program functionality.
 
-Since: 2.8
+Note that the summary is translated (see
+g_option_context_set_translate_func() and
+g_option_context_set_translation_domain()).
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="args">
-<parameter_description> %NULL-terminated array of strings containing the path elements.
+<parameter name="context">
+<parameter_description> a #GOptionContext
+</parameter_description>
+</parameter>
+<parameter name="summary">
+<parameter_description> a string to be shown in &lt;option&gt;--help&lt;/option&gt; output
+before the list of options, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string that must be freed with g_free().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_string_append_uri_escaped">
+<function name="g_option_context_set_translate_func">
 <description>
-Appends @unescaped to @string, escaped any characters that
-are reserved in URIs using URI-style escape sequences.
+Sets the function which is used to translate the contexts
+user-visible strings, for &lt;option&gt;--help&lt;/option&gt; output.
+If @func is %NULL, strings are not translated.
 
-Since: 2.16
+Note that option groups have their own translation functions,
+this function only affects the @parameter_string (see g_option_context_new()),
+the summary (see g_option_context_set_summary()) and the description
+(see g_option_context_set_description()).
+
+If you are using gettext(), you only need to set the translation
+domain, see g_option_context_set_translation_domain().
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-<parameter name="unescaped">
-<parameter_description> a string
+<parameter name="func">
+<parameter_description> the #GTranslateFunc, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="reserved_chars_allowed">
-<parameter_description> a string of reserved characters allowed to be used, or %NULL
+<parameter name="data">
+<parameter_description> user data to pass to @func, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="allow_utf8">
-<parameter_description> set %TRUE if the escaped string may include UTF8 characters
+<parameter name="destroy_notify">
+<parameter_description> a function which gets called to free @data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
-
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_get_length">
+<function name="g_option_context_set_translation_domain">
 <description>
-Returns the number of items in @queue.
+A convenience function to use gettext() for translating
+user-visible strings.
 
-Since: 2.4
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="context">
+<parameter_description> a #GOptionContext
 </parameter_description>
 </parameter>
-</parameters>
-<return> The number of items in @queue.
-
-</return>
-</function>
-
-<function name="g_variant_get_data">
-<description>
-Returns a pointer to the serialised form of a #GVariant instance.
-The returned data may not be in fully-normalised form if read from an
-untrusted source.  The returned data must not be freed; it remains
-valid for as long as @value exists.
-
-If @value is a fixed-sized value that was deserialised from a
-corrupted serialised container then %NULL may be returned.  In this
-case, the proper thing to do is typically to use the appropriate
-number of nul bytes in place of @value.  If @value is not fixed-sized
-then %NULL is never returned.
-
-In the case that @value is already in serialised form, this function
-is O(1).  If the value is not already in serialised form,
-serialisation occurs implicitly and is approximately O(n) in the size
-of the result.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant instance
+<parameter name="domain">
+<parameter_description> the domain to use
 </parameter_description>
 </parameter>
 </parameters>
-<return> the serialised form of @value, or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="g_utf8_strreverse">
+<function name="g_option_group_add_entries">
 <description>
-Reverses a UTF-8 string. @str must be valid UTF-8 encoded text. 
-(Use g_utf8_validate() on all text before trying to use UTF-8 
-utility functions with it.)
-
-This function is intended for programmatic uses of reversed strings.
-It pays no attention to decomposed characters, combining marks, byte 
-order marks, directional indicators (LRM, LRO, etc) and similar 
-characters which might need special handling when reversing a string 
-for display purposes.
-
-Note that unlike g_strreverse(), this function returns
-newly-allocated memory, which should be freed with g_free() when
-no longer needed. 
+Adds the options specified in @entries to @group.
 
-Since: 2.2
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
+<parameter name="group">
+<parameter_description> a #GOptionGroup
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the maximum length of @str to use, in bytes. If @len &lt; 0,
-then the string is nul-terminated.
+<parameter name="entries">
+<parameter_description> a %NULL-terminated array of #GOptionEntry&lt;!-- --&gt;s
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string which is the reverse of @str.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_idle_remove_by_data">
+<function name="g_option_group_free">
 <description>
-Removes the idle function with the given data.
+Frees a #GOptionGroup. Note that you must &lt;emphasis&gt;not&lt;/emphasis&gt;
+free groups which have been added to a #GOptionContext.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> the data for the idle source's callback.
+<parameter name="group">
+<parameter_description> a #GOptionGroup
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if an idle source was found and removed.
-</return>
+<return></return>
 </function>
 
-<function name="g_mutex_trylock">
+<function name="g_option_group_new">
 <description>
-Tries to lock @mutex. If @mutex is already locked by another thread,
-it immediately returns %FALSE. Otherwise it locks @mutex and returns
-%TRUE.
-
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will immediately return %TRUE.
+Creates a new #GOptionGroup.
 
-&lt;note&gt;&lt;para&gt;#GMutex is neither guaranteed to be recursive nor to be
-non-recursive, i.e. the return value of g_mutex_trylock() could be
-both %FALSE or %TRUE, if the current thread already has locked
- mutex  Use #GStaticRecMutex, if you need recursive
-mutexes.&lt;/para&gt;&lt;/note&gt;
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GMutex.
+<parameter name="name">
+<parameter_description> the name for the option group, this is used to provide
+help for the options in this group with &lt;option&gt;--help-&lt;/option&gt;@name
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE, if @mutex could be locked.
-</return>
-</function>
-
-<function name="g_variant_is_normal_form">
-<description>
-Checks if @value is in normal form.
-
-The main reason to do this is to detect if a given chunk of
-serialised data is in normal form: load the data into a #GVariant
-using g_variant_create_from_data() and then use this function to
-check.
-
-If @value is found to be in normal form then it will be marked as
-being trusted.  If the value was already marked as being trusted then
-this function will immediately return %TRUE.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant instance
+<parameter name="description">
+<parameter_description> a description for this group to be shown in
+&lt;option&gt;--help&lt;/option&gt;. This string is translated using the translation
+domain or translation function of the group
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @value is in normal form
-</return>
-</function>
-
-<function name="g_static_rw_lock_writer_trylock">
-<description>
-Tries to lock @lock for writing. If @lock is already locked (for
-either reading or writing) by another thread, it immediately returns
-%FALSE. Otherwise it locks @lock for writing and returns %TRUE. This
-lock has to be unlocked by g_static_rw_lock_writer_unlock().
-
-</description>
-<parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to lock for writing.
+<parameter name="help_description">
+<parameter_description> a description for the &lt;option&gt;--help-&lt;/option&gt;@name option.
+This string is translated using the translation domain or translation function
+of the group
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE, if @lock could be locked for writing.
-</return>
-</function>
-
-<function name="g_list_previous">
-<description>
-A convenience macro to get the previous element in a #GList.
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> an element in a #GList.
+<parameter name="user_data">
+<parameter_description> user data that will be passed to the pre- and post-parse hooks,
+the error hook and to callbacks of %G_OPTION_ARG_CALLBACK options, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="destroy">
+<parameter_description> a function that will be called to free @user_data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the previous element, or %NULL if there are no previous
-elements.
+<return> a newly created option group. It should be added
+to a #GOptionContext or freed with g_option_group_free().
+
 </return>
 </function>
 
-<function name="g_key_file_set_list_separator">
+<function name="g_option_group_set_error_hook">
 <description>
-Sets the character which is used to separate
-values in lists. Typically ';' or ',' are used
-as separators. The default list separator is ';'.
+Associates a function with @group which will be called
+from g_option_context_parse() when an error occurs.
+
+Note that the user data to be passed to @error_func can be
+specified when constructing the group with g_option_group_new().
 
 Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile 
+<parameter name="group">
+<parameter_description> a #GOptionGroup
 </parameter_description>
 </parameter>
-<parameter name="separator">
-<parameter_description> the separator
+<parameter name="error_func">
+<parameter_description> a function to call when an error occurs
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_rand_double_range">
+<function name="g_option_group_set_parse_hooks">
 <description>
-Returns the next random #gdouble from @rand_ equally distributed over
-the range [ begin  @end).
+Associates two functions with @group which will be called
+from g_option_context_parse() before the first option is parsed
+and after the last option has been parsed, respectively.
 
+Note that the user data to be passed to @pre_parse_func and
+ post_parse_func can be specified when constructing the group
+with g_option_group_new().
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="group">
+<parameter_description> a #GOptionGroup
 </parameter_description>
 </parameter>
-<parameter name="begin">
-<parameter_description> lower closed bound of the interval.
+<parameter name="pre_parse_func">
+<parameter_description> a function to call before parsing, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="end">
-<parameter_description> upper open bound of the interval.
+<parameter name="post_parse_func">
+<parameter_description> a function to call after parsing, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A random number.
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_builder_init">
+<function name="g_option_group_set_translate_func">
 <description>
-Initialises a #GVariantBuilder structure.
-
- type must be non-%NULL.  It specifies the type of container to
-construct.  It can be an indefinite type such as
-%G_VARIANT_TYPE_ARRAY or a definite type such as &quot;as&quot; or &quot;(ii)&quot;.
-Maybe, array, tuple, dictionary entry and variant-typed values may be
-constructed.
-
-After the builder is initialised, values are added using
-g_variant_builder_add_value() or g_variant_builder_add().
-
-After all the child values are added, g_variant_builder_end() frees
-the memory associated with the builder and returns the #GVariant that
-was created.
-
-This function completely ignores the previous contents of @builder.
-On one hand this means that it is valid to pass in completely
-uninitialised memory.  On the other hand, this means that if you are
-initialising over top of an existing #GVariantBuilder you need to
-first call g_variant_builder_clear() in order to avoid leaking
-memory.
+Sets the function which is used to translate user-visible
+strings, for &lt;option&gt;--help&lt;/option&gt; output. Different
+groups can use different #GTranslateFunc&lt;!-- --&gt;s. If @func
+is %NULL, strings are not translated.
 
-You must not call g_variant_builder_ref() or
-g_variant_builder_unref() on a #GVariantBuilder that was initialised
-with this function.  If you ever pass a reference to a
-#GVariantBuilder outside of the control of your own code then you
-should assume that the person receiving that reference may try to use
-reference counting; you should use g_variant_builder_new() instead of
-this function.
+If you are using gettext(), you only need to set the translation
+domain, see g_option_group_set_translation_domain().
 
-Since: 2.24
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a container type
+<parameter name="group">
+<parameter_description> a #GOptionGroup
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_option_context_add_main_entries">
-<description>
-A convenience function which creates a main group if it doesn't 
-exist, adds the @entries to it and sets the translation domain.
-
-Since: 2.6
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="func">
+<parameter_description> the #GTranslateFunc, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="entries">
-<parameter_description> a %NULL-terminated array of #GOptionEntry&lt;!-- --&gt;s
+<parameter name="data">
+<parameter_description> user data to pass to @func, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="translation_domain">
-<parameter_description> a translation domain to use for translating
-the &lt;option&gt;--help&lt;/option&gt; output for the options in @entries
-with gettext(), or %NULL
+<parameter name="destroy_notify">
+<parameter_description> a function which gets called to free @data, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_flags_complete_type_info">
+<function name="g_option_group_set_translation_domain">
 <description>
-This function is meant to be called from the complete_type_info()
-function of a #GTypePlugin implementation, see the example for
-g_enum_complete_type_info() above.
+A convenience function to use gettext() for translating
+user-visible strings.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="g_flags_type">
-<parameter_description> the type identifier of the type being completed
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> the #GTypeInfo struct to be filled in
+<parameter name="group">
+<parameter_description> a #GOptionGroup
 </parameter_description>
 </parameter>
-<parameter name="const_values">
-<parameter_description> An array of #GFlagsValue structs for the possible
-enumeration values. The array is terminated by a struct with all
-members being 0.
+<parameter name="domain">
+<parameter_description> the domain to use
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_thread_pool_push">
+<function name="g_parse_debug_string">
 <description>
-Inserts @data into the list of tasks to be executed by @pool. When
-the number of currently running threads is lower than the maximal
-allowed number of threads, a new thread is started (or reused) with
-the properties given to g_thread_pool_new (). Otherwise @data stays
-in the queue until a thread in this pool finishes its previous task
-and processes @data. 
+Parses a string containing debugging options
+into a %guint containing bit flags. This is used 
+within GDK and GTK+ to parse the debug options passed on the
+command line or through environment variables.
+
+If @string is equal to &quot;all&quot;, all flags are set.  If @string
+is equal to &quot;help&quot;, all the available keys in @keys are printed
+out to standard error.
 
- error can be %NULL to ignore errors, or non-%NULL to report
-errors. An error can only occur when a new thread couldn't be
-created. In that case @data is simply appended to the queue of work
-to do.  
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
+<parameter name="string">
+<parameter_description> a list of debug options separated by colons, spaces, or
+commas, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a new task for @pool
+<parameter name="keys">
+<parameter_description> pointer to an array of #GDebugKey which associate 
+strings with bit flags.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error
+<parameter name="nkeys">
+<parameter_description> the number of #GDebugKey&lt;!-- --&gt;s in the array.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the combined set of bit flags.
+</return>
 </function>
 
-<function name="g_io_channel_read_line">
+<function name="g_path_get_basename">
 <description>
-Reads a line, including the terminating character(s),
-from a #GIOChannel into a newly-allocated string.
- str_return will contain allocated memory if the return
-is %G_IO_STATUS_NORMAL.
+Gets the last component of the filename. If @file_name ends with a 
+directory separator it gets the component before the last slash. If 
+ file_name consists only of directory separators (and on Windows, 
+possibly a drive letter), a single separator is returned. If
+ file_name is empty, it gets &quot;.&quot;.
 
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="str_return">
-<parameter_description> The line read from the #GIOChannel, including the
-line terminator. This data should be freed with g_free()
-when no longer needed. This is a nul-terminated string. 
-If a @length of zero is returned, this will be %NULL instead.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> location to store length of the read data, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="terminator_pos">
-<parameter_description> location to store position of line terminator, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> A location to return an error of type #GConvertError
-or #GIOChannelError
+<parameter name="file_name">
+<parameter_description> the name of the file.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation.
+<return> a newly allocated string containing the last component of 
+the filename.
 </return>
 </function>
 
-<function name="g_param_spec_uchar">
+<function name="g_path_get_dirname">
 <description>
-Creates a new #GParamSpecUChar instance specifying a %G_TYPE_UCHAR property.
+Gets the directory components of a file name.  If the file name has no
+directory components &quot;.&quot; is returned.  The returned string should be
+freed when no longer needed.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="file_name">
+<parameter_description> the name of the file.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> the directory components of the file.
 </return>
 </function>
 
-<function name="g_get_home_dir">
+<function name="g_path_is_absolute">
 <description>
-Gets the current user's home directory as defined in the 
-password database.
+Returns %TRUE if the given @file_name is an absolute file name.
+Note that this is a somewhat vague concept on Windows.
 
-Note that in contrast to traditional UNIX tools, this function 
-prefers &lt;filename&gt;passwd&lt;/filename&gt; entries over the &lt;envar&gt;HOME&lt;/envar&gt; 
-environment variable. 
+On POSIX systems, an absolute file name is well-defined. It always
+starts from the single root directory. For example &quot;/usr/local&quot;.
 
-One of the reasons for this decision is that applications in many 
-cases need special handling to deal with the case where 
-&lt;envar&gt;HOME&lt;/envar&gt; is
-&lt;simplelist&gt;
-&lt;member&gt;Not owned by the user&lt;/member&gt;
-&lt;member&gt;Not writeable&lt;/member&gt;
-&lt;member&gt;Not even readable&lt;/member&gt;
-&lt;/simplelist&gt;
-Since applications are in general &lt;emphasis&gt;not&lt;/emphasis&gt; written 
-to deal with these situations it was considered better to make 
-g_get_home_dir() not pay attention to &lt;envar&gt;HOME&lt;/envar&gt; and to 
-return the real home directory for the user. If applications
-want to pay attention to &lt;envar&gt;HOME&lt;/envar&gt;, they can do:
-|[
-const char *homedir = g_getenv (&quot;HOME&quot;);
-if (!homedir)
-homedir = g_get_home_dir (&lt;!-- --&gt;);
-]|
+On Windows, the concepts of current drive and drive-specific
+current directory introduce vagueness. This function interprets as
+an absolute file name one that either begins with a directory
+separator such as &quot;\Users\tml&quot; or begins with the root on a drive,
+for example &quot;C:\Windows&quot;. The first case also includes UNC paths
+such as &quot;\\myserver\docs\foo&quot;. In all cases, either slashes or
+backslashes are accepted.
+
+Note that a file name relative to the current drive root does not
+truly specify a file uniquely over time and across processes, as
+the current drive is a per-process value and can be changed.
+
+File names relative the current directory on some specific drive,
+such as &quot;D:foo/bar&quot;, are not interpreted as absolute by this
+function, but they obviously are not relative to the normal current
+directory as returned by getcwd() or g_get_current_dir()
+either. Such paths should be avoided, or need to be handled using
+Windows-specific code.
 
 
 </description>
 <parameters>
+<parameter name="file_name">
+<parameter_description> a file name.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the current user's home directory
+<return> %TRUE if @file_name is absolute. 
 </return>
 </function>
 
-<function name="g_sequence_move_range">
+<function name="g_path_skip_root">
 <description>
-Inserts the (@begin, @end) range at the destination pointed to by ptr.
-The @begin and @end iters must point into the same sequence. It is
-allowed for @dest to point to a different sequence than the one pointed
-into by @begin and @end.
-
-If @dest is NULL, the range indicated by @begin and @end is
-removed from the sequence. If @dest iter points to a place within
-the (@begin, @end) range, the range does not move.
+Returns a pointer into @file_name after the root component, i.e. after
+the &quot;/&quot; in UNIX or &quot;C:\&quot; under Windows. If @file_name is not an absolute
+path it returns %NULL.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
-<parameter name="begin">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
-<parameter name="end">
-<parameter_description> a #GSequenceIter
+<parameter name="file_name">
+<parameter_description> a file name.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer into @file_name after the root component.
+</return>
 </function>
 
-<function name="g_key_file_load_from_data">
+<function name="g_pattern_match">
 <description>
-Loads a key file from memory into an empty #GKeyFile structure.  
-If the object cannot be created then %error is set to a #GKeyFileError. 
+Matches a string against a compiled pattern. Passing the correct
+length of the string given is mandatory. The reversed string can be
+omitted by passing %NULL, this is more efficient if the reversed
+version of the string to be matched is not at hand, as
+g_pattern_match() will only construct it if the compiled pattern
+requires reverse matches.
 
-Since: 2.6
+Note that, if the user code will (possibly) match a string against a
+multitude of patterns containing wildcards, chances are high that
+some patterns will require a reversed string. In this case, it's
+more efficient to provide the reversed string to avoid multiple
+constructions thereof in the various calls to g_pattern_match().
+
+Note also that the reverse of a UTF-8 encoded string can in general
+&lt;emphasis&gt;not&lt;/emphasis&gt; be obtained by g_strreverse(). This works
+only if the string doesn't contain any multibyte characters. GLib
+offers the g_utf8_strreverse() function to reverse UTF-8 encoded
+strings.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> an empty #GKeyFile struct
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> key file loaded in memory
+<parameter name="pspec">
+<parameter_description> a #GPatternSpec
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of @data in bytes
+<parameter name="string_length">
+<parameter_description> the length of @string (in bytes, i.e. strlen(),
+&lt;emphasis&gt;not&lt;/emphasis&gt; g_utf8_strlen())
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags from #GKeyFileFlags
+<parameter name="string">
+<parameter_description> the UTF-8 encoded string to match
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="string_reversed">
+<parameter_description> the reverse of @string or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a key file could be loaded, %FALSE otherwise
-
+<return> %TRUE if @string matches @pspec
 </return>
 </function>
 
-<function name="g_completion_set_compare">
+<function name="g_pattern_match_simple">
 <description>
-Sets the function to use for string comparisons. The default string
-comparison function is strncmp().
-
-Deprecated: 2.26: Rarely used API
+Matches a string against a pattern given as a string. If this
+function is to be called in a loop, it's more efficient to compile
+the pattern once with g_pattern_spec_new() and call
+g_pattern_match_string() repeatedly.
 
 </description>
 <parameters>
-<parameter name="cmp">
-<parameter_description> a #GCompletion.
+<parameter name="pattern">
+<parameter_description> the UTF-8 encoded pattern
 </parameter_description>
 </parameter>
-<parameter name="strncmp_func">
-<parameter_description> the string comparison function.
+<parameter name="string">
+<parameter_description> the UTF-8 encoded string to match
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @string matches @pspec
+</return>
 </function>
 
-<function name="g_async_queue_new_full">
+<function name="g_pattern_match_string">
 <description>
-Creates a new asynchronous queue with an initial reference count of 1 and
-sets up a destroy notify function that is used to free any remaining
-queue items when the queue is destroyed after the final unref.
-
-Since: 2.16
+Matches a string against a compiled pattern. If the string is to be
+matched against more than one pattern, consider using
+g_pattern_match() instead while supplying the reversed string.
 
 </description>
 <parameters>
-<parameter name="item_free_func">
-<parameter_description> function to free queue elements
+<parameter name="pspec">
+<parameter_description> a #GPatternSpec
 </parameter_description>
 </parameter>
-</parameters>
-<return> the new #GAsyncQueue.
-
-</return>
-</function>
-
-<function name="g_value_reset">
-<description>
-Clears the current value in @value and resets it to the default value
-(as if the value had just been initialized).
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> An initialized #GValue structure.
+<parameter name="string">
+<parameter_description> the UTF-8 encoded string to match
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GValue structure that has been passed in
+<return> %TRUE if @string matches @pspec
 </return>
 </function>
 
-<function name="g_type_module_register_enum">
+<function name="g_pattern_spec_equal">
 <description>
-Looks up or registers an enumeration that is implemented with a particular
-type plugin. If a type with name @type_name was previously registered,
-the #GType identifier for the type is returned, otherwise the type
-is newly registered, and the resulting #GType identifier returned.
-
-As long as any instances of the type exist, the type plugin will
-not be unloaded.
-
-Since: 2.6
-
+Compares two compiled pattern specs and returns whether they will
+match the same set of strings.
 
 </description>
 <parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name for the type
-</parameter_description>
-</parameter>
-<parameter name="const_static_values">
-<parameter_description> an array of #GEnumValue structs for the
-possible enumeration values. The array is
-terminated by a struct with all members being
-0.
+<parameter name="pspec1">
+<parameter_description> a #GPatternSpec
 </parameter_description>
 </parameter>
-</parameters>
-<return> the new or existing type ID
-</return>
-</function>
-
-<function name="g_variant_byteswap">
-<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).
-
-The returned value is always in normal form and is marked as trusted.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="pspec2">
+<parameter_description> another #GPatternSpec
 </parameter_description>
 </parameter>
 </parameters>
-<return> the byteswapped form of @value
+<return> Whether the compiled patterns are equal
 </return>
 </function>
 
-<function name="g_signal_stop_emission_by_name">
+<function name="g_pattern_spec_free">
 <description>
-Stops a signal's current emission.
-
-This is just like g_signal_stop_emission() except it will look up the
-signal id for you.
+Frees the memory allocated for the #GPatternSpec.
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the object whose signal handlers you wish to stop.
-</parameter_description>
-</parameter>
-<parameter name="detailed_signal">
-<parameter_description> a string of the form &quot;signal-name::detail&quot;.
+<parameter name="pspec">
+<parameter_description> a #GPatternSpec
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_date_set_time_val">
+<function name="g_pattern_spec_new">
 <description>
-Sets the value of a date from a #GTimeVal value.  Note that the
- tv_usec member is ignored, because #GDate can't make use of the
-additional precision.
-
-The time to date conversion is done using the user's current timezone.
-
-Since: 2.10
+Compiles a pattern to a #GPatternSpec.
 
 </description>
 <parameters>
-<parameter name="date">
-<parameter_description> a #GDate 
-</parameter_description>
-</parameter>
-<parameter name="timeval">
-<parameter_description> #GTimeVal value to set
+<parameter name="pattern">
+<parameter_description> a zero-terminated UTF-8 encoded string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly-allocated #GPatternSpec
+</return>
 </function>
 
-<function name="g_variant_iter_next">
+<function name="g_poll">
 <description>
-Gets the next item in the container and unpacks it into the variable
-argument list according to @format_string, returning %TRUE.
-
-If no more items remain then %FALSE is returned.
-
-All of the pointers given on the variable arguments list of this
-function are assumed to point at uninitialised memory.  It is the
-responsibility of the caller to free all of the values returned by
-the unpacking process.
-
-See the section on &lt;link linkend='gvariant-format-strings'&gt;GVariant
-Format Strings&lt;/link&gt;.
-
-&lt;example&gt;
-&lt;title&gt;Memory management with g_variant_iter_next()&lt;/title&gt;
-&lt;programlisting&gt;
-/&lt;!-- --&gt;* Iterates a dictionary of type 'a{sv}' *&lt;!-- --&gt;/
-void
-iterate_dictionary (GVariant *dictionary)
-{
-GVariantIter iter;
-GVariant *value;
-gchar *key;
-
-g_variant_iter_init (&amp;iter, dictionary);
-while (g_variant_iter_next (&amp;iter, &quot;{sv}&quot;, &amp;key, &amp;value))
-{
-g_print (&quot;Item '%s' has type '%s'\n&quot;, key,
-g_variant_get_type_string (value));
+Polls @fds, as with the poll() system call, but portably. (On
+systems that don't have poll(), it is emulated using select().)
+This is used internally by #GMainContext, but it can be called
+directly if you need to block until a file descriptor is ready, but
+don't want to run the full main loop.
 
-/&lt;!-- --&gt;* must free data for ourselves *&lt;!-- --&gt;/
-g_variant_unref (value);
-g_free (key);
-}
-}
-&lt;/programlisting&gt;
-&lt;/example&gt;
+Each element of @fds is a #GPollFD describing a single file
+descriptor to poll. The %fd field indicates the file descriptor,
+and the %events field indicates the events to poll for. On return,
+the %revents fields will be filled with the events that actually
+occurred.
 
-For a solution that is likely to be more convenient to C programmers
-when dealing with loops, see g_variant_iter_loop().
+On POSIX systems, the file descriptors in @fds can be any sort of
+file descriptor, but the situation is much more complicated on
+Windows. If you need to use g_poll() in code that has to run on
+Windows, the easiest solution is to construct all of your
+#GPollFD&lt;!-- --&gt;s with g_io_channel_win32_make_pollfd().
 
-Since: 2.24
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GVariantIter
+<parameter name="fds">
+<parameter_description> file descriptors to poll
 </parameter_description>
 </parameter>
-<parameter name="format_string">
-<parameter_description> a GVariant format string
+<parameter name="nfds">
+<parameter_description> the number of file descriptors in @fds
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to unpack the value into
+<parameter name="timeout">
+<parameter_description> amount of time to wait, in milliseconds, or -1 to wait forever
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a value was unpacked, or %FALSE if there as no
-value
+<return> the number of entries in @fds whose %revents fields
+were filled in, or 0 if the operation timed out, or -1 on error or
+if the call was interrupted.
+
 </return>
 </function>
 
-<function name="g_variant_type_is_subtype_of">
+<function name="g_prefix_error">
 <description>
-Checks if @type is a subtype of @supertype.
+Formats a string according to @format and
+prefix it to an existing error message.  If
+ err is %NULL (ie: no error variable) then do
+nothing.
 
-This function returns %TRUE if @type is a subtype of @supertype.  All
-types are considered to be subtypes of themselves.  Aside from that,
-only indefinite types can have subtypes.
+If * err is %NULL (ie: an error variable is
+present but there is no error condition) then
+also do nothing.  Whether or not it makes
+sense to take advantage of this feature is up
+to you.
 
-Since 2.24
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="err">
+<parameter_description> a return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="supertype">
-<parameter_description> a #GVariantType
+<parameter name="format">
+<parameter_description> printf()-style format string
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @type is a subtype of @supertype
-</return>
-</function>
-
-<function name="g_relation_destroy">
-<description>
-Destroys the #GRelation, freeing all memory allocated. However, it
-does not free memory allocated for the tuple data, so you should
-free that first if appropriate.
-
-Deprecated: 2.26: Rarely used API
-
-</description>
-<parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
+<parameter name="Varargs">
+<parameter_description> arguments to @format
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_regex_check_replacement">
+<function name="g_printf">
 <description>
-Checks whether @replacement is a valid replacement string
-(see g_regex_replace()), i.e. that all escape sequences in
-it are valid.
-
-If @has_references is not %NULL then @replacement is checked
-for pattern references. For instance, replacement text 'foo\n'
-does not contain references and may be evaluated without information
-about actual match, but '\0\1' (whole match followed by first
-subpattern) requires valid #GMatchInfo object.
+An implementation of the standard printf() function which supports 
+positional parameters, as specified in the Single Unix Specification.
 
-Since: 2.14
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="replacement">
-<parameter_description> the replacement string
-</parameter_description>
-</parameter>
-<parameter name="has_references">
-<parameter_description> location to store information about
-references in @replacement or %NULL
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice 
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error
+<parameter name="Varargs">
+<parameter_description> the arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether @replacement is a valid replacement string
+<return> the number of bytes printed.
 
 </return>
 </function>
 
-<function name="g_base64_decode">
+<function name="g_private_get">
 <description>
-Decode a sequence of Base-64 encoded text into binary data
+Returns the pointer keyed to @private_key for the current thread. If
+g_private_set() hasn't been called for the current @private_key and
+thread yet, this pointer will be %NULL.
 
-Since: 2.12
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will return the value of @private_key
+casted to #gpointer. Note however, that private data set
+&lt;emphasis&gt;before&lt;/emphasis&gt; g_thread_init() will
+&lt;emphasis&gt;not&lt;/emphasis&gt; be retained &lt;emphasis&gt;after&lt;/emphasis&gt; the
+call. Instead, %NULL will be returned in all threads directly after
+g_thread_init(), regardless of any g_private_set() calls issued
+before threading system intialization.
 
 </description>
 <parameters>
-<parameter name="text">
-<parameter_description> zero-terminated string with base64 text to decode
-</parameter_description>
-</parameter>
-<parameter name="out_len">
-<parameter_description> The length of the decoded data is written here
+<parameter name="private_key">
+<parameter_description> a #GPrivate.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated buffer containing the binary data
-that @text represents. The returned buffer must
-be freed with g_free().
-
+<return> the corresponding pointer.
 </return>
 </function>
 
-<function name="g_file_test">
+<function name="g_private_new">
 <description>
-Returns %TRUE if any of the tests in the bitfield @test are
-%TRUE. For example, &lt;literal&gt;(G_FILE_TEST_EXISTS | 
-G_FILE_TEST_IS_DIR)&lt;/literal&gt; will return %TRUE if the file exists; 
-the check whether it's a directory doesn't matter since the existence 
-test is %TRUE. With the current set of available tests, there's no point
-passing in more than one test at a time.
-
-Apart from %G_FILE_TEST_IS_SYMLINK all tests follow symbolic links,
-so for a symbolic link to a regular file g_file_test() will return
-%TRUE for both %G_FILE_TEST_IS_SYMLINK and %G_FILE_TEST_IS_REGULAR.
-
-Note, that for a dangling symbolic link g_file_test() will return
-%TRUE for %G_FILE_TEST_IS_SYMLINK and %FALSE for all other flags.
-
-You should never use g_file_test() to test whether it is safe
-to perform an operation, because there is always the possibility
-of the condition changing before you actually perform the operation.
-For example, you might think you could use %G_FILE_TEST_IS_SYMLINK
-to know whether it is safe to write to a file without being
-tricked into writing into a different location. It doesn't work!
-|[
-/ * DON'T DO THIS * /
-if (!g_file_test (filename, G_FILE_TEST_IS_SYMLINK)) 
-{
-fd = g_open (filename, O_WRONLY);
-/ * write to fd * /
-}
-]|
+Creates a new #GPrivate. If @destructor is non-%NULL, it is a
+pointer to a destructor function. Whenever a thread ends and the
+corresponding pointer keyed to this instance of #GPrivate is
+non-%NULL, the destructor is called with this pointer as the
+argument.
 
-Another thing to note is that %G_FILE_TEST_EXISTS and
-%G_FILE_TEST_IS_EXECUTABLE are implemented using the access()
-system call. This usually doesn't matter, but if your program
-is setuid or setgid it means that these tests will give you
-the answer for the real user ID and group ID, rather than the
-effective user ID and group ID.
+&lt;note&gt;&lt;para&gt;@destructor is used quite differently from @notify in
+g_static_private_set().&lt;/para&gt;&lt;/note&gt;
 
-On Windows, there are no symlinks, so testing for
-%G_FILE_TEST_IS_SYMLINK will always return %FALSE. Testing for
-%G_FILE_TEST_IS_EXECUTABLE will just check that the file exists and
-its name indicates that it is executable, checking for well-known
-extensions and those listed in the %PATHEXT environment variable.
+&lt;note&gt;&lt;para&gt;A #GPrivate can not be freed. Reuse it instead, if you
+can, to avoid shortage, or use #GStaticPrivate.&lt;/para&gt;&lt;/note&gt;
 
+&lt;note&gt;&lt;para&gt;This function will abort if g_thread_init() has not been
+called yet.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a filename to test in the GLib file name encoding
-</parameter_description>
-</parameter>
-<parameter name="test">
-<parameter_description> bitfield of #GFileTest flags
+<parameter name="destructor">
+<parameter_description> a function to destroy the data keyed to #GPrivate when
+a thread ends.
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether a test was %TRUE
+<return> a new #GPrivate.
 </return>
 </function>
 
-<function name="g_thread_pool_set_max_threads">
+<function name="g_private_set">
 <description>
-Sets the maximal allowed number of threads for @pool. A value of -1
-means, that the maximal number of threads is unlimited.
-
-Setting @max_threads to 0 means stopping all work for @pool. It is
-effectively frozen until @max_threads is set to a non-zero value
-again.
-
-A thread is never terminated while calling @func, as supplied by
-g_thread_pool_new (). Instead the maximal number of threads only
-has effect for the allocation of new threads in g_thread_pool_push(). 
-A new thread is allocated, whenever the number of currently
-running threads in @pool is smaller than the maximal number.
+Sets the pointer keyed to @private_key for the current thread.
 
- error can be %NULL to ignore errors, or non-%NULL to report
-errors. An error can only occur when a new thread couldn't be
-created. 
+This function can be used even if g_thread_init() has not yet been
+called, and, in that case, will set @private_key to @data casted to
+#GPrivate*. See g_private_get() for resulting caveats.
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
-</parameter_description>
-</parameter>
-<parameter name="max_threads">
-<parameter_description> a new maximal number of threads for @pool
+<parameter name="private_key">
+<parameter_description> a #GPrivate.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error
+<parameter name="data">
+<parameter_description> the new pointer.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_utf8_find_next_char">
+<function name="g_propagate_error">
 <description>
-Finds the start of the next UTF-8 character in the string after @p.
-
- p does not have to be at the beginning of a UTF-8 character. No check
-is made to see if the character found is actually valid other than
-it starts with an appropriate byte.
-
+If @dest is %NULL, free @src; otherwise, moves @src into * dest 
+The error variable @dest points to must be %NULL.
 
 </description>
 <parameters>
-<parameter name="p">
-<parameter_description> a pointer to a position within a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="end">
-<parameter_description> a pointer to the byte following the end of the string,
-or %NULL to indicate that the string is nul-terminated.
+<parameter name="dest">
+<parameter_description> error return location
 </parameter_description>
 </parameter>
-</parameters>
-<return> a pointer to the found character or %NULL
-</return>
-</function>
-
-<function name="g_unichar_isspace">
-<description>
-Determines whether a character is a space, tab, or line separator
-(newline, carriage return, etc.).  Given some UTF-8 text, obtain a
-character value with g_utf8_get_char().
-
-(Note: don't use this to do word breaking; you have to use
-Pango or equivalent to get word breaking right, the algorithm
-is fairly complex.)
-
-
-</description>
-<parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="src">
+<parameter_description> error to move into the return location
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is a space character
-</return>
+<return></return>
 </function>
 
-<function name="g_utf8_to_ucs4">
+<function name="g_propagate_prefixed_error">
 <description>
-Convert a string from UTF-8 to a 32-bit fixed width
-representation as UCS-4. A trailing 0 will be added to the
-string after the converted text.
+If @dest is %NULL, free @src; otherwise,
+moves @src into * dest  * dest must be %NULL.
+After the move, add a prefix as with
+g_prefix_error().
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the maximum length of @str to use, in bytes. If @len &lt; 0,
-then the string is nul-terminated.
+<parameter name="dest">
+<parameter_description> error return location
 </parameter_description>
 </parameter>
-<parameter name="items_read">
-<parameter_description> location to store number of bytes read, or %NULL.
-If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
-returned in case @str contains a trailing partial
-character. If an error occurs then the index of the
-invalid input is stored here.
+<parameter name="src">
+<parameter_description> error to move into the return location
 </parameter_description>
 </parameter>
-<parameter name="items_written">
-<parameter_description> location to store number of characters written or %NULL.
-The value here stored does not include the trailing 0
-character. 
+<parameter name="format">
+<parameter_description> printf()-style format string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError other than
-%G_CONVERT_ERROR_NO_CONVERSION may occur.
+<parameter name="Varargs">
+<parameter_description> arguments to @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a newly allocated UCS-4 string.
-This value must be freed with g_free(). If an
-error occurs, %NULL will be returned and
- error set.
-</return>
+<return></return>
 </function>
 
-<function name="g_node_first_sibling">
+<function name="g_ptr_array_add">
 <description>
-Gets the first sibling of a #GNode.
-This could possibly be the node itself.
-
+Adds a pointer to the end of the pointer array. The array will grow
+in size automatically if necessary.
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="array">
+<parameter_description> a #GPtrArray.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> the pointer to add.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the first sibling of @node
-</return>
+<return></return>
 </function>
 
-<function name="g_tree_search">
+<function name="g_ptr_array_foreach">
 <description>
-Searches a #GTree using @search_func.
-
-The @search_func is called with a pointer to the key of a key/value pair in 
-the tree, and the passed in @user_data. If @search_func returns 0 for a 
-key/value pair, then g_tree_search_func() will return the value of that 
-pair. If @search_func returns -1,  searching will proceed among the 
-key/value pairs that have a smaller key; if @search_func returns 1, 
-searching will proceed among the key/value pairs that have a larger key.
+Calls a function for each element of a #GPtrArray.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="array">
+<parameter_description> a #GPtrArray
 </parameter_description>
 </parameter>
-<parameter name="search_func">
-<parameter_description> a function used to search the #GTree. 
+<parameter name="func">
+<parameter_description> the function to call for each array element
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> the data passed as the second argument to the @search_func 
-function.
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value corresponding to the found key, or %NULL if the key 
-was not found.
-</return>
+<return></return>
 </function>
 
-<function name="g_string_insert_len">
+<function name="g_ptr_array_free">
 <description>
-Inserts @len bytes of @val into @string at @pos.
-Because @len is provided, @val may contain embedded
-nuls and need not be nul-terminated. If @pos is -1,
-bytes are inserted at the end of the string.
-
-Since this function does not stop at nul bytes, it is
-the caller's responsibility to ensure that @val has at
-least @len addressable bytes.
+Frees the memory allocated for the #GPtrArray. If @free_seg is %TRUE
+it frees the memory block holding the elements as well. Pass %FALSE
+if you want to free the #GPtrArray wrapper but preserve the
+underlying array for use elsewhere. If the reference count of @array
+is greater than one, the #GPtrArray wrapper is preserved but the
+size of @array will be set to zero.
 
+&lt;note&gt;&lt;para&gt;If array contents point to dynamically-allocated
+memory, they should be freed separately if @free_seg is %TRUE and no
+#GDestroyNotify function has been set for @array.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="pos">
-<parameter_description> position in @string where insertion should
-happen, or -1 for at the end
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> bytes to insert
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> number of bytes of @val to insert
+<parameter name="free_seg">
+<parameter_description> if %TRUE the actual pointer array is freed as well.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> the pointer array if @free_seg is %FALSE, otherwise %NULL.
+The pointer array should be freed using g_free().
 </return>
 </function>
 
-<function name="g_cache_new">
+<function name="g_ptr_array_index">
 <description>
-Creates a new #GCache.
+Returns the pointer at the given index of the pointer array.
 
 </description>
 <parameters>
-<parameter name="value_new_func">
-<parameter_description> a function to create a new object given a key.
-This is called by g_cache_insert() if an object
-with the given key does not already exist.
-</parameter_description>
-</parameter>
-<parameter name="value_destroy_func">
-<parameter_description> a function to destroy an object. It is called
-by g_cache_remove() when the object is no
-longer needed (i.e. its reference count drops
-to 0).
-</parameter_description>
-</parameter>
-<parameter name="key_dup_func">
-<parameter_description> a function to copy a key. It is called by
-g_cache_insert() if the key does not already exist in
-the #GCache.
-</parameter_description>
-</parameter>
-<parameter name="key_destroy_func">
-<parameter_description> a function to destroy a key. It is called by
-g_cache_remove() when the object is no longer
-needed (i.e. its reference count drops to 0).
-</parameter_description>
-</parameter>
-<parameter name="hash_key_func">
-<parameter_description> a function to create a hash value from a key.
-</parameter_description>
-</parameter>
-<parameter name="hash_value_func">
-<parameter_description> a function to create a hash value from a value.
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="key_equal_func">
-<parameter_description> a function to compare two keys. It should return
-%TRUE if the two keys are equivalent.
+<parameter name="index_">
+<parameter_description> the index of the pointer to return.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GCache.
+<return> the pointer at the given index.
 </return>
 </function>
 
-<function name="g_value_get_string">
+<function name="g_ptr_array_new">
 <description>
-Get the contents of a %G_TYPE_STRING #GValue.
-
+Creates a new #GPtrArray with a reference count of 1.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_STRING
-</parameter_description>
-</parameter>
 </parameters>
-<return> string content of @value
+<return> the new #GPtrArray.
 </return>
 </function>
 
-<function name="g_key_file_set_locale_string_list">
+<function name="g_ptr_array_new_with_free_func">
 <description>
-Associates a list of string values for @key and @locale under
- group_name   If the translation for @key cannot be found then
-it is created. 
+Creates a new #GPtrArray with a reference count of 1 and use @element_free_func
+for freeing each element when the array is destroyed either via
+g_ptr_array_unref(), when g_ptr_array_free() is called with @free_segment
+set to %TRUE or when removing elements.
 
-Since: 2.6
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="locale">
-<parameter_description> a locale identifier
-</parameter_description>
-</parameter>
-<parameter name="list">
-<parameter_description> a %NULL-terminated array of locale string values
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the length of @list
+<parameter name="element_free_func">
+<parameter_description> A function to free elements with destroy @array or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A new #GPtrArray.
+
+</return>
 </function>
 
-<function name="g_rmdir">
+<function name="g_ptr_array_ref">
 <description>
-A wrapper for the POSIX rmdir() function. The rmdir() function
-deletes a directory from the filesystem.
-
-See your C library manual for more details about how rmdir() works
-on your system.
+Atomically increments the reference count of @array by one. This
+function is MT-safe and may be called from any thread.
 
-Since: 2.6
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="array">
+<parameter_description> A #GArray.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the directory was successfully removed, -1 if an error 
-occurred
+<return> The passed in #GPtrArray.
 
 </return>
 </function>
 
-<function name="glib_check_version">
+<function name="g_ptr_array_remove">
 <description>
-Checks that the GLib library in use is compatible with the
-given version. Generally you would pass in the constants
-#GLIB_MAJOR_VERSION, #GLIB_MINOR_VERSION, #GLIB_MICRO_VERSION
-as the three arguments to this function; that produces
-a check that the library in use is compatible with
-the version of GLib the application or module was compiled
-against.
-
-Compatibility is defined by two things: first the version
-of the running library is newer than the version
- required_major required_minor @required_micro. Second
-the running library must be binary compatible with the
-version @required_major required_minor  required_micro
-(same major version.)
+Removes the first occurrence of the given pointer from the pointer
+array. The following elements are moved down one place. If @array
+has a non-%NULL #GDestroyNotify function it is called for the
+removed element.
 
-Since: 2.6
+It returns %TRUE if the pointer was removed, or %FALSE if the
+pointer was not found.
 
 </description>
 <parameters>
-<parameter name="required_major">
-<parameter_description> the required major version.
-</parameter_description>
-</parameter>
-<parameter name="required_minor">
-<parameter_description> the required minor version.
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="required_micro">
-<parameter_description> the required micro version.
+<parameter name="data">
+<parameter_description> the pointer to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if the GLib library is compatible with the
-given version, or a string describing the version mismatch.
-The returned string is owned by GLib and must not be modified
-or freed.
-
+<return> %TRUE if the pointer is removed. %FALSE if the pointer is
+not found in the array.
 </return>
 </function>
 
-<function name="g_date_get_iso8601_week_of_year">
+<function name="g_ptr_array_remove_fast">
 <description>
-Returns the week of the year, where weeks are interpreted according
-to ISO 8601. 
+Removes the first occurrence of the given pointer from the pointer
+array. The last element in the array is used to fill in the space,
+so this function does not preserve the order of the array. But it is
+faster than g_ptr_array_remove(). If @array has a non-%NULL
+#GDestroyNotify function it is called for the removed element.
 
-Since: 2.6
+It returns %TRUE if the pointer was removed, or %FALSE if the
+pointer was not found.
 
 </description>
 <parameters>
-<parameter name="date">
-<parameter_description> a valid #GDate
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-</parameters>
-<return> ISO 8601 week number of the year.
-
-</return>
-</function>
-
-<function name="g_atomic_int_get">
-<description>
-Reads the value of the integer pointed to by @atomic.
-Also acts as a memory barrier.
-
-Since: 2.4
-
-</description>
-<parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to an integer
+<parameter name="data">
+<parameter_description> the pointer to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value of * atomic
-
+<return> %TRUE if the pointer was found in the array.
 </return>
 </function>
 
-<function name="g_main_context_pending">
+<function name="g_ptr_array_remove_index">
 <description>
-Checks if any sources have pending events for the given context.
-
+Removes the pointer at the given index from the pointer array. The
+following elements are moved down one place. If @array has a
+non-%NULL #GDestroyNotify function it is called for the removed
+element.
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext (if %NULL, the default context will be used)
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if events are pending.
-</return>
-</function>
-
-<function name="g_spawn_close_pid">
-<description>
-On some platforms, notably Windows, the #GPid type represents a resource
-which must be closed to prevent resource leaking. g_spawn_close_pid()
-is provided for this purpose. It should be used on all platforms, even
-though it doesn't do anything under UNIX.
-
-</description>
-<parameters>
-<parameter name="pid">
-<parameter_description> The process reference to close
+<parameter name="index_">
+<parameter_description> the index of the pointer to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the pointer which was removed.
+</return>
 </function>
 
-<function name="g_string_free">
+<function name="g_ptr_array_remove_index_fast">
 <description>
-Frees the memory allocated for the #GString.
-If @free_segment is %TRUE it also frees the character data.
-
+Removes the pointer at the given index from the pointer array. The
+last element in the array is used to fill in the space, so this
+function does not preserve the order of the array. But it is faster
+than g_ptr_array_remove_index(). If @array has a non-%NULL
+#GDestroyNotify function it is called for the removed element.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="free_segment">
-<parameter_description> if %TRUE the actual character data is freed as well
+<parameter name="index_">
+<parameter_description> the index of the pointer to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the character data of @string 
-(i.e. %NULL if @free_segment is %TRUE)
+<return> the pointer which was removed.
 </return>
 </function>
 
-<function name="g_array_new">
+<function name="g_ptr_array_remove_range">
 <description>
-Creates a new #GArray with a reference count of 1.
+Removes the given number of pointers starting at the given index
+from a #GPtrArray.  The following elements are moved to close the
+gap. If @array has a non-%NULL #GDestroyNotify function it is called
+for the removed elements.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="zero_terminated">
-<parameter_description> %TRUE if the array should have an extra element at
-the end which is set to 0.
+<parameter name="array">
+<parameter_description> a @GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="clear_">
-<parameter_description> %TRUE if #GArray elements should be automatically cleared
-to 0 when they are allocated.
+<parameter name="index_">
+<parameter_description> the index of the first pointer to remove.
 </parameter_description>
 </parameter>
-<parameter name="element_size">
-<parameter_description> the size of each element in bytes.
+<parameter name="length">
+<parameter_description> the number of pointers to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GArray.
-</return>
+<return></return>
 </function>
 
-<function name="g_sequence_remove_range">
+<function name="g_ptr_array_set_free_func">
 <description>
-Removes all items in the (@begin, @end) range.
-
-If the sequence has a data destroy function associated with it, this
-function is called on the data for the removed items.
+Sets a function for freeing each element when @array is destroyed
+either via g_ptr_array_unref(), when g_ptr_array_free() is called
+with @free_segment set to %TRUE or when removing elements.
 
-Since: 2.14
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="begin">
-<parameter_description> a #GSequenceIter
+<parameter name="array">
+<parameter_description> A #GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="end">
-<parameter_description> a #GSequenceIter
+<parameter name="element_free_func">
+<parameter_description> A function to free elements with destroy @array or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_ulong">
+<function name="g_ptr_array_set_size">
 <description>
-Set the contents of a %G_TYPE_ULONG #GValue to @v_ulong.
+Sets the size of the array. When making the array larger,
+newly-added elements will be set to %NULL. When making it smaller,
+if @array has a non-%NULL #GDestroyNotify function then it will be
+called for the removed elements.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_ULONG
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-<parameter name="v_ulong">
-<parameter_description> unsigned long integer value to be set
+<parameter name="length">
+<parameter_description> the new length of the pointer array.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_tree_new_with_data">
+<function name="g_ptr_array_sized_new">
 <description>
-Creates a new #GTree with a comparison function that accepts user data.
-See g_tree_new() for more details.
-
+Creates a new #GPtrArray with @reserved_size pointers preallocated
+and a reference count of 1. This avoids frequent reallocation, if
+you are going to add many pointers to the array. Note however that
+the size of the array is still 0.
 
 </description>
 <parameters>
-<parameter name="key_compare_func">
-<parameter_description> qsort()-style comparison function.
-</parameter_description>
-</parameter>
-<parameter name="key_compare_data">
-<parameter_description> data to pass to comparison function.
+<parameter name="reserved_size">
+<parameter_description> number of pointers preallocated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GTree.
+<return> the new #GPtrArray.
 </return>
 </function>
 
-<function name="g_unichar_iswide_cjk">
+<function name="g_ptr_array_sort">
 <description>
-Determines if a character is typically rendered in a double-width
-cell under legacy East Asian locales.  If a character is wide according to
-g_unichar_iswide(), then it is also reported wide with this function, but
-the converse is not necessarily true.  See the
-&lt;ulink url=&quot;http://www.unicode.org/reports/tr11/&quot;&gt;Unicode Standard
-Annex #11&lt;/ulink&gt; for details.
+Sorts the array, using @compare_func which should be a qsort()-style
+comparison function (returns less than zero for first arg is less
+than second arg, zero for equal, greater than zero if irst arg is
+greater than second arg).
 
-If a character passes the g_unichar_iswide() test then it will also pass
-this test, but not the other way around.  Note that some characters may
-pas both this test and g_unichar_iszerowidth().
+If two array elements compare equal, their order in the sorted array
+is undefined.
 
-Since: 2.12
+&lt;note&gt;&lt;para&gt;The comparison function for g_ptr_array_sort() doesn't
+take the pointers from the array as arguments, it takes pointers to
+the pointers in the array.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the character is wide in legacy East Asian locales
-
-</return>
-</function>
-
-<function name="g_markup_parse_context_pop">
-<description>
-Completes the process of a temporary sub-parser redirection.
-
-This function exists to collect the user_data allocated by a
-matching call to g_markup_parse_context_push().  It must be called
-in the end_element handler corresponding to the start_element
-handler during which g_markup_parse_context_push() was called.  You
-must not call this function from the error callback -- the
- user_data is provided directly to the callback in that case.
-
-This function is not intended to be directly called by users
-interested in invoking subparsers.  Instead, it is intended to be
-used by the subparsers themselves to implement a higher-level
-interface.
-
-Since: 2.18
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="compare_func">
+<parameter_description> comparison function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the user_data passed to g_markup_parse_context_push().
-
-</return>
+<return></return>
 </function>
 
-<function name="g_test_create_suite">
+<function name="g_ptr_array_sort_with_data">
 <description>
-Create a new test suite with the name @suite_name.
+Like g_ptr_array_sort(), but the comparison function has an extra
+user data argument.
 
-Since: 2.16
+&lt;note&gt;&lt;para&gt;The comparison function for g_ptr_array_sort_with_data()
+doesn't take the pointers from the array as arguments, it takes
+pointers to the pointers in the array.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="suite_name">
-<parameter_description> a name for the suite
+<parameter name="array">
+<parameter_description> a #GPtrArray.
 </parameter_description>
 </parameter>
-</parameters>
-<return> A newly allocated #GTestSuite instance.
-
-</return>
-</function>
-
-<function name="g_type_module_unuse">
-<description>
-Decreases the use count of a #GTypeModule by one. If the
-result is zero, the module will be unloaded. (However, the
-#GTypeModule will not be freed, and types associated with the
-#GTypeModule are not unregistered. Once a #GTypeModule is
-initialized, it must exist forever.)
-
-</description>
-<parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule
+<parameter name="compare_func">
+<parameter_description> comparison function.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data to pass to @compare_func.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_builder_open">
+<function name="g_ptr_array_unref">
 <description>
-Opens a subcontainer inside the given @builder.  When done adding
-items to the subcontainer, g_variant_builder_close() must be called.
-
-It is an error to call this function in any way that would cause an
-inconsistent value to be constructed (ie: adding too many values or
-a value of an incorrect type).
+Atomically decrements the reference count of @array by one. If the
+reference count drops to 0, the effect is the same as calling
+g_ptr_array_free() with @free_segment set to %TRUE. This function
+is MT-safe and may be called from any thread.
 
-Since: 2.24
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="array">
+<parameter_description> A #GPtrArray.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_async_queue_sort_unlocked">
+<function name="g_qsort_with_data">
 <description>
-Sorts @queue using @func. 
-
-This function is called while holding the @queue's lock.
+This is just like the standard C qsort() function, but
+the comparison routine accepts a user data argument.
 
-Since: 2.10
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue
+<parameter name="pbase">
+<parameter_description> start of array to sort
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the #GCompareDataFunc is used to sort @queue. This
-function is passed two elements of the @queue. The function
-should return 0 if they are equal, a negative value if the
-first element should be higher in the @queue or a positive
-value if the first element should be lower in the @queue than
-the second element. 
+<parameter name="total_elems">
+<parameter_description> elements in the array
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> size of each element
+</parameter_description>
+</parameter>
+<parameter name="compare_func">
+<parameter_description> function to compare elements
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data passed to @func
+<parameter_description> data to pass to @compare_func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_static_string">
+<function name="g_quark_from_static_string">
 <description>
-Set the contents of a %G_TYPE_STRING #GValue to @v_string.
-The string is assumed to be static, and is thus not duplicated
-when setting the #GValue.
+Gets the #GQuark identifying the given (static) string. If the
+string does not currently have an associated #GQuark, a new #GQuark
+is created, linked to the given string.
+
+Note that this function is identical to g_quark_from_string() except
+that if a new #GQuark is created the string itself is used rather
+than a copy. This saves memory, but can only be used if the string
+will &lt;emphasis&gt;always&lt;/emphasis&gt; exist. It can be used with
+statically allocated strings in the main program, but not with
+statically allocated memory in dynamically loaded modules, if you
+expect to ever unload the module again (e.g. do not use this
+function in GTK+ theme engines).
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_STRING
-</parameter_description>
-</parameter>
-<parameter name="v_string">
-<parameter_description> static string to be set
+<parameter name="string">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GQuark identifying the string, or 0 if @string is
+%NULL.
+</return>
 </function>
 
-<function name="g_value_type_compatible">
+<function name="g_quark_from_string">
 <description>
-Returns whether a #GValue of type @src_type can be copied into
-a #GValue of type @dest_type.
-
+Gets the #GQuark identifying the given string. If the string does
+not currently have an associated #GQuark, a new #GQuark is created,
+using a copy of the string.
 
 </description>
 <parameters>
-<parameter name="src_type">
-<parameter_description> source type to be copied.
-</parameter_description>
-</parameter>
-<parameter name="dest_type">
-<parameter_description> destination type for copying.
+<parameter name="string">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if g_value_copy() is possible with @src_type and @dest_type.
+<return> the #GQuark identifying the string, or 0 if @string is
+%NULL.
 </return>
 </function>
 
-<function name="g_shell_quote">
+<function name="g_quark_to_string">
 <description>
-Quotes a string so that the shell (/bin/sh) will interpret the
-quoted string to mean @unquoted_string. If you pass a filename to
-the shell, for example, you should first quote it with this
-function.  The return value must be freed with g_free(). The
-quoting style used is undefined (single or double quotes may be
-used).
-
+Gets the string associated with the given #GQuark.
 
 </description>
 <parameters>
-<parameter name="unquoted_string">
-<parameter_description> a literal string
+<parameter name="quark">
+<parameter_description> a #GQuark.
 </parameter_description>
 </parameter>
 </parameters>
-<return> quoted string
+<return> the string associated with the #GQuark.
 </return>
 </function>
 
-<function name="g_signal_new">
+<function name="g_quark_try_string">
 <description>
-Creates a new signal. (This is usually done in the class initializer.)
-
-A signal name consists of segments consisting of ASCII letters and
-digits, separated by either the '-' or '_' character. The first
-character of a signal name must be a letter. Names which violate these
-rules lead to undefined behaviour of the GSignal system.
-
-When registering a signal and looking up a signal, either separator can
-be used, but they cannot be mixed.
-
-If 0 is used for @class_offset subclasses cannot override the class handler
-in their &lt;code&gt;class_init&lt;/code&gt; method by doing
-&lt;code&gt;super_class-&gt;signal_handler = my_signal_handler&lt;/code&gt;. Instead they
-will have to use g_signal_override_class_handler().
+Gets the #GQuark associated with the given string, or 0 if string is
+%NULL or it has no associated #GQuark.
 
+If you want the GQuark to be created if it doesn't already exist,
+use g_quark_from_string() or g_quark_from_static_string().
 
 </description>
 <parameters>
-<parameter name="signal_name">
-<parameter_description> the name for the signal
-</parameter_description>
-</parameter>
-<parameter name="itype">
-<parameter_description> the type this signal pertains to. It will also pertain to
-types which are derived from this type.
-</parameter_description>
-</parameter>
-<parameter name="signal_flags">
-<parameter_description> a combination of #GSignalFlags specifying detail of when
-the default handler is to be invoked. You should at least specify
-%G_SIGNAL_RUN_FIRST or %G_SIGNAL_RUN_LAST.
-</parameter_description>
-</parameter>
-<parameter name="class_offset">
-<parameter_description> The offset of the function pointer in the class structure
-for this type. Used to invoke a class method generically. Pass 0 to
-not associate a class method slot with this signal.
-</parameter_description>
-</parameter>
-<parameter name="accumulator">
-<parameter_description> the accumulator for this signal; may be %NULL.
-</parameter_description>
-</parameter>
-<parameter name="accu_data">
-<parameter_description> user data for the @accumulator.
-</parameter_description>
-</parameter>
-<parameter name="c_marshaller">
-<parameter_description> the function to translate arrays of parameter values to
-signal emissions into C language callback invocations.
-</parameter_description>
-</parameter>
-<parameter name="return_type">
-<parameter_description> the type of return value, or #G_TYPE_NONE for a signal
-without a return value.
-</parameter_description>
-</parameter>
-<parameter name="n_params">
-<parameter_description> the number of parameter types to follow.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a list of types, one for each parameter.
+<parameter name="string">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the signal id
+<return> the #GQuark associated with the string, or 0 if @string is
+%NULL or there is no #GQuark associated with it.
 </return>
 </function>
 
-<function name="g_strcmp0">
+<function name="g_queue_clear">
 <description>
-Compares @str1 and @str2 like strcmp(). Handles %NULL 
-gracefully by sorting it before non-%NULL strings.
-Comparing two %NULL pointers returns 0.
+Removes all the elements in @queue. If queue elements contain
+dynamically-allocated memory, they should be freed first.
 
-Since: 2.16
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="str1">
-<parameter_description> a C string or %NULL
-</parameter_description>
-</parameter>
-<parameter name="str2">
-<parameter_description> another C string or %NULL
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return> -1, 0 or 1, if @str1 is &lt;, == or &gt; than @str2.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_value_set_string">
+<function name="g_queue_copy">
 <description>
-Set the contents of a %G_TYPE_STRING #GValue to @v_string.
+Copies a @queue. Note that is a shallow copy. If the elements in the
+queue consist of pointers to data, the pointers are copied, but the
+actual data is not.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_STRING
-</parameter_description>
-</parameter>
-<parameter name="v_string">
-<parameter_description> caller-owned string to be duplicated for the #GValue
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A copy of @queue
+
+</return>
 </function>
 
-<function name="g_locale_from_utf8">
+<function name="g_queue_delete_link">
 <description>
-Converts a string from UTF-8 to the encoding used for strings by
-the C runtime (usually the same as that used by the operating
-system) in the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;. On
-Windows this means the system codepage.
+Removes @link_ from @queue and frees it.
 
+ link_ must be part of @queue.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="utf8string">
-<parameter_description>    a UTF-8 encoded string 
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description>           the length of the string, or -1 if the string is
-nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
-</parameter_description>
-</parameter>
-<parameter name="bytes_read">
-<parameter_description>    location to store the number of bytes in the
-input string that were successfully converted, or %NULL.
-Even if the conversion was successful, this may be 
-less than @len if there were partial characters
-at the end of the input. If the error
-#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
-stored will the byte offset after the last valid
-input sequence.
-</parameter_description>
-</parameter>
-<parameter name="bytes_written">
-<parameter_description> the number of bytes stored in the output buffer (not 
-including the terminating nul).
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description>         location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
+<parameter name="link_">
+<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
 </parameter_description>
 </parameter>
 </parameters>
-<return> The converted string, or %NULL on an error.
-</return>
+<return></return>
 </function>
 
-<function name="g_byte_array_remove_range">
+<function name="g_queue_find">
 <description>
-Removes the given number of bytes starting at the given index from a
-#GByteArray.  The following elements are moved to close the gap.
+Finds the first link in @queue which contains @data.
 
 Since: 2.4
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a @GByteArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the first byte to remove.
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the number of bytes to remove.
+<parameter name="data">
+<parameter_description> data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GByteArray.
+<return> The first link in @queue which contains @data.
+
 </return>
 </function>
 
-<function name="g_key_file_get_value">
+<function name="g_queue_find_custom">
 <description>
-Returns the raw value associated with @key under @group_name. 
-Use g_key_file_get_string() to retrieve an unescaped UTF-8 string. 
-
-In the event the key cannot be found, %NULL is returned and 
- error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND.  In the 
-event that the @group_name cannot be found, %NULL is returned 
-and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
-
+Finds an element in a #GQueue, using a supplied function to find the
+desired element. It iterates over the queue, calling the given function
+which should return 0 when the desired element is found. The function
+takes two gconstpointer arguments, the #GQueue element's data as the
+first argument and the given user data as the second argument.
 
-Since: 2.6
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="data">
+<parameter_description> user data passed to @func
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="func">
+<parameter_description> a #GCompareFunc to call for each element. It should return 0
+when the desired element is found
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string or %NULL if the specified 
-key cannot be found.
+<return> The found link, or %NULL if it wasn't found
 
 </return>
 </function>
 
-<function name="g_closure_remove_finalize_notifier">
+<function name="g_queue_foreach">
 <description>
-Removes a finalization notifier.
+Calls @func for each element in the queue passing @user_data to the
+function.
 
-Notice that notifiers are automatically removed after they are run.
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="notify_data">
-<parameter_description> data which was passed to g_closure_add_finalize_notifier()
-when registering @notify_func
+<parameter name="func">
+<parameter_description> the function to call for each element's data
 </parameter_description>
 </parameter>
-<parameter name="notify_func">
-<parameter_description> the callback function to remove
+<parameter name="user_data">
+<parameter_description> user data to pass to @func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_pattern_spec_new">
+<function name="g_queue_free">
 <description>
-Compiles a pattern to a #GPatternSpec.
+Frees the memory allocated for the #GQueue. Only call this function if
+ queue was created with g_queue_new(). If queue elements contain
+dynamically-allocated memory, they should be freed first.
 
 </description>
 <parameters>
-<parameter name="pattern">
-<parameter_description> a zero-terminated UTF-8 encoded string
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated #GPatternSpec
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_new_signature">
+<function name="g_queue_get_length">
 <description>
-Creates a DBus type signature #GVariant with the contents of
- string   @string must be a valid DBus type signature.  Use
-g_variant_is_signature() if you're not sure.
+Returns the number of items in @queue.
 
-Since: 2.24
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="signature">
-<parameter_description> a normal C nul-terminated string
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new signature #GVariant instance
+<return> The number of items in @queue.
+
 </return>
 </function>
 
-<function name="g_queue_reverse">
+<function name="g_queue_index">
 <description>
-Reverses the order of the items in @queue.
+Returns the position of the first element in @queue which contains @data.
 
 Since: 2.4
 
@@ -20701,1176 +18416,819 @@ Since: 2.4
 <parameter_description> a #GQueue
 </parameter_description>
 </parameter>
+<parameter name="data">
+<parameter_description> the data to find.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> The position of the first element in @queue which contains @data, or -1 if no element in @queue contains @data.
+
+</return>
 </function>
 
-<function name="g_list_last">
+<function name="g_queue_init">
 <description>
-Gets the last element in a #GList.
+A statically-allocated #GQueue must be initialized with this function
+before it can be used. Alternatively you can initialize it with
+#G_QUEUE_INIT. It is not necessary to initialize queues created with
+g_queue_new().
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="queue">
+<parameter_description> an uninitialized #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return> the last element in the #GList, 
-or %NULL if the #GList has no elements
-</return>
+<return></return>
 </function>
 
-<function name="g_regex_escape_string">
+<function name="g_queue_insert_after">
 <description>
-Escapes the special characters used for regular expressions
-in @string, for instance &quot;a.b*c&quot; becomes &quot;a\.b\*c&quot;. This
-function is useful to dynamically generate regular expressions.
+Inserts @data into @queue after @sibling
 
- string can contain nul characters that are replaced with &quot;\0&quot;,
-in this case remember to specify the correct length of @string
-in @length.
+ sibling must be part of @queue
 
-Since: 2.14
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the string to escape
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of @string, or -1 if @string is nul-terminated
+<parameter name="sibling">
+<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
 </parameter_description>
 </parameter>
-</parameters>
-<return> a newly-allocated escaped string
-
-</return>
-</function>
-
-<function name="g_value_get_flags">
-<description>
-Get the contents of a %G_TYPE_FLAGS #GValue.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_FLAGS
+<parameter name="data">
+<parameter_description> the data to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return> flags contents of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_source_set_funcs">
+<function name="g_queue_insert_before">
 <description>
-Sets the source functions (can be used to override 
-default implementations) of an unattached source.
+Inserts @data into @queue before @sibling.
 
-Since: 2.12
+ sibling must be part of @queue.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="funcs">
-<parameter_description> the new #GSourceFuncs
+<parameter name="sibling">
+<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> the data to insert
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_direct_hash">
+<function name="g_queue_insert_sorted">
 <description>
-Converts a gpointer to a hash value.
-It can be passed to g_hash_table_new() as the @hash_func parameter, 
-when using pointers as keys in a #GHashTable.
+Inserts @data into @queue using @func to determine the new position.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="v">
-<parameter_description> a #gpointer key
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-</parameters>
-<return> a hash value corresponding to the key.
-</return>
-</function>
-
-<function name="g_bookmark_file_get_visited">
-<description>
-Gets the time the bookmark for @uri was last visited.
-
-In the event the URI cannot be found, -1 is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
-
-Since: 2.12
-
-</description>
-<parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="data">
+<parameter_description> the data to insert
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="func">
+<parameter_description> the #GCompareDataFunc used to compare elements in the queue. It is
+called with two elements of the @queue and @user_data. It should
+return 0 if the elements are equal, a negative value if the first
+element comes before the second, and a positive value if the second
+element comes before the first.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="user_data">
+<parameter_description> user data passed to @func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a timestamp.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_test_queue_free">
+<function name="g_queue_is_empty">
 <description>
-Enqueue a pointer to be released with g_free() during the next
-teardown phase. This is equivalent to calling g_test_queue_destroy()
-with a destroy callback of g_free().
+Returns %TRUE if the queue is empty.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="gfree_pointer">
-<parameter_description> the pointer to be stored.
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the queue is empty.
+</return>
 </function>
 
-<function name="g_array_remove_index">
+<function name="g_queue_link_index">
 <description>
-Removes the element at the given index from a #GArray. The following
-elements are moved down one place.
+Returns the position of @link_ in @queue.
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
+<parameter name="queue">
+<parameter_description> a #Gqueue
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the element to remove.
+<parameter name="link_">
+<parameter_description> A #GList link
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> The position of @link_, or -1 if the link is
+not part of @queue
+
 </return>
 </function>
 
-<function name="g_io_channel_ref">
+<function name="g_queue_new">
 <description>
-Increments the reference count of a #GIOChannel.
+Creates a new #GQueue.
 
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
 </parameters>
-<return> the @channel that was passed in (since 2.6)
+<return> a new #GQueue.
 </return>
 </function>
 
-<function name="g_unichar_isdigit">
+<function name="g_queue_peek_head">
 <description>
-Determines whether a character is numeric (i.e. a digit).  This
-covers ASCII 0-9 and also digits in other languages/scripts.  Given
-some UTF-8 text, obtain a character value with g_utf8_get_char().
+Returns the first element of the queue.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is a digit
+<return> the data of the first element in the queue, or %NULL if the queue
+is empty.
 </return>
 </function>
 
-<function name="g_value_get_ulong">
+<function name="g_queue_peek_head_link">
 <description>
-Get the contents of a %G_TYPE_ULONG #GValue.
+Returns the first link in @queue
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_ULONG
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return> unsigned long integer contents of @value
+<return> the first link in @queue, or %NULL if @queue is empty
+
 </return>
 </function>
 
-<function name="g_value_array_sort_with_data">
+<function name="g_queue_peek_nth">
 <description>
-Sort @value_array using @compare_func to compare the elements accoring
-to the semantics of #GCompareDataFunc.
-
-The current implementation uses Quick-Sort as sorting algorithm.
+Returns the @n'th element of @queue. 
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to sort
-</parameter_description>
-</parameter>
-<parameter name="compare_func">
-<parameter_description> function to compare elements
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> extra data argument provided for @compare_func
+<parameter name="n">
+<parameter_description> the position of the element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GValueArray passed in as @value_array
+<return> The data for the @n'th element of @queue, or %NULL if @n is
+off the end of @queue.
+
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__UCHAR">
+<function name="g_queue_peek_nth_link">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, guchar arg1, gpointer user_data)&lt;/literal&gt;.
+Returns the link at the given position
+
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #guchar parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="n">
+<parameter_description> the position of the link
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The link at the @n'th position, or %NULL if @n is off the
+end of the list
+
+</return>
 </function>
 
-<function name="g_variant_get_child_value">
+<function name="g_queue_peek_tail">
 <description>
-Reads a child item out of a container #GVariant instance.  This
-includes variants, maybes, arrays, tuples and dictionary
-entries.  It is an error to call this function on any other type of
-#GVariant.
-
-It is an error if @index_ is greater than the number of child items
-in the container.  See g_variant_n_children().
-
-This function is O(1).
+Returns the last element of the queue.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a container #GVariant
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the child to fetch
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the child at the specified index
+<return> the data of the last element in the queue, or %NULL if the queue
+is empty.
 </return>
 </function>
 
-<function name="g_sequence_new">
+<function name="g_queue_peek_tail_link">
 <description>
-Creates a new GSequence. The @data_destroy function, if non-%NULL will
-be called on all items when the sequence is destroyed and on items that
-are removed from the sequence.
+Returns the last link @queue.
 
-Since: 2.14
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="data_destroy">
-<parameter_description> a #GDestroyNotify function, or %NULL
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GSequence
+<return> the last link in @queue, or %NULL if @queue is empty
 
 </return>
 </function>
 
-<function name="g_io_channel_close">
+<function name="g_queue_pop_head">
 <description>
-Close an IO channel. Any pending data to be written will be
-flushed, ignoring errors. The channel will not be freed until the
-last reference is dropped using g_io_channel_unref(). 
+Removes the first element of the queue.
 
-Deprecated:2.2: Use g_io_channel_shutdown() instead.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> A #GIOChannel
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the data of the first element in the queue, or %NULL if the queue
+is empty.
+</return>
 </function>
 
-<function name="g_key_file_set_double">
+<function name="g_queue_pop_head_link">
 <description>
-Associates a new double value with @key under @group_name.
-If @key cannot be found then it is created. 
+Removes the first element of the queue.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> an double value
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GList element at the head of the queue, or %NULL if the queue
+is empty.
+</return>
 </function>
 
-<function name="g_param_values_cmp">
+<function name="g_queue_pop_nth">
 <description>
-Compares @value1 with @value2 according to @pspec, and return -1, 0 or +1,
-if @value1 is found to be less than, equal to or greater than @value2,
-respectively.
+Removes the @n'th element of @queue.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
-</parameter_description>
-</parameter>
-<parameter name="value1">
-<parameter_description> a #GValue of correct type for @pspec
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="value2">
-<parameter_description> a #GValue of correct type for @pspec
+<parameter name="n">
+<parameter_description> the position of the element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> -1, 0 or +1, for a less than, equal to or greater than result
+<return> the element's data, or %NULL if @n is off the end of @queue.
+
 </return>
 </function>
 
-<function name="g_variant_new_va">
+<function name="g_queue_pop_nth_link">
 <description>
-This function is intended to be used by libraries based on
-#GVariant that want to provide g_variant_new()-like functionality
-to their users.
-
-The API is more general than g_variant_new() to allow a wider range
-of possible uses.
-
- format_string must still point to a valid format string, but it only
-needs to be nul-terminated if @endptr is %NULL.  If @endptr is
-non-%NULL then it is updated to point to the first character past the
-end of the format string.
-
- app is a pointer to a #va_list.  The arguments, according to
- format_string, are collected from this #va_list and the list is left
-pointing to the argument following the last.
-
-These two generalisations allow mixing of multiple calls to
-g_variant_new_va() and g_variant_get_va() within a single actual
-varargs call by the user.
-
-The return value will be floating if it was a newly created GVariant
-instance (for example, if the format string was &quot;(ii)&quot;).  In the case
-that the format_string was '*', '?', 'r', or a format starting with
-'@' then the collected #GVariant pointer will be returned unmodified,
-without adding any additional references.
-
-In order to behave correctly in all cases it is necessary for the
-calling function to g_variant_ref_sink() the return result before
-returning control to the user that originally provided the pointer.
-At this point, the caller will have their own full reference to the
-result.  This can also be done by adding the result to a container,
-or by passing it to another g_variant_new() call.
+Removes and returns the link at the given position.
 
-Since: 2.24
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="format_string">
-<parameter_description> a string that is prefixed with a format string
-</parameter_description>
-</parameter>
-<parameter name="endptr">
-<parameter_description> location to store the end pointer,
-or %NULL
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="app">
-<parameter_description> a pointer to a #va_list
+<parameter name="n">
+<parameter_description> the link's position
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new, usually floating, #GVariant
+<return> The @n'th link, or %NULL if @n is off the end of @queue.
+
 </return>
 </function>
 
-<function name="g_completion_remove_items">
+<function name="g_queue_pop_tail">
 <description>
-Removes items from a #GCompletion.
+Removes the last element of the queue.
 
-Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="cmp">
-<parameter_description> the #GCompletion.
-</parameter_description>
-</parameter>
-<parameter name="items">
-<parameter_description> the items to remove.
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the data of the last element in the queue, or %NULL if the queue
+is empty.
+</return>
 </function>
 
-<function name="g_type_interface_prerequisites">
+<function name="g_queue_pop_tail_link">
 <description>
-Returns the prerequisites of an interfaces type.
-
-Since: 2.2
+Removes the last element of the queue.
 
 
 </description>
 <parameters>
-<parameter name="interface_type">
-<parameter_description> an interface type
-</parameter_description>
-</parameter>
-<parameter name="n_prerequisites">
-<parameter_description> location to return the number of prerequisites, or %NULL
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated zero-terminated array of #GType containing
-the prerequisites of @interface_type
+<return> the #GList element at the tail of the queue, or %NULL if the queue
+is empty.
 </return>
 </function>
 
-<function name="g_signal_connect_closure_by_id">
+<function name="g_queue_push_head">
 <description>
-Connects a closure to a signal for a particular object.
-
+Adds a new element at the head of the queue.
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance to connect to.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> the id of the signal.
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> the detail.
-</parameter_description>
-</parameter>
-<parameter name="closure">
-<parameter_description> the closure to connect.
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
-<parameter name="after">
-<parameter_description> whether the handler should be called before or after the
-default handler of the signal.
+<parameter name="data">
+<parameter_description> the data for the new element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the handler id
-</return>
+<return></return>
 </function>
 
-<function name="g_error_new_valist">
+<function name="g_queue_push_head_link">
 <description>
-Creates a new #GError with the given @domain and @code,
-and a message formatted with @format.
-
-Since: 2.22
+Adds a new element at the head of the queue.
 
 </description>
 <parameters>
-<parameter name="domain">
-<parameter_description> error domain
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> error code
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> printf()-style format for error message
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> #va_list of parameters for the message format
+<parameter name="link_">
+<parameter_description> a single #GList element, &lt;emphasis&gt;not&lt;/emphasis&gt; a list with
+more than one element.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GError
-
-</return>
+<return></return>
 </function>
 
-<function name="g_snprintf">
+<function name="g_queue_push_nth">
 <description>
-A safer form of the standard sprintf() function. The output is guaranteed
-to not exceed @n characters (including the terminating nul character), so
-it is easy to ensure that a buffer overflow cannot occur.
-
-See also g_strdup_printf().
-
-In versions of GLib prior to 1.2.3, this function may return -1 if the
-output was truncated, and the truncated string may not be nul-terminated.
-In versions prior to 1.3.12, this function returns the length of the output
-string.
-
-The return value of g_snprintf() conforms to the snprintf()
-function as standardized in ISO C99. Note that this is different from
-traditional snprintf(), which returns the length of the output string.
-
-The format string may contain positional parameters, as specified in
-the Single Unix Specification.
+Inserts a new element into @queue at the given position
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the buffer to hold the output.
-</parameter_description>
-</parameter>
-<parameter name="n">
-<parameter_description> the maximum number of bytes to produce (including the
-terminating nul character).
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to insert in the output.
+<parameter name="n">
+<parameter_description> the position to insert the new element. If @n is negative or
+larger than the number of elements in the @queue, the element is
+added to the end of the queue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes which would be produced if the buffer 
-was large enough.
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_new_uint16">
+<function name="g_queue_push_nth_link">
 <description>
-Creates a new uint16 #GVariant instance.
+Inserts @link into @queue at the given position.
 
-Since: 2.24
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="uint16">
-<parameter_description> a #guint16 value
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new uint16 #GVariant instance
-</return>
-</function>
-
-<function name="g_value_set_pointer">
-<description>
-Set the contents of a pointer #GValue to @v_pointer.
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_POINTER
+<parameter name="n">
+<parameter_description> the position to insert the link. If this is negative or larger than
+the number of elements in @queue, the link is added to the end of
+ queue 
 </parameter_description>
 </parameter>
-<parameter name="v_pointer">
-<parameter_description> pointer value to be set
+<parameter name="link_">
+<parameter_description> the link to add to @queue
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_char">
+<function name="g_queue_push_tail">
 <description>
-Set the contents of a %G_TYPE_CHAR #GValue to @v_char.
+Adds a new element at the tail of the queue.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_CHAR
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
-<parameter name="v_char">
-<parameter_description> character value to be set
+<parameter name="data">
+<parameter_description> the data for the new element.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cache_key_foreach">
+<function name="g_queue_push_tail_link">
 <description>
-Calls the given function for each of the keys in the #GCache.
-
-NOTE @func is passed three parameters, the value and key of a cache
-entry and the @user_data. The order of value and key is different
-from the order in which g_hash_table_foreach() passes key-value
-pairs to its callback function !
+Adds a new element at the tail of the queue.
 
 </description>
 <parameters>
-<parameter name="cache">
-<parameter_description> a #GCache.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call with each #GCache key.
+<parameter name="queue">
+<parameter_description> a #GQueue.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="link_">
+<parameter_description> a single #GList element, &lt;emphasis&gt;not&lt;/emphasis&gt; a list with
+more than one element.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_dpgettext2">
+<function name="g_queue_remove">
 <description>
-This function is a variant of g_dgettext() which supports
-a disambiguating message context. GNU gettext uses the
-'\004' character to separate the message context and
-message id in @msgctxtid.
-
-This uses g_dgettext() internally.  See that functions for differences
-with dgettext() proper.
-
-This function differs from C_() in that it is not a macro and 
-thus you may use non-string-literals as context and msgid arguments.
+Removes the first element in @queue that contains @data. 
 
-Since: 2.18
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="domain">
-<parameter_description> the translation domain to use, or %NULL to use
-the domain set with textdomain()
-</parameter_description>
-</parameter>
-<parameter name="context">
-<parameter_description> the message context
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="msgid">
-<parameter_description> the message
+<parameter name="data">
+<parameter_description> data to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The translated string
-
-</return>
-</function>
-
-<function name="g_get_system_config_dirs">
-<description>
-Returns an ordered list of base directories in which to access 
-system-wide configuration information.
-
-On UNIX platforms this is determined using the mechanisms described in
-the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
-XDG Base Directory Specification&lt;/ulink&gt;.
-In this case the list of directories retrieved will be XDG_CONFIG_DIRS.
-
-On Windows is the directory that contains application data for all users.
-A typical path is C:\Documents and Settings\All Users\Application Data.
-This folder is used for application data that is not user specific.
-For example, an application can store a spell-check dictionary, a database
-of clip art, or a log file in the CSIDL_COMMON_APPDATA folder.
-This information will not roam and is available to anyone using the computer.
-
-Since: 2.6
-
-</description>
-<parameters>
-</parameters>
-<return> a %NULL-terminated array of strings owned by GLib that must 
-not be modified or freed.
-</return>
+<return></return>
 </function>
 
-<function name="g_async_queue_ref">
+<function name="g_queue_remove_all">
 <description>
-Increases the reference count of the asynchronous @queue by 1. You
-do not need to hold the lock to call this function.
+Remove all elements whose data equals @data from @queue.
 
+Since: 2.4
 
 </description>
 <parameters>
 <parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter_description> a #GQueue
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> the @queue that was passed in (since 2.6)
-</return>
+<return></return>
 </function>
 
-<function name="g_io_channel_read_chars">
+<function name="g_queue_reverse">
 <description>
-Replacement for g_io_channel_read() with the new API.
+Reverses the order of the items in @queue.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="buf">
-<parameter_description> a buffer to read data into
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the size of the buffer. Note that the buffer may
-not be complelely filled even if there is data
-in the buffer if the remaining data is not a
-complete character.
-</parameter_description>
-</parameter>
-<parameter name="bytes_read">
-<parameter_description> The number of bytes read. This may be zero even on
-success if count &lt; 6 and the channel's encoding is non-%NULL.
-This indicates that the next UTF-8 character is too wide for
-the buffer.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a location to return an error of type #GConvertError
-or #GIOChannelError.
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation.
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_get_va">
+<function name="g_queue_sort">
 <description>
-This function is intended to be used by libraries based on #GVariant
-that want to provide g_variant_get()-like functionality to their
-users.
-
-The API is more general than g_variant_get() to allow a wider range
-of possible uses.
-
- format_string must still point to a valid format string, but it only
-need to be nul-terminated if @endptr is %NULL.  If @endptr is
-non-%NULL then it is updated to point to the first character past the
-end of the format string.
-
- app is a pointer to a #va_list.  The arguments, according to
- format_string, are collected from this #va_list and the list is left
-pointing to the argument following the last.
-
-These two generalisations allow mixing of multiple calls to
-g_variant_new_va() and g_variant_get_va() within a single actual
-varargs call by the user.
+Sorts @queue using @compare_func. 
 
-Since: 2.24
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
-</parameter_description>
-</parameter>
-<parameter name="format_string">
-<parameter_description> a string that is prefixed with a format string
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="endptr">
-<parameter_description> location to store the end pointer,
-or %NULL
+<parameter name="compare_func">
+<parameter_description> the #GCompareDataFunc used to sort @queue. This function
+is passed two elements of the queue and should return 0 if they are
+equal, a negative value if the first comes before the second, and
+a positive value if the second comes before the first.
 </parameter_description>
 </parameter>
-<parameter name="app">
-<parameter_description> a pointer to a #va_list
+<parameter name="user_data">
+<parameter_description> user data passed to @compare_func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_main_context_iteration">
+<function name="g_queue_unlink">
 <description>
-Runs a single iteration for the given main loop. This involves
-checking to see if any event sources are ready to be processed,
-then if no events sources are ready and @may_block is %TRUE, waiting
-for a source to become ready, then dispatching the highest priority
-events sources that are ready. Otherwise, if @may_block is %FALSE 
-sources are not waited to become ready, only those highest priority 
-events sources will be dispatched (if any), that are ready at this 
-given moment without further waiting.
+Unlinks @link_ so that it will no longer be part of @queue. The link is
+not freed.
 
-Note that even when @may_block is %TRUE, it is still possible for 
-g_main_context_iteration() to return %FALSE, since the the wait may 
-be interrupted for other reasons than an event source becoming ready.
+ link_ must be part of @queue,
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext (if %NULL, the default context will be used) 
+<parameter name="queue">
+<parameter_description> a #GQueue
 </parameter_description>
 </parameter>
-<parameter name="may_block">
-<parameter_description> whether the call may block.
+<parameter name="link_">
+<parameter_description> a #GList link that &lt;emphasis&gt;must&lt;/emphasis&gt; be part of @queue
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if events were dispatched.
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_pool_list">
+<function name="g_rand_boolean">
 <description>
-Gets an array of all #GParamSpec&lt;!-- --&gt;s owned by @owner_type in
-the pool.
-
+Returns a random #gboolean from @rand_. This corresponds to a
+unbiased coin toss.
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GParamSpecPool
-</parameter_description>
-</parameter>
-<parameter name="owner_type">
-<parameter_description> the owner to look for
-</parameter_description>
-</parameter>
-<parameter name="n_pspecs_p">
-<parameter_description> return location for the length of the returned array
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated array containing pointers to all
-#GParamSpec&lt;!-- --&gt;s owned by @owner_type in the pool
+<return> a random #gboolean.
 </return>
 </function>
 
-<function name="g_variant_get_gtype">
-<description>
-Since: 2.24
-Deprecated: 2.26
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_key_file_get_integer_list">
+<function name="g_rand_copy">
 <description>
-Returns the values associated with @key under @group_name as
-integers. 
-
-If @key cannot be found then %NULL is returned and @error is set to
-#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
-with @key cannot be interpreted as integers then %NULL is returned
-and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+Copies a #GRand into a new one with the same exact state as before.
+This way you can take a snapshot of the random number generator for
+replaying later.
 
-Since: 2.6
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the number of integers returned
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the values associated with the key as a list of
-integers, or %NULL if the key was not found or could not be parsed.
+<return> the new #GRand.
 
 </return>
 </function>
 
-<function name="g_file_error_from_errno">
+<function name="g_rand_double">
 <description>
-Gets a #GFileError constant based on the passed-in @errno.
-For example, if you pass in %EEXIST this function returns
-#G_FILE_ERROR_EXIST. Unlike @errno values, you can portably
-assume that all #GFileError values will exist.
-
-Normally a #GFileError value goes into a #GError returned
-from a function that manipulates files. So you would use
-g_file_error_from_errno() when constructing a #GError.
+Returns the next random #gdouble from @rand_ equally distributed over
+the range [0..1).
 
 
 </description>
 <parameters>
-<parameter name="err_no">
-<parameter_description> an &quot;errno&quot; value
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GFileError corresponding to the given @errno
+<return> A random number.
 </return>
 </function>
 
-<function name="g_main_context_find_source_by_funcs_user_data">
+<function name="g_rand_double_range">
 <description>
-Finds a source with the given source functions and user data.  If
-multiple sources exist with the same source function and user data,
-the first one found will be returned.
+Returns the next random #gdouble from @rand_ equally distributed over
+the range [ begin  @end).
 
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext (if %NULL, the default context will be used).
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
-<parameter name="funcs">
-<parameter_description> the @source_funcs passed to g_source_new().
+<parameter name="begin">
+<parameter_description> lower closed bound of the interval.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> the user data from the callback.
+<parameter name="end">
+<parameter_description> upper open bound of the interval.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the source, if one was found, otherwise %NULL
+<return> A random number.
 </return>
 </function>
 
-<function name="g_object_get_valist">
+<function name="g_rand_free">
 <description>
-Gets properties of an object.
-
-In general, a copy is made of the property contents and the caller
-is responsible for freeing the memory in the appropriate manner for
-the type, for instance by calling g_free() or g_object_unref().
-
-See g_object_get().
+Frees the memory allocated for the #GRand.
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="first_property_name">
-<parameter_description> name of the first property to get
-</parameter_description>
-</parameter>
-<parameter name="var_args">
-<parameter_description> return location for the first property, followed optionally by more
-name/return location pairs, followed by %NULL
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cond_timed_wait">
+<function name="g_rand_int">
 <description>
-Waits until this thread is woken up on @cond, but not longer than
-until the time specified by @abs_time. The @mutex is unlocked before
-falling asleep and locked again before resuming.
-
-If @abs_time is %NULL, g_cond_timed_wait() acts like g_cond_wait().
-
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will immediately return %TRUE.
+Returns the next random #guint32 from @rand_ equally distributed over
+the range [0..2^32-1].
 
-To easily calculate @abs_time a combination of g_get_current_time()
-and g_time_val_add() can be used.
 
 </description>
 <parameters>
-<parameter name="cond">
-<parameter_description> a #GCond.
-</parameter_description>
-</parameter>
-<parameter name="mutex">
-<parameter_description> a #GMutex that is currently locked.
-</parameter_description>
-</parameter>
-<parameter name="abs_time">
-<parameter_description> a #GTimeVal, determining the final time.
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @cond was signalled, or %FALSE on timeout.
+<return> A random number.
 </return>
 </function>
 
-<function name="g_slist_nth">
+<function name="g_rand_int_range">
 <description>
-Gets the element at the given position in a #GSList.
+Returns the next random #gint32 from @rand_ equally distributed over
+the range [ begin  @end-1].
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the position of the element, counting from 0
+<parameter name="begin">
+<parameter_description> lower closed bound of the interval.
+</parameter_description>
+</parameter>
+<parameter name="end">
+<parameter_description> upper open bound of the interval.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element, or %NULL if the position is off 
-the end of the #GSList
+<return> A random number.
 </return>
 </function>
 
-<function name="g_unicode_canonical_ordering">
+<function name="g_rand_new">
 <description>
-Computes the canonical ordering of a string in-place.  
-This rearranges decomposed characters in the string 
-according to their combining classes.  See the Unicode 
-manual for more information. 
+Creates a new random number generator initialized with a seed taken
+either from &lt;filename&gt;/dev/urandom&lt;/filename&gt; (if existing) or from 
+the current time (as a fallback).
+
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a UCS-4 encoded string.
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the maximum length of @string to use.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the new #GRand.
+</return>
 </function>
 
-<function name="g_slist_position">
+<function name="g_rand_new_with_seed">
 <description>
-Gets the position of the given element 
-in the #GSList (starting from 0).
+Creates a new random number generator initialized with @seed.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="llink">
-<parameter_description> an element in the #GSList
+<parameter name="seed">
+<parameter_description> a value to initialize the random number generator.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position of the element in the #GSList, 
-or -1 if the element is not found
+<return> the new #GRand.
 </return>
 </function>
 
-<function name="g_variant_new_object_path">
+<function name="g_rand_new_with_seed_array">
 <description>
-Creates a DBus object path #GVariant with the contents of @string.
- string must be a valid DBus object path.  Use
-g_variant_is_object_path() if you're not sure.
+Creates a new random number generator initialized with @seed.
 
-Since: 2.24
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="object_path">
-<parameter_description> a normal C nul-terminated string
+<parameter name="seed">
+<parameter_description> an array of seeds to initialize the random number generator.
+</parameter_description>
+</parameter>
+<parameter name="seed_length">
+<parameter_description> an array of seeds to initialize the random number generator.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new object path #GVariant instance
+<return> the new #GRand.
+
 </return>
 </function>
 
-<function name="g_rand_boolean">
+<function name="g_rand_set_seed">
 <description>
-Returns a random #gboolean from @rand_. This corresponds to a
-unbiased coin toss.
+Sets the seed for the random number generator #GRand to @seed.
 
 </description>
 <parameters>
@@ -21878,886 +19236,731 @@ unbiased coin toss.
 <parameter_description> a #GRand.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a random #gboolean.
-</return>
-</function>
-
-<function name="g_variant_unref">
-<description>
-Decreases the reference count of @value.  When its reference count
-drops to 0, the memory used by the variant is freed.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="seed">
+<parameter_description> a value to reinitialize the random number generator.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_remove">
+<function name="g_rand_set_seed_array">
 <description>
-Removes the first element in @queue that contains @data. 
+Initializes the random number generator by an array of
+longs.  Array can be of arbitrary size, though only the
+first 624 values are taken.  This function is useful
+if you have many low entropy seeds, or if you require more then
+32bits of actual entropy for your application.
 
 Since: 2.4
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="rand_">
+<parameter_description> a #GRand.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to remove.
+<parameter name="seed">
+<parameter_description> array to initialize with
+</parameter_description>
+</parameter>
+<parameter name="seed_length">
+<parameter_description> length of array
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_sequence_iter_get_sequence">
+<function name="g_random_boolean">
 <description>
-Returns the #GSequence that @iter points into.
-
-Since: 2.14
+Returns a random #gboolean. This corresponds to a unbiased coin toss.
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
 </parameters>
-<return> the #GSequence that @iter points into.
-
+<return> a random #gboolean.
 </return>
 </function>
 
-<function name="g_hash_table_iter_get_hash_table">
+<function name="g_random_double">
 <description>
-Returns the #GHashTable associated with @iter.
+Returns a random #gdouble equally distributed over the range [0..1).
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> an initialized #GHashTableIter.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the #GHashTable associated with @iter.
-
+<return> A random number.
 </return>
 </function>
 
-<function name="g_key_file_get_double">
+<function name="g_random_double_range">
 <description>
-Returns the value associated with @key under @group_name as a
-double. If @group_name is %NULL, the start_group is used.
-
-If @key cannot be found then 0.0 is returned and @error is set to
-#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
-with @key cannot be interpreted as a double then 0.0 is returned
-and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+Returns a random #gdouble equally distributed over the range [ begin  @end).
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="begin">
+<parameter_description> lower closed bound of the interval.
 </parameter_description>
 </parameter>
-</parameters>
-<return> the value associated with the key as a double, or
-0.0 if the key was not found or could not be parsed.
-
-</return>
-</function>
-
-<function name="g_hostname_to_ascii">
-<description>
-Converts @hostname to its canonical ASCII form; an ASCII-only
-string containing no uppercase letters and not ending with a
-trailing dot.
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="hostname">
-<parameter_description> a valid UTF-8 or ASCII hostname
+<parameter name="end">
+<parameter_description> upper open bound of the interval.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an ASCII hostname, which must be freed, or %NULL if
- hostname is in some way invalid.
-
+<return> A random number.
 </return>
 </function>
 
-<function name="g_test_log_msg_free">
+<function name="g_random_int">
 <description>
-Internal function for gtester to free test log messages, no ABI guarantees provided.
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
+Return a random #guint32 equally distributed over the range
+[0..2^32-1].
 
-<function name="g_byte_array_new">
-<description>
-Creates a new #GByteArray with a reference count of 1.
 
 </description>
 <parameters>
 </parameters>
-<return> the new #GByteArray.
+<return> A random number.
 </return>
 </function>
 
-<function name="g_variant_type_dup_string">
+<function name="g_random_int_range">
 <description>
-Returns a newly-allocated copy of the type string corresponding to
- type   The returned string is nul-terminated.  It is appropriate to
-call g_free() on the return value.
+Returns a random #gint32 equally distributed over the range
+[ begin  @end-1].
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="begin">
+<parameter_description> lower closed bound of the interval.
+</parameter_description>
+</parameter>
+<parameter name="end">
+<parameter_description> upper open bound of the interval.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the corresponding type string
+<return> A random number.
 </return>
 </function>
 
-<function name="g_value_set_int64">
+<function name="g_random_set_seed">
 <description>
-Set the contents of a %G_TYPE_INT64 #GValue to @v_int64.
+Sets the seed for the global random number generator, which is used
+by the &lt;function&gt;g_random_*&lt;/function&gt; functions, to @seed.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_INT64
-</parameter_description>
-</parameter>
-<parameter name="v_int64">
-<parameter_description> 64bit integer value to be set
+<parameter name="seed">
+<parameter_description> a value to reinitialize the global random number generator.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_atomic_int_compare_and_exchange">
+<function name="g_realloc">
 <description>
-Compares @oldval with the integer pointed to by @atomic and
-if they are equal, atomically exchanges * atomic with @newval.
-Also acts as a memory barrier.
+Reallocates the memory pointed to by @mem, so that it now has space for
+ n_bytes bytes of memory. It returns the new address of the memory, which may
+have been moved. @mem may be %NULL, in which case it's considered to
+have zero-length. @n_bytes may be 0, in which case %NULL will be returned
+and @mem will be freed unless it is %NULL.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to an integer
-</parameter_description>
-</parameter>
-<parameter name="oldval">
-<parameter_description> the assumed old value of * atomic
-</parameter_description>
-</parameter>
-<parameter name="newval">
-<parameter_description> the new value of * atomic
+<parameter name="mem">
+<parameter_description> the memory to reallocate
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE, if * atomic was equal @oldval. %FALSE otherwise.
-
-</return>
-</function>
-
-<function name="g_unichar_validate">
-<description>
-Checks whether @ch is a valid Unicode character. Some possible
-integer values of @ch will not be valid. 0 is considered a valid
-character, though it's normally a string terminator.
-
-
-</description>
-<parameters>
-<parameter name="ch">
-<parameter_description> a Unicode character
+<parameter name="n_bytes">
+<parameter_description> new size of the memory in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @ch is a valid Unicode character
+<return> the new address of the allocated memory
 </return>
 </function>
 
-<function name="g_type_default_interface_unref">
-<description>
-Decrements the reference count for the type corresponding to the
-interface default vtable @g_iface. If the type is dynamic, then
-when no one is using the interface and all references have
-been released, the finalize function for the interface's default
-vtable (the &lt;structfield&gt;class_finalize&lt;/structfield&gt; member of
-#GTypeInfo) will be called.
-
-Since: 2.4
-
-</description>
-<parameters>
-<parameter name="g_iface">
-<parameter_description> the default vtable structure for a interface, as
-returned by g_type_default_interface_ref()
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_param_spec_int64">
+<function name="g_realloc_n">
 <description>
-Creates a new #GParamSpecInt64 instance specifying a %G_TYPE_INT64 property.
-
-See g_param_spec_internal() for details on property names.
+This function is similar to g_realloc(), allocating (@n_blocks * @n_block_bytes) bytes,
+but care is taken to detect possible overflow during multiplication.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
+<parameter name="mem">
+<parameter_description> the memory to reallocate
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="n_blocks">
+<parameter_description> the number of blocks to allocate
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="n_block_bytes">
+<parameter_description> the size of each block in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> the new address of the allocated memory
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__OBJECT">
+<function name="g_regex_check_replacement">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, GObject *arg1, gpointer user_data)&lt;/literal&gt;.
+Checks whether @replacement is a valid replacement string
+(see g_regex_replace()), i.e. that all escape sequences in
+it are valid.
+
+If @has_references is not %NULL then @replacement is checked
+for pattern references. For instance, replacement text 'foo\n'
+does not contain references and may be evaluated without information
+about actual match, but '\0\1' (whole match followed by first
+subpattern) requires valid #GMatchInfo object.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #GObject* parameter
+<parameter name="replacement">
+<parameter_description> the replacement string
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="has_references">
+<parameter_description> location to store information about
+references in @replacement or %NULL
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="error">
+<parameter_description> location to store error
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> whether @replacement is a valid replacement string
+
+</return>
 </function>
 
-<function name="g_spawn_command_line_async">
+<function name="g_regex_escape_string">
 <description>
-A simple version of g_spawn_async() that parses a command line with
-g_shell_parse_argv() and passes it to g_spawn_async(). Runs a
-command line in the background. Unlike g_spawn_async(), the
-%G_SPAWN_SEARCH_PATH flag is enabled, other flags are not. Note
-that %G_SPAWN_SEARCH_PATH can have security implications, so
-consider using g_spawn_async() directly if appropriate. Possible
-errors are those from g_shell_parse_argv() and g_spawn_async().
+Escapes the special characters used for regular expressions
+in @string, for instance &quot;a.b*c&quot; becomes &quot;a\.b\*c&quot;. This
+function is useful to dynamically generate regular expressions.
 
-The same concerns on Windows apply as for g_spawn_command_line_sync().
+ string can contain nul characters that are replaced with &quot;\0&quot;,
+in this case remember to specify the correct length of @string
+in @length.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="command_line">
-<parameter_description> a command line
+<parameter name="string">
+<parameter_description> the string to escape
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for errors
+<parameter name="length">
+<parameter_description> the length of @string, or -1 if @string is nul-terminated
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if error is set.
+<return> a newly-allocated escaped string
+
 </return>
 </function>
 
-<function name="g_value_set_instance">
+<function name="g_regex_get_capture_count">
 <description>
-Sets @value from an instantiatable type via the
-value_table's collect_value() function.
+Returns the number of capturing subpatterns in the pattern.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> An initialized #GValue structure.
-</parameter_description>
-</parameter>
-<parameter name="instance">
-<parameter_description> the instance
+<parameter name="regex">
+<parameter_description> a #GRegex
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of capturing subpatterns
+
+</return>
 </function>
 
-<function name="g_type_plugin_complete_interface_info">
+<function name="g_regex_get_compile_flags">
 <description>
-Calls the @complete_interface_info function from the
-#GTypePluginClass of @plugin. There should be no need to use this
-function outside of the GObject type system itself.
+Returns the compile options that @regex was created with.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="plugin">
-<parameter_description> the #GTypePlugin
-</parameter_description>
-</parameter>
-<parameter name="instance_type">
-<parameter_description> the #GType of an instantiable type to which the interface
-is added
-</parameter_description>
-</parameter>
-<parameter name="interface_type">
-<parameter_description> the #GType of the interface whose info is completed
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> the #GInterfaceInfo to fill in
+<parameter name="regex">
+<parameter_description> a #GRegex
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> flags from #GRegexCompileFlags
+
+</return>
 </function>
 
-<function name="g_signal_chain_from_overridden">
+<function name="g_regex_get_match_flags">
 <description>
-Calls the original class closure of a signal. This function should only
-be called from an overridden class closure; see
-g_signal_override_class_closure() and
-g_signal_override_class_handler().
+Returns the match options that @regex was created with.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="instance_and_params">
-<parameter_description> the argument list of the signal emission. The first
-element in the array is a #GValue for the instance the signal is being
-emitted on. The rest are any arguments to be passed to the signal.
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> Location for the return value.
+<parameter name="regex">
+<parameter_description> a #GRegex
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> flags from #GRegexMatchFlags
+
+</return>
 </function>
 
-<function name="g_variant_new_byte">
+<function name="g_regex_get_max_backref">
 <description>
-Creates a new byte #GVariant instance.
+Returns the number of the highest back reference
+in the pattern, or 0 if the pattern does not contain
+back references.
 
-Since: 2.24
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="byte">
-<parameter_description> a #guint8 value
+<parameter name="regex">
+<parameter_description> a #GRegex
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new byte #GVariant instance
+<return> the number of the highest back reference
+
 </return>
 </function>
 
-<function name="g_source_get_name">
+<function name="g_regex_get_pattern">
 <description>
-Gets a name for the source, used in debugging and profiling.
-The name may be #NULL if it has never been set with
-g_source_set_name().
+Gets the pattern string associated with @regex, i.e. a copy of
+the string passed to g_regex_new().
 
-Since: 2.26
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="regex">
+<parameter_description> a #GRegex structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the source
+<return> the pattern of @regex
+
 </return>
 </function>
 
-<function name="g_value_set_uint">
+<function name="g_regex_get_string_number">
 <description>
-Set the contents of a %G_TYPE_UINT #GValue to @v_uint.
+Retrieves the number of the subexpression named @name.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_UINT
+<parameter name="regex">
+<parameter_description> #GRegex structure
 </parameter_description>
 </parameter>
-<parameter name="v_uint">
-<parameter_description> unsigned integer value to be set
+<parameter name="name">
+<parameter_description> name of the subexpression
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The number of the subexpression or -1 if @name
+does not exists
+
+</return>
 </function>
 
-<function name="g_io_channel_set_flags">
+<function name="g_regex_match">
 <description>
-Sets the (writeable) flags in @channel to (@flags &amp; %G_IO_CHANNEL_SET_MASK).
+Scans for a match in string for the pattern in @regex.
+The @match_options are combined with the match options specified
+when the @regex structure was created, letting you have more
+flexibility in reusing #GRegex structures.
+
+A #GMatchInfo structure, used to get information on the match,
+is stored in @match_info if not %NULL. Note that if @match_info
+is not %NULL then it is created even if the function returns %FALSE,
+i.e. you must free it regardless if regular expression actually matched.
 
+To retrieve all the non-overlapping matches of the pattern in
+string you can use g_match_info_next().
+
+|[
+static void
+print_uppercase_words (const gchar *string)
+{
+/ * Print all uppercase-only words. * /
+GRegex *regex;
+GMatchInfo *match_info;
+&#160;
+regex = g_regex_new (&quot;[A-Z]+&quot;, 0, 0, NULL);
+g_regex_match (regex, string, 0, &amp;match_info);
+while (g_match_info_matches (match_info))
+{
+gchar *word = g_match_info_fetch (match_info, 0);
+g_print (&quot;Found: %s\n&quot;, word);
+g_free (word);
+g_match_info_next (match_info, NULL);
+}
+g_match_info_free (match_info);
+g_regex_unref (regex);
+}
+]|
+
+ string is not copied and is used in #GMatchInfo internally. If
+you use any #GMatchInfo method (except g_match_info_free()) after
+freeing or modifying @string then the behaviour is undefined.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="regex">
+<parameter_description> a #GRegex structure from g_regex_new()
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> the flags to set on the IO channel
+<parameter name="string">
+<parameter_description> the string to scan for matches
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> A location to return an error of type #GIOChannelError
+<parameter name="match_options">
+<parameter_description> match options
+</parameter_description>
+</parameter>
+<parameter name="match_info">
+<parameter_description> pointer to location where to store
+the #GMatchInfo, or %NULL if you do not need it
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation. 
+<return> %TRUE is the string matched, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_idle_add">
+<function name="g_regex_match_all">
 <description>
-Adds a function to be called whenever there are no higher priority
-events pending to the default main loop. The function is given the
-default idle priority, #G_PRIORITY_DEFAULT_IDLE.  If the function
-returns %FALSE it is automatically removed from the list of event
-sources and will not be called again.
+Using the standard algorithm for regular expression matching only
+the longest match in the string is retrieved. This function uses
+a different algorithm so it can retrieve all the possible matches.
+For more documentation see g_regex_match_all_full().
 
-This internally creates a main loop source using g_idle_source_new()
-and attaches it to the main loop context using g_source_attach(). 
-You can do these steps manually if you need greater control.
+A #GMatchInfo structure, used to get information on the match, is
+stored in @match_info if not %NULL. Note that if @match_info is
+not %NULL then it is created even if the function returns %FALSE,
+i.e. you must free it regardless if regular expression actually
+matched.
+
+ string is not copied and is used in #GMatchInfo internally. If
+you use any #GMatchInfo method (except g_match_info_free()) after
+freeing or modifying @string then the behaviour is undefined.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="function">
-<parameter_description> function to call 
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to pass to @function.
+<parameter name="regex">
+<parameter_description> a #GRegex structure from g_regex_new()
 </parameter_description>
 </parameter>
-</parameters>
-<return> the ID (greater than 0) of the event source.
-</return>
-</function>
-
-<function name="g_string_append_printf">
-<description>
-Appends a formatted string onto the end of a #GString.
-This function is similar to g_string_printf() except 
-that the text is appended to the #GString.
-
-</description>
-<parameters>
 <parameter name="string">
-<parameter_description> a #GString
+<parameter_description> the string to scan for matches
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> the string format. See the printf() documentation
+<parameter name="match_options">
+<parameter_description> match options
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the parameters to insert into the format string
+<parameter name="match_info">
+<parameter_description> pointer to location where to store
+the #GMatchInfo, or %NULL if you do not need it
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE is the string matched, %FALSE otherwise
+
+</return>
 </function>
 
-<function name="g_variant_new_int64">
+<function name="g_regex_match_all_full">
 <description>
-Creates a new int64 #GVariant instance.
+Using the standard algorithm for regular expression matching only
+the longest match in the string is retrieved, it is not possibile
+to obtain all the available matches. For instance matching
+&quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot; against the pattern &quot;&lt;.*&gt;&quot;
+you get &quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot;.
 
-Since: 2.24
+This function uses a different algorithm (called DFA, i.e. deterministic
+finite automaton), so it can retrieve all the possible matches, all
+starting at the same point in the string. For instance matching
+&quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot; against the pattern &quot;&lt;.*&gt;&quot;
+you would obtain three matches: &quot;&lt;a&gt; &lt;b&gt; &lt;c&gt;&quot;,
+&quot;&lt;a&gt; &lt;b&gt;&quot; and &quot;&lt;a&gt;&quot;.
 
-</description>
-<parameters>
-<parameter name="int64">
-<parameter_description> a #gint64 value
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new int64 #GVariant instance
-</return>
-</function>
+The number of matched strings is retrieved using
+g_match_info_get_match_count(). To obtain the matched strings and
+their position you can use, respectively, g_match_info_fetch() and
+g_match_info_fetch_pos(). Note that the strings are returned in
+reverse order of length; that is, the longest matching string is
+given first.
 
-<function name="g_cclosure_marshal_VOID__PARAM">
-<description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, GParamSpec *arg1, gpointer user_data)&lt;/literal&gt;.
+Note that the DFA algorithm is slower than the standard one and it
+is not able to capture substrings, so backreferences do not work.
+
+Setting @start_position differs from just passing over a shortened
+string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+that begins with any kind of lookbehind assertion, such as &quot;\b&quot;.
+
+A #GMatchInfo structure, used to get information on the match, is
+stored in @match_info if not %NULL. Note that if @match_info is
+not %NULL then it is created even if the function returns %FALSE,
+i.e. you must free it regardless if regular expression actually
+matched.
+
+ string is not copied and is used in #GMatchInfo internally. If
+you use any #GMatchInfo method (except g_match_info_free()) after
+freeing or modifying @string then the behaviour is undefined.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
+<parameter name="regex">
+<parameter_description> a #GRegex structure from g_regex_new()
 </parameter_description>
 </parameter>
-<parameter name="return_value">
-<parameter_description> ignored
+<parameter name="string">
+<parameter_description> the string to scan for matches
 </parameter_description>
 </parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
+<parameter name="string_len">
+<parameter_description> the length of @string, or -1 if @string is nul-terminated
 </parameter_description>
 </parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #GParamSpec* parameter
+<parameter name="start_position">
+<parameter_description> starting index of the string to match
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="match_options">
+<parameter_description> match options
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="match_info">
+<parameter_description> pointer to location where to store
+the #GMatchInfo, or %NULL if you do not need it
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_value_dup_object">
-<description>
-Get the contents of a %G_TYPE_OBJECT derived #GValue, increasing
-its reference count.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_OBJECT
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore errors
 </parameter_description>
 </parameter>
 </parameters>
-<return> object content of @value, should be unreferenced when no
-longer needed.
-</return>
-</function>
-
-<function name="g_enum_get_value_by_nick">
-<description>
-Looks up a #GEnumValue by nickname.
-
+<return> %TRUE is the string matched, %FALSE otherwise
 
-</description>
-<parameters>
-<parameter name="enum_class">
-<parameter_description> a #GEnumClass
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> the nickname to look up
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GEnumValue with nickname @nick, or %NULL if the
-enumeration doesn't have a member with that nickname
 </return>
 </function>
 
-<function name="g_variant_type_copy">
+<function name="g_regex_match_full">
 <description>
-Makes a copy of a #GVariantType.  It is appropriate to call
-g_variant_type_free() on the return value.  @type may not be %NULL.
-
-Since 2.24
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GVariantType
-</return>
-</function>
+Scans for a match in string for the pattern in @regex.
+The @match_options are combined with the match options specified
+when the @regex structure was created, letting you have more
+flexibility in reusing #GRegex structures.
 
-<function name="g_key_file_new">
-<description>
-Creates a new empty #GKeyFile object. Use
-g_key_file_load_from_file(), g_key_file_load_from_data(),
-g_key_file_load_from_dirs() or g_key_file_load_from_data_dirs() to
-read an existing key file.
+Setting @start_position differs from just passing over a shortened
+string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+that begins with any kind of lookbehind assertion, such as &quot;\b&quot;.
 
-Since: 2.6
+A #GMatchInfo structure, used to get information on the match, is
+stored in @match_info if not %NULL. Note that if @match_info is
+not %NULL then it is created even if the function returns %FALSE,
+i.e. you must free it regardless if regular expression actually
+matched.
 
-</description>
-<parameters>
-</parameters>
-<return> an empty #GKeyFile.
+ string is not copied and is used in #GMatchInfo internally. If
+you use any #GMatchInfo method (except g_match_info_free()) after
+freeing or modifying @string then the behaviour is undefined.
 
-</return>
-</function>
+To retrieve all the non-overlapping matches of the pattern in
+string you can use g_match_info_next().
 
-<function name="g_sequence_search_iter">
-<description>
-Like g_sequence_search(), but uses
-a #GSequenceIterCompareFunc instead of a #GCompareDataFunc as
-the compare function.
+|[
+static void
+print_uppercase_words (const gchar *string)
+{
+/ * Print all uppercase-only words. * /
+GRegex *regex;
+GMatchInfo *match_info;
+GError *error = NULL;
+&#160;
+regex = g_regex_new (&quot;[A-Z]+&quot;, 0, 0, NULL);
+g_regex_match_full (regex, string, -1, 0, 0, &amp;match_info, &amp;error);
+while (g_match_info_matches (match_info))
+{
+gchar *word = g_match_info_fetch (match_info, 0);
+g_print (&quot;Found: %s\n&quot;, word);
+g_free (word);
+g_match_info_next (match_info, &amp;error);
+}
+g_match_info_free (match_info);
+g_regex_unref (regex);
+if (error != NULL)
+{
+g_printerr (&quot;Error while matching: %s\n&quot;, error-&gt;message);
+g_error_free (error);
+}
+}
+]|
 
 Since: 2.14
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
+<parameter name="regex">
+<parameter_description> a #GRegex structure from g_regex_new()
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data for the new item
+<parameter name="string">
+<parameter_description> the string to scan for matches
 </parameter_description>
 </parameter>
-<parameter name="iter_cmp">
-<parameter_description> the #GSequenceIterCompare function used to compare iterators
-in the sequence. It is called with two iterators pointing into @seq.
-It should return 0 if the iterators are equal, a negative value if the
-first iterator comes before the second, and a positive value if the
-second iterator comes before the first.
+<parameter name="string_len">
+<parameter_description> the length of @string, or -1 if @string is nul-terminated
 </parameter_description>
 </parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @iter_cmp
+<parameter name="start_position">
+<parameter_description> starting index of the string to match
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #GSequenceIter pointing to the position in @seq
-where @data would have been inserted according to @iter_cmp and @cmp_data.
-
-</return>
-</function>
-
-<function name="g_main_context_unref">
-<description>
-Decreases the reference count on a #GMainContext object by one. If
-the result is zero, free the context and free all associated memory.
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="match_options">
+<parameter_description> match options
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_value_get_char">
-<description>
-Get the contents of a %G_TYPE_CHAR #GValue.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_CHAR
+<parameter name="match_info">
+<parameter_description> pointer to location where to store
+the #GMatchInfo, or %NULL if you do not need it
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore errors
 </parameter_description>
 </parameter>
 </parameters>
-<return> character contents of @value
+<return> %TRUE is the string matched, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_sequence_range_get_midpoint">
+<function name="g_regex_match_simple">
 <description>
-Finds an iterator somewhere in the range (@begin, @end). This
-iterator will be close to the middle of the range, but is not
-guaranteed to be &lt;emphasis&gt;exactly&lt;/emphasis&gt; in the middle.
+Scans for a match in @string for @pattern.
 
-The @begin and @end iterators must both point to the same sequence and
- begin must come before or be equal to @end in the sequence.
+This function is equivalent to g_regex_match() but it does not
+require to compile the pattern with g_regex_new(), avoiding some
+lines of code when you need just to do a match without extracting
+substrings, capture counts, and so on.
+
+If this function is to be called on the same @pattern more than
+once, it's more efficient to compile the pattern once with
+g_regex_new() and then use g_regex_match().
 
 Since: 2.14
 
 </description>
 <parameters>
-<parameter name="begin">
-<parameter_description> a #GSequenceIter
+<parameter name="pattern">
+<parameter_description> the regular expression
 </parameter_description>
 </parameter>
-<parameter name="end">
-<parameter_description> a #GSequenceIter
+<parameter name="string">
+<parameter_description> the string to scan for matches
 </parameter_description>
 </parameter>
-</parameters>
-<return> A #GSequenceIter pointing somewhere in the
-(@begin, @end) range.
-
-</return>
-</function>
-
-<function name="g_get_current_time">
-<description>
-Equivalent to the UNIX gettimeofday() function, but portable.
-
-</description>
-<parameters>
-<parameter name="result">
-<parameter_description> #GTimeVal structure in which to store current time.
+<parameter name="compile_options">
+<parameter_description> compile options for the regular expression, or 0
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_double_hash">
-<description>
-Converts a pointer to a #gdouble to a hash value.
-It can be passed to g_hash_table_new() as the @hash_func parameter, 
-when using pointers to doubles as keys in a #GHashTable.
-
-Since: 2.22
-
-</description>
-<parameters>
-<parameter name="v">
-<parameter_description> a pointer to a #gdouble key
+<parameter name="match_options">
+<parameter_description> match options, or 0
 </parameter_description>
 </parameter>
 </parameters>
-<return> a hash value corresponding to the key.
+<return> %TRUE if the string matched, %FALSE otherwise
 
 </return>
 </function>
 
-<function name="g_sequence_iter_prev">
+<function name="g_regex_new">
 <description>
-Returns an iterator pointing to the previous position before @iter. If
- iter is the begin iterator, the begin iterator is returned.
+Compiles the regular expression to an internal form, and does
+the initial setup of the #GRegex structure.
 
 Since: 2.14
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="pattern">
+<parameter_description> the regular expression
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #GSequenceIter pointing to the previous position before
- iter 
-
-</return>
-</function>
-
-<function name="g_queue_pop_head">
-<description>
-Removes the first element of the queue.
-
-
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="compile_options">
+<parameter_description> compile options for the regular expression, or 0
+</parameter_description>
+</parameter>
+<parameter name="match_options">
+<parameter_description> match options for the regular expression, or 0
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data of the first element in the queue, or %NULL if the queue
-is empty.
+<return> a #GRegex structure. Call g_regex_unref() when you
+are done with it
+
 </return>
 </function>
 
-<function name="g_static_private_free">
+<function name="g_regex_ref">
 <description>
-Releases all resources allocated to @private_key.
+Increases reference count of @regex by 1.
 
-You don't have to call this functions for a #GStaticPrivate with an
-unbounded lifetime, i.e. objects declared 'static', but if you have
-a #GStaticPrivate as a member of a structure and the structure is
-freed, you should also free the #GStaticPrivate.
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="private_key">
-<parameter_description> a #GStaticPrivate to be freed.
+<parameter name="regex">
+<parameter_description> a #GRegex
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @regex
+
+</return>
 </function>
 
 <function name="g_regex_replace">
@@ -22847,161 +20050,185 @@ Since: 2.14
 </return>
 </function>
 
-<function name="g_markup_parse_context_new">
+<function name="g_regex_replace_eval">
 <description>
-Creates a new parse context. A parse context is used to parse
-marked-up documents. You can feed any number of documents into
-a context, as long as no errors occur; once an error occurs,
-the parse context can't continue to parse text (you have to free it
-and create a new parse context).
+Replaces occurrences of the pattern in regex with the output of
+ eval for that occurrence.
+
+Setting @start_position differs from just passing over a shortened
+string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+that begins with any kind of lookbehind assertion, such as &quot;\b&quot;.
+
+The following example uses g_regex_replace_eval() to replace multiple
+strings at once:
+|[
+static gboolean
+eval_cb (const GMatchInfo *info,
+GString          *res,
+gpointer          data)
+{
+gchar *match;
+gchar *r;
+
+match = g_match_info_fetch (info, 0);
+r = g_hash_table_lookup ((GHashTable *)data, match);
+g_string_append (res, r);
+g_free (match);
+
+return FALSE;
+}
+
+/ * ... * /
+
+GRegex *reg;
+GHashTable *h;
+gchar *res;
+
+h = g_hash_table_new (g_str_hash, g_str_equal);
+
+g_hash_table_insert (h, &quot;1&quot;, &quot;ONE&quot;);
+g_hash_table_insert (h, &quot;2&quot;, &quot;TWO&quot;);
+g_hash_table_insert (h, &quot;3&quot;, &quot;THREE&quot;);
+g_hash_table_insert (h, &quot;4&quot;, &quot;FOUR&quot;);
+
+reg = g_regex_new (&quot;1|2|3|4&quot;, 0, 0, NULL);
+res = g_regex_replace_eval (reg, text, -1, 0, 0, eval_cb, h, NULL);
+g_hash_table_destroy (h);
 
+/ * ... * /
+]|
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="parser">
-<parameter_description> a #GMarkupParser
+<parameter name="regex">
+<parameter_description> a #GRegex structure from g_regex_new()
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> one or more #GMarkupParseFlags
+<parameter name="string">
+<parameter_description> string to perform matches against
+</parameter_description>
+</parameter>
+<parameter name="string_len">
+<parameter_description> the length of @string, or -1 if @string is nul-terminated
+</parameter_description>
+</parameter>
+<parameter name="start_position">
+<parameter_description> starting index of the string to match
+</parameter_description>
+</parameter>
+<parameter name="match_options">
+<parameter_description> options for the match
+</parameter_description>
+</parameter>
+<parameter name="eval">
+<parameter_description> a function to call for each match
 </parameter_description>
 </parameter>
 <parameter name="user_data">
-<parameter_description> user data to pass to #GMarkupParser functions
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
-<parameter name="user_data_dnotify">
-<parameter_description> user data destroy notifier called when the parse context is freed
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore errors
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GMarkupParseContext
+<return> a newly allocated string containing the replacements
+
 </return>
 </function>
 
-<function name="g_unichar_get_script">
+<function name="g_regex_replace_literal">
 <description>
-Looks up the #GUnicodeScript for a particular character (as defined 
-by Unicode Standard Annex #24). No check is made for @ch being a
-valid Unicode character; if you pass in invalid character, the
-result is undefined.
+Replaces all occurrences of the pattern in @regex with the
+replacement text. @replacement is replaced literally, to
+include backreferences use g_regex_replace().
 
-This function is equivalent to pango_script_for_unichar() and the
-two are interchangeable.
+Setting @start_position differs from just passing over a
+shortened string and setting #G_REGEX_MATCH_NOTBOL in the
+case of a pattern that begins with any kind of lookbehind
+assertion, such as &quot;\b&quot;.
 
 Since: 2.14
 
 </description>
 <parameters>
-<parameter name="ch">
-<parameter_description> a Unicode character
+<parameter name="regex">
+<parameter_description> a #GRegex structure
 </parameter_description>
 </parameter>
-</parameters>
-<return> the #GUnicodeScript for the character.
-
-</return>
-</function>
-
-<function name="g_tree_destroy">
-<description>
-Removes all keys and values from the #GTree and decreases its
-reference count by one. If keys and/or values are dynamically
-allocated, you should either free them first or create the #GTree
-using g_tree_new_full().  In the latter case the destroy functions
-you supplied will be called on all keys and values before destroying
-the #GTree.
-
-</description>
-<parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="string">
+<parameter_description> the string to perform matches against
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_dir_close">
-<description>
-Closes the directory and deallocates all related resources.
-
-</description>
-<parameters>
-<parameter name="dir">
-<parameter_description> a #GDir* created by g_dir_open()
+<parameter name="string_len">
+<parameter_description> the length of @string, or -1 if @string is nul-terminated
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_closure_invalidate">
-<description>
-Sets a flag on the closure to indicate that its calling
-environment has become invalid, and thus causes any future
-invocations of g_closure_invoke() on this @closure to be
-ignored. Also, invalidation notifiers installed on the closure will
-be called at this point. Note that unless you are holding a
-reference to the closure yourself, the invalidation notifiers may
-unref the closure and cause it to be destroyed, so if you need to
-access the closure after calling g_closure_invalidate(), make sure
-that you've previously called g_closure_ref().
-
-Note that g_closure_invalidate() will also be called when the
-reference count of a closure drops to zero (unless it has already
-been invalidated before).
-
-</description>
-<parameters>
-<parameter name="closure">
-<parameter_description> GClosure to invalidate
+<parameter name="start_position">
+<parameter_description> starting index of the string to match
+</parameter_description>
+</parameter>
+<parameter name="replacement">
+<parameter_description> text to replace each match with
+</parameter_description>
+</parameter>
+<parameter name="match_options">
+<parameter_description> options for the match
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore errors
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string containing the replacements
+
+</return>
 </function>
 
-<function name="g_set_application_name">
+<function name="g_regex_split">
 <description>
-Sets a human-readable name for the application. This name should be
-localized if possible, and is intended for display to the user.
-Contrast with g_set_prgname(), which sets a non-localized name.
-g_set_prgname() will be called automatically by gtk_init(),
-but g_set_application_name() will not.
+Breaks the string on the pattern, and returns an array of the tokens.
+If the pattern contains capturing parentheses, then the text for each
+of the substrings will also be returned. If the pattern does not match
+anywhere in the string, then the whole string is returned as the first
+token.
 
-Note that for thread safety reasons, this function can only
-be called once.
+As a special case, the result of splitting the empty string &quot;&quot; is an
+empty vector, not a vector containing a single string. The reason for
+this special case is that being able to represent a empty vector is
+typically more useful than consistent handling of empty elements. If
+you do need to represent empty elements, you'll need to check for the
+empty string before calling this function.
 
-The application name will be used in contexts such as error messages,
-or when displaying an application's name in the task list.
+A pattern that can match empty strings splits @string into separate
+characters wherever it matches the empty string between characters.
+For example splitting &quot;ab c&quot; using as a separator &quot;\s*&quot;, you will get
+&quot;a&quot;, &quot;b&quot; and &quot;c&quot;.
 
-Since: 2.2
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="application_name">
-<parameter_description> localized name of the application
+<parameter name="regex">
+<parameter_description> a #GRegex structure
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_type_plugin_unuse">
-<description>
-Calls the @unuse_plugin function from the #GTypePluginClass of
- plugin   There should be no need to use this function outside of
-the GObject type system itself.
-
-</description>
-<parameters>
-<parameter name="plugin">
-<parameter_description> a #GTypePlugin
+<parameter name="string">
+<parameter_description> the string to split with the pattern
+</parameter_description>
+</parameter>
+<parameter name="match_options">
+<parameter_description> match time option flags
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a %NULL-terminated gchar ** array. Free it using g_strfreev()
+
+</return>
 </function>
 
 <function name="g_regex_split_full">
@@ -23067,813 +20294,633 @@ If this is less than 1, the string is split completely
 </return>
 </function>
 
-<function name="g_signal_connect_data">
+<function name="g_regex_split_simple">
 <description>
-Connects a #GCallback function to a signal for a particular object. Similar
-to g_signal_connect(), but allows to provide a #GClosureNotify for the data
-which will be called when the signal handler is disconnected and no longer
-used. Specify @connect_flags if you need &lt;literal&gt;..._after()&lt;/literal&gt; or
-&lt;literal&gt;..._swapped()&lt;/literal&gt; variants of this function.
-
+Breaks the string on the pattern, and returns an array of
+the tokens. If the pattern contains capturing parentheses,
+then the text for each of the substrings will also be returned.
+If the pattern does not match anywhere in the string, then the
+whole string is returned as the first token.
 
-</description>
-<parameters>
-<parameter name="instance">
-<parameter_description> the instance to connect to.
-</parameter_description>
-</parameter>
-<parameter name="detailed_signal">
-<parameter_description> a string of the form &quot;signal-name::detail&quot;.
-</parameter_description>
-</parameter>
-<parameter name="c_handler">
-<parameter_description> the #GCallback to connect.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to pass to @c_handler calls.
-</parameter_description>
-</parameter>
-<parameter name="destroy_data">
-<parameter_description> a #GClosureNotify for @data.
-</parameter_description>
-</parameter>
-<parameter name="connect_flags">
-<parameter_description> a combination of #GConnectFlags.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the handler id
-</return>
-</function>
+This function is equivalent to g_regex_split() but it does
+not require to compile the pattern with g_regex_new(), avoiding
+some lines of code when you need just to do a split without
+extracting substrings, capture counts, and so on.
 
-<function name="g_chmod">
-<description>
-A wrapper for the POSIX chmod() function. The chmod() function is
-used to set the permissions of a file system object.
+If this function is to be called on the same @pattern more than
+once, it's more efficient to compile the pattern once with
+g_regex_new() and then use g_regex_split().
 
-On Windows the file protection mechanism is not at all POSIX-like,
-and the underlying chmod() function in the C library just sets or
-clears the FAT-style READONLY attribute. It does not touch any
-ACL. Software that needs to manage file permissions on Windows
-exactly should use the Win32 API.
+As a special case, the result of splitting the empty string &quot;&quot;
+is an empty vector, not a vector containing a single string.
+The reason for this special case is that being able to represent
+a empty vector is typically more useful than consistent handling
+of empty elements. If you do need to represent empty elements,
+you'll need to check for the empty string before calling this
+function.
 
-See your C library manual for more details about chmod().
+A pattern that can match empty strings splits @string into
+separate characters wherever it matches the empty string between
+characters. For example splitting &quot;ab c&quot; using as a separator
+&quot;\s*&quot;, you will get &quot;a&quot;, &quot;b&quot; and &quot;c&quot;.
 
-Since: 2.8
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="pattern">
+<parameter_description> the regular expression
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> as in chmod()
+<parameter name="string">
+<parameter_description> the string to scan for matches
 </parameter_description>
 </parameter>
-</parameters>
-<return> zero if the operation succeeded, -1 on error.
-
-</return>
-</function>
-
-<function name="g_match_info_fetch_named">
-<description>
-Retrieves the text matching the capturing parentheses named @name.
-
-If @name is a valid sub pattern name but it didn't match anything
-(e.g. sub pattern &quot;X&quot;, matching &quot;b&quot; against &quot;(?P&lt;X&gt;a)?b&quot;)
-then an empty string is returned.
-
-The string is fetched from the string passed to the match function,
-so you cannot call this function after freeing the string.
-
-Since: 2.14
-
-</description>
-<parameters>
-<parameter name="match_info">
-<parameter_description> #GMatchInfo structure
+<parameter name="compile_options">
+<parameter_description> compile options for the regular expression, or 0
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> name of the subexpression
+<parameter name="match_options">
+<parameter_description> match options, or 0
 </parameter_description>
 </parameter>
 </parameters>
-<return> The matched substring, or %NULL if an error
-occurred. You have to free the string yourself
+<return> a %NULL-terminated array of strings. Free it using g_strfreev()
 
 </return>
 </function>
 
-<function name="g_bookmark_file_add_group">
+<function name="g_regex_unref">
 <description>
-Adds @group to the list of groups to which the bookmark for @uri
-belongs to.
-
-If no bookmark for @uri is found then it is created.
+Decreases reference count of @regex by 1. When reference count drops
+to zero, it frees all the memory associated with the regex structure.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="group">
-<parameter_description> the group name to be added
+<parameter name="regex">
+<parameter_description> a #GRegex
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_sequence_prepend">
+<function name="g_relation_count">
 <description>
-Adds a new item to the front of @seq
+Returns the number of tuples in a #GRelation that have the given
+value in the given field.
 
-Since: 2.14
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data for the new item
+<parameter name="key">
+<parameter_description> the value to compare with.
+</parameter_description>
+</parameter>
+<parameter name="field">
+<parameter_description> the field of each record to match.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an iterator pointing to the new item
-
+<return> the number of matches.
 </return>
 </function>
 
-<function name="g_utf8_to_utf16">
+<function name="g_relation_delete">
 <description>
-Convert a string from UTF-8 to UTF-16. A 0 character will be
-added to the result after the converted text.
+Deletes any records from a #GRelation that have the given key value
+in the given field.
 
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the maximum length (number of bytes) of @str to use.
-If @len &lt; 0, then the string is nul-terminated.
-</parameter_description>
-</parameter>
-<parameter name="items_read">
-<parameter_description> location to store number of bytes read, or %NULL.
-If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
-returned in case @str contains a trailing partial
-character. If an error occurs then the index of the
-invalid input is stored here.
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
-<parameter name="items_written">
-<parameter_description> location to store number of &lt;type&gt;gunichar2&lt;/type&gt; written,
-or %NULL.
-The value stored here does not include the trailing 0.
+<parameter name="key">
+<parameter_description> the value to compare with.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError other than
-%G_CONVERT_ERROR_NO_CONVERSION may occur.
+<parameter name="field">
+<parameter_description> the field of each record to match.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a newly allocated UTF-16 string.
-This value must be freed with g_free(). If an
-error occurs, %NULL will be returned and
- error set.
+<return> the number of records deleted.
 </return>
 </function>
 
-<function name="g_object_interface_install_property">
+<function name="g_relation_destroy">
 <description>
-Add a property to an interface; this is only useful for interfaces
-that are added to GObject-derived types. Adding a property to an
-interface forces all objects classes with that interface to have a
-compatible property. The compatible property could be a newly
-created #GParamSpec, but normally
-g_object_class_override_property() will be used so that the object
-class only needs to provide an implementation and inherits the
-property description, default value, bounds, and so forth from the
-interface property.
-
-This function is meant to be called from the interface's default
-vtable initialization function (the @class_init member of
-#GTypeInfo.) It must not be called after after @class_init has
-been called for any object types implementing this interface.
+Destroys the #GRelation, freeing all memory allocated. However, it
+does not free memory allocated for the tuple data, so you should
+free that first if appropriate.
 
-Since: 2.4
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="g_iface">
-<parameter_description> any interface vtable for the interface, or the default
-vtable for the interface.
-</parameter_description>
-</parameter>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec for the new property
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_format_size_for_display">
+<function name="g_relation_exists">
 <description>
-Formats a size (for example the size of a file) into a human readable string.
-Sizes are rounded to the nearest size prefix (KB, MB, GB) and are displayed 
-rounded to the nearest  tenth. E.g. the file size 3292528 bytes will be
-converted into the string &quot;3.1 MB&quot;.
-
-The prefix units base is 1024 (i.e. 1 KB is 1024 bytes).
-
-This string should be freed with g_free() when not needed any longer.
+Returns %TRUE if a record with the given values exists in a
+#GRelation. Note that the values are compared directly, so that, for
+example, two copies of the same string will not match.
 
-Since: 2.16
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="size">
-<parameter_description> a size in bytes.
+<parameter name="relation">
+<parameter_description> a #GRelation.
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the fields of the record to compare. The number must match
+the number of fields in the #GRelation.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated formatted string containing a human readable
-file size.
-
+<return> %TRUE if a record matches.
 </return>
 </function>
 
-<function name="g_list_remove">
+<function name="g_relation_index">
 <description>
-Removes an element from a #GList.
-If two elements contain the same data, only the first is removed.
-If none of the elements contain the data, the #GList is unchanged.
+Creates an index on the given field. Note that this must be called
+before any records are added to the #GRelation.
 
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data of the element to remove
+<parameter name="field">
+<parameter_description> the field to index, counting from 0.
+</parameter_description>
+</parameter>
+<parameter name="hash_func">
+<parameter_description> a function to produce a hash value from the field data.
+</parameter_description>
+</parameter>
+<parameter name="key_equal_func">
+<parameter_description> a function to compare two values of the given field.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
-</return>
+<return></return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__POINTER">
+<function name="g_relation_insert">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gpointer arg1, gpointer user_data)&lt;/literal&gt;.
+Inserts a record into a #GRelation.
+
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gpointer parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="Varargs">
+<parameter_description> the fields of the record to add. These must match the
+number of fields in the #GRelation, and of type #gpointer
+or #gconstpointer.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_child_watch_add_full">
+<function name="g_relation_new">
 <description>
-Sets a function to be called when the child indicated by @pid 
-exits, at the priority @priority.
-
-If you obtain @pid from g_spawn_async() or g_spawn_async_with_pipes() 
-you will need to pass #G_SPAWN_DO_NOT_REAP_CHILD as flag to 
-the spawn function for the child watching to work.
-
-Note that on platforms where #GPid must be explicitly closed
-(see g_spawn_close_pid()) @pid must not be closed while the
-source is still active. Typically, you will want to call
-g_spawn_close_pid() in the callback function for the source.
-
-GLib supports only a single callback per process id.
-
-This internally creates a main loop source using 
-g_child_watch_source_new() and attaches it to the main loop context 
-using g_source_attach(). You can do these steps manually if you 
-need greater control.
+Creates a new #GRelation with the given number of fields. Note that
+currently the number of fields must be 2.
 
-Since: 2.4
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the idle source. Typically this will be in the
-range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.
-</parameter_description>
-</parameter>
-<parameter name="pid">
-<parameter_description>      process to watch. On POSIX the pid of a child process. On
-Windows a handle for a process (which doesn't have to be a child).
-</parameter_description>
-</parameter>
-<parameter name="function">
-<parameter_description> function to call
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description>     data to pass to @function
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description>   function to call when the idle is removed, or %NULL
+<parameter name="fields">
+<parameter_description> the number of fields.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
-
+<return> a new #GRelation.
 </return>
 </function>
 
-<function name="g_option_context_free">
+<function name="g_relation_print">
 <description>
-Frees context and all the groups which have been 
-added to it.
-
-Please note that parsed arguments need to be freed separately (see
-#GOptionEntry).
+Outputs information about all records in a #GRelation, as well as
+the indexes. It is for debugging.
 
-Since: 2.6
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext 
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_channel_seek">
+<function name="g_relation_select">
 <description>
-Sets the current position in the #GIOChannel, similar to the standard 
-library function fseek(). 
+Returns all of the tuples which have the given key in the given
+field. Use g_tuples_index() to access the returned records. The
+returned records should be freed with g_tuples_destroy().
 
-Deprecated:2.2: Use g_io_channel_seek_position() instead.
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="relation">
+<parameter_description> a #GRelation.
 </parameter_description>
 </parameter>
-<parameter name="offset">
-<parameter_description> an offset, in bytes, which is added to the position specified 
-by @type
+<parameter name="key">
+<parameter_description> the value to compare with.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the position in the file, which can be %G_SEEK_CUR (the current
-position), %G_SEEK_SET (the start of the file), or %G_SEEK_END 
-(the end of the file)
+<parameter name="field">
+<parameter_description> the field of each record to match.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %G_IO_ERROR_NONE if the operation was successful.
-
+<return> the records (tuples) that matched.
 </return>
 </function>
 
-<function name="g_utf8_strdown">
+<function name="g_reload_user_special_dirs_cache">
 <description>
-Converts all Unicode characters in the string that have a case
-to lowercase. The exact manner that this is done depends
-on the current locale, and may result in the number of
-characters in the string changing.
+Resets the cache used for g_get_user_special_dir(), so
+that the latest on-disk version is used. Call this only
+if you just changed the data on disk yourself.
+
+Due to threadsafety issues this may cause leaking of strings
+that were previously returned from g_get_user_special_dir()
+that can't be freed. We ensure to only leak the data for
+the directories that actually changed value though.
 
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a newly allocated string, with all characters
-converted to lowercase.  
-</return>
+<return></return>
 </function>
 
-<function name="g_match_info_get_match_count">
+<function name="g_remove">
 <description>
-Retrieves the number of matched substrings (including substring 0,
-that is the whole matched text), so 1 is returned if the pattern
-has no substrings in it and 0 is returned if the match failed.
+A wrapper for the POSIX remove() function. The remove() function
+deletes a name from the filesystem.
 
-If the last match was obtained using the DFA algorithm, that is
-using g_regex_match_all() or g_regex_match_all_full(), the retrieved
-count is not that of the number of capturing parentheses but that of
-the number of matched substrings.
+See your C library manual for more details about how remove() works
+on your system. On Unix, remove() removes also directories, as it
+calls unlink() for files and rmdir() for directories. On Windows,
+although remove() in the C library only works for files, this
+function tries first remove() and then if that fails rmdir(), and
+thus works for both files and directories. Note however, that on
+Windows, it is in general not possible to remove a file that is
+open to some process, or mapped into memory.
 
-Since: 2.14
+If this function fails on Windows you can't infer too much from the
+errno value. rmdir() is tried regardless of what caused remove() to
+fail. Any errno value set by remove() will be overwritten by that
+set by rmdir().
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> a #GMatchInfo structure
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
 </parameters>
-<return> Number of matched substrings, or -1 if an error occurred
+<return> 0 if the file was successfully removed, -1 if an error 
+occurred
 
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__STRING">
+<function name="g_rename">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, const gchar *arg1, gpointer user_data)&lt;/literal&gt;.
+A wrapper for the POSIX rename() function. The rename() function 
+renames a file, moving it between directories if required.
+
+See your C library manual for more details about how rename() works
+on your system. It is not possible in general on Windows to rename
+a file that is open to some process.
+
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gchar* parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="oldfilename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="newfilename">
+<parameter_description> a pathname in the GLib file name encoding
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> 0 if the renaming succeeded, -1 if an error occurred
+
+</return>
 </function>
 
-<function name="g_filename_display_basename">
+<function name="g_rmdir">
 <description>
-Returns the display basename for the particular filename, guaranteed
-to be valid UTF-8. The display name might not be identical to the filename,
-for instance there might be problems converting it to UTF-8, and some files
-can be translated in the display.
-
-If GLib can not make sense of the encoding of @filename, as a last resort it 
-replaces unknown characters with U+FFFD, the Unicode replacement character.
-You can search the result for the UTF-8 encoding of this character (which is
-&quot;\357\277\275&quot; in octal notation) to find out if @filename was in an invalid
-encoding.
-
-You must pass the whole absolute pathname to this functions so that
-translation of well known locations can be done.
+A wrapper for the POSIX rmdir() function. The rmdir() function
+deletes a directory from the filesystem.
 
-This function is preferred over g_filename_display_name() if you know the
-whole path, as it allows translation.
+See your C library manual for more details about how rmdir() works
+on your system.
 
 Since: 2.6
 
 </description>
 <parameters>
 <parameter name="filename">
-<parameter_description> an absolute pathname in the GLib file name encoding
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing
-a rendition of the basename of the filename in valid UTF-8
+<return> 0 if the directory was successfully removed, -1 if an error 
+occurred
 
 </return>
 </function>
 
-<function name="g_bookmark_file_to_file">
+<function name="g_sequence_append">
 <description>
-This function outputs @bookmark into a file.  The write process is
-guaranteed to be atomic by using g_file_set_contents() internally.
+Adds a new item to the end of @seq.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="filename">
-<parameter_description> path of the output file
+<parameter name="seq">
+<parameter_description> a #GSequencePointer
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="data">
+<parameter_description> the data for the new item
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the file was successfully written.
+<return> an iterator pointing to the new item
 
 </return>
 </function>
 
-<function name="g_datalist_set_flags">
+<function name="g_sequence_foreach">
 <description>
-Turns on flag values for a data list. This function is used
-to keep a small number of boolean flags in an object with
-a data list without using any additional space. It is
-not generally useful except in circumstances where space
-is very tight. (It is used in the base #GObject type, for
-example.)
+Calls @func for each item in the sequence passing @user_data
+to the function.
 
-Since: 2.8
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="datalist">
-<parameter_description> pointer to the location that holds a list
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> the flags to turn on. The values of the flags are
-restricted by %G_DATALIST_FLAGS_MASK (currently
-3; giving two possible boolean flags).
-A value for @flags that doesn't fit within the mask is
-an error.
+<parameter name="func">
+<parameter_description> the function to call for each item in @seq
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data passed to @func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_param_spec_set_qdata_full">
+<function name="g_sequence_foreach_range">
 <description>
-This function works like g_param_spec_set_qdata(), but in addition,
-a &lt;literal&gt;void (*destroy) (gpointer)&lt;/literal&gt; function may be
-specified which is called with @data as argument when the @pspec is
-finalized, or the data is being overwritten by a call to
-g_param_spec_set_qdata() with the same @quark.
+Calls @func for each item in the range (@begin, @end) passing
+ user_data to the function.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec to set store a user data pointer
+<parameter name="begin">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="quark">
-<parameter_description> a #GQuark, naming the user data pointer
+<parameter name="end">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> an opaque user data pointer
+<parameter name="func">
+<parameter_description> a #GFunc
 </parameter_description>
 </parameter>
-<parameter name="destroy">
-<parameter_description> function to invoke with @data as argument, when @data needs to
-be freed
+<parameter name="user_data">
+<parameter_description> user data passed to @func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_hash_table_unref">
+<function name="g_sequence_free">
 <description>
-Atomically decrements the reference count of @hash_table by one.
-If the reference count drops to 0, all keys and values will be
-destroyed, and all memory allocated by the hash table is released.
-This function is MT-safe and may be called from any thread.
+Frees the memory allocated for @seq. If @seq has a data destroy
+function associated with it, that function is called on all items in
+ seq 
 
-Since: 2.10
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a valid #GHashTable.
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_dup_strv">
+<function name="g_sequence_get">
 <description>
-Gets the contents of an array of strings #GVariant.  This call
-makes a deep copy; the return result should be released with
-g_strfreev().
-
-If @length is non-%NULL then the number of elements in the result
-is stored there.  In any case, the resulting array will be
-%NULL-terminated.
-
-For an empty array, @length will be set to 0 and a pointer to a
-%NULL pointer will be returned.
+Returns the data that @iter points to.
 
-Since: 2.24
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> an array of strings #GVariant
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the length of the result, or %NULL
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array of strings
+<return> the data that @iter points to
+
 </return>
 </function>
 
-<function name="g_dataset_id_get_data">
+<function name="g_sequence_get_begin_iter">
 <description>
-Gets the data element corresponding to a #GQuark.
+Returns the begin iterator for @seq.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="dataset_location">
-<parameter_description> the location identifying the dataset.
-</parameter_description>
-</parameter>
-<parameter name="key_id">
-<parameter_description> the #GQuark id to identify the data element.
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data element corresponding to the #GQuark, or %NULL if
-it is not found.
+<return> the begin iterator for @seq.
+
 </return>
 </function>
 
-<function name="g_strdupv">
+<function name="g_sequence_get_end_iter">
 <description>
-Copies %NULL-terminated array of strings. The copy is a deep copy;
-the new array should be freed by first freeing each string, then
-the array itself. g_strfreev() does this for you. If called
-on a %NULL value, g_strdupv() simply returns %NULL.
+Returns the end iterator for @seg
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="str_array">
-<parameter_description> %NULL-terminated array of strings.
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new %NULL-terminated array of strings.
+<return> the end iterator for @seq
+
 </return>
 </function>
 
-<function name="g_string_append">
+<function name="g_sequence_get_iter_at_pos">
 <description>
-Adds a string onto the end of a #GString, expanding 
-it if necessary.
+Returns the iterator at position @pos. If @pos is negative or larger
+than the number of items in @seq, the end iterator is returned.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> the string to append onto the end of @string
+<parameter name="pos">
+<parameter_description> a position in @seq, or -1 for the end.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> The #GSequenceIter at position @pos
+
 </return>
 </function>
 
-<function name="g_bookmark_file_get_size">
+<function name="g_sequence_get_length">
 <description>
-Gets the number of bookmarks inside @bookmark.
+Returns the length of @seq
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bookmarks
+<return> the length of @seq
 
 </return>
 </function>
 
-<function name="g_bookmark_file_get_uris">
+<function name="g_sequence_insert_before">
 <description>
-Returns all URIs of the bookmarks in the bookmark file @bookmark.
-The array of returned URIs will be %NULL-terminated, so @length may
-optionally be %NULL.
+Inserts a new item just before the item pointed to by @iter.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> return location for the number of returned URIs, or %NULL
+<parameter name="data">
+<parameter_description> the data for the new item
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated %NULL-terminated array of strings.
-Use g_strfreev() to free it.
+<return> an iterator pointing to the new item
 
 </return>
 </function>
 
-<function name="g_param_value_convert">
+<function name="g_sequence_insert_sorted">
 <description>
-Transforms @src_value into @dest_value if possible, and then
-validates @dest_value, in order for it to conform to @pspec.  If
- strict_validation is %TRUE this function will only succeed if the
-transformed @dest_value complied to @pspec without modifications.
-
-See also g_value_type_transformable(), g_value_transform() and
-g_param_value_validate().
+Inserts @data into @sequence using @func to determine the new position.
+The sequence must already be sorted according to @cmp_func; otherwise the
+new position of @data is undefined.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="src_value">
-<parameter_description> souce #GValue
+<parameter name="data">
+<parameter_description> the data to insert
 </parameter_description>
 </parameter>
-<parameter name="dest_value">
-<parameter_description> destination #GValue of correct type for @pspec
+<parameter name="cmp_func">
+<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
+is called with two items of the @seq and @user_data. It should
+return 0 if the items are equal, a negative value if the first
+item comes before the second, and a positive value if the second
+item comes before the first.
 </parameter_description>
 </parameter>
-<parameter name="strict_validation">
-<parameter_description> %TRUE requires @dest_value to conform to @pspec
-without modifications
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if transformation and validation were successful,
-%FALSE otherwise and @dest_value is left untouched.
+<return> a #GSequenceIter pointing to the new item.
+
 </return>
 </function>
 
@@ -23913,1346 +20960,1095 @@ iterator comes before the first.
 </return>
 </function>
 
-<function name="g_queue_push_tail_link">
+<function name="g_sequence_iter_compare">
 <description>
-Adds a new element at the tail of the queue.
-
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
-</parameter_description>
-</parameter>
-<parameter name="link_">
-<parameter_description> a single #GList element, &lt;emphasis&gt;not&lt;/emphasis&gt; a list with
-more than one element.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Returns a negative number if @a comes before @b, 0 if they are equal,
+and a positive number if @a comes after @b.
 
-<function name="g_atomic_int_set">
-<description>
-Sets the value of the integer pointed to by @atomic.
-Also acts as a memory barrier.
+The @a and @b iterators must point into the same sequence.
 
-Since: 2.10
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to an integer
+<parameter name="a">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="newval">
-<parameter_description> the new value
+<parameter name="b">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A negative number if @a comes before @b, 0 if they are
+equal, and a positive number if @a comes after @b.
+
+</return>
 </function>
 
-<function name="g_variant_get_uint32">
+<function name="g_sequence_iter_get_position">
 <description>
-Returns the 32-bit unsigned integer value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_UINT32.
+Returns the position of @iter
 
-Since: 2.24
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a uint32 #GVariant instance
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #guint32
+<return> the position of @iter
+
 </return>
 </function>
 
-<function name="g_child_watch_source_new">
+<function name="g_sequence_iter_get_sequence">
 <description>
-Creates a new child_watch source.
-
-The source will not initially be associated with any #GMainContext
-and must be added to one with g_source_attach() before it will be
-executed.
-
-Note that child watch sources can only be used in conjunction with
-&lt;literal&gt;g_spawn...&lt;/literal&gt; when the %G_SPAWN_DO_NOT_REAP_CHILD
-flag is used.
-
-Note that on platforms where #GPid must be explicitly closed
-(see g_spawn_close_pid()) @pid must not be closed while the
-source is still active. Typically, you will want to call
-g_spawn_close_pid() in the callback function for the source.
-
-Note further that using g_child_watch_source_new() is not 
-compatible with calling &lt;literal&gt;waitpid(-1)&lt;/literal&gt; in 
-the application. Calling waitpid() for individual pids will
-still work fine. 
+Returns the #GSequence that @iter points into.
 
-Since: 2.4
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="pid">
-<parameter_description> process to watch. On POSIX the pid of a child process. On
-Windows a handle for a process (which doesn't have to be a child).
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly-created child watch source
+<return> the #GSequence that @iter points into.
 
 </return>
 </function>
 
-<function name="g_variant_get_child">
+<function name="g_sequence_iter_is_begin">
 <description>
-Reads a child item out of a container #GVariant instance and
-deconstructs it according to @format_string.  This call is
-essentially a combination of g_variant_get_child_value() and
-g_variant_get().
+Returns whether @iter is the begin iterator
 
-Since: 2.24
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a container #GVariant
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the child to deconstruct
-</parameter_description>
-</parameter>
-<parameter name="format_string">
-<parameter_description> a #GVariant format string
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> arguments, as per @format_string
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> whether @iter is the begin iterator
+
+</return>
 </function>
 
-<function name="g_variant_type_string_scan">
+<function name="g_sequence_iter_is_end">
 <description>
-Scan for a single complete and valid GVariant type string in @string.
-The memory pointed to by @limit (or bytes beyond it) is never
-accessed.
-
-If a valid type string is found, @endptr is updated to point to the
-first character past the end of the string that was found and %TRUE
-is returned.
-
-If there is no valid type string starting at @string, or if the type
-string does not end before @limit then %FALSE is returned.
-
-For the simple case of checking if a string is a valid type string,
-see g_variant_type_string_is_valid().
+Returns whether @iter is the end iterator
 
-Since: 2.24
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a pointer to any string
-</parameter_description>
-</parameter>
-<parameter name="limit">
-<parameter_description> the end of @string, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="endptr">
-<parameter_description> location to store the end pointer, or %NULL
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a valid type string was found
+<return> Whether @iter is the end iterator.
+
 </return>
 </function>
 
-<function name="g_thread_create_full">
+<function name="g_sequence_iter_move">
 <description>
-This function creates a new thread with the priority @priority. If
-the underlying thread implementation supports it, the thread gets a
-stack size of @stack_size or the default value for the current
-platform, if @stack_size is 0.
-
-If @joinable is %TRUE, you can wait for this threads termination
-calling g_thread_join(). Otherwise the thread will just disappear
-when it terminates. If @bound is %TRUE, this thread will be
-scheduled in the system scope, otherwise the implementation is free
-to do scheduling in the process scope. The first variant is more
-expensive resource-wise, but generally faster. On some systems (e.g.
-Linux) all threads are bound.
-
-The new thread executes the function @func with the argument @data.
-If the thread was created successfully, it is returned.
-
- error can be %NULL to ignore errors, or non-%NULL to report errors.
-The error is set, if and only if the function returns %NULL.
-
-&lt;note&gt;&lt;para&gt;It is not guaranteed that threads with different priorities
-really behave accordingly. On some systems (e.g. Linux) there are no
-thread priorities. On other systems (e.g. Solaris) there doesn't
-seem to be different scheduling for different priorities. All in all
-try to avoid being dependent on priorities. Use
-%G_THREAD_PRIORITY_NORMAL here as a default.&lt;/para&gt;&lt;/note&gt;
+Returns the #GSequenceIter which is @delta positions away from @iter.
+If @iter is closer than - delta positions to the beginning of the sequence,
+the begin iterator is returned. If @iter is closer than @delta positions
+to the end of the sequence, the end iterator is returned.
 
-&lt;note&gt;&lt;para&gt;Only use g_thread_create_full() if you really can't use
-g_thread_create() instead. g_thread_create() does not take
- stack_size, @bound, and @priority as arguments, as they should only
-be used in cases in which it is unavoidable.&lt;/para&gt;&lt;/note&gt;
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a function to execute in the new thread.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> an argument to supply to the new thread.
-</parameter_description>
-</parameter>
-<parameter name="stack_size">
-<parameter_description> a stack size for the new thread.
-</parameter_description>
-</parameter>
-<parameter name="joinable">
-<parameter_description> should this thread be joinable?
-</parameter_description>
-</parameter>
-<parameter name="bound">
-<parameter_description> should this thread be bound to a system thread?
-</parameter_description>
-</parameter>
-<parameter name="priority">
-<parameter_description> a priority for the thread.
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error.
+<parameter name="delta">
+<parameter_description> A positive or negative number indicating how many positions away
+from @iter the returned #GSequenceIter will be.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GThread on success.
+<return> a #GSequenceIter which is @delta positions away from @iter.
+
 </return>
 </function>
 
-<function name="g_boxed_type_register_static">
+<function name="g_sequence_iter_next">
 <description>
-This function creates a new %G_TYPE_BOXED derived type id for a new
-boxed type with name @name. Boxed type handling functions have to be
-provided to copy and free opaque boxed structures of this type.
+Returns an iterator pointing to the next position after @iter. If
+ iter is the end iterator, the end iterator is returned.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> Name of the new boxed type.
-</parameter_description>
-</parameter>
-<parameter name="boxed_copy">
-<parameter_description> Boxed structure copy function.
-</parameter_description>
-</parameter>
-<parameter name="boxed_free">
-<parameter_description> Boxed structure free function.
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> New %G_TYPE_BOXED derived type id for @name.
-</return>
-</function>
-
-<function name="g_idle_source_new">
-<description>
-Creates a new idle source.
-
-The source will not initially be associated with any #GMainContext
-and must be added to one with g_source_attach() before it will be
-executed. Note that the default priority for idle sources is
-%G_PRIORITY_DEFAULT_IDLE, as compared to other sources which
-have a default priority of %G_PRIORITY_DEFAULT.
-
+<return> a #GSequenceIter pointing to the next position after @iter.
 
-</description>
-<parameters>
-</parameters>
-<return> the newly-created idle source
 </return>
 </function>
 
-<function name="g_object_set_property">
+<function name="g_sequence_iter_prev">
 <description>
-Sets a property on an object.
+Returns an iterator pointing to the previous position before @iter. If
+ iter is the begin iterator, the begin iterator is returned.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of the property to set
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSequenceIter pointing to the previous position before
+ iter 
+
+</return>
 </function>
 
-<function name="g_string_chunk_insert_len">
+<function name="g_sequence_lookup">
 <description>
-Adds a copy of the first @len bytes of @string to the #GStringChunk.
-The copy is nul-terminated.
-
-Since this function does not stop at nul bytes, it is the caller's
-responsibility to ensure that @string has at least @len addressable
-bytes.
+Returns an iterator pointing to the position of the first item found
+equal to @data according to @cmp_func and @cmp_data. If more than one item
+is equal, it is not guaranteed that it is the first which is returned.
+In that case, you can use g_sequence_iter_next() and g_sequence_iter_prev()
+to get others.
 
-The characters in the returned string can be changed, if necessary,
-though you should not change anything after the end of the string.
-
-Since: 2.4
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="chunk">
-<parameter_description> a #GStringChunk
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="string">
-<parameter_description> bytes to insert
+<parameter name="data">
+<parameter_description> data to lookup
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> number of bytes of @string to insert, or -1 to insert a
-nul-terminated string
+<parameter name="cmp_func">
+<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
+is called with two items of the @seq and @user_data. It should
+return 0 if the items are equal, a negative value if the first
+item comes before the second, and a positive value if the second
+item comes before the first.
+</parameter_description>
+</parameter>
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the copy of @string within the #GStringChunk
+<return> an #GSequenceIter pointing to the position of the first item
+found equal to @data according to @cmp_func and @cmp_data.
 
 </return>
 </function>
 
-<function name="g_list_delete_link">
+<function name="g_sequence_lookup_iter">
 <description>
-Removes the node link_ from the list and frees it. 
-Compare this to g_list_remove_link() which removes the node 
-without freeing it.
+Like g_sequence_lookup(), but uses
+a #GSequenceIterCompareFunc instead of a #GCompareDataFunc as
+the compare function.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> node to delete from @list
+<parameter name="data">
+<parameter_description> data to lookup
 </parameter_description>
 </parameter>
-</parameters>
-<return> the new head of @list
-</return>
-</function>
-
-<function name="g_value_get_uchar">
-<description>
-Get the contents of a %G_TYPE_UCHAR #GValue.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_UCHAR
+<parameter name="iter_cmp">
+<parameter_description> the #GSequenceIterCompare function used to compare iterators
+in the sequence. It is called with two iterators pointing into @seq.
+It should return 0 if the iterators are equal, a negative value if the
+first iterator comes before the second, and a positive value if the
+second iterator comes before the first.
+</parameter_description>
+</parameter>
+<parameter name="cmp_data">
+<parameter_description> user data passed to @iter_cmp
 </parameter_description>
 </parameter>
 </parameters>
-<return> unsigned character contents of @value
+<return> an #GSequenceIter pointing to the position of the first item
+found equal to @data according to @cmp_func and @cmp_data.
+
 </return>
 </function>
 
-<function name="g_bookmark_file_set_is_private">
+<function name="g_sequence_move">
 <description>
-Sets the private flag of the bookmark for @uri.
-
-If a bookmark for @uri cannot be found then it is created.
+Moves the item pointed to by @src to the position indicated by @dest.
+After calling this function @dest will point to the position immediately
+after @src. It is allowed for @src and @dest to point into different
+sequences.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="src">
+<parameter_description> a #GSequenceIter pointing to the item to move
 </parameter_description>
 </parameter>
-<parameter name="is_private">
-<parameter_description> %TRUE if the bookmark should be marked as private
+<parameter name="dest">
+<parameter_description> a #GSequenceIter pointing to the position to which
+the item is moved.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_key_file_get_boolean">
+<function name="g_sequence_move_range">
 <description>
-Returns the value associated with @key under @group_name as a
-boolean. 
+Inserts the (@begin, @end) range at the destination pointed to by ptr.
+The @begin and @end iters must point into the same sequence. It is
+allowed for @dest to point to a different sequence than the one pointed
+into by @begin and @end.
 
-If @key cannot be found then %FALSE is returned and @error is set
-to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value
-associated with @key cannot be interpreted as a boolean then %FALSE
-is returned and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+If @dest is NULL, the range indicated by @begin and @end is
+removed from the sequence. If @dest iter points to a place within
+the (@begin, @end) range, the range does not move.
 
-Since: 2.6
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="dest">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="begin">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="end">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value associated with the key as a boolean, 
-or %FALSE if the key was not found or could not be parsed.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_value_array_new">
+<function name="g_sequence_new">
 <description>
-Allocate and initialize a new #GValueArray, optionally preserve space
-for @n_prealloced elements. New arrays always contain 0 elements,
-regardless of the value of @n_prealloced.
+Creates a new GSequence. The @data_destroy function, if non-%NULL will
+be called on all items when the sequence is destroyed and on items that
+are removed from the sequence.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="n_prealloced">
-<parameter_description> number of values to preallocate space for
+<parameter name="data_destroy">
+<parameter_description> a #GDestroyNotify function, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GValueArray with 0 values
+<return> a new #GSequence
+
 </return>
 </function>
 
-<function name="g_string_down">
+<function name="g_sequence_prepend">
 <description>
-Converts a #GString to lowercase.
+Adds a new item to the front of @seq
 
-Deprecated:2.2: This function uses the locale-specific 
-tolower() function, which is almost never the right thing. 
-Use g_string_ascii_down() or g_utf8_strdown() instead.
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-</parameters>
-<return> the #GString.
-
-</return>
-</function>
-
-<function name="g_strup">
-<description>
-Converts a string to upper case. 
-
-Deprecated:2.2: This function is totally broken for the reasons discussed 
-in the g_strncasecmp() docs - use g_ascii_strup() or g_utf8_strup() instead.
-
-</description>
-<parameters>
-<parameter name="string">
-<parameter_description> the string to convert.
+<parameter name="data">
+<parameter_description> the data for the new item
 </parameter_description>
 </parameter>
 </parameters>
-<return> the string
+<return> an iterator pointing to the new item
 
 </return>
 </function>
 
-<function name="g_static_private_init">
+<function name="g_sequence_range_get_midpoint">
 <description>
-Initializes @private_key. Alternatively you can initialize it with
-#G_STATIC_PRIVATE_INIT.
-
-</description>
-<parameters>
-<parameter name="private_key">
-<parameter_description> a #GStaticPrivate to be initialized.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Finds an iterator somewhere in the range (@begin, @end). This
+iterator will be close to the middle of the range, but is not
+guaranteed to be &lt;emphasis&gt;exactly&lt;/emphasis&gt; in the middle.
 
-<function name="g_hash_table_size">
-<description>
-Returns the number of elements contained in the #GHashTable.
+The @begin and @end iterators must both point to the same sequence and
+ begin must come before or be equal to @end in the sequence.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+<parameter name="begin">
+<parameter_description> a #GSequenceIter
+</parameter_description>
+</parameter>
+<parameter name="end">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of key/value pairs in the #GHashTable.
+<return> A #GSequenceIter pointing somewhere in the
+(@begin, @end) range.
+
 </return>
 </function>
 
-<function name="g_type_class_peek">
+<function name="g_sequence_remove">
 <description>
-This function is essentially the same as g_type_class_ref(), except that
-the classes reference count isn't incremented. As a consequence, this function
-may return %NULL if the class of the type passed in does not currently
-exist (hasn't been referenced before).
+Removes the item pointed to by @iter. It is an error to pass the
+end iterator to this function.
 
+If the sequnce has a data destroy function associated with it, this
+function is called on the data for the removed item.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> Type ID of a classed type.
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GTypeClass structure for the given type ID or %NULL
-if the class does not currently exist.
-</return>
+<return></return>
 </function>
 
-<function name="g_chunk_free">
+<function name="g_sequence_remove_range">
 <description>
-A convenience macro to free an atom of memory from a #GMemChunk. It
-simply switches the arguments and calls g_mem_chunk_free() It is
-included simply to complement the other convenience macros,
-g_chunk_new() and g_chunk_new0().
+Removes all items in the (@begin, @end) range.
 
-Deprecated:2.10: Use g_slice_free() instead
+If the sequence has a data destroy function associated with it, this
+function is called on the data for the removed items.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="mem">
-<parameter_description> a pointer to the atom to be freed.
+<parameter name="begin">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="end">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_bookmark_file_has_application">
+<function name="g_sequence_search">
 <description>
-Checks whether the bookmark for @uri inside @bookmark has been
-registered by application @name.
+Returns an iterator pointing to the position where @data would
+be inserted according to @cmp_func and @cmp_data.
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+If you are simply searching for an existing element of the sequence,
+consider using g_sequence_lookup().
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="data">
+<parameter_description> data for the new item
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the application
+<parameter name="cmp_func">
+<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
+is called with two items of the @seq and @user_data. It should
+return 0 if the items are equal, a negative value if the first
+item comes before the second, and a positive value if the second
+item comes before the first.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the application @name was found
+<return> an #GSequenceIter pointing to the position where @data
+would have been inserted according to @cmp_func and @cmp_data.
 
 </return>
 </function>
 
-<function name="g_memmove">
+<function name="g_sequence_search_iter">
 <description>
-Copies a block of memory @len bytes long, from @src to @dest.
-The source and destination areas may overlap.
+Like g_sequence_search(), but uses
+a #GSequenceIterCompareFunc instead of a #GCompareDataFunc as
+the compare function.
 
-In order to use this function, you must include 
-&lt;filename&gt;string.h&lt;/filename&gt; yourself, because this macro will 
-typically simply resolve to memmove() and GLib does not include 
-&lt;filename&gt;string.h&lt;/filename&gt; for you.
+If you are simply searching for an existing element of the sequence,
+consider using g_sequence_lookup_iter().
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> the destination address to copy the bytes to.
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-<parameter name="src">
-<parameter_description> the source address to copy the bytes from.
+<parameter name="data">
+<parameter_description> data for the new item
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the number of bytes to copy.
+<parameter name="iter_cmp">
+<parameter_description> the #GSequenceIterCompare function used to compare iterators
+in the sequence. It is called with two iterators pointing into @seq.
+It should return 0 if the iterators are equal, a negative value if the
+first iterator comes before the second, and a positive value if the
+second iterator comes before the first.
+</parameter_description>
+</parameter>
+<parameter name="cmp_data">
+<parameter_description> user data passed to @iter_cmp
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GSequenceIter pointing to the position in @seq
+where @data would have been inserted according to @iter_cmp and @cmp_data.
+
+</return>
 </function>
 
-<function name="g_cclosure_marshal_BOOLEAN__FLAGS">
+<function name="g_sequence_set">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;gboolean (*callback) (gpointer instance, gint arg1, gpointer user_data)&lt;/literal&gt; where the #gint parameter
-denotes a flags type.
+Changes the data for the item pointed to by @iter to be @data. If
+the sequence has a data destroy function associated with it, that
+function is called on the existing data that @iter pointed to.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> a #GValue which can store the returned #gboolean
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding instance and arg1
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="data">
+<parameter_description> new data for the item
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_type_new_maybe">
+<function name="g_sequence_sort">
 <description>
-Constructs the type corresponding to a maybe instance containing
-type @type or Nothing.
-
-It is appropriate to call g_variant_type_free() on the return value.
+Sorts @seq using @cmp_func.
 
-Since 2.24
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="element">
-<parameter_description> a #GVariantType
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new maybe #GVariantType
-</return>
-</function>
-
-<function name="g_random_boolean">
-<description>
-Returns a random #gboolean. This corresponds to a unbiased coin toss.
-
-</description>
-<parameters>
-</parameters>
-<return> a random #gboolean.
-</return>
-</function>
-
-<function name="g_type_query">
-<description>
-Queries the type system for information about a specific type.
-This function will fill in a user-provided structure to hold
-type-specific information. If an invalid #GType is passed in, the
- type member of the #GTypeQuery is 0. All members filled into the
-#GTypeQuery structure should be considered constant and have to be
-left untouched.
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> the #GType value of a static, classed type.
+<parameter name="cmp_func">
+<parameter_description> the #GCompareDataFunc used to sort @seq. This function is
+passed two items of @seq and should return 0 if they are equal,
+a negative value if the first comes before the second, and a
+positive value if the second comes before the first.
 </parameter_description>
 </parameter>
-<parameter name="query">
-<parameter_description> A user provided structure that is filled in with constant values
-upon success.
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cond_free">
+<function name="g_sequence_sort_changed">
 <description>
-Destroys the #GCond.
+Moves the data pointed to a new position as indicated by @cmp_func. This
+function should be called for items in a sequence already sorted according
+to @cmp_func whenever some aspect of an item changes so that @cmp_func
+may return different values for that item.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="cond">
-<parameter_description> a #GCond.
+<parameter name="iter">
+<parameter_description> A #GSequenceIter
+</parameter_description>
+</parameter>
+<parameter name="cmp_func">
+<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
+is called with two items of the @seq and @user_data. It should
+return 0 if the items are equal, a negative value if the first
+item comes before the second, and a positive value if the second
+item comes before the first.
+</parameter_description>
+</parameter>
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_key_file_set_int64">
+<function name="g_sequence_sort_changed_iter">
 <description>
-Associates a new integer value with @key under @group_name.
-If @key cannot be found then it is created.
+Like g_sequence_sort_changed(), but uses
+a #GSequenceIterCompareFunc instead of a #GCompareDataFunc as
+the compare function.
 
-Since: 2.26
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="iter">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="iter_cmp">
+<parameter_description> the #GSequenceItercompare used to compare iterators in the
+sequence. It is called with two iterators pointing into @seq. It should
+return 0 if the iterators are equal, a negative value if the first
+iterator comes before the second, and a positive value if the second
+iterator comes before the first.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> an integer value
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_strv_length">
+<function name="g_sequence_sort_iter">
 <description>
-Returns the length of the given %NULL-terminated 
-string array @str_array.
+Like g_sequence_sort(), but uses a #GSequenceIterCompareFunc instead
+of a GCompareDataFunc as the compare function
 
-Since: 2.6
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="str_array">
-<parameter_description> a %NULL-terminated array of strings.
+<parameter name="seq">
+<parameter_description> a #GSequence
 </parameter_description>
 </parameter>
-</parameters>
-<return> length of @str_array.
-
-</return>
-</function>
-
-<function name="g_thread_pool_set_max_unused_threads">
-<description>
-Sets the maximal number of unused threads to @max_threads. If
- max_threads is -1, no limit is imposed on the number of unused
-threads.
-
-</description>
-<parameters>
-<parameter name="max_threads">
-<parameter_description> maximal number of unused threads
+<parameter name="cmp_func">
+<parameter_description> the #GSequenceItercompare used to compare iterators in the
+sequence. It is called with two iterators pointing into @seq. It should
+return 0 if the iterators are equal, a negative value if the first
+iterator comes before the second, and a positive value if the second
+iterator comes before the first.
+</parameter_description>
+</parameter>
+<parameter name="cmp_data">
+<parameter_description> user data passed to @cmp_func
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_object_freeze_notify">
+<function name="g_sequence_swap">
 <description>
-Increases the freeze count on @object. If the freeze count is
-non-zero, the emission of &quot;notify&quot; signals on @object is
-stopped. The signals are queued until the freeze count is decreased
-to zero.
+Swaps the items pointed to by @a and @b. It is allowed for @a and @b
+to point into difference sequences.
 
-This is necessary for accessors that modify multiple properties to prevent
-premature notification while the object is still being modified.
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="a">
+<parameter_description> a #GSequenceIter
+</parameter_description>
+</parameter>
+<parameter name="b">
+<parameter_description> a #GSequenceIter
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_bookmark_file_set_groups">
+<function name="g_set_application_name">
 <description>
-Sets a list of group names for the item with URI @uri.  Each previously
-set group name list is removed.
+Sets a human-readable name for the application. This name should be
+localized if possible, and is intended for display to the user.
+Contrast with g_set_prgname(), which sets a non-localized name.
+g_set_prgname() will be called automatically by gtk_init(),
+but g_set_application_name() will not.
 
-If @uri cannot be found then an item for it is created.
+Note that for thread safety reasons, this function can only
+be called once.
 
-Since: 2.12
+The application name will be used in contexts such as error messages,
+or when displaying an application's name in the task list.
+
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> an item's URI
-</parameter_description>
-</parameter>
-<parameter name="groups">
-<parameter_description> an array of group names, or %NULL to remove all groups
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> number of group name values in @groups
+<parameter name="application_name">
+<parameter_description> localized name of the application
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_node_n_nodes">
+<function name="g_set_error">
 <description>
-Gets the number of nodes in a tree.
-
+Does nothing if @err is %NULL; if @err is non-%NULL, then * err
+must be %NULL. A new #GError is created and assigned to * err 
 
 </description>
 <parameters>
-<parameter name="root">
-<parameter_description> a #GNode
+<parameter name="err">
+<parameter_description> a return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> which types of children are to be counted, one of 
-%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
+<parameter name="domain">
+<parameter_description> error domain
 </parameter_description>
 </parameter>
-</parameters>
-<return> the number of nodes in the tree
-</return>
-</function>
-
-<function name="g_relation_count">
-<description>
-Returns the number of tuples in a #GRelation that have the given
-value in the given field.
-
-Deprecated: 2.26: Rarely used API
-
-</description>
-<parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
+<parameter name="code">
+<parameter_description> error code
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the value to compare with.
+<parameter name="format">
+<parameter_description> printf()-style format
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> the field of each record to match.
+<parameter name="Varargs">
+<parameter_description> args for @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of matches.
-</return>
+<return></return>
 </function>
 
-<function name="g_source_ref">
+<function name="g_set_error_literal">
 <description>
-Increases the reference count on a source by one.
+Does nothing if @err is %NULL; if @err is non-%NULL, then * err
+must be %NULL. A new #GError is created and assigned to * err 
+Unlike g_set_error(), @message is not a printf()-style format string.
+Use this function if @message contains text you don't have control over,
+that could include printf() escape sequences.
 
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="err">
+<parameter_description> a return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return> @source
-</return>
-</function>
-
-<function name="g_main_context_wait">
-<description>
-Tries to become the owner of the specified context,
-as with g_main_context_acquire(). But if another thread
-is the owner, atomically drop @mutex and wait on @cond until 
-that owner releases ownership or until @cond is signaled, then
-try again (once) to become the owner.
-
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="domain">
+<parameter_description> error domain
 </parameter_description>
 </parameter>
-<parameter name="cond">
-<parameter_description> a condition variable
+<parameter name="code">
+<parameter_description> error code
 </parameter_description>
 </parameter>
-<parameter name="mutex">
-<parameter_description> a mutex, currently held
+<parameter name="message">
+<parameter_description> error message
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation succeeded, and
-this thread is now the owner of @context.
-</return>
+<return></return>
 </function>
 
-<function name="g_value_peek_pointer">
+<function name="g_set_prgname">
 <description>
-Return the value contents as pointer. This function asserts that
-g_value_fits_pointer() returned %TRUE for the passed in value.
-This is an internal function introduced mainly for C marshallers.
-
+Sets the name of the program. This name should &lt;emphasis&gt;not&lt;/emphasis&gt; 
+be localized, contrast with g_set_application_name(). Note that for 
+thread-safety reasons this function can only be called once.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> An initialized #GValue structure.
+<parameter name="prgname">
+<parameter_description> the name of the program.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @value will fit inside a pointer value.
-</return>
+<return></return>
 </function>
 
-<function name="g_io_channel_error_quark">
+<function name="g_setenv">
 <description>
+Sets an environment variable. Both the variable's name and value
+should be in the GLib file name encoding. On UNIX, this means that
+they can be any sequence of bytes. On Windows, they should be in
+UTF-8.
 
-</description>
-<parameters>
-</parameters>
-<return> the quark used as %G_IO_CHANNEL_ERROR
-</return>
-</function>
-
-<function name="g_signal_handler_is_connected">
-<description>
-Returns whether @handler_id is the id of a handler connected to @instance.
+Note that on some systems, when variables are overwritten, the memory 
+used for the previous variables and its value isn't reclaimed.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance where a signal handler is sought.
+<parameter name="variable">
+<parameter_description> the environment variable to set, must not contain '='.
 </parameter_description>
 </parameter>
-<parameter name="handler_id">
-<parameter_description> the handler id.
+<parameter name="value">
+<parameter_description> the value for to set the variable to.
 </parameter_description>
 </parameter>
-</parameters>
-<return> whether @handler_id identifies a handler connected to @instance.
-</return>
-</function>
-
-<function name="g_intern_static_string">
-<description>
-Returns a canonical representation for @string. Interned strings can
-be compared for equality by comparing the pointers, instead of using strcmp().
-g_intern_static_string() does not copy the string, therefore @string must
-not be freed or modified. 
-
-Since: 2.10
-
-</description>
-<parameters>
-<parameter name="string">
-<parameter_description> a static string
+<parameter name="overwrite">
+<parameter_description> whether to change the variable if it already exists.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a canonical representation for the string
+<return> %FALSE if the environment variable couldn't be set.
 
 </return>
 </function>
 
-<function name="g_variant_new_maybe">
+<function name="g_shell_parse_argv">
 <description>
-Depending on if @child is %NULL, either wraps @child inside of a
-maybe container or creates a Nothing instance for the given @type.
-
-At least one of @child_type and @child must be non-%NULL.
-If @child_type is non-%NULL then it must be a definite type.
-If they are both non-%NULL then @child_type must be the type
-of @child.
+Parses a command line into an argument vector, in much the same way
+the shell would, but without many of the expansions the shell would
+perform (variable expansion, globs, operators, filename expansion,
+etc. are not supported). The results are defined to be the same as
+those you would get from a UNIX98 /bin/sh, as long as the input
+contains none of the unsupported shell expansions. If the input
+does contain such expansions, they are passed through
+literally. Possible errors are those from the #G_SHELL_ERROR
+domain. Free the returned vector with g_strfreev().
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="child_type">
-<parameter_description> the #GVariantType of the child, or %NULL
+<parameter name="command_line">
+<parameter_description> command line to parse
 </parameter_description>
 </parameter>
-<parameter name="child">
-<parameter_description> the child value, or %NULL
+<parameter name="argcp">
+<parameter_description> return location for number of args
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new #GVariant maybe instance
-</return>
-</function>
-
-<function name="g_unichar_isprint">
-<description>
-Determines whether a character is printable.
-Unlike g_unichar_isgraph(), returns %TRUE for spaces.
-Given some UTF-8 text, obtain a character value with
-g_utf8_get_char().
-
-
-</description>
-<parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="argvp">
+<parameter_description> return location for array of args
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if @c is printable
-</return>
-</function>
-
-<function name="g_value_get_int">
-<description>
-Get the contents of a %G_TYPE_INT #GValue.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_INT
+<parameter name="error">
+<parameter_description> return location for error
 </parameter_description>
 </parameter>
 </parameters>
-<return> integer contents of @value
+<return> %TRUE on success, %FALSE if error set
 </return>
 </function>
 
-<function name="g_value_set_enum">
+<function name="g_shell_quote">
 <description>
-Set the contents of a %G_TYPE_ENUM #GValue to @v_enum.
+Quotes a string so that the shell (/bin/sh) will interpret the
+quoted string to mean @unquoted_string. If you pass a filename to
+the shell, for example, you should first quote it with this
+function.  The return value must be freed with g_free(). The
+quoting style used is undefined (single or double quotes may be
+used).
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_ENUM
-</parameter_description>
-</parameter>
-<parameter name="v_enum">
-<parameter_description> enum value to be set
+<parameter name="unquoted_string">
+<parameter_description> a literal string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> quoted string
+</return>
 </function>
 
-<function name="g_variant_type_first">
+<function name="g_shell_unquote">
 <description>
-Determines the first item type of a tuple or dictionary entry
-type.
-
-This function may only be used with tuple or dictionary entry types,
-but must not be used with the generic tuple type
-%G_VARIANT_TYPE_TUPLE.
-
-In the case of a dictionary entry type, this returns the type of
-the key.
-
-%NULL is returned in case of @type being %G_VARIANT_TYPE_UNIT.
+Unquotes a string as the shell (/bin/sh) would. Only handles
+quotes; if a string contains file globs, arithmetic operators,
+variables, backticks, redirections, or other special-to-the-shell
+features, the result will be different from the result a real shell
+would produce (the variables, backticks, etc. will be passed
+through literally instead of being expanded). This function is
+guaranteed to succeed if applied to the result of
+g_shell_quote(). If it fails, it returns %NULL and sets the
+error. The @quoted_string need not actually contain quoted or
+escaped text; g_shell_unquote() simply goes through the string and
+unquotes/unescapes anything that the shell would. Both single and
+double quotes are handled, as are escapes including escaped
+newlines. The return value must be freed with g_free(). Possible
+errors are in the #G_SHELL_ERROR domain.
 
-This call, together with g_variant_type_next() provides an iterator
-interface over tuple and dictionary entry types.
+Shell quoting rules are a bit strange. Single quotes preserve the
+literal string exactly. escape sequences are not allowed; not even
+\' - if you want a ' in the quoted text, you have to do something
+like 'foo'\''bar'.  Double quotes allow $, `, &quot;, \, and newline to
+be escaped with backslash. Otherwise double quotes preserve things
+literally.
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a tuple or dictionary entry #GVariantType
+<parameter name="quoted_string">
+<parameter_description> shell-quoted string
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> error return location or NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the first item type of @type, or %NULL
+<return> an unquoted string
 </return>
 </function>
 
-<function name="g_source_remove_poll">
+<function name="g_slist_alloc">
 <description>
-Removes a file descriptor from the set of file descriptors polled for
-this source. 
+Allocates space for one #GSList element. It is called by the
+g_slist_append(), g_slist_prepend(), g_slist_insert() and
+g_slist_insert_sorted() functions and so is rarely used on its own.
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description>a #GSource 
-</parameter_description>
-</parameter>
-<parameter name="fd">
-<parameter_description> a #GPollFD structure previously passed to g_source_add_poll().
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a pointer to the newly-allocated #GSList element.
+</return>
 </function>
 
-<function name="g_ascii_strtod">
+<function name="g_slist_append">
 <description>
-Converts a string to a #gdouble value.
+Adds a new element on to the end of the list.
 
-This function behaves like the standard strtod() function
-does in the C locale. It does this without actually changing 
-the current locale, since that would not be thread-safe. 
-A limitation of the implementation is that this function
-will still accept localized versions of infinities and NANs. 
+&lt;note&gt;&lt;para&gt;
+The return value is the new start of the list, which may
+have changed, so make sure you store the new value.
+&lt;/para&gt;&lt;/note&gt;
 
-This function is typically used when reading configuration
-files or other non-user input that should be locale independent.
-To handle input from the user you should normally use the
-locale-sensitive system strtod() function.
+&lt;note&gt;&lt;para&gt;
+Note that g_slist_append() has to traverse the entire list
+to find the end, which is inefficient when adding multiple
+elements. A common idiom to avoid the inefficiency is to prepend
+the elements and reverse the list when all elements have been added.
+&lt;/para&gt;&lt;/note&gt;
 
-To convert from a #gdouble to a string in a locale-insensitive
-way, use g_ascii_dtostr().
+|[
+/ * Notice that these are initialized to the empty list. * /
+GSList *list = NULL, *number_list = NULL;
 
-If the correct value would cause overflow, plus or minus %HUGE_VAL
-is returned (according to the sign of the value), and %ERANGE is
-stored in %errno. If the correct value would cause underflow,
-zero is returned and %ERANGE is stored in %errno.
+/ * This is a list of strings. * /
+list = g_slist_append (list, &quot;first&quot;);
+list = g_slist_append (list, &quot;second&quot;);
 
-This function resets %errno before calling strtod() so that
-you can reliably detect overflow and underflow.
+/ * This is a list of integers. * /
+number_list = g_slist_append (number_list, GINT_TO_POINTER (27));
+number_list = g_slist_append (number_list, GINT_TO_POINTER (14));
+]|
 
 
 </description>
 <parameters>
-<parameter name="nptr">
-<parameter_description>    the string to convert to a numeric value.
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="endptr">
-<parameter_description>  if non-%NULL, it returns the character after
-the last character used in the conversion.
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #gdouble value.
+<return> the new start of the #GSList
 </return>
 </function>
 
-<function name="g_utf8_strlen">
+<function name="g_slist_concat">
 <description>
-Computes the length of the string in characters, not including
-the terminating nul character.
+Adds the second #GSList onto the end of the first #GSList.
+Note that the elements of the second #GSList are not copied.
+They are used directly.
 
 
 </description>
 <parameters>
-<parameter name="p">
-<parameter_description> pointer to the start of a UTF-8 encoded string
+<parameter name="list1">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="max">
-<parameter_description> the maximum number of bytes to examine. If @max
-is less than 0, then the string is assumed to be
-nul-terminated. If @max is 0, @p will not be examined and
-may be %NULL.
+<parameter name="list2">
+<parameter_description> the #GSList to add to the end of the first #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of the string in characters
+<return> the start of the new #GSList
 </return>
 </function>
 
-<function name="g_tuples_destroy">
+<function name="g_slist_copy">
 <description>
-Frees the records which were returned by g_relation_select(). This
-should always be called after g_relation_select() when you are
-finished with the records. The records are not removed from the
-#GRelation.
+Copies a #GSList.
+
+&lt;note&gt;&lt;para&gt;
+Note that this is a &quot;shallow&quot; copy. If the list elements
+consist of pointers to data, the pointers are copied but
+the actual data isn't.
+&lt;/para&gt;&lt;/note&gt;
 
-Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="tuples">
-<parameter_description> the tuple data to free.
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a copy of @list
+</return>
 </function>
 
-<function name="g_main_context_pop_thread_default">
+<function name="g_slist_delete_link">
 <description>
-Pops @context off the thread-default context stack (verifying that
-it was on the top of the stack).
+Removes the node link_ from the list and frees it.
+Compare this to g_slist_remove_link() which removes the node
+without freeing it.
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext object, or %NULL
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_unichar_xdigit_value">
-<description>
-Determines the numeric value of a character as a hexidecimal
-digit.
-
-
-</description>
-<parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="link_">
+<parameter_description> node to delete
 </parameter_description>
 </parameter>
 </parameters>
-<return> If @c is a hex digit (according to
-g_unichar_isxdigit()), its numeric value. Otherwise, -1.
+<return> the new head of @list
 </return>
 </function>
 
-<function name="g_queue_remove_all">
+<function name="g_slist_find">
 <description>
-Remove all elemeents in @queue which contains @data.
+Finds the element in a #GSList which
+contains the given data.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description> data to remove
+<parameter_description> the element data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the found #GSList element,
+or %NULL if it is not found
+</return>
 </function>
 
-<function name="g_node_nth_child">
+<function name="g_slist_find_custom">
 <description>
-Gets a child of a #GNode, using the given index.
-The first child is at index 0. If the index is 
-too big, %NULL is returned.
+Finds an element in a #GSList, using a supplied function to
+find the desired element. It iterates over the list, calling
+the given function which should return 0 when the desired
+element is found. The function takes two #gconstpointer arguments,
+the #GSList element's data as the first argument and the
+given user data.
 
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the index of the desired child
+<parameter name="data">
+<parameter_description> user data passed to the function
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the function to call for each element.
+It should return 0 when the desired element is found
 </parameter_description>
 </parameter>
 </parameters>
-<return> the child of @node at index @n
+<return> the found #GSList element, or %NULL if it is not found
 </return>
 </function>
 
-<function name="g_string_sprintf">
+<function name="g_slist_foreach">
 <description>
-Writes a formatted string into a #GString.
-This is similar to the standard sprintf() function,
-except that the #GString buffer automatically expands 
-to contain the results. The previous contents of the 
-#GString are destroyed. 
-
-Deprecated: This function has been renamed to g_string_printf().
+Calls a function for each element of a #GSList.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> the string format. See the sprintf() documentation
+<parameter name="func">
+<parameter_description> the function to call with each element's data
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the parameters to insert into the format string
+<parameter name="user_data">
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_slist_length">
+<function name="g_slist_free">
 <description>
-Gets the number of elements in a #GSList.
+Frees all of the memory used by a #GSList.
+The freed elements are returned to the slice allocator.
 
 &lt;note&gt;&lt;para&gt;
-This function iterates over the whole list to 
-count its elements.
+If list elements contain dynamically-allocated memory,
+you should either use g_slist_free_full() or free them manually
+first.
 &lt;/para&gt;&lt;/note&gt;
 
-
 </description>
 <parameters>
 <parameter name="list">
@@ -25260,4991 +22056,3656 @@ count its elements.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of elements in the #GSList
-</return>
+<return></return>
 </function>
 
-<function name="g_array_sort">
+<function name="g_slist_free1">
 <description>
-Sorts a #GArray using @compare_func which should be a qsort()-style
-comparison function (returns less than zero for first arg is less
-than second arg, zero for equal, greater zero if first arg is
-greater than second arg).
+A macro which does the same as g_slist_free_1().
 
-If two array elements compare equal, their order in the sorted array
-is undefined.
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
-</parameter_description>
-</parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function.
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_get_float">
+<function name="g_slist_free_1">
 <description>
-Get the contents of a %G_TYPE_FLOAT #GValue.
-
+Frees one #GSList element.
+It is usually used after g_slist_remove_link().
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_FLOAT
+<parameter name="list">
+<parameter_description> a #GSList element
 </parameter_description>
 </parameter>
 </parameters>
-<return> float contents of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_regex_get_max_backref">
+<function name="g_slist_free_full">
 <description>
-Returns the number of the highest back reference
-in the pattern, or 0 if the pattern does not contain
-back references.
+Convenience method, which frees all the memory used by a #GSList, and
+calls the specified destroy function on every element's data.
 
-Since: 2.14
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex
+<parameter name="list">
+<parameter_description> a pointer to a #GSList
+</parameter_description>
+</parameter>
+<parameter name="free_func">
+<parameter_description> the function to be called to free each element's data
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of the highest back reference
-
-</return>
+<return></return>
 </function>
 
-<function name="g_static_rw_lock_writer_lock">
+<function name="g_slist_index">
 <description>
-Locks @lock for writing. If @lock is already locked for writing or
-reading by other threads, this function will block until @lock is
-completely unlocked and then lock @lock for writing. While this
-functions waits to lock @lock, no other thread can lock @lock for
-reading. When @lock is locked for writing, no other thread can lock
- lock (neither for reading nor writing). This lock has to be
-unlocked by g_static_rw_lock_writer_unlock().
+Gets the position of the element containing
+the given data (starting from 0).
+
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to lock for writing.
+<parameter name="list">
+<parameter_description> a #GSList
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> the data to find
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the index of the element containing the data,
+or -1 if the data is not found
+</return>
 </function>
 
-<function name="g_object_set">
+<function name="g_slist_insert">
 <description>
-Sets properties on an object.
+Inserts a new element into the list at the given position.
+
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="first_property_name">
-<parameter_description> name of the first property to set
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> value for the first property, followed optionally by more
-name/value pairs, followed by %NULL
+<parameter name="position">
+<parameter_description> the position to insert the element.
+If this is negative, or is larger than the number
+of elements in the list, the new element is added on
+to the end of the list.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new start of the #GSList
+</return>
 </function>
 
-<function name="g_regex_split_simple">
+<function name="g_slist_insert_before">
 <description>
-Breaks the string on the pattern, and returns an array of
-the tokens. If the pattern contains capturing parentheses,
-then the text for each of the substrings will also be returned.
-If the pattern does not match anywhere in the string, then the
-whole string is returned as the first token.
-
-This function is equivalent to g_regex_split() but it does
-not require to compile the pattern with g_regex_new(), avoiding
-some lines of code when you need just to do a split without
-extracting substrings, capture counts, and so on.
-
-If this function is to be called on the same @pattern more than
-once, it's more efficient to compile the pattern once with
-g_regex_new() and then use g_regex_split().
-
-As a special case, the result of splitting the empty string &quot;&quot;
-is an empty vector, not a vector containing a single string.
-The reason for this special case is that being able to represent
-a empty vector is typically more useful than consistent handling
-of empty elements. If you do need to represent empty elements,
-you'll need to check for the empty string before calling this
-function.
-
-A pattern that can match empty strings splits @string into
-separate characters wherever it matches the empty string between
-characters. For example splitting &quot;ab c&quot; using as a separator
-&quot;\s*&quot;, you will get &quot;a&quot;, &quot;b&quot; and &quot;c&quot;.
+Inserts a node before @sibling containing @data.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="pattern">
-<parameter_description> the regular expression
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to scan for matches
+<parameter name="slist">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="compile_options">
-<parameter_description> compile options for the regular expression, or 0
+<parameter name="sibling">
+<parameter_description> node to insert @data before
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> match options, or 0
+<parameter name="data">
+<parameter_description> data to put in the newly-inserted node
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated array of strings. Free it using g_strfreev()
-
+<return> the new head of the list.
 </return>
 </function>
 
-<function name="g_test_minimized_result">
+<function name="g_slist_insert_sorted">
 <description>
-Report the result of a performance or measurement test.
-The test should generally strive to minimize the reported
-quantities (smaller values are better than larger ones),
-this and @minimized_quantity can determine sorting
-order for test result reports.
+Inserts a new element into the list, using the given
+comparison function to determine its position.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="minimized_quantity">
-<parameter_description> the reported value
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> the format string of the report message
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments to pass to the printf() function
+<parameter name="func">
+<parameter_description> the function to compare elements in the list.
+It should return a number &gt; 0 if the first parameter
+comes after the second parameter in the sort order.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new start of the #GSList
+</return>
 </function>
 
-<function name="g_thread_create">
+<function name="g_slist_insert_sorted_with_data">
 <description>
-This function creates a new thread with the default priority.
-
-If @joinable is %TRUE, you can wait for this threads termination
-calling g_thread_join(). Otherwise the thread will just disappear
-when it terminates.
-
-The new thread executes the function @func with the argument @data.
-If the thread was created successfully, it is returned.
+Inserts a new element into the list, using the given
+comparison function to determine its position.
 
- error can be %NULL to ignore errors, or non-%NULL to report errors.
-The error is set, if and only if the function returns %NULL.
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a function to execute in the new thread.
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description> an argument to supply to the new thread.
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
-<parameter name="joinable">
-<parameter_description> should this thread be joinable?
+<parameter name="func">
+<parameter_description> the function to compare elements in the list.
+It should return a number &gt; 0 if the first parameter
+comes after the second parameter in the sort order.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error.
+<parameter name="user_data">
+<parameter_description> data to pass to comparison function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GThread on success.
+<return> the new start of the #GSList
+
 </return>
 </function>
 
-<function name="g_variant_get_boolean">
+<function name="g_slist_last">
 <description>
-Returns the boolean value of @value.
+Gets the last element in a #GSList.
 
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_BOOLEAN.
+&lt;note&gt;&lt;para&gt;
+This function iterates over the whole list.
+&lt;/para&gt;&lt;/note&gt;
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a boolean #GVariant instance
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE or %FALSE
+<return> the last element in the #GSList,
+or %NULL if the #GSList has no elements
 </return>
 </function>
 
-<function name="g_object_is_floating">
+<function name="g_slist_length">
 <description>
-Checks wether @object has a &lt;link linkend=&quot;floating-ref&quot;&gt;floating&lt;/link&gt;
-reference.
+Gets the number of elements in a #GSList.
 
-Since: 2.10
+&lt;note&gt;&lt;para&gt;
+This function iterates over the whole list to
+count its elements.
+&lt;/para&gt;&lt;/note&gt;
 
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @object has a floating reference
+<return> the number of elements in the #GSList
 </return>
 </function>
 
-<function name="g_main_context_remove_poll">
+<function name="g_slist_next">
 <description>
-Removes file descriptor from the set of file descriptors to be
-polled for a particular context.
+A convenience macro to get the next element in a #GSList.
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description>a #GMainContext 
-</parameter_description>
-</parameter>
-<parameter name="fd">
-<parameter_description> a #GPollFD descriptor previously added with g_main_context_add_poll()
+<parameter name="slist">
+<parameter_description> an element in a #GSList.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the next element, or %NULL if there are no more elements.
+</return>
 </function>
 
-<function name="g_private_set">
+<function name="g_slist_nth">
 <description>
-Sets the pointer keyed to @private_key for the current thread.
+Gets the element at the given position in a #GSList.
 
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will set @private_key to @data casted to
-#GPrivate*. See g_private_get() for resulting caveats.
 
 </description>
 <parameters>
-<parameter name="private_key">
-<parameter_description> a #GPrivate.
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the new pointer.
+<parameter name="n">
+<parameter_description> the position of the element, counting from 0
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the element, or %NULL if the position is off
+the end of the #GSList
+</return>
 </function>
 
-<function name="g_object_set_data">
+<function name="g_slist_nth_data">
 <description>
-Each object carries around a table of associations from
-strings to pointers.  This function lets you set an association.
-
-If the object already had an association with that name,
-the old association will be destroyed.
-
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> #GObject containing the associations.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> name of the key
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to associate with that key
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Gets the data of the element at the given position.
 
-<function name="g_node_children_foreach">
-<description>
-Calls a function for each of the children of a #GNode.
-Note that it doesn't descend beneath the child nodes.
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> which types of children are to be visited, one of 
-%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each visited node
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> user data to pass to the function
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_byte_array_sized_new">
-<description>
-Creates a new #GByteArray with @reserved_size bytes preallocated.
-This avoids frequent reallocation, if you are going to add many
-bytes to the array. Note however that the size of the array is still
-0.
-
-</description>
-<parameters>
-<parameter name="reserved_size">
-<parameter_description> number of bytes preallocated.
+<parameter name="n">
+<parameter_description> the position of the element
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GByteArray.
+<return> the element's data, or %NULL if the position
+is off the end of the #GSList
 </return>
 </function>
 
-<function name="g_win32_getlocale">
+<function name="g_slist_pop_allocator">
 <description>
-The setlocale() function in the Microsoft C library uses locale
-names of the form &quot;English_United States.1252&quot; etc. We want the
-UNIXish standard form &quot;en_US&quot;, &quot;zh_TW&quot; etc. This function gets the
-current thread locale from Windows - without any encoding info -
-and returns it as a string of the above form for use in forming
-file names etc. The returned string should be deallocated with
-g_free().
+Restores the previous #GAllocator, used when allocating #GSList
+elements.
 
+Note that this function is not available if GLib has been compiled
+with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
+
+Deprecated: 2.10: It does nothing, since #GSList has been converted
+to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt;
 
 </description>
 <parameters>
 </parameters>
-<return> newly-allocated locale name.
-</return>
+<return></return>
 </function>
 
-<function name="g_markup_parse_context_get_element">
+<function name="g_slist_position">
 <description>
-Retrieves the name of the currently open element.
-
-If called from the start_element or end_element handlers this will
-give the element_name as passed to those functions. For the parent
-elements, see g_markup_parse_context_get_element_stack().
+Gets the position of the given element
+in the #GSList (starting from 0).
 
-Since: 2.2
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="list">
+<parameter_description> a #GSList
+</parameter_description>
+</parameter>
+<parameter name="llink">
+<parameter_description> an element in the #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the currently open element, or %NULL
+<return> the position of the element in the #GSList,
+or -1 if the element is not found
 </return>
 </function>
 
-<function name="g_mkdir_with_parents">
+<function name="g_slist_prepend">
 <description>
-Create a directory if it doesn't already exist. Create intermediate
-parent directories as needed, too.
+Adds a new element on to the start of the list.
+
+&lt;note&gt;&lt;para&gt;
+The return value is the new start of the list, which
+may have changed, so make sure you store the new value.
+&lt;/para&gt;&lt;/note&gt;
+
+|[
+/ * Notice that it is initialized to the empty list. * /
+GSList *list = NULL;
+list = g_slist_prepend (list, &quot;last&quot;);
+list = g_slist_prepend (list, &quot;first&quot;);
+]|
 
-Since: 2.8
 
 </description>
 <parameters>
-<parameter name="pathname">
-<parameter_description> a pathname in the GLib file name encoding
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> permissions to use for newly created directories
+<parameter name="data">
+<parameter_description> the data for the new element
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the directory already exists, or was successfully
-created. Returns -1 if an error occurred, with errno set.
-
+<return> the new start of the #GSList
 </return>
 </function>
 
-<function name="g_regex_get_compile_flags">
+<function name="g_slist_push_allocator">
 <description>
-Returns the compile options that @regex was created with.
+Sets the allocator to use to allocate #GSList elements. Use
+g_slist_pop_allocator() to restore the previous allocator.
 
-Since: 2.26
+Note that this function is not available if GLib has been compiled
+with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
+
+Deprecated: 2.10: It does nothing, since #GSList has been converted
+to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
+allocator&lt;/link&gt;
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex
+<parameter name="dummy">
+<parameter_description> the #GAllocator to use when allocating #GSList elements.
 </parameter_description>
 </parameter>
 </parameters>
-<return> flags from #GRegexCompileFlags
-
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_copy">
+<function name="g_slist_remove">
 <description>
-Copies a @queue. Note that is a shallow copy. If the elements in the
-queue consist of pointers to data, the pointers are copied, but the
-actual data is not.
+Removes an element from a #GSList.
+If two elements contain the same data, only the first is removed.
+If none of the elements contain the data, the #GSList is unchanged.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="list">
+<parameter_description> a #GSList
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> the data of the element to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> A copy of @queue
-
+<return> the new start of the #GSList
 </return>
 </function>
 
-<function name="g_queue_sort">
+<function name="g_slist_remove_all">
 <description>
-Sorts @queue using @compare_func. 
+Removes all list nodes with data equal to @data.
+Returns the new head of the list. Contrast with
+g_slist_remove() which removes only the first node
+matching the given data.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="compare_func">
-<parameter_description> the #GCompareDataFunc used to sort @queue. This function
-is passed two elements of the queue and should return 0 if they are
-equal, a negative value if the first comes before the second, and
-a positive value if the second comes before the first.
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @compare_func
+<parameter name="data">
+<parameter_description> data to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> new head of @list
+</return>
 </function>
 
-<function name="g_option_context_add_group">
+<function name="g_slist_remove_link">
 <description>
-Adds a #GOptionGroup to the @context, so that parsing with @context
-will recognize the options in the group. Note that the group will
-be freed together with the context when g_option_context_free() is
-called, so you must not free the group yourself after adding it
-to a context.
+Removes an element from a #GSList, without
+freeing the element. The removed element's next
+link is set to %NULL, so that it becomes a
+self-contained list with one element.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="group">
-<parameter_description> the group to add
+<parameter name="link_">
+<parameter_description> an element in the #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new start of the #GSList, without the element
+</return>
 </function>
 
-<function name="g_unichar_isupper">
+<function name="g_slist_reverse">
 <description>
-Determines if a character is uppercase.
+Reverses a #GSList.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @c is an uppercase character
+<return> the start of the reversed #GSList
 </return>
 </function>
 
-<function name="g_variant_new_dict_entry">
+<function name="g_slist_sort">
 <description>
-Creates a new dictionary entry #GVariant.  @key and @value must be
-non-%NULL.
-
- key must be a value of a basic type (ie: not a container).
+Sorts a #GSList using the given comparison function.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="key">
-<parameter_description> a basic #GVariant, the key
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GVariant, the value
+<parameter name="compare_func">
+<parameter_description> the comparison function used to sort the #GSList.
+This function is passed the data from 2 elements of the #GSList
+and should return 0 if they are equal, a negative value if the
+first element comes before the second, or a positive value if
+the first element comes after the second.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new dictionary entry #GVariant
+<return> the start of the sorted #GSList
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__FLOAT">
+<function name="g_slist_sort_with_data">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gfloat arg1, gpointer user_data)&lt;/literal&gt;.
+Like g_slist_sort(), but the sort function accepts a user data argument.
+
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gfloat parameter
+<parameter name="list">
+<parameter_description> a #GSList
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="compare_func">
+<parameter_description> comparison function
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="user_data">
+<parameter_description> data to pass to comparison function
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> new head of the list
+</return>
 </function>
 
-<function name="g_key_file_set_string">
+<function name="g_snprintf">
 <description>
-Associates a new string value with @key under @group_name.  
-If @key cannot be found then it is created.  
-If @group_name cannot be found then it is created.
-Unlike g_key_file_set_value(), this function handles characters
-that need escaping, such as newlines.
+A safer form of the standard sprintf() function. The output is guaranteed
+to not exceed @n characters (including the terminating nul character), so
+it is easy to ensure that a buffer overflow cannot occur.
 
-Since: 2.6
+See also g_strdup_printf().
 
-</description>
-<parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> a string
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+In versions of GLib prior to 1.2.3, this function may return -1 if the
+output was truncated, and the truncated string may not be nul-terminated.
+In versions prior to 1.3.12, this function returns the length of the output
+string.
 
-<function name="g_key_file_get_boolean_list">
-<description>
-Returns the values associated with @key under @group_name as
-booleans. 
+The return value of g_snprintf() conforms to the snprintf()
+function as standardized in ISO C99. Note that this is different from
+traditional snprintf(), which returns the length of the output string.
 
-If @key cannot be found then %NULL is returned and @error is set to
-#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
-with @key cannot be interpreted as booleans then %NULL is returned
-and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+The format string may contain positional parameters, as specified in
+the Single Unix Specification.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="string">
+<parameter_description> the buffer to hold the output.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="n">
+<parameter_description> the maximum number of bytes to produce (including the
+terminating nul character).
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the number of booleans returned
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="Varargs">
+<parameter_description> the arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the values associated with the key as a list of
-booleans, or %NULL if the key was not found or could not be parsed.
-
+<return> the number of bytes which would be produced if the buffer 
+was large enough.
 </return>
 </function>
 
-<function name="g_variant_get_type">
+<function name="g_source_add_child_source">
 <description>
-Determines the type of @value.
+Adds @child_source to @source as a &quot;polled&quot; source; when @source is
+added to a #GMainContext, @child_source will be automatically added
+with the same priority, when @child_source is triggered, it will
+cause @source to dispatch (in addition to calling its own
+callback), and when @source is destroyed, it will destroy
+ child_source as well. (@source will also still be dispatched if
+its own prepare/check functions indicate that it is ready.)
 
-The return value is valid for the lifetime of @value and must not
-be freed.
+If you don't need @child_source to do anything on its own when it
+triggers, you can call g_source_set_dummy_callback() on it to set a
+callback that does nothing (except return %TRUE if appropriate).
 
-Since: 2.24
+ source will hold a reference on @child_source while @child_source
+is attached to it.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="source">
+<parameter_description>a #GSource
+</parameter_description>
+</parameter>
+<parameter name="child_source">
+<parameter_description> a second #GSource that @source should &quot;poll&quot;
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GVariantType
-</return>
+<return></return>
 </function>
 
-<function name="g_test_create_case">
+<function name="g_source_add_poll">
 <description>
-Create a new #GTestCase, named @test_name, this API is fairly
-low level, calling g_test_add() or g_test_add_func() is preferable.
-When this test is executed, a fixture structure of size @data_size
-will be allocated and filled with 0s. Then data_setup() is called
-to initialize the fixture. After fixture setup, the actual test
-function data_test() is called. Once the test run completed, the
-fixture structure is torn down  by calling data_teardown() and
-after that the memory is released.
-
-Splitting up a test run into fixture setup, test function and
-fixture teardown is most usful if the same fixture is used for
-multiple tests. In this cases, g_test_create_case() will be
-called with the same fixture, but varying @test_name and
- data_test arguments.
-
-Since: 2.16
+Adds a file descriptor to the set of file descriptors polled for
+this source. This is usually combined with g_source_new() to add an
+event source. The event source's check function will typically test
+the @revents field in the #GPollFD struct and return %TRUE if events need
+to be processed.
 
 </description>
 <parameters>
-<parameter name="test_name">
-<parameter_description>     the name for the test case
-</parameter_description>
-</parameter>
-<parameter name="data_size">
-<parameter_description>     the size of the fixture data structure
-</parameter_description>
-</parameter>
-<parameter name="test_data">
-<parameter_description>     test data argument for the test functions
-</parameter_description>
-</parameter>
-<parameter name="data_setup">
-<parameter_description>    the function to set up the fixture data
-</parameter_description>
-</parameter>
-<parameter name="data_test">
-<parameter_description>     the actual test function
+<parameter name="source">
+<parameter_description>a #GSource 
 </parameter_description>
 </parameter>
-<parameter name="data_teardown">
-<parameter_description> the function to teardown the fixture data
+<parameter name="fd">
+<parameter_description> a #GPollFD structure holding information about a file
+descriptor to watch.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GTestCase.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_markup_parse_context_get_user_data">
+<function name="g_source_attach">
 <description>
-Returns the user_data associated with @context.  This will either
-be the user_data that was provided to g_markup_parse_context_new()
-or to the most recent call of g_markup_parse_context_push().
+Adds a #GSource to a @context so that it will be executed within
+that context. Remove it by calling g_source_destroy().
 
-Since: 2.18
 
 </description>
 <parameters>
+<parameter name="source">
+<parameter_description> a #GSource
+</parameter_description>
+</parameter>
 <parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter_description> a #GMainContext (if %NULL, the default context will be used)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the provided user_data. The returned data belongs to
-the markup context and will be freed when g_markup_context_free()
-is called.
-
+<return> the ID (greater than 0) for the source within the 
+#GMainContext. 
 </return>
 </function>
 
-<function name="g_variant_type_is_array">
+<function name="g_source_destroy">
 <description>
-Determines if the given @type is an array type.  This is true if the
-type string for @type starts with an 'a'.
-
-This function returns %TRUE for any indefinite type for which every
-definite subtype is an array type -- %G_VARIANT_TYPE_ARRAY, for
-example.
-
-Since 2.24
+Removes a source from its #GMainContext, if any, and mark it as
+destroyed.  The source cannot be subsequently added to another
+context.
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is an array type
-</return>
+<return></return>
 </function>
 
-<function name="g_value_array_get_nth">
+<function name="g_source_get_can_recurse">
 <description>
-Return a pointer to the value at @index_ containd in @value_array.
+Checks whether a source is allowed to be called recursively.
+see g_source_set_can_recurse().
 
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to get a value from
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> index of the value of interest
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> pointer to a value at @index_ in @value_array
+<return> whether recursion is allowed.
 </return>
 </function>
 
-<function name="g_static_rec_mutex_trylock">
+<function name="g_source_get_context">
 <description>
-Tries to lock @mutex. If @mutex is already locked by another thread,
-it immediately returns %FALSE. Otherwise it locks @mutex and returns
-%TRUE. If @mutex is already locked by the calling thread, this
-functions increases the depth of @mutex and immediately returns
-%TRUE.
+Gets the #GMainContext with which the source is associated.
+Calling this function on a destroyed source is an error.
+
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to lock.
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, if @mutex could be locked.
+<return> the #GMainContext with which the source is associated,
+or %NULL if the context has not yet been added
+to a source.
 </return>
 </function>
 
-<function name="g_source_remove">
+<function name="g_source_get_current_time">
 <description>
-Removes the source with the given id from the default main context. 
-The id of
-a #GSource is given by g_source_get_id(), or will be returned by the
-functions g_source_attach(), g_idle_add(), g_idle_add_full(),
-g_timeout_add(), g_timeout_add_full(), g_child_watch_add(),
-g_child_watch_add_full(), g_io_add_watch(), and g_io_add_watch_full().
-
-See also g_source_destroy(). You must use g_source_destroy() for sources
-added to a non-default main context.
+Gets the &quot;current time&quot; to be used when checking 
+this source. The advantage of calling this function over
+calling g_get_current_time() directly is that when 
+checking multiple sources, GLib can cache a single value
+instead of having to repeatedly get the system time.
 
+Deprecated: 2.28: use g_source_get_time() instead
 
 </description>
 <parameters>
-<parameter name="tag">
-<parameter_description> the ID of the source to remove.
+<parameter name="source">
+<parameter_description>  a #GSource
+</parameter_description>
+</parameter>
+<parameter name="timeval">
+<parameter_description> #GTimeVal structure in which to store current time.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the source was found and removed.
-</return>
+<return></return>
 </function>
 
-<function name="g_ptr_array_set_free_func">
+<function name="g_source_get_id">
 <description>
-Sets a function for freeing each element when @array is destroyed
-either via g_ptr_array_unref(), when g_ptr_array_free() is called
-with @free_segment set to %TRUE or when removing elements.
+Returns the numeric ID for a particular source. The ID of a source
+is a positive integer which is unique within a particular main loop 
+context. The reverse
+mapping from ID to source is done by g_main_context_find_source_by_id().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="element_free_func">
-<parameter_description> A function to free elements with destroy @array or %NULL.
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the ID (greater than 0) for the source
+</return>
 </function>
 
-<function name="g_slist_insert_sorted_with_data">
+<function name="g_source_get_name">
 <description>
-Inserts a new element into the list, using the given 
-comparison function to determine its position.
+Gets a name for the source, used in debugging and profiling.
+The name may be #NULL if it has never been set with
+g_source_set_name().
 
-Since: 2.10
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to compare elements in the list. 
-It should return a number &gt; 0 if the first parameter 
-comes after the second parameter in the sort order.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to comparison function
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList
-
+<return> the name of the source
 </return>
 </function>
 
-<function name="g_strjoinv">
+<function name="g_source_get_priority">
 <description>
-Joins a number of strings together to form one long string, with the 
-optional @separator inserted between each of them. The returned string
-should be freed with g_free().
+Gets the priority of a source.
 
 
 </description>
 <parameters>
-<parameter name="separator">
-<parameter_description> a string to insert between each of the strings, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="str_array">
-<parameter_description> a %NULL-terminated array of strings to join
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string containing all of the strings joined
-together, with @separator between them
+<return> the priority of the source
 </return>
 </function>
 
-<function name="g_key_file_set_comment">
+<function name="g_source_get_time">
 <description>
-Places a comment above @key from @group_name.
-If @key is %NULL then @comment will be written above @group_name.  
-If both @key and @group_name  are %NULL, then @comment will be 
-written above the first group in the file.
+Gets the time to be used when checking this source. The advantage of
+calling this function over calling g_get_monotonic_time() directly is
+that when checking multiple sources, GLib can cache a single value
+instead of having to repeatedly get the system monotonic time.
 
-Since: 2.6
+The time here is the system monotonic time, if available, or some
+other reasonable alternative otherwise.  See g_get_monotonic_time().
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="comment">
-<parameter_description> a comment
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the comment was written, %FALSE otherwise
+<return> the monotonic time in microseconds
 
 </return>
 </function>
 
-<function name="g_type_class_add_private">
+<function name="g_source_is_destroyed">
 <description>
-Registers a private structure for an instantiatable type;
-when an object is allocated, the private structures for
-the type and all of its parent types are allocated
-sequentially in the same memory block as the public
-structures. This function should be called in the
-type's class_init() function. The private structure can
-be retrieved using the G_TYPE_INSTANCE_GET_PRIVATE() macro.
-The following example shows attaching a private structure
-&lt;structname&gt;MyObjectPrivate&lt;/structname&gt; to an object
-&lt;structname&gt;MyObject&lt;/structname&gt; defined in the standard GObject
-fashion.
-type's class_init() function.
-
-|[
-typedef struct _MyObject        MyObject;
-typedef struct _MyObjectPrivate MyObjectPrivate;
+Returns whether @source has been destroyed.
 
-struct _MyObject {
-GObject parent;
+This is important when you operate upon your objects 
+from within idle handlers, but may have freed the object 
+before the dispatch of your idle handler.
 
-MyObjectPrivate *priv;
-};
+|[
+static gboolean 
+idle_callback (gpointer data)
+{
+SomeWidget *self = data;
 
-struct _MyObjectPrivate {
-int some_field;
-};
+GDK_THREADS_ENTER (&lt;!-- --&gt;);
+/&lt;!-- --&gt;* do stuff with self *&lt;!-- --&gt;/
+self-&gt;idle_id = 0;
+GDK_THREADS_LEAVE (&lt;!-- --&gt;);
 
-static void
-my_object_class_init (MyObjectClass *klass)
-{
-g_type_class_add_private (klass, sizeof (MyObjectPrivate));
+return FALSE;
 }
 
-static void
-my_object_init (MyObject *my_object)
+static void 
+some_widget_do_stuff_later (SomeWidget *self)
 {
-my_object-&gt;priv = G_TYPE_INSTANCE_GET_PRIVATE (my_object,
-MY_TYPE_OBJECT,
-MyObjectPrivate);
+self-&gt;idle_id = g_idle_add (idle_callback, self);
 }
 
-static int
-my_object_get_some_field (MyObject *my_object)
+static void 
+some_widget_finalize (GObject *object)
 {
-MyObjectPrivate *priv = my_object-&gt;priv;
+SomeWidget *self = SOME_WIDGET (object);
 
-return priv-&gt;some_field;
+if (self-&gt;idle_id)
+g_source_remove (self-&gt;idle_id);
+
+G_OBJECT_CLASS (parent_class)-&gt;finalize (object);
 }
 ]|
 
-Since: 2.4
+This will fail in a multi-threaded application if the 
+widget is destroyed before the idle handler fires due 
+to the use after free in the callback. A solution, to 
+this particular problem, is to check to if the source
+has already been destroy within the callback.
 
-</description>
-<parameters>
-<parameter name="g_class">
-<parameter_description> class structure for an instantiatable type
-</parameter_description>
-</parameter>
-<parameter name="private_size">
-<parameter_description> size of private structure.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+|[
+static gboolean 
+idle_callback (gpointer data)
+{
+SomeWidget *self = data;
 
-<function name="g_quark_try_string">
-<description>
-Gets the #GQuark associated with the given string, or 0 if string is
-%NULL or it has no associated #GQuark.
+GDK_THREADS_ENTER ();
+if (!g_source_is_destroyed (g_main_current_source ()))
+{
+/&lt;!-- --&gt;* do stuff with self *&lt;!-- --&gt;/
+}
+GDK_THREADS_LEAVE ();
 
-If you want the GQuark to be created if it doesn't already exist,
-use g_quark_from_string() or g_quark_from_static_string().
+return FALSE;
+}
+]|
+
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a string.
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GQuark associated with the string, or 0 if @string is
-%NULL or there is no #GQuark associated with it.
+<return> %TRUE if the source has been destroyed
+
 </return>
 </function>
 
-<function name="g_printf">
+<function name="g_source_new">
 <description>
-An implementation of the standard printf() function which supports 
-positional parameters, as specified in the Single Unix Specification.
+Creates a new #GSource structure. The size is specified to
+allow creating structures derived from #GSource that contain
+additional data. The size passed in must be at least
+&lt;literal&gt;sizeof (GSource)&lt;/literal&gt;.
+
+The source will not initially be associated with any #GMainContext
+and must be added to one with g_source_attach() before it will be
+executed.
 
-Since: 2.2
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice 
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="source_funcs">
+<parameter_description> structure containing functions that implement
+the sources behavior.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to insert in the output.
+<parameter name="struct_size">
+<parameter_description> size of the #GSource structure to create.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
-
+<return> the newly-created #GSource.
 </return>
 </function>
 
-<function name="g_queue_clear">
+<function name="g_source_ref">
 <description>
-Removes all the elements in @queue. If queue elements contain
-dynamically-allocated memory, they should be freed first.
+Increases the reference count on a source by one.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @source
+</return>
 </function>
 
-<function name="g_setenv">
+<function name="g_source_remove">
 <description>
-Sets an environment variable. Both the variable's name and value
-should be in the GLib file name encoding. On UNIX, this means that
-they can be any sequence of bytes. On Windows, they should be in
-UTF-8.
+Removes the source with the given id from the default main context. 
+The id of
+a #GSource is given by g_source_get_id(), or will be returned by the
+functions g_source_attach(), g_idle_add(), g_idle_add_full(),
+g_timeout_add(), g_timeout_add_full(), g_child_watch_add(),
+g_child_watch_add_full(), g_io_add_watch(), and g_io_add_watch_full().
 
-Note that on some systems, when variables are overwritten, the memory 
-used for the previous variables and its value isn't reclaimed.
+See also g_source_destroy(). You must use g_source_destroy() for sources
+added to a non-default main context.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="variable">
-<parameter_description> the environment variable to set, must not contain '='.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value for to set the variable to.
-</parameter_description>
-</parameter>
-<parameter name="overwrite">
-<parameter_description> whether to change the variable if it already exists.
+<parameter name="tag">
+<parameter_description> the ID of the source to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %FALSE if the environment variable couldn't be set.
-
+<return> %TRUE if the source was found and removed.
 </return>
 </function>
 
-<function name="g_slist_insert">
+<function name="g_source_remove_by_funcs_user_data">
 <description>
-Inserts a new element into the list at the given position.
+Removes a source from the default main loop context given the
+source functions and user data. If multiple sources exist with the
+same source functions and user data, only one will be destroyed.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="funcs">
+<parameter_description> The @source_funcs passed to g_source_new()
 </parameter_description>
 </parameter>
-<parameter name="position">
-<parameter_description> the position to insert the element. 
-If this is negative, or is larger than the number 
-of elements in the list, the new element is added on
-to the end of the list.
+<parameter name="user_data">
+<parameter_description> the user data for the callback
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList
+<return> %TRUE if a source was found and removed. 
 </return>
 </function>
 
-<function name="g_node_is_ancestor">
+<function name="g_source_remove_by_user_data">
 <description>
-Returns %TRUE if @node is an ancestor of @descendant.
-This is true if node is the parent of @descendant, 
-or if node is the grandparent of @descendant etc.
+Removes a source from the default main loop context given the user
+data for the callback. If multiple sources exist with the same user
+data, only one will be destroyed.
 
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
-</parameter_description>
-</parameter>
-<parameter name="descendant">
-<parameter_description> a #GNode
+<parameter name="user_data">
+<parameter_description> the user_data for the callback.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @node is an ancestor of @descendant
+<return> %TRUE if a source was found and removed. 
 </return>
 </function>
 
-<function name="g_convert_with_fallback">
+<function name="g_source_remove_child_source">
 <description>
-Converts a string from one character set to another, possibly
-including fallback sequences for characters not representable
-in the output. Note that it is not guaranteed that the specification
-for the fallback sequences in @fallback will be honored. Some
-systems may do an approximate conversion from @from_codeset
-to @to_codeset in their iconv() functions, 
-in which case GLib will simply return that approximate conversion.
-
-Note that you should use g_iconv() for streaming 
-conversions&lt;footnoteref linkend=&quot;streaming-state&quot;/&gt;.
+Detaches @child_source from @source and destroys it.
 
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description>          the string to convert
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description>          the length of the string, or -1 if the string is 
-nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
-</parameter_description>
-</parameter>
-<parameter name="to_codeset">
-<parameter_description>   name of character set into which to convert @str
-</parameter_description>
-</parameter>
-<parameter name="from_codeset">
-<parameter_description> character set of @str.
-</parameter_description>
-</parameter>
-<parameter name="fallback">
-<parameter_description>     UTF-8 string to use in place of character not
-present in the target encoding. (The string must be
-representable in the target encoding). 
-                  If %NULL, characters not in the target encoding will 
-                  be represented as Unicode escapes \uxxxx or \Uxxxxyyyy.
-</parameter_description>
-</parameter>
-<parameter name="bytes_read">
-<parameter_description>   location to store the number of bytes in the
-input string that were successfully converted, or %NULL.
-Even if the conversion was successful, this may be 
-less than @len if there were partial characters
-at the end of the input.
-</parameter_description>
-</parameter>
-<parameter name="bytes_written">
-<parameter_description> the number of bytes stored in the output buffer (not 
-including the terminating nul).
+<parameter name="source">
+<parameter_description>a #GSource
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description>        location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
+<parameter name="child_source">
+<parameter_description> a #GSource previously passed to
+g_source_add_child_source().
 </parameter_description>
 </parameter>
 </parameters>
-<return> If the conversion was successful, a newly allocated
-nul-terminated string, which must be freed with
-g_free(). Otherwise %NULL and @error will be set.
-</return>
+<return></return>
 </function>
 
-<function name="g_object_add_weak_pointer">
+<function name="g_source_remove_poll">
 <description>
-Adds a weak reference from weak_pointer to @object to indicate that
-the pointer located at @weak_pointer_location is only valid during
-the lifetime of @object. When the @object is finalized,
- weak_pointer will be set to %NULL.
+Removes a file descriptor from the set of file descriptors polled for
+this source. 
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> The object that should be weak referenced.
+<parameter name="source">
+<parameter_description>a #GSource 
 </parameter_description>
 </parameter>
-<parameter name="weak_pointer_location">
-<parameter_description> The memory address of a pointer.
+<parameter name="fd">
+<parameter_description> a #GPollFD structure previously passed to g_source_add_poll().
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_bookmark_file_set_modified">
+<function name="g_source_set_callback">
 <description>
-Sets the last time the bookmark for @uri was last modified.
-
-If no bookmark for @uri is found then it is created.
+Sets the callback function for a source. The callback for a source is
+called from the source's dispatch function.
 
-The &quot;modified&quot; time should only be set when the bookmark's meta-data
-was actually changed.  Every function of #GBookmarkFile that
-modifies a bookmark also changes the modification time, except for
-g_bookmark_file_set_visited().
+The exact type of @func depends on the type of source; ie. you
+should not count on @func being called with @data as its first
+parameter.
 
-Since: 2.12
+Typically, you won't use this function. Instead use functions specific
+to the type of source you are using.
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="source">
+<parameter_description> the source
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="func">
+<parameter_description> a callback function
 </parameter_description>
 </parameter>
-<parameter name="modified">
-<parameter_description> a timestamp or -1 to use the current time
+<parameter name="data">
+<parameter_description> the data to pass to callback function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a function to call when @data is no longer in use, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_param_spec_value_array">
+<function name="g_source_set_callback_indirect">
 <description>
-Creates a new #GParamSpecValueArray instance specifying a
-%G_TYPE_VALUE_ARRAY property. %G_TYPE_VALUE_ARRAY is a
-%G_TYPE_BOXED type, as such, #GValue structures for this property
-can be accessed with g_value_set_boxed() and g_value_get_boxed().
-
-See g_param_spec_internal() for details on property names.
-
+Sets the callback function storing the data as a refcounted callback
+&quot;object&quot;. This is used internally. Note that calling 
+g_source_set_callback_indirect() assumes
+an initial reference count on @callback_data, and thus
+ callback_funcs-&gt;unref will eventually be called once more
+than @callback_funcs-&gt;ref.
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="source">
+<parameter_description> the source
 </parameter_description>
 </parameter>
-<parameter name="element_spec">
-<parameter_description> a #GParamSpec describing the elements contained in
-arrays of this property, may be %NULL
+<parameter name="callback_data">
+<parameter_description> pointer to callback data &quot;object&quot;
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="callback_funcs">
+<parameter_description> functions for reference counting @callback_data
+and getting the callback and data
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
-</return>
+<return></return>
 </function>
 
-<function name="g_completion_complete">
+<function name="g_source_set_can_recurse">
 <description>
-Attempts to complete the string @prefix using the #GCompletion
-target items.
-
-Deprecated: 2.26: Rarely used API
+Sets whether a source can be called recursively. If @can_recurse is
+%TRUE, then while the source is being dispatched then this source
+will be processed normally. Otherwise, all processing of this
+source is blocked until the dispatch function returns.
 
 </description>
 <parameters>
-<parameter name="cmp">
-<parameter_description> the #GCompletion.
-</parameter_description>
-</parameter>
-<parameter name="prefix">
-<parameter_description> the prefix string, typically typed by the user, which is
-compared with each of the items.
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
-<parameter name="new_prefix">
-<parameter_description> if non-%NULL, returns the longest prefix which is
-common to all items that matched @prefix, or %NULL if
-no items matched @prefix.  This string should be freed
-when no longer needed.
+<parameter name="can_recurse">
+<parameter_description> whether recursion is allowed for this source
 </parameter_description>
 </parameter>
 </parameters>
-<return> the list of items whose strings begin with @prefix. This
-should not be changed.
-</return>
+<return></return>
 </function>
 
-<function name="g_string_ascii_down">
+<function name="g_source_set_funcs">
 <description>
-Converts all upper case ASCII letters to lower case ASCII letters.
+Sets the source functions (can be used to override 
+default implementations) of an unattached source.
 
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a GString
+<parameter name="source">
+<parameter_description> a #GSource
+</parameter_description>
+</parameter>
+<parameter name="funcs">
+<parameter_description> the new #GSourceFuncs
 </parameter_description>
 </parameter>
 </parameters>
-<return> passed-in @string pointer, with all the upper case
-characters converted to lower case in place, with
-semantics that exactly match g_ascii_tolower().
-</return>
+<return></return>
 </function>
 
-<function name="g_bookmark_file_get_icon">
+<function name="g_source_set_name">
 <description>
-Gets the icon of the bookmark for @uri.
+Sets a name for the source, used in debugging and profiling.
+The name defaults to #NULL.
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+The source name should describe in a human-readable way
+what the source does. For example, &quot;X11 event queue&quot;
+or &quot;GTK+ repaint idle handler&quot; or whatever it is.
 
-Since: 2.12
+It is permitted to call this function multiple times, but is not
+recommended due to the potential performance impact.  For example,
+one could change the name in the &quot;check&quot; function of a #GSourceFuncs 
+to include details like the event type in the source name.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="href">
-<parameter_description> return location for the icon's location or %NULL
-</parameter_description>
-</parameter>
-<parameter name="mime_type">
-<parameter_description> return location for the icon's MIME type or %NULL
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="name">
+<parameter_description> debug name for the source
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the icon for the bookmark for the URI was found.
-You should free the returned strings.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_strdup">
+<function name="g_source_set_name_by_id">
 <description>
-Duplicates a string. If @str is %NULL it returns %NULL.
-The returned string should be freed with g_free() 
-when no longer needed.
+Sets the name of a source using its ID.
+
+This is a convenience utility to set source names from the return
+value of g_idle_add(), g_timeout_add(), etc.
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> the string to duplicate
+<parameter name="tag">
+<parameter_description> a #GSource ID
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> debug name for the source
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated copy of @str
-</return>
-</function>
-
-<function name="g_thread_get_initialized">
-<description>
-Indicates if g_thread_init() has been called.
-
-Since: 2.20
-
-</description>
-<parameters>
-</parameters>
-<return> %TRUE if threads have been initialized.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_rand_set_seed">
+<function name="g_source_set_priority">
 <description>
-Sets the seed for the random number generator #GRand to @seed.
+Sets the priority of a source. While the main loop is being run, a
+source will be dispatched if it is ready to be dispatched and no
+sources at a higher (numerically smaller) priority are ready to be
+dispatched.
 
 </description>
 <parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
-<parameter name="seed">
-<parameter_description> a value to reinitialize the random number generator.
+<parameter name="priority">
+<parameter_description> the new priority.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_array_free">
+<function name="g_source_unref">
 <description>
-Free a #GValueArray including its contents.
+Decreases the reference count of a source by one. If the
+resulting reference count is zero the source and associated
+memory will be destroyed. 
 
 </description>
 <parameters>
-<parameter name="value_array">
-<parameter_description> #GValueArray to free
+<parameter name="source">
+<parameter_description> a #GSource
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_object_bind_property_full">
+<function name="g_spawn_async">
 <description>
-Complete version of g_object_bind_property().
-
-Creates a binding between @source_property on @source and @target_property
-on @target, allowing you to set the transformation functions to be used by
-the binding.
-
-If @flags contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
-if @target_property on @target changes then the @source_property on @source
-will be updated as well. The @transform_from function is only used in case
-of bidirectional bindings, otherwise it will be ignored
+See g_spawn_async_with_pipes() for a full description; this function
+simply calls the g_spawn_async_with_pipes() without any pipes.
 
-The binding will automatically be removed when either the @source or the
- target instances are finalized. To remove the binding without affecting the
- source and the @target you can just call g_object_unref() on the returned
-#GBinding instance.
+You should call g_spawn_close_pid() on the returned child process
+reference when you don't need it any more.
 
-A #GObject can have multiple bindings.
+&lt;note&gt;&lt;para&gt;
+If you are writing a GTK+ application, and the program you 
+are spawning is a graphical application, too, then you may
+want to use gdk_spawn_on_screen() instead to ensure that 
+the spawned program opens its windows on the right screen.
+&lt;/para&gt;&lt;/note&gt;
 
-&lt;note&gt;The same @user_data parameter will be used for both @transform_to
-and @transform_from transformation functions; the @notify function will
-be called once, when the binding is removed. If you need different data
-for each transformation function, please use
-g_object_bind_property_with_closures() instead.&lt;/note&gt;
+&lt;note&gt;&lt;para&gt; Note that the returned @child_pid on Windows is a
+handle to the child process and not its identifier. Process handles
+and process identifiers are different concepts on Windows.
+&lt;/para&gt;&lt;/note&gt;
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> the source #GObject
-</parameter_description>
-</parameter>
-<parameter name="source_property">
-<parameter_description> the property on @source to bind
+<parameter name="working_directory">
+<parameter_description> child's current working directory, or %NULL to inherit parent's
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description> the target #GObject
+<parameter name="argv">
+<parameter_description> child's argument vector
 </parameter_description>
 </parameter>
-<parameter name="target_property">
-<parameter_description> the property on @target to bind
+<parameter name="envp">
+<parameter_description> child's environment, or %NULL to inherit parent's
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> flags to pass to #GBinding
+<parameter_description> flags from #GSpawnFlags
 </parameter_description>
 </parameter>
-<parameter name="transform_to">
-<parameter_description> the transformation function
-from the @source to the @target, or %NULL to use the default
+<parameter name="child_setup">
+<parameter_description> function to run in the child just before exec()
 </parameter_description>
 </parameter>
-<parameter name="transform_from">
-<parameter_description> the transformation function
-from the @target to the @source, or %NULL to use the default
+<parameter name="user_data">
+<parameter_description> user data for @child_setup
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> custom data to be passed to the transformation functions,
-or %NULL
+<parameter name="child_pid">
+<parameter_description> return location for child process reference, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> function to be called when disposing the binding, to free the
-resources used by the transformation functions
+<parameter name="error">
+<parameter_description> return location for error
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GBinding instance representing the
-binding between the two #GObject instances. The binding is released
-whenever the #GBinding reference count reaches zero.
-
+<return> %TRUE on success, %FALSE if error is set
 </return>
 </function>
 
-<function name="g_object_get_data">
+<function name="g_spawn_async_with_pipes">
 <description>
-Gets a named field from the objects table of associations (see g_object_set_data()).
+Executes a child program asynchronously (your program will not
+block waiting for the child to exit). The child program is
+specified by the only argument that must be provided, @argv. @argv
+should be a %NULL-terminated array of strings, to be passed as the
+argument vector for the child. The first string in @argv is of
+course the name of the program to execute. By default, the name of
+the program must be a full path; the &lt;envar&gt;PATH&lt;/envar&gt; shell variable 
+will only be searched if you pass the %G_SPAWN_SEARCH_PATH flag.
 
+On Windows, note that all the string or string vector arguments to
+this function and the other g_spawn*() functions are in UTF-8, the
+GLib file name encoding. Unicode characters that are not part of
+the system codepage passed in these arguments will be correctly
+available in the spawned program only if it uses wide character API
+to retrieve its command line. For C programs built with Microsoft's
+tools it is enough to make the program have a wmain() instead of
+main(). wmain() has a wide character argument vector as parameter.
 
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> #GObject containing the associations
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> name of the key for that association
-</parameter_description>
-</parameter>
-</parameters>
-<return> the data if found, or %NULL if no such data exists.
-</return>
-</function>
+At least currently, mingw doesn't support wmain(), so if you use
+mingw to develop the spawned program, it will have to call the
+undocumented function __wgetmainargs() to get the wide character
+argument vector and environment. See gspawn-win32-helper.c in the
+GLib sources or init.c in the mingw runtime sources for a prototype
+for that function. Alternatively, you can retrieve the Win32 system
+level wide character command line passed to the spawned program
+using the GetCommandLineW() function.
 
-<function name="g_key_file_get_keys">
-<description>
-Returns all keys for the group name @group_name.  The array of
-returned keys will be %NULL-terminated, so @length may
-optionally be %NULL. In the event that the @group_name cannot
-be found, %NULL is returned and @error is set to
-#G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+On Windows the low-level child process creation API
+&lt;function&gt;CreateProcess()&lt;/function&gt; doesn't use argument vectors,
+but a command line. The C runtime library's
+&lt;function&gt;spawn*()&lt;/function&gt; family of functions (which
+g_spawn_async_with_pipes() eventually calls) paste the argument
+vector elements together into a command line, and the C runtime startup code
+does a corresponding reconstruction of an argument vector from the
+command line, to be passed to main(). Complications arise when you have
+argument vector elements that contain spaces of double quotes. The
+&lt;function&gt;spawn*()&lt;/function&gt; functions don't do any quoting or
+escaping, but on the other hand the startup code does do unquoting
+and unescaping in order to enable receiving arguments with embedded
+spaces or double quotes. To work around this asymmetry,
+g_spawn_async_with_pipes() will do quoting and escaping on argument
+vector elements that need it before calling the C runtime
+spawn() function.
 
-Since: 2.6
+The returned @child_pid on Windows is a handle to the child
+process, not its identifier. Process handles and process
+identifiers are different concepts on Windows.
 
-</description>
-<parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location for the number of keys returned, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> a newly-allocated %NULL-terminated array of strings. 
-Use g_strfreev() to free it.
+ envp is a %NULL-terminated array of strings, where each string
+has the form &lt;literal&gt;KEY=VALUE&lt;/literal&gt;. This will become
+the child's environment. If @envp is %NULL, the child inherits its
+parent's environment.
 
-</return>
-</function>
+ flags should be the bitwise OR of any flags you want to affect the
+function's behaviour. The %G_SPAWN_DO_NOT_REAP_CHILD means that 
+the child will not automatically be reaped; you must use a
+#GChildWatch source to be notified about the death of the child 
+process. Eventually you must call g_spawn_close_pid() on the
+ child_pid, in order to free resources which may be associated
+with the child process. (On Unix, using a #GChildWatch source is
+equivalent to calling waitpid() or handling the %SIGCHLD signal 
+manually. On Windows, calling g_spawn_close_pid() is equivalent
+to calling CloseHandle() on the process handle returned in 
+ child_pid).
 
-<function name="g_value_set_uchar">
-<description>
-Set the contents of a %G_TYPE_UCHAR #GValue to @v_uchar.
+%G_SPAWN_LEAVE_DESCRIPTORS_OPEN means that the parent's open file
+descriptors will be inherited by the child; otherwise all
+descriptors except stdin/stdout/stderr will be closed before
+calling exec() in the child. %G_SPAWN_SEARCH_PATH 
+means that &lt;literal&gt;argv[0]&lt;/literal&gt; need not be an absolute path, it
+will be looked for in the user's &lt;envar&gt;PATH&lt;/envar&gt;. 
+%G_SPAWN_STDOUT_TO_DEV_NULL means that the child's standard output will 
+be discarded, instead of going to the same location as the parent's 
+standard output. If you use this flag, @standard_output must be %NULL.
+%G_SPAWN_STDERR_TO_DEV_NULL means that the child's standard error
+will be discarded, instead of going to the same location as the parent's
+standard error. If you use this flag, @standard_error must be %NULL.
+%G_SPAWN_CHILD_INHERITS_STDIN means that the child will inherit the parent's
+standard input (by default, the child's standard input is attached to
+/dev/null). If you use this flag, @standard_input must be %NULL.
+%G_SPAWN_FILE_AND_ARGV_ZERO means that the first element of @argv is
+the file to execute, while the remaining elements are the
+actual argument vector to pass to the file. Normally
+g_spawn_async_with_pipes() uses @argv[0] as the file to execute, and
+passes all of @argv to the child.
 
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_UCHAR
-</parameter_description>
-</parameter>
-<parameter name="v_uchar">
-<parameter_description> unsigned character value to be set
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+ child_setup and @user_data are a function and user data. On POSIX
+platforms, the function is called in the child after GLib has
+performed all the setup it plans to perform (including creating
+pipes, closing file descriptors, etc.) but before calling
+exec(). That is, @child_setup is called just
+before calling exec() in the child. Obviously
+actions taken in this function will only affect the child, not the
+parent.
 
-<function name="g_mem_is_system_malloc">
-<description>
-Checks whether the allocator used by g_malloc() is the system's
-malloc implementation. If it returns %TRUE memory allocated with
-malloc() can be used interchangeable with memory allocated using g_malloc(). 
-This function is useful for avoiding an extra copy of allocated memory returned
-by a non-GLib-based API.
+On Windows, there is no separate fork() and exec()
+functionality. Child processes are created and run with a single
+API call, CreateProcess(). There is no sensible thing @child_setup
+could be used for on Windows so it is ignored and not called.
 
-A different allocator can be set using g_mem_set_vtable().
+If non-%NULL, @child_pid will on Unix be filled with the child's
+process ID. You can use the process ID to send signals to the
+child, or to use g_child_watch_add() (or waitpid()) if you specified the
+%G_SPAWN_DO_NOT_REAP_CHILD flag. On Windows, @child_pid will be
+filled with a handle to the child process only if you specified the
+%G_SPAWN_DO_NOT_REAP_CHILD flag. You can then access the child
+process using the Win32 API, for example wait for its termination
+with the &lt;function&gt;WaitFor*()&lt;/function&gt; functions, or examine its
+exit code with GetExitCodeProcess(). You should close the handle 
+with CloseHandle() or g_spawn_close_pid() when you no longer need it.
 
+If non-%NULL, the @standard_input, @standard_output, @standard_error
+locations will be filled with file descriptors for writing to the child's
+standard input or reading from its standard output or standard error.
+The caller of g_spawn_async_with_pipes() must close these file descriptors
+when they are no longer in use. If these parameters are %NULL, the corresponding
+pipe won't be created.
 
-</description>
-<parameters>
-</parameters>
-<return> if %TRUE, malloc() and g_malloc() can be mixed.
-</return>
-</function>
+If @standard_input is NULL, the child's standard input is attached to 
+/dev/null unless %G_SPAWN_CHILD_INHERITS_STDIN is set.
 
-<function name="g_mem_chunk_alloc">
-<description>
-Allocates an atom of memory from a #GMemChunk.
+If @standard_error is NULL, the child's standard error goes to the same 
+location as the parent's standard error unless %G_SPAWN_STDERR_TO_DEV_NULL 
+is set.
 
-Deprecated:2.10: Use g_slice_alloc() instead
+If @standard_output is NULL, the child's standard output goes to the same 
+location as the parent's standard output unless %G_SPAWN_STDOUT_TO_DEV_NULL 
+is set.
 
-</description>
-<parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to the allocated atom.
-</return>
-</function>
+ error can be %NULL to ignore errors, or non-%NULL to report errors.
+If an error is set, the function returns %FALSE. Errors
+are reported even if they occur in the child (for example if the
+executable in &lt;literal&gt;argv[0]&lt;/literal&gt; is not found). Typically
+the &lt;literal&gt;message&lt;/literal&gt; field of returned errors should be displayed
+to users. Possible errors are those from the #G_SPAWN_ERROR domain.
 
-<function name="g_parse_debug_string">
-<description>
-Parses a string containing debugging options
-into a %guint containing bit flags. This is used 
-within GDK and GTK+ to parse the debug options passed on the
-command line or through environment variables.
+If an error occurs, @child_pid, @standard_input, @standard_output,
+and @standard_error will not be filled with valid values.
 
-If @string is equal to &quot;all&quot;, all flags are set.  If @string
-is equal to &quot;help&quot;, all the available keys in @keys are printed
-out to standard error.
+If @child_pid is not %NULL and an error does not occur then the returned
+process reference must be closed using g_spawn_close_pid().
+
+&lt;note&gt;&lt;para&gt;
+If you are writing a GTK+ application, and the program you 
+are spawning is a graphical application, too, then you may
+want to use gdk_spawn_on_screen_with_pipes() instead to ensure that 
+the spawned program opens its windows on the right screen.
+&lt;/para&gt;&lt;/note&gt;
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a list of debug options separated by colons, spaces, or
-commas, or %NULL.
+<parameter name="working_directory">
+<parameter_description> child's current working directory, or %NULL to inherit parent's, in the GLib file name encoding
 </parameter_description>
 </parameter>
-<parameter name="keys">
-<parameter_description> pointer to an array of #GDebugKey which associate 
-strings with bit flags.
+<parameter name="argv">
+<parameter_description> child's argument vector, in the GLib file name encoding
 </parameter_description>
 </parameter>
-<parameter name="nkeys">
-<parameter_description> the number of #GDebugKey&lt;!-- --&gt;s in the array.
+<parameter name="envp">
+<parameter_description> child's environment, or %NULL to inherit parent's, in the GLib file name encoding
 </parameter_description>
 </parameter>
-</parameters>
-<return> the combined set of bit flags.
-</return>
-</function>
-
-<function name="g_static_mutex_init">
-<description>
-Initializes @mutex. Alternatively you can initialize it with
-#G_STATIC_MUTEX_INIT.
-
-</description>
-<parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticMutex to be initialized.
+<parameter name="flags">
+<parameter_description> flags from #GSpawnFlags
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_param_spec_get_nick">
-<description>
-Get the nickname of a #GParamSpec.
-
-
-</description>
-<parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="child_setup">
+<parameter_description> function to run in the child just before exec()
 </parameter_description>
 </parameter>
-</parameters>
-<return> the nickname of @pspec.
-</return>
-</function>
-
-<function name="g_object_force_floating">
-<description>
-This function is intended for #GObject implementations to re-enforce a
-&lt;link linkend=&quot;floating-ref&quot;&gt;floating&lt;/link&gt; object reference.
-Doing this is seldomly required, all
-#GInitiallyUnowned&lt;!-- --&gt;s are created with a floating reference which
-usually just needs to be sunken by calling g_object_ref_sink().
-
-Since: 2.10
-
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="user_data">
+<parameter_description> user data for @child_setup
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_pointer_type_register_static">
-<description>
-Creates a new %G_TYPE_POINTER derived type id for a new
-pointer type with name @name.
-
-
-</description>
-<parameters>
-<parameter name="name">
-<parameter_description> the name of the new pointer type.
+<parameter name="child_pid">
+<parameter_description> return location for child process ID, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="standard_input">
+<parameter_description> return location for file descriptor to write to child's stdin, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="standard_output">
+<parameter_description> return location for file descriptor to read child's stdout, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="standard_error">
+<parameter_description> return location for file descriptor to read child's stderr, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for error
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new %G_TYPE_POINTER derived type id for @name.
+<return> %TRUE on success, %FALSE if an error was set
 </return>
 </function>
 
-<function name="g_hash_table_iter_remove">
+<function name="g_spawn_close_pid">
 <description>
-Removes the key/value pair currently pointed to by the iterator
-from its associated #GHashTable. Can only be called after
-g_hash_table_iter_next() returned %TRUE, and cannot be called more
-than once for the same key/value pair.
-
-If the #GHashTable was created using g_hash_table_new_full(), the
-key and value are freed using the supplied destroy functions, otherwise
-you have to make sure that any dynamically allocated values are freed 
-yourself.
-
-Since: 2.16
+On some platforms, notably Windows, the #GPid type represents a resource
+which must be closed to prevent resource leaking. g_spawn_close_pid()
+is provided for this purpose. It should be used on all platforms, even
+though it doesn't do anything under UNIX.
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> an initialized #GHashTableIter.
+<parameter name="pid">
+<parameter_description> The process reference to close
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_double_equal">
+<function name="g_spawn_command_line_async">
 <description>
-Compares the two #gdouble values being pointed to and returns 
-%TRUE if they are equal.
-It can be passed to g_hash_table_new() as the @key_equal_func
-parameter, when using pointers to doubles as keys in a #GHashTable.
+A simple version of g_spawn_async() that parses a command line with
+g_shell_parse_argv() and passes it to g_spawn_async(). Runs a
+command line in the background. Unlike g_spawn_async(), the
+%G_SPAWN_SEARCH_PATH flag is enabled, other flags are not. Note
+that %G_SPAWN_SEARCH_PATH can have security implications, so
+consider using g_spawn_async() directly if appropriate. Possible
+errors are those from g_shell_parse_argv() and g_spawn_async().
+
+The same concerns on Windows apply as for g_spawn_command_line_sync().
 
-Since: 2.22
 
 </description>
 <parameters>
-<parameter name="v1">
-<parameter_description> a pointer to a #gdouble key.
+<parameter name="command_line">
+<parameter_description> a command line
 </parameter_description>
 </parameter>
-<parameter name="v2">
-<parameter_description> a pointer to a #gdouble key to compare with @v1.
+<parameter name="error">
+<parameter_description> return location for errors
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the two keys match.
-
+<return> %TRUE on success, %FALSE if error is set.
 </return>
 </function>
 
-<function name="g_closure_add_marshal_guards">
+<function name="g_spawn_command_line_sync">
 <description>
-Adds a pair of notifiers which get invoked before and after the
-closure callback, respectively. This is typically used to protect
-the extra arguments for the duration of the callback. See
-g_object_watch_closure() for an example of marshal guards.
+A simple version of g_spawn_sync() with little-used parameters
+removed, taking a command line instead of an argument vector.  See
+g_spawn_sync() for full details. @command_line will be parsed by
+g_shell_parse_argv(). Unlike g_spawn_sync(), the %G_SPAWN_SEARCH_PATH flag
+is enabled. Note that %G_SPAWN_SEARCH_PATH can have security
+implications, so consider using g_spawn_sync() directly if
+appropriate. Possible errors are those from g_spawn_sync() and those
+from g_shell_parse_argv().
+
+If @exit_status is non-%NULL, the exit status of the child is stored there as
+it would be returned by waitpid(); standard UNIX macros such as WIFEXITED()
+and WEXITSTATUS() must be used to evaluate the exit status.
+
+On Windows, please note the implications of g_shell_parse_argv()
+parsing @command_line. Parsing is done according to Unix shell rules, not 
+Windows command interpreter rules.
+Space is a separator, and backslashes are
+special. Thus you cannot simply pass a @command_line containing
+canonical Windows paths, like &quot;c:\\program files\\app\\app.exe&quot;, as
+the backslashes will be eaten, and the space will act as a
+separator. You need to enclose such paths with single quotes, like
+&quot;'c:\\program files\\app\\app.exe' 'e:\\folder\\argument.txt'&quot;.
+
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
+<parameter name="command_line">
+<parameter_description> a command line 
 </parameter_description>
 </parameter>
-<parameter name="pre_marshal_data">
-<parameter_description> data to pass to @pre_marshal_notify
+<parameter name="standard_output">
+<parameter_description> return location for child output
 </parameter_description>
 </parameter>
-<parameter name="pre_marshal_notify">
-<parameter_description> a function to call before the closure callback
+<parameter name="standard_error">
+<parameter_description> return location for child errors
 </parameter_description>
 </parameter>
-<parameter name="post_marshal_data">
-<parameter_description> data to pass to @post_marshal_notify
+<parameter name="exit_status">
+<parameter_description> return location for child exit status, as returned by waitpid()
 </parameter_description>
 </parameter>
-<parameter name="post_marshal_notify">
-<parameter_description> a function to call after the closure callback
+<parameter name="error">
+<parameter_description> return location for errors
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on success, %FALSE if an error was set
+</return>
 </function>
 
-<function name="g_value_get_uint">
+<function name="g_spawn_sync">
 <description>
-Get the contents of a %G_TYPE_UINT #GValue.
+Executes a child synchronously (waits for the child to exit before returning).
+All output from the child is stored in @standard_output and @standard_error,
+if those parameters are non-%NULL. Note that you must set the  
+%G_SPAWN_STDOUT_TO_DEV_NULL and %G_SPAWN_STDERR_TO_DEV_NULL flags when
+passing %NULL for @standard_output and @standard_error.
+If @exit_status is non-%NULL, the exit status of the child is stored
+there as it would be returned by waitpid(); standard UNIX macros such 
+as WIFEXITED() and WEXITSTATUS() must be used to evaluate the exit status.
+Note that this function call waitpid() even if @exit_status is %NULL, and
+does not accept the %G_SPAWN_DO_NOT_REAP_CHILD flag.
+If an error occurs, no data is returned in @standard_output, 
+ standard_error, or @exit_status. 
+
+This function calls g_spawn_async_with_pipes() internally; see that
+function for full details on the other parameters and details on
+how these functions work on Windows.
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_UINT
+<parameter name="working_directory">
+<parameter_description> child's current working directory, or %NULL to inherit parent's
 </parameter_description>
 </parameter>
-</parameters>
-<return> unsigned integer contents of @value
-</return>
-</function>
-
-<function name="g_node_traverse">
-<description>
-Traverses a tree starting at the given root #GNode.
-It calls the given function for each node visited.
-The traversal can be halted at any point by returning %TRUE from @func.
-
-</description>
-<parameters>
-<parameter name="root">
-<parameter_description> the root #GNode of the tree to traverse
+<parameter name="argv">
+<parameter_description> child's argument vector
 </parameter_description>
 </parameter>
-<parameter name="order">
-<parameter_description> the order in which nodes are visited - %G_IN_ORDER, 
-%G_PRE_ORDER, %G_POST_ORDER, or %G_LEVEL_ORDER.
+<parameter name="envp">
+<parameter_description> child's environment, or %NULL to inherit parent's
 </parameter_description>
 </parameter>
 <parameter name="flags">
-<parameter_description> which types of children are to be visited, one of 
-%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
+<parameter_description> flags from #GSpawnFlags 
 </parameter_description>
 </parameter>
-<parameter name="max_depth">
-<parameter_description> the maximum depth of the traversal. Nodes below this
-depth will not be visited. If max_depth is -1 all nodes in 
-the tree are visited. If depth is 1, only the root is visited. 
-If depth is 2, the root and its children are visited. And so on.
+<parameter name="child_setup">
+<parameter_description> function to run in the child just before exec()
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to call for each visited #GNode
+<parameter name="user_data">
+<parameter_description> user data for @child_setup
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> user data to pass to the function
+<parameter name="standard_output">
+<parameter_description> return location for child output, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="standard_error">
+<parameter_description> return location for child error messages, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="exit_status">
+<parameter_description> return location for child exit status, as returned by waitpid(), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE on success, %FALSE if an error was set.
+</return>
 </function>
 
-<function name="g_get_user_cache_dir">
+<function name="g_sprintf">
 <description>
-Returns a base directory in which to store non-essential, cached
-data specific to particular user.
-
-On UNIX platforms this is determined using the mechanisms described in
-the &lt;ulink url=&quot;http://www.freedesktop.org/Standards/basedir-spec&quot;&gt;
-XDG Base Directory Specification&lt;/ulink&gt;.
-In this case the directory retrieved will be XDG_CACHE_HOME.
-
-On Windows is the directory that serves as a common repository for
-temporary Internet files. A typical path is
-C:\Documents and Settings\username\Local Settings\Temporary Internet Files.
-See documentation for CSIDL_INTERNET_CACHE.
-
-Since: 2.6
+An implementation of the standard sprintf() function which supports
+positional parameters, as specified in the Single Unix Specification.
 
-</description>
-<parameters>
-</parameters>
-<return> a string owned by GLib that must not be modified 
-or freed.
-</return>
-</function>
+Note that it is usually better to use g_snprintf(), to avoid the
+risk of buffer overflow.
 
-<function name="g_markup_parse_context_get_position">
-<description>
-Retrieves the current line number and the number of the character on
-that line. Intended for use in error messages; there are no strict
-semantics for what constitutes the &quot;current&quot; line number other than
-&quot;the best number we could come up with for error messages.&quot;
+See also g_strdup_printf().
 
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="string">
+<parameter_description> A pointer to a memory buffer to contain the resulting string. It
+is up to the caller to ensure that the allocated buffer is large
+enough to hold the formatted result
 </parameter_description>
 </parameter>
-<parameter name="line_number">
-<parameter_description> return location for a line number, or %NULL
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="char_number">
-<parameter_description> return location for a char-on-line number, or %NULL
+<parameter name="Varargs">
+<parameter_description> the arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of bytes printed.
+
+</return>
 </function>
 
-<function name="g_thread_pool_set_max_idle_time">
+<function name="g_stat">
 <description>
-This function will set the maximum @interval that a thread waiting
-in the pool for new tasks can be idle for before being
-stopped. This function is similar to calling
-g_thread_pool_stop_unused_threads() on a regular timeout, except,
-this is done on a per thread basis.    
-
-By setting @interval to 0, idle threads will not be stopped.
-
-This function makes use of g_async_queue_timed_pop () using
- interval 
+A wrapper for the POSIX stat() function. The stat() function
+returns information about a file. On Windows the stat() function in
+the C library checks only the FAT-style READONLY attribute and does
+not look at the ACL at all. Thus on Windows the protection bits in
+the st_mode field are a fabrication of little use.
 
-Since: 2.10
+On Windows the Microsoft C libraries have several variants of the
+&lt;structname&gt;stat&lt;/structname&gt; struct and stat() function with names
+like &quot;_stat&quot;, &quot;_stat32&quot;, &quot;_stat32i64&quot; and &quot;_stat64i32&quot;. The one
+used here is for 32-bit code the one with 32-bit size and time
+fields, specifically called &quot;_stat32&quot;.
 
-</description>
-<parameters>
-<parameter name="interval">
-<parameter_description> the maximum @interval (1/1000ths of a second) a thread
-can be idle. 
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+In Microsoft's compiler, by default &quot;struct stat&quot; means one with
+64-bit time fields while in MinGW &quot;struct stat&quot; is the legacy one
+with 32-bit fields. To hopefully clear up this messs, the gstdio.h
+header defines a type GStatBuf which is the appropriate struct type
+depending on the platform and/or compiler being used. On POSIX it
+is just &quot;struct stat&quot;, but note that even on POSIX platforms,
+&quot;stat&quot; might be a macro.
 
-<function name="g_variant_print">
-<description>
-Pretty-prints @value in the format understood by g_variant_parse().
+See your C library manual for more details about stat().
 
-If @type_annotate is %TRUE, then type information is included in
-the output.
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="type_annotate">
-<parameter_description> %TRUE if type information should be included in
-the output
+<parameter name="buf">
+<parameter_description> a pointer to a &lt;structname&gt;stat&lt;/structname&gt; struct, which
+will be filled with the file information
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated string holding the result.
+<return> 0 if the information was successfully retrieved, -1 if an error 
+occurred
+
 </return>
 </function>
 
-<function name="g_io_channel_get_flags">
+<function name="g_static_mutex_free">
 <description>
-Gets the current flags for a #GIOChannel, including read-only
-flags such as %G_IO_FLAG_IS_READABLE.
+Releases all resources allocated to @mutex.
 
-The values of the flags %G_IO_FLAG_IS_READABLE and %G_IO_FLAG_IS_WRITEABLE
-are cached for internal use by the channel when it is created.
-If they should change at some later point (e.g. partial shutdown
-of a socket with the UNIX shutdown() function), the user
-should immediately call g_io_channel_get_flags() to update
-the internal values of these flags.
+You don't have to call this functions for a #GStaticMutex with an
+unbounded lifetime, i.e. objects declared 'static', but if you have
+a #GStaticMutex as a member of a structure and the structure is
+freed, you should also free the #GStaticMutex.
 
+&lt;note&gt;&lt;para&gt;Calling g_static_mutex_free() on a locked mutex may
+result in undefined behaviour.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="mutex">
+<parameter_description> a #GStaticMutex to be freed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the flags which are set on the channel
-</return>
+<return></return>
 </function>
 
-<function name="g_string_printf">
+<function name="g_static_mutex_get_mutex">
 <description>
-Writes a formatted string into a #GString.
-This is similar to the standard sprintf() function,
-except that the #GString buffer automatically expands 
-to contain the results. The previous contents of the 
-#GString are destroyed.
+For some operations (like g_cond_wait()) you must have a #GMutex
+instead of a #GStaticMutex. This function will return the
+corresponding #GMutex for @mutex.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> the string format. See the printf() documentation
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> the parameters to insert into the format string
+<parameter name="mutex">
+<parameter_description> a #GStaticMutex.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GMutex corresponding to @mutex.
+</return>
 </function>
 
-<function name="g_win32_get_package_installation_subdirectory">
+<function name="g_static_mutex_init">
 <description>
-This function is deprecated. Use
-g_win32_get_package_installation_directory_of_module() and
-g_build_filename() instead.
-
-Deprecated: 2.18: Pass the HMODULE of a DLL or EXE to
-g_win32_get_package_installation_directory_of_module() instead, and
-then construct a subdirectory pathname with g_build_filename().
+Initializes @mutex. Alternatively you can initialize it with
+#G_STATIC_MUTEX_INIT.
 
 </description>
 <parameters>
-<parameter name="package">
-<parameter_description> You should pass %NULL for this.
-</parameter_description>
-</parameter>
-<parameter name="dll_name">
-<parameter_description> The name of a DLL that a package provides, in UTF-8, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="subdir">
-<parameter_description> A subdirectory of the package installation directory, also in UTF-8
+<parameter name="mutex">
+<parameter_description> a #GStaticMutex to be initialized.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the complete path to @subdir inside
-the installation directory of @package. The returned string is in
-the GLib file name encoding, i.e. UTF-8. The return value should be
-freed with g_free() when no longer needed. If something goes wrong,
-%NULL is returned.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_stop_emission">
+<function name="g_static_mutex_lock">
 <description>
-Stops a signal's current emission.
-
-This will prevent the default method from running, if the signal was
-%G_SIGNAL_RUN_LAST and you connected normally (i.e. without the &quot;after&quot;
-flag).
-
-Prints a warning if used on a signal which isn't being emitted.
+Works like g_mutex_lock(), but for a #GStaticMutex.
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the object whose signal handlers you wish to stop.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> the signal identifier, as returned by g_signal_lookup().
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> the detail which the signal was emitted with.
+<parameter name="mutex">
+<parameter_description> a #GStaticMutex.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_param_spec_long">
+<function name="g_static_mutex_trylock">
 <description>
-Creates a new #GParamSpecLong instance specifying a %G_TYPE_LONG property.
-
-See g_param_spec_internal() for details on property names.
-
+Works like g_mutex_trylock(), but for a #GStaticMutex.
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="mutex">
+<parameter_description> a #GStaticMutex.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> %TRUE, if the #GStaticMutex could be locked.
 </return>
 </function>
 
-<function name="g_value_set_object_take_ownership">
+<function name="g_static_mutex_unlock">
 <description>
-This is an internal function introduced mainly for C marshallers.
-
-Deprecated: 2.4: Use g_value_take_object() instead.
+Works like g_mutex_unlock(), but for a #GStaticMutex.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_OBJECT derived type
-</parameter_description>
-</parameter>
-<parameter name="v_object">
-<parameter_description> object value to be set
+<parameter name="mutex">
+<parameter_description> a #GStaticMutex.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_list_insert_before">
+<function name="g_static_private_free">
 <description>
-Inserts a new element into the list before the given position.
+Releases all resources allocated to @private_key.
 
+You don't have to call this functions for a #GStaticPrivate with an
+unbounded lifetime, i.e. objects declared 'static', but if you have
+a #GStaticPrivate as a member of a structure and the structure is
+freed, you should also free the #GStaticPrivate.
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a pointer to a #GList
-</parameter_description>
-</parameter>
-<parameter name="sibling">
-<parameter_description> the list element before which the new element 
-is inserted or %NULL to insert at the end of the list
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="private_key">
+<parameter_description> a #GStaticPrivate to be freed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
-</return>
+<return></return>
 </function>
 
-<function name="g_get_user_name">
+<function name="g_static_private_get">
 <description>
-Gets the user name of the current user. The encoding of the returned
-string is system-defined. On UNIX, it might be the preferred file name
-encoding, or something else, and there is no guarantee that it is even
-consistent on a machine. On Windows, it is always UTF-8.
+Works like g_private_get() only for a #GStaticPrivate.
 
+This function works even if g_thread_init() has not yet been called.
 
 </description>
 <parameters>
+<parameter name="private_key">
+<parameter_description> a #GStaticPrivate.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the user name of the current user.
+<return> the corresponding pointer.
 </return>
 </function>
 
-<function name="g_type_plugin_use">
+<function name="g_static_private_init">
 <description>
-Calls the @use_plugin function from the #GTypePluginClass of
- plugin   There should be no need to use this function outside of
-the GObject type system itself.
+Initializes @private_key. Alternatively you can initialize it with
+#G_STATIC_PRIVATE_INIT.
 
 </description>
 <parameters>
-<parameter name="plugin">
-<parameter_description> a #GTypePlugin
+<parameter name="private_key">
+<parameter_description> a #GStaticPrivate to be initialized.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_type_add_interface_static">
+<function name="g_static_private_set">
 <description>
-Adds the static @interface_type to @instantiable_type.  The information
-contained in the #GTypeInterfaceInfo structure pointed to by @info
-is used to manage the relationship.
+Sets the pointer keyed to @private_key for the current thread and
+the function @notify to be called with that pointer (%NULL or
+non-%NULL), whenever the pointer is set again or whenever the
+current thread ends.
+
+This function works even if g_thread_init() has not yet been called.
+If g_thread_init() is called later, the @data keyed to @private_key
+will be inherited only by the main thread, i.e. the one that called
+g_thread_init().
+
+&lt;note&gt;&lt;para&gt;@notify is used quite differently from @destructor in
+g_private_new().&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="instance_type">
-<parameter_description> #GType value of an instantiable type.
+<parameter name="private_key">
+<parameter_description> a #GStaticPrivate.
 </parameter_description>
 </parameter>
-<parameter name="interface_type">
-<parameter_description> #GType value of an interface type.
+<parameter name="data">
+<parameter_description> the new pointer.
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> The #GInterfaceInfo structure for this
-(@instance_type, @interface_type) combination.
+<parameter name="notify">
+<parameter_description> a function to be called with the pointer whenever the
+current thread ends or sets this pointer again.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_is_container">
+<function name="g_static_rec_mutex_free">
 <description>
-Checks if @value is a container.
+Releases all resources allocated to a #GStaticRecMutex.
+
+You don't have to call this functions for a #GStaticRecMutex with an
+unbounded lifetime, i.e. objects declared 'static', but if you have
+a #GStaticRecMutex as a member of a structure and the structure is
+freed, you should also free the #GStaticRecMutex.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GVariant instance
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to be freed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @value is a container
-</return>
+<return></return>
 </function>
 
-<function name="g_queue_peek_nth_link">
+<function name="g_static_rec_mutex_init">
 <description>
-Returns the link at the given position
-
-Since: 2.4
+A #GStaticRecMutex must be initialized with this function before it
+can be used. Alternatively you can initialize it with
+#G_STATIC_REC_MUTEX_INIT.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="n">
-<parameter_description> the position of the link
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to be initialized.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The link at the @n'th position, or %NULL if @n is off the
-end of the list
-
-</return>
+<return></return>
 </function>
 
-<function name="g_io_channel_unix_new">
+<function name="g_static_rec_mutex_lock">
 <description>
-Creates a new #GIOChannel given a file descriptor. On UNIX systems
-this works for plain files, pipes, and sockets.
-
-The returned #GIOChannel has a reference count of 1.
-
-The default encoding for #GIOChannel is UTF-8. If your application
-is reading output from a command using via pipe, you may need to set
-the encoding to the encoding of the current locale (see
-g_get_charset()) with the g_io_channel_set_encoding() function.
-
-If you want to read raw binary data without interpretation, then
-call the g_io_channel_set_encoding() function with %NULL for the
-encoding argument.
-
-This function is available in GLib on Windows, too, but you should
-avoid using it on Windows. The domain of file descriptors and
-sockets overlap. There is no way for GLib to know which one you mean
-in case the argument you pass to this function happens to be both a
-valid file descriptor and socket. If that happens a warning is
-issued, and GLib assumes that it is the file descriptor you mean.
+Locks @mutex. If @mutex is already locked by another thread, the
+current thread will block until @mutex is unlocked by the other
+thread. If @mutex is already locked by the calling thread, this
+functions increases the depth of @mutex and returns immediately.
 
 </description>
 <parameters>
-<parameter name="fd">
-<parameter_description> a file descriptor.
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to lock.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GIOChannel.
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_int">
+<function name="g_static_rec_mutex_lock_full">
 <description>
-Creates a new #GParamSpecInt instance specifying a %G_TYPE_INT property.
-
-See g_param_spec_internal() for details on property names.
-
+Works like calling g_static_rec_mutex_lock() for @mutex @depth times.
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to lock.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="depth">
+<parameter_description> number of times this mutex has to be unlocked to be
+completely unlocked.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
-</return>
+<return></return>
 </function>
 
-<function name="g_closure_invoke">
+<function name="g_static_rec_mutex_trylock">
 <description>
-Invokes the closure, i.e. executes the callback represented by the @closure.
+Tries to lock @mutex. If @mutex is already locked by another thread,
+it immediately returns %FALSE. Otherwise it locks @mutex and returns
+%TRUE. If @mutex is already locked by the calling thread, this
+functions increases the depth of @mutex and immediately returns
+%TRUE.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> a #GValue to store the return value. May be %NULL if the
-callback of @closure doesn't return a value.
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> the length of the @param_values array
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> an array of #GValue&lt;!-- --&gt;s holding the arguments on
-which to invoke the callback of @closure
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> a context-dependent invocation hint
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to lock.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE, if @mutex could be locked.
+</return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__ULONG">
+<function name="g_static_rec_mutex_unlock">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gulong arg1, gpointer user_data)&lt;/literal&gt;.
+Unlocks @mutex. Another thread will be allowed to lock @mutex only
+when it has been unlocked as many times as it had been locked
+before. If @mutex is completely unlocked and another thread is
+blocked in a g_static_rec_mutex_lock() call for @mutex, it will be
+woken and can lock @mutex itself.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gulong parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to unlock.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_node_copy">
+<function name="g_static_rec_mutex_unlock_full">
 <description>
-Recursively copies a #GNode (but does not deep-copy the data inside the 
-nodes, see g_node_copy_deep() if you need that).
-
+Completely unlocks @mutex. If another thread is blocked in a
+g_static_rec_mutex_lock() call for @mutex, it will be woken and can
+lock @mutex itself. This function returns the number of times that
+ mutex has been locked by the current thread. To restore the state
+before the call to g_static_rec_mutex_unlock_full() you can call
+g_static_rec_mutex_lock_full() with the depth returned by this
+function.
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
+<parameter name="mutex">
+<parameter_description> a #GStaticRecMutex to completely unlock.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GNode containing the same data pointers
+<return> number of times @mutex has been locked by the current
+thread.
 </return>
 </function>
 
-<function name="g_chdir">
+<function name="g_static_rw_lock_free">
 <description>
-A wrapper for the POSIX chdir() function. The function changes the
-current directory of the process to @path.
-
-See your C library manual for more details about chdir().
+Releases all resources allocated to @lock.
 
-Since: 2.8
+You don't have to call this functions for a #GStaticRWLock with an
+unbounded lifetime, i.e. objects declared 'static', but if you have
+a #GStaticRWLock as a member of a structure, and the structure is
+freed, you should also free the #GStaticRWLock.
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to be freed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 on success, -1 if an error occurred.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__INT">
+<function name="g_static_rw_lock_init">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gint arg1, gpointer user_data)&lt;/literal&gt;.
+A #GStaticRWLock must be initialized with this function before it
+can be used. Alternatively you can initialize it with
+#G_STATIC_RW_LOCK_INIT.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gint parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to be initialized.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_source_remove_by_funcs_user_data">
+<function name="g_static_rw_lock_reader_lock">
 <description>
-Removes a source from the default main loop context given the
-source functions and user data. If multiple sources exist with the
-same source functions and user data, only one will be destroyed.
+Locks @lock for reading. There may be unlimited concurrent locks for
+reading of a #GStaticRWLock at the same time.  If @lock is already
+locked for writing by another thread or if another thread is already
+waiting to lock @lock for writing, this function will block until
+ lock is unlocked by the other writing thread and no other writing
+threads want to lock @lock. This lock has to be unlocked by
+g_static_rw_lock_reader_unlock().
 
+#GStaticRWLock is not recursive. It might seem to be possible to
+recursively lock for reading, but that can result in a deadlock, due
+to writer preference.
 
 </description>
 <parameters>
-<parameter name="funcs">
-<parameter_description> The @source_funcs passed to g_source_new()
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> the user data for the callback
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to lock for reading.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a source was found and removed. 
-</return>
+<return></return>
 </function>
 
-<function name="g_object_connect">
+<function name="g_static_rw_lock_reader_trylock">
 <description>
-A convenience function to connect multiple signals at once.
-
-The signal specs expected by this function have the form
-&quot;modifier::signal_name&quot;, where modifier can be one of the following:
-&lt;variablelist&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;signal&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_data (..., NULL, 0)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;object_signal&lt;/term&gt;
-&lt;term&gt;object-signal&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_object (..., 0)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;swapped_signal&lt;/term&gt;
-&lt;term&gt;swapped-signal&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_data (..., NULL, G_CONNECT_SWAPPED)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;swapped_object_signal&lt;/term&gt;
-&lt;term&gt;swapped-object-signal&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_object (..., G_CONNECT_SWAPPED)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;signal_after&lt;/term&gt;
-&lt;term&gt;signal-after&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_data (..., NULL, G_CONNECT_AFTER)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;object_signal_after&lt;/term&gt;
-&lt;term&gt;object-signal-after&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_object (..., G_CONNECT_AFTER)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;swapped_signal_after&lt;/term&gt;
-&lt;term&gt;swapped-signal-after&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_data (..., NULL, G_CONNECT_SWAPPED | G_CONNECT_AFTER)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;varlistentry&gt;
-&lt;term&gt;swapped_object_signal_after&lt;/term&gt;
-&lt;term&gt;swapped-object-signal-after&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-equivalent to &lt;literal&gt;g_signal_connect_object (..., G_CONNECT_SWAPPED | G_CONNECT_AFTER)&lt;/literal&gt;
-&lt;/para&gt;&lt;/listitem&gt;
-&lt;/varlistentry&gt;
-&lt;/variablelist&gt;
-
-|[
-menu-&gt;toplevel = g_object_connect (g_object_new (GTK_TYPE_WINDOW,
-&quot;type&quot;, GTK_WINDOW_POPUP,
-&quot;child&quot;, menu,
-NULL),
-&quot;signal::event&quot;, gtk_menu_window_event, menu,
-&quot;signal::size_request&quot;, gtk_menu_window_size_request, menu,
-&quot;signal::destroy&quot;, gtk_widget_destroyed, &amp;menu-&gt;toplevel,
-NULL);
-]|
-
+Tries to lock @lock for reading. If @lock is already locked for
+writing by another thread or if another thread is already waiting to
+lock @lock for writing, immediately returns %FALSE. Otherwise locks
+ lock for reading and returns %TRUE. This lock has to be unlocked by
+g_static_rw_lock_reader_unlock().
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="signal_spec">
-<parameter_description> the spec for the first signal
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> #GCallback for the first signal, followed by data for the
-first signal, followed optionally by more signal
-spec/callback/data triples, followed by %NULL
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to lock for reading.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @object
+<return> %TRUE, if @lock could be locked for reading.
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__LONG">
+<function name="g_static_rw_lock_reader_unlock">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, glong arg1, gpointer user_data)&lt;/literal&gt;.
+Unlocks @lock. If a thread waits to lock @lock for writing and all
+locks for reading have been unlocked, the waiting thread is woken up
+and can lock @lock for writing.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #glong parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to unlock after reading.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_main_context_find_source_by_id">
+<function name="g_static_rw_lock_writer_lock">
 <description>
-Finds a #GSource given a pair of context and ID.
-
+Locks @lock for writing. If @lock is already locked for writing or
+reading by other threads, this function will block until @lock is
+completely unlocked and then lock @lock for writing. While this
+functions waits to lock @lock, no other thread can lock @lock for
+reading. When @lock is locked for writing, no other thread can lock
+ lock (neither for reading nor writing). This lock has to be
+unlocked by g_static_rw_lock_writer_unlock().
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext (if %NULL, the default context will be used)
-</parameter_description>
-</parameter>
-<parameter name="source_id">
-<parameter_description> the source ID, as returned by g_source_get_id(). 
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to lock for writing.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GSource if found, otherwise, %NULL
-</return>
+<return></return>
 </function>
 
-<function name="g_main_context_prepare">
+<function name="g_static_rw_lock_writer_trylock">
 <description>
-Prepares to poll sources within a main loop. The resulting information
-for polling is determined by calling g_main_context_query ().
-
+Tries to lock @lock for writing. If @lock is already locked (for
+either reading or writing) by another thread, it immediately returns
+%FALSE. Otherwise it locks @lock for writing and returns %TRUE. This
+lock has to be unlocked by g_static_rw_lock_writer_unlock().
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
-</parameter_description>
-</parameter>
-<parameter name="priority">
-<parameter_description> location to store priority of highest priority
-source already ready.
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to lock for writing.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if some source is ready to be dispatched
-prior to polling.
+<return> %TRUE, if @lock could be locked for writing.
 </return>
 </function>
 
-<function name="g_type_fundamental">
+<function name="g_static_rw_lock_writer_unlock">
 <description>
-Internal function, used to extract the fundamental type ID portion.
-use G_TYPE_FUNDAMENTAL() instead.
-
+Unlocks @lock. If a thread is waiting to lock @lock for writing and
+all locks for reading have been unlocked, the waiting thread is
+woken up and can lock @lock for writing. If no thread is waiting to
+lock @lock for writing, and some thread or threads are waiting to
+lock @lock for reading, the waiting threads are woken up and can
+lock @lock for reading.
 
 </description>
 <parameters>
-<parameter name="type_id">
-<parameter_description> valid type ID
+<parameter name="lock">
+<parameter_description> a #GStaticRWLock to unlock after writing.
 </parameter_description>
 </parameter>
 </parameters>
-<return> fundamental type ID
-</return>
+<return></return>
 </function>
 
-<function name="g_node_prepend">
+<function name="g_stpcpy">
 <description>
-Inserts a #GNode as the first child of the given parent.
+Copies a nul-terminated string into the dest buffer, include the
+trailing nul, and return a pointer to the trailing nul byte.
+This is useful for concatenating multiple strings together
+without having to repeatedly scan for the end.
 
 
 </description>
 <parameters>
-<parameter name="parent">
-<parameter_description> the #GNode to place the new #GNode under
+<parameter name="dest">
+<parameter_description> destination buffer.
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> the #GNode to insert
+<parameter name="src">
+<parameter_description> source string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the inserted #GNode
+<return> a pointer to trailing nul byte.
 </return>
 </function>
 
-<function name="g_async_queue_timed_pop_unlocked">
+<function name="g_str_equal">
 <description>
-Pops data from the @queue. If no data is received before @end_time,
-%NULL is returned. This function must be called while holding the
- queue's lock.
+Compares two strings for byte-by-byte equality and returns %TRUE
+if they are equal. It can be passed to g_hash_table_new() as the
+ key_equal_func parameter, when using strings as keys in a #GHashTable.
 
-To easily calculate @end_time a combination of g_get_current_time()
-and g_time_val_add() can be used.
+Note that this function is primarily meant as a hash table comparison
+function. For a general-purpose, %NULL-safe string comparison function,
+see g_strcmp0().
 
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="v1">
+<parameter_description> a key
 </parameter_description>
 </parameter>
-<parameter name="end_time">
-<parameter_description> a #GTimeVal, determining the final time.
+<parameter name="v2">
+<parameter_description> a key to compare with @v1
 </parameter_description>
 </parameter>
 </parameters>
-<return> data from the queue or %NULL, when no data is
-received before @end_time.
+<return> %TRUE if the two keys match
 </return>
 </function>
 
-<function name="g_key_file_set_integer">
+<function name="g_str_has_prefix">
 <description>
-Associates a new integer value with @key under @group_name.
-If @key cannot be found then it is created.
+Looks whether the string @str begins with @prefix.
 
-Since: 2.6
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="str">
+<parameter_description> a nul-terminated string.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> an integer value
+<parameter name="prefix">
+<parameter_description> the nul-terminated prefix to look for.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="g_get_codeset">
-<description>
-Get the codeset for the current locale.
-
+<return> %TRUE if @str begins with @prefix, %FALSE otherwise.
 
-</description>
-<parameters>
-</parameters>
-<return> a newly allocated string containing the name
-of the codeset. This string must be freed with g_free().
 </return>
 </function>
 
-<function name="g_vasprintf">
+<function name="g_str_has_suffix">
 <description>
-An implementation of the GNU vasprintf() function which supports 
-positional parameters, as specified in the Single Unix Specification.
-This function is similar to g_vsprintf(), except that it allocates a 
-string to hold the output, instead of putting the output in a buffer 
-you allocate in advance.
+Looks whether the string @str ends with @suffix.
 
-Since: 2.4
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the return location for the newly-allocated string.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="str">
+<parameter_description> a nul-terminated string.
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of arguments to insert in the output.
+<parameter name="suffix">
+<parameter_description> the nul-terminated suffix to look for.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
+<return> %TRUE if @str end with @suffix, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="g_value_transform">
+<function name="g_str_hash">
 <description>
-Tries to cast the contents of @src_value into a type appropriate
-to store in @dest_value, e.g. to transform a %G_TYPE_INT value
-into a %G_TYPE_FLOAT value. Performing transformations between
-value types might incur precision lossage. Especially
-transformations into strings might reveal seemingly arbitrary
-results and shouldn't be relied upon for production code (such
-as rcfile value or object property serialization).
+Converts a string to a hash value.
+
+This function implements the widely used &quot;djb&quot; hash apparently posted
+by Daniel Bernstein to comp.lang.c some time ago.  The 32 bit
+unsigned hash value starts at 5381 and for each byte 'c' in the
+string, is updated: &lt;literal&gt;hash = hash * 33 + c&lt;/literal&gt;.  This
+function uses the signed value of each byte.
+
+It can be passed to g_hash_table_new() as the @hash_func parameter,
+when using strings as keys in a #GHashTable.
 
 
 </description>
 <parameters>
-<parameter name="src_value">
-<parameter_description> Source value.
-</parameter_description>
-</parameter>
-<parameter name="dest_value">
-<parameter_description> Target value.
+<parameter name="v">
+<parameter_description> a string key
 </parameter_description>
 </parameter>
 </parameters>
-<return> Whether a transformation rule was found and could be applied.
-Upon failing transformations, @dest_value is left untouched.
+<return> a hash value corresponding to the key
 </return>
 </function>
 
-<function name="g_key_file_get_comment">
+<function name="g_strcasecmp">
 <description>
-Retrieves a comment above @key from @group_name.
-If @key is %NULL then @comment will be read from above 
- group_name  If both @key and @group_name are %NULL, then 
- comment will be read from above the first group in the file.
+A case-insensitive string comparison, corresponding to the standard
+strcasecmp() function on platforms which support it.
 
-Since: 2.6
+Deprecated:2.2: See g_strncasecmp() for a discussion of why this function
+is deprecated and how to replace it.
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="s1">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="s2">
+<parameter_description> a string to compare with @s1.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a comment that should be freed with g_free()
+<return> 0 if the strings match, a negative value if @s1 &lt; @s2,
+or a positive value if @s1 &gt; @s2.
 
 </return>
 </function>
 
-<function name="g_regex_get_match_flags">
+<function name="g_strcmp0">
 <description>
-Returns the match options that @regex was created with.
+Compares @str1 and @str2 like strcmp(). Handles %NULL 
+gracefully by sorting it before non-%NULL strings.
+Comparing two %NULL pointers returns 0.
 
-Since: 2.26
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex
+<parameter name="str1">
+<parameter_description> a C string or %NULL
+</parameter_description>
+</parameter>
+<parameter name="str2">
+<parameter_description> another C string or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> flags from #GRegexMatchFlags
+<return> -1, 0 or 1, if @str1 is &lt;, == or &gt; than @str2.
 
 </return>
 </function>
 
-<function name="g_utf16_to_ucs4">
+<function name="g_strconcat">
 <description>
-Convert a string from UTF-16 to UCS-4. The result will be
-nul-terminated.
+Concatenates all of the given strings into one long string.
+The returned string should be freed with g_free() when no longer needed.
+
+Note that this function is usually not the right function to use to
+assemble a translated message from pieces, since proper translation
+often requires the pieces to be reordered.
+
+&lt;warning&gt;&lt;para&gt;The variable argument list &lt;emphasis&gt;must&lt;/emphasis&gt; end
+with %NULL. If you forget the %NULL, g_strconcat() will start appending
+random memory junk to your string.&lt;/para&gt;&lt;/warning&gt;
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-16 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the maximum length (number of &lt;type&gt;gunichar2&lt;/type&gt;) of @str to use. 
-If @len &lt; 0, then the string is nul-terminated.
-</parameter_description>
-</parameter>
-<parameter name="items_read">
-<parameter_description> location to store number of words read, or %NULL.
-If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
-returned in case @str contains a trailing partial
-character. If an error occurs then the index of the
-invalid input is stored here.
-</parameter_description>
-</parameter>
-<parameter name="items_written">
-<parameter_description> location to store number of characters written, or %NULL.
-The value stored here does not include the trailing
-0 character.
+<parameter name="string1">
+<parameter_description> the first string to add, which must not be %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError other than
-%G_CONVERT_ERROR_NO_CONVERSION may occur.
+<parameter name="Varargs">
+<parameter_description> a %NULL-terminated list of strings to append to the string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a newly allocated UCS-4 string.
-This value must be freed with g_free(). If an
-error occurs, %NULL will be returned and
- error set.
+<return> a newly-allocated string containing all the string arguments
 </return>
 </function>
 
-<function name="g_hash_table_iter_steal">
+<function name="g_strdown">
 <description>
-Removes the key/value pair currently pointed to by the iterator
-from its associated #GHashTable, without calling the key and value
-destroy functions. Can only be called after
-g_hash_table_iter_next() returned %TRUE, and cannot be called more
-than once for the same key/value pair.
+Converts a string to lower case.
 
-Since: 2.16
+Deprecated:2.2: This function is totally broken for the reasons discussed
+in the g_strncasecmp() docs - use g_ascii_strdown() or g_utf8_strdown()
+instead.
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> an initialized #GHashTableIter.
+<parameter name="string">
+<parameter_description> the string to convert.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the string
+
+</return>
 </function>
 
-<function name="g_queue_new">
+<function name="g_strdup">
 <description>
-Creates a new #GQueue. 
+Duplicates a string. If @str is %NULL it returns %NULL.
+The returned string should be freed with g_free()
+when no longer needed.
 
 
 </description>
 <parameters>
+<parameter name="str">
+<parameter_description> the string to duplicate
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GQueue.
+<return> a newly-allocated copy of @str
 </return>
 </function>
 
-<function name="g_source_add_poll">
+<function name="g_strdup_printf">
 <description>
-Adds a file descriptor to the set of file descriptors polled for
-this source. This is usually combined with g_source_new() to add an
-event source. The event source's check function will typically test
-the @revents field in the #GPollFD struct and return %TRUE if events need
-to be processed.
+Similar to the standard C sprintf() function but safer, since it
+calculates the maximum space required and allocates memory to hold
+the result. The returned string should be freed with g_free() when no
+longer needed.
+
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description>a #GSource 
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;
 </parameter_description>
 </parameter>
-<parameter name="fd">
-<parameter_description> a #GPollFD structure holding information about a file
-descriptor to watch.
+<parameter name="Varargs">
+<parameter_description> the parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly-allocated string holding the result
+</return>
 </function>
 
-<function name="g_reload_user_special_dirs_cache">
+<function name="g_strdup_vprintf">
 <description>
-Resets the cache used for g_get_user_special_dir(), so
-that the latest on-disk version is used. Call this only
-if you just changed the data on disk yourself.
-
-Due to threadsafety issues this may cause leaking of strings
-that were previously returned from g_get_user_special_dir()
-that can't be freed. We ensure to only leak the data for
-the directories that actually changed value though.
-
-Since: 2.22
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
+Similar to the standard C vsprintf() function but safer, since it
+calculates the maximum space required and allocates memory to hold
+the result. The returned string should be freed with g_free() when
+no longer needed.
 
-<function name="g_queue_pop_tail_link">
-<description>
-Removes the last element of the queue.
+See also g_vasprintf(), which offers the same functionality, but
+additionally returns the length of the allocated string.
 
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;
 </parameter_description>
 </parameter>
-</parameters>
-<return> the #GList element at the tail of the queue, or %NULL if the queue
-is empty.
-</return>
-</function>
-
-<function name="g_path_skip_root">
-<description>
-Returns a pointer into @file_name after the root component, i.e. after
-the &quot;/&quot; in UNIX or &quot;C:\&quot; under Windows. If @file_name is not an absolute
-path it returns %NULL.
-
-
-</description>
-<parameters>
-<parameter name="file_name">
-<parameter_description> a file name.
+<parameter name="args">
+<parameter_description> the list of parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer into @file_name after the root component.
+<return> a newly-allocated string holding the result
 </return>
 </function>
 
-<function name="g_cclosure_marshal_BOOL__FLAGS">
-<description>
-Another name for g_cclosure_marshal_BOOLEAN__FLAGS().
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_option_context_get_help_enabled">
+<function name="g_strdupv">
 <description>
-Returns whether automatic &lt;option&gt;--help&lt;/option&gt; generation
-is turned on for @context. See g_option_context_set_help_enabled().
+Copies %NULL-terminated array of strings. The copy is a deep copy;
+the new array should be freed by first freeing each string, then
+the array itself. g_strfreev() does this for you. If called
+on a %NULL value, g_strdupv() simply returns %NULL.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="str_array">
+<parameter_description> %NULL-terminated array of strings.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if automatic help generation is turned on.
-
+<return> a new %NULL-terminated array of strings.
 </return>
 </function>
 
-<function name="g_object_set_qdata_full">
+<function name="g_strerror">
 <description>
-This function works like g_object_set_qdata(), but in addition,
-a void (*destroy) (gpointer) function may be specified which is
-called with @data as argument when the @object is finalized, or
-the data is being overwritten by a call to g_object_set_qdata()
-with the same @quark.
+Returns a string corresponding to the given error code, e.g.
+&quot;no such process&quot;. You should use this function in preference to
+strerror(), because it returns a string in UTF-8 encoding, and since
+not all platforms support the strerror() function.
+
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> The GObject to set store a user data pointer
-</parameter_description>
-</parameter>
-<parameter name="quark">
-<parameter_description> A #GQuark, naming the user data pointer
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> An opaque user data pointer
-</parameter_description>
-</parameter>
-<parameter name="destroy">
-<parameter_description> Function to invoke with @data as argument, when @data
-needs to be freed
+<parameter name="errnum">
+<parameter_description> the system error number. See the standard C %errno
+documentation
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a UTF-8 string describing the error code. If the error code
+is unknown, it returns &quot;unknown error (&lt;code&gt;)&quot;. The string
+can only be used until the next call to g_strerror()
+</return>
 </function>
 
-<function name="g_set_prgname">
+<function name="g_strfreev">
 <description>
-Sets the name of the program. This name should &lt;emphasis&gt;not&lt;/emphasis&gt; 
-be localized, contrast with g_set_application_name(). Note that for 
-thread-safety reasons this function can only be called once.
+Frees a %NULL-terminated array of strings, and the array itself.
+If called on a %NULL value, g_strfreev() simply returns.
 
 </description>
 <parameters>
-<parameter name="prgname">
-<parameter_description> the name of the program.
+<parameter name="str_array">
+<parameter_description> a %NULL-terminated array of strings to free.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_object_newv">
+<function name="g_string_append">
 <description>
-Creates a new instance of a #GObject subtype and sets its properties.
-
-Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY)
-which are not explicitly specified are set to their default values.
+Adds a string onto the end of a #GString, expanding 
+it if necessary.
 
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> the type id of the #GObject subtype to instantiate
-</parameter_description>
-</parameter>
-<parameter name="n_parameters">
-<parameter_description> the length of the @parameters array
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="parameters">
-<parameter_description> an array of #GParameter
+<parameter name="val">
+<parameter_description> the string to append onto the end of @string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new instance of @object_type
+<return> @string
 </return>
 </function>
 
-<function name="g_spawn_async_with_pipes">
+<function name="g_string_append_c">
 <description>
-Executes a child program asynchronously (your program will not
-block waiting for the child to exit). The child program is
-specified by the only argument that must be provided, @argv. @argv
-should be a %NULL-terminated array of strings, to be passed as the
-argument vector for the child. The first string in @argv is of
-course the name of the program to execute. By default, the name of
-the program must be a full path; the &lt;envar&gt;PATH&lt;/envar&gt; shell variable 
-will only be searched if you pass the %G_SPAWN_SEARCH_PATH flag.
-
-On Windows, note that all the string or string vector arguments to
-this function and the other g_spawn*() functions are in UTF-8, the
-GLib file name encoding. Unicode characters that are not part of
-the system codepage passed in these arguments will be correctly
-available in the spawned program only if it uses wide character API
-to retrieve its command line. For C programs built with Microsoft's
-tools it is enough to make the program have a wmain() instead of
-main(). wmain() has a wide character argument vector as parameter.
-
-At least currently, mingw doesn't support wmain(), so if you use
-mingw to develop the spawned program, it will have to call the
-undocumented function __wgetmainargs() to get the wide character
-argument vector and environment. See gspawn-win32-helper.c in the
-GLib sources or init.c in the mingw runtime sources for a prototype
-for that function. Alternatively, you can retrieve the Win32 system
-level wide character command line passed to the spawned program
-using the GetCommandLineW() function.
-
-On Windows the low-level child process creation API
-&lt;function&gt;CreateProcess()&lt;/function&gt; doesn't use argument vectors,
-but a command line. The C runtime library's
-&lt;function&gt;spawn*()&lt;/function&gt; family of functions (which
-g_spawn_async_with_pipes() eventually calls) paste the argument
-vector elements together into a command line, and the C runtime startup code
-does a corresponding reconstruction of an argument vector from the
-command line, to be passed to main(). Complications arise when you have
-argument vector elements that contain spaces of double quotes. The
-&lt;function&gt;spawn*()&lt;/function&gt; functions don't do any quoting or
-escaping, but on the other hand the startup code does do unquoting
-and unescaping in order to enable receiving arguments with embedded
-spaces or double quotes. To work around this asymmetry,
-g_spawn_async_with_pipes() will do quoting and escaping on argument
-vector elements that need it before calling the C runtime
-spawn() function.
-
-The returned @child_pid on Windows is a handle to the child
-process, not its identifier. Process handles and process
-identifiers are different concepts on Windows.
-
- envp is a %NULL-terminated array of strings, where each string
-has the form &lt;literal&gt;KEY=VALUE&lt;/literal&gt;. This will become
-the child's environment. If @envp is %NULL, the child inherits its
-parent's environment.
-
- flags should be the bitwise OR of any flags you want to affect the
-function's behaviour. The %G_SPAWN_DO_NOT_REAP_CHILD means that 
-the child will not automatically be reaped; you must use a
-#GChildWatch source to be notified about the death of the child 
-process. Eventually you must call g_spawn_close_pid() on the
- child_pid, in order to free resources which may be associated
-with the child process. (On Unix, using a #GChildWatch source is
-equivalent to calling waitpid() or handling the %SIGCHLD signal 
-manually. On Windows, calling g_spawn_close_pid() is equivalent
-to calling CloseHandle() on the process handle returned in 
- child_pid).
-
-%G_SPAWN_LEAVE_DESCRIPTORS_OPEN means that the parent's open file
-descriptors will be inherited by the child; otherwise all
-descriptors except stdin/stdout/stderr will be closed before
-calling exec() in the child. %G_SPAWN_SEARCH_PATH 
-means that &lt;literal&gt;argv[0]&lt;/literal&gt; need not be an absolute path, it
-will be looked for in the user's &lt;envar&gt;PATH&lt;/envar&gt;. 
-%G_SPAWN_STDOUT_TO_DEV_NULL means that the child's standard output will 
-be discarded, instead of going to the same location as the parent's 
-standard output. If you use this flag, @standard_output must be %NULL.
-%G_SPAWN_STDERR_TO_DEV_NULL means that the child's standard error
-will be discarded, instead of going to the same location as the parent's
-standard error. If you use this flag, @standard_error must be %NULL.
-%G_SPAWN_CHILD_INHERITS_STDIN means that the child will inherit the parent's
-standard input (by default, the child's standard input is attached to
-/dev/null). If you use this flag, @standard_input must be %NULL.
-%G_SPAWN_FILE_AND_ARGV_ZERO means that the first element of @argv is
-the file to execute, while the remaining elements are the
-actual argument vector to pass to the file. Normally
-g_spawn_async_with_pipes() uses @argv[0] as the file to execute, and
-passes all of @argv to the child.
-
- child_setup and @user_data are a function and user data. On POSIX
-platforms, the function is called in the child after GLib has
-performed all the setup it plans to perform (including creating
-pipes, closing file descriptors, etc.) but before calling
-exec(). That is, @child_setup is called just
-before calling exec() in the child. Obviously
-actions taken in this function will only affect the child, not the
-parent.
-
-On Windows, there is no separate fork() and exec()
-functionality. Child processes are created and run with a single
-API call, CreateProcess(). There is no sensible thing @child_setup
-could be used for on Windows so it is ignored and not called.
-
-If non-%NULL, @child_pid will on Unix be filled with the child's
-process ID. You can use the process ID to send signals to the
-child, or to use g_child_watch_add() (or waitpid()) if you specified the
-%G_SPAWN_DO_NOT_REAP_CHILD flag. On Windows, @child_pid will be
-filled with a handle to the child process only if you specified the
-%G_SPAWN_DO_NOT_REAP_CHILD flag. You can then access the child
-process using the Win32 API, for example wait for its termination
-with the &lt;function&gt;WaitFor*()&lt;/function&gt; functions, or examine its
-exit code with GetExitCodeProcess(). You should close the handle 
-with CloseHandle() or g_spawn_close_pid() when you no longer need it.
-
-If non-%NULL, the @standard_input, @standard_output, @standard_error
-locations will be filled with file descriptors for writing to the child's
-standard input or reading from its standard output or standard error.
-The caller of g_spawn_async_with_pipes() must close these file descriptors
-when they are no longer in use. If these parameters are %NULL, the corresponding
-pipe won't be created.
-
-If @standard_input is NULL, the child's standard input is attached to 
-/dev/null unless %G_SPAWN_CHILD_INHERITS_STDIN is set.
-
-If @standard_error is NULL, the child's standard error goes to the same 
-location as the parent's standard error unless %G_SPAWN_STDERR_TO_DEV_NULL 
-is set.
-
-If @standard_output is NULL, the child's standard output goes to the same 
-location as the parent's standard output unless %G_SPAWN_STDOUT_TO_DEV_NULL 
-is set.
-
- error can be %NULL to ignore errors, or non-%NULL to report errors.
-If an error is set, the function returns %FALSE. Errors
-are reported even if they occur in the child (for example if the
-executable in &lt;literal&gt;argv[0]&lt;/literal&gt; is not found). Typically
-the &lt;literal&gt;message&lt;/literal&gt; field of returned errors should be displayed
-to users. Possible errors are those from the #G_SPAWN_ERROR domain.
-
-If an error occurs, @child_pid, @standard_input, @standard_output,
-and @standard_error will not be filled with valid values.
-
-If @child_pid is not %NULL and an error does not occur then the returned
-process reference must be closed using g_spawn_close_pid().
-
-&lt;note&gt;&lt;para&gt;
-If you are writing a GTK+ application, and the program you 
-are spawning is a graphical application, too, then you may
-want to use gdk_spawn_on_screen_with_pipes() instead to ensure that 
-the spawned program opens its windows on the right screen.
-&lt;/para&gt;&lt;/note&gt;
+Adds a byte onto the end of a #GString, expanding 
+it if necessary.
 
 
 </description>
 <parameters>
-<parameter name="working_directory">
-<parameter_description> child's current working directory, or %NULL to inherit parent's, in the GLib file name encoding
-</parameter_description>
-</parameter>
-<parameter name="argv">
-<parameter_description> child's argument vector, in the GLib file name encoding
-</parameter_description>
-</parameter>
-<parameter name="envp">
-<parameter_description> child's environment, or %NULL to inherit parent's, in the GLib file name encoding
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags from #GSpawnFlags
-</parameter_description>
-</parameter>
-<parameter name="child_setup">
-<parameter_description> function to run in the child just before exec()
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data for @child_setup
-</parameter_description>
-</parameter>
-<parameter name="child_pid">
-<parameter_description> return location for child process ID, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="standard_input">
-<parameter_description> return location for file descriptor to write to child's stdin, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="standard_output">
-<parameter_description> return location for file descriptor to read child's stdout, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="standard_error">
-<parameter_description> return location for file descriptor to read child's stderr, or %NULL
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error
+<parameter name="c">
+<parameter_description> the byte to append onto the end of @string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if an error was set
+<return> @string
 </return>
 </function>
 
-<function name="g_static_rec_mutex_unlock_full">
+<function name="g_string_append_len">
 <description>
-Completely unlocks @mutex. If another thread is blocked in a
-g_static_rec_mutex_lock() call for @mutex, it will be woken and can
-lock @mutex itself. This function returns the number of times that
- mutex has been locked by the current thread. To restore the state
-before the call to g_static_rec_mutex_unlock_full() you can call
-g_static_rec_mutex_lock_full() with the depth returned by this
-function.
-
-</description>
-<parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to completely unlock.
-</parameter_description>
-</parameter>
-</parameters>
-<return> number of times @mutex has been locked by the current
-thread.
-</return>
-</function>
+Appends @len bytes of @val to @string. Because @len is 
+provided, @val may contain embedded nuls and need not 
+be nul-terminated.
 
-<function name="g_rand_copy">
-<description>
-Copies a #GRand into a new one with the same exact state as before.
-This way you can take a snapshot of the random number generator for
-replaying later.
+Since this function does not stop at nul bytes, it is 
+the caller's responsibility to ensure that @val has at 
+least @len addressable bytes.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="string">
+<parameter_description> a #GString
+</parameter_description>
+</parameter>
+<parameter name="val">
+<parameter_description> bytes to append
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> number of bytes of @val to use
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GRand.
-
+<return> @string
 </return>
 </function>
 
-<function name="g_object_set_qdata">
+<function name="g_string_append_printf">
 <description>
-This sets an opaque, named pointer on an object.
-The name is specified through a #GQuark (retrived e.g. via
-g_quark_from_static_string()), and the pointer
-can be gotten back from the @object with g_object_get_qdata()
-until the @object is finalized.
-Setting a previously set user data pointer, overrides (frees)
-the old pointer set, using #NULL as pointer essentially
-removes the data stored.
+Appends a formatted string onto the end of a #GString.
+This function is similar to g_string_printf() except 
+that the text is appended to the #GString.
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> The GObject to set store a user data pointer
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="quark">
-<parameter_description> A #GQuark, naming the user data pointer
+<parameter name="format">
+<parameter_description> the string format. See the printf() documentation
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> An opaque user data pointer
+<parameter name="Varargs">
+<parameter_description> the parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_type_get_string_length">
+<function name="g_string_append_unichar">
 <description>
-Returns the length of the type string corresponding to the given
- type   This function must be used to determine the valid extent of
-the memory region returned by g_variant_type_peek_string().
+Converts a Unicode character into UTF-8, and appends it
+to the string.
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="string">
+<parameter_description> a #GString
+</parameter_description>
+</parameter>
+<parameter name="wc">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of the corresponding type string
+<return> @string
 </return>
 </function>
 
-<function name="g_random_int_range">
+<function name="g_string_append_uri_escaped">
 <description>
-Returns a random #gint32 equally distributed over the range
-[ begin  @end-1].
+Appends @unescaped to @string, escaped any characters that
+are reserved in URIs using URI-style escape sequences.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="begin">
-<parameter_description> lower closed bound of the interval.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="end">
-<parameter_description> upper open bound of the interval.
+<parameter name="unescaped">
+<parameter_description> a string
 </parameter_description>
 </parameter>
-</parameters>
-<return> A random number.
-</return>
-</function>
-
-<function name="g_datalist_get_flags">
-<description>
-Gets flags values packed in together with the datalist.
-See g_datalist_set_flags().
-
-Since: 2.8
-
-</description>
-<parameters>
-<parameter name="datalist">
-<parameter_description> pointer to the location that holds a list
+<parameter name="reserved_chars_allowed">
+<parameter_description> a string of reserved characters allowed to be used, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="allow_utf8">
+<parameter_description> set %TRUE if the escaped string may include UTF8 characters
 </parameter_description>
 </parameter>
 </parameters>
-<return> the flags of the datalist
+<return> @string
 
 </return>
 </function>
 
-<function name="g_checksum_reset">
+<function name="g_string_append_vprintf">
 <description>
-Resets the state of the @checksum back to its initial state.
-
-Since: 2.18
-
-</description>
-<parameters>
-<parameter name="checksum">
-<parameter_description> the #GChecksum to reset
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Appends a formatted string onto the end of a #GString.
+This function is similar to g_string_append_printf()
+except that the arguments to the format string are passed
+as a va_list.
 
-<function name="g_dataset_set_data_full">
-<description>
-Sets the data corresponding to the given string identifier, and the
-function to call when the data element is destroyed.
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string to identify the data element.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="d">
-<parameter_description> the data element.
+<parameter name="format">
+<parameter_description> the string format. See the printf() documentation
 </parameter_description>
 </parameter>
-<parameter name="f">
-<parameter_description> the function to call when the data element is removed. This
-function will be called with the data element and can be used to
-free any memory allocated for it.
+<parameter name="args">
+<parameter_description> the list of arguments to insert in the output
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_sequence_remove">
+<function name="g_string_ascii_down">
 <description>
-Removes the item pointed to by @iter. It is an error to pass the
-end iterator to this function.
-
-If the sequnce has a data destroy function associated with it, this
-function is called on the data for the removed item.
+Converts all upper case ASCII letters to lower case ASCII letters.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="string">
+<parameter_description> a GString
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> passed-in @string pointer, with all the upper case
+characters converted to lower case in place, with
+semantics that exactly match g_ascii_tolower().
+</return>
 </function>
 
-<function name="g_ptr_array_add">
+<function name="g_string_ascii_up">
 <description>
-Adds a pointer to the end of the pointer array. The array will grow
-in size automatically if necessary.
+Converts all lower case ASCII letters to upper case ASCII letters.
+
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the pointer to add.
+<parameter name="string">
+<parameter_description> a GString
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> passed-in @string pointer, with all the lower case
+characters converted to upper case in place, with
+semantics that exactly match g_ascii_toupper().
+</return>
 </function>
 
-<function name="g_list_insert_sorted_with_data">
+<function name="g_string_assign">
 <description>
-Inserts a new element into the list, using the given comparison 
-function to determine its position.
+Copies the bytes from a string into a #GString, 
+destroying any previous contents. It is rather like 
+the standard strcpy() function, except that you do not 
+have to worry about having enough space to copy the string.
 
-Since: 2.10
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a pointer to a #GList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to compare elements in the list. 
-It should return a number &gt; 0 if the first parameter 
-comes after the second parameter in the sort order.
+<parameter name="string">
+<parameter_description> the destination #GString. Its current contents 
+are destroyed.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to comparison function.
+<parameter name="rval">
+<parameter_description> the string to copy into @string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
-
+<return> @string
 </return>
 </function>
 
-<function name="g_hash_table_remove_all">
+<function name="g_string_chunk_clear">
 <description>
-Removes all keys and their associated values from a #GHashTable.
-
-If the #GHashTable was created using g_hash_table_new_full(), the keys
-and values are freed using the supplied destroy functions, otherwise you
-have to make sure that any dynamically allocated values are freed
-yourself.
+Frees all strings contained within the #GStringChunk.
+After calling g_string_chunk_clear() it is not safe to
+access any of the strings which were contained within it.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable
+<parameter name="chunk">
+<parameter_description> a #GStringChunk
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_list_push_allocator">
+<function name="g_string_chunk_free">
 <description>
-Sets the allocator to use to allocate #GList elements. Use
-g_list_pop_allocator() to restore the previous allocator.
-
-Note that this function is not available if GLib has been compiled
-with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
-
-Deprecated:2.10: It does nothing, since #GList has been converted
-to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt;
+Frees all memory allocated by the #GStringChunk.
+After calling g_string_chunk_free() it is not safe to
+access any of the strings which were contained within it.
 
 </description>
 <parameters>
-<parameter name="allocator">
-<parameter_description> the #GAllocator to use when allocating #GList elements.
+<parameter name="chunk">
+<parameter_description> a #GStringChunk 
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_hash_table_remove">
+<function name="g_string_chunk_insert">
 <description>
-Removes a key and its associated value from a #GHashTable.
+Adds a copy of @string to the #GStringChunk.
+It returns a pointer to the new copy of the string 
+in the #GStringChunk. The characters in the string 
+can be changed, if necessary, though you should not 
+change anything after the end of the string.
 
-If the #GHashTable was created using g_hash_table_new_full(), the
-key and value are freed using the supplied destroy functions, otherwise
-you have to make sure that any dynamically allocated values are freed
-yourself.
+Unlike g_string_chunk_insert_const(), this function 
+does not check for duplicates. Also strings added 
+with g_string_chunk_insert() will not be searched 
+by g_string_chunk_insert_const() when looking for 
+duplicates.
 
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to remove.
+<parameter name="chunk">
+<parameter_description> a #GStringChunk
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the key was found and removed from the #GHashTable.
-</return>
-</function>
-
-<function name="g_string_up">
-<description>
-Converts a #GString to uppercase.
-
-Deprecated:2.2: This function uses the locale-specific 
-toupper() function, which is almost never the right thing. 
-Use g_string_ascii_up() or g_utf8_strup() instead.
-
-</description>
-<parameters>
 <parameter name="string">
-<parameter_description> a #GString 
+<parameter_description> the string to add
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
-
+<return> a pointer to the copy of @string within 
+the #GStringChunk
 </return>
 </function>
 
-<function name="g_ptr_array_remove_index_fast">
+<function name="g_string_chunk_insert_const">
 <description>
-Removes the pointer at the given index from the pointer array. The
-last element in the array is used to fill in the space, so this
-function does not preserve the order of the array. But it is faster
-than g_ptr_array_remove_index(). If @array has a non-%NULL
-#GDestroyNotify function it is called for the removed element.
+Adds a copy of @string to the #GStringChunk, unless the same
+string has already been added to the #GStringChunk with
+g_string_chunk_insert_const().
 
-</description>
-<parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the pointer to remove.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the pointer which was removed.
-</return>
-</function>
+This function is useful if you need to copy a large number
+of strings but do not want to waste space storing duplicates.
+But you must remember that there may be several pointers to
+the same string, and so any changes made to the strings
+should be done very carefully.
 
-<function name="g_object_steal_data">
-<description>
-Remove a specified datum from the object's data associations,
-without invoking the association's destroy handler.
+Note that g_string_chunk_insert_const() will not return a
+pointer to a string added with g_string_chunk_insert(), even
+if they do match.
 
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> #GObject containing the associations
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> name of the key
+<parameter name="chunk">
+<parameter_description> a #GStringChunk
 </parameter_description>
 </parameter>
-</parameters>
-<return> the data if found, or %NULL if no such data exists.
-</return>
-</function>
-
-<function name="g_object_ref_sink">
-<description>
-Increase the reference count of @object, and possibly remove the
-&lt;link linkend=&quot;floating-ref&quot;&gt;floating&lt;/link&gt; reference, if @object
-has a floating reference.
-
-In other words, if the object is floating, then this call &quot;assumes
-ownership&quot; of the floating reference, converting it to a normal
-reference by clearing the floating flag while leaving the reference
-count unchanged.  If the object is not floating, then this call
-adds a new normal reference increasing the reference count by one.
-
-Since: 2.10
-
-
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="string">
+<parameter_description> the string to add
 </parameter_description>
 </parameter>
 </parameters>
-<return> @object
+<return> a pointer to the new or existing copy of @string
+within the #GStringChunk
 </return>
 </function>
 
-<function name="g_static_rec_mutex_free">
+<function name="g_string_chunk_insert_len">
 <description>
-Releases all resources allocated to a #GStaticRecMutex.
-
-You don't have to call this functions for a #GStaticRecMutex with an
-unbounded lifetime, i.e. objects declared 'static', but if you have
-a #GStaticRecMutex as a member of a structure and the structure is
-freed, you should also free the #GStaticRecMutex.
+Adds a copy of the first @len bytes of @string to the #GStringChunk.
+The copy is nul-terminated.
 
-</description>
-<parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to be freed.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Since this function does not stop at nul bytes, it is the caller's
+responsibility to ensure that @string has at least @len addressable
+bytes.
 
-<function name="g_main_context_query">
-<description>
-Determines information necessary to poll this main loop.
+The characters in the returned string can be changed, if necessary,
+though you should not change anything after the end of the string.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
-</parameter_description>
-</parameter>
-<parameter name="max_priority">
-<parameter_description> maximum priority source to check
-</parameter_description>
-</parameter>
-<parameter name="timeout_">
-<parameter_description> location to store timeout to be used in polling
+<parameter name="chunk">
+<parameter_description> a #GStringChunk
 </parameter_description>
 </parameter>
-<parameter name="fds">
-<parameter_description> location to store #GPollFD records that need to be polled.
+<parameter name="string">
+<parameter_description> bytes to insert
 </parameter_description>
 </parameter>
-<parameter name="n_fds">
-<parameter_description> length of @fds.
+<parameter name="len">
+<parameter_description> number of bytes of @string to insert, or -1 to insert a
+nul-terminated string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of records actually stored in @fds,
-or, if more than @n_fds records need to be stored, the number
-of records that need to be stored.
+<return> a pointer to the copy of @string within the #GStringChunk
+
 </return>
 </function>
 
-<function name="g_array_remove_range">
+<function name="g_string_chunk_new">
 <description>
-Removes the given number of elements starting at the given index
-from a #GArray.  The following elements are moved to close the gap.
+Creates a new #GStringChunk. 
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a @GArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the first element to remove.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the number of elements to remove.
+<parameter name="size">
+<parameter_description> the default size of the blocks of memory which are 
+allocated to store the strings. If a particular string 
+is larger than this default size, a larger block of 
+memory will be allocated for it.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> a new #GStringChunk
 </return>
 </function>
 
-<function name="g_quark_from_static_string">
+<function name="g_string_down">
 <description>
-Gets the #GQuark identifying the given (static) string. If the
-string does not currently have an associated #GQuark, a new #GQuark
-is created, linked to the given string.
+Converts a #GString to lowercase.
 
-Note that this function is identical to g_quark_from_string() except
-that if a new #GQuark is created the string itself is used rather
-than a copy. This saves memory, but can only be used if the string
-will &lt;emphasis&gt;always&lt;/emphasis&gt; exist. It can be used with
-statically allocated strings in the main program, but not with
-statically allocated memory in dynamically loaded modules, if you
-expect to ever unload the module again (e.g. do not use this
-function in GTK+ theme engines).
+Deprecated:2.2: This function uses the locale-specific 
+tolower() function, which is almost never the right thing. 
+Use g_string_ascii_down() or g_utf8_strdown() instead.
 
 </description>
 <parameters>
 <parameter name="string">
-<parameter_description> a string.
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GQuark identifying the string, or 0 if @string is
-%NULL.
+<return> the #GString.
+
 </return>
 </function>
 
-<function name="g_list_prepend">
+<function name="g_string_equal">
 <description>
-Adds a new element on to the start of the list.
-
-&lt;note&gt;&lt;para&gt;
-The return value is the new start of the list, which 
-may have changed, so make sure you store the new value.
-&lt;/para&gt;&lt;/note&gt;
-
-|[ 
-/ * Notice that it is initialized to the empty list. * /
-GList *list = NULL;
-list = g_list_prepend (list, &quot;last&quot;);
-list = g_list_prepend (list, &quot;first&quot;);
-]|
+Compares two strings for equality, returning %TRUE if they are equal. 
+For use with #GHashTable.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a pointer to a #GList
+<parameter name="v">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="v2">
+<parameter_description> another #GString
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
+<return> %TRUE if they strings are the same length and contain the 
+same bytes
 </return>
 </function>
 
-<function name="g_queue_free">
-<description>
-Frees the memory allocated for the #GQueue. Only call this function if
- queue was created with g_queue_new(). If queue elements contain
-dynamically-allocated memory, they should be freed first.
-
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_type_next_base">
+<function name="g_string_erase">
 <description>
-Given a @leaf_type and a @root_type which is contained in its
-anchestry, return the type that @root_type is the immediate parent
-of.  In other words, this function determines the type that is
-derived directly from @root_type which is also a base class of
- leaf_type   Given a root type and a leaf type, this function can
-be used to determine the types and order in which the leaf type is
-descended from the root type.
+Removes @len bytes from a #GString, starting at position @pos.
+The rest of the #GString is shifted down to fill the gap.
 
 
 </description>
 <parameters>
-<parameter name="leaf_type">
-<parameter_description> Descendant of @root_type and the type to be returned.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="root_type">
-<parameter_description> Immediate parent of the returned type.
+<parameter name="pos">
+<parameter_description> the position of the content to remove
 </parameter_description>
 </parameter>
-</parameters>
-<return> Immediate child of @root_type and anchestor of @leaf_type.
-</return>
-</function>
-
-<function name="g_timer_start">
-<description>
-Marks a start time, so that future calls to g_timer_elapsed() will
-report the time since g_timer_start() was called. g_timer_new()
-automatically marks the start time, so no need to call
-g_timer_start() immediately after creating the timer.
-
-</description>
-<parameters>
-<parameter name="timer">
-<parameter_description> a #GTimer.
+<parameter name="len">
+<parameter_description> the number of bytes to remove, or -1 to remove all
+following bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @string
+</return>
 </function>
 
-<function name="g_markup_parse_context_end_parse">
+<function name="g_string_free">
 <description>
-Signals to the #GMarkupParseContext that all data has been
-fed into the parse context with g_markup_parse_context_parse().
-This function reports an error if the document isn't complete,
-for example if elements are still open.
+Frees the memory allocated for the #GString.
+If @free_segment is %TRUE it also frees the character data.  If 
+it's %FALSE, the caller gains ownership of the buffer and must
+free it after use with g_free().
 
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="free_segment">
+<parameter_description> if %TRUE the actual character data is freed as well
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if an error was set
+<return> the character data of @string 
+(i.e. %NULL if @free_segment is %TRUE)
 </return>
 </function>
 
-<function name="g_mem_chunk_print">
+<function name="g_string_hash">
 <description>
-Outputs debugging information for a #GMemChunk. It outputs the name
-of the #GMemChunk (set with g_mem_chunk_new()), the number of bytes
-used, and the number of blocks of memory allocated.
+Creates a hash code for @str; for use with #GHashTable.
 
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
 
 </description>
 <parameters>
-<parameter name="mem_chunk">
-<parameter_description> a #GMemChunk.
+<parameter name="str">
+<parameter_description> a string to hash
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> hash code for @str
+</return>
 </function>
 
-<function name="g_ascii_digit_value">
+<function name="g_string_insert">
 <description>
-Determines the numeric value of a character as a decimal
-digit. Differs from g_unichar_digit_value() because it takes
-a char, so there's no worry about sign extension if characters
-are signed.
+Inserts a copy of a string into a #GString, 
+expanding it if necessary.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> an ASCII character.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-</parameters>
-<return> If @c is a decimal digit (according to
-g_ascii_isdigit()), its numeric value. Otherwise, -1.
-</return>
-</function>
-
-<function name="g_regex_get_pattern">
-<description>
-Gets the pattern string associated with @regex, i.e. a copy of
-the string passed to g_regex_new().
-
-Since: 2.14
-
-</description>
-<parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure
+<parameter name="pos">
+<parameter_description> the position to insert the copy of the string
 </parameter_description>
 </parameter>
-</parameters>
-<return> the pattern of @regex
-
-</return>
-</function>
-
-<function name="g_variant_type_string_is_valid">
-<description>
-Checks if @type_string is a valid GVariant type string.  This call is
-equivalent to calling g_variant_type_string_scan() and confirming
-that the following character is a nul terminator.
-
-Since 2.24
-
-</description>
-<parameters>
-<parameter name="type_string">
-<parameter_description> a pointer to any string
+<parameter name="val">
+<parameter_description> the string to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type_string is exactly one valid type string
+<return> @string
 </return>
 </function>
 
-<function name="g_regex_new">
+<function name="g_string_insert_c">
 <description>
-Compiles the regular expression to an internal form, and does
-the initial setup of the #GRegex structure.
+Inserts a byte into a #GString, expanding it if necessary.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="pattern">
-<parameter_description> the regular expression
-</parameter_description>
-</parameter>
-<parameter name="compile_options">
-<parameter_description> compile options for the regular expression, or 0
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> match options for the regular expression, or 0
+<parameter name="pos">
+<parameter_description> the position to insert the byte
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="c">
+<parameter_description> the byte to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GRegex structure. Call g_regex_unref() when you
-are done with it
-
+<return> @string
 </return>
 </function>
 
-<function name="g_list_nth">
+<function name="g_string_insert_len">
 <description>
-Gets the element at the given position in a #GList.
+Inserts @len bytes of @val into @string at @pos.
+Because @len is provided, @val may contain embedded
+nuls and need not be nul-terminated. If @pos is -1,
+bytes are inserted at the end of the string.
+
+Since this function does not stop at nul bytes, it is
+the caller's responsibility to ensure that @val has at
+least @len addressable bytes.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the position of the element, counting from 0
+<parameter name="pos">
+<parameter_description> position in @string where insertion should
+happen, or -1 for at the end
+</parameter_description>
+</parameter>
+<parameter name="val">
+<parameter_description> bytes to insert
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> number of bytes of @val to insert
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element, or %NULL if the position is off 
-the end of the #GList
+<return> @string
 </return>
 </function>
 
-<function name="g_signal_connect_object">
+<function name="g_string_insert_unichar">
 <description>
-This is similar to g_signal_connect_data(), but uses a closure which
-ensures that the @gobject stays alive during the call to @c_handler
-by temporarily adding a reference count to @gobject.
-
-Note that there is a bug in GObject that makes this function
-much less useful than it might seem otherwise. Once @gobject is
-disposed, the callback will no longer be called, but, the signal
-handler is &lt;emphasis&gt;not&lt;/emphasis&gt; currently disconnected. If the
- instance is itself being freed at the same time than this doesn't
-matter, since the signal will automatically be removed, but
-if @instance persists, then the signal handler will leak. You
-should not remove the signal yourself because in a future versions of
-GObject, the handler &lt;emphasis&gt;will&lt;/emphasis&gt; automatically
-be disconnected.
-
-It's possible to work around this problem in a way that will
-continue to work with future versions of GObject by checking
-that the signal handler is still connected before disconnected it:
-&lt;informalexample&gt;&lt;programlisting&gt;
-if (g_signal_handler_is_connected (instance, id))
-g_signal_handler_disconnect (instance, id);
-&lt;/programlisting&gt;&lt;/informalexample&gt;
+Converts a Unicode character into UTF-8, and insert it
+into the string at the given position.
 
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> the instance to connect to.
-</parameter_description>
-</parameter>
-<parameter name="detailed_signal">
-<parameter_description> a string of the form &quot;signal-name::detail&quot;.
-</parameter_description>
-</parameter>
-<parameter name="c_handler">
-<parameter_description> the #GCallback to connect.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="gobject">
-<parameter_description> the object to pass as data to @c_handler.
+<parameter name="pos">
+<parameter_description> the position at which to insert character, or -1 to
+append at the end of the string
 </parameter_description>
 </parameter>
-<parameter name="connect_flags">
-<parameter_description> a combination of #GConnnectFlags.
+<parameter name="wc">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the handler id.
+<return> @string
 </return>
 </function>
 
-<function name="g_datalist_init">
+<function name="g_string_new">
 <description>
-Resets the datalist to %NULL. It does not free any memory or call
-any destroy functions.
+Creates a new #GString, initialized with the given string.
+
 
 </description>
 <parameters>
-<parameter name="datalist">
-<parameter_description> a pointer to a pointer to a datalist.
+<parameter name="init">
+<parameter_description> the initial text to copy into the string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new #GString
+</return>
 </function>
 
-<function name="g_source_is_destroyed">
+<function name="g_string_new_len">
 <description>
-Returns whether @source has been destroyed.
-
-This is important when you operate upon your objects 
-from within idle handlers, but may have freed the object 
-before the dispatch of your idle handler.
-
-|[
-static gboolean 
-idle_callback (gpointer data)
-{
-SomeWidget *self = data;
-
-GDK_THREADS_ENTER (&lt;!-- --&gt;);
-/&lt;!-- --&gt;* do stuff with self *&lt;!-- --&gt;/
-self-&gt;idle_id = 0;
-GDK_THREADS_LEAVE (&lt;!-- --&gt;);
-
-return FALSE;
-}
-
-static void 
-some_widget_do_stuff_later (SomeWidget *self)
-{
-self-&gt;idle_id = g_idle_add (idle_callback, self);
-}
-
-static void 
-some_widget_finalize (GObject *object)
-{
-SomeWidget *self = SOME_WIDGET (object);
-
-if (self-&gt;idle_id)
-g_source_remove (self-&gt;idle_id);
-
-G_OBJECT_CLASS (parent_class)-&gt;finalize (object);
-}
-]|
-
-This will fail in a multi-threaded application if the 
-widget is destroyed before the idle handler fires due 
-to the use after free in the callback. A solution, to 
-this particular problem, is to check to if the source
-has already been destroy within the callback.
-
-|[
-static gboolean 
-idle_callback (gpointer data)
-{
-SomeWidget *self = data;
-
-GDK_THREADS_ENTER ();
-if (!g_source_is_destroyed (g_main_current_source ()))
-{
-/&lt;!-- --&gt;* do stuff with self *&lt;!-- --&gt;/
-}
-GDK_THREADS_LEAVE ();
+Creates a new #GString with @len bytes of the @init buffer.  
+Because a length is provided, @init need not be nul-terminated,
+and can contain embedded nul bytes.
 
-return FALSE;
-}
-]|
+Since this function does not stop at nul bytes, it is the caller's
+responsibility to ensure that @init has at least @len addressable 
+bytes.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="init">
+<parameter_description> initial contents of the string
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> length of @init to use
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the source has been destroyed
-
+<return> a new #GString
 </return>
 </function>
 
-<function name="g_test_add_data_func">
+<function name="g_string_overwrite">
 <description>
-Create a new test case, similar to g_test_create_case(). However
-the test is assumed to use no fixture, and test suites are automatically
-created on the fly and added to the root fixture, based on the
-slash-separated portions of @testpath. The @test_data argument
-will be passed as first argument to @test_func.
+Overwrites part of a string, lengthening it if necessary.
 
-Since: 2.16
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="testpath">
-<parameter_description>   Slash-separated test case path name for the test.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="test_data">
-<parameter_description>  Test data argument for the test function.
+<parameter name="pos">
+<parameter_description> the position at which to start overwriting
 </parameter_description>
 </parameter>
-<parameter name="test_func">
-<parameter_description>  The test function to invoke for this test.
+<parameter name="val">
+<parameter_description> the string that will overwrite the @string starting at @pos
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @string
+
+</return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__UINT">
+<function name="g_string_overwrite_len">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, guint arg1, gpointer user_data)&lt;/literal&gt;.
+Overwrites part of a string, lengthening it if necessary. 
+This function will work with embedded nuls.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #guint parameter
+<parameter name="pos">
+<parameter_description> the position at which to start overwriting
 </parameter_description>
 </parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="val">
+<parameter_description> the string that will overwrite the @string starting at @pos
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="len">
+<parameter_description> the number of bytes to write from @val
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @string
+
+</return>
 </function>
 
-<function name="g_variant_builder_add">
+<function name="g_string_prepend">
 <description>
-Adds to a #GVariantBuilder.
-
-This call is a convenience wrapper that is exactly equivalent to
-calling g_variant_new() followed by g_variant_builder_add_value().
-
-This function might be used as follows:
-
-&lt;programlisting&gt;
-GVariant *
-make_pointless_dictionary (void)
-{
-GVariantBuilder *builder;
-int i;
-
-builder = g_variant_builder_new (G_VARIANT_TYPE_ARRAY);
-for (i = 0; i &lt; 16; i++)
-{
-gchar buf[3];
-
-sprintf (buf, &quot;%d&quot;, i);
-g_variant_builder_add (builder, &quot;{is}&quot;, i, buf);
-}
-
-return g_variant_builder_end (builder);
-}
-&lt;/programlisting&gt;
+Adds a string on to the start of a #GString, 
+expanding it if necessary.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
-</parameter_description>
-</parameter>
-<parameter name="format_string">
-<parameter_description> a #GVariant varargs format string
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments, as per @format_string
+<parameter name="val">
+<parameter_description> the string to prepend on the start of @string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @string
+</return>
 </function>
 
-<function name="g_ascii_formatd">
+<function name="g_string_prepend_c">
 <description>
-Converts a #gdouble to a string, using the '.' as
-decimal point. To format the number you pass in
-a printf()-style format string. Allowed conversion
-specifiers are 'e', 'E', 'f', 'F', 'g' and 'G'. 
-
-If you just want to want to serialize the value into a
-string, use g_ascii_dtostr().
+Adds a byte onto the start of a #GString, 
+expanding it if necessary.
 
 
 </description>
 <parameters>
-<parameter name="buffer">
-<parameter_description> A buffer to place the resulting string in
-</parameter_description>
-</parameter>
-<parameter name="buf_len">
-<parameter_description> The length of the buffer.
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> The printf()-style format to use for the
-code to use for converting. 
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="d">
-<parameter_description> The #gdouble to convert
+<parameter name="c">
+<parameter_description> the byte to prepend on the start of the #GString
 </parameter_description>
 </parameter>
 </parameters>
-<return> The pointer to the buffer with the converted string.
+<return> @string
 </return>
 </function>
 
-<function name="g_bookmark_file_set_title">
+<function name="g_string_prepend_len">
 <description>
-Sets @title as the title of the bookmark for @uri inside the
-bookmark file @bookmark.
-
-If @uri is %NULL, the title of @bookmark is set.
+Prepends @len bytes of @val to @string. 
+Because @len is provided, @val may contain 
+embedded nuls and need not be nul-terminated.
 
-If a bookmark for @uri cannot be found then it is created.
+Since this function does not stop at nul bytes, 
+it is the caller's responsibility to ensure that 
+ val has at least @len addressable bytes.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI or %NULL
+<parameter name="val">
+<parameter_description> bytes to prepend
 </parameter_description>
 </parameter>
-<parameter name="title">
-<parameter_description> a UTF-8 encoded string
+<parameter name="len">
+<parameter_description> number of bytes in @val to prepend
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @string
+</return>
 </function>
 
-<function name="g_enum_complete_type_info">
+<function name="g_string_prepend_unichar">
 <description>
-This function is meant to be called from the complete_type_info()
-function of a #GTypePlugin implementation, as in the following
-example:
-
-|[
-static void
-my_enum_complete_type_info (GTypePlugin     *plugin,
-GType            g_type,
-GTypeInfo       *info,
-GTypeValueTable *value_table)
-{
-static const GEnumValue values[] = {
-{ MY_ENUM_FOO, &quot;MY_ENUM_FOO&quot;, &quot;foo&quot; },
-{ MY_ENUM_BAR, &quot;MY_ENUM_BAR&quot;, &quot;bar&quot; },
-{ 0, NULL, NULL }
-};
+Converts a Unicode character into UTF-8, and prepends it
+to the string.
 
-g_enum_complete_type_info (type, info, values);
-}
-]|
 
 </description>
 <parameters>
-<parameter name="g_enum_type">
-<parameter_description> the type identifier of the type being completed
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> the #GTypeInfo struct to be filled in
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="const_values">
-<parameter_description> An array of #GEnumValue structs for the possible
-enumeration values. The array is terminated by a struct with all
-members being 0.
+<parameter name="wc">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @string
+</return>
 </function>
 
-<function name="g_propagate_prefixed_error">
+<function name="g_string_printf">
 <description>
-If @dest is %NULL, free @src; otherwise,
-moves @src into * dest  * dest must be %NULL.
-After the move, add a prefix as with
-g_prefix_error().
-
-Since: 2.16
+Writes a formatted string into a #GString.
+This is similar to the standard sprintf() function,
+except that the #GString buffer automatically expands 
+to contain the results. The previous contents of the 
+#GString are destroyed.
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> error return location
-</parameter_description>
-</parameter>
-<parameter name="src">
-<parameter_description> error to move into the return location
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
 <parameter name="format">
-<parameter_description> printf()-style format string
+<parameter_description> the string format. See the printf() documentation
 </parameter_description>
 </parameter>
 <parameter name="Varargs">
-<parameter_description> arguments to @format
+<parameter_description> the parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_type_fundamental_next">
-<description>
-Returns the next free fundamental type id which can be used to
-register a new fundamental type with g_type_register_fundamental().
-The returned type ID represents the highest currently registered
-fundamental type identifier.
-
-
-</description>
-<parameters>
-</parameters>
-<return> The nextmost fundamental type ID to be registered,
-or 0 if the type system ran out of fundamental type IDs.
-</return>
-</function>
-
-<function name="g_thread_pool_new">
+<function name="g_string_set_size">
 <description>
-This function creates a new thread pool.
-
-Whenever you call g_thread_pool_push(), either a new thread is
-created or an unused one is reused. At most @max_threads threads
-are running concurrently for this thread pool. @max_threads = -1
-allows unlimited threads to be created for this thread pool. The
-newly created or reused thread now executes the function @func with
-the two arguments. The first one is the parameter to
-g_thread_pool_push() and the second one is @user_data.
-
-The parameter @exclusive determines, whether the thread pool owns
-all threads exclusive or whether the threads are shared
-globally. If @exclusive is %TRUE, @max_threads threads are started
-immediately and they will run exclusively for this thread pool until
-it is destroyed by g_thread_pool_free(). If @exclusive is %FALSE,
-threads are created, when needed and shared between all
-non-exclusive thread pools. This implies that @max_threads may not
-be -1 for exclusive thread pools.
-
- error can be %NULL to ignore errors, or non-%NULL to report
-errors. An error can only occur when @exclusive is set to %TRUE and
-not all @max_threads threads could be created.
+Sets the length of a #GString. If the length is less than
+the current length, the string will be truncated. If the
+length is greater than the current length, the contents
+of the newly added area are undefined. (However, as
+always, string-&gt;str[string-&gt;len] will be a nul byte.) 
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a function to execute in the threads of the new thread pool
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data that is handed over to @func every time it 
-is called
-</parameter_description>
-</parameter>
-<parameter name="max_threads">
-<parameter_description> the maximal number of threads to execute concurrently in 
-the new thread pool, -1 means no limit
-</parameter_description>
-</parameter>
-<parameter name="exclusive">
-<parameter_description> should this thread pool be exclusive?
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for error
+<parameter name="len">
+<parameter_description> the new length
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GThreadPool
+<return> @string
 </return>
 </function>
 
-<function name="g_io_channel_win32_new_messages">
+<function name="g_string_sized_new">
 <description>
-Creates a new #GIOChannel given a window handle on Windows.
+Creates a new #GString, with enough space for @dfl_size 
+bytes. This is useful if you are going to add a lot of 
+text to the string and don't want it to be reallocated 
+too often.
 
-This function creates a #GIOChannel that can be used to poll for
-Windows messages for the window in question.
 
 </description>
 <parameters>
-<parameter name="hwnd">
-<parameter_description> a window handle.
+<parameter name="dfl_size">
+<parameter_description> the default size of the space allocated to 
+hold the string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GIOChannel.
+<return> the new #GString
 </return>
 </function>
 
-<function name="g_tree_remove">
+<function name="g_string_sprintf">
 <description>
-Removes a key/value pair from a #GTree.
-
-If the #GTree was created using g_tree_new_full(), the key and value 
-are freed using the supplied destroy functions, otherwise you have to 
-make sure that any dynamically allocated values are freed yourself.
-If the key does not exist in the #GTree, the function does nothing.
+Writes a formatted string into a #GString.
+This is similar to the standard sprintf() function,
+except that the #GString buffer automatically expands 
+to contain the results. The previous contents of the 
+#GString are destroyed. 
 
+Deprecated: This function has been renamed to g_string_printf().
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> the key to remove.
+<parameter name="format">
+<parameter_description> the string format. See the sprintf() documentation
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the key was found (prior to 2.8, this function returned 
-nothing)
-</return>
-</function>
-
-<function name="g_variant_get_type_string">
-<description>
-Returns the type string of @value.  Unlike the result of calling
-g_variant_type_peek_string(), this string is nul-terminated.  This
-string belongs to #GVariant and must not be freed.
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GVariant
+<parameter name="Varargs">
+<parameter_description> the parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type string for the type of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_type_interface_peek">
+<function name="g_string_sprintfa">
 <description>
-Returns the #GTypeInterface structure of an interface to which the
-passed in class conforms.
+Appends a formatted string onto the end of a #GString.
+This function is similar to g_string_sprintf() except that
+the text is appended to the #GString. 
 
+Deprecated: This function has been renamed to g_string_append_printf()
 
 </description>
 <parameters>
-<parameter name="instance_class">
-<parameter_description> A #GTypeClass structure.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="iface_type">
-<parameter_description> An interface ID which this class conforms to.
+<parameter name="format">
+<parameter_description> the string format. See the sprintf() documentation
 </parameter_description>
 </parameter>
-</parameters>
-<return> The GTypeInterface structure of iface_type if implemented
-by @instance_class, %NULL otherwise
-</return>
-</function>
-
-<function name="g_variant_iter_next_value">
-<description>
-Gets the next item in the container.  If no more items remain then
-%NULL is returned.
-
-Use g_variant_unref() to drop your reference on the return value when
-you no longer need it.
-
-&lt;example&gt;
-&lt;title&gt;Iterating with g_variant_iter_next_value()&lt;/title&gt;
-&lt;programlisting&gt;
-/&lt;!-- --&gt;* recursively iterate a container *&lt;!-- --&gt;/
-void
-iterate_container_recursive (GVariant *container)
-{
-GVariantIter iter;
-GVariant *child;
-
-g_variant_iter_init (&amp;iter, dictionary);
-while ((child = g_variant_iter_next_value (&amp;iter)))
-{
-g_print (&quot;type '%s'\n&quot;, g_variant_get_type_string (child));
-
-if (g_variant_is_container (child))
-iterate_container_recursive (child);
-
-g_variant_unref (child);
-}
-}
-&lt;/programlisting&gt;
-&lt;/example&gt;
-
-Since: 2.24
-
-</description>
-<parameters>
-<parameter name="iter">
-<parameter_description> a #GVariantIter
+<parameter name="Varargs">
+<parameter_description> the parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GVariant, or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_new_uint64">
+<function name="g_string_truncate">
 <description>
-Creates a new uint64 #GVariant instance.
+Cuts off the end of the GString, leaving the first @len bytes. 
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="uint64">
-<parameter_description> a #guint64 value
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new uint64 #GVariant instance
-</return>
-</function>
-
-<function name="g_list_next">
-<description>
-A convenience macro to get the next element in a #GList.
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> an element in a #GList.
+<parameter name="len">
+<parameter_description> the new size of @string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the next element, or %NULL if there are no more elements.
+<return> @string
 </return>
 </function>
 
-<function name="g_tree_steal">
+<function name="g_string_up">
 <description>
-Removes a key and its associated value from a #GTree without calling 
-the key and value destroy functions.
-
-If the key does not exist in the #GTree, the function does nothing.
+Converts a #GString to uppercase.
 
+Deprecated:2.2: This function uses the locale-specific 
+toupper() function, which is almost never the right thing. 
+Use g_string_ascii_up() or g_utf8_strup() instead.
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to remove.
+<parameter name="string">
+<parameter_description> a #GString 
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the key was found (prior to 2.8, this function returned 
-nothing)
+<return> @string
+
 </return>
 </function>
 
-<function name="g_ptr_array_sort_with_data">
+<function name="g_string_vprintf">
 <description>
-Like g_ptr_array_sort(), but the comparison function has an extra
-user data argument.
+Writes a formatted string into a #GString. 
+This function is similar to g_string_printf() except that 
+the arguments to the format string are passed as a va_list.
 
-&lt;note&gt;&lt;para&gt;The comparison function for g_ptr_array_sort_with_data()
-doesn't take the pointers from the array as arguments, it takes
-pointers to the pointers in the array.&lt;/para&gt;&lt;/note&gt;
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
+<parameter name="string">
+<parameter_description> a #GString
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function.
+<parameter name="format">
+<parameter_description> the string format. See the printf() documentation
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @compare_func.
+<parameter name="args">
+<parameter_description> the parameters to insert into the format string
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_tree_new_full">
+<function name="g_strip_context">
 <description>
-Creates a new #GTree like g_tree_new() and allows to specify functions 
-to free the memory allocated for the key and value that get called when 
-removing the entry from the #GTree.
+An auxiliary function for gettext() support (see Q_()).
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="key_compare_func">
-<parameter_description> qsort()-style comparison function.
-</parameter_description>
-</parameter>
-<parameter name="key_compare_data">
-<parameter_description> data to pass to comparison function.
-</parameter_description>
-</parameter>
-<parameter name="key_destroy_func">
-<parameter_description> a function to free the memory allocated for the key 
-used when removing the entry from the #GTree or %NULL if you don't
-want to supply such a function.
+<parameter name="msgid">
+<parameter_description> a string
 </parameter_description>
 </parameter>
-<parameter name="value_destroy_func">
-<parameter_description> a function to free the memory allocated for the 
-value used when removing the entry from the #GTree or %NULL if you 
-don't want to supply such a function.
+<parameter name="msgval">
+<parameter_description> another string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GTree.
-</return>
-</function>
-
-<function name="g_variant_get_maybe">
-<description>
-Given a maybe-typed #GVariant instance, extract its value.  If the
-value is Nothing, then this function returns %NULL.
-
-Since: 2.24
+<return> @msgval, unless @msgval is identical to @msgid and contains
+a '|' character, in which case a pointer to the substring of msgid after
+the first '|' character is returned.
 
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a maybe-typed value
-</parameter_description>
-</parameter>
-</parameters>
-<return> the contents of @value, or %NULL
 </return>
 </function>
 
-<function name="g_dataset_remove_data">
+<function name="g_strjoin">
 <description>
-Removes a data element corresponding to a string. Its destroy
-function is called if it has been set.
+Joins a number of strings together to form one long string, with the
+optional @separator inserted between each of them. The returned string
+should be freed with g_free().
+
 
 </description>
 <parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
+<parameter name="separator">
+<parameter_description> a string to insert between each of the strings, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="k">
-<parameter_description> the string identifying the data element.
+<parameter name="Varargs">
+<parameter_description> a %NULL-terminated list of strings to join
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly-allocated string containing all of the strings joined
+together, with @separator between them
+</return>
 </function>
 
-<function name="g_list_index">
+<function name="g_strjoinv">
 <description>
-Gets the position of the element containing 
-the given data (starting from 0).
+Joins a number of strings together to form one long string, with the
+optional @separator inserted between each of them. The returned string
+should be freed with g_free().
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="separator">
+<parameter_description> a string to insert between each of the strings, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data to find
+<parameter name="str_array">
+<parameter_description> a %NULL-terminated array of strings to join
 </parameter_description>
 </parameter>
 </parameters>
-<return> the index of the element containing the data, 
-or -1 if the data is not found
+<return> a newly-allocated string containing all of the strings joined
+together, with @separator between them
 </return>
 </function>
 
-<function name="g_param_spec_get_redirect_target">
+<function name="g_strlcat">
 <description>
-If the paramspec redirects operations to another paramspec,
-returns that paramspec. Redirect is used typically for
-providing a new implementation of a property in a derived
-type while preserving all the properties from the parent
-type. Redirection is established by creating a property
-of type #GParamSpecOverride. See g_object_class_override_property()
-for an example of the use of this capability.
+Portability wrapper that calls strlcat() on systems which have it,
+and emulates it otherwise. Appends nul-terminated @src string to @dest,
+guaranteeing nul-termination for @dest. The total size of @dest won't
+exceed @dest_size.
 
-Since: 2.4
+At most dest_size - 1 characters will be copied.
+Unlike strncat, dest_size is the full size of dest, not the space left over.
+This function does NOT allocate memory.
+This always NUL terminates (unless siz == 0 or there were no NUL characters
+in the dest_size characters of dest to start with).
+
+&lt;note&gt;&lt;para&gt;Caveat: this is supposedly a more secure alternative to
+strcat() or strncat(), but for real security g_strconcat() is harder
+to mess up.&lt;/para&gt;&lt;/note&gt;
 
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a #GParamSpec
+<parameter name="dest">
+<parameter_description> destination buffer, already containing one nul-terminated string
+</parameter_description>
+</parameter>
+<parameter name="src">
+<parameter_description> source buffer
+</parameter_description>
+</parameter>
+<parameter name="dest_size">
+<parameter_description> length of @dest buffer in bytes (not length of existing string
+inside @dest)
 </parameter_description>
 </parameter>
 </parameters>
-<return> paramspec to which requests on this paramspec should
-be redirected, or %NULL if none.
+<return> size of attempted result, which is MIN (dest_size, strlen
+(original dest)) + strlen (src), so if retval &gt;= dest_size,
+truncation occurred.
 </return>
 </function>
 
-<function name="g_sprintf">
+<function name="g_strlcpy">
 <description>
-An implementation of the standard sprintf() function which supports
-positional parameters, as specified in the Single Unix Specification.
+Portability wrapper that calls strlcpy() on systems which have it,
+and emulates strlcpy() otherwise. Copies @src to @dest; @dest is
+guaranteed to be nul-terminated; @src must be nul-terminated;
+ dest_size is the buffer size, not the number of chars to copy.
 
-Note that it is usually better to use g_snprintf(), to avoid the
-risk of buffer overflow.
+At most dest_size - 1 characters will be copied. Always nul-terminates
+(unless dest_size == 0). This function does &lt;emphasis&gt;not&lt;/emphasis&gt;
+allocate memory. Unlike strncpy(), this function doesn't pad dest (so
+it's often faster). It returns the size of the attempted result,
+strlen (src), so if @retval &gt;= @dest_size, truncation occurred.
 
-See also g_strdup_printf().
+&lt;note&gt;&lt;para&gt;Caveat: strlcpy() is supposedly more secure than
+strcpy() or strncpy(), but if you really want to avoid screwups,
+g_strdup() is an even better idea.&lt;/para&gt;&lt;/note&gt;
 
-Since: 2.2
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> A pointer to a memory buffer to contain the resulting string. It
-is up to the caller to ensure that the allocated buffer is large
-enough to hold the formatted result
+<parameter name="dest">
+<parameter_description> destination buffer
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="src">
+<parameter_description> source buffer
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to insert in the output.
+<parameter name="dest_size">
+<parameter_description> length of @dest in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes printed.
-
+<return> length of @src
 </return>
 </function>
 
@@ -30252,10 +25713,10 @@ enough to hold the formatted result
 <description>
 A case-insensitive string comparison, corresponding to the standard
 strncasecmp() function on platforms which support it.
-It is similar to g_strcasecmp() except it only compares the first @n 
+It is similar to g_strcasecmp() except it only compares the first @n
 characters of the strings.
 
-Deprecated:2.2: The problem with g_strncasecmp() is that it does the 
+Deprecated:2.2: The problem with g_strncasecmp() is that it does the
 comparison by calling toupper()/tolower(). These functions are
 locale-specific and operate on single bytes. However, it is impossible
 to handle things correctly from an I18N standpoint by operating on
@@ -30284,2223 +25745,2231 @@ g_utf8_casefold(), which is good for case-insensitive sorting of UTF-8.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the strings match, a negative value if @s1 &lt; @s2, 
+<return> 0 if the strings match, a negative value if @s1 &lt; @s2,
 or a positive value if @s1 &gt; @s2.
 
 </return>
 </function>
 
-<function name="g_list_nth_prev">
+<function name="g_strndup">
 <description>
-Gets the element @n places before @list.
+Duplicates the first @n bytes of a string, returning a newly-allocated
+buffer @n + 1 bytes long which will always be nul-terminated.
+If @str is less than @n bytes long the buffer is padded with nuls.
+If @str is %NULL it returns %NULL.
+The returned value should be freed when no longer needed.
+
+&lt;note&gt;&lt;para&gt;
+To copy a number of characters from a UTF-8 encoded string, use
+g_utf8_strncpy() instead.
+&lt;/para&gt;&lt;/note&gt;
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="str">
+<parameter_description> the string to duplicate
 </parameter_description>
 </parameter>
 <parameter name="n">
-<parameter_description> the position of the element, counting from 0
+<parameter_description> the maximum number of bytes to copy from @str
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element, or %NULL if the position is 
-off the end of the #GList
+<return> a newly-allocated buffer containing the first @n bytes
+of @str, nul-terminated
 </return>
 </function>
 
-<function name="g_key_file_remove_group">
+<function name="g_strnfill">
 <description>
-Removes the specified group, @group_name, 
-from the key file. 
+Creates a new string @length bytes long filled with @fill_char.
+The returned string should be freed when no longer needed.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="length">
+<parameter_description> the length of the new string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="fill_char">
+<parameter_description> the byte to fill the string with
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the group was removed, %FALSE otherwise
-
+<return> a newly-allocated string filled the @fill_char
 </return>
 </function>
 
-<function name="g_atomic_pointer_set">
+<function name="g_strreverse">
 <description>
-Sets the value of the pointer pointed to by @atomic.
-Also acts as a memory barrier.
+Reverses all of the bytes in a string. For example,
+&lt;literal&gt;g_strreverse (&quot;abcdef&quot;)&lt;/literal&gt; will result
+in &quot;fedcba&quot;.
+
+Note that g_strreverse() doesn't work on UTF-8 strings
+containing multibyte characters. For that purpose, use
+g_utf8_strreverse().
 
-Since: 2.10
 
 </description>
 <parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to a #gpointer
-</parameter_description>
-</parameter>
-<parameter name="newval">
-<parameter_description> the new value
+<parameter name="string">
+<parameter_description> the string to reverse
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the same pointer passed in as @string
+</return>
 </function>
 
-<function name="g_mutex_unlock">
+<function name="g_strrstr">
 <description>
-Unlocks @mutex. If another thread is blocked in a g_mutex_lock()
-call for @mutex, it will be woken and can lock @mutex itself.
+Searches the string @haystack for the last occurrence
+of the string @needle.
 
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will do nothing.
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GMutex.
+<parameter name="haystack">
+<parameter_description> a nul-terminated string.
+</parameter_description>
+</parameter>
+<parameter name="needle">
+<parameter_description> the nul-terminated string to search for.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the found occurrence, or
+%NULL if not found.
+</return>
 </function>
 
-<function name="g_slist_nth_data">
+<function name="g_strrstr_len">
 <description>
-Gets the data of the element at the given position.
+Searches the string @haystack for the last occurrence
+of the string @needle, limiting the length of the search
+to @haystack_len.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="haystack">
+<parameter_description> a nul-terminated string.
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the position of the element
+<parameter name="haystack_len">
+<parameter_description> the maximum length of @haystack.
+</parameter_description>
+</parameter>
+<parameter name="needle">
+<parameter_description> the nul-terminated string to search for.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element's data, or %NULL if the position 
-is off the end of the #GSList
+<return> a pointer to the found occurrence, or
+%NULL if not found.
 </return>
 </function>
 
-<function name="g_ptr_array_remove_fast">
+<function name="g_strsignal">
 <description>
-Removes the first occurrence of the given pointer from the pointer
-array. The last element in the array is used to fill in the space,
-so this function does not preserve the order of the array. But it is
-faster than g_ptr_array_remove(). If @array has a non-%NULL
-#GDestroyNotify function it is called for the removed element.
+Returns a string describing the given signal, e.g. &quot;Segmentation fault&quot;.
+You should use this function in preference to strsignal(), because it
+returns a string in UTF-8 encoding, and since not all platforms support
+the strsignal() function.
 
-It returns %TRUE if the pointer was removed, or %FALSE if the
-pointer was not found.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the pointer to remove.
+<parameter name="signum">
+<parameter_description> the signal number. See the &lt;literal&gt;signal&lt;/literal&gt;
+documentation
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the pointer was found in the array.
+<return> a UTF-8 string describing the signal. If the signal is unknown,
+it returns &quot;unknown signal (&lt;signum&gt;)&quot;. The string can only be
+used until the next call to g_strsignal()
 </return>
 </function>
 
-<function name="g_string_prepend_c">
+<function name="g_strsplit">
 <description>
-Adds a byte onto the start of a #GString, 
-expanding it if necessary.
+Splits a string into a maximum of @max_tokens pieces, using the given
+ delimiter  If @max_tokens is reached, the remainder of @string is appended
+to the last token.
+
+As a special case, the result of splitting the empty string &quot;&quot; is an empty
+vector, not a vector containing a single string. The reason for this
+special case is that being able to represent a empty vector is typically
+more useful than consistent handling of empty elements. If you do need
+to represent empty elements, you'll need to check for the empty string
+before calling g_strsplit().
 
 
 </description>
 <parameters>
 <parameter name="string">
-<parameter_description> a #GString
+<parameter_description> a string to split.
 </parameter_description>
 </parameter>
-<parameter name="c">
-<parameter_description> the byte to prepend on the start of the #GString
+<parameter name="delimiter">
+<parameter_description> a string which specifies the places at which to split the string.
+The delimiter is not included in any of the resulting strings, unless
+ max_tokens is reached.
 </parameter_description>
 </parameter>
-</parameters>
-<return> @string
-</return>
-</function>
-
-<function name="g_static_mutex_trylock">
-<description>
-Works like g_mutex_trylock(), but for a #GStaticMutex.
-
-</description>
-<parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticMutex.
+<parameter name="max_tokens">
+<parameter_description> the maximum number of pieces to split @string into. If this is
+less than 1, the string is split completely.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, if the #GStaticMutex could be locked.
+<return> a newly-allocated %NULL-terminated array of strings. Use
+g_strfreev() to free it.
 </return>
 </function>
 
-<function name="g_completion_clear_items">
+<function name="g_strsplit_set">
 <description>
-Removes all items from the #GCompletion.
+Splits @string into a number of tokens not containing any of the characters
+in @delimiter. A token is the (possibly empty) longest string that does not
+contain any of the characters in @delimiters. If @max_tokens is reached, the
+remainder is appended to the last token.
 
-Deprecated: 2.26: Rarely used API
+For example the result of g_strsplit_set (&quot;abc:def/ghi&quot;, &quot;:/&quot;, -1) is a
+%NULL-terminated vector containing the three strings &quot;abc&quot;, &quot;def&quot;,
+and &quot;ghi&quot;.
 
-</description>
-<parameters>
-<parameter name="cmp">
-<parameter_description> the #GCompletion.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+The result if g_strsplit_set (&quot;:def/ghi:&quot;, &quot;:/&quot;, -1) is a %NULL-terminated
+vector containing the four strings &quot;&quot;, &quot;def&quot;, &quot;ghi&quot;, and &quot;&quot;.
 
-<function name="g_param_value_defaults">
-<description>
-Checks whether @value contains the default value as specified in @pspec.
+As a special case, the result of splitting the empty string &quot;&quot; is an empty
+vector, not a vector containing a single string. The reason for this
+special case is that being able to represent a empty vector is typically
+more useful than consistent handling of empty elements. If you do need
+to represent empty elements, you'll need to check for the empty string
+before calling g_strsplit_set().
+
+Note that this function works on bytes not characters, so it can't be used
+to delimit UTF-8 strings for anything but ASCII characters.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="string">
+<parameter_description> The string to be tokenized
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue of correct type for @pspec
+<parameter name="delimiters">
+<parameter_description> A nul-terminated string containing bytes that are used
+to split the string.
+</parameter_description>
+</parameter>
+<parameter name="max_tokens">
+<parameter_description> The maximum number of tokens to split @string into.
+If this is less than 1, the string is split completely
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether @value contains the canonical default for this @pspec
+<return> a newly-allocated %NULL-terminated array of strings. Use
+g_strfreev() to free it.
+
 </return>
 </function>
 
-<function name="g_list_pop_allocator">
+<function name="g_strstr_len">
 <description>
-Restores the previous #GAllocator, used when allocating #GList
-elements.
+Searches the string @haystack for the first occurrence
+of the string @needle, limiting the length of the search
+to @haystack_len.
 
-Note that this function is not available if GLib has been compiled
-with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
-
-Deprecated:2.10: It does nothing, since #GList has been converted
-to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt;
 
 </description>
 <parameters>
+<parameter name="haystack">
+<parameter_description> a string.
+</parameter_description>
+</parameter>
+<parameter name="haystack_len">
+<parameter_description> the maximum length of @haystack. Note that -1 is
+a valid length, if @haystack is nul-terminated, meaning it will
+search through the whole string.
+</parameter_description>
+</parameter>
+<parameter name="needle">
+<parameter_description> the string to search for.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> a pointer to the found occurrence, or
+%NULL if not found.
+</return>
 </function>
 
-<function name="g_markup_escape_text">
+<function name="g_strtod">
 <description>
-Escapes text so that the markup parser will parse it verbatim.
-Less than, greater than, ampersand, etc. are replaced with the
-corresponding entities. This function would typically be used
-when writing out a file to be parsed with the markup parser.
-
-Note that this function doesn't protect whitespace and line endings
-from being processed according to the XML rules for normalization
-of line endings and attribute values.
+Converts a string to a #gdouble value.
+It calls the standard strtod() function to handle the conversion, but
+if the string is not completely converted it attempts the conversion
+again with g_ascii_strtod(), and returns the best match.
 
-Note also that this function will produce character references in
-the range of &amp;#x1; ... &amp;#x1f; for all control sequences
-except for tabstop, newline and carriage return.  The character
-references in this range are not valid XML 1.0, but they are
-valid XML 1.1 and will be accepted by the GMarkup parser.
+This function should seldomly be used. The normal situation when reading
+numbers not for human consumption is to use g_ascii_strtod(). Only when
+you know that you must expect both locale formatted and C formatted numbers
+should you use this. Make sure that you don't pass strings such as comma
+separated lists of values, since the commas may be interpreted as a decimal
+point in some locales, causing unexpected results.
 
 
 </description>
 <parameters>
-<parameter name="text">
-<parameter_description> some valid UTF-8 text
+<parameter name="nptr">
+<parameter_description>    the string to convert to a numeric value.
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> length of @text in bytes, or -1 if the text is nul-terminated
+<parameter name="endptr">
+<parameter_description>  if non-%NULL, it returns the character after
+the last character used in the conversion.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string with the escaped text
+<return> the #gdouble value.
 </return>
 </function>
 
-<function name="g_variant_type_peek_string">
+<function name="g_strup">
 <description>
-Returns the type string corresponding to the given @type.  The
-result is not nul-terminated; in order to determine its length you
-must call g_variant_type_get_string_length().
+Converts a string to upper case.
 
-To get a nul-terminated string, see g_variant_type_dup_string().
-
-Since 2.24
+Deprecated:2.2: This function is totally broken for the reasons discussed
+in the g_strncasecmp() docs - use g_ascii_strup() or g_utf8_strup() instead.
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="string">
+<parameter_description> the string to convert.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the corresponding type string (not nul-terminated)
+<return> the string
+
 </return>
 </function>
 
-<function name="g_type_default_interface_peek">
+<function name="g_strv_length">
 <description>
-If the interface type @g_type is currently in use, returns its
-default interface vtable.
-
-Since: 2.4
+Returns the length of the given %NULL-terminated
+string array @str_array.
 
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="g_type">
-<parameter_description> an interface type
+<parameter name="str_array">
+<parameter_description> a %NULL-terminated array of strings.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the default vtable for the interface, or %NULL
-if the type is not currently in use.
+<return> length of @str_array.
+
 </return>
 </function>
 
-<function name="g_array_insert_val">
+<function name="g_test_add">
 <description>
-Inserts an element into an array at the given index.
+Hook up a new test case at @testpath, similar to g_test_add_func().
+A fixture data structure with setup and teardown function may be provided
+though, similar to g_test_create_case().
+g_test_add() is implemented as a macro, so that the fsetup(), ftest() and
+fteardown() callbacks can expect a @Fixture pointer as first argument in
+a type safe manner.
 
-&lt;note&gt;&lt;para&gt;g_array_insert_val() is a macro which uses a reference
-to the value parameter @v. This means that you cannot use it with
-literal values such as &quot;27&quot;. You must use variables.&lt;/para&gt;&lt;/note&gt;
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #GArray.
+<parameter name="testpath">
+<parameter_description>  The test path for a new test case.
 </parameter_description>
 </parameter>
-<parameter name="i">
-<parameter_description> the index to place the element at.
+<parameter name="Fixture">
+<parameter_description>   The type of a fixture data structure.
 </parameter_description>
 </parameter>
-<parameter name="v">
-<parameter_description> the value to insert into the array.
+<parameter name="tdata">
+<parameter_description>     Data argument for the test functions.
+</parameter_description>
+</parameter>
+<parameter name="fsetup">
+<parameter_description>    The function to set up the fixture data.
+</parameter_description>
+</parameter>
+<parameter name="ftest">
+<parameter_description>     The actual test function.
+</parameter_description>
+</parameter>
+<parameter name="fteardown">
+<parameter_description> The function to tear down the fixture data.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
-</return>
+<return></return>
 </function>
 
-<function name="g_bit_lock">
+<function name="g_test_add_data_func">
 <description>
-Sets the indicated @lock_bit in @address.  If the bit is already
-set, this call will block until g_bit_unlock() unsets the
-corresponding bit.
-
-Attempting to lock on two different bits within the same integer is
-not supported and will very probably cause deadlocks.
-
-The value of the bit that is set is (1u &lt;&lt; @bit).  If @bit is not
-between 0 and 31 then the result is undefined.
-
-This function accesses @address atomically.  All other accesses to
- address must be atomic in order for this function to work
-reliably.
+Create a new test case, similar to g_test_create_case(). However
+the test is assumed to use no fixture, and test suites are automatically
+created on the fly and added to the root fixture, based on the
+slash-separated portions of @testpath. The @test_data argument
+will be passed as first argument to @test_func.
 
-Since: 2.24
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a pointer to an integer
+<parameter name="testpath">
+<parameter_description>   Slash-separated test case path name for the test.
 </parameter_description>
 </parameter>
-<parameter name="lock_bit">
-<parameter_description> a bit value between 0 and 31
+<parameter name="test_data">
+<parameter_description>  Test data argument for the test function.
+</parameter_description>
+</parameter>
+<parameter name="test_func">
+<parameter_description>  The test function to invoke for this test.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_remove">
+<function name="g_test_add_func">
 <description>
-A wrapper for the POSIX remove() function. The remove() function
-deletes a name from the filesystem.
-
-See your C library manual for more details about how remove() works
-on your system. On Unix, remove() removes also directories, as it
-calls unlink() for files and rmdir() for directories. On Windows,
-although remove() in the C library only works for files, this
-function tries first remove() and then if that fails rmdir(), and
-thus works for both files and directories. Note however, that on
-Windows, it is in general not possible to remove a file that is
-open to some process, or mapped into memory.
-
-If this function fails on Windows you can't infer too much from the
-errno value. rmdir() is tried regardless of what caused remove() to
-fail. Any errno value set by remove() will be overwritten by that
-set by rmdir().
+Create a new test case, similar to g_test_create_case(). However
+the test is assumed to use no fixture, and test suites are automatically
+created on the fly and added to the root fixture, based on the
+slash-separated portions of @testpath.
 
-Since: 2.6
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="testpath">
+<parameter_description>   Slash-separated test case path name for the test.
+</parameter_description>
+</parameter>
+<parameter name="test_func">
+<parameter_description>  The test function to invoke for this test.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the file was successfully removed, -1 if an error 
-occurred
-
-</return>
+<return></return>
 </function>
 
-<function name="g_list_reverse">
+<function name="g_test_bug">
 <description>
-Reverses a #GList.
-It simply switches the next and prev pointers of each element.
+This function adds a message to test reports that
+associates a bug URI with a test case.
+Bug URIs are constructed from a base URI set with g_test_bug_base()
+and @bug_uri_snippet.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="bug_uri_snippet">
+<parameter_description> Bug specific bug tracker URI portion.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the start of the reversed #GList
-</return>
+<return></return>
 </function>
 
-<function name="g_main_context_check">
+<function name="g_test_bug_base">
 <description>
-Passes the results of polling back to the main loop.
+Specify the base URI for bug reports.
+
+The base URI is used to construct bug report messages for
+g_test_message() when g_test_bug() is called.
+Calling this function outside of a test case sets the
+default base URI for all test cases. Calling it from within
+a test case changes the base URI for the scope of the test
+case only.
+Bug URIs are constructed by appending a bug specific URI
+portion to @uri_pattern, or by replacing the special string
+'%s' within @uri_pattern if that is present.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
-</parameter_description>
-</parameter>
-<parameter name="max_priority">
-<parameter_description> the maximum numerical priority of sources to check
-</parameter_description>
-</parameter>
-<parameter name="fds">
-<parameter_description> array of #GPollFD's that was passed to the last call to
-g_main_context_query()
-</parameter_description>
-</parameter>
-<parameter name="n_fds">
-<parameter_description> return value of g_main_context_query()
+<parameter name="uri_pattern">
+<parameter_description> the base pattern for bug URIs
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if some sources are ready to be dispatched.
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_parse">
+<function name="g_test_create_case">
 <description>
-Parses a #GVariant from a text representation.
-
-A single #GVariant is parsed from the content of @text.
-
-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 @text.
-
-If @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 function.  If @endptr is %NULL and there is extra data
-then an error is returned.
-
-If @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 #GVariant
-is returned.
+Create a new #GTestCase, named @test_name, this API is fairly
+low level, calling g_test_add() or g_test_add_func() is preferable.
+When this test is executed, a fixture structure of size @data_size
+will be allocated and filled with 0s. Then data_setup() is called
+to initialize the fixture. After fixture setup, the actual test
+function data_test() is called. Once the test run completed, the
+fixture structure is torn down  by calling data_teardown() and
+after that the memory is released.
 
-In case of any error, %NULL will be returned.  If @error is non-%NULL
-then it will be set to reflect the error that occured.
+Splitting up a test run into fixture setup, test function and
+fixture teardown is most usful if the same fixture is used for
+multiple tests. In this cases, g_test_create_case() will be
+called with the same fixture, but varying @test_name and
+ data_test arguments.
 
-Officially, the language understood by the parser is &quot;any string
-produced by g_variant_print()&quot;.
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType, or %NULL
+<parameter name="test_name">
+<parameter_description>     the name for the test case
 </parameter_description>
 </parameter>
-<parameter name="text">
-<parameter_description> a string containing a GVariant in text form
+<parameter name="data_size">
+<parameter_description>     the size of the fixture data structure
 </parameter_description>
 </parameter>
-<parameter name="limit">
-<parameter_description> a pointer to the end of @text, or %NULL
+<parameter name="test_data">
+<parameter_description>     test data argument for the test functions
 </parameter_description>
 </parameter>
-<parameter name="endptr">
-<parameter_description> a location to store the end pointer, or %NULL
+<parameter name="data_setup">
+<parameter_description>    the function to set up the fixture data
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a pointer to a %NULL #GError pointer, or %NULL
+<parameter name="data_test">
+<parameter_description>     the actual test function
+</parameter_description>
+</parameter>
+<parameter name="data_teardown">
+<parameter_description> the function to teardown the fixture data
 </parameter_description>
 </parameter>
 </parameters>
-<return> a reference to a #GVariant, or %NULL
+<return> a newly allocated #GTestCase.
+
 </return>
 </function>
 
-<function name="g_sequence_sort">
+<function name="g_test_create_suite">
 <description>
-Sorts @seq using @cmp_func.
+Create a new test suite with the name @suite_name.
 
-Since: 2.14
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
-</parameter_description>
-</parameter>
-<parameter name="cmp_func">
-<parameter_description> the #GCompareDataFunc used to sort @seq. This function is
-passed two items of @seq and should return 0 if they are equal,
-a negative value if the first comes before the second, and a
-positive value if the second comes before the first.
-</parameter_description>
-</parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @cmp_func
+<parameter name="suite_name">
+<parameter_description> a name for the suite
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A newly allocated #GTestSuite instance.
+
+</return>
 </function>
 
-<function name="g_option_context_set_summary">
+<function name="g_test_get_root">
 <description>
-Adds a string to be displayed in &lt;option&gt;--help&lt;/option&gt; output
-before the list of options. This is typically a summary of the
-program functionality. 
-
-Note that the summary is translated (see 
-g_option_context_set_translate_func() and
-g_option_context_set_translation_domain()).
+Get the toplevel test suite for the test path API.
 
-Since: 2.12
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
-</parameter_description>
-</parameter>
-<parameter name="summary">
-<parameter_description> a string to be shown in &lt;option&gt;--help&lt;/option&gt; output 
-before the list of options, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the toplevel #GTestSuite
+
+</return>
 </function>
 
-<function name="g_param_spec_double">
+<function name="g_test_init">
 <description>
-Creates a new #GParamSpecDouble instance specifying a %G_TYPE_DOUBLE
-property.
-
-See g_param_spec_internal() for details on property names.
+Initialize the GLib testing framework, e.g. by seeding the
+test random number generator, the name for g_get_prgname()
+and parsing test related command line args.
+So far, the following arguments are understood:
+&lt;variablelist&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;-l&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+list test cases available in a test executable.
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;--seed=&lt;replaceable&gt;RANDOMSEED&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+provide a random seed to reproduce test runs using random numbers.
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;--verbose&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;run tests verbosely.&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;-q&lt;/option&gt;, &lt;option&gt;--quiet&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;run tests quietly.&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;-p &lt;replaceable&gt;TESTPATH&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+execute all tests matching &lt;replaceable&gt;TESTPATH&lt;/replaceable&gt;.
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;-m {perf|slow|thorough|quick}&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+execute tests according to these test modes:
+&lt;variablelist&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;perf&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+performance tests, may take long and report results.
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;slow, thorough&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+slow and thorough tests, may take quite long and 
+maximize coverage.
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;quick&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+quick tests, should run really quickly and give good coverage.
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;/variablelist&gt;
+&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;--debug-log&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;debug test logging output.&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;-k&lt;/option&gt;, &lt;option&gt;--keep-going&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;gtester-specific argument.&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;--GTestLogFD &lt;replaceable&gt;N&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;gtester-specific argument.&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;varlistentry&gt;
+&lt;term&gt;&lt;option&gt;--GTestSkipCount &lt;replaceable&gt;N&lt;/replaceable&gt;&lt;/option&gt;&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;gtester-specific argument.&lt;/para&gt;&lt;/listitem&gt;
+&lt;/varlistentry&gt;
+&lt;/variablelist&gt;
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
+<parameter name="argc">
+<parameter_description> Address of the @argc parameter of the main() function.
+Changed if any arguments were handled.
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="argv">
+<parameter_description> Address of the @argv parameter of main().
+Any parameters understood by g_test_init() stripped before return.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="Varargs">
+<parameter_description> Reserved for future extension. Currently, you must pass %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
-</return>
+<return></return>
 </function>
 
-<function name="g_io_channel_read_to_end">
+<function name="g_test_log_buffer_free">
 <description>
-Reads all the remaining data from the file.
-
+Internal function for gtester to free test log messages, no ABI guarantees provided.
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="str_return">
-<parameter_description> Location to store a pointer to a string holding
-the remaining data in the #GIOChannel. This data should
-be freed with g_free() when no longer needed. This
-data is terminated by an extra nul character, but there 
-may be other nuls in the intervening data.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> location to store length of the data
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to return an error of type #GConvertError
-or #GIOChannelError
-</parameter_description>
-</parameter>
 </parameters>
-<return> %G_IO_STATUS_NORMAL on success. 
-This function never returns %G_IO_STATUS_EOF.
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_type_free">
+<function name="g_test_log_buffer_new">
 <description>
-Frees a #GVariantType that was allocated with
-g_variant_type_copy(), g_variant_type_new() or one of the container
-type constructor functions.
+Internal function for gtester to decode test log messages, no ABI guarantees provided.
 
-In the case that @type is %NULL, this function does nothing.
+</description>
+<parameters>
+</parameters>
+<return></return>
+</function>
 
-Since 2.24
+<function name="g_test_log_buffer_pop">
+<description>
+Internal function for gtester to retrieve test log messages, no ABI guarantees provided.
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_random_double">
+<function name="g_test_log_buffer_push">
 <description>
-Returns a random #gdouble equally distributed over the range [0..1).
-
+Internal function for gtester to decode test log messages, no ABI guarantees provided.
 
 </description>
 <parameters>
 </parameters>
-<return> A random number.
-</return>
+<return></return>
 </function>
 
-<function name="g_closure_add_finalize_notifier">
+<function name="g_test_log_msg_free">
 <description>
-Registers a finalization notifier which will be called when the
-reference count of @closure goes down to 0. Multiple finalization
-notifiers on a single closure are invoked in unspecified order. If
-a single call to g_closure_unref() results in the closure being
-both invalidated and finalized, then the invalidate notifiers will
-be run before the finalize notifiers.
+Internal function for gtester to free test log messages, no ABI guarantees provided.
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
-</parameter_description>
-</parameter>
-<parameter name="notify_data">
-<parameter_description> data to pass to @notify_func
-</parameter_description>
-</parameter>
-<parameter name="notify_func">
-<parameter_description> the callback function to register
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_ascii_strcasecmp">
+<function name="g_test_log_set_fatal_handler">
 <description>
-Compare two strings, ignoring the case of ASCII characters.
+Installs a non-error fatal log handler which can be
+used to decide whether log messages which are counted
+as fatal abort the program.
 
-Unlike the BSD strcasecmp() function, this only recognizes standard
-ASCII letters and ignores the locale, treating all non-ASCII
-bytes as if they are not letters.
+The use case here is that you are running a test case
+that depends on particular libraries or circumstances
+and cannot prevent certain known critical or warning
+messages. So you install a handler that compares the
+domain and message to precisely not abort in such a case.
 
-This function should be used only on strings that are known to be
-in encodings where the bytes corresponding to ASCII letters always
-represent themselves. This includes UTF-8 and the ISO-8859-*
-charsets, but not for instance double-byte encodings like the
-Windows Codepage 932, where the trailing bytes of double-byte
-characters include all ASCII letters. If you compare two CP932
-strings using this function, you will get false matches.
+Note that the handler is reset at the beginning of
+any test case, so you have to set it inside each test
+function which needs the special behavior.
 
+This handler has no effect on g_error messages.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="s1">
-<parameter_description> string to compare with @s2.
+<parameter name="log_func">
+<parameter_description> the log handler function.
 </parameter_description>
 </parameter>
-<parameter name="s2">
-<parameter_description> string to compare with @s1.
+<parameter name="user_data">
+<parameter_description> data passed to the log handler.
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the strings match, a negative value if @s1 &lt; @s2, 
-or a positive value if @s1 &gt; @s2.
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_remove_emission_hook">
+<function name="g_test_maximized_result">
 <description>
-Deletes an emission hook.
+Report the result of a performance or measurement test.
+The test should generally strive to maximize the reported
+quantities (larger values are better than smaller ones),
+this and @maximized_quantity can determine sorting
+order for test result reports.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="signal_id">
-<parameter_description> the id of the signal
+<parameter name="maximized_quantity">
+<parameter_description> the reported value
 </parameter_description>
 </parameter>
-<parameter name="hook_id">
-<parameter_description> the id of the emission hook, as returned by
-g_signal_add_emission_hook()
+<parameter name="format">
+<parameter_description> the format string of the report message
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments to pass to the printf() function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_compute_checksum_for_data">
+<function name="g_test_message">
 <description>
-Computes the checksum for a binary @data of @length. This is a
-convenience wrapper for g_checksum_new(), g_checksum_get_string()
-and g_checksum_free().
-
-The hexadecimal string returned will be in lower case.
+Add a message to the test report.
 
 Since: 2.16
 
 </description>
 <parameters>
-<parameter name="checksum_type">
-<parameter_description> a #GChecksumType
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> binary blob to compute the digest of
+<parameter name="format">
+<parameter_description> the format string
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> length of @data
+<parameter name="Varargs">
+<parameter_description>    printf-like arguments to @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> the digest of the binary data as a string in hexadecimal.
-The returned string should be freed with g_free() when done using it.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_hash_table_insert">
+<function name="g_test_minimized_result">
 <description>
-Inserts a new key and value into a #GHashTable.
+Report the result of a performance or measurement test.
+The test should generally strive to minimize the reported
+quantities (smaller values are better than larger ones),
+this and @minimized_quantity can determine sorting
+order for test result reports.
 
-If the key already exists in the #GHashTable its current value is replaced
-with the new value. If you supplied a @value_destroy_func when creating the
-#GHashTable, the old value is freed using that function. If you supplied
-a @key_destroy_func when creating the #GHashTable, the passed key is freed
-using that function.
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
+<parameter name="minimized_quantity">
+<parameter_description> the reported value
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key to insert.
+<parameter name="format">
+<parameter_description> the format string of the report message
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to associate with the key.
+<parameter name="Varargs">
+<parameter_description> arguments to pass to the printf() function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_tree_foreach">
+<function name="g_test_queue_destroy">
 <description>
-Calls the given function for each of the key/value pairs in the #GTree.
-The function is passed the key and value of each pair, and the given
- data parameter. The tree is traversed in sorted order.
+This function enqueus a callback @destroy_func() to be executed
+during the next test case teardown phase. This is most useful
+to auto destruct allocted test resources at the end of a test run.
+Resources are released in reverse queue order, that means enqueueing
+callback A before callback B will cause B() to be called before
+A() during teardown.
 
-The tree may not be modified while iterating over it (you can't 
-add/remove items). To remove all items matching a predicate, you need 
-to add each item to a list in your #GTraverseFunc as you walk over 
-the tree, then walk the list and remove each item.
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each node visited. If this function
-returns %TRUE, the traversal is stopped.
+<parameter name="destroy_func">
+<parameter_description>       Destroy callback for teardown phase.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="destroy_data">
+<parameter_description>       Destroy callback data.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_closure_set_marshal">
+<function name="g_test_queue_free">
 <description>
-Sets the marshaller of @closure. The &lt;literal&gt;marshal_data&lt;/literal&gt;
-of @marshal provides a way for a meta marshaller to provide additional
-information to the marshaller. (See g_closure_set_meta_marshal().) For
-GObject's C predefined marshallers (the g_cclosure_marshal_*()
-functions), what it provides is a callback function to use instead of
- closure-&gt;callback.
+Enqueue a pointer to be released with g_free() during the next
+teardown phase. This is equivalent to calling g_test_queue_destroy()
+with a destroy callback of g_free().
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
-</parameter_description>
-</parameter>
-<parameter name="marshal">
-<parameter_description> a #GClosureMarshal function
+<parameter name="gfree_pointer">
+<parameter_description> the pointer to be stored.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_get_user_special_dir">
+<function name="g_test_rand_double">
 <description>
-Returns the full path of a special directory using its logical id.
+Get a reproducible random floating point number,
+see g_test_rand_int() for details on test case random numbers.
 
-On Unix this is done using the XDG special user directories.
-For compatibility with existing practise, %G_USER_DIRECTORY_DESKTOP
-falls back to &lt;filename&gt;$HOME/Desktop&lt;/filename&gt; when XDG special
-user directories have not been set up. 
+Since: 2.16
 
-Depending on the platform, the user might be able to change the path
-of the special directory without requiring the session to restart; GLib
-will not reflect any change once the special directories are loaded.
+</description>
+<parameters>
+</parameters>
+<return> a random number from the seeded random number generator.
 
-Since: 2.14
+</return>
+</function>
+
+<function name="g_test_rand_double_range">
+<description>
+Get a reproducible random floating pointer number out of a specified range,
+see g_test_rand_int() for details on test case random numbers.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="directory">
-<parameter_description> the logical id of special directory
+<parameter name="range_start">
+<parameter_description> the minimum value returned by this function
+</parameter_description>
+</parameter>
+<parameter name="range_end">
+<parameter_description> the minimum value not returned by this function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the path to the specified special directory, or %NULL
-if the logical id was not found. The returned string is owned by
-GLib and should not be modified or freed.
+<return> a number with @range_start &lt;= number &lt; @range_end.
 
 </return>
 </function>
 
-<function name="g_variant_builder_add_parsed">
+<function name="g_test_rand_int">
 <description>
-Adds to a #GVariantBuilder.
-
-This call is a convenience wrapper that is exactly equivalent to
-calling g_variant_new_parsed() followed by
-g_variant_builder_add_value().
-
-This function might be used as follows:
+Get a reproducible random integer number.
 
-&lt;programlisting&gt;
-GVariant *
-make_pointless_dictionary (void)
-{
-GVariantBuilder *builder;
-int i;
+The random numbers generated by the g_test_rand_*() family of functions
+change with every new test program start, unless the --seed option is
+given when starting test programs.
 
-builder = g_variant_builder_new (G_VARIANT_TYPE_ARRAY);
-g_variant_builder_add_parsed (builder, &quot;{'width', &lt;%i&gt;}&quot;, 600);
-g_variant_builder_add_parsed (builder, &quot;{'title', &lt;%s&gt;}&quot;, &quot;foo&quot;);
-g_variant_builder_add_parsed (builder, &quot;{'transparency', &lt;0.5&gt;}&quot;);
-return g_variant_builder_end (builder);
-}
-&lt;/programlisting&gt;
+For individual test cases however, the random number generator is
+reseeded, to avoid dependencies between tests and to make --seed
+effective for all test cases.
 
-Since: 2.26
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> a text format #GVariant
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> arguments as per @format
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a random number from the seeded random number generator.
+
+</return>
 </function>
 
-<function name="g_strcasecmp">
+<function name="g_test_rand_int_range">
 <description>
-A case-insensitive string comparison, corresponding to the standard
-strcasecmp() function on platforms which support it.
+Get a reproducible random integer number out of a specified range,
+see g_test_rand_int() for details on test case random numbers.
 
-Deprecated:2.2: See g_strncasecmp() for a discussion of why this function 
-is deprecated and how to replace it.
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="s1">
-<parameter_description> a string.
+<parameter name="begin">
+<parameter_description> the minimum value returned by this function
 </parameter_description>
 </parameter>
-<parameter name="s2">
-<parameter_description> a string to compare with @s1.
+<parameter name="end">
+<parameter_description>   the smallest value not to be returned by this function
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if the strings match, a negative value if @s1 &lt; @s2, 
-or a positive value if @s1 &gt; @s2.
+<return> a number with @begin &lt;= number &lt; @end.
 
 </return>
 </function>
 
-<function name="g_propagate_error">
+<function name="g_test_run">
 <description>
-If @dest is %NULL, free @src; otherwise, moves @src into * dest 
-The error variable @dest points to must be %NULL.
+Runs all tests under the toplevel suite which can be retrieved
+with g_test_get_root(). Similar to g_test_run_suite(), the test
+cases to be run are filtered according to
+test path arguments (-p &lt;replaceable&gt;testpath&lt;/replaceable&gt;) as 
+parsed by g_test_init().
+g_test_run_suite() or g_test_run() may only be called once
+in a program.
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="dest">
-<parameter_description> error return location
-</parameter_description>
-</parameter>
-<parameter name="src">
-<parameter_description> error to move into the return location
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> 0 on success
+
+</return>
 </function>
 
-<function name="g_variant_new_int16">
+<function name="g_test_run_suite">
 <description>
-Creates a new int16 #GVariant instance.
+Execute the tests within @suite and all nested #GTestSuites.
+The test suites to be executed are filtered according to
+test path arguments (-p &lt;replaceable&gt;testpath&lt;/replaceable&gt;) 
+as parsed by g_test_init().
+g_test_run_suite() or g_test_run() may only be called once
+in a program.
 
-Since: 2.24
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="int16">
-<parameter_description> a #gint16 value
+<parameter name="suite">
+<parameter_description> a #GTestSuite
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new int16 #GVariant instance
+<return> 0 on success
+
 </return>
 </function>
 
-<function name="g_variant_iter_new">
+<function name="g_test_suite_add">
 <description>
-Creates a heap-allocated #GVariantIter for iterating over the items
-in @value.
-
-Use g_variant_iter_free() to free the return value when you no longer
-need it.
-
-A reference is taken to @value and will be released only when
-g_variant_iter_free() is called.
+Adds @test_case to @suite.
 
-Since: 2.24
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a container #GVariant
+<parameter name="suite">
+<parameter_description> a #GTestSuite
+</parameter_description>
+</parameter>
+<parameter name="test_case">
+<parameter_description> a #GTestCase
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new heap-allocated #GVariantIter
-</return>
+<return></return>
 </function>
 
-<function name="g_string_equal">
+<function name="g_test_suite_add_suite">
 <description>
-Compares two strings for equality, returning %TRUE if they are equal. 
-For use with #GHashTable.
+Adds @nestedsuite to @suite.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="v">
-<parameter_description> a #GString
+<parameter name="suite">
+<parameter_description>       a #GTestSuite
 </parameter_description>
 </parameter>
-<parameter name="v2">
-<parameter_description> another #GString
+<parameter name="nestedsuite">
+<parameter_description> another #GTestSuite
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if they strings are the same length and contain the 
-same bytes
-</return>
+<return></return>
 </function>
 
-<function name="g_checksum_type_get_length">
+<function name="g_test_timer_elapsed">
 <description>
-Gets the length in bytes of digests of type @checksum_type
+Get the time since the last start of the timer with g_test_timer_start().
 
 Since: 2.16
 
 </description>
 <parameters>
-<parameter name="checksum_type">
-<parameter_description> a #GChecksumType
-</parameter_description>
-</parameter>
 </parameters>
-<return> the checksum length, or -1 if @checksum_type is
-not supported.
+<return> the time since the last start of the timer, as a double
 
 </return>
 </function>
 
-<function name="g_main_current_source">
+<function name="g_test_timer_last">
 <description>
-Returns the currently firing source for this thread.
+Report the last result of g_test_timer_elapsed().
 
-Since: 2.12
+Since: 2.16
 
 </description>
 <parameters>
 </parameters>
-<return> The currently firing source or %NULL.
+<return> the last result of g_test_timer_elapsed(), as a double
 
 </return>
 </function>
 
-<function name="g_key_file_set_double_list">
+<function name="g_test_timer_start">
 <description>
-Associates a list of double values with @key under
- group_name   If @key cannot be found then it is created.
+Start a timing test. Call g_test_timer_elapsed() when the task is supposed
+to be done. Call this function again to restart the timer.
 
-Since: 2.12
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="list">
-<parameter_description> an array of double values
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> number of double values in @list
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_enum_register_static">
+<function name="g_test_trap_fork">
 <description>
-Registers a new static enumeration type with the name @name.
+Fork the current test program to execute a test case that might
+not return or that might abort. The forked test case is aborted
+and considered failing if its run time exceeds @usec_timeout.
+
+The forking behavior can be configured with the #GTestTrapFlags flags.
+
+In the following example, the test code forks, the forked child
+process produces some sample output and exits successfully.
+The forking parent process then asserts successful child program
+termination and validates child program outputs.
+
+|[
+static void
+test_fork_patterns (void)
+{
+if (g_test_trap_fork (0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR))
+{
+g_print (&quot;some stdout text: somagic17\n&quot;);
+g_printerr (&quot;some stderr text: semagic43\n&quot;);
+exit (0); / * successful test run * /
+}
+g_test_trap_assert_passed();
+g_test_trap_assert_stdout (&quot;*somagic17*&quot;);
+g_test_trap_assert_stderr (&quot;*semagic43*&quot;);
+}
+]|
 
-It is normally more convenient to let &lt;link
-linkend=&quot;glib-mkenums&quot;&gt;glib-mkenums&lt;/link&gt; generate a
-my_enum_get_type() function from a usual C enumeration definition
-than to write one yourself using g_enum_register_static().
+This function is implemented only on Unix platforms.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> A nul-terminated string used as the name of the new type.
+<parameter name="usec_timeout">
+<parameter_description>    Timeout for the forked test in micro seconds.
 </parameter_description>
 </parameter>
-<parameter name="const_static_values">
-<parameter_description> An array of #GEnumValue structs for the possible
-enumeration values. The array is terminated by a struct with all
-members being 0. GObject keeps a reference to the data, so it cannot
-be stack-allocated.
+<parameter name="test_trap_flags">
+<parameter_description> Flags to modify forking behaviour.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The new type identifier.
+<return> %TRUE for the forked child and %FALSE for the executing parent process.
+
 </return>
 </function>
 
-<function name="g_sequence_iter_get_position">
+<function name="g_test_trap_has_passed">
 <description>
-Returns the position of @iter
+Check the result of the last g_test_trap_fork() call.
 
-Since: 2.14
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
 </parameters>
-<return> the position of @iter
+<return> %TRUE if the last forked child terminated successfully.
 
 </return>
 </function>
 
-<function name="g_utf8_normalize">
+<function name="g_test_trap_reached_timeout">
 <description>
-Converts a string into canonical form, standardizing
-such issues as whether a character with an accent
-is represented as a base character and combining
-accent or as a single precomposed character. The
-string has to be valid UTF-8, otherwise %NULL is
-returned. You should generally call g_utf8_normalize()
-before comparing two Unicode strings.
-
-The normalization mode %G_NORMALIZE_DEFAULT only
-standardizes differences that do not affect the
-text content, such as the above-mentioned accent
-representation. %G_NORMALIZE_ALL also standardizes
-the &quot;compatibility&quot; characters in Unicode, such
-as SUPERSCRIPT THREE to the standard forms
-(in this case DIGIT THREE). Formatting information
-may be lost but for most text operations such
-characters should be considered the same.
-
-%G_NORMALIZE_DEFAULT_COMPOSE and %G_NORMALIZE_ALL_COMPOSE
-are like %G_NORMALIZE_DEFAULT and %G_NORMALIZE_ALL,
-but returned a result with composed forms rather
-than a maximally decomposed form. This is often
-useful if you intend to convert the string to
-a legacy encoding or pass it to a system with
-less capable Unicode handling.
+Check the result of the last g_test_trap_fork() call.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string.
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> the type of normalization to perform.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a newly allocated string, that is the
-normalized form of @str, or %NULL if @str is not
-valid UTF-8.
+<return> %TRUE if the last forked child got killed due to a fork timeout.
+
 </return>
 </function>
 
-<function name="g_private_get">
+<function name="g_thread_create">
 <description>
-Returns the pointer keyed to @private_key for the current thread. If
-g_private_set() hasn't been called for the current @private_key and
-thread yet, this pointer will be %NULL.
+This function creates a new thread with the default priority.
 
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will return the value of @private_key
-casted to #gpointer. Note however, that private data set
-&lt;emphasis&gt;before&lt;/emphasis&gt; g_thread_init() will
-&lt;emphasis&gt;not&lt;/emphasis&gt; be retained &lt;emphasis&gt;after&lt;/emphasis&gt; the
-call. Instead, %NULL will be returned in all threads directly after
-g_thread_init(), regardless of any g_private_set() calls issued
-before threading system intialization.
+If @joinable is %TRUE, you can wait for this threads termination
+calling g_thread_join(). Otherwise the thread will just disappear
+when it terminates.
+
+The new thread executes the function @func with the argument @data.
+If the thread was created successfully, it is returned.
+
+ error can be %NULL to ignore errors, or non-%NULL to report errors.
+The error is set, if and only if the function returns %NULL.
 
 </description>
 <parameters>
-<parameter name="private_key">
-<parameter_description> a #GPrivate.
+<parameter name="func">
+<parameter_description> a function to execute in the new thread.
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> an argument to supply to the new thread.
+</parameter_description>
+</parameter>
+<parameter name="joinable">
+<parameter_description> should this thread be joinable?
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the corresponding pointer.
+<return> the new #GThread on success.
 </return>
 </function>
 
-<function name="g_match_info_fetch">
+<function name="g_thread_create_full">
 <description>
-Retrieves the text matching the @match_num&lt;!-- --&gt;'th capturing
-parentheses. 0 is the full text of the match, 1 is the first paren
-set, 2 the second, and so on.
+This function creates a new thread with the priority @priority. If
+the underlying thread implementation supports it, the thread gets a
+stack size of @stack_size or the default value for the current
+platform, if @stack_size is 0.
 
-If @match_num is a valid sub pattern but it didn't match anything
-(e.g. sub pattern 1, matching &quot;b&quot; against &quot;(a)?b&quot;) then an empty
-string is returned.
+If @joinable is %TRUE, you can wait for this threads termination
+calling g_thread_join(). Otherwise the thread will just disappear
+when it terminates. If @bound is %TRUE, this thread will be
+scheduled in the system scope, otherwise the implementation is free
+to do scheduling in the process scope. The first variant is more
+expensive resource-wise, but generally faster. On some systems (e.g.
+Linux) all threads are bound.
 
-If the match was obtained using the DFA algorithm, that is using
-g_regex_match_all() or g_regex_match_all_full(), the retrieved
-string is not that of a set of parentheses but that of a matched
-substring. Substrings are matched in reverse order of length, so
-0 is the longest match.
+The new thread executes the function @func with the argument @data.
+If the thread was created successfully, it is returned.
 
-The string is fetched from the string passed to the match function,
-so you cannot call this function after freeing the string.
+ error can be %NULL to ignore errors, or non-%NULL to report errors.
+The error is set, if and only if the function returns %NULL.
 
-Since: 2.14
+&lt;note&gt;&lt;para&gt;It is not guaranteed that threads with different priorities
+really behave accordingly. On some systems (e.g. Linux) there are no
+thread priorities. On other systems (e.g. Solaris) there doesn't
+seem to be different scheduling for different priorities. All in all
+try to avoid being dependent on priorities. Use
+%G_THREAD_PRIORITY_NORMAL here as a default.&lt;/para&gt;&lt;/note&gt;
+
+&lt;note&gt;&lt;para&gt;Only use g_thread_create_full() if you really can't use
+g_thread_create() instead. g_thread_create() does not take
+ stack_size, @bound, and @priority as arguments, as they should only
+be used in cases in which it is unavoidable.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> #GMatchInfo structure
+<parameter name="func">
+<parameter_description> a function to execute in the new thread.
 </parameter_description>
 </parameter>
-<parameter name="match_num">
-<parameter_description> number of the sub expression
+<parameter name="data">
+<parameter_description> an argument to supply to the new thread.
+</parameter_description>
+</parameter>
+<parameter name="stack_size">
+<parameter_description> a stack size for the new thread.
+</parameter_description>
+</parameter>
+<parameter name="joinable">
+<parameter_description> should this thread be joinable?
+</parameter_description>
+</parameter>
+<parameter name="bound">
+<parameter_description> should this thread be bound to a system thread?
+</parameter_description>
+</parameter>
+<parameter name="priority">
+<parameter_description> a priority for the thread.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The matched substring, or %NULL if an error
-occurred. You have to free the string yourself
-
+<return> the new #GThread on success.
 </return>
 </function>
 
-<function name="g_main_context_acquire">
+<function name="g_thread_exit">
 <description>
-Tries to become the owner of the specified context.
-If some other thread is the owner of the context,
-returns %FALSE immediately. Ownership is properly
-recursive: the owner can require ownership again
-and will release ownership when g_main_context_release()
-is called as many times as g_main_context_acquire().
+Exits the current thread. If another thread is waiting for that
+thread using g_thread_join() and the current thread is joinable, the
+waiting thread will be woken up and get @retval as the return value
+of g_thread_join(). If the current thread is not joinable, @retval
+is ignored. Calling
 
-You must be the owner of a context before you
-can call g_main_context_prepare(), g_main_context_query(),
-g_main_context_check(), g_main_context_dispatch().
+&lt;informalexample&gt;
+&lt;programlisting&gt;
+g_thread_exit (retval);
+&lt;/programlisting&gt;
+&lt;/informalexample&gt;
 
+is equivalent to returning @retval from the function @func, as given
+to g_thread_create().
+
+&lt;note&gt;&lt;para&gt;Never call g_thread_exit() from within a thread of a
+#GThreadPool, as that will mess up the bookkeeping and lead to funny
+and unwanted results.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="retval">
+<parameter_description> the return value of this thread.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation succeeded, and
-this thread is now the owner of @context.
-</return>
+<return></return>
 </function>
 
-<function name="g_file_set_contents">
+<function name="g_thread_foreach">
 <description>
-Writes all of @contents to a file named @filename, with good error checking.
-If a file called @filename already exists it will be overwritten.
-
-This write is atomic in the sense that it is first written to a temporary
-file which is then renamed to the final name. Notes:
-&lt;itemizedlist&gt;
-&lt;listitem&gt;
-On Unix, if @filename already exists hard links to @filename will break.
-Also since the file is recreated, existing permissions, access control
-lists, metadata etc. may be lost. If @filename is a symbolic link,
-the link itself will be replaced, not the linked file.
-&lt;/listitem&gt;
-&lt;listitem&gt;
-On Windows renaming a file will not remove an existing file with the
-new name, so on Windows there is a race condition between the existing
-file being removed and the temporary file being renamed.
-&lt;/listitem&gt;
-&lt;listitem&gt;
-On Windows there is no way to remove a file that is open to some
-process, or mapped into memory. Thus, this function will fail if
- filename already exists and is open.
-&lt;/listitem&gt;
-&lt;/itemizedlist&gt;
+Call @thread_func on all existing #GThread structures. Note that
+threads may decide to exit while @thread_func is running, so
+without intimate knowledge about the lifetime of foreign threads,
+ thread_func shouldn't access the GThread* pointer passed in as
+first argument. However, @thread_func will not be called for threads
+which are known to have exited already.
 
-If the call was sucessful, it returns %TRUE. If the call was not successful,
-it returns %FALSE and sets @error. The error domain is #G_FILE_ERROR.
-Possible error codes are those in the #GFileError enumeration.
+Due to thread lifetime checks, this function has an execution complexity
+which is quadratic in the number of existing threads.
 
-Since: 2.8
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> name of a file to write @contents to, in the GLib file name
-encoding
-</parameter_description>
-</parameter>
-<parameter name="contents">
-<parameter_description> string to write to the file
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> length of @contents, or -1 if @contents is a nul-terminated string
+<parameter name="thread_func">
+<parameter_description> function to call for all GThread structures
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="user_data">
+<parameter_description>   second argument to @thread_func
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if an error occurred
-
-</return>
+<return></return>
 </function>
 
-<function name="g_type_depth">
+<function name="g_thread_get_initialized">
 <description>
-Returns the length of the ancestry of the passed in type. This
-includes the type itself, so that e.g. a fundamental type has depth 1.
+Indicates if g_thread_init() has been called.
 
+Since: 2.20
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> A #GType value.
-</parameter_description>
-</parameter>
 </parameters>
-<return> The depth of @type.
+<return> %TRUE if threads have been initialized.
+
 </return>
 </function>
 
-<function name="g_hash_table_get_keys">
+<function name="g_thread_init">
 <description>
-Retrieves every key inside @hash_table. The returned data is valid
-until @hash_table is modified.
+If you use GLib from more than one thread, you must initialize the
+thread system by calling g_thread_init(). Most of the time you will
+only have to call &lt;literal&gt;g_thread_init (NULL)&lt;/literal&gt;.
 
-Since: 2.14
+&lt;note&gt;&lt;para&gt;Do not call g_thread_init() with a non-%NULL parameter unless
+you really know what you are doing.&lt;/para&gt;&lt;/note&gt;
+
+&lt;note&gt;&lt;para&gt;g_thread_init() must not be called directly or indirectly as a
+callback from GLib. Also no mutexes may be currently locked while
+calling g_thread_init().&lt;/para&gt;&lt;/note&gt;
+
+&lt;note&gt;&lt;para&gt;g_thread_init() changes the way in which #GTimer measures
+elapsed time. As a consequence, timers that are running while
+g_thread_init() is called may report unreliable times.&lt;/para&gt;&lt;/note&gt;
+
+Calling g_thread_init() multiple times is allowed (since version
+2.24), but nothing happens except for the first call. If the
+argument is non-%NULL on such a call a warning will be printed, but
+otherwise the argument is ignored.
+
+If no thread system is available and @vtable is %NULL or if not all
+elements of @vtable are non-%NULL, then g_thread_init() will abort.
+
+&lt;note&gt;&lt;para&gt;To use g_thread_init() in your program, you have to link with
+the libraries that the command &lt;command&gt;pkg-config --libs
+gthread-2.0&lt;/command&gt; outputs. This is not the case for all the
+other thread related functions of GLib. Those can be used without
+having to link with the thread libraries.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable
+<parameter name="vtable">
+<parameter_description> a function table of type #GThreadFunctions, that provides
+the entry points to the thread system to be used.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList containing all the keys inside the hash
-table. The content of the list is owned by the hash table and
-should not be modified or freed. Use g_list_free() when done
-using the list.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_byte_array_ref">
+<function name="g_thread_join">
 <description>
-Atomically increments the reference count of @array by one. This
-function is MT-safe and may be called from any thread.
-
-Since: 2.22
+Waits until @thread finishes, i.e. the function @func, as given to
+g_thread_create(), returns or g_thread_exit() is called by @thread.
+All resources of @thread including the #GThread struct are released.
+ thread must have been created with @joinable=%TRUE in
+g_thread_create(). The value returned by @func or given to
+g_thread_exit() by @thread is returned by this function.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> A #GByteArray.
+<parameter name="thread">
+<parameter_description> a #GThread to be waited for.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The passed in #GByteArray.
-
+<return> the return value of the thread.
 </return>
 </function>
 
-<function name="g_key_file_set_boolean_list">
+<function name="g_thread_pool_free">
 <description>
-Associates a list of boolean values with @key under @group_name.  
-If @key cannot be found then it is created.
-If @group_name is %NULL, the start_group is used.
+Frees all resources allocated for @pool.
 
-Since: 2.6
+If @immediate is %TRUE, no new task is processed for
+ pool  Otherwise @pool is not freed before the last task is
+processed. Note however, that no thread of this pool is
+interrupted, while processing a task. Instead at least all still
+running threads can finish their tasks before the @pool is freed.
+
+If @wait_ is %TRUE, the functions does not return before all tasks
+to be processed (dependent on @immediate, whether all or only the
+currently running) are ready. Otherwise the function returns immediately.
+
+After calling this function @pool must not be used anymore. 
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="pool">
+<parameter_description> a #GThreadPool
 </parameter_description>
 </parameter>
-<parameter name="list">
-<parameter_description> an array of boolean values
+<parameter name="immediate">
+<parameter_description> should @pool shut down immediately?
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> length of @list
+<parameter name="wait_">
+<parameter_description> should the function wait for all tasks to be finished?
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_object_set_data_full">
+<function name="g_thread_pool_get_max_idle_time">
 <description>
-Like g_object_set_data() except it adds notification
-for when the association is destroyed, either by setting it
-to a different value or when the object is destroyed.
+This function will return the maximum @interval that a thread will
+wait in the thread pool for new tasks before being stopped.
 
-Note that the @destroy callback is not called if @data is %NULL.
+If this function returns 0, threads waiting in the thread pool for
+new work are not stopped.
+
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> #GObject containing the associations
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> name of the key
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to associate with that key
-</parameter_description>
-</parameter>
-<parameter name="destroy">
-<parameter_description> function to call when the association is destroyed
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the maximum @interval to wait for new tasks in the
+thread pool before stopping the thread (1/1000ths of a second).
+
+</return>
 </function>
 
-<function name="g_value_get_param">
+<function name="g_thread_pool_get_max_threads">
 <description>
-Get the contents of a %G_TYPE_PARAM #GValue.
+Returns the maximal number of threads for @pool.
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_PARAM
+<parameter name="pool">
+<parameter_description> a #GThreadPool
 </parameter_description>
 </parameter>
 </parameters>
-<return> #GParamSpec content of @value
+<return> the maximal number of threads
 </return>
 </function>
 
-<function name="g_unichar_totitle">
+<function name="g_thread_pool_get_max_unused_threads">
 <description>
-Converts a character to the titlecase.
+Returns the maximal allowed number of unused threads.
 
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
-</parameter_description>
-</parameter>
 </parameters>
-<return> the result of converting @c to titlecase.
-If @c is not an uppercase or lowercase character,
- c is returned unchanged.
+<return> the maximal number of unused threads
 </return>
 </function>
 
-<function name="g_main_loop_unref">
+<function name="g_thread_pool_get_num_threads">
 <description>
-Decreases the reference count on a #GMainLoop object by one. If
-the result is zero, free the loop and free all associated memory.
+Returns the number of threads currently running in @pool.
+
 
 </description>
 <parameters>
-<parameter name="loop">
-<parameter_description> a #GMainLoop
+<parameter name="pool">
+<parameter_description> a #GThreadPool
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of threads currently running
+</return>
 </function>
 
-<function name="g_type_init_with_debug_flags">
+<function name="g_thread_pool_get_num_unused_threads">
 <description>
-Similar to g_type_init(), but additionally sets debug flags.
+Returns the number of currently unused threads.
+
 
 </description>
 <parameters>
-<parameter name="debug_flags">
-<parameter_description> Bitwise combination of #GTypeDebugFlags values for
-debugging purposes.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the number of currently unused threads
+</return>
 </function>
 
-<function name="g_bookmark_file_get_added">
+<function name="g_thread_pool_new">
 <description>
-Gets the time the bookmark for @uri was added to @bookmark
+This function creates a new thread pool.
 
-In the event the URI cannot be found, -1 is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+Whenever you call g_thread_pool_push(), either a new thread is
+created or an unused one is reused. At most @max_threads threads
+are running concurrently for this thread pool. @max_threads = -1
+allows unlimited threads to be created for this thread pool. The
+newly created or reused thread now executes the function @func with
+the two arguments. The first one is the parameter to
+g_thread_pool_push() and the second one is @user_data.
+
+The parameter @exclusive determines, whether the thread pool owns
+all threads exclusive or whether the threads are shared
+globally. If @exclusive is %TRUE, @max_threads threads are started
+immediately and they will run exclusively for this thread pool until
+it is destroyed by g_thread_pool_free(). If @exclusive is %FALSE,
+threads are created, when needed and shared between all
+non-exclusive thread pools. This implies that @max_threads may not
+be -1 for exclusive thread pools.
+
+ error can be %NULL to ignore errors, or non-%NULL to report
+errors. An error can only occur when @exclusive is set to %TRUE and
+not all @max_threads threads could be created.
 
-Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="func">
+<parameter_description> a function to execute in the threads of the new thread pool
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="user_data">
+<parameter_description> user data that is handed over to @func every time it 
+is called
+</parameter_description>
+</parameter>
+<parameter name="max_threads">
+<parameter_description> the maximal number of threads to execute concurrently in 
+the new thread pool, -1 means no limit
+</parameter_description>
+</parameter>
+<parameter name="exclusive">
+<parameter_description> should this thread pool be exclusive?
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter_description> return location for error
 </parameter_description>
 </parameter>
 </parameters>
-<return> a timestamp
-
+<return> the new #GThreadPool
 </return>
 </function>
 
-<function name="g_option_group_set_translation_domain">
+<function name="g_thread_pool_push">
 <description>
-A convenience function to use gettext() for translating
-user-visible strings. 
+Inserts @data into the list of tasks to be executed by @pool. When
+the number of currently running threads is lower than the maximal
+allowed number of threads, a new thread is started (or reused) with
+the properties given to g_thread_pool_new (). Otherwise @data stays
+in the queue until a thread in this pool finishes its previous task
+and processes @data. 
 
-Since: 2.6
+ error can be %NULL to ignore errors, or non-%NULL to report
+errors. An error can only occur when a new thread couldn't be
+created. In that case @data is simply appended to the queue of work
+to do.  
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> a #GOptionGroup
+<parameter name="pool">
+<parameter_description> a #GThreadPool
 </parameter_description>
 </parameter>
-<parameter name="domain">
-<parameter_description> the domain to use
+<parameter name="data">
+<parameter_description> a new task for @pool
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for error
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_cache_destroy">
+<function name="g_thread_pool_set_max_idle_time">
 <description>
-Frees the memory allocated for the #GCache.
+This function will set the maximum @interval that a thread waiting
+in the pool for new tasks can be idle for before being
+stopped. This function is similar to calling
+g_thread_pool_stop_unused_threads() on a regular timeout, except,
+this is done on a per thread basis.    
 
-Note that it does not destroy the keys and values which were
-contained in the #GCache.
+By setting @interval to 0, idle threads will not be stopped.
+
+This function makes use of g_async_queue_timed_pop () using
+ interval 
+
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="cache">
-<parameter_description> a #GCache.
+<parameter name="interval">
+<parameter_description> the maximum @interval (1/1000ths of a second) a thread
+can be idle. 
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_variant_type_is_variant">
+<function name="g_thread_pool_set_max_threads">
 <description>
-Determines if the given @type is the variant type.
+Sets the maximal allowed number of threads for @pool. A value of -1
+means, that the maximal number of threads is unlimited.
 
-Since 2.24
+Setting @max_threads to 0 means stopping all work for @pool. It is
+effectively frozen until @max_threads is set to a non-zero value
+again.
+
+A thread is never terminated while calling @func, as supplied by
+g_thread_pool_new (). Instead the maximal number of threads only
+has effect for the allocation of new threads in g_thread_pool_push(). 
+A new thread is allocated, whenever the number of currently
+running threads in @pool is smaller than the maximal number.
+
+ error can be %NULL to ignore errors, or non-%NULL to report
+errors. An error can only occur when a new thread couldn't be
+created. 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="pool">
+<parameter_description> a #GThreadPool
+</parameter_description>
+</parameter>
+<parameter name="max_threads">
+<parameter_description> a new maximal number of threads for @pool
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for error
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is the variant type
-</return>
+<return></return>
 </function>
 
-<function name="g_checksum_free">
+<function name="g_thread_pool_set_max_unused_threads">
 <description>
-Frees the memory allocated for @checksum.
-
-Since: 2.16
+Sets the maximal number of unused threads to @max_threads. If
+ max_threads is -1, no limit is imposed on the number of unused
+threads.
 
 </description>
 <parameters>
-<parameter name="checksum">
-<parameter_description> a #GChecksum
+<parameter name="max_threads">
+<parameter_description> maximal number of unused threads
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_freopen">
+<function name="g_thread_pool_set_sort_function">
 <description>
-A wrapper for the POSIX freopen() function. The freopen() function
-opens a file and associates it with an existing stream.
+Sets the function used to sort the list of tasks. This allows the
+tasks to be processed by a priority determined by @func, and not
+just in the order in which they were added to the pool.
 
-See your C library manual for more details about freopen().
+Note, if the maximum number of threads is more than 1, the order
+that threads are executed can not be guranteed 100%. Threads are
+scheduled by the operating system and are executed at random. It
+cannot be assumed that threads are executed in the order they are
+created. 
 
-Since: 2.6
+Since: 2.10
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="pool">
+<parameter_description> a #GThreadPool
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> a string describing the mode in which the file should be 
-opened
+<parameter name="func">
+<parameter_description> the #GCompareDataFunc used to sort the list of tasks. 
+This function is passed two tasks. It should return
+0 if the order in which they are handled does not matter, 
+a negative value if the first task should be processed before
+the second or a positive value if the second task should be 
+processed first.
 </parameter_description>
 </parameter>
-<parameter name="stream">
-<parameter_description> an existing stream which will be reused, or %NULL
+<parameter name="user_data">
+<parameter_description> user data passed to @func.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A &lt;type&gt;FILE&lt;/type&gt; pointer if the file was successfully
-opened, or %NULL if an error occurred.
+<return></return>
+</function>
 
-</return>
+<function name="g_thread_pool_stop_unused_threads">
+<description>
+Stops all currently unused threads. This does not change the
+maximal number of unused threads. This function can be used to
+regularly stop all unused threads e.g. from g_timeout_add().
+
+</description>
+<parameters>
+</parameters>
+<return></return>
 </function>
 
-<function name="g_tree_lookup">
+<function name="g_thread_pool_unprocessed">
 <description>
-Gets the value corresponding to the given key. Since a #GTree is 
-automatically balanced as key/value pairs are added, key lookup is very 
-fast.
+Returns the number of tasks still unprocessed in @pool.
 
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to look up.
+<parameter name="pool">
+<parameter_description> a #GThreadPool
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value corresponding to the key, or %NULL if the key was
-not found.
+<return> the number of unprocessed tasks
 </return>
 </function>
 
-<function name="g_hash_table_destroy">
+<function name="g_thread_self">
 <description>
-Destroys all keys and values in the #GHashTable and decrements its
-reference count by 1. If keys and/or values are dynamically allocated,
-you should either free them first or create the #GHashTable with destroy
-notifiers using g_hash_table_new_full(). In the latter case the destroy
-functions you supplied will be called on all keys and values during the
-destruction phase.
+This functions returns the #GThread corresponding to the calling
+thread.
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the current thread.
+</return>
 </function>
 
-<function name="g_datalist_id_set_data_full">
+<function name="g_thread_set_priority">
 <description>
-Sets the data corresponding to the given #GQuark id, and the
-function to be called when the element is removed from the datalist.
-Any previous data with the same key is removed, and its destroy
-function is called.
+Changes the priority of @thread to @priority.
+
+&lt;note&gt;&lt;para&gt;It is not guaranteed that threads with different
+priorities really behave accordingly. On some systems (e.g. Linux)
+there are no thread priorities. On other systems (e.g. Solaris) there
+doesn't seem to be different scheduling for different priorities. All
+in all try to avoid being dependent on priorities.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="datalist">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="key_id">
-<parameter_description> the #GQuark to identify the data element.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data element or %NULL to remove any previous element
-corresponding to @key_id.
+<parameter name="thread">
+<parameter_description> a #GThread.
 </parameter_description>
 </parameter>
-<parameter name="destroy_func">
-<parameter_description> the function to call when the data element is
-removed. This function will be called with the data
-element and can be used to free any memory allocated
-for it. If @data is %NULL, then @destroy_func must
-also be %NULL.
+<parameter name="priority">
+<parameter_description> a new priority for @thread.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_test_timer_last">
+<function name="g_thread_supported">
 <description>
-Report the last result of g_test_timer_elapsed().
+This function returns %TRUE if the thread system is initialized, and
+%FALSE if it is not.
 
-Since: 2.16
+&lt;note&gt;&lt;para&gt;This function is actually a macro. Apart from taking the
+address of it you can however use it as if it was a
+function.&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
 </parameters>
-<return> the last result of g_test_timer_elapsed(), as a double
-
+<return> %TRUE, if the thread system is initialized.
 </return>
 </function>
 
-<function name="g_unichar_iswide">
+<function name="g_thread_yield">
 <description>
-Determines if a character is typically rendered in a double-width
-cell.
+Gives way to other threads waiting to be scheduled.
 
+This function is often used as a method to make busy wait less evil.
+But in most cases you will encounter, there are better methods to do
+that. So in general you shouldn't use this function.
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the character is wide
-</return>
+<return></return>
 </function>
 
-<function name="g_slist_remove_link">
+<function name="g_time_val_add">
 <description>
-Removes an element from a #GSList, without 
-freeing the element. The removed element's next 
-link is set to %NULL, so that it becomes a
-self-contained list with one element.
-
+Adds the given number of microseconds to @time_. @microseconds can
+also be negative to decrease the value of @time_.
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="time_">
+<parameter_description> a #GTimeVal
 </parameter_description>
 </parameter>
-<parameter name="link_">
-<parameter_description> an element in the #GSList
+<parameter name="microseconds">
+<parameter_description> number of microseconds to add to @time
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList, without the element
-</return>
+<return></return>
 </function>
 
-<function name="g_regex_get_capture_count">
+<function name="g_time_val_from_iso8601">
 <description>
-Returns the number of capturing subpatterns in the pattern.
+Converts a string containing an ISO 8601 encoded date and time
+to a #GTimeVal and puts it into @time_.
 
-Since: 2.14
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex
+<parameter name="iso_date">
+<parameter_description> an ISO 8601 encoded date string
+</parameter_description>
+</parameter>
+<parameter name="time_">
+<parameter_description> a #GTimeVal
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of capturing subpatterns
+<return> %TRUE if the conversion was successful.
 
 </return>
 </function>
 
-<function name="g_bookmark_file_get_modified">
+<function name="g_time_val_to_iso8601">
 <description>
-Gets the time when the bookmark for @uri was last modified.
-
-In the event the URI cannot be found, -1 is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+Converts @time_ into an ISO 8601 encoded string, relative to the
+Coordinated Universal Time (UTC).
 
 Since: 2.12
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="time_">
+<parameter_description> a #GTimeVal
 </parameter_description>
 </parameter>
 </parameters>
-<return> a timestamp
+<return> a newly allocated string containing an ISO 8601 date
 
 </return>
 </function>
 
-<function name="g_type_module_set_name">
+<function name="g_time_zone_adjust_time">
 <description>
-Sets the name for a #GTypeModule 
+Finds an interval within @tz that corresponds to the given @time,
+possibly adjusting @time if required to fit into an interval.
+The meaning of @time depends on @type.
 
-</description>
-<parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> a human-readable name to use in error messages.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+This function is similar to g_time_zone_find_interval(), with the
+difference that it always succeeds (by making the adjustments
+described below).
 
-<function name="g_io_channel_write_unichar">
-<description>
-Writes a Unicode character to @channel.
-This function cannot be called on a channel with %NULL encoding.
+In any of the cases where g_time_zone_find_interval() succeeds then
+this function returns the same value, without modifying @time.
 
+This function may, however, modify @time in order to deal with
+non-existent times.  If the non-existent local @time of 02:30 were
+requested on March 13th 2010 in Toronto then this function would
+adjust @time to be 03:00 and return the interval containing the
+adjusted time.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
-<parameter name="thechar">
-<parameter_description> a character
+<parameter name="type">
+<parameter_description> the #GTimeType of @time
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to return an error of type #GConvertError
-or #GIOChannelError
+<parameter name="time">
+<parameter_description> a pointer to a number of seconds since January 1, 1970
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIOStatus
+<return> the interval containing @time, never -1
+
 </return>
 </function>
 
-<function name="g_random_double_range">
+<function name="g_time_zone_find_interval">
 <description>
-Returns a random #gdouble equally distributed over the range [ begin  @end).
+Finds an the interval within @tz that corresponds to the given @time.
+The meaning of @time depends on @type.
 
+If @type is %G_TIME_TYPE_UNIVERSAL then this function will always
+succeed (since universal time is monotonic and continuous).
+
+Otherwise @time is treated is local time.  The distinction between
+%G_TIME_TYPE_STANDARD and %G_TIME_TYPE_DAYLIGHT is ignored except in
+the case that the given @time is ambiguous.  In Toronto, for example,
+01:30 on November 7th 2010 occured twice (once inside of daylight
+savings time and the next, an hour later, outside of daylight savings
+time).  In this case, the different value of @type would result in a
+different interval being returned.
+
+It is still possible for this function to fail.  In Toronto, for
+example, 02:00 on March 14th 2010 does not exist (due to the leap
+forward to begin daylight savings time).  -1 is returned in that
+case.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="begin">
-<parameter_description> lower closed bound of the interval.
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
-<parameter name="end">
-<parameter_description> upper open bound of the interval.
+<parameter name="type">
+<parameter_description> the #GTimeType of @time
+</parameter_description>
+</parameter>
+<parameter name="time">
+<parameter_description> a number of seconds since January 1, 1970
 </parameter_description>
 </parameter>
 </parameters>
-<return> A random number.
+<return> the interval containing @time, or -1 in case of failure
+
 </return>
 </function>
 
-<function name="g_time_val_add">
+<function name="g_time_zone_get_abbreviation">
 <description>
-Adds the given number of microseconds to @time_. @microseconds can
-also be negative to decrease the value of @time_.
+Determines the time zone abbreviation to be used during a particular
+ interval of time in the time zone @tz.
+
+For example, in Toronto this is currently &quot;EST&quot; during the winter
+months and &quot;EDT&quot; during the summer months when daylight savings time
+is in effect.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="time_">
-<parameter_description> a #GTimeVal
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
-<parameter name="microseconds">
-<parameter_description> number of microseconds to add to @time
+<parameter name="interval">
+<parameter_description> an interval within the timezone
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the time zone abbreviation, which belongs to @tz
+
+</return>
 </function>
 
-<function name="g_slist_push_allocator">
+<function name="g_time_zone_get_offset">
 <description>
-Sets the allocator to use to allocate #GSList elements. Use
-g_slist_pop_allocator() to restore the previous allocator.
+Determines the offset to UTC in effect during a particular @interval
+of time in the time zone @tz.
 
-Note that this function is not available if GLib has been compiled
-with &lt;option&gt;--disable-mem-pools&lt;/option&gt;
+The offset is the number of seconds that you add to UTC time to
+arrive at local time for @tz (ie: negative numbers for time zones
+west of GMT, positive numbers for east).
 
-Deprecated: 2.10: It does nothing, since #GSList has been converted
-to the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt;
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="dummy">
-<parameter_description> the #GAllocator to use when allocating #GSList elements.
+<parameter name="tz">
+<parameter_description> a #GTimeZone
+</parameter_description>
+</parameter>
+<parameter name="interval">
+<parameter_description> an interval within the timezone
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
+<return> the number of seconds that should be added to UTC to get the
+local time in @tz
 
-<function name="g_blow_chunks">
-<description>
-Calls g_mem_chunk_clean() on all #GMemChunk objects.
-
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
-
-</description>
-<parameters>
-</parameters>
-<return></return>
+</return>
 </function>
 
-<function name="g_child_watch_add">
+<function name="g_time_zone_is_dst">
 <description>
-Sets a function to be called when the child indicated by @pid 
-exits, at a default priority, #G_PRIORITY_DEFAULT.
-
-If you obtain @pid from g_spawn_async() or g_spawn_async_with_pipes() 
-you will need to pass #G_SPAWN_DO_NOT_REAP_CHILD as flag to 
-the spawn function for the child watching to work.
+Determines if daylight savings time is in effect during a particular
+ interval of time in the time zone @tz.
 
-Note that on platforms where #GPid must be explicitly closed
-(see g_spawn_close_pid()) @pid must not be closed while the
-source is still active. Typically, you will want to call
-g_spawn_close_pid() in the callback function for the source.
-
-GLib supports only a single callback per process id.
-
-This internally creates a main loop source using 
-g_child_watch_source_new() and attaches it to the main loop context 
-using g_source_attach(). You can do these steps manually if you 
-need greater control.
-
-Since: 2.4
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="pid">
-<parameter_description>      process id to watch. On POSIX the pid of a child process. On
-Windows a handle for a process (which doesn't have to be a child).
-</parameter_description>
-</parameter>
-<parameter name="function">
-<parameter_description> function to call
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description>     data to pass to @function
+<parameter name="interval">
+<parameter_description> an interval within the timezone
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> %TRUE if daylight savings time is in effect
 
 </return>
 </function>
 
-<function name="g_type_module_use">
+<function name="g_time_zone_new">
 <description>
-Increases the use count of a #GTypeModule by one. If the
-use count was zero before, the plugin will be loaded.
-If loading the plugin fails, the use count is reset to 
-its prior value. 
+Creates a #GTimeZone corresponding to @identifier.
 
+ identifier can either be an RFC3339/ISO 8601 time offset or
+something that would pass as a valid value for the
+&lt;varname&gt;TZ&lt;/varname&gt; environment variable (including %NULL).
 
-</description>
-<parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule
-</parameter_description>
-</parameter>
-</parameters>
-<return> %FALSE if the plugin needed to be loaded and
-loading the plugin failed.
-</return>
-</function>
+Valid RFC3339 time offsets are &lt;literal&gt;&quot;Z&quot;&lt;/literal&gt; (for UTC) or
+&lt;literal&gt;&quot;±hh:mm&quot;&lt;/literal&gt;.  ISO 8601 additionally specifies
+&lt;literal&gt;&quot;±hhmm&quot;&lt;/literal&gt; and &lt;literal&gt;&quot;±hh&quot;&lt;/literal&gt;.
 
-<function name="g_object_class_install_property">
-<description>
-Installs a new property. This is usually done in the class initializer.
+The &lt;varname&gt;TZ&lt;/varname&gt; environment variable typically corresponds
+to the name of a file in the zoneinfo database, but there are many
+other possibilities.  Note that those other possibilities are not
+currently implemented, but are planned.
 
-Note that it is possible to redefine a property in a derived class,
-by installing a property with the same name. This can be useful at times,
-e.g. to change the range of allowed values or the default value.
+g_time_zone_new_local() calls this function with the value of the
+&lt;varname&gt;TZ&lt;/varname&gt; environment variable.  This function itself is
+independent of the value of &lt;varname&gt;TZ&lt;/varname&gt;, but if @identifier
+is %NULL then &lt;filename&gt;/etc/localtime&lt;/filename&gt; will be consulted
+to discover the correct timezone.
 
-</description>
-<parameters>
-<parameter name="oclass">
-<parameter_description> a #GObjectClass
-</parameter_description>
-</parameter>
-<parameter name="property_id">
-<parameter_description> the id for the new property
-</parameter_description>
-</parameter>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec for the new property
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+See &lt;ulink
+url='http://tools.ietf.org/html/rfc3339#section-5.6'&gt;RFC3339
+§5.6&lt;/ulink&gt; for a precise definition of valid RFC3339 time offsets
+(the &lt;varname&gt;time-offset&lt;/varname&gt; expansion) and ISO 8601 for the
+full list of valid time offsets.  See &lt;ulink
+url='http://www.gnu.org/s/libc/manual/html_node/TZ-Variable.html'&gt;The
+GNU C Library manual&lt;/ulink&gt; for an explanation of the possible
+values of the &lt;varname&gt;TZ&lt;/varname&gt; environment variable.
 
-<function name="g_io_channel_set_buffer_size">
-<description>
-Sets the buffer size.
+You should release the return value by calling g_time_zone_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> the size of the buffer, or 0 to let GLib pick a good size
+<parameter name="identifier">
+<parameter_description> a timezone identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the requested timezone
+
+</return>
 </function>
 
-<function name="g_signal_name">
+<function name="g_time_zone_new_local">
 <description>
-Given the signal's identifier, finds its name.
+Creates a #GTimeZone corresponding to local time.
 
-Two different signals may have the same name, if they have differing types.
+This is equivalent to calling g_time_zone_new() with the value of the
+&lt;varname&gt;TZ&lt;/varname&gt; environment variable (including the possibility
+of %NULL).  Changes made to &lt;varname&gt;TZ&lt;/varname&gt; after the first
+call to this function may or may not be noticed by future calls.
 
+You should release the return value by calling g_time_zone_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="signal_id">
-<parameter_description> the signal's identifying number.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the signal name, or %NULL if the signal number was invalid.
+<return> the local timezone
+
 </return>
 </function>
 
-<function name="g_value_take_boxed">
+<function name="g_time_zone_new_utc">
 <description>
-Sets the contents of a %G_TYPE_BOXED derived #GValue to @v_boxed
-and takes over the ownership of the callers reference to @v_boxed;
-the caller doesn't have to unref it any more.
+Creates a #GTimeZone corresponding to UTC.
 
-Since: 2.4
+This is equivalent to calling g_time_zone_new() with a value like
+&quot;Z&quot;, &quot;UTC&quot;, &quot;+00&quot;, etc.
+
+You should release the return value by calling g_time_zone_unref()
+when you are done with it.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_BOXED derived type
-</parameter_description>
-</parameter>
-<parameter name="v_boxed">
-<parameter_description> duplicated unowned boxed value to be set
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the universal timezone
+
+</return>
 </function>
 
-<function name="g_int64_hash">
+<function name="g_time_zone_ref">
 <description>
-Converts a pointer to a #gint64 to a hash value.
-It can be passed to g_hash_table_new() as the @hash_func parameter, 
-when using pointers to 64-bit integers values as keys in a #GHashTable.
+Increases the reference count on @tz.
 
-Since: 2.22
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="v">
-<parameter_description> a pointer to a #gint64 key
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
 </parameters>
-<return> a hash value corresponding to the key.
+<return> a new reference to @tz.
 
 </return>
 </function>
 
-<function name="g_error_free">
+<function name="g_time_zone_unref">
 <description>
-Frees a #GError and associated resources.
+Decreases the reference count on @tz.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="error">
-<parameter_description> a #GError
+<parameter name="tz">
+<parameter_description> a #GTimeZone
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_node_insert_before">
+<function name="g_timeout_add">
 <description>
-Inserts a #GNode beneath the parent before the given sibling.
+Sets a function to be called at regular intervals, with the default
+priority, #G_PRIORITY_DEFAULT.  The function is called repeatedly
+until it returns %FALSE, at which point the timeout is automatically
+destroyed and the function will not be called again.  The first call
+to the function will be at the end of the first @interval.
+
+Note that timeout functions may be delayed, due to the processing of other
+event sources. Thus they should not be relied on for precise timing.
+After each call to the timeout function, the time of the next
+timeout is recalculated based on the current time and the given interval
+(it does not try to 'catch up' time lost in delays).
+
+If you want to have a timer in the &quot;seconds&quot; range and do not care
+about the exact time of the first call of the timer, use the
+g_timeout_add_seconds() function; this function allows for more
+optimizations and more efficient system power usage.
+
+This internally creates a main loop source using g_timeout_source_new()
+and attaches it to the main loop context using g_source_attach(). You can
+do these steps manually if you need greater control.
 
 
 </description>
 <parameters>
-<parameter name="parent">
-<parameter_description> the #GNode to place @node under
+<parameter name="interval">
+<parameter_description> the time between calls to the function, in milliseconds
+(1/1000ths of a second)
 </parameter_description>
 </parameter>
-<parameter name="sibling">
-<parameter_description> the sibling #GNode to place @node before. 
-If sibling is %NULL, the node is inserted as the last child of @parent.
+<parameter name="function">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> the #GNode to insert
+<parameter name="data">
+<parameter_description>     data to pass to @function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the inserted #GNode
+<return> the ID (greater than 0) of the event source.
 </return>
 </function>
 
-<function name="g_variant_new_from_data">
+<function name="g_timeout_add_full">
 <description>
-Creates a new #GVariant instance from serialised data.
-
- type is the type of #GVariant 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.
+Sets a function to be called at regular intervals, with the given
+priority.  The function is called repeatedly until it returns
+%FALSE, at which point the timeout is automatically destroyed and
+the function will not be called again.  The @notify function is
+called when the timeout is destroyed.  The first call to the
+function will be at the end of the first @interval.
 
-If @data is trusted to be serialised data in normal form then
- trusted should be %TRUE.  This applies to serialised 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.
+Note that timeout functions may be delayed, due to the processing of other
+event sources. Thus they should not be relied on for precise timing.
+After each call to the timeout function, the time of the next
+timeout is recalculated based on the current time and the given interval
+(it does not try to 'catch up' time lost in delays).
 
- 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.
+This internally creates a main loop source using g_timeout_source_new()
+and attaches it to the main loop context using g_source_attach(). You can
+do these steps manually if you need greater control.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a definite #GVariantType
+<parameter name="priority">
+<parameter_description> the priority of the timeout source. Typically this will be in
+the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the serialised data
+<parameter name="interval">
+<parameter_description> the time between calls to the function, in milliseconds
+(1/1000ths of a second)
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the size of @data
+<parameter name="function">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="trusted">
-<parameter_description> %TRUE if @data is definitely in normal form
+<parameter name="data">
+<parameter_description>     data to pass to @function
 </parameter_description>
 </parameter>
 <parameter name="notify">
-<parameter_description> function to call when @data is no longer needed
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data for @notify
+<parameter_description>   function to call when the timeout is removed, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new floating #GVariant of type @type
+<return> the ID (greater than 0) of the event source.
 </return>
 </function>
 
@@ -32538,1041 +28007,882 @@ Since: 2.14
 </return>
 </function>
 
-<function name="g_value_init">
+<function name="g_timeout_add_seconds_full">
 <description>
-Initializes @value with the default value of @type.
+Sets a function to be called at regular intervals, with @priority.
+The function is called repeatedly until it returns %FALSE, at which
+point the timeout is automatically destroyed and the function will
+not be called again.
+
+Unlike g_timeout_add(), this function operates at whole second granularity.
+The initial starting point of the timer is determined by the implementation
+and the implementation is expected to group multiple timers together so that
+they fire all at the same time.
+To allow this grouping, the @interval to the first timer is rounded
+and can deviate up to one second from the specified interval.
+Subsequent timer iterations will generally run at the specified interval.
+
+Note that timeout functions may be delayed, due to the processing of other
+event sources. Thus they should not be relied on for precise timing.
+After each call to the timeout function, the time of the next
+timeout is recalculated based on the current time and the given @interval
+
+If you want timing more precise than whole seconds, use g_timeout_add()
+instead.
+
+The grouping of timers to fire at the same time results in a more power
+and CPU efficient behavior so if your timer is in multiples of seconds
+and you don't require the first timer exactly one second from now, the
+use of g_timeout_add_seconds() is preferred over g_timeout_add().
 
+This internally creates a main loop source using 
+g_timeout_source_new_seconds() and attaches it to the main loop context 
+using g_source_attach(). You can do these steps manually if you need 
+greater control.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> A zero-filled (uninitialized) #GValue structure.
+<parameter name="priority">
+<parameter_description> the priority of the timeout source. Typically this will be in
+the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
 </parameter_description>
 </parameter>
-<parameter name="g_type">
-<parameter_description> Type the #GValue should hold values of.
+<parameter name="interval">
+<parameter_description> the time between calls to the function, in seconds
 </parameter_description>
 </parameter>
-</parameters>
-<return> the #GValue structure that has been passed in
-</return>
-</function>
-
-<function name="g_type_get_qdata">
-<description>
-Obtains data which has previously been attached to @type
-with g_type_set_qdata().
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> a #GType
+<parameter name="function">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="quark">
-<parameter_description> a #GQuark id to identify the data
+<parameter name="data">
+<parameter_description>     data to pass to @function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description>   function to call when the timeout is removed, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data, or %NULL if no data was found
+<return> the ID (greater than 0) of the event source.
+
 </return>
 </function>
 
-<function name="g_thread_join">
+<function name="g_timeout_source_new">
 <description>
-Waits until @thread finishes, i.e. the function @func, as given to
-g_thread_create(), returns or g_thread_exit() is called by @thread.
-All resources of @thread including the #GThread struct are released.
- thread must have been created with @joinable=%TRUE in
-g_thread_create(). The value returned by @func or given to
-g_thread_exit() by @thread is returned by this function.
+Creates a new timeout source.
+
+The source will not initially be associated with any #GMainContext
+and must be added to one with g_source_attach() before it will be
+executed.
+
 
 </description>
 <parameters>
-<parameter name="thread">
-<parameter_description> a #GThread to be waited for.
+<parameter name="interval">
+<parameter_description> the timeout interval in milliseconds.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the return value of the thread.
+<return> the newly-created timeout source
 </return>
 </function>
 
-<function name="g_unichar_break_type">
+<function name="g_timeout_source_new_seconds">
 <description>
-Determines the break type of @c. @c should be a Unicode character
-(to derive a character from UTF-8 encoded text, use
-g_utf8_get_char()). The break type is used to find word and line
-breaks (&quot;text boundaries&quot;), Pango implements the Unicode boundary
-resolution algorithms and normally you would use a function such
-as pango_break() instead of caring about break types yourself.
+Creates a new timeout source.
 
+The source will not initially be associated with any #GMainContext
+and must be added to one with g_source_attach() before it will be
+executed.
+
+The scheduling granularity/accuracy of this timeout source will be
+in seconds.
+
+Since: 2.14	
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="interval">
+<parameter_description> the timeout interval in seconds
 </parameter_description>
 </parameter>
 </parameters>
-<return> the break type of @c
+<return> the newly-created timeout source
+
 </return>
 </function>
 
-<function name="g_hash_table_steal">
+<function name="g_timer_continue">
 <description>
-Removes a key and its associated value from a #GHashTable without
-calling the key and value destroy functions.
+Resumes a timer that has previously been stopped with
+g_timer_stop(). g_timer_stop() must be called before using this
+function.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to remove.
+<parameter name="timer">
+<parameter_description> a #GTimer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the key was found and removed from the #GHashTable.
-</return>
+<return></return>
 </function>
 
-<function name="g_byte_array_set_size">
+<function name="g_timer_destroy">
 <description>
-Sets the size of the #GByteArray, expanding it if necessary.
+Destroys a timer, freeing associated resources.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the new size of the #GByteArray.
+<parameter name="timer">
+<parameter_description> a #GTimer to destroy.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GByteArray.
-</return>
+<return></return>
 </function>
 
-<function name="g_string_new_len">
+<function name="g_timer_elapsed">
 <description>
-Creates a new #GString with @len bytes of the @init buffer.  
-Because a length is provided, @init need not be nul-terminated,
-and can contain embedded nul bytes.
-
-Since this function does not stop at nul bytes, it is the caller's
-responsibility to ensure that @init has at least @len addressable 
-bytes.
+If @timer has been started but not stopped, obtains the time since
+the timer was started. If @timer has been stopped, obtains the
+elapsed time between the time it was started and the time it was
+stopped. The return value is the number of seconds elapsed,
+including any fractional part. The @microseconds out parameter is
+essentially useless.
 
+&lt;warning&gt;&lt;para&gt;
+Calling initialization functions, in particular g_thread_init(), while a
+timer is running will cause invalid return values from this function.
+&lt;/para&gt;&lt;/warning&gt;
 
 </description>
 <parameters>
-<parameter name="init">
-<parameter_description> initial contents of the string
+<parameter name="timer">
+<parameter_description> a #GTimer.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> length of @init to use
+<parameter name="microseconds">
+<parameter_description> return location for the fractional part of seconds
+elapsed, in microseconds (that is, the total number
+of microseconds elapsed, modulo 1000000), or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GString
+<return> seconds elapsed as a floating point value, including any
+fractional part.
 </return>
 </function>
 
-<function name="g_ptr_array_foreach">
+<function name="g_timer_new">
 <description>
-Calls a function for each element of a #GPtrArray.
-
-Since: 2.4
+Creates a new timer, and starts timing (i.e. g_timer_start() is
+implicitly called for you).
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each array element
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a new #GTimer.
+</return>
 </function>
 
-<function name="g_queue_push_tail">
+<function name="g_timer_reset">
 <description>
-Adds a new element at the tail of the queue.
+This function is useless; it's fine to call g_timer_start() on an
+already-started timer to reset the start time, so g_timer_reset()
+serves no purpose.
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new element.
+<parameter name="timer">
+<parameter_description> a #GTimer.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_binding_get_flags">
+<function name="g_timer_start">
 <description>
-Retrieves the flags passed when constructing the #GBinding
-
-Since: 2.26
+Marks a start time, so that future calls to g_timer_elapsed() will
+report the time since g_timer_start() was called. g_timer_new()
+automatically marks the start time, so no need to call
+g_timer_start() immediately after creating the timer.
 
 </description>
 <parameters>
-<parameter name="binding">
-<parameter_description> a #GBinding
+<parameter name="timer">
+<parameter_description> a #GTimer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GBindingFlags used by the #GBinding
-
-</return>
+<return></return>
 </function>
 
-<function name="g_access">
+<function name="g_timer_stop">
 <description>
-A wrapper for the POSIX access() function. This function is used to
-test a pathname for one or several of read, write or execute
-permissions, or just existence.
-
-On Windows, the file protection mechanism is not at all POSIX-like,
-and the underlying function in the C library only checks the
-FAT-style READONLY attribute, and does not look at the ACL of a
-file at all. This function is this in practise almost useless on
-Windows. Software that needs to handle file permissions on Windows
-more exactly should use the Win32 API.
-
-See your C library manual for more details about access().
-
-Since: 2.8
+Marks an end time, so calls to g_timer_elapsed() will return the
+difference between this end time and the start time.
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> as in access()
+<parameter name="timer">
+<parameter_description> a #GTimer.
 </parameter_description>
 </parameter>
 </parameters>
-<return> zero if the pathname refers to an existing file system
-object that has all the tested permissions, or -1 otherwise or on
-error.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_new_parsed_va">
+<function name="g_tree_destroy">
 <description>
-Parses @format and returns the result.
-
-This is the version of g_variant_new_parsed() intended to be used
-from libraries.
-
-The return value will be floating if it was a newly created GVariant
-instance.  In the case that @format simply specified the collection
-of a #GVariant pointer (eg: @format was &quot;%*&quot;) then the collected
-#GVariant pointer will be returned unmodified, without adding any
-additional references.
-
-In order to behave correctly in all cases it is necessary for the
-calling function to g_variant_ref_sink() the return result before
-returning control to the user that originally provided the pointer.
-At this point, the caller will have their own full reference to the
-result.  This can also be done by adding the result to a container,
-or by passing it to another g_variant_new() call.
+Removes all keys and values from the #GTree and decreases its
+reference count by one. If keys and/or values are dynamically
+allocated, you should either free them first or create the #GTree
+using g_tree_new_full().  In the latter case the destroy functions
+you supplied will be called on all keys and values before destroying
+the #GTree.
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> a text format #GVariant
-</parameter_description>
-</parameter>
-<parameter name="app">
-<parameter_description> a pointer to a #va_list
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new, usually floating, #GVariant
-</return>
+<return></return>
 </function>
 
-<function name="g_signal_new_class_handler">
+<function name="g_tree_foreach">
 <description>
-Creates a new signal. (This is usually done in the class initializer.)
-
-This is a variant of g_signal_new() that takes a C callback instead
-off a class offset for the signal's class handler. This function
-doesn't need a function pointer exposed in the class structure of
-an object definition, instead the function pointer is passed
-directly and can be overriden by derived classes with
-g_signal_override_class_closure() or
-g_signal_override_class_handler()and chained to with
-g_signal_chain_from_overridden() or
-g_signal_chain_from_overridden_handler().
-
-See g_signal_new() for information about signal names.
+Calls the given function for each of the key/value pairs in the #GTree.
+The function is passed the key and value of each pair, and the given
+ data parameter. The tree is traversed in sorted order.
 
-Since: 2.18
+The tree may not be modified while iterating over it (you can't 
+add/remove items). To remove all items matching a predicate, you need 
+to add each item to a list in your #GTraverseFunc as you walk over 
+the tree, then walk the list and remove each item.
 
 </description>
 <parameters>
-<parameter name="signal_name">
-<parameter_description> the name for the signal
-</parameter_description>
-</parameter>
-<parameter name="itype">
-<parameter_description> the type this signal pertains to. It will also pertain to
-types which are derived from this type.
-</parameter_description>
-</parameter>
-<parameter name="signal_flags">
-<parameter_description> a combination of #GSignalFlags specifying detail of when
-the default handler is to be invoked. You should at least specify
-%G_SIGNAL_RUN_FIRST or %G_SIGNAL_RUN_LAST.
-</parameter_description>
-</parameter>
-<parameter name="class_handler">
-<parameter_description> a #GCallback which acts as class implementation of
-this signal. Used to invoke a class method generically. Pass %NULL to
-not associate a class method with this signal.
-</parameter_description>
-</parameter>
-<parameter name="accumulator">
-<parameter_description> the accumulator for this signal; may be %NULL.
-</parameter_description>
-</parameter>
-<parameter name="accu_data">
-<parameter_description> user data for the @accumulator.
-</parameter_description>
-</parameter>
-<parameter name="c_marshaller">
-<parameter_description> the function to translate arrays of parameter values to
-signal emissions into C language callback invocations.
-</parameter_description>
-</parameter>
-<parameter name="return_type">
-<parameter_description> the type of return value, or #G_TYPE_NONE for a signal
-without a return value.
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="n_params">
-<parameter_description> the number of parameter types to follow.
+<parameter name="func">
+<parameter_description> the function to call for each node visited. If this function
+returns %TRUE, the traversal is stopped.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a list of types, one for each parameter.
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the signal id
-
-</return>
+<return></return>
 </function>
 
-<function name="g_option_group_set_parse_hooks">
+<function name="g_tree_height">
 <description>
-Associates two functions with @group which will be called 
-from g_option_context_parse() before the first option is parsed
-and after the last option has been parsed, respectively.
+Gets the height of a #GTree.
 
-Note that the user data to be passed to @pre_parse_func and
- post_parse_func can be specified when constructing the group
-with g_option_group_new().
+If the #GTree contains no nodes, the height is 0.
+If the #GTree contains only one root node the height is 1.
+If the root node has children the height is 2, etc.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> a #GOptionGroup
-</parameter_description>
-</parameter>
-<parameter name="pre_parse_func">
-<parameter_description> a function to call before parsing, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="post_parse_func">
-<parameter_description> a function to call after parsing, or %NULL
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the height of the #GTree.
+</return>
 </function>
 
-<function name="g_bookmark_file_add_application">
+<function name="g_tree_insert">
 <description>
-Adds the application with @name and @exec to the list of
-applications that have registered a bookmark for @uri into
- bookmark 
-
-Every bookmark inside a #GBookmarkFile must have at least an
-application registered.  Each application must provide a name, a
-command line useful for launching the bookmark, the number of times
-the bookmark has been registered by the application and the last
-time the application registered this bookmark.
-
-If @name is %NULL, the name of the application will be the
-same returned by g_get_application_name(); if @exec is %NULL, the
-command line will be a composition of the program name as
-returned by g_get_prgname() and the &quot;%u&quot; modifier, which will be
-expanded to the bookmark's URI.
-
-This function will automatically take care of updating the
-registrations count and timestamping in case an application
-with the same @name had already registered a bookmark for
- uri inside @bookmark.
-
-If no bookmark for @uri is found, one is created.
+Inserts a key/value pair into a #GTree. If the given key already exists 
+in the #GTree its corresponding value is set to the new value. If you 
+supplied a value_destroy_func when creating the #GTree, the old value is 
+freed using that function. If you supplied a @key_destroy_func when 
+creating the #GTree, the passed key is freed using that function.
 
-Since: 2.12
+The tree is automatically 'balanced' as new key/value pairs are added,
+so that the distance from the root to every leaf is as small as possible.
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the application registering the bookmark
-or %NULL
+<parameter name="key">
+<parameter_description> the key to insert.
 </parameter_description>
 </parameter>
-<parameter name="exec">
-<parameter_description> command line to be used to launch the bookmark or %NULL
+<parameter name="value">
+<parameter_description> the value corresponding to the key.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_slist_reverse">
+<function name="g_tree_lookup">
 <description>
-Reverses a #GSList.
+Gets the value corresponding to the given key. Since a #GTree is 
+automatically balanced as key/value pairs are added, key lookup is very 
+fast.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-</parameters>
-<return> the start of the reversed #GSList
-</return>
-</function>
-
-<function name="g_type_class_peek_parent">
-<description>
-This is a convenience function often needed in class initializers.
-It returns the class structure of the immediate parent type of the
-class passed in.  Since derived classes hold a reference count on
-their parent classes as long as they are instantiated, the returned
-class will always exist. This function is essentially equivalent
-to:
-
-&lt;programlisting&gt;
-g_type_class_peek (g_type_parent (G_TYPE_FROM_CLASS (g_class)));
-&lt;/programlisting&gt;
-
-
-</description>
-<parameters>
-<parameter name="g_class">
-<parameter_description> The #GTypeClass structure to retrieve the parent class for.
+<parameter name="key">
+<parameter_description> the key to look up.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The parent class of @g_class.
+<return> the value corresponding to the key, or %NULL if the key was
+not found.
 </return>
 </function>
 
-<function name="g_option_context_get_help">
+<function name="g_tree_lookup_extended">
 <description>
-Returns a formatted, translated help text for the given context.
-To obtain the text produced by &lt;option&gt;--help&lt;/option&gt;, call
-&lt;literal&gt;g_option_context_get_help (context, TRUE, NULL)&lt;/literal&gt;.
-To obtain the text produced by &lt;option&gt;--help-all&lt;/option&gt;, call
-&lt;literal&gt;g_option_context_get_help (context, FALSE, NULL)&lt;/literal&gt;.
-To obtain the help text for an option group, call
-&lt;literal&gt;g_option_context_get_help (context, FALSE, group)&lt;/literal&gt;.
+Looks up a key in the #GTree, returning the original key and the
+associated value and a #gboolean which is %TRUE if the key was found. This 
+is useful if you need to free the memory allocated for the original key, 
+for example before calling g_tree_remove().
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="main_help">
-<parameter_description> if %TRUE, only include the main group 
+<parameter name="lookup_key">
+<parameter_description> the key to look up.
 </parameter_description>
 </parameter>
-<parameter name="group">
-<parameter_description> the #GOptionGroup to create help for, or %NULL
+<parameter name="orig_key">
+<parameter_description> returns the original key.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> returns the value associated with the key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly allocated string containing the help text
-
+<return> %TRUE if the key was found in the #GTree.
 </return>
 </function>
 
-<function name="g_main_context_new">
+<function name="g_tree_new">
 <description>
-Creates a new #GMainContext structure.
+Creates a new #GTree.
 
 
 </description>
 <parameters>
+<parameter name="key_compare_func">
+<parameter_description> the function used to order the nodes in the #GTree.
+It should return values similar to the standard strcmp() function -
+0 if the two arguments are equal, a negative value if the first argument 
+comes before the second, or a positive value if the first argument comes 
+after the second.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the new #GMainContext
+<return> a new #GTree.
 </return>
 </function>
 
-<function name="g_vsnprintf">
+<function name="g_tree_new_full">
 <description>
-A safer form of the standard vsprintf() function. The output is guaranteed
-to not exceed @n characters (including the terminating nul character), so 
-it is easy to ensure that a buffer overflow cannot occur.
-
-See also g_strdup_vprintf().
-
-In versions of GLib prior to 1.2.3, this function may return -1 if the 
-output was truncated, and the truncated string may not be nul-terminated.
-In versions prior to 1.3.12, this function returns the length of the output 
-string.
-
-The return value of g_vsnprintf() conforms to the vsnprintf() function 
-as standardized in ISO C99. Note that this is different from traditional 
-vsnprintf(), which returns the length of the output string.
-
-The format string may contain positional parameters, as specified in 
-the Single Unix Specification.
+Creates a new #GTree like g_tree_new() and allows to specify functions 
+to free the memory allocated for the key and value that get called when 
+removing the entry from the #GTree.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the buffer to hold the output.
+<parameter name="key_compare_func">
+<parameter_description> qsort()-style comparison function.
 </parameter_description>
 </parameter>
-<parameter name="n">
-<parameter_description> the maximum number of bytes to produce (including the 
-terminating nul character).
+<parameter name="key_compare_data">
+<parameter_description> data to pass to comparison function.
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> a standard printf() format string, but notice 
-&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+<parameter name="key_destroy_func">
+<parameter_description> a function to free the memory allocated for the key 
+used when removing the entry from the #GTree or %NULL if you don't
+want to supply such a function.
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of arguments to insert in the output.
+<parameter name="value_destroy_func">
+<parameter_description> a function to free the memory allocated for the 
+value used when removing the entry from the #GTree or %NULL if you 
+don't want to supply such a function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes which would be produced if the buffer 
-was large enough.
+<return> a new #GTree.
 </return>
 </function>
 
-<function name="g_object_set_valist">
+<function name="g_tree_new_with_data">
 <description>
-Sets properties on an object.
+Creates a new #GTree with a comparison function that accepts user data.
+See g_tree_new() for more details.
+
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="first_property_name">
-<parameter_description> name of the first property to set
+<parameter name="key_compare_func">
+<parameter_description> qsort()-style comparison function.
 </parameter_description>
 </parameter>
-<parameter name="var_args">
-<parameter_description> value for the first property, followed optionally by more
-name/value pairs, followed by %NULL
+<parameter name="key_compare_data">
+<parameter_description> data to pass to comparison function.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GTree.
+</return>
 </function>
 
-<function name="g_datalist_id_remove_data">
+<function name="g_tree_nnodes">
 <description>
-Removes an element, using its #GQuark identifier.
+Gets the number of nodes in a #GTree.
+
 
 </description>
 <parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="q">
-<parameter_description> the #GQuark identifying the data element.
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of nodes in the #GTree.
+</return>
 </function>
 
-<function name="g_set_error_literal">
+<function name="g_tree_ref">
 <description>
-Does nothing if @err is %NULL; if @err is non-%NULL, then * err
-must be %NULL. A new #GError is created and assigned to * err 
-Unlike g_set_error(), @message is not a printf()-style format string.
-Use this function if @message contains text you don't have control over,
-that could include printf() escape sequences.
+Increments the reference count of @tree by one.  It is safe to call
+this function from any thread.
 
-Since: 2.18
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="err">
-<parameter_description> a return location for a #GError, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="domain">
-<parameter_description> error domain
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> error code
-</parameter_description>
-</parameter>
-<parameter name="message">
-<parameter_description> error message
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the passed in #GTree.
+
+</return>
 </function>
 
-<function name="g_array_insert_vals">
+<function name="g_tree_remove">
 <description>
-Inserts @len elements into a #GArray at the given index.
+Removes a key/value pair from a #GTree.
+
+If the #GTree was created using g_tree_new_full(), the key and value 
+are freed using the supplied destroy functions, otherwise you have to 
+make sure that any dynamically allocated values are freed yourself.
+If the key does not exist in the #GTree, the function does nothing.
+
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index to place the elements at.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a pointer to the elements to insert.
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the number of elements to insert.
+<parameter name="key">
+<parameter_description> the key to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> %TRUE if the key was found (prior to 2.8, this function returned 
+nothing)
 </return>
 </function>
 
-<function name="g_type_register_fundamental">
+<function name="g_tree_replace">
 <description>
-Registers @type_id as the predefined identifier and @type_name as the
-name of a fundamental type.  The type system uses the information
-contained in the #GTypeInfo structure pointed to by @info and the
-#GTypeFundamentalInfo structure pointed to by @finfo to manage the
-type and its instances.  The value of @flags determines additional
-characteristics of the fundamental type.
+Inserts a new key and value into a #GTree similar to g_tree_insert(). 
+The difference is that if the key already exists in the #GTree, it gets 
+replaced by the new key. If you supplied a @value_destroy_func when 
+creating the #GTree, the old value is freed using that function. If you 
+supplied a @key_destroy_func when creating the #GTree, the old key is 
+freed using that function. 
 
+The tree is automatically 'balanced' as new key/value pairs are added,
+so that the distance from the root to every leaf is as small as possible.
 
 </description>
 <parameters>
-<parameter name="type_id">
-<parameter_description> A predefined type identifier.
-</parameter_description>
-</parameter>
-<parameter name="type_name">
-<parameter_description> 0-terminated string used as the name of the new type.
-</parameter_description>
-</parameter>
-<parameter name="info">
-<parameter_description> The #GTypeInfo structure for this type.
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="finfo">
-<parameter_description> The #GTypeFundamentalInfo structure for this type.
+<parameter name="key">
+<parameter_description> the key to insert.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> Bitwise combination of #GTypeFlags values.
+<parameter name="value">
+<parameter_description> the value corresponding to the key.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The predefined type identifier.
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_ref_sink">
+<function name="g_tree_search">
 <description>
-Convenience function to ref and sink a #GParamSpec.
+Searches a #GTree using @search_func.
+
+The @search_func is called with a pointer to the key of a key/value pair in 
+the tree, and the passed in @user_data. If @search_func returns 0 for a 
+key/value pair, then g_tree_search_func() will return the value of that 
+pair. If @search_func returns -1,  searching will proceed among the 
+key/value pairs that have a smaller key; if @search_func returns 1, 
+searching will proceed among the key/value pairs that have a larger key.
 
-Since: 2.10
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="tree">
+<parameter_description> a #GTree.
+</parameter_description>
+</parameter>
+<parameter name="search_func">
+<parameter_description> a function used to search the #GTree. 
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data passed as the second argument to the @search_func 
+function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GParamSpec that was passed into this function
+<return> the value corresponding to the found key, or %NULL if the key 
+was not found.
 </return>
 </function>
 
-<function name="g_string_prepend">
+<function name="g_tree_steal">
 <description>
-Adds a string on to the start of a #GString, 
-expanding it if necessary.
+Removes a key and its associated value from a #GTree without calling 
+the key and value destroy functions.
+
+If the key does not exist in the #GTree, the function does nothing.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> the string to prepend on the start of @string
+<parameter name="key">
+<parameter_description> the key to remove.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> %TRUE if the key was found (prior to 2.8, this function returned 
+nothing)
 </return>
 </function>
 
-<function name="g_string_append_unichar">
+<function name="g_tree_traverse">
 <description>
-Converts a Unicode character into UTF-8, and appends it
-to the string.
+Calls the given function for each node in the #GTree. 
 
+Deprecated:2.2: The order of a balanced tree is somewhat arbitrary. If you 
+just want to visit all nodes in sorted order, use g_tree_foreach() 
+instead. If you really need to visit nodes in a different order, consider
+using an &lt;link linkend=&quot;glib-N-ary-Trees&quot;&gt;N-ary Tree&lt;/link&gt;.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
-<parameter name="wc">
-<parameter_description> a Unicode character
+<parameter name="traverse_func">
+<parameter_description> the function to call for each node visited. If this 
+function returns %TRUE, the traversal is stopped.
+</parameter_description>
+</parameter>
+<parameter name="traverse_type">
+<parameter_description> the order in which nodes are visited, one of %G_IN_ORDER,
+%G_PRE_ORDER and %G_POST_ORDER.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to the function.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
-</return>
+<return></return>
 </function>
 
-<function name="g_binding_get_target_property">
+<function name="g_tree_unref">
 <description>
-Retrieves the name of the property of #GBinding:target used as the target
-of the binding
+Decrements the reference count of @tree by one.  If the reference count
+drops to 0, all keys and values will be destroyed (if destroy
+functions were specified) and all memory allocated by @tree will be
+released.
 
-Since: 2.26
+It is safe to call this function from any thread.
+
+Since: 2.22
 
 </description>
 <parameters>
-<parameter name="binding">
-<parameter_description> a #GBinding
+<parameter name="tree">
+<parameter_description> a #GTree.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the target property
-
-</return>
+<return></return>
 </function>
 
-<function name="g_param_spec_uint64">
+<function name="g_try_malloc">
 <description>
-Creates a new #GParamSpecUInt64 instance specifying a %G_TYPE_UINT64
-property.
-
-See g_param_spec_internal() for details on property names.
+Attempts to allocate @n_bytes, and returns %NULL on failure.
+Contrast with g_malloc(), which aborts the program on failure.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="n_bytes">
+<parameter_description> number of bytes to allocate.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> the allocated memory, or %NULL.
 </return>
 </function>
 
-<function name="g_option_context_get_ignore_unknown_options">
+<function name="g_try_malloc0">
 <description>
-Returns whether unknown options are ignored or not. See
-g_option_context_set_ignore_unknown_options().
+Attempts to allocate @n_bytes, initialized to 0's, and returns %NULL on
+failure. Contrast with g_malloc0(), which aborts the program on failure.
 
-Since: 2.6
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="n_bytes">
+<parameter_description> number of bytes to allocate
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if unknown options are ignored.
-
+<return> the allocated memory, or %NULL
 </return>
 </function>
 
-<function name="g_object_remove_weak_pointer">
+<function name="g_try_malloc0_n">
 <description>
-Removes a weak reference from @object that was previously added
-using g_object_add_weak_pointer(). The @weak_pointer_location has
-to match the one used with g_object_add_weak_pointer().
+This function is similar to g_try_malloc0(), allocating (@n_blocks * @n_block_bytes) bytes,
+but care is taken to detect possible overflow during multiplication.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> The object that is weak referenced.
+<parameter name="n_blocks">
+<parameter_description> the number of blocks to allocate
 </parameter_description>
 </parameter>
-<parameter name="weak_pointer_location">
-<parameter_description> The memory address of a pointer.
+<parameter name="n_block_bytes">
+<parameter_description> the size of each block in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the allocated memory, or %NULL
+</return>
 </function>
 
-<function name="g_utf8_offset_to_pointer">
+<function name="g_try_malloc_n">
 <description>
-Converts from an integer character offset to a pointer to a position
-within the string.
-
-Since 2.10, this function allows to pass a negative @offset to
-step backwards. It is usually worth stepping backwards from the end
-instead of forwards if @offset is in the last fourth of the string,
-since moving forward is about 3 times faster than moving backward.
-
-&lt;note&gt;&lt;para&gt;
-This function doesn't abort when reaching the end of @str. Therefore
-you should be sure that @offset is within string boundaries before
-calling that function. Call g_utf8_strlen() when unsure.
-
-This limitation exists as this function is called frequently during
-text rendering and therefore has to be as fast as possible.
-&lt;/para&gt;&lt;/note&gt;
+This function is similar to g_try_malloc(), allocating (@n_blocks * @n_block_bytes) bytes,
+but care is taken to detect possible overflow during multiplication.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
+<parameter name="n_blocks">
+<parameter_description> the number of blocks to allocate
 </parameter_description>
 </parameter>
-<parameter name="offset">
-<parameter_description> a character offset within @str
+<parameter name="n_block_bytes">
+<parameter_description> the size of each block in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return> the resulting pointer
+<return> the allocated memory, or %NULL.
 </return>
 </function>
 
-<function name="g_io_channel_get_encoding">
+<function name="g_try_realloc">
 <description>
-Gets the encoding for the input/output of the channel. 
-The internal encoding is always UTF-8. The encoding %NULL 
-makes the channel safe for binary data.
+Attempts to realloc @mem to a new size, @n_bytes, and returns %NULL
+on failure. Contrast with g_realloc(), which aborts the program
+on failure. If @mem is %NULL, behaves the same as g_try_malloc().
 
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="mem">
+<parameter_description> previously-allocated memory, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="n_bytes">
+<parameter_description> number of bytes to allocate.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A string containing the encoding, this string is
-owned by GLib and must not be freed.
+<return> the allocated memory, or %NULL.
 </return>
 </function>
 
-<function name="g_win32_get_package_installation_directory_of_module">
+<function name="g_try_realloc_n">
 <description>
-This function tries to determine the installation directory of a
-software package based on the location of a DLL of the software
-package.
-
- hmodule should be the handle of a loaded DLL or %NULL. The
-function looks up the directory that DLL was loaded from. If
- hmodule is NULL, the directory the main executable of the current
-process is looked up. If that directory's last component is &quot;bin&quot;
-or &quot;lib&quot;, its parent directory is returned, otherwise the directory
-itself.
-
-It thus makes sense to pass only the handle to a &quot;public&quot; DLL of a
-software package to this function, as such DLLs typically are known
-to be installed in a &quot;bin&quot; or occasionally &quot;lib&quot; subfolder of the
-installation folder. DLLs that are of the dynamically loaded module
-or plugin variety are often located in more private locations
-deeper down in the tree, from which it is impossible for GLib to
-deduce the root of the package installation.
-
-The typical use case for this function is to have a DllMain() that
-saves the handle for the DLL. Then when code in the DLL needs to
-construct names of files in the installation tree it calls this
-function passing the DLL handle.
+This function is similar to g_try_realloc(), allocating (@n_blocks * @n_block_bytes) bytes,
+but care is taken to detect possible overflow during multiplication.
 
-Since: 2.16
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="hmodule">
-<parameter_description> The Win32 handle for a DLL loaded into the current process, or %NULL
+<parameter name="mem">
+<parameter_description> previously-allocated memory, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="n_blocks">
+<parameter_description> the number of blocks to allocate
+</parameter_description>
+</parameter>
+<parameter name="n_block_bytes">
+<parameter_description> the size of each block in bytes
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the guessed installation directory for
-the software package @hmodule is from. The string is in the GLib
-file name encoding, i.e. UTF-8. The return value should be freed
-with g_free() when not needed any longer. If the function fails
-%NULL is returned.
-
+<return> the allocated memory, or %NULL.
 </return>
 </function>
 
-<function name="g_sequence_insert_before">
+<function name="g_tuples_destroy">
 <description>
-Inserts a new item just before the item pointed to by @iter.
+Frees the records which were returned by g_relation_select(). This
+should always be called after g_relation_select() when you are
+finished with the records. The records are not removed from the
+#GRelation.
 
-Since: 2.14
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data for the new item
+<parameter name="tuples">
+<parameter_description> the tuple data to free.
 </parameter_description>
 </parameter>
 </parameters>
-<return> an iterator pointing to the new item
-
-</return>
+<return></return>
 </function>
 
-<function name="g_bookmark_file_load_from_file">
+<function name="g_tuples_index">
 <description>
-Loads a desktop bookmark file into an empty #GBookmarkFile structure.
-If the file could not be loaded then @error is set to either a #GFileError
-or #GBookmarkFileError.
+Gets a field from the records returned by g_relation_select(). It
+returns the given field of the record at the given index. The
+returned value should not be changed.
 
-Since: 2.12
+Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> an empty #GBookmarkFile struct
+<parameter name="tuples">
+<parameter_description> the tuple data, returned by g_relation_select().
 </parameter_description>
 </parameter>
-<parameter name="filename">
-<parameter_description> the path of a filename to load, in the GLib file name encoding
+<parameter name="index_">
+<parameter_description> the index of the record.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="field">
+<parameter_description> the field to return.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a desktop bookmark file could be loaded
-
+<return> the field of the record.
 </return>
 </function>
 
-<function name="g_key_file_set_boolean">
+<function name="g_ucs4_to_utf16">
 <description>
-Associates a new boolean value with @key under @group_name.
-If @key cannot be found then it is created. 
+Convert a string from UCS-4 to UTF-16. A 0 character will be
+added to the result after the converted text.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="str">
+<parameter_description> a UCS-4 encoded string
 </parameter_description>
 </parameter>
-<parameter name="group_name">
-<parameter_description> a group name
+<parameter name="len">
+<parameter_description> the maximum length (number of characters) of @str to use. 
+If @len &lt; 0, then the string is nul-terminated.
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a key
+<parameter name="items_read">
+<parameter_description> location to store number of bytes read, or %NULL.
+If an error occurs then the index of the invalid input
+is stored here.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> %TRUE or %FALSE
+<parameter name="items_written">
+<parameter_description> location to store number of &lt;type&gt;gunichar2&lt;/type&gt; 
+written, or %NULL. The value stored here does not 
+include the trailing 0.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError other than
+%G_CONVERT_ERROR_NO_CONVERSION may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to a newly allocated UTF-16 string.
+This value must be freed with g_free(). If an
+error occurs, %NULL will be returned and
+ error set.
+</return>
 </function>
 
 <function name="g_ucs4_to_utf8">
@@ -33618,825 +28928,566 @@ character.
 </return>
 </function>
 
-<function name="g_slist_free">
-<description>
-Frees all of the memory used by a #GSList.
-The freed elements are returned to the slice allocator.
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_slist_remove">
+<function name="g_unichar_break_type">
 <description>
-Removes an element from a #GSList.
-If two elements contain the same data, only the first is removed.
-If none of the elements contain the data, the #GSList is unchanged.
+Determines the break type of @c. @c should be a Unicode character
+(to derive a character from UTF-8 encoded text, use
+g_utf8_get_char()). The break type is used to find word and line
+breaks (&quot;text boundaries&quot;), Pango implements the Unicode boundary
+resolution algorithms and normally you would use a function such
+as pango_break() instead of caring about break types yourself.
 
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data of the element to remove
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GSList
+<return> the break type of @c
 </return>
 </function>
 
-<function name="g_queue_peek_tail">
+<function name="g_unichar_combining_class">
 <description>
-Returns the last element of the queue.
+Determines the canonical combining class of a Unicode character.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="uc">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data of the last element in the queue, or %NULL if the queue
-is empty.
+<return> the combining class of the character
+
 </return>
 </function>
 
-<function name="g_relation_print">
+<function name="g_unichar_digit_value">
 <description>
-Outputs information about all records in a #GRelation, as well as
-the indexes. It is for debugging.
+Determines the numeric value of a character as a decimal
+digit.
 
-Deprecated: 2.26: Rarely used API
 
 </description>
 <parameters>
-<parameter name="relation">
-<parameter_description> a #GRelation.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> If @c is a decimal digit (according to
+g_unichar_isdigit()), its numeric value. Otherwise, -1.
+</return>
 </function>
 
-<function name="g_slist_index">
+<function name="g_unichar_get_mirror_char">
 <description>
-Gets the position of the element containing 
-the given data (starting from 0).
+In Unicode, some characters are &lt;firstterm&gt;mirrored&lt;/firstterm&gt;. This
+means that their images are mirrored horizontally in text that is laid
+out from right to left. For instance, &quot;(&quot; would become its mirror image,
+&quot;)&quot;, in right-to-left text.
+
+If @ch has the Unicode mirrored property and there is another unicode
+character that typically has a glyph that is the mirror image of @ch's
+glyph and @mirrored_ch is set, it puts that character in the address
+pointed to by @mirrored_ch.  Otherwise the original character is put.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList
+<parameter name="ch">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data to find
+<parameter name="mirrored_ch">
+<parameter_description> location to store the mirrored character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the index of the element containing the data, 
-or -1 if the data is not found
+<return> %TRUE if @ch has a mirrored character, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="g_key_file_get_double_list">
+<function name="g_unichar_get_script">
 <description>
-Returns the values associated with @key under @group_name as
-doubles. 
+Looks up the #GUnicodeScript for a particular character (as defined 
+by Unicode Standard Annex #24). No check is made for @ch being a
+valid Unicode character; if you pass in invalid character, the
+result is undefined.
 
-If @key cannot be found then %NULL is returned and @error is set to
-#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
-with @key cannot be interpreted as doubles then %NULL is returned
-and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+This function is equivalent to pango_script_for_unichar() and the
+two are interchangeable.
 
-Since: 2.12
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the number of doubles returned
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="ch">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the values associated with the key as a list of
-doubles, or %NULL if the key was not found or could not be parsed.
+<return> the #GUnicodeScript for the character.
 
 </return>
 </function>
 
-<function name="g_variant_get_double">
+<function name="g_unichar_isalnum">
 <description>
-Returns the double precision floating point value of @value.
-
-It is an error to call this function with a @value of any type
-other than %G_VARIANT_TYPE_DOUBLE.
+Determines whether a character is alphanumeric.
+Given some UTF-8 text, obtain a character value
+with g_utf8_get_char().
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a double #GVariant instance
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gdouble
+<return> %TRUE if @c is an alphanumeric character
 </return>
 </function>
 
-<function name="g_utf8_casefold">
+<function name="g_unichar_isalpha">
 <description>
-Converts a string into a form that is independent of case. The
-result will not correspond to any particular case, but can be
-compared for equality or ordered with the results of calling
-g_utf8_casefold() on other strings.
-
-Note that calling g_utf8_casefold() followed by g_utf8_collate() is
-only an approximation to the correct linguistic case insensitive
-ordering, though it is a fairly good one. Getting this exactly
-right would require a more sophisticated collation function that
-takes case sensitivity into account. GLib does not currently
-provide such a function.
+Determines whether a character is alphabetic (i.e. a letter).
+Given some UTF-8 text, obtain a character value with
+g_utf8_get_char().
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string, that is a
-case independent form of @str.
+<return> %TRUE if @c is an alphabetic character
 </return>
 </function>
 
-<function name="g_utf8_validate">
+<function name="g_unichar_iscntrl">
 <description>
-Validates UTF-8 encoded text. @str is the text to validate;
-if @str is nul-terminated, then @max_len can be -1, otherwise
- max_len should be the number of bytes to validate.
-If @end is non-%NULL, then the end of the valid range
-will be stored there (i.e. the start of the first invalid 
-character if some bytes were invalid, or the end of the text 
-being validated otherwise).
-
-Note that g_utf8_validate() returns %FALSE if @max_len is 
-positive and NUL is met before @max_len bytes have been read.
+Determines whether a character is a control character.
+Given some UTF-8 text, obtain a character value with
+g_utf8_get_char().
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a pointer to character data
-</parameter_description>
-</parameter>
-<parameter name="max_len">
-<parameter_description> max bytes to validate, or -1 to go until NUL
-</parameter_description>
-</parameter>
-<parameter name="end">
-<parameter_description> return location for end of valid data
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the text was valid UTF-8
+<return> %TRUE if @c is a control character
 </return>
 </function>
 
-<function name="g_value_take_variant">
+<function name="g_unichar_isdefined">
 <description>
-Set the contents of a variant #GValue to @variant, and takes over
-the ownership of the caller's reference to @variant;
-the caller doesn't have to unref it any more (i.e. the reference
-count of the variant is not increased).
-
-It is a programmer error to pass a floating variant to this function.
-In particular this means that callbacks in closures, and signal handlers
-for signals of return type %G_TYPE_VARIANT, must never return floating
-variants.
-
-If you want the #GValue to hold its own reference to @variant, use
-g_value_set_variant() instead.
-
-This is an internal function introduced mainly for C marshallers.
+Determines if a given character is assigned in the Unicode
+standard.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_VARIANT
-</parameter_description>
-</parameter>
-<parameter name="variant">
-<parameter_description> a #GVariant, or %NULL
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the character has an assigned value
+</return>
 </function>
 
-<function name="g_utf8_collate_key">
+<function name="g_unichar_isdigit">
 <description>
-Converts a string into a collation key that can be compared
-with other collation keys produced by the same function using 
-strcmp(). 
-
-The results of comparing the collation keys of two strings 
-with strcmp() will always be the same as comparing the two 
-original keys with g_utf8_collate().
-
-Note that this function depends on the 
-&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
+Determines whether a character is numeric (i.e. a digit).  This
+covers ASCII 0-9 and also digits in other languages/scripts.  Given
+some UTF-8 text, obtain a character value with g_utf8_get_char().
 
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-8 encoded string.
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string. This string should
-be freed with g_free() when you are done with it.
+<return> %TRUE if @c is a digit
 </return>
 </function>
 
-<function name="g_key_file_get_integer">
+<function name="g_unichar_isgraph">
 <description>
-Returns the value associated with @key under @group_name as an
-integer. 
-
-If @key cannot be found then 0 is returned and @error is set to
-#G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
-with @key cannot be interpreted as an integer then 0 is returned
-and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+Determines whether a character is printable and not a space
+(returns %FALSE for control characters, format characters, and
+spaces). g_unichar_isprint() is similar, but returns %TRUE for
+spaces. Given some UTF-8 text, obtain a character value with
+g_utf8_get_char().
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a group name
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value associated with the key as an integer, or
-0 if the key was not found or could not be parsed.
-
+<return> %TRUE if @c is printable unless it's a space
 </return>
 </function>
 
-<function name="g_unichar_get_mirror_char">
+<function name="g_unichar_islower">
 <description>
-In Unicode, some characters are &lt;firstterm&gt;mirrored&lt;/firstterm&gt;. This
-means that their images are mirrored horizontally in text that is laid
-out from right to left. For instance, &quot;(&quot; would become its mirror image,
-&quot;)&quot;, in right-to-left text.
-
-If @ch has the Unicode mirrored property and there is another unicode
-character that typically has a glyph that is the mirror image of @ch's
-glyph and @mirrored_ch is set, it puts that character in the address
-pointed to by @mirrored_ch.  Otherwise the original character is put.
+Determines whether a character is a lowercase letter.
+Given some UTF-8 text, obtain a character value with
+g_utf8_get_char().
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="ch">
+<parameter name="c">
 <parameter_description> a Unicode character
 </parameter_description>
 </parameter>
-<parameter name="mirrored_ch">
-<parameter_description> location to store the mirrored character
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if @ch has a mirrored character, %FALSE otherwise
-
+<return> %TRUE if @c is a lowercase letter
 </return>
 </function>
 
-<function name="g_convert_with_iconv">
+<function name="g_unichar_ismark">
 <description>
-Converts a string from one character set to another. 
+Determines whether a character is a mark (non-spacing mark,
+combining mark, or enclosing mark in Unicode speak).
+Given some UTF-8 text, obtain a character value
+with g_utf8_get_char().
 
-Note that you should use g_iconv() for streaming 
-conversions&lt;footnote id=&quot;streaming-state&quot;&gt;
-&lt;para&gt;
-Despite the fact that @byes_read can return information about partial 
-characters, the &lt;literal&gt;g_convert_...&lt;/literal&gt; functions
-are not generally suitable for streaming. If the underlying converter 
-being used maintains internal state, then this won't be preserved 
-across successive calls to g_convert(), g_convert_with_iconv() or 
-g_convert_with_fallback(). (An example of this is the GNU C converter 
-for CP1255 which does not emit a base character until it knows that 
-the next character is not a mark that could combine with the base 
-character.)
-&lt;/para&gt;
-&lt;/footnote&gt;. 
+Note: in most cases where isalpha characters are allowed,
+ismark characters should be allowed to as they are essential
+for writing most European languages as well as many non-Latin
+scripts.
 
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description>           the string to convert
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description>           the length of the string, or -1 if the string is 
-nul-terminated&lt;footnoteref linkend=&quot;nul-unsafe&quot;/&gt;. 
-</parameter_description>
-</parameter>
-<parameter name="converter">
-<parameter_description>     conversion descriptor from g_iconv_open()
-</parameter_description>
-</parameter>
-<parameter name="bytes_read">
-<parameter_description>    location to store the number of bytes in the
-input string that were successfully converted, or %NULL.
-Even if the conversion was successful, this may be 
-less than @len if there were partial characters
-at the end of the input. If the error
-#G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
-stored will the byte offset after the last valid
-input sequence.
-</parameter_description>
-</parameter>
-<parameter name="bytes_written">
-<parameter_description> the number of bytes stored in the output buffer (not 
-including the terminating nul).
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description>         location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError may occur.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> If the conversion was successful, a newly allocated
-nul-terminated string, which must be freed with
-g_free(). Otherwise %NULL and @error will be set.
+<return> %TRUE if @c is a mark character
+
 </return>
 </function>
 
-<function name="g_utf8_collate">
+<function name="g_unichar_isprint">
 <description>
-Compares two strings for ordering using the linguistically
-correct rules for the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;. 
-When sorting a large number of strings, it will be significantly 
-faster to obtain collation keys with g_utf8_collate_key() and 
-compare the keys with strcmp() when sorting instead of sorting 
-the original strings.
+Determines whether a character is printable.
+Unlike g_unichar_isgraph(), returns %TRUE for spaces.
+Given some UTF-8 text, obtain a character value with
+g_utf8_get_char().
 
 
 </description>
 <parameters>
-<parameter name="str1">
-<parameter_description> a UTF-8 encoded string
-</parameter_description>
-</parameter>
-<parameter name="str2">
-<parameter_description> a UTF-8 encoded string
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> &lt; 0 if @str1 compares before @str2, 
-0 if they compare equal, &gt; 0 if @str1 compares after @str2.
+<return> %TRUE if @c is printable
 </return>
 </function>
 
-<function name="g_variant_type_is_dict_entry">
+<function name="g_unichar_ispunct">
 <description>
-Determines if the given @type is a dictionary entry type.  This is
-true if the type string for @type starts with a '{'.
-
-This function returns %TRUE for any indefinite type for which every
-definite subtype is a dictionary entry type --
-%G_VARIANT_TYPE_DICT_ENTRY, for example.
+Determines whether a character is punctuation or a symbol.
+Given some UTF-8 text, obtain a character value with
+g_utf8_get_char().
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a #GVariantType
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is a dictionary entry type
+<return> %TRUE if @c is a punctuation or symbol character
 </return>
 </function>
 
-<function name="g_type_module_register_type">
+<function name="g_unichar_isspace">
 <description>
-Looks up or registers a type that is implemented with a particular
-type plugin. If a type with name @type_name was previously registered,
-the #GType identifier for the type is returned, otherwise the type
-is newly registered, and the resulting #GType identifier returned.
-
-When reregistering a type (typically because a module is unloaded
-then reloaded, and reinitialized), @module and @parent_type must
-be the same as they were previously.
+Determines whether a character is a space, tab, or line separator
+(newline, carriage return, etc.).  Given some UTF-8 text, obtain a
+character value with g_utf8_get_char().
 
-As long as any instances of the type exist, the type plugin will
-not be unloaded.
+(Note: don't use this to do word breaking; you have to use
+Pango or equivalent to get word breaking right, the algorithm
+is fairly complex.)
 
 
 </description>
 <parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule
-</parameter_description>
-</parameter>
-<parameter name="parent_type">
-<parameter_description> the type for the parent class
-</parameter_description>
-</parameter>
-<parameter name="type_name">
-<parameter_description> name for the type
-</parameter_description>
-</parameter>
-<parameter name="type_info">
-<parameter_description> type information structure
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags field providing details about the type
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new or existing type ID
+<return> %TRUE if @c is a space character
 </return>
 </function>
 
-<function name="g_variant_hash">
+<function name="g_unichar_istitle">
 <description>
-Generates a hash value for a #GVariant instance.
-
-The output of this function is guaranteed to be the same for a given
-value only per-process.  It may change between different processor
-architectures or even different versions of GLib.  Do not use this
-function as a basis for building protocols or file formats.
-
-The type of @value is #gconstpointer only to allow use of this
-function with #GHashTable.  @value must be a #GVariant.
+Determines if a character is titlecase. Some characters in
+Unicode which are composites, such as the DZ digraph
+have three case variants instead of just two. The titlecase
+form is used at the beginning of a word where only the
+first letter is capitalized. The titlecase form of the DZ
+digraph is U+01F2 LATIN CAPITAL LETTTER D WITH SMALL LETTER Z.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a basic #GVariant value as a #gconstpointer
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a hash value corresponding to @value
+<return> %TRUE if the character is titlecase
 </return>
 </function>
 
-<function name="g_variant_is_object_path">
+<function name="g_unichar_isupper">
 <description>
-Determines if a given string is a valid DBus object path.  You
-should ensure that a string is a valid DBus object path before
-passing it to g_variant_new_object_path().
-
-A valid object path starts with '/' followed by zero or more
-sequences of characters separated by '/' characters.  Each sequence
-must contain only the characters &quot;[A-Z][a-z][0-9]_&quot;.  No sequence
-(including the one following the final '/' character) may be empty.
+Determines if a character is uppercase.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a normal C nul-terminated string
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @string is a DBus object path
+<return> %TRUE if @c is an uppercase character
 </return>
 </function>
 
-<function name="g_value_get_pointer">
+<function name="g_unichar_iswide">
 <description>
-Get the contents of a pointer #GValue.
+Determines if a character is typically rendered in a double-width
+cell.
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_POINTER
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> pointer contents of @value
+<return> %TRUE if the character is wide
 </return>
 </function>
 
-<function name="g_win32_locale_filename_from_utf8">
+<function name="g_unichar_iswide_cjk">
 <description>
-Converts a filename from UTF-8 to the system codepage.
-
-On NT-based Windows, on NTFS file systems, file names are in
-Unicode. It is quite possible that Unicode file names contain
-characters not representable in the system codepage. (For instance,
-Greek or Cyrillic characters on Western European or US Windows
-installations, or various less common CJK characters on CJK Windows
-installations.)
-
-In such a case, and if the filename refers to an existing file, and
-the file system stores alternate short (8.3) names for directory
-entries, the short form of the filename is returned. Note that the
-&quot;short&quot; name might in fact be longer than the Unicode name if the
-Unicode name has very short pathname components containing
-non-ASCII characters. If no system codepage name for the file is
-possible, %NULL is returned.
+Determines if a character is typically rendered in a double-width
+cell under legacy East Asian locales.  If a character is wide according to
+g_unichar_iswide(), then it is also reported wide with this function, but
+the converse is not necessarily true.  See the
+&lt;ulink url=&quot;http://www.unicode.org/reports/tr11/&quot;&gt;Unicode Standard
+Annex #11&lt;/ulink&gt; for details.
 
-The return value is dynamically allocated and should be freed with
-g_free() when no longer needed.
+If a character passes the g_unichar_iswide() test then it will also pass
+this test, but not the other way around.  Note that some characters may
+pas both this test and g_unichar_iszerowidth().
 
-Since: 2.8
+Since: 2.12
 
 </description>
 <parameters>
-<parameter name="utf8filename">
-<parameter_description> a UTF-8 encoded filename.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> The converted filename, or %NULL on conversion
-failure and lack of short names.
+<return> %TRUE if the character is wide in legacy East Asian locales
 
 </return>
 </function>
 
-<function name="g_closure_new_simple">
+<function name="g_unichar_isxdigit">
 <description>
-Allocates a struct of the given size and initializes the initial
-part as a #GClosure. This function is mainly useful when
-implementing new types of closures.
-
-|[
-typedef struct _MyClosure MyClosure;
-struct _MyClosure
-{
-GClosure closure;
-// extra data goes here
-};
-
-static void
-my_closure_finalize (gpointer  notify_data,
-GClosure *closure)
-{
-MyClosure *my_closure = (MyClosure *)closure;
-
-// free extra data here
-}
-
-MyClosure *my_closure_new (gpointer data)
-{
-GClosure *closure;
-MyClosure *my_closure;
-
-closure = g_closure_new_simple (sizeof (MyClosure), data);
-my_closure = (MyClosure *) closure;
-
-// initialize extra data here
-
-g_closure_add_finalize_notifier (closure, notify_data,
-my_closure_finalize);
-return my_closure;
-}
-]|
+Determines if a character is a hexidecimal digit.
 
 
 </description>
 <parameters>
-<parameter name="sizeof_closure">
-<parameter_description> the size of the structure to allocate, must be at least
-&lt;literal&gt;sizeof (GClosure)&lt;/literal&gt;
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to store in the @data field of the newly allocated #GClosure
+<parameter name="c">
+<parameter_description> a Unicode character.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GClosure
+<return> %TRUE if the character is a hexadecimal digit
 </return>
 </function>
 
-<function name="g_ptr_array_new_with_free_func">
+<function name="g_unichar_iszerowidth">
 <description>
-Creates a new #GPtrArray with a reference count of 1 and use @element_free_func
-for freeing each element when the array is destroyed either via
-g_ptr_array_unref(), when g_ptr_array_free() is called with @free_segment
-set to %TRUE or when removing elements.
+Determines if a given character typically takes zero width when rendered.
+The return value is %TRUE for all non-spacing and enclosing marks
+(e.g., combining accents), format characters, zero-width
+space, but not U+00AD SOFT HYPHEN.
 
-Since: 2.22
+A typical use of this function is with one of g_unichar_iswide() or
+g_unichar_iswide_cjk() to determine the number of cells a string occupies
+when displayed on a grid display (terminals).  However, note that not all
+terminals support zero-width rendering of zero-width marks.
+
+Since: 2.14
 
 </description>
 <parameters>
-<parameter name="element_free_func">
-<parameter_description> A function to free elements with destroy @array or %NULL.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #GPtrArray.
+<return> %TRUE if the character has zero width
 
 </return>
 </function>
 
-<function name="g_variant_iter_copy">
+<function name="g_unichar_to_utf8">
 <description>
-Creates a new heap-allocated #GVariantIter to iterate over the
-container that was being iterated over by @iter.  Iteration begins on
-the new iterator from the current position of the old iterator but
-the two copies are independent past that point.
-
-Use g_variant_iter_free() to free the return value when you no longer
-need it.
-
-A reference is taken to the container that @iter is iterating over
-and will be releated only when g_variant_iter_free() is called.
+Converts a single character to UTF-8.
 
-Since: 2.24
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GVariantIter
+<parameter name="c">
+<parameter_description> a Unicode character code
+</parameter_description>
+</parameter>
+<parameter name="outbuf">
+<parameter_description> output buffer, must have at least 6 bytes of space.
+If %NULL, the length will be computed and returned
+and nothing will be written to @outbuf.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new heap-allocated #GVariantIter
+<return> number of bytes written
 </return>
 </function>
 
-<function name="g_type_interfaces">
+<function name="g_unichar_tolower">
 <description>
-Return a newly allocated and 0-terminated array of type IDs, listing the
-interface types that @type conforms to. The return value has to be
-g_free()ed after use.
+Converts a character to lower case.
 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> The type to list interface types for.
-</parameter_description>
-</parameter>
-<parameter name="n_interfaces">
-<parameter_description> Optional #guint pointer to contain the number of
-interface types.
+<parameter name="c">
+<parameter_description> a Unicode character.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Newly allocated and 0-terminated array of interface types.
+<return> the result of converting @c to lower case.
+If @c is not an upperlower or titlecase character,
+or has no lowercase equivalent @c is returned unchanged.
 </return>
 </function>
 
-<function name="g_variant_type_new_array">
+<function name="g_unichar_totitle">
 <description>
-Constructs the type corresponding to an array of elements of the
-type @type.
-
-It is appropriate to call g_variant_type_free() on the return value.
+Converts a character to the titlecase.
 
-Since 2.24
 
 </description>
 <parameters>
-<parameter name="element">
-<parameter_description> a #GVariantType
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new array #GVariantType
+<return> the result of converting @c to titlecase.
+If @c is not an uppercase or lowercase character,
+ c is returned unchanged.
 </return>
 </function>
 
-<function name="g_io_channel_error_from_errno">
+<function name="g_unichar_toupper">
 <description>
-Converts an &lt;literal&gt;errno&lt;/literal&gt; error number to a #GIOChannelError.
+Converts a character to uppercase.
 
 
 </description>
 <parameters>
-<parameter name="en">
-<parameter_description> an &lt;literal&gt;errno&lt;/literal&gt; error number, e.g. %EINVAL
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIOChannelError error number, e.g. 
-%G_IO_CHANNEL_ERROR_INVAL.
+<return> the result of converting @c to uppercase.
+If @c is not an lowercase or titlecase character,
+or has no upper case equivalent @c is returned unchanged.
 </return>
 </function>
 
-<function name="g_cond_signal">
+<function name="g_unichar_type">
 <description>
-If threads are waiting for @cond, exactly one of them is woken up.
-It is good practice to hold the same lock as the waiting thread
-while calling this function, though not required.
+Classifies a Unicode character by type.
 
-This function can be used even if g_thread_init() has not yet been
-called, and, in that case, will do nothing.
 
 </description>
 <parameters>
-<parameter name="cond">
-<parameter_description> a #GCond.
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the type of the character.
+</return>
 </function>
 
-<function name="g_sequence_sort_changed_iter">
+<function name="g_unichar_validate">
 <description>
-Like g_sequence_sort_changed(), but uses
-a #GSequenceIterCompareFunc instead of a #GCompareDataFunc as
-the compare function.
+Checks whether @ch is a valid Unicode character. Some possible
+integer values of @ch will not be valid. 0 is considered a valid
+character, though it's normally a string terminator.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
-<parameter name="iter_cmp">
-<parameter_description> the #GSequenceItercompare used to compare iterators in the
-sequence. It is called with two iterators pointing into @seq. It should
-return 0 if the iterators are equal, a negative value if the first
-iterator comes before the second, and a positive value if the second
-iterator comes before the first.
-</parameter_description>
-</parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @cmp_func
+<parameter name="ch">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @ch is a valid Unicode character
+</return>
 </function>
 
-<function name="g_unichar_isdefined">
+<function name="g_unichar_xdigit_value">
 <description>
-Determines if a given character is assigned in the Unicode
-standard.
+Determines the numeric value of a character as a hexidecimal
+digit.
 
 
 </description>
@@ -34446,407 +29497,327 @@ standard.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the character has an assigned value
+<return> If @c is a hex digit (according to
+g_unichar_isxdigit()), its numeric value. Otherwise, -1.
 </return>
 </function>
 
-<function name="g_signal_handler_block">
+<function name="g_unicode_canonical_decomposition">
 <description>
-Blocks a handler of an instance so it will not be called during any
-signal emissions unless it is unblocked again. Thus &quot;blocking&quot; a
-signal handler means to temporarily deactive it, a signal handler
-has to be unblocked exactly the same amount of times it has been
-blocked before to become active again.
+Computes the canonical decomposition of a Unicode character.  
 
-The @handler_id has to be a valid signal handler id, connected to a
-signal of @instance.
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance to block the signal handler of.
+<parameter name="ch">
+<parameter_description> a Unicode character.
 </parameter_description>
 </parameter>
-<parameter name="handler_id">
-<parameter_description> Handler id of the handler to be blocked.
+<parameter name="result_len">
+<parameter_description> location to store the length of the return value.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string of Unicode characters.
+ result_len is set to the resulting length of the string.
+</return>
 </function>
 
-<function name="g_value_set_float">
+<function name="g_unicode_canonical_ordering">
 <description>
-Set the contents of a %G_TYPE_FLOAT #GValue to @v_float.
+Computes the canonical ordering of a string in-place.  
+This rearranges decomposed characters in the string 
+according to their combining classes.  See the Unicode 
+manual for more information. 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_FLOAT
+<parameter name="string">
+<parameter_description> a UCS-4 encoded string.
 </parameter_description>
 </parameter>
-<parameter name="v_float">
-<parameter_description> float value to be set
+<parameter name="len">
+<parameter_description> the maximum length of @string to use.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_markup_parse_context_get_element_stack">
+<function name="g_unlink">
 <description>
-Retrieves the element stack from the internal state of the parser.
-The returned #GSList is a list of strings where the first item is
-the currently open tag (as would be returned by
-g_markup_parse_context_get_element()) and the next item is its
-immediate parent.
+A wrapper for the POSIX unlink() function. The unlink() function 
+deletes a name from the filesystem. If this was the last link to the 
+file and no processes have it opened, the diskspace occupied by the
+file is freed.
 
-This function is intended to be used in the start_element and
-end_element handlers where g_markup_parse_context_get_element()
-would merely return the name of the element that is being
-processed.
+See your C library manual for more details about unlink(). Note
+that on Windows, it is in general not possible to delete files that
+are open to some process, or mapped into memory.
 
-Since: 2.16
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the element stack, which must not be modified
+<return> 0 if the name was successfully deleted, -1 if an error 
+occurred
 
 </return>
 </function>
 
-<function name="g_win32_get_package_installation_directory">
+<function name="g_unsetenv">
 <description>
-Try to determine the installation directory for a software package.
-
-This function is deprecated. Use
-g_win32_get_package_installation_directory_of_module() instead.
-
-The use of @package is deprecated. You should always pass %NULL. A
-warning is printed if non-NULL is passed as @package.
-
-The original intended use of @package was for a short identifier of
-the package, typically the same identifier as used for
-&lt;literal&gt;GETTEXT_PACKAGE&lt;/literal&gt; in software configured using GNU
-autotools. The function first looks in the Windows Registry for the
-value &lt;literal&gt;&#35;InstallationDirectory&lt;/literal&gt; in the key
-&lt;literal&gt;&#35;HKLM\Software\ package&lt;/literal&gt;, and if that value
-exists and is a string, returns that.
-
-It is strongly recommended that packagers of GLib-using libraries
-for Windows do not store installation paths in the Registry to be
-used by this function as that interfers with having several
-parallel installations of the library. Enabling multiple
-installations of different versions of some GLib-using library, or
-GLib itself, is desirable for various reasons.
-
-For this reason it is recommeded to always pass %NULL as
- package to this function, to avoid the temptation to use the
-Registry. In version 2.20 of GLib the @package parameter
-will be ignored and this function won't look in the Registry at all.
-
-If @package is %NULL, or the above value isn't found in the
-Registry, but @dll_name is non-%NULL, it should name a DLL loaded
-into the current process. Typically that would be the name of the
-DLL calling this function, looking for its installation
-directory. The function then asks Windows what directory that DLL
-was loaded from. If that directory's last component is &quot;bin&quot; or
-&quot;lib&quot;, the parent directory is returned, otherwise the directory
-itself. If that DLL isn't loaded, the function proceeds as if
- dll_name was %NULL.
+Removes an environment variable from the environment.
 
-If both @package and @dll_name are %NULL, the directory from where
-the main executable of the process was loaded is used instead in
-the same way as above.
+Note that on some systems, when variables are overwritten, the memory 
+used for the previous variables and its value isn't reclaimed.
+Furthermore, this function can't be guaranteed to operate in a 
+threadsafe way.
 
-Deprecated: 2.18: Pass the HMODULE of a DLL or EXE to
-g_win32_get_package_installation_directory_of_module() instead.
+Since: 2.4 
 
 </description>
 <parameters>
-<parameter name="package">
-<parameter_description> You should pass %NULL for this.
-</parameter_description>
-</parameter>
-<parameter name="dll_name">
-<parameter_description> The name of a DLL that a package provides in UTF-8, or %NULL.
+<parameter name="variable">
+<parameter_description> the environment variable to remove, must not contain '='.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the installation directory for
- package  The string is in the GLib file name encoding,
-i.e. UTF-8. The return value should be freed with g_free() when not
-needed any longer. If the function fails %NULL is returned.
-
-</return>
+<return></return>
 </function>
 
-<function name="g_dataset_id_set_data">
+<function name="g_uri_escape_string">
 <description>
-Sets the data element associated with the given #GQuark id. Any
-previous data with the same key is removed, and its destroy function
-is called.
+Escapes a string for use in a URI.
+
+Normally all characters that are not &quot;unreserved&quot; (i.e. ASCII alphanumerical
+characters plus dash, dot, underscore and tilde) are escaped.
+But if you specify characters in @reserved_chars_allowed they are not
+escaped. This is useful for the &quot;reserved&quot; characters in the URI
+specification, since those are allowed unescaped in some portions of
+a URI. 
+
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
+<parameter name="unescaped">
+<parameter_description> the unescaped input string.
 </parameter_description>
 </parameter>
-<parameter name="k">
-<parameter_description> the #GQuark id to identify the data element.
+<parameter name="reserved_chars_allowed">
+<parameter_description> a string of reserved characters that are
+allowed to be used, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="d">
-<parameter_description> the data element.
+<parameter name="allow_utf8">
+<parameter_description> %TRUE if the result can include UTF-8 characters.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> an escaped version of @unescaped. The returned string should be 
+freed when no longer needed.
+
+</return>
 </function>
 
-<function name="g_value_take_string">
+<function name="g_uri_list_extract_uris">
 <description>
-Sets the contents of a %G_TYPE_STRING #GValue to @v_string.
+Splits an URI list conforming to the text/uri-list
+mime type defined in RFC 2483 into individual URIs,
+discarding any comments. The URIs are not validated.
 
-Since: 2.4
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of type %G_TYPE_STRING
-</parameter_description>
-</parameter>
-<parameter name="v_string">
-<parameter_description> string to take ownership of
+<parameter name="uri_list">
+<parameter_description> an URI list 
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="g_thread_self">
-<description>
-This functions returns the #GThread corresponding to the calling
-thread.
+<return> a newly allocated %NULL-terminated list of
+strings holding the individual URIs. The array should
+be freed with g_strfreev().
 
-</description>
-<parameters>
-</parameters>
-<return> the current thread.
 </return>
 </function>
 
-<function name="g_signal_newv">
+<function name="g_uri_parse_scheme">
 <description>
-Creates a new signal. (This is usually done in the class initializer.)
-
-See g_signal_new() for details on allowed signal names.
+Gets the scheme portion of a URI string. RFC 3986 decodes the scheme as:
+&lt;programlisting&gt;
+URI = scheme &quot;:&quot; hier-part [ &quot;?&quot; query ] [ &quot;#&quot; fragment ] 
+&lt;/programlisting&gt;
+Common schemes include &quot;file&quot;, &quot;http&quot;, &quot;svn+ssh&quot;, etc.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="signal_name">
-<parameter_description> the name for the signal
-</parameter_description>
-</parameter>
-<parameter name="itype">
-<parameter_description> the type this signal pertains to. It will also pertain to
-types which are derived from this type
-</parameter_description>
-</parameter>
-<parameter name="signal_flags">
-<parameter_description> a combination of #GSignalFlags specifying detail of when
-the default handler is to be invoked. You should at least specify
-%G_SIGNAL_RUN_FIRST or %G_SIGNAL_RUN_LAST
-</parameter_description>
-</parameter>
-<parameter name="class_closure">
-<parameter_description> The closure to invoke on signal emission; may be %NULL
-</parameter_description>
-</parameter>
-<parameter name="accumulator">
-<parameter_description> the accumulator for this signal; may be %NULL
-</parameter_description>
-</parameter>
-<parameter name="accu_data">
-<parameter_description> user data for the @accumulator
-</parameter_description>
-</parameter>
-<parameter name="c_marshaller">
-<parameter_description> the function to translate arrays of parameter values to
-signal emissions into C language callback invocations
-</parameter_description>
-</parameter>
-<parameter name="return_type">
-<parameter_description> the type of return value, or #G_TYPE_NONE for a signal
-without a return value
-</parameter_description>
-</parameter>
-<parameter name="n_params">
-<parameter_description> the length of @param_types
-</parameter_description>
-</parameter>
-<parameter name="param_types">
-<parameter_description> an array of types, one for each parameter
+<parameter name="uri">
+<parameter_description> a valid URI.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the signal id
+<return> The &quot;Scheme&quot; component of the URI, or %NULL on error. 
+The returned string should be freed when no longer needed.
+
 </return>
 </function>
 
-<function name="g_value_set_flags">
+<function name="g_uri_unescape_segment">
 <description>
-Set the contents of a %G_TYPE_FLAGS #GValue to @v_flags.
+Unescapes a segment of an escaped string.
 
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_FLAGS
-</parameter_description>
-</parameter>
-<parameter name="v_flags">
-<parameter_description> flags value to be set
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+If any of the characters in @illegal_characters or the character zero appears
+as an escaped character in @escaped_string then that is an error and %NULL
+will be returned. This is useful it you want to avoid for instance having a
+slash being expanded in an escaped path element, which might confuse pathname
+handling.
 
-<function name="g_io_channel_set_close_on_unref">
-<description>
-Setting this flag to %TRUE for a channel you have already closed
-can cause problems.
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="escaped_string">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
-<parameter name="do_close">
-<parameter_description> Whether to close the channel on the final unref of
-the GIOChannel data structure. The default value of
-this is %TRUE for channels created by g_io_channel_new_file (),
-and %FALSE for all other channels.
+<parameter name="escaped_string_end">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_option_context_get_description">
-<description>
-Returns the description. See g_option_context_set_description().
-
-Since: 2.12
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="illegal_characters">
+<parameter_description> an optional string of illegal characters not to be allowed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the description
+<return> an unescaped version of @escaped_string or %NULL on error.
+The returned string should be freed when no longer needed.
 
 </return>
 </function>
 
-<function name="g_io_channel_shutdown">
+<function name="g_uri_unescape_string">
 <description>
-Close an IO channel. Any pending data to be written will be
-flushed if @flush is %TRUE. The channel will not be freed until the
-last reference is dropped using g_io_channel_unref().
+Unescapes a whole escaped string.
+
+If any of the characters in @illegal_characters or the character zero appears
+as an escaped character in @escaped_string then that is an error and %NULL
+will be returned. This is useful it you want to avoid for instance having a
+slash being expanded in an escaped path element, which might confuse pathname
+handling.
 
+Since: 2.16
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="flush">
-<parameter_description> if %TRUE, flush pending
+<parameter name="escaped_string">
+<parameter_description> an escaped string to be unescaped.
 </parameter_description>
 </parameter>
-<parameter name="err">
-<parameter_description> location to store a #GIOChannelError
+<parameter name="illegal_characters">
+<parameter_description> an optional string of illegal characters not to be allowed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation.
+<return> an unescaped version of @escaped_string. The returned string 
+should be freed when no longer needed.
+
 </return>
 </function>
 
-<function name="g_type_module_register_flags">
+<function name="g_utf16_to_ucs4">
 <description>
-Looks up or registers a flags type that is implemented with a particular
-type plugin. If a type with name @type_name was previously registered,
-the #GType identifier for the type is returned, otherwise the type
-is newly registered, and the resulting #GType identifier returned.
-
-As long as any instances of the type exist, the type plugin will
-not be unloaded.
-
-Since: 2.6
+Convert a string from UTF-16 to UCS-4. The result will be
+nul-terminated.
 
 
 </description>
 <parameters>
-<parameter name="module">
-<parameter_description> a #GTypeModule
+<parameter name="str">
+<parameter_description> a UTF-16 encoded string
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> name for the type
+<parameter name="len">
+<parameter_description> the maximum length (number of &lt;type&gt;gunichar2&lt;/type&gt;) of @str to use. 
+If @len &lt; 0, then the string is nul-terminated.
 </parameter_description>
 </parameter>
-<parameter name="const_static_values">
-<parameter_description> an array of #GFlagsValue structs for the
-possible flags values. The array is
-terminated by a struct with all members being
-0.
+<parameter name="items_read">
+<parameter_description> location to store number of words read, or %NULL.
+If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+returned in case @str contains a trailing partial
+character. If an error occurs then the index of the
+invalid input is stored here.
+</parameter_description>
+</parameter>
+<parameter name="items_written">
+<parameter_description> location to store number of characters written, or %NULL.
+The value stored here does not include the trailing
+0 character.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError other than
+%G_CONVERT_ERROR_NO_CONVERSION may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new or existing type ID
+<return> a pointer to a newly allocated UCS-4 string.
+This value must be freed with g_free(). If an
+error occurs, %NULL will be returned and
+ error set.
 </return>
 </function>
 
-<function name="g_ucs4_to_utf16">
+<function name="g_utf16_to_utf8">
 <description>
-Convert a string from UCS-4 to UTF-16. A 0 character will be
-added to the result after the converted text.
+Convert a string from UTF-16 to UTF-8. The result will be
+terminated with a 0 byte.
+
+Note that the input is expected to be already in native endianness,
+an initial byte-order-mark character is not handled specially.
+g_convert() can be used to convert a byte buffer of UTF-16 data of
+ambiguous endianess.
+
+Further note that this function does not validate the result
+string; it may e.g. include embedded NUL characters. The only
+validation done by this function is to ensure that the input can
+be correctly interpreted as UTF-16, i.e. it doesn't contain
+things unpaired surrogates.
 
 
 </description>
 <parameters>
 <parameter name="str">
-<parameter_description> a UCS-4 encoded string
+<parameter_description> a UTF-16 encoded string
 </parameter_description>
 </parameter>
 <parameter name="len">
-<parameter_description> the maximum length (number of characters) of @str to use. 
+<parameter_description> the maximum length (number of &lt;type&gt;gunichar2&lt;/type&gt;) of @str to use. 
 If @len &lt; 0, then the string is nul-terminated.
 </parameter_description>
 </parameter>
 <parameter name="items_read">
-<parameter_description> location to store number of bytes read, or %NULL.
-If an error occurs then the index of the invalid input
-is stored here.
+<parameter_description> location to store number of words read, or %NULL.
+If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+returned in case @str contains a trailing partial
+character. If an error occurs then the index of the
+invalid input is stored here.
 </parameter_description>
 </parameter>
 <parameter name="items_written">
-<parameter_description> location to store number of &lt;type&gt;gunichar2&lt;/type&gt; 
-written, or %NULL. The value stored here does not 
-include the trailing 0.
+<parameter_description> location to store number of bytes written, or %NULL.
+The value stored here does not include the trailing
+0 byte.
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -34856,1505 +29827,1370 @@ errors. Any of the errors in #GConvertError other than
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a newly allocated UTF-16 string.
+<return> a pointer to a newly allocated UTF-8 string.
 This value must be freed with g_free(). If an
 error occurs, %NULL will be returned and
 @error set.
 </return>
 </function>
 
-<function name="g_static_rw_lock_reader_trylock">
+<function name="g_utf8_casefold">
 <description>
-Tries to lock @lock for reading. If @lock is already locked for
-writing by another thread or if another thread is already waiting to
-lock @lock for writing, immediately returns %FALSE. Otherwise locks
- lock for reading and returns %TRUE. This lock has to be unlocked by
-g_static_rw_lock_reader_unlock().
+Converts a string into a form that is independent of case. The
+result will not correspond to any particular case, but can be
+compared for equality or ordered with the results of calling
+g_utf8_casefold() on other strings.
+
+Note that calling g_utf8_casefold() followed by g_utf8_collate() is
+only an approximation to the correct linguistic case insensitive
+ordering, though it is a fairly good one. Getting this exactly
+right would require a more sophisticated collation function that
+takes case sensitivity into account. GLib does not currently
+provide such a function.
+
 
 </description>
 <parameters>
-<parameter name="lock">
-<parameter_description> a #GStaticRWLock to lock for reading.
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE, if @lock could be locked for reading.
+<return> a newly allocated string, that is a
+case independent form of @str.
 </return>
 </function>
 
-<function name="g_node_insert_after">
+<function name="g_utf8_collate">
 <description>
-Inserts a #GNode beneath the parent after the given sibling.
+Compares two strings for ordering using the linguistically
+correct rules for the &lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;. 
+When sorting a large number of strings, it will be significantly 
+faster to obtain collation keys with g_utf8_collate_key() and 
+compare the keys with strcmp() when sorting instead of sorting 
+the original strings.
 
 
 </description>
 <parameters>
-<parameter name="parent">
-<parameter_description> the #GNode to place @node under
-</parameter_description>
-</parameter>
-<parameter name="sibling">
-<parameter_description> the sibling #GNode to place @node after. 
-If sibling is %NULL, the node is inserted as the first child of @parent.
+<parameter name="str1">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> the #GNode to insert
+<parameter name="str2">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the inserted #GNode
+<return> &lt; 0 if @str1 compares before @str2, 
+0 if they compare equal, &gt; 0 if @str1 compares after @str2.
 </return>
 </function>
 
-<function name="g_queue_insert_sorted">
+<function name="g_utf8_collate_key">
 <description>
-Inserts @data into @queue using @func to determine the new position.
+Converts a string into a collation key that can be compared
+with other collation keys produced by the same function using 
+strcmp(). 
+
+The results of comparing the collation keys of two strings 
+with strcmp() will always be the same as comparing the two 
+original keys with g_utf8_collate().
+
+Note that this function depends on the 
+&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data to insert
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the #GCompareDataFunc used to compare elements in the queue. It is
-called with two elements of the @queue and @user_data. It should
-return 0 if the elements are equal, a negative value if the first
-element comes before the second, and a positive value if the second
-element comes before the first.
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @func.
+<parameter name="len">
+<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string. This string should
+be freed with g_free() when you are done with it.
+</return>
 </function>
 
-<function name="g_test_rand_int">
+<function name="g_utf8_collate_key_for_filename">
 <description>
-Get a reproducible random integer number.
+Converts a string into a collation key that can be compared
+with other collation keys produced by the same function using strcmp(). 
 
-The random numbers generated by the g_test_rand_*() family of functions
-change with every new test program start, unless the --seed option is
-given when starting test programs.
+In order to sort filenames correctly, this function treats the dot '.' 
+as a special case. Most dictionary orderings seem to consider it
+insignificant, thus producing the ordering &quot;event.c&quot; &quot;eventgenerator.c&quot;
+&quot;event.h&quot; instead of &quot;event.c&quot; &quot;event.h&quot; &quot;eventgenerator.c&quot;. Also, we
+would like to treat numbers intelligently so that &quot;file1&quot; &quot;file10&quot; &quot;file5&quot;
+is sorted as &quot;file1&quot; &quot;file5&quot; &quot;file10&quot;.
 
-For individual test cases however, the random number generator is
-reseeded, to avoid dependencies between tests and to make --seed
-effective for all test cases.
+Note that this function depends on the 
+&lt;link linkend=&quot;setlocale&quot;&gt;current locale&lt;/link&gt;.
 
-Since: 2.16
+Since: 2.8
 
 </description>
 <parameters>
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string.
+</parameter_description>
+</parameter>
+<parameter name="len">
+<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a random number from the seeded random number generator.
+<return> a newly allocated string. This string should
+be freed with g_free() when you are done with it.
 
 </return>
 </function>
 
-<function name="g_type_is_a">
+<function name="g_utf8_find_next_char">
 <description>
-If @is_a_type is a derivable type, check whether @type is a
-descendant of @is_a_type.  If @is_a_type is an interface, check
-whether @type conforms to it.
+Finds the start of the next UTF-8 character in the string after @p.
+
+ p does not have to be at the beginning of a UTF-8 character. No check
+is made to see if the character found is actually valid other than
+it starts with an appropriate byte.
 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> Type to check anchestry for.
+<parameter name="p">
+<parameter_description> a pointer to a position within a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="is_a_type">
-<parameter_description> Possible anchestor of @type or interface @type could conform to.
+<parameter name="end">
+<parameter_description> a pointer to the byte following the end of the string,
+or %NULL to indicate that the string is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type is_a @is_a_type holds true.
+<return> a pointer to the found character or %NULL
 </return>
 </function>
 
-<function name="g_object_get_qdata">
+<function name="g_utf8_find_prev_char">
 <description>
-This function gets back user data pointers stored via
-g_object_set_qdata().
+Given a position @p with a UTF-8 encoded string @str, find the start
+of the previous UTF-8 character starting before @p. Returns %NULL if no
+UTF-8 characters are present in @str before @p.
+
+ p does not have to be at the beginning of a UTF-8 character. No check
+is made to see if the character found is actually valid other than
+it starts with an appropriate byte.
 
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> The GObject to get a stored user data pointer from
+<parameter name="str">
+<parameter_description> pointer to the beginning of a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="quark">
-<parameter_description> A #GQuark, naming the user data pointer
+<parameter name="p">
+<parameter_description> pointer to some position within @str
 </parameter_description>
 </parameter>
 </parameters>
-<return> The user data pointer set, or %NULL
+<return> a pointer to the found character or %NULL.
 </return>
 </function>
 
-<function name="g_test_suite_add">
+<function name="g_utf8_get_char">
 <description>
-Adds @test_case to @suite.
+Converts a sequence of bytes encoded as UTF-8 to a Unicode character.
+If @p does not point to a valid UTF-8 encoded character, results are
+undefined. If you are not sure that the bytes are complete
+valid Unicode characters, you should use g_utf8_get_char_validated()
+instead.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="suite">
-<parameter_description> a #GTestSuite
-</parameter_description>
-</parameter>
-<parameter name="test_case">
-<parameter_description> a #GTestCase
+<parameter name="p">
+<parameter_description> a pointer to Unicode character encoded as UTF-8
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the resulting character
+</return>
 </function>
 
-<function name="g_object_disconnect">
+<function name="g_utf8_get_char_validated">
 <description>
-A convenience function to disconnect multiple signals at once.
+Convert a sequence of bytes encoded as UTF-8 to a Unicode character.
+This function checks for incomplete characters, for invalid characters
+such as characters that are out of the range of Unicode, and for
+overlong encodings of valid characters.
 
-The signal specs expected by this function have the form
-&quot;any_signal&quot;, which means to disconnect any signal with matching
-callback and data, or &quot;any_signal::signal_name&quot;, which only
-disconnects the signal named &quot;signal_name&quot;.
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="signal_spec">
-<parameter_description> the spec for the first signal
+<parameter name="p">
+<parameter_description> a pointer to Unicode character encoded as UTF-8
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> #GCallback for the first signal, followed by data for the first signal,
-followed optionally by more signal spec/callback/data triples,
-followed by %NULL
+<parameter name="max_len">
+<parameter_description> the maximum number of bytes to read, or -1, for no maximum or
+if @p is nul-terminated
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the resulting character. If @p points to a partial
+sequence at the end of a string that could begin a valid 
+character (or if @max_len is zero), returns (gunichar)-2; 
+otherwise, if @p does not point to a valid UTF-8 encoded 
+Unicode character, returns (gunichar)-1.
+</return>
 </function>
 
-<function name="g_iconv_open">
+<function name="g_utf8_normalize">
 <description>
-Same as the standard UNIX routine iconv_open(), but
-may be implemented via libiconv on UNIX flavors that lack
-a native implementation.
+Converts a string into canonical form, standardizing
+such issues as whether a character with an accent
+is represented as a base character and combining
+accent or as a single precomposed character. The
+string has to be valid UTF-8, otherwise %NULL is
+returned. You should generally call g_utf8_normalize()
+before comparing two Unicode strings.
 
-GLib provides g_convert() and g_locale_to_utf8() which are likely
-more convenient than the raw iconv wrappers.
+The normalization mode %G_NORMALIZE_DEFAULT only
+standardizes differences that do not affect the
+text content, such as the above-mentioned accent
+representation. %G_NORMALIZE_ALL also standardizes
+the &quot;compatibility&quot; characters in Unicode, such
+as SUPERSCRIPT THREE to the standard forms
+(in this case DIGIT THREE). Formatting information
+may be lost but for most text operations such
+characters should be considered the same.
+
+%G_NORMALIZE_DEFAULT_COMPOSE and %G_NORMALIZE_ALL_COMPOSE
+are like %G_NORMALIZE_DEFAULT and %G_NORMALIZE_ALL,
+but returned a result with composed forms rather
+than a maximally decomposed form. This is often
+useful if you intend to convert the string to
+a legacy encoding or pass it to a system with
+less capable Unicode handling.
 
 
 </description>
 <parameters>
-<parameter name="to_codeset">
-<parameter_description> destination codeset
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string.
 </parameter_description>
 </parameter>
-<parameter name="from_codeset">
-<parameter_description> source codeset
+<parameter name="len">
+<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> the type of normalization to perform.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a &quot;conversion descriptor&quot;, or (GIConv)-1 if
-opening the converter failed.
+<return> a newly allocated string, that is the
+normalized form of @str, or %NULL if @str is not
+valid UTF-8.
 </return>
 </function>
 
-<function name="g_object_weak_ref">
+<function name="g_utf8_offset_to_pointer">
 <description>
-Adds a weak reference callback to an object. Weak references are
-used for notification when an object is finalized. They are called
-&quot;weak references&quot; because they allow you to safely hold a pointer
-to an object without calling g_object_ref() (g_object_ref() adds a
-strong reference, that is, forces the object to stay alive).
+Converts from an integer character offset to a pointer to a position
+within the string.
+
+Since 2.10, this function allows to pass a negative @offset to
+step backwards. It is usually worth stepping backwards from the end
+instead of forwards if @offset is in the last fourth of the string,
+since moving forward is about 3 times faster than moving backward.
+
+&lt;note&gt;&lt;para&gt;
+This function doesn't abort when reaching the end of @str. Therefore
+you should be sure that @offset is within string boundaries before
+calling that function. Call g_utf8_strlen() when unsure.
+
+This limitation exists as this function is called frequently during
+text rendering and therefore has to be as fast as possible.
+&lt;/para&gt;&lt;/note&gt;
+
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> #GObject to reference weakly
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> callback to invoke before the object is freed
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> extra data to pass to notify
+<parameter name="offset">
+<parameter_description> a character offset within @str
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the resulting pointer
+</return>
 </function>
 
-<function name="g_compute_checksum_for_string">
+<function name="g_utf8_pointer_to_offset">
 <description>
-Computes the checksum of a string.
+Converts from a pointer to position within a string to a integer
+character offset.
 
-The hexadecimal string returned will be in lower case.
+Since 2.10, this function allows @pos to be before @str, and returns
+a negative offset in this case.
 
-Since: 2.16
 
 </description>
 <parameters>
-<parameter name="checksum_type">
-<parameter_description> a #GChecksumType
-</parameter_description>
-</parameter>
 <parameter name="str">
-<parameter_description> the string to compute the checksum of
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the length of the string, or -1 if the string is null-terminated.
+<parameter name="pos">
+<parameter_description> a pointer to a position within @str
 </parameter_description>
 </parameter>
 </parameters>
-<return> the checksum as a hexadecimal string. The returned string
-should be freed with g_free() when done using it.
-
+<return> the resulting character offset
 </return>
 </function>
 
-<function name="g_rand_free">
+<function name="g_utf8_prev_char">
 <description>
-Frees the memory allocated for the #GRand.
+Finds the previous UTF-8 character in the string before @p.
+
+ p does not have to be at the beginning of a UTF-8 character. No check
+is made to see if the character found is actually valid other than
+it starts with an appropriate byte. If @p might be the first
+character of the string, you must use g_utf8_find_prev_char() instead.
+
 
 </description>
 <parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="p">
+<parameter_description> a pointer to a position within a UTF-8 encoded string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the found character.
+</return>
 </function>
 
-<function name="g_key_file_get_uint64">
+<function name="g_utf8_strchr">
 <description>
-Returns the value associated with @key under @group_name as an unsigned
-64-bit integer. This is similar to g_key_file_get_integer() but can return
-large positive results without truncation.
+Finds the leftmost occurrence of the given Unicode character
+in a UTF-8 encoded string, while limiting the search to @len bytes.
+If @len is -1, allow unbounded search.
 
-Since: 2.26
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a non-%NULL #GKeyFile
-</parameter_description>
-</parameter>
-<parameter name="group_name">
-<parameter_description> a non-%NULL group name
+<parameter name="p">
+<parameter_description> a nul-terminated UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="key">
-<parameter_description> a non-%NULL key
+<parameter name="len">
+<parameter_description> the maximum length of @p
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value associated with the key as an unsigned 64-bit integer,
-or 0 if the key was not found or could not be parsed.
-
+<return> %NULL if the string does not contain the character, 
+otherwise, a pointer to the start of the leftmost occurrence of 
+the character in the string.
 </return>
 </function>
 
-<function name="g_key_file_get_groups">
+<function name="g_utf8_strdown">
 <description>
-Returns all groups in the key file loaded with @key_file.  
-The array of returned groups will be %NULL-terminated, so 
- length may optionally be %NULL.
+Converts all Unicode characters in the string that have a case
+to lowercase. The exact manner that this is done depends
+on the current locale, and may result in the number of
+characters in the string changing.
 
-Since: 2.6
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> a #GKeyFile
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> return location for the number of returned groups, or %NULL
+<parameter name="len">
+<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated %NULL-terminated array of strings. 
-Use g_strfreev() to free it.
+<return> a newly allocated string, with all characters
+converted to lowercase.  
 </return>
 </function>
 
-<function name="g_dataset_destroy">
+<function name="g_utf8_strlen">
 <description>
-Destroys the dataset, freeing all memory allocated, and calling any
-destroy functions set for data elements.
+Computes the length of the string in characters, not including
+the terminating nul character.
+
 
 </description>
 <parameters>
-<parameter name="dataset_location">
-<parameter_description> the location identifying the dataset.
+<parameter name="p">
+<parameter_description> pointer to the start of a UTF-8 encoded string
+</parameter_description>
+</parameter>
+<parameter name="max">
+<parameter_description> the maximum number of bytes to examine. If @max
+is less than 0, then the string is assumed to be
+nul-terminated. If @max is 0, @p will not be examined and
+may be %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the length of the string in characters
+</return>
 </function>
 
-<function name="g_sequence_foreach_range">
+<function name="g_utf8_strncpy">
 <description>
-Calls @func for each item in the range (@begin, @end) passing
- user_data to the function.
+Like the standard C strncpy() function, but 
+copies a given number of characters instead of a given number of 
+bytes. The @src string must be valid UTF-8 encoded text. 
+(Use g_utf8_validate() on all text before trying to use UTF-8 
+utility functions with it.)
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="begin">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
-<parameter name="end">
-<parameter_description> a #GSequenceIter
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> a #GFunc
+<parameter name="dest">
+<parameter_description> buffer to fill with characters from @src
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @func
+<parameter name="src">
+<parameter_description> UTF-8 encoded string
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_type_class_peek_static">
-<description>
-A more efficient version of g_type_class_peek() which works only for
-static types.
-
-Since: 2.4
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> Type ID of a classed type.
+<parameter name="n">
+<parameter_description> character count
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GTypeClass structure for the given type ID or %NULL
-if the class does not currently exist or is dynamically loaded.
+<return> @dest
 </return>
 </function>
 
-<function name="g_param_spec_boolean">
+<function name="g_utf8_strrchr">
 <description>
-Creates a new #GParamSpecBoolean instance specifying a %G_TYPE_BOOLEAN
-property.
-
-See g_param_spec_internal() for details on property names.
+Find the rightmost occurrence of the given Unicode character
+in a UTF-8 encoded string, while limiting the search to @len bytes.
+If @len is -1, allow unbounded search.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="p">
+<parameter_description> a nul-terminated UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="len">
+<parameter_description> the maximum length of @p
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="c">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> %NULL if the string does not contain the character, 
+otherwise, a pointer to the start of the rightmost occurrence of the 
+character in the string.
 </return>
 </function>
 
-<function name="g_datalist_remove_no_notify">
+<function name="g_utf8_strreverse">
 <description>
-Removes an element, without calling its destroy notifier.
+Reverses a UTF-8 string. @str must be valid UTF-8 encoded text. 
+(Use g_utf8_validate() on all text before trying to use UTF-8 
+utility functions with it.)
 
-</description>
-<parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string identifying the data element.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+This function is intended for programmatic uses of reversed strings.
+It pays no attention to decomposed characters, combining marks, byte 
+order marks, directional indicators (LRM, LRO, etc) and similar 
+characters which might need special handling when reversing a string 
+for display purposes.
 
-<function name="g_rand_new_with_seed_array">
-<description>
-Creates a new random number generator initialized with @seed.
+Note that unlike g_strreverse(), this function returns
+newly-allocated memory, which should be freed with g_free() when
+no longer needed. 
 
-Since: 2.4
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="seed">
-<parameter_description> an array of seeds to initialize the random number generator.
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="seed_length">
-<parameter_description> an array of seeds to initialize the random number generator.
+<parameter name="len">
+<parameter_description> the maximum length of @str to use, in bytes. If @len &lt; 0,
+then the string is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GRand.
+<return> a newly-allocated string which is the reverse of @str.
 
 </return>
 </function>
 
-<function name="g_param_value_set_default">
+<function name="g_utf8_strup">
 <description>
-Sets @value to its default value as specified in @pspec.
+Converts all Unicode characters in the string that have a case
+to uppercase. The exact manner that this is done depends
+on the current locale, and may result in the number of
+characters in the string increasing. (For instance, the
+German ess-zet will be changed to SS.)
+
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue of correct type for @pspec
+<parameter name="len">
+<parameter_description> length of @str, in bytes, or -1 if @str is nul-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string, with all characters
+converted to uppercase.  
+</return>
 </function>
 
-<function name="g_string_prepend_unichar">
+<function name="g_utf8_to_ucs4">
 <description>
-Converts a Unicode character into UTF-8, and prepends it
-to the string.
+Convert a string from UTF-8 to a 32-bit fixed width
+representation as UCS-4. A trailing 0 will be added to the
+string after the converted text.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="wc">
-<parameter_description> a Unicode character
+<parameter name="len">
+<parameter_description> the maximum length of @str to use, in bytes. If @len &lt; 0,
+then the string is nul-terminated.
 </parameter_description>
 </parameter>
-</parameters>
-<return> @string
-</return>
-</function>
-
-<function name="g_rand_set_seed_array">
-<description>
-Initializes the random number generator by an array of
-longs.  Array can be of arbitrary size, though only the
-first 624 values are taken.  This function is useful
-if you have many low entropy seeds, or if you require more then
-32bits of actual entropy for your application.
-
-Since: 2.4
-
-</description>
-<parameters>
-<parameter name="rand_">
-<parameter_description> a #GRand.
+<parameter name="items_read">
+<parameter_description> location to store number of bytes read, or %NULL.
+If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+returned in case @str contains a trailing partial
+character. If an error occurs then the index of the
+invalid input is stored here.
 </parameter_description>
 </parameter>
-<parameter name="seed">
-<parameter_description> array to initialize with
+<parameter name="items_written">
+<parameter_description> location to store number of characters written or %NULL.
+The value here stored does not include the trailing 0
+character. 
 </parameter_description>
 </parameter>
-<parameter name="seed_length">
-<parameter_description> length of array
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError other than
+%G_CONVERT_ERROR_NO_CONVERSION may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to a newly allocated UCS-4 string.
+This value must be freed with g_free(). If an
+error occurs, %NULL will be returned and
+ error set.
+</return>
 </function>
 
-<function name="g_regex_match_simple">
+<function name="g_utf8_to_ucs4_fast">
 <description>
-Scans for a match in @string for @pattern.
-
-This function is equivalent to g_regex_match() but it does not
-require to compile the pattern with g_regex_new(), avoiding some
-lines of code when you need just to do a match without extracting
-substrings, capture counts, and so on.
-
-If this function is to be called on the same @pattern more than
-once, it's more efficient to compile the pattern once with
-g_regex_new() and then use g_regex_match().
+Convert a string from UTF-8 to a 32-bit fixed width
+representation as UCS-4, assuming valid UTF-8 input.
+This function is roughly twice as fast as g_utf8_to_ucs4()
+but does no error checking on the input.
 
-Since: 2.14
 
 </description>
 <parameters>
-<parameter name="pattern">
-<parameter_description> the regular expression
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to scan for matches
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-<parameter name="compile_options">
-<parameter_description> compile options for the regular expression, or 0
+<parameter name="len">
+<parameter_description> the maximum length of @str to use, in bytes. If @len &lt; 0,
+then the string is nul-terminated.
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> match options, or 0
+<parameter name="items_written">
+<parameter_description> location to store the number of characters in the
+result, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the string matched, %FALSE otherwise
-
+<return> a pointer to a newly allocated UCS-4 string.
+This value must be freed with g_free().
 </return>
 </function>
 
-<function name="g_strfreev">
+<function name="g_utf8_to_utf16">
 <description>
-Frees a %NULL-terminated array of strings, and the array itself.
-If called on a %NULL value, g_strfreev() simply returns. 
+Convert a string from UTF-8 to UTF-16. A 0 character will be
+added to the result after the converted text.
+
 
 </description>
 <parameters>
-<parameter name="str_array">
-<parameter_description> a %NULL-terminated array of strings to free.
+<parameter name="str">
+<parameter_description> a UTF-8 encoded string
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_object_weak_unref">
-<description>
-Removes a weak reference callback to an object.
-
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> #GObject to remove a weak reference from
+<parameter name="len">
+<parameter_description> the maximum length (number of bytes) of @str to use.
+If @len &lt; 0, then the string is nul-terminated.
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> callback to search for
+<parameter name="items_read">
+<parameter_description> location to store number of bytes read, or %NULL.
+If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+returned in case @str contains a trailing partial
+character. If an error occurs then the index of the
+invalid input is stored here.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to search for
+<parameter name="items_written">
+<parameter_description> location to store number of &lt;type&gt;gunichar2&lt;/type&gt; written,
+or %NULL.
+The value stored here does not include the trailing 0.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_type_name">
-<description>
-Get the unique name that is assigned to a type ID.  Note that this
-function (like all other GType API) cannot cope with invalid type
-IDs. %G_TYPE_INVALID may be passed to this function, as may be any
-other validly registered type ID, but randomized type IDs should
-not be passed in and will most likely lead to a crash.
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> Type to return name for.
+<parameter name="error">
+<parameter_description> location to store the error occuring, or %NULL to ignore
+errors. Any of the errors in #GConvertError other than
+%G_CONVERT_ERROR_NO_CONVERSION may occur.
 </parameter_description>
 </parameter>
 </parameters>
-<return> Static type name or %NULL.
+<return> a pointer to a newly allocated UTF-16 string.
+This value must be freed with g_free(). If an
+error occurs, %NULL will be returned and
+ error set.
 </return>
 </function>
 
-<function name="g_iconv">
+<function name="g_utf8_validate">
 <description>
-Same as the standard UNIX routine iconv(), but
-may be implemented via libiconv on UNIX flavors that lack
-a native implementation.
+Validates UTF-8 encoded text. @str is the text to validate;
+if @str is nul-terminated, then @max_len can be -1, otherwise
+ max_len should be the number of bytes to validate.
+If @end is non-%NULL, then the end of the valid range
+will be stored there (i.e. the start of the first invalid 
+character if some bytes were invalid, or the end of the text 
+being validated otherwise).
 
-GLib provides g_convert() and g_locale_to_utf8() which are likely
-more convenient than the raw iconv wrappers.
+Note that g_utf8_validate() returns %FALSE if @max_len is 
+positive and NUL is met before @max_len bytes have been read.
 
 
 </description>
 <parameters>
-<parameter name="converter">
-<parameter_description> conversion descriptor from g_iconv_open()
-</parameter_description>
-</parameter>
-<parameter name="inbuf">
-<parameter_description> bytes to convert
-</parameter_description>
-</parameter>
-<parameter name="inbytes_left">
-<parameter_description> inout parameter, bytes remaining to convert in @inbuf
+<parameter name="str">
+<parameter_description> a pointer to character data
 </parameter_description>
 </parameter>
-<parameter name="outbuf">
-<parameter_description> converted output bytes
+<parameter name="max_len">
+<parameter_description> max bytes to validate, or -1 to go until NUL
 </parameter_description>
 </parameter>
-<parameter name="outbytes_left">
-<parameter_description> inout parameter, bytes available to fill in @outbuf
+<parameter name="end">
+<parameter_description> return location for end of valid data
 </parameter_description>
 </parameter>
 </parameters>
-<return> count of non-reversible conversions, or -1 on error
+<return> %TRUE if the text was valid UTF-8
 </return>
 </function>
 
-<function name="g_main_context_dispatch">
+<function name="g_utime">
 <description>
-Dispatches all pending sources.
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+A wrapper for the POSIX utime() function. The utime() function
+sets the access and modification timestamps of a file.
 
-<function name="g_sequence_swap">
-<description>
-Swaps the items pointed to by @a and @b. It is allowed for @a and @b
-to point into difference sequences.
+See your C library manual for more details about how utime() works
+on your system.
 
-Since: 2.14
+Since: 2.18
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #GSequenceIter
+<parameter name="filename">
+<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
 </parameter_description>
 </parameter>
-<parameter name="b">
-<parameter_description> a #GSequenceIter
+<parameter name="utb">
+<parameter_description> a pointer to a struct utimbuf.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> 0 if the operation was successful, -1 if an error 
+occurred
+
+</return>
 </function>
 
-<function name="g_node_child_position">
+<function name="g_variant_builder_add">
 <description>
-Gets the position of a #GNode with respect to its siblings.
- child must be a child of @node. The first child is numbered 0, 
-the second 1, and so on.
+Adds to a #GVariantBuilder.
 
+This call is a convenience wrapper that is exactly equivalent to
+calling g_variant_new() followed by g_variant_builder_add_value().
 
-</description>
-<parameters>
-<parameter name="node">
-<parameter_description> a #GNode
-</parameter_description>
-</parameter>
-<parameter name="child">
-<parameter_description> a child of @node
-</parameter_description>
-</parameter>
-</parameters>
-<return> the position of @child with respect to its siblings
-</return>
-</function>
+This function might be used as follows:
 
-<function name="g_option_context_set_help_enabled">
-<description>
-Enables or disables automatic generation of &lt;option&gt;--help&lt;/option&gt; 
-output. By default, g_option_context_parse() recognizes
-&lt;option&gt;--help&lt;/option&gt;, &lt;option&gt;-h&lt;/option&gt;,
-&lt;option&gt;-?&lt;/option&gt;, &lt;option&gt;--help-all&lt;/option&gt;
-and &lt;option&gt;--help-&lt;/option&gt;&lt;replaceable&gt;groupname&lt;/replaceable&gt; and creates
-suitable output to stdout. 
+&lt;programlisting&gt;
+GVariant *
+make_pointless_dictionary (void)
+{
+GVariantBuilder *builder;
+int i;
 
-Since: 2.6
+builder = g_variant_builder_new (G_VARIANT_TYPE_ARRAY);
+for (i = 0; i &lt; 16; i++)
+{
+gchar buf[3];
+
+sprintf (buf, &quot;%d&quot;, i);
+g_variant_builder_add (builder, &quot;{is}&quot;, i, buf);
+}
+
+return g_variant_builder_end (builder);
+}
+&lt;/programlisting&gt;
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
-<parameter name="help_enabled">
-<parameter_description> %TRUE to enable &lt;option&gt;--help&lt;/option&gt;, %FALSE to disable it
+<parameter name="format_string">
+<parameter_description> a #GVariant varargs format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments, as per @format_string
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_list_append">
+<function name="g_variant_builder_add_parsed">
 <description>
-Adds a new element on to the end of the list.
-
-&lt;note&gt;&lt;para&gt;
-The return value is the new start of the list, which 
-may have changed, so make sure you store the new value.
-&lt;/para&gt;&lt;/note&gt;
+Adds to a #GVariantBuilder.
 
-&lt;note&gt;&lt;para&gt;
-Note that g_list_append() has to traverse the entire list 
-to find the end, which is inefficient when adding multiple 
-elements. A common idiom to avoid the inefficiency is to prepend 
-the elements and reverse the list when all elements have been added.
-&lt;/para&gt;&lt;/note&gt;
+This call is a convenience wrapper that is exactly equivalent to
+calling g_variant_new_parsed() followed by
+g_variant_builder_add_value().
 
-|[
-/ * Notice that these are initialized to the empty list. * /
-GList *list = NULL, *number_list = NULL;
+This function might be used as follows:
 
-/ * This is a list of strings. * /
-list = g_list_append (list, &quot;first&quot;);
-list = g_list_append (list, &quot;second&quot;);
+&lt;programlisting&gt;
+GVariant *
+make_pointless_dictionary (void)
+{
+GVariantBuilder *builder;
+int i;
 
-/ * This is a list of integers. * /
-number_list = g_list_append (number_list, GINT_TO_POINTER (27));
-number_list = g_list_append (number_list, GINT_TO_POINTER (14));
-]|
+builder = g_variant_builder_new (G_VARIANT_TYPE_ARRAY);
+g_variant_builder_add_parsed (builder, &quot;{'width', &lt;%i&gt;}&quot;, 600);
+g_variant_builder_add_parsed (builder, &quot;{'title', &lt;%s&gt;}&quot;, &quot;foo&quot;);
+g_variant_builder_add_parsed (builder, &quot;{'transparency', &lt;0.5&gt;}&quot;);
+return g_variant_builder_end (builder);
+}
+&lt;/programlisting&gt;
 
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a pointer to a #GList
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data for the new element
+<parameter name="format">
+<parameter_description> a text format #GVariant
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments as per @format
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new start of the #GList
-</return>
+<return></return>
 </function>
 
-<function name="g_enum_get_value">
+<function name="g_variant_builder_add_value">
 <description>
-Returns the #GEnumValue for a value.
+Adds @value to @builder.
+
+It is an error to call this function in any way that would create an
+inconsistent value to be constructed.  Some examples of this are
+putting different types of items into an array, putting the wrong
+types or number of items in a tuple, putting more than one value into
+a variant, etc.
 
+If @value is a floating reference (see g_variant_ref_sink()),
+the @builder instance takes ownership of @value.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="enum_class">
-<parameter_description> a #GEnumClass
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
 <parameter name="value">
-<parameter_description> the value to look up
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GEnumValue for @value, or %NULL if @value is not a
-member of the enumeration
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_get_variant">
+<function name="g_variant_builder_clear">
 <description>
-Unboxes @value.  The result is the #GVariant instance that was
-contained in @value.
+Releases all memory associated with a #GVariantBuilder without
+freeing the #GVariantBuilder structure itself.
+
+It typically only makes sense to do this on a stack-allocated
+#GVariantBuilder if you want to abort building the value part-way
+through.  This function need not be called if you call
+g_variant_builder_end() and it also doesn't need to be called on
+builders allocated with g_variant_builder_new (see
+g_variant_builder_free() for that).
+
+This function leaves the #GVariantBuilder structure set to all-zeros.
+It is valid to call this function on either an initialised
+#GVariantBuilder or one that is set to all-zeros but it is not valid
+to call this function on uninitialised memory.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a variant #GVariance instance
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
 </parameters>
-<return> the item contained in the variant
-</return>
+<return></return>
 </function>
 
-<function name="g_node_max_height">
+<function name="g_variant_builder_close">
 <description>
-Gets the maximum height of all branches beneath a #GNode.
-This is the maximum distance from the #GNode to all leaf nodes.
-
-If @root is %NULL, 0 is returned. If @root has no children, 
-1 is returned. If @root has children, 2 is returned. And so on.
-
+Closes the subcontainer inside the given @builder that was opened by
+the most recent call to g_variant_builder_open().
 
-</description>
-<parameters>
-<parameter name="root">
-<parameter_description> a #GNode
-</parameter_description>
-</parameter>
-</parameters>
-<return> the maximum height of the tree beneath @root
-</return>
-</function>
+It is an error to call this function in any way that would create an
+inconsistent value to be constructed (ie: too few values added to the
+subcontainer).
 
-<function name="g_dataset_remove_no_notify">
-<description>
-Removes an element, without calling its destroy notifier.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="l">
-<parameter_description> the location identifying the dataset.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string identifying the data element.
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_io_channel_init">
+<function name="g_variant_builder_end">
 <description>
-Initializes a #GIOChannel struct. 
+Ends the builder process and returns the constructed value.
 
-This is called by each of the above functions when creating a 
-#GIOChannel, and so is not often needed by the application 
-programmer (unless you are creating a new type of #GIOChannel).
+It is not permissible to use @builder in any way after this call
+except for reference counting operations (in the case of a
+heap-allocated #GVariantBuilder) or by reinitialising it with
+g_variant_builder_init() (in the case of stack-allocated).
 
-</description>
-<parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+It is an error to call this function in any way that would create an
+inconsistent value to be constructed (ie: insufficient number of
+items added to a container with a specific number of children
+required).  It is also an error to call this function if the builder
+was created with an indefinite array or maybe type and no children
+have been added; in this case it is impossible to infer the type of
+the empty array.
 
-<function name="g_static_rec_mutex_lock">
-<description>
-Locks @mutex. If @mutex is already locked by another thread, the
-current thread will block until @mutex is unlocked by the other
-thread. If @mutex is already locked by the calling thread, this
-functions increases the depth of @mutex and returns immediately.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticRecMutex to lock.
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new, floating, #GVariant
+</return>
 </function>
 
-<function name="g_bookmark_file_get_description">
+<function name="g_variant_builder_init">
 <description>
-Retrieves the description of the bookmark for @uri.
+Initialises a #GVariantBuilder structure.
 
-In the event the URI cannot be found, %NULL is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ type must be non-%NULL.  It specifies the type of container to
+construct.  It can be an indefinite type such as
+%G_VARIANT_TYPE_ARRAY or a definite type such as &quot;as&quot; or &quot;(ii)&quot;.
+Maybe, array, tuple, dictionary entry and variant-typed values may be
+constructed.
 
-Since: 2.12
+After the builder is initialised, values are added using
+g_variant_builder_add_value() or g_variant_builder_add().
 
-</description>
-<parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> a newly allocated string or %NULL if the specified
-URI cannot be found.
+After all the child values are added, g_variant_builder_end() frees
+the memory associated with the builder and returns the #GVariant that
+was created.
 
-</return>
-</function>
+This function completely ignores the previous contents of @builder.
+On one hand this means that it is valid to pass in completely
+uninitialised memory.  On the other hand, this means that if you are
+initialising over top of an existing #GVariantBuilder you need to
+first call g_variant_builder_clear() in order to avoid leaking
+memory.
 
-<function name="g_list_nth_data">
-<description>
-Gets the data of the element at the given position.
+You must not call g_variant_builder_ref() or
+g_variant_builder_unref() on a #GVariantBuilder that was initialised
+with this function.  If you ever pass a reference to a
+#GVariantBuilder outside of the control of your own code then you
+should assume that the person receiving that reference may try to use
+reference counting; you should use g_variant_builder_new() instead of
+this function.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
-</parameter_description>
-</parameter>
-<parameter name="n">
-<parameter_description> the position of the element
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
-</parameters>
-<return> the element's data, or %NULL if the position 
-is off the end of the #GList
-</return>
-</function>
-
-<function name="g_value_get_enum">
-<description>
-Get the contents of a %G_TYPE_ENUM #GValue.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue whose type is derived from %G_TYPE_ENUM
+<parameter name="type">
+<parameter_description> a container type
 </parameter_description>
 </parameter>
 </parameters>
-<return> enum contents of @value
-</return>
+<return></return>
 </function>
 
-<function name="g_variant_new">
+<function name="g_variant_builder_new">
 <description>
-Creates a new #GVariant instance.
-
-Think of this function as an analogue to g_strdup_printf().
+Allocates and initialises a new #GVariantBuilder.
 
-The type of the created instance and the arguments that are
-expected by this function are determined by @format_string.  See the
-section on &lt;link linkend='gvariant-format-strings'&gt;GVariant Format
-Strings&lt;/link&gt;.  Please note that the syntax of the format string is
-very likely to be extended in the future.
+You should call g_variant_builder_unref() on the return value when it
+is no longer needed.  The memory will not be automatically freed by
+any other call.
 
-The first character of the format string must not be '*' '?' '@' or
-'r'; in essence, a new #GVariant must always be constructed by this
-function (and not merely passed through it unmodified).
+In most cases it is easier to place a #GVariantBuilder directly on
+the stack of the calling function and initialise it with
+g_variant_builder_init().
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="format_string">
-<parameter_description> a #GVariant format string
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> arguments, as per @format_string
+<parameter name="type">
+<parameter_description> a container type
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new floating #GVariant instance
+<return> a #GVariantBuilder
 </return>
 </function>
 
-<function name="g_datalist_foreach">
+<function name="g_variant_builder_open">
 <description>
-Calls the given function for each data element of the datalist. The
-function is called with each data element's #GQuark id and data,
-together with the given @user_data parameter. Note that this
-function is NOT thread-safe. So unless @datalist can be protected
-from any modifications during invocation of this function, it should
-not be called.
+Opens a subcontainer inside the given @builder.  When done adding
+items to the subcontainer, g_variant_builder_close() must be called.
+
+It is an error to call this function in any way that would cause an
+inconsistent value to be constructed (ie: adding too many values or
+a value of an incorrect type).
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="datalist">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each data element.
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_value_set_object">
+<function name="g_variant_builder_ref">
 <description>
-Set the contents of a %G_TYPE_OBJECT derived #GValue to @v_object.
+Increases the reference count on @builder.
 
-g_value_set_object() increases the reference count of @v_object
-(the #GValue holds a reference to @v_object).  If you do not wish
-to increase the reference count of the object (i.e. you wish to
-pass your current reference to the #GValue because you no longer
-need it), use g_value_take_object() instead.
+Don't call this on stack-allocated #GVariantBuilder instances or bad
+things will happen.
 
-It is important that your #GValue holds a reference to @v_object (either its
-own, or one it has taken) to ensure that the object won't be destroyed while
-the #GValue still exists).
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_OBJECT derived type
-</parameter_description>
-</parameter>
-<parameter name="v_object">
-<parameter_description> object value to be set
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder allocated by g_variant_builder_new()
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new reference to @builder
+</return>
 </function>
 
-<function name="g_timer_reset">
+<function name="g_variant_builder_unref">
 <description>
-This function is useless; it's fine to call g_timer_start() on an
-already-started timer to reset the start time, so g_timer_reset()
-serves no purpose.
+Decreases the reference count on @builder.
+
+In the event that there are no more references, releases all memory
+associated with the #GVariantBuilder.
+
+Don't call this on stack-allocated #GVariantBuilder instances or bad
+things will happen.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="timer">
-<parameter_description> a #GTimer.
+<parameter name="builder">
+<parameter_description> a #GVariantBuilder allocated by g_variant_builder_new()
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_file_open_tmp">
+<function name="g_variant_byteswap">
 <description>
-Opens a file for writing in the preferred directory for temporary
-files (as returned by g_get_tmp_dir()). 
-
- tmpl should be a string in the GLib file name encoding containing 
-a sequence of six 'X' characters, as the parameter to g_mkstemp().
-However, unlike these functions, the template should only be a
-basename, no directory components are allowed. If template is
-%NULL, a default template is used.
+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.
 
-Note that in contrast to g_mkstemp() (and mkstemp()) 
- tmpl is not modified, and might thus be a read-only literal string.
+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).
 
-The actual name used is returned in @name_used if non-%NULL. This
-string should be freed with g_free() when not needed any longer.
-The returned name is in the GLib file name encoding.
+The returned value is always in normal form and is marked as trusted.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="tmpl">
-<parameter_description> Template for file name, as in g_mkstemp(), basename only,
-or %NULL, to a default template
-</parameter_description>
-</parameter>
-<parameter name="name_used">
-<parameter_description> location to store actual name used, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> A file handle (as from open()) to 
-the file opened for reading and writing. The file is opened in binary 
-mode on platforms where there is a difference. The file handle should be
-closed with close(). In case of errors, -1 is returned 
-and @error will be set.
+<return> the byteswapped form of @value
 </return>
 </function>
 
-<function name="g_markup_parse_context_free">
-<description>
-Frees a #GMarkupParseContext. Can't be called from inside
-one of the #GMarkupParser functions. Can't be called while
-a subparser is pushed.
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GMarkupParseContext
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_direct_equal">
+<function name="g_variant_classify">
 <description>
-Compares two #gpointer arguments and returns %TRUE if they are equal.
-It can be passed to g_hash_table_new() as the @key_equal_func
-parameter, when using pointers as keys in a #GHashTable.
+Classifies @value according to its top-level type.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="v1">
-<parameter_description> a key.
-</parameter_description>
-</parameter>
-<parameter name="v2">
-<parameter_description> a key to compare with @v1.
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the two keys match.
+<return> the #GVariantClass of @value
 </return>
 </function>
 
-<function name="g_cache_insert">
+<function name="g_variant_compare">
 <description>
-Gets the value corresponding to the given key, creating it if
-necessary. It first checks if the value already exists in the
-#GCache, by using the @key_equal_func function passed to
-g_cache_new(). If it does already exist it is returned, and its
-reference count is increased by one. If the value does not currently
-exist, if is created by calling the @value_new_func. The key is
-duplicated by calling @key_dup_func and the duplicated key and value
-are inserted into the #GCache.
+Compares @one and @two.
 
-</description>
-<parameters>
-<parameter name="cache">
-<parameter_description> a #GCache.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> a key describing a #GCache object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to a #GCache value.
-</return>
-</function>
+The types of @one and @two are #gconstpointer only to allow use of
+this function with #GTree, #GPtrArray, etc.  They must each be a
+#GVariant.
 
-<function name="g_mem_chunk_new">
-<description>
-Creates a new #GMemChunk.
+Comparison is only defined for basic types (ie: booleans, numbers,
+strings).  For booleans, %FALSE is less than %TRUE.  Numbers are
+ordered in the usual way.  Strings are in ASCII lexographical order.
 
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
+It is a programmer error to attempt to compare container values or
+two values that have types that are not exactly equal.  For example,
+you can not compare a 32-bit signed integer with a 32-bit unsigned
+integer.  Also note that this function is not particularly
+well-behaved when it comes to comparison of doubles; in particular,
+the handling of incomparable values (ie: NaN) is undefined.
+
+If you only require an equality comparison, g_variant_equal() is more
+general.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> a string to identify the #GMemChunk. It is not copied so it
-should be valid for the lifetime of the #GMemChunk. It is
-only used in g_mem_chunk_print(), which is used for debugging.
-</parameter_description>
-</parameter>
-<parameter name="atom_size">
-<parameter_description> the size, in bytes, of each element in the #GMemChunk.
-</parameter_description>
-</parameter>
-<parameter name="area_size">
-<parameter_description> the size, in bytes, of each block of memory allocated to
-contain the atoms.
+<parameter name="one">
+<parameter_description> a basic-typed #GVariant instance
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the type of the #GMemChunk.  #G_ALLOC_AND_FREE is used if the
-atoms will be freed individually.  #G_ALLOC_ONLY should be
-used if atoms will never be freed individually.
-#G_ALLOC_ONLY is quicker, since it does not need to track
-free atoms, but it obviously wastes memory if you no longer
-need many of the atoms.
+<parameter name="two">
+<parameter_description> a #GVariant instance of the same type
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GMemChunk.
+<return> negative value if a &lt; b;
+zero if a = b;
+positive value if a &gt; b.
 </return>
 </function>
 
-<function name="g_tree_lookup_extended">
+<function name="g_variant_dup_bytestring">
 <description>
-Looks up a key in the #GTree, returning the original key and the
-associated value and a #gboolean which is %TRUE if the key was found. This 
-is useful if you need to free the memory allocated for the original key, 
-for example before calling g_tree_remove().
+Similar to g_variant_get_bytestring() except that instead of
+returning a constant string, the string is duplicated.
 
+The return value must be freed using g_free().
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
-</parameter_description>
-</parameter>
-<parameter name="lookup_key">
-<parameter_description> the key to look up.
-</parameter_description>
-</parameter>
-<parameter name="orig_key">
-<parameter_description> returns the original key.
-</parameter_description>
-</parameter>
 <parameter name="value">
-<parameter_description> returns the value associated with the key.
+<parameter_description> an array-of-bytes #GVariant instance
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the key was found in the #GTree.
-</return>
-</function>
-
-<function name="g_slist_free_1">
-<description>
-Frees one #GSList element.
-It is usually used after g_slist_remove_link().
-
-</description>
-<parameters>
-<parameter name="list">
-<parameter_description> a #GSList element
+<parameter name="length">
+<parameter_description> a pointer to a #gsize, to store
+the length (not including the nul terminator)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string
+</return>
 </function>
 
-<function name="g_private_new">
+<function name="g_variant_dup_bytestring_array">
 <description>
-Creates a new #GPrivate. If @destructor is non-%NULL, it is a
-pointer to a destructor function. Whenever a thread ends and the
-corresponding pointer keyed to this instance of #GPrivate is
-non-%NULL, the destructor is called with this pointer as the
-argument.
+Gets the contents of an array of array of bytes #GVariant.  This call
+makes a deep copy; the return result should be released with
+g_strfreev().
 
-&lt;note&gt;&lt;para&gt;@destructor is used quite differently from @notify in
-g_static_private_set().&lt;/para&gt;&lt;/note&gt;
+If @length is non-%NULL then the number of elements in the result is
+stored there.  In any case, the resulting array will be
+%NULL-terminated.
 
-&lt;note&gt;&lt;para&gt;A #GPrivate can not be freed. Reuse it instead, if you
-can, to avoid shortage, or use #GStaticPrivate.&lt;/para&gt;&lt;/note&gt;
+For an empty array, @length will be set to 0 and a pointer to a
+%NULL pointer will be returned.
 
-&lt;note&gt;&lt;para&gt;This function will abort if g_thread_init() has not been
-called yet.&lt;/para&gt;&lt;/note&gt;
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="destructor">
-<parameter_description> a function to destroy the data keyed to #GPrivate when
-a thread ends.
+<parameter name="value">
+<parameter_description> an array of array of bytes #GVariant ('aay')
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the length of the result, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GPrivate.
+<return> an array of strings
 </return>
 </function>
 
-<function name="g_array_prepend_vals">
+<function name="g_variant_dup_string">
 <description>
-Adds @len elements onto the start of the array.
+Similar to g_variant_get_string() except that instead of returning
+a constant string, the string is duplicated.
 
-This operation is slower than g_array_append_vals() since the
-existing elements in the array have to be moved to make space for
-the new elements.
+The string will always be utf8 encoded.
+
+The return value must be freed using g_free().
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a pointer to the elements to prepend to the start of the
-array.
+<parameter name="value">
+<parameter_description> a string #GVariant instance
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> the number of elements to prepend.
+<parameter name="length">
+<parameter_description> a pointer to a #gsize, to store the length
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> a newly allocated string, utf8 encoded
 </return>
 </function>
 
-<function name="g_string_assign">
+<function name="g_variant_dup_strv">
 <description>
-Copies the bytes from a string into a #GString, 
-destroying any previous contents. It is rather like 
-the standard strcpy() function, except that you do not 
-have to worry about having enough space to copy the string.
+Gets the contents of an array of strings #GVariant.  This call
+makes a deep copy; the return result should be released with
+g_strfreev().
+
+If @length is non-%NULL then the number of elements in the result
+is stored there.  In any case, the resulting array will be
+%NULL-terminated.
+
+For an empty array, @length will be set to 0 and a pointer to a
+%NULL pointer will be returned.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the destination #GString. Its current contents 
-are destroyed.
+<parameter name="value">
+<parameter_description> an array of strings #GVariant
 </parameter_description>
 </parameter>
-<parameter name="rval">
-<parameter_description> the string to copy into @string
+<parameter name="length">
+<parameter_description> the length of the result, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> @string
+<return> an array of strings
 </return>
 </function>
 
-<function name="g_node_insert">
+<function name="g_variant_equal">
 <description>
-Inserts a #GNode beneath the parent at the given position.
+Checks if @one and @two have the same type and value.
 
+The types of @one and @two are #gconstpointer only to allow use of
+this function with #GHashTable.  They must each be a #GVariant.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="parent">
-<parameter_description> the #GNode to place @node under
-</parameter_description>
-</parameter>
-<parameter name="position">
-<parameter_description> the position to place @node at, with respect to its siblings
-If position is -1, @node is inserted as the last child of @parent
+<parameter name="one">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> the #GNode to insert
+<parameter name="two">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> the inserted #GNode
+<return> %TRUE if @one and @two are equal
 </return>
 </function>
 
-<function name="g_variant_iter_free">
+<function name="g_variant_get">
 <description>
-Frees a heap-allocated #GVariantIter.  Only call this function on
-iterators that were returned by g_variant_iter_new() or
-g_variant_iter_copy().
+Deconstructs a #GVariant instance.
+
+Think of this function as an analogue to scanf().
+
+The arguments that are expected by this function are entirely
+determined by @format_string.  @format_string also restricts the
+permissible types of @value.  It is an error to give a value with
+an incompatible type.  See the section on &lt;link
+linkend='gvariant-format-strings'&gt;GVariant Format Strings&lt;/link&gt;.
+Please note that the syntax of the format string is very likely to be
+extended in the future.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a heap-allocated #GVariantIter
+<parameter name="value">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_fopen">
-<description>
-A wrapper for the stdio fopen() function. The fopen() function
-opens a file and associates a new stream with it.
-
-Because file descriptors are specific to the C library on Windows,
-and a file descriptor is partof the &lt;type&gt;FILE&lt;/type&gt; struct, the
-&lt;type&gt;FILE&lt;/type&gt; pointer returned by this function makes sense
-only to functions in the same C library. Thus if the GLib-using
-code uses a different C library than GLib does, the
-&lt;type&gt;FILE&lt;/type&gt; pointer returned by this function cannot be
-passed to C library functions like fprintf() or fread().
-
-See your C library manual for more details about fopen().
-
-Since: 2.6
-
-</description>
-<parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="format_string">
+<parameter_description> a #GVariant format string
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> a string describing the mode in which the file should be 
-opened
+<parameter name="Varargs">
+<parameter_description> arguments, as per @format_string
 </parameter_description>
 </parameter>
 </parameters>
-<return> A &lt;type&gt;FILE&lt;/type&gt; pointer if the file was successfully
-opened, or %NULL if an error occurred
-
-</return>
+<return></return>
 </function>
 
-<function name="g_static_mutex_get_mutex">
+<function name="g_variant_get_boolean">
 <description>
-For some operations (like g_cond_wait()) you must have a #GMutex
-instead of a #GStaticMutex. This function will return the
-corresponding #GMutex for @mutex.
+Returns the boolean value of @value.
+
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_BOOLEAN.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticMutex.
+<parameter name="value">
+<parameter_description> a boolean #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GMutex corresponding to @mutex.
+<return> %TRUE or %FALSE
 </return>
 </function>
 
-<function name="g_match_info_fetch_named_pos">
+<function name="g_variant_get_byte">
 <description>
-Retrieves the position in bytes of the capturing parentheses named @name.
+Returns the byte value of @value.
 
-If @name is a valid sub pattern name but it didn't match anything
-(e.g. sub pattern &quot;X&quot;, matching &quot;b&quot; against &quot;(?P&lt;X&gt;a)?b&quot;)
-then @start_pos and @end_pos are set to -1 and %TRUE is returned.
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_BYTE.
 
-Since: 2.14
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> #GMatchInfo structure
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name of the subexpression
-</parameter_description>
-</parameter>
-<parameter name="start_pos">
-<parameter_description> pointer to location where to store
-the start position, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="end_pos">
-<parameter_description> pointer to location where to store
-the end position, or %NULL
+<parameter name="value">
+<parameter_description> a byte #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the position was fetched, %FALSE otherwise.
-If the position cannot be fetched, @start_pos and @end_pos
-are left unchanged.
-
+<return> a #guchar
 </return>
 </function>
 
@@ -36389,1163 +31225,873 @@ Since: 2.26
 </return>
 </function>
 
-<function name="g_regex_split">
+<function name="g_variant_get_bytestring_array">
 <description>
-Breaks the string on the pattern, and returns an array of the tokens.
-If the pattern contains capturing parentheses, then the text for each
-of the substrings will also be returned. If the pattern does not match
-anywhere in the string, then the whole string is returned as the first
-token.
+Gets the contents of an array of array of bytes #GVariant.  This call
+makes a shallow copy; the return result should be released with
+g_free(), but the individual strings must not be modified.
 
-As a special case, the result of splitting the empty string &quot;&quot; is an
-empty vector, not a vector containing a single string. The reason for
-this special case is that being able to represent a empty vector is
-typically more useful than consistent handling of empty elements. If
-you do need to represent empty elements, you'll need to check for the
-empty string before calling this function.
+If @length is non-%NULL then the number of elements in the result is
+stored there.  In any case, the resulting array will be
+%NULL-terminated.
 
-A pattern that can match empty strings splits @string into separate
-characters wherever it matches the empty string between characters.
-For example splitting &quot;ab c&quot; using as a separator &quot;\s*&quot;, you will get
-&quot;a&quot;, &quot;b&quot; and &quot;c&quot;.
+For an empty array, @length will be set to 0 and a pointer to a
+%NULL pointer will be returned.
 
-Since: 2.14
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to split with the pattern
+<parameter name="value">
+<parameter_description> an array of array of bytes #GVariant ('aay')
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> match time option flags
+<parameter name="length">
+<parameter_description> the length of the result, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a %NULL-terminated gchar ** array. Free it using g_strfreev()
-
+<return> an array of constant strings
 </return>
 </function>
 
-<function name="g_variant_get_fixed_array">
+<function name="g_variant_get_child">
 <description>
-Provides access to the serialised data for an array of fixed-sized
-items.
-
- value must be an array with fixed-sized elements.  Numeric types are
-fixed-size as are tuples containing only other fixed-sized types.
-
- element_size must be the size of a single element in the array.  For
-example, if calling this function for an array of 32 bit integers,
-you might say &lt;code&gt;sizeof (gint32)&lt;/code&gt;.  This value isn't used
-except for the purpose of a double-check that the form of the
-seralised data matches the caller's expectation.
-
- n_elements, which must be non-%NULL is set equal to the number of
-items in the array.
+Reads a child item out of a container #GVariant instance and
+deconstructs it according to @format_string.  This call is
+essentially a combination of g_variant_get_child_value() and
+g_variant_get().
 
 Since: 2.24
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> a #GVariant array with fixed-sized elements
-</parameter_description>
-</parameter>
-<parameter name="n_elements">
-<parameter_description> a pointer to the location to store the number of items
-</parameter_description>
-</parameter>
-<parameter name="element_size">
-<parameter_description> the size of each element
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to the fixed array
-</return>
-</function>
-
-<function name="g_type_plugin_complete_type_info">
-<description>
-Calls the @complete_type_info function from the #GTypePluginClass of @plugin.
-There should be no need to use this function outside of the GObject 
-type system itself.
-
-</description>
-<parameters>
-<parameter name="plugin">
-<parameter_description> a #GTypePlugin
+<parameter_description> a container #GVariant
 </parameter_description>
 </parameter>
-<parameter name="g_type">
-<parameter_description> the #GType whose info is completed
+<parameter name="index_">
+<parameter_description> the index of the child to deconstruct
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> the #GTypeInfo struct to fill in
+<parameter name="format_string">
+<parameter_description> a #GVariant format string
 </parameter_description>
 </parameter>
-<parameter name="value_table">
-<parameter_description> the #GTypeValueTable to fill in
+<parameter name="Varargs">
+<parameter_description> arguments, as per @format_string
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_queue_find">
+<function name="g_variant_get_child_value">
 <description>
-Finds the first link in @queue which contains @data.
+Reads a child item out of a container #GVariant instance.  This
+includes variants, maybes, arrays, tuples and dictionary
+entries.  It is an error to call this function on any other type of
+#GVariant.
 
-Since: 2.4
+It is an error if @index_ is greater than the number of child items
+in the container.  See g_variant_n_children().
+
+This function is O(1).
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
+<parameter name="value">
+<parameter_description> a container #GVariant
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to find
+<parameter name="index_">
+<parameter_description> the index of the child to fetch
 </parameter_description>
 </parameter>
 </parameters>
-<return> The first link in @queue which contains @data.
-
+<return> the child at the specified index
 </return>
 </function>
 
-<function name="g_param_spec_uint">
+<function name="g_variant_get_data">
 <description>
-Creates a new #GParamSpecUInt instance specifying a %G_TYPE_UINT property.
+Returns a pointer to the serialised form of a #GVariant instance.
+The returned data may not be in fully-normalised form if read from an
+untrusted source.  The returned data must not be freed; it remains
+valid for as long as @value exists.
+
+If @value is a fixed-sized value that was deserialised from a
+corrupted serialised container then %NULL may be returned.  In this
+case, the proper thing to do is typically to use the appropriate
+number of nul bytes in place of @value.  If @value is not fixed-sized
+then %NULL is never returned.
 
-See g_param_spec_internal() for details on property names.
+In the case that @value is already in serialised form, this function
+is O(1).  If the value is not already in serialised form,
+serialisation occurs implicitly and is approximately O(n) in the size
+of the result.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> minimum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> maximum value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="value">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> the serialised form of @value, or %NULL
 </return>
 </function>
 
-<function name="g_bookmark_file_to_data">
+<function name="g_variant_get_double">
 <description>
-This function outputs @bookmark as a string.
+Returns the double precision floating point value of @value.
 
-Since: 2.12
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_DOUBLE.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location for the length of the returned string, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="value">
+<parameter_description> a double #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string holding
-the contents of the #GBookmarkFile
-
+<return> a #gdouble
 </return>
 </function>
 
-<function name="g_main_loop_get_context">
+<function name="g_variant_get_fixed_array">
 <description>
-Returns the #GMainContext of @loop.
+Provides access to the serialised data for an array of fixed-sized
+items.
 
+ value must be an array with fixed-sized elements.  Numeric types are
+fixed-size as are tuples containing only other fixed-sized types.
 
-</description>
-<parameters>
-<parameter name="loop">
-<parameter_description> a #GMainLoop.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GMainContext of @loop
-</return>
-</function>
+ element_size must be the size of a single element in the array.  For
+example, if calling this function for an array of 32 bit integers,
+you might say &lt;code&gt;sizeof (gint32)&lt;/code&gt;.  This value isn't used
+except for the purpose of a double-check that the form of the
+seralised data matches the caller's expectation.
 
-<function name="g_io_channel_seek_position">
-<description>
-Replacement for g_io_channel_seek() with the new API.
+ n_elements, which must be non-%NULL is set equal to the number of
+items in the array.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="offset">
-<parameter_description> The offset in bytes from the position specified by @type
+<parameter name="value">
+<parameter_description> a #GVariant array with fixed-sized elements
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GSeekType. The type %G_SEEK_CUR is only allowed in those
-cases where a call to g_io_channel_set_encoding ()
-is allowed. See the documentation for
-g_io_channel_set_encoding () for details.
+<parameter name="n_elements">
+<parameter_description> a pointer to the location to store the number of items
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> A location to return an error of type #GIOChannelError
+<parameter name="element_size">
+<parameter_description> the size of each element
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation.
+<return> a pointer to the fixed array
 </return>
 </function>
 
-<function name="g_node_last_sibling">
+<function name="g_variant_get_handle">
 <description>
-Gets the last sibling of a #GNode.
-This could possibly be the node itself.
-
+Returns the 32-bit signed integer value of @value.
 
-</description>
-<parameters>
-<parameter name="node">
-<parameter_description> a #GNode
-</parameter_description>
-</parameter>
-</parameters>
-<return> the last sibling of @node
-</return>
-</function>
+It is an error to call this function with a @value of any type other
+than %G_VARIANT_TYPE_HANDLE.
 
-<function name="g_variant_new_int32">
-<description>
-Creates a new int32 #GVariant instance.
+By convention, handles are indexes into an array of file descriptors
+that are sent alongside a DBus message.  If you're not interacting
+with DBus, you probably don't need them.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="int32">
-<parameter_description> a #gint32 value
+<parameter name="value">
+<parameter_description> a handle #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new int32 #GVariant instance
+<return> a #gint32
 </return>
 </function>
 
-<function name="g_regex_replace_eval">
+<function name="g_variant_get_int16">
 <description>
-Replaces occurrences of the pattern in regex with the output of
- eval for that occurrence.
-
-Setting @start_position differs from just passing over a shortened
-string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
-that begins with any kind of lookbehind assertion, such as &quot;\b&quot;.
-
-The following example uses g_regex_replace_eval() to replace multiple
-strings at once:
-|[
-static gboolean
-eval_cb (const GMatchInfo *info,
-GString          *res,
-gpointer          data)
-{
-gchar *match;
-gchar *r;
-
-match = g_match_info_fetch (info, 0);
-r = g_hash_table_lookup ((GHashTable *)data, match);
-g_string_append (res, r);
-g_free (match);
-
-return FALSE;
-}
-
-/ * ... * /
-
-GRegex *reg;
-GHashTable *h;
-gchar *res;
-
-h = g_hash_table_new (g_str_hash, g_str_equal);
-
-g_hash_table_insert (h, &quot;1&quot;, &quot;ONE&quot;);
-g_hash_table_insert (h, &quot;2&quot;, &quot;TWO&quot;);
-g_hash_table_insert (h, &quot;3&quot;, &quot;THREE&quot;);
-g_hash_table_insert (h, &quot;4&quot;, &quot;FOUR&quot;);
-
-reg = g_regex_new (&quot;1|2|3|4&quot;, 0, 0, NULL);
-res = g_regex_replace_eval (reg, text, -1, 0, 0, eval_cb, h, NULL);
-g_hash_table_destroy (h);
+Returns the 16-bit signed integer value of @value.
 
-/ * ... * /
-]|
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_INT16.
 
-Since: 2.14
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure from g_regex_new()
- string (array length=string_len): string to perform matches against
-</parameter_description>
-</parameter>
-<parameter name="string_len">
-<parameter_description> the length of @string, or -1 if @string is nul-terminated
-</parameter_description>
-</parameter>
-<parameter name="start_position">
-<parameter_description> starting index of the string to match
-</parameter_description>
-</parameter>
-<parameter name="match_options">
-<parameter_description> options for the match
-</parameter_description>
-</parameter>
-<parameter name="eval">
-<parameter_description> a function to call for each match
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore errors
+<parameter name="value">
+<parameter_description> a int16 #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the replacements
-
+<return> a #gint16
 </return>
 </function>
 
-<function name="g_hash_table_lookup_extended">
+<function name="g_variant_get_int32">
 <description>
-Looks up a key in the #GHashTable, returning the original key and the
-associated value and a #gboolean which is %TRUE if the key was found. This
-is useful if you need to free the memory allocated for the original key,
-for example before calling g_hash_table_remove().
+Returns the 32-bit signed integer value of @value.
 
-You can actually pass %NULL for @lookup_key to test
-whether the %NULL key exists.
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_INT32.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a #GHashTable
-</parameter_description>
-</parameter>
-<parameter name="lookup_key">
-<parameter_description> the key to look up
-</parameter_description>
-</parameter>
-<parameter name="orig_key">
-<parameter_description> return location for the original key, or %NULL
-</parameter_description>
-</parameter>
 <parameter name="value">
-<parameter_description> return location for the value associated with the key, or %NULL
+<parameter_description> a int32 #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the key was found in the #GHashTable.
+<return> a #gint32
 </return>
 </function>
 
-<function name="g_bookmark_file_get_mime_type">
+<function name="g_variant_get_int64">
 <description>
-Retrieves the MIME type of the resource pointed by @uri.
+Returns the 64-bit signed integer value of @value.
 
-In the event the URI cannot be found, %NULL is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.  In the
-event that the MIME type cannot be found, %NULL is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_INT64.
 
-Since: 2.12
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="value">
+<parameter_description> a int64 #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string or %NULL if the specified
-URI cannot be found.
-
+<return> a #gint64
 </return>
 </function>
 
-<function name="g_strrstr_len">
+<function name="g_variant_get_maybe">
 <description>
-Searches the string @haystack for the last occurrence
-of the string @needle, limiting the length of the search
-to @haystack_len. 
+Given a maybe-typed #GVariant instance, extract its value.  If the
+value is Nothing, then this function returns %NULL.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="haystack">
-<parameter_description> a nul-terminated string.
-</parameter_description>
-</parameter>
-<parameter name="haystack_len">
-<parameter_description> the maximum length of @haystack.
-</parameter_description>
-</parameter>
-<parameter name="needle">
-<parameter_description> the nul-terminated string to search for.
+<parameter name="value">
+<parameter_description> a maybe-typed value
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the found occurrence, or
-%NULL if not found.
+<return> the contents of @value, or %NULL
 </return>
 </function>
 
-<function name="g_variant_type_element">
+<function name="g_variant_get_normal_form">
 <description>
-Determines the element type of an array or maybe type.
+Gets a #GVariant instance that has the same value as @value and is
+trusted to be in normal form.
 
-This function may only be used with array or maybe types.
+If @value is already trusted to be in normal form then a new
+reference to @value is returned.
 
-Since 2.24
+If @value is not already trusted, then it is scanned to check if it
+is in normal form.  If it is found to be in normal form then it is
+marked as trusted and a new reference to it is returned.
 
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> an array or maybe #GVariantType
-</parameter_description>
-</parameter>
-</parameters>
-<return> the element type of @type
-</return>
-</function>
+If @value is found not to be in normal form then a new trusted
+#GVariant is created with the same value as @value.
 
-<function name="g_queue_peek_nth">
-<description>
-Returns the @n'th element of @queue. 
+It makes sense to call this function if you've received #GVariant
+data from untrusted sources and you want to ensure your serialised
+output is definitely in normal form.
 
-Since: 2.4
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue
-</parameter_description>
-</parameter>
-<parameter name="n">
-<parameter_description> the position of the element.
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> The data for the @n'th element of @queue, or %NULL if @n is
-off the end of @queue.
-
+<return> a trusted #GVariant
 </return>
 </function>
 
-<function name="g_io_channel_flush">
+<function name="g_variant_get_size">
 <description>
-Flushes the write buffer for the GIOChannel.
-
-
-</description>
-<parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store an error of type #GIOChannelError
-</parameter_description>
-</parameter>
-</parameters>
-<return> the status of the operation: One of
-#G_IO_STATUS_NORMAL, #G_IO_STATUS_AGAIN, or
-#G_IO_STATUS_ERROR.
-</return>
-</function>
+Determines the number of bytes that would be required to store @value
+with g_variant_store().
 
-<function name="g_variant_new_string">
-<description>
-Creates a string #GVariant with the contents of @string.
+If @value has a fixed-sized type then this function always returned
+that fixed size.
 
- string must be valid utf8.
+In the case that @value is already in serialised form or the size has
+already been calculated (ie: this function has been called before)
+then this function is O(1).  Otherwise, the size is calculated, an
+operation which is approximately O(n) in the number of values
+involved.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a normal utf8 nul-terminated string
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new string #GVariant instance
-</return>
-</function>
-
-<function name="g_ptr_array_index">
-<description>
-Returns the pointer at the given index of the pointer array.
-
-</description>
-<parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the pointer to return.
+<parameter name="value">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> the pointer at the given index.
+<return> the serialised size of @value
 </return>
 </function>
 
-<function name="g_main_loop_ref">
+<function name="g_variant_get_string">
 <description>
-Increases the reference count on a #GMainLoop object by one.
+Returns the string value of a #GVariant instance with a string
+type.  This includes the types %G_VARIANT_TYPE_STRING,
+%G_VARIANT_TYPE_OBJECT_PATH and %G_VARIANT_TYPE_SIGNATURE.
 
+The string will always be utf8 encoded.
 
-</description>
-<parameters>
-<parameter name="loop">
-<parameter_description> a #GMainLoop
-</parameter_description>
-</parameter>
-</parameters>
-<return> @loop
-</return>
-</function>
+If @length is non-%NULL then the length of the string (in bytes) is
+returned there.  For trusted values, this information is already
+known.  For untrusted values, a strlen() will be performed.
 
-<function name="g_bookmark_file_move_item">
-<description>
-Changes the URI of a bookmark item from @old_uri to @new_uri.  Any
-existing bookmark for @new_uri will be overwritten.  If @new_uri is
-%NULL, then the bookmark is removed.
+It is an error to call this function with a @value of any type
+other than those three.
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+The return value remains valid as long as @value exists.
 
-Since: 2.12
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="old_uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="new_uri">
-<parameter_description> a valid URI, or %NULL
+<parameter name="value">
+<parameter_description> a string #GVariant instance
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="length">
+<parameter_description> a pointer to a #gsize,
+to store the length
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the URI was successfully changed
-
+<return> the constant string, utf8 encoded
 </return>
 </function>
 
-<function name="g_byte_array_sort">
+<function name="g_variant_get_strv">
 <description>
-Sorts a byte array, using @compare_func which should be a
-qsort()-style comparison function (returns less than zero for first
-arg is less than second arg, zero for equal, greater than zero if
-first arg is greater than second arg).
+Gets the contents of an array of strings #GVariant.  This call
+makes a shallow copy; the return result should be released with
+g_free(), but the individual strings must not be modified.
 
-If two array elements compare equal, their order in the sorted array
-is undefined.
+If @length is non-%NULL then the number of elements in the result
+is stored there.  In any case, the resulting array will be
+%NULL-terminated.
+
+For an empty array, @length will be set to 0 and a pointer to a
+%NULL pointer will be returned.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
+<parameter name="value">
+<parameter_description> an array of strings #GVariant
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function.
+<parameter name="length">
+<parameter_description> the length of the result, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> an array of constant
+strings
+</return>
 </function>
 
-<function name="g_match_info_fetch_pos">
+<function name="g_variant_get_type">
 <description>
-Retrieves the position in bytes of the @match_num&lt;!-- --&gt;'th capturing
-parentheses. 0 is the full text of the match, 1 is the first
-paren set, 2 the second, and so on.
-
-If @match_num is a valid sub pattern but it didn't match anything
-(e.g. sub pattern 1, matching &quot;b&quot; against &quot;(a)?b&quot;) then @start_pos
-and @end_pos are set to -1 and %TRUE is returned.
+Determines the type of @value.
 
-If the match was obtained using the DFA algorithm, that is using
-g_regex_match_all() or g_regex_match_all_full(), the retrieved
-position is not that of a set of parentheses but that of a matched
-substring. Substrings are matched in reverse order of length, so
-0 is the longest match.
+The return value is valid for the lifetime of @value and must not
+be freed.
 
-Since: 2.14
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="match_info">
-<parameter_description> #GMatchInfo structure
-</parameter_description>
-</parameter>
-<parameter name="match_num">
-<parameter_description> number of the sub expression
-</parameter_description>
-</parameter>
-<parameter name="start_pos">
-<parameter_description> pointer to location where to store
-the start position, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="end_pos">
-<parameter_description> pointer to location where to store
-the end position, or %NULL
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the position was fetched, %FALSE otherwise. If
-the position cannot be fetched, @start_pos and @end_pos are left
-unchanged
-
+<return> a #GVariantType
 </return>
 </function>
 
-<function name="g_type_from_name">
+<function name="g_variant_get_type_string">
 <description>
-Lookup the type ID from a given type name, returning 0 if no type
-has been registered under this name (this is the preferred method
-to find out by name whether a specific type has been registered
-yet).
+Returns the type string of @value.  Unlike the result of calling
+g_variant_type_peek_string(), this string is nul-terminated.  This
+string belongs to #GVariant and must not be freed.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> Type name to lookup.
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> Corresponding type ID or 0.
+<return> the type string for the type of @value
 </return>
 </function>
 
-<function name="g_queue_pop_head_link">
+<function name="g_variant_get_uint16">
 <description>
-Removes the first element of the queue.
+Returns the 16-bit unsigned integer value of @value.
 
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_UINT16.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="value">
+<parameter_description> a uint16 #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GList element at the head of the queue, or %NULL if the queue
-is empty.
+<return> a #guint16
 </return>
 </function>
 
-<function name="g_list_remove_all">
+<function name="g_variant_get_uint32">
 <description>
-Removes all list nodes with data equal to @data. 
-Returns the new head of the list. Contrast with 
-g_list_remove() which removes only the first node 
-matching the given data.
+Returns the 32-bit unsigned integer value of @value.
 
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_UINT32.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to remove
+<parameter name="value">
+<parameter_description> a uint32 #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> new head of @list
+<return> a #guint32
 </return>
 </function>
 
-<function name="g_value_unset">
+<function name="g_variant_get_uint64">
 <description>
-Clears the current value in @value and &quot;unsets&quot; the type,
-this releases all resources associated with this GValue.
-An unset value is the same as an uninitialized (zero-filled)
-#GValue structure.
+Returns the 64-bit unsigned integer value of @value.
+
+It is an error to call this function with a @value of any type
+other than %G_VARIANT_TYPE_UINT64.
+
+Since: 2.24
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> An initialized #GValue structure.
+<parameter_description> a uint64 #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #guint64
+</return>
 </function>
 
-<function name="g_static_mutex_unlock">
+<function name="g_variant_get_va">
 <description>
-Works like g_mutex_unlock(), but for a #GStaticMutex.
+This function is intended to be used by libraries based on #GVariant
+that want to provide g_variant_get()-like functionality to their
+users.
 
-</description>
-<parameters>
-<parameter name="mutex">
-<parameter_description> a #GStaticMutex.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+The API is more general than g_variant_get() to allow a wider range
+of possible uses.
 
-<function name="g_bookmark_file_set_icon">
-<description>
-Sets the icon for the bookmark for @uri. If @href is %NULL, unsets
-the currently set icon. @href can either be a full URL for the icon
-file or the icon name following the Icon Naming specification.
+ format_string must still point to a valid format string, but it only
+need to be nul-terminated if @endptr is %NULL.  If @endptr is
+non-%NULL then it is updated to point to the first character past the
+end of the format string.
 
-If no bookmark for @uri is found one is created.
+ app is a pointer to a #va_list.  The arguments, according to
+ format_string, are collected from this #va_list and the list is left
+pointing to the argument following the last.
 
-Since: 2.12
+These two generalisations allow mixing of multiple calls to
+g_variant_new_va() and g_variant_get_va() within a single actual
+varargs call by the user.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="format_string">
+<parameter_description> a string that is prefixed with a format string
 </parameter_description>
 </parameter>
-<parameter name="href">
-<parameter_description> the URI of the icon for the bookmark, or %NULL
+<parameter name="endptr">
+<parameter_description> location to store the end pointer,
+or %NULL
 </parameter_description>
 </parameter>
-<parameter name="mime_type">
-<parameter_description> the MIME type of the icon for the bookmark
+<parameter name="app">
+<parameter_description> a pointer to a #va_list
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_mutex_new">
+<function name="g_variant_get_variant">
 <description>
-Creates a new #GMutex.
+Unboxes @value.  The result is the #GVariant instance that was
+contained in @value.
 
-&lt;note&gt;&lt;para&gt;This function will abort if g_thread_init() has not been
-called yet.&lt;/para&gt;&lt;/note&gt;
+Since: 2.24
 
 </description>
 <parameters>
+<parameter name="value">
+<parameter_description> a variant #GVariance instance
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GMutex.
+<return> the item contained in the variant
 </return>
 </function>
 
-<function name="g_type_class_unref_uncached">
+<function name="g_variant_hash">
 <description>
-A variant of g_type_class_unref() for use in #GTypeClassCacheFunc
-implementations. It unreferences a class without consulting the chain
-of #GTypeClassCacheFunc&lt;!-- --&gt;s, avoiding the recursion which would occur
-otherwise.
+Generates a hash value for a #GVariant instance.
 
-</description>
-<parameters>
-<parameter name="g_class">
-<parameter_description> The #GTypeClass structure to unreference.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+The output of this function is guaranteed to be the same for a given
+value only per-process.  It may change between different processor
+architectures or even different versions of GLib.  Do not use this
+function as a basis for building protocols or file formats.
 
-<function name="g_sequence_get">
-<description>
-Returns the data that @iter points to.
+The type of @value is #gconstpointer only to allow use of this
+function with #GHashTable.  @value must be a #GVariant.
 
-Since: 2.14
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="value">
+<parameter_description> a basic #GVariant value as a #gconstpointer
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data that @iter points to
-
+<return> a hash value corresponding to @value
 </return>
 </function>
 
-<function name="g_array_remove_index_fast">
+<function name="g_variant_is_container">
 <description>
-Removes the element at the given index from a #GArray. The last
-element in the array is used to fill in the space, so this function
-does not preserve the order of the #GArray. But it is faster than
-g_array_remove_index().
+Checks if @value is a container.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a @GArray.
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the element to remove.
+<parameter name="value">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> %TRUE if @value is a container
 </return>
 </function>
 
-<function name="g_object_notify_by_pspec">
+<function name="g_variant_is_floating">
 <description>
-Emits a &quot;notify&quot; signal for the property specified by @pspec on @object.
-
-This function omits the property name lookup, hence it is faster than
-g_object_notify().
-
-One way to avoid using g_object_notify() from within the
-class that registered the properties, and using g_object_notify_by_pspec()
-instead, is to store the GParamSpec used with
-g_object_class_install_property() inside a static array, e.g.:
-
-|[
-enum
-{
-PROP_0,
-PROP_FOO,
-PROP_LAST
-};
-
-static GParamSpec *properties[PROP_LAST];
-
-static void
-my_object_class_init (MyObjectClass *klass)
-{
-properties[PROP_FOO] = g_param_spec_int (&quot;foo&quot;, &quot;Foo&quot;, &quot;The foo&quot;,
-0, 100,
-50,
-G_PARAM_READWRITE);
-g_object_class_install_property (gobject_class,
-PROP_FOO,
-properties[PROP_FOO]);
-}
-]|
+Checks whether @value has a floating reference count.
 
-and then notify a change on the &quot;foo&quot; property with:
+This function should only ever be used to assert that a given variant
+is or is not floating, or for debug purposes. To acquire a reference
+to a variant that might be floating, always use g_variant_ref_sink().
 
-|[
-g_object_notify_by_pspec (self, properties[PROP_FOO]);
-]|
+See g_variant_ref_sink() for more information about floating reference
+counts.
 
 Since: 2.26
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="pspec">
-<parameter_description> the #GParamSpec of a property installed on the class of @object.
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> whether @value is floating
+</return>
 </function>
 
-<function name="g_test_rand_int_range">
+<function name="g_variant_is_normal_form">
 <description>
-Get a reproducible random integer number out of a specified range,
-see g_test_rand_int() for details on test case random numbers.
-
-Since: 2.16
+Checks if @value is in normal form.
 
-</description>
-<parameters>
-<parameter name="begin">
-<parameter_description> the minimum value returned by this function
-</parameter_description>
-</parameter>
-<parameter name="end">
-<parameter_description>   the smallest value not to be returned by this function
-</parameter_description>
-</parameter>
-</parameters>
-<return> a number with @begin &lt;= number &lt; @end.
+The main reason to do this is to detect if a given chunk of
+serialised data is in normal form: load the data into a #GVariant
+using g_variant_new_from_data() and then use this function to
+check.
 
-</return>
-</function>
+If @value is found to be in normal form then it will be marked as
+being trusted.  If the value was already marked as being trusted then
+this function will immediately return %TRUE.
 
-<function name="g_datalist_remove_data">
-<description>
-Removes an element using its string identifier. The data element's
-destroy function is called if it has been set.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="dl">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="k">
-<parameter_description> the string identifying the data element.
+<parameter name="value">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @value is in normal form
+</return>
 </function>
 
-<function name="g_main_loop_new">
+<function name="g_variant_is_object_path">
 <description>
-Creates a new #GMainLoop structure.
+Determines if a given string is a valid DBus object path.  You
+should ensure that a string is a valid DBus object path before
+passing it to g_variant_new_object_path().
 
+A valid object path starts with '/' followed by zero or more
+sequences of characters separated by '/' characters.  Each sequence
+must contain only the characters &quot;[A-Z][a-z][0-9]_&quot;.  No sequence
+(including the one following the final '/' character) may be empty.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext  (if %NULL, the default context will be used).
-</parameter_description>
-</parameter>
-<parameter name="is_running">
-<parameter_description> set to %TRUE to indicate that the loop is running. This
-is not very important since calling g_main_loop_run() will set this to
-%TRUE anyway.
+<parameter name="string">
+<parameter_description> a normal C nul-terminated string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GMainLoop.
+<return> %TRUE if @string is a DBus object path
 </return>
 </function>
 
-<function name="g_key_file_load_from_file">
+<function name="g_variant_is_of_type">
 <description>
-Loads a key file into an empty #GKeyFile structure.
-If the file could not be loaded then %error is set to 
-either a #GFileError or #GKeyFileError.
+Checks if a value has a type matching the provided type.
 
-Since: 2.6
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> an empty #GKeyFile struct
-</parameter_description>
-</parameter>
-<parameter name="file">
-<parameter_description> the path of a filename to load, in the GLib filename encoding
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags from #GKeyFileFlags
+<parameter name="value">
+<parameter_description> a #GVariant instance
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a key file could be loaded, %FALSE otherwise
-
+<return> %TRUE if the type of @value matches @type
 </return>
 </function>
 
-<function name="g_test_log_buffer_pop">
-<description>
-Internal function for gtester to retrieve test log messages, no ABI guarantees provided.
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_tree_height">
+<function name="g_variant_is_signature">
 <description>
-Gets the height of a #GTree.
+Determines if a given string is a valid DBus type signature.  You
+should ensure that a string is a valid DBus type signature before
+passing it to g_variant_new_signature().
 
-If the #GTree contains no nodes, the height is 0.
-If the #GTree contains only one root node the height is 1.
-If the root node has children the height is 2, etc.
+DBus type signatures consist of zero or more definite #GVariantType
+strings in sequence.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="string">
+<parameter_description> a normal C nul-terminated string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the height of the #GTree.
+<return> %TRUE if @string is a DBus type signature
 </return>
 </function>
 
-<function name="g_object_get_property">
+<function name="g_variant_iter_copy">
 <description>
-Gets a property of an object.
+Creates a new heap-allocated #GVariantIter to iterate over the
+container that was being iterated over by @iter.  Iteration begins on
+the new iterator from the current position of the old iterator but
+the two copies are independent past that point.
 
-In general, a copy is made of the property contents and the caller is
-responsible for freeing the memory by calling g_value_unset().
+Use g_variant_iter_free() to free the return value when you no longer
+need it.
 
-Note that g_object_get_property() is really intended for language
-bindings, g_object_get() is much more convenient for C programming.
+A reference is taken to the container that @iter is iterating over
+and will be releated only when g_variant_iter_free() is called.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of the property to get
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> return location for the property value
+<parameter name="iter">
+<parameter_description> a #GVariantIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new heap-allocated #GVariantIter
+</return>
 </function>
 
-<function name="g_main_loop_quit">
+<function name="g_variant_iter_free">
 <description>
-Stops a #GMainLoop from running. Any calls to g_main_loop_run()
-for the loop will return. 
+Frees a heap-allocated #GVariantIter.  Only call this function on
+iterators that were returned by g_variant_iter_new() or
+g_variant_iter_copy().
 
-Note that sources that have already been dispatched when 
-g_main_loop_quit() is called will still be executed.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="loop">
-<parameter_description> a #GMainLoop
+<parameter name="iter">
+<parameter_description> a heap-allocated #GVariantIter
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_unichar_to_utf8">
+<function name="g_variant_iter_init">
 <description>
-Converts a single character to UTF-8.
+Initialises (without allocating) a #GVariantIter.  @iter may be
+completely uninitialised prior to this call; its old value is
+ignored.
 
+The iterator remains valid for as long as @value exists, and need not
+be freed in any way.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character code
+<parameter name="iter">
+<parameter_description> a pointer to a #GVariantIter
 </parameter_description>
 </parameter>
-<parameter name="outbuf">
-<parameter_description> output buffer, must have at least 6 bytes of space.
-If %NULL, the length will be computed and returned
-and nothing will be written to @outbuf.
+<parameter name="value">
+<parameter_description> a container #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> number of bytes written
+<return> the number of items in @value
 </return>
 </function>
 
-<function name="g_signal_parse_name">
+<function name="g_variant_iter_loop">
 <description>
-Internal function to parse a signal name into its @signal_id
-and @detail quark.
+Gets the next item in the container and unpacks it into the variable
+argument list according to @format_string, returning %TRUE.
+
+If no more items remain then %FALSE is returned.
+
+On the first call to this function, the pointers appearing on the
+variable argument list are assumed to point at uninitialised memory.
+On the second and later calls, it is assumed that the same pointers
+will be given and that they will point to the memory as set by the
+previous call to this function.  This allows the previous values to
+be freed, as appropriate.
+
+This function is intended to be used with a while loop as
+demonstrated in the following example.  This function can only be
+used when iterating over an array.  It is only valid to call this
+function with a string constant for the format string and the same
+string constant must be used each time.  Mixing calls to this
+function and g_variant_iter_next() or g_variant_iter_next_value() on
+the same iterator is not recommended.
+
+See the section on &lt;link linkend='gvariant-format-strings'&gt;GVariant
+Format Strings&lt;/link&gt;.
+
+&lt;example&gt;
+&lt;title&gt;Memory management with g_variant_iter_loop()&lt;/title&gt;
+&lt;programlisting&gt;
+/&lt;!-- --&gt;* Iterates a dictionary of type 'a{sv}' *&lt;!-- --&gt;/
+void
+iterate_dictionary (GVariant *dictionary)
+{
+GVariantIter iter;
+GVariant *value;
+gchar *key;
+
+g_variant_iter_init (&amp;iter, dictionary);
+while (g_variant_iter_loop (&amp;iter, &quot;{sv}&quot;, &amp;key, &amp;value))
+{
+g_print (&quot;Item '%s' has type '%s'\n&quot;, key,
+g_variant_get_type_string (value));
+
+/&lt;!-- --&gt;* no need to free 'key' and 'value' here *&lt;!-- --&gt;/
+}
+}
+&lt;/programlisting&gt;
+&lt;/example&gt;
+
+If you want a slightly less magical alternative that requires more
+typing, see g_variant_iter_next().
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="detailed_signal">
-<parameter_description> a string of the form &quot;signal-name::detail&quot;.
-</parameter_description>
-</parameter>
-<parameter name="itype">
-<parameter_description> The interface/instance type that introduced &quot;signal-name&quot;.
-</parameter_description>
-</parameter>
-<parameter name="signal_id_p">
-<parameter_description> Location to store the signal id.
+<parameter name="iter">
+<parameter_description> a #GVariantIter
 </parameter_description>
 </parameter>
-<parameter name="detail_p">
-<parameter_description> Location to store the detail quark.
+<parameter name="format_string">
+<parameter_description> a GVariant format string
 </parameter_description>
 </parameter>
-<parameter name="force_detail_quark">
-<parameter_description> %TRUE forces creation of a #GQuark for the detail.
+<parameter name="Varargs">
+<parameter_description> the arguments to unpack the value into
 </parameter_description>
 </parameter>
 </parameters>
-<return> Whether the signal name could successfully be parsed and @signal_id_p and @detail_p contain valid return values.
+<return> %TRUE if a value was unpacked, or %FALSE if there as no
+value
 </return>
 </function>
 
@@ -37570,3038 +32116,2267 @@ Since: 2.24
 </return>
 </function>
 
-<function name="g_main_context_default">
+<function name="g_variant_iter_new">
 <description>
-Returns the global default main context. This is the main context
-used for main loop functions when a main loop is not explicitly
-specified, and corresponds to the &quot;main&quot; main loop. See also
-g_main_context_get_thread_default().
+Creates a heap-allocated #GVariantIter for iterating over the items
+in @value.
 
+Use g_variant_iter_free() to free the return value when you no longer
+need it.
 
-</description>
-<parameters>
-</parameters>
-<return> the global default main context.
-</return>
-</function>
+A reference is taken to @value and will be released only when
+g_variant_iter_free() is called.
 
-<function name="g_string_chunk_free">
-<description>
-Frees all memory allocated by the #GStringChunk.
-After calling g_string_chunk_free() it is not safe to
-access any of the strings which were contained within it.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="chunk">
-<parameter_description> a #GStringChunk 
+<parameter name="value">
+<parameter_description> a container #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="g_get_current_dir">
-<description>
-Gets the current directory.
-The returned string should be freed when no longer needed. The encoding 
-of the returned string is system defined. On Windows, it is always UTF-8.
-
-
-</description>
-<parameters>
-</parameters>
-<return> the current directory.
+<return> a new heap-allocated #GVariantIter
 </return>
 </function>
 
-<function name="g_datalist_id_get_data">
+<function name="g_variant_iter_next">
 <description>
-Retrieves the data element corresponding to @key_id.
+Gets the next item in the container and unpacks it into the variable
+argument list according to @format_string, returning %TRUE.
 
-</description>
-<parameters>
-<parameter name="datalist">
-<parameter_description> a datalist.
-</parameter_description>
-</parameter>
-<parameter name="key_id">
-<parameter_description> the #GQuark identifying a data element.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the data element, or %NULL if it is not found.
-</return>
-</function>
+If no more items remain then %FALSE is returned.
 
-<function name="g_string_set_size">
-<description>
-Sets the length of a #GString. If the length is less than
-the current length, the string will be truncated. If the
-length is greater than the current length, the contents
-of the newly added area are undefined. (However, as
-always, string-&gt;str[string-&gt;len] will be a nul byte.) 
+All of the pointers given on the variable arguments list of this
+function are assumed to point at uninitialised memory.  It is the
+responsibility of the caller to free all of the values returned by
+the unpacking process.
+
+See the section on &lt;link linkend='gvariant-format-strings'&gt;GVariant
+Format Strings&lt;/link&gt;.
 
+&lt;example&gt;
+&lt;title&gt;Memory management with g_variant_iter_next()&lt;/title&gt;
+&lt;programlisting&gt;
+/&lt;!-- --&gt;* Iterates a dictionary of type 'a{sv}' *&lt;!-- --&gt;/
+void
+iterate_dictionary (GVariant *dictionary)
+{
+GVariantIter iter;
+GVariant *value;
+gchar *key;
 
-</description>
-<parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the new length
-</parameter_description>
-</parameter>
-</parameters>
-<return> @string
-</return>
-</function>
+g_variant_iter_init (&amp;iter, dictionary);
+while (g_variant_iter_next (&amp;iter, &quot;{sv}&quot;, &amp;key, &amp;value))
+{
+g_print (&quot;Item '%s' has type '%s'\n&quot;, key,
+g_variant_get_type_string (value));
 
-<function name="g_bookmark_file_remove_group">
-<description>
-Removes @group from the list of groups to which the bookmark
-for @uri belongs to.
+/&lt;!-- --&gt;* must free data for ourselves *&lt;!-- --&gt;/
+g_variant_unref (value);
+g_free (key);
+}
+}
+&lt;/programlisting&gt;
+&lt;/example&gt;
 
-In the event the URI cannot be found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
-In the event no group was defined, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+For a solution that is likely to be more convenient to C programmers
+when dealing with loops, see g_variant_iter_loop().
 
-Since: 2.12
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
+<parameter name="iter">
+<parameter_description> a #GVariantIter
 </parameter_description>
 </parameter>
-<parameter name="group">
-<parameter_description> the group name to be removed
+<parameter name="format_string">
+<parameter_description> a GVariant format string
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="Varargs">
+<parameter_description> the arguments to unpack the value into
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @group was successfully removed.
-
+<return> %TRUE if a value was unpacked, or %FALSE if there as no
+value
 </return>
 </function>
 
-<function name="g_bookmark_file_set_app_info">
+<function name="g_variant_iter_next_value">
 <description>
-Sets the meta-data of application @name inside the list of
-applications that have registered a bookmark for @uri inside
- bookmark 
+Gets the next item in the container.  If no more items remain then
+%NULL is returned.
 
-You should rarely use this function; use g_bookmark_file_add_application()
-and g_bookmark_file_remove_application() instead.
+Use g_variant_unref() to drop your reference on the return value when
+you no longer need it.
 
- name can be any UTF-8 encoded string used to identify an
-application.
- exec can have one of these two modifiers: &quot;%f&quot;, which will
-be expanded as the local file name retrieved from the bookmark's
-URI; &quot;%u&quot;, which will be expanded as the bookmark's URI.
-The expansion is done automatically when retrieving the stored
-command line using the g_bookmark_file_get_app_info() function.
- count is the number of times the application has registered the
-bookmark; if is &lt; 0, the current registration count will be increased
-by one, if is 0, the application with @name will be removed from
-the list of registered applications.
- stamp is the Unix time of the last registration; if it is -1, the
-current time will be used.
+&lt;example&gt;
+&lt;title&gt;Iterating with g_variant_iter_next_value()&lt;/title&gt;
+&lt;programlisting&gt;
+/&lt;!-- --&gt;* recursively iterate a container *&lt;!-- --&gt;/
+void
+iterate_container_recursive (GVariant *container)
+{
+GVariantIter iter;
+GVariant *child;
 
-If you try to remove an application by setting its registration count to
-zero, and no bookmark for @uri is found, %FALSE is returned and
- error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND; similarly,
-in the event that no application @name has registered a bookmark
-for @uri,  %FALSE is returned and error is set to
-#G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED.  Otherwise, if no bookmark
-for @uri is found, one is created.
+g_variant_iter_init (&amp;iter, dictionary);
+while ((child = g_variant_iter_next_value (&amp;iter)))
+{
+g_print (&quot;type '%s'\n&quot;, g_variant_get_type_string (child));
 
-Since: 2.12
+if (g_variant_is_container (child))
+iterate_container_recursive (child);
+
+g_variant_unref (child);
+}
+}
+&lt;/programlisting&gt;
+&lt;/example&gt;
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="bookmark">
-<parameter_description> a #GBookmarkFile
-</parameter_description>
-</parameter>
-<parameter name="uri">
-<parameter_description> a valid URI
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> an application's name
-</parameter_description>
-</parameter>
-<parameter name="exec">
-<parameter_description> an application's command line
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the number of registrations done for this application
-</parameter_description>
-</parameter>
-<parameter name="stamp">
-<parameter_description> the time of the last registration for this application
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError or %NULL
+<parameter name="iter">
+<parameter_description> a #GVariantIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the application's meta-data was successfully
-changed.
-
+<return> a #GVariant, or %NULL
 </return>
 </function>
 
-<function name="g_strsplit_set">
+<function name="g_variant_lookup">
 <description>
-Splits @string into a number of tokens not containing any of the characters
-in @delimiter. A token is the (possibly empty) longest string that does not
-contain any of the characters in @delimiters. If @max_tokens is reached, the
-remainder is appended to the last token.
+Looks up a value in a dictionary #GVariant.
 
-For example the result of g_strsplit_set (&quot;abc:def/ghi&quot;, &quot;:/&quot;, -1) is a
-%NULL-terminated vector containing the three strings &quot;abc&quot;, &quot;def&quot;, 
-and &quot;ghi&quot;.
-
-The result if g_strsplit_set (&quot;:def/ghi:&quot;, &quot;:/&quot;, -1) is a %NULL-terminated
-vector containing the four strings &quot;&quot;, &quot;def&quot;, &quot;ghi&quot;, and &quot;&quot;.
-
-As a special case, the result of splitting the empty string &quot;&quot; is an empty
-vector, not a vector containing a single string. The reason for this
-special case is that being able to represent a empty vector is typically
-more useful than consistent handling of empty elements. If you do need
-to represent empty elements, you'll need to check for the empty string
-before calling g_strsplit_set().
+This function is a wrapper around g_variant_lookup_value() and
+g_variant_get().  In the case that %NULL would have been returned,
+this function returns %FALSE.  Otherwise, it unpacks the returned
+value and returns %TRUE.
 
-Note that this function works on bytes not characters, so it can't be used 
-to delimit UTF-8 strings for anything but ASCII characters.
+See g_variant_get() for information about @format_string.
 
-Since: 2.4
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> The string to be tokenized
+<parameter name="dictionary">
+<parameter_description> a dictionary #GVariant
 </parameter_description>
 </parameter>
-<parameter name="delimiters">
-<parameter_description> A nul-terminated string containing bytes that are used
-to split the string.
+<parameter name="key">
+<parameter_description> the key to lookup in the dictionary
 </parameter_description>
 </parameter>
-<parameter name="max_tokens">
-<parameter_description> The maximum number of tokens to split @string into. 
-If this is less than 1, the string is split completely
+<parameter name="format_string">
+<parameter_description> a GVariant format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the arguments to unpack the value into
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated %NULL-terminated array of strings. Use 
-g_strfreev() to free it.
+<return> %TRUE if a value was unpacked
 
 </return>
 </function>
 
-<function name="g_cclosure_new_swap">
+<function name="g_variant_lookup_value">
 <description>
-Creates a new closure which invokes @callback_func with @user_data as
-the first parameter.
+Looks up a value in a dictionary #GVariant.
 
+This function works with dictionaries of the type
+&lt;literal&gt;a{s*}&lt;/literal&gt; (and equally well with type
+&lt;literal&gt;a{o*}&lt;/literal&gt;, but we only further discuss the string case
+for sake of clarity).
 
-</description>
-<parameters>
-<parameter name="callback_func">
-<parameter_description> the function to invoke
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @callback_func
-</parameter_description>
-</parameter>
-<parameter name="destroy_data">
-<parameter_description> destroy notify to be called when @user_data is no longer used
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GCClosure
-</return>
-</function>
+In the event that @dictionary has the type &lt;literal&gt;a{sv}&lt;/literal&gt;,
+the @expected_type string specifies what type of value is expected to
+be inside of the variant.  If the value inside the variant has a
+different type then %NULL is returned.  In the event that @dictionary
+has a value type other than &lt;literal&gt;v&lt;/literal&gt; then @expected_type
+must directly match the key type and it is used to unpack the value
+directly or an error occurs.
 
-<function name="g_key_file_load_from_dirs">
-<description>
-This function looks for a key file named @file in the paths
-specified in @search_dirs, loads the file into @key_file and
-returns the file's full path in @full_path.  If the file could not
-be loaded then an %error is set to either a #GFileError or
-#GKeyFileError.
+In either case, if @key is not found in @dictionary, %NULL is
+returned.
 
-Since: 2.14
+If the key is found and the value has the correct type, it is
+returned.  If @expected_type was specified then any non-%NULL return
+value will have this type.
+
+Since: 2.28
 
 </description>
 <parameters>
-<parameter name="key_file">
-<parameter_description> an empty #GKeyFile struct
+<parameter name="dictionary">
+<parameter_description> a dictionary #GVariant
 </parameter_description>
 </parameter>
-<parameter name="file">
-<parameter_description> a relative path to a filename to open and parse
-</parameter_description>
-</parameter>
-<parameter name="search_dirs">
-<parameter_description> %NULL-terminated array of directories to search
-</parameter_description>
-</parameter>
-<parameter name="full_path">
-<parameter_description> return location for a string containing the full path
-of the file, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags from #GKeyFileFlags
+<parameter name="key">
+<parameter_description> the key to lookup in the dictionary
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="expected_type">
+<parameter_description> a #GVariantType, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a key file could be loaded, %FALSE otherwise
+<return> the value of the dictionary key, or %NULL
 
 </return>
 </function>
 
-<function name="g_variant_get_handle">
+<function name="g_variant_n_children">
 <description>
-Returns the 32-bit signed integer value of @value.
+Determines the number of children in a container #GVariant instance.
+This includes variants, maybes, arrays, tuples and dictionary
+entries.  It is an error to call this function on any other type of
+#GVariant.
 
-It is an error to call this function with a @value of any type other
-than %G_VARIANT_TYPE_HANDLE.
+For variants, the return value is always 1.  For values with maybe
+types, it is always zero or one.  For arrays, it is the length of the
+array.  For tuples it is the number of tuple items (which depends
+only on the type).  For dictionary entries, it is always 2
 
-By convention, handles are indexes into an array of file descriptors
-that are sent alongside a DBus message.  If you're not interacting
-with DBus, you probably don't need them.
+This function is O(1).
 
 Since: 2.24
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> a handle #GVariant instance
+<parameter_description> a container #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #gint32
-</return>
-</function>
-
-<function name="g_timer_new">
-<description>
-Creates a new timer, and starts timing (i.e. g_timer_start() is
-implicitly called for you).
-
-</description>
-<parameters>
-</parameters>
-<return> a new #GTimer.
+<return> the number of children in the container
 </return>
 </function>
 
-<function name="g_creat">
+<function name="g_variant_new">
 <description>
-A wrapper for the POSIX creat() function. The creat() function is
-used to convert a pathname into a file descriptor, creating a file
-if necessary.
+Creates a new #GVariant instance.
 
-On POSIX systems file descriptors are implemented by the operating
-system. On Windows, it's the C library that implements creat() and
-file descriptors. The actual Windows API for opening files is
-different, see MSDN documentation for CreateFile(). The Win32 API
-uses file handles, which are more randomish integers, not small
-integers like file descriptors.
+Think of this function as an analogue to g_strdup_printf().
 
-Because file descriptors are specific to the C library on Windows,
-the file descriptor returned by this function makes sense only to
-functions in the same C library. Thus if the GLib-using code uses a
-different C library than GLib does, the file descriptor returned by
-this function cannot be passed to C library functions like write()
-or read().
+The type of the created instance and the arguments that are
+expected by this function are determined by @format_string.  See the
+section on &lt;link linkend='gvariant-format-strings'&gt;GVariant Format
+Strings&lt;/link&gt;.  Please note that the syntax of the format string is
+very likely to be extended in the future.
 
-See your C library manual for more details about creat().
+The first character of the format string must not be '*' '?' '@' or
+'r'; in essence, a new #GVariant must always be constructed by this
+function (and not merely passed through it unmodified).
 
-Since: 2.8
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> a pathname in the GLib file name encoding (UTF-8 on Windows)
+<parameter name="format_string">
+<parameter_description> a #GVariant format string
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> as in creat()
+<parameter name="Varargs">
+<parameter_description> arguments, as per @format_string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new file descriptor, or -1 if an error occurred. The
-return value can be used exactly like the return value from creat().
-
+<return> a new floating #GVariant instance
 </return>
 </function>
 
-<function name="g_test_trap_has_passed">
+<function name="g_variant_new_array">
 <description>
-Check the result of the last g_test_trap_fork() call.
+Creates a new #GVariant array from @children.
 
-Since: 2.16
+ child_type must be non-%NULL if @n_children is zero.  Otherwise, the
+child type is determined by inspecting the first element of the
+ children array.  If @child_type is non-%NULL then it must be a
+definite type.
 
-</description>
-<parameters>
-</parameters>
-<return> %TRUE if the last forked child terminated successfully.
+The items of the array are taken from the @children array.  No entry
+in the @children array may be %NULL.
 
-</return>
-</function>
+All items in the array must have the same type, which must be the
+same as @child_type, if given.
 
-<function name="g_utf8_get_char_validated">
-<description>
-Convert a sequence of bytes encoded as UTF-8 to a Unicode character.
-This function checks for incomplete characters, for invalid characters
-such as characters that are out of the range of Unicode, and for
-overlong encodings of valid characters.
+If the @children are floating references (see g_variant_ref_sink()), the
+new instance takes ownership of them as if via g_variant_ref_sink().
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="p">
-<parameter_description> a pointer to Unicode character encoded as UTF-8
+<parameter name="child_type">
+<parameter_description> the element type of the new array
 </parameter_description>
 </parameter>
-<parameter name="max_len">
-<parameter_description> the maximum number of bytes to read, or -1, for no maximum or
-if @p is nul-terminated
+<parameter name="children">
+<parameter_description> an array of
+#GVariant pointers, the children
+</parameter_description>
+</parameter>
+<parameter name="n_children">
+<parameter_description> the length of @children
 </parameter_description>
 </parameter>
 </parameters>
-<return> the resulting character. If @p points to a partial
-sequence at the end of a string that could begin a valid 
-character (or if @max_len is zero), returns (gunichar)-2; 
-otherwise, if @p does not point to a valid UTF-8 encoded 
-Unicode character, returns (gunichar)-1.
+<return> a floating reference to a new #GVariant array
 </return>
 </function>
 
-<function name="g_value_get_object">
+<function name="g_variant_new_boolean">
 <description>
-Get the contents of a %G_TYPE_OBJECT derived #GValue.
+Creates a new boolean #GVariant instance -- either %TRUE or %FALSE.
 
+Since: 2.24
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_OBJECT derived type
+<parameter_description> a #gboolean value
 </parameter_description>
 </parameter>
 </parameters>
-<return> object contents of @value
+<return> a floating reference to a new boolean #GVariant instance
 </return>
 </function>
 
-<function name="g_sequence_iter_is_end">
+<function name="g_variant_new_byte">
 <description>
-Returns whether @iter is the end iterator
+Creates a new byte #GVariant instance.
 
-Since: 2.14
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="value">
+<parameter_description> a #guint8 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> Whether @iter is the end iterator.
-
+<return> a floating reference to a new byte #GVariant instance
 </return>
 </function>
 
-<function name="g_uri_unescape_string">
+<function name="g_variant_new_bytestring">
 <description>
-Unescapes a whole escaped string.
+Creates an array-of-bytes #GVariant with the contents of @string.
+This function is just like g_variant_new_string() except that the
+string need not be valid utf8.
 
-If any of the characters in @illegal_characters or the character zero appears
-as an escaped character in @escaped_string then that is an error and %NULL
-will be returned. This is useful it you want to avoid for instance having a
-slash being expanded in an escaped path element, which might confuse pathname
-handling.
+The nul terminator character at the end of the string is stored in
+the array.
 
-Since: 2.16
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="escaped_string">
-<parameter_description> an escaped string to be unescaped.
-</parameter_description>
-</parameter>
-<parameter name="illegal_characters">
-<parameter_description> an optional string of illegal characters not to be allowed.
+<parameter name="string">
+<parameter_description> a normal nul-terminated string in no particular encoding
 </parameter_description>
 </parameter>
 </parameters>
-<return> an unescaped version of @escaped_string. The returned string 
-should be freed when no longer needed.
-
+<return> a floating reference to a new bytestring #GVariant instance
 </return>
 </function>
 
-<function name="g_string_append_vprintf">
+<function name="g_variant_new_bytestring_array">
 <description>
-Appends a formatted string onto the end of a #GString.
-This function is similar to g_string_append_printf()
-except that the arguments to the format string are passed
-as a va_list.
+Constructs an array of bytestring #GVariant from the given array of
+strings.
 
-Since: 2.14
+If @length is -1 then @strv is %NULL-terminated.
+
+Since: 2.26
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a #GString
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> the string format. See the printf() documentation
+<parameter name="strv">
+<parameter_description> an array of strings
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> the list of arguments to insert in the output
+<parameter name="length">
+<parameter_description> the length of @strv, or -1
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new floating #GVariant instance
+</return>
 </function>
 
-<function name="g_spawn_command_line_sync">
+<function name="g_variant_new_dict_entry">
 <description>
-A simple version of g_spawn_sync() with little-used parameters
-removed, taking a command line instead of an argument vector.  See
-g_spawn_sync() for full details. @command_line will be parsed by
-g_shell_parse_argv(). Unlike g_spawn_sync(), the %G_SPAWN_SEARCH_PATH flag
-is enabled. Note that %G_SPAWN_SEARCH_PATH can have security
-implications, so consider using g_spawn_sync() directly if
-appropriate. Possible errors are those from g_spawn_sync() and those
-from g_shell_parse_argv().
+Creates a new dictionary entry #GVariant.  @key and @value must be
+non-%NULL.
 
-If @exit_status is non-%NULL, the exit status of the child is stored there as
-it would be returned by waitpid(); standard UNIX macros such as WIFEXITED()
-and WEXITSTATUS() must be used to evaluate the exit status.
+ key must be a value of a basic type (ie: not a container).
 
-On Windows, please note the implications of g_shell_parse_argv()
-parsing @command_line. Parsing is done according to Unix shell rules, not 
-Windows command interpreter rules.
-Space is a separator, and backslashes are
-special. Thus you cannot simply pass a @command_line containing
-canonical Windows paths, like &quot;c:\\program files\\app\\app.exe&quot;, as
-the backslashes will be eaten, and the space will act as a
-separator. You need to enclose such paths with single quotes, like
-&quot;'c:\\program files\\app\\app.exe' 'e:\\folder\\argument.txt'&quot;.
+If the @key or @value are floating references (see g_variant_ref_sink()),
+the new instance takes ownership of them as if via g_variant_ref_sink().
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="command_line">
-<parameter_description> a command line 
-</parameter_description>
-</parameter>
-<parameter name="standard_output">
-<parameter_description> return location for child output
-</parameter_description>
-</parameter>
-<parameter name="standard_error">
-<parameter_description> return location for child errors
-</parameter_description>
-</parameter>
-<parameter name="exit_status">
-<parameter_description> return location for child exit status, as returned by waitpid()
+<parameter name="key">
+<parameter_description> a basic #GVariant, the key
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for errors
+<parameter name="value">
+<parameter_description> a #GVariant, the value
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE if an error was set
+<return> a floating reference to a new dictionary entry #GVariant
 </return>
 </function>
 
-<function name="g_test_suite_add_suite">
+<function name="g_variant_new_double">
 <description>
-Adds @nestedsuite to @suite.
+Creates a new double #GVariant instance.
 
-Since: 2.16
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="suite">
-<parameter_description>       a #GTestSuite
-</parameter_description>
-</parameter>
-<parameter name="nestedsuite">
-<parameter_description> another #GTestSuite
+<parameter name="value">
+<parameter_description> a #gdouble floating point value
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a floating reference to a new double #GVariant instance
+</return>
 </function>
 
-<function name="g_async_queue_timed_pop">
+<function name="g_variant_new_from_data">
 <description>
-Pops data from the @queue. If no data is received before @end_time,
-%NULL is returned.
+Creates a new #GVariant instance from serialised data.
 
-To easily calculate @end_time a combination of g_get_current_time()
-and g_time_val_add() can be used.
+ type is the type of #GVariant 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.
 
-</description>
-<parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
-</parameter_description>
-</parameter>
-<parameter name="end_time">
-<parameter_description> a #GTimeVal, determining the final time.
-</parameter_description>
-</parameter>
-</parameters>
-<return> data from the queue or %NULL, when no data is
-received before @end_time.
-</return>
-</function>
+If @data is trusted to be serialised data in normal form then
+ trusted should be %TRUE.  This applies to serialised 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.
 
-<function name="g_type_interface_get_plugin">
-<description>
-Returns the #GTypePlugin structure for the dynamic interface
- interface_type which has been added to @instance_type, or %NULL if
- interface_type has not been added to @instance_type or does not
-have a #GTypePlugin structure. See g_type_add_interface_dynamic().
+ 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.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="instance_type">
-<parameter_description> the #GType value of an instantiatable type.
-</parameter_description>
-</parameter>
-<parameter name="interface_type">
-<parameter_description> the #GType value of an interface type.
+<parameter name="type">
+<parameter_description> a definite #GVariantType
 </parameter_description>
 </parameter>
-</parameters>
-<return> the #GTypePlugin for the dynamic interface @interface_type
-of @instance_type.
-</return>
-</function>
-
-<function name="g_sequence_get_iter_at_pos">
-<description>
-Returns the iterator at position @pos. If @pos is negative or larger
-than the number of items in @seq, the end iterator is returned.
-
-Since: 2.14
-
-</description>
-<parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
+<parameter name="data">
+<parameter_description> the serialised data
 </parameter_description>
 </parameter>
-<parameter name="pos">
-<parameter_description> a position in @seq, or -1 for the end.
+<parameter name="size">
+<parameter_description> the size of @data
 </parameter_description>
 </parameter>
-</parameters>
-<return> The #GSequenceIter at position @pos
-
-</return>
-</function>
-
-<function name="g_mem_chunk_create">
-<description>
-A convenience macro for creating a new #GMemChunk. It calls
-g_mem_chunk_new(), using the given type to create the #GMemChunk
-name. The atom size is determined using
-&lt;function&gt;sizeof()&lt;/function&gt;, and the area size is calculated by
-multiplying the @pre_alloc parameter with the atom size.
-
-Deprecated:2.10: Use the &lt;link linkend=&quot;glib-Memory-Slices&quot;&gt;slice
-allocator&lt;/link&gt; instead
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> the type of the atoms, typically a structure name.
+<parameter name="trusted">
+<parameter_description> %TRUE if @data is definitely in normal form
 </parameter_description>
 </parameter>
-<parameter name="pre_alloc">
-<parameter_description> the number of atoms to store in each block of memory.
+<parameter name="notify">
+<parameter_description> function to call when @data is no longer needed
 </parameter_description>
 </parameter>
-<parameter name="alloc_type">
-<parameter_description> the type of the #GMemChunk.  #G_ALLOC_AND_FREE is used
-if the atoms will be freed individually.  #G_ALLOC_ONLY
-should be used if atoms will never be freed
-individually.  #G_ALLOC_ONLY is quicker, since it does
-not need to track free atoms, but it obviously wastes
-memory if you no longer need many of the atoms.
+<parameter name="user_data">
+<parameter_description> data for @notify
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GMemChunk.
+<return> a new floating #GVariant of type @type
 </return>
 </function>
 
-<function name="g_variant_builder_add_value">
+<function name="g_variant_new_handle">
 <description>
-Adds @value to @builder.
+Creates a new handle #GVariant instance.
 
-It is an error to call this function in any way that would create an
-inconsistent value to be constructed.  Some examples of this are
-putting different types of items into an array, putting the wrong
-types or number of items in a tuple, putting more than one value into
-a variant, etc.
+By convention, handles are indexes into an array of file descriptors
+that are sent alongside a DBus message.  If you're not interacting
+with DBus, you probably don't need them.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
-</parameter_description>
-</parameter>
 <parameter name="value">
-<parameter_description> a #GVariant
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_object_steal_qdata">
-<description>
-This function gets back user data pointers stored via
-g_object_set_qdata() and removes the @data from object
-without invoking its destroy() function (if any was
-set).
-Usually, calling this function is only required to update
-user data pointers with a destroy notifier, for example:
-|[
-void
-object_add_to_user_list (GObject     *object,
-const gchar *new_string)
-{
-// the quark, naming the object data
-GQuark quark_string_list = g_quark_from_static_string (&quot;my-string-list&quot;);
-// retrive the old string list
-GList *list = g_object_steal_qdata (object, quark_string_list);
-
-// prepend new string
-list = g_list_prepend (list, g_strdup (new_string));
-// this changed 'list', so we need to set it again
-g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
-}
-static void
-free_string_list (gpointer data)
-{
-GList *node, *list = data;
-
-for (node = list; node; node = node-&gt;next)
-g_free (node-&gt;data);
-g_list_free (list);
-}
-]|
-Using g_object_get_qdata() in the above example, instead of
-g_object_steal_qdata() would have left the destroy function set,
-and thus the partial string list would have been freed upon
-g_object_set_qdata_full().
-
-
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> The GObject to get a stored user data pointer from
-</parameter_description>
-</parameter>
-<parameter name="quark">
-<parameter_description> A #GQuark, naming the user data pointer
+<parameter_description> a #gint32 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> The user data pointer set, or %NULL
+<return> a floating reference to a new handle #GVariant instance
 </return>
 </function>
 
-<function name="g_atomic_int_exchange_and_add">
+<function name="g_variant_new_int16">
 <description>
-Atomically adds @val to the integer pointed to by @atomic.
-It returns the value of * atomic just before the addition
-took place. Also acts as a memory barrier.
+Creates a new int16 #GVariant instance.
 
-Since: 2.4
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="atomic">
-<parameter_description> a pointer to an integer
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> the value to add to * atomic
+<parameter name="value">
+<parameter_description> a #gint16 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value of * atomic before the addition.
-
+<return> a floating reference to a new int16 #GVariant instance
 </return>
 </function>
 
-<function name="g_object_new_valist">
+<function name="g_variant_new_int32">
 <description>
-Creates a new instance of a #GObject subtype and sets its properties.
-
-Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY)
-which are not explicitly specified are set to their default values.
+Creates a new int32 #GVariant instance.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="object_type">
-<parameter_description> the type id of the #GObject subtype to instantiate
-</parameter_description>
-</parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of the first property
-</parameter_description>
-</parameter>
-<parameter name="var_args">
-<parameter_description> the value of the first property, followed optionally by more
-name/value pairs, followed by %NULL
+<parameter name="value">
+<parameter_description> a #gint32 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new instance of @object_type
+<return> a floating reference to a new int32 #GVariant instance
 </return>
 </function>
 
-<function name="g_utf16_to_utf8">
+<function name="g_variant_new_int64">
 <description>
-Convert a string from UTF-16 to UTF-8. The result will be
-terminated with a 0 byte.
-
-Note that the input is expected to be already in native endianness,
-an initial byte-order-mark character is not handled specially.
-g_convert() can be used to convert a byte buffer of UTF-16 data of
-ambiguous endianess.
-
-Further note that this function does not validate the result
-string; it may e.g. include embedded NUL characters. The only
-validation done by this function is to ensure that the input can
-be correctly interpreted as UTF-16, i.e. it doesn't contain
-things unpaired surrogates.
+Creates a new int64 #GVariant instance.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a UTF-16 encoded string
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the maximum length (number of &lt;type&gt;gunichar2&lt;/type&gt;) of @str to use. 
-If @len &lt; 0, then the string is nul-terminated.
-</parameter_description>
-</parameter>
-<parameter name="items_read">
-<parameter_description> location to store number of words read, or %NULL.
-If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
-returned in case @str contains a trailing partial
-character. If an error occurs then the index of the
-invalid input is stored here.
-</parameter_description>
-</parameter>
-<parameter name="items_written">
-<parameter_description> location to store number of bytes written, or %NULL.
-The value stored here does not include the trailing
-0 byte.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store the error occuring, or %NULL to ignore
-errors. Any of the errors in #GConvertError other than
-%G_CONVERT_ERROR_NO_CONVERSION may occur.
+<parameter name="value">
+<parameter_description> a #gint64 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a newly allocated UTF-8 string.
-This value must be freed with g_free(). If an
-error occurs, %NULL will be returned and
- error set.
+<return> a floating reference to a new int64 #GVariant instance
 </return>
 </function>
 
-<function name="g_option_context_set_ignore_unknown_options">
+<function name="g_variant_new_maybe">
 <description>
-Sets whether to ignore unknown options or not. If an argument is 
-ignored, it is left in the @argv array after parsing. By default, 
-g_option_context_parse() treats unknown options as error.
-
-This setting does not affect non-option arguments (i.e. arguments 
-which don't start with a dash). But note that GOption cannot reliably
-determine whether a non-option belongs to a preceding unknown option.
+Depending on if @child is %NULL, either wraps @child inside of a
+maybe container or creates a Nothing instance for the given @type.
 
-Since: 2.6
+At least one of @child_type and @child must be non-%NULL.
+If @child_type is non-%NULL then it must be a definite type.
+If they are both non-%NULL then @child_type must be the type
+of @child.
 
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
-</parameter_description>
-</parameter>
-<parameter name="ignore_unknown">
-<parameter_description> %TRUE to ignore unknown options, %FALSE to produce
-an error when unknown options are met
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+If @child is a floating reference (see g_variant_ref_sink()), the new
+instance takes ownership of @child.
 
-<function name="g_value_register_transform_func">
-<description>
-Registers a value transformation function for use in g_value_transform().
-A previously registered transformation function for @src_type and @dest_type
-will be replaced.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="src_type">
-<parameter_description> Source type.
-</parameter_description>
-</parameter>
-<parameter name="dest_type">
-<parameter_description> Target type.
+<parameter name="child_type">
+<parameter_description> the #GVariantType of the child, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="transform_func">
-<parameter_description> a function which transforms values of type @src_type
-into value of type @dest_type
+<parameter name="child">
+<parameter_description> the child value, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a floating reference to a new #GVariant maybe instance
+</return>
 </function>
 
-<function name="g_object_ref">
+<function name="g_variant_new_object_path">
 <description>
-Increases the reference count of @object.
+Creates a DBus object path #GVariant with the contents of @string.
+ string must be a valid DBus object path.  Use
+g_variant_is_object_path() if you're not sure.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="object_path">
+<parameter_description> a normal C nul-terminated string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the same @object
+<return> a floating reference to a new object path #GVariant instance
 </return>
 </function>
 
-<function name="g_checksum_copy">
+<function name="g_variant_new_parsed">
 <description>
-Copies a #GChecksum. If @checksum has been closed, by calling
-g_checksum_get_string() or g_checksum_get_digest(), the copied
-checksum will be closed as well.
-
-Since: 2.16
-
-</description>
-<parameters>
-<parameter name="checksum">
-<parameter_description> the #GChecksum to copy
-</parameter_description>
-</parameter>
-</parameters>
-<return> the copy of the passed #GChecksum. Use g_checksum_free()
-when finished using it.
+Parses @format and returns the result.
 
-</return>
-</function>
+ format must be a text format #GVariant with one extension: at any
+point that a value may appear in the text, a '%' character followed
+by a GVariant format string (as per g_variant_new()) may appear.  In
+that case, the same arguments are collected from the argument list as
+g_variant_new() would have collected.
 
-<function name="g_test_log_set_fatal_handler">
-<description>
-Installs a non-error fatal log handler which can be
-used to decide whether log messages which are counted
-as fatal abort the program.
+Consider this simple example:
 
-The use case here is that you are running a test case
-that depends on particular libraries or circumstances
-and cannot prevent certain known critical or warning
-messages. So you install a handler that compares the
-domain and message to precisely not abort in such a case.
+&lt;informalexample&gt;&lt;programlisting&gt;
+g_variant_new_parsed (&quot;[('one', 1), ('two', %i), (%s, 3)]&quot;, 2, &quot;three&quot;);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
 
-Note that the handler is reset at the beginning of
-any test case, so you have to set it inside each test
-function which needs the special behavior.
+In the example, the variable argument parameters are collected and
+filled in as if they were part of the original string to produce the
+result of &lt;code&gt;[('one', 1), ('two', 2), ('three', 3)]&lt;/code&gt;.
 
-This handler has no effect on g_error messages.
+This function is intended only to be used with @format as a string
+literal.  Any parse error is fatal to the calling process.  If you
+want to parse data from untrusted sources, use g_variant_parse().
 
-Since: 2.22
+You may not use this function to return, unmodified, a single
+#GVariant pointer from the argument list.  ie: @format may not solely
+be anything along the lines of &quot;%*&quot;, &quot;%?&quot;, &quot;%r&quot;, or anything starting
+with &quot;%@&quot;.
 
 </description>
 <parameters>
-<parameter name="log_func">
-<parameter_description> the log handler function.
+<parameter name="format">
+<parameter_description> a text format #GVariant
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data passed to the log handler.
+<parameter name="Varargs">
+<parameter_description> arguments as per @format
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new floating #GVariant instance
+</return>
 </function>
 
-<function name="g_markup_collect_attributes">
+<function name="g_variant_new_parsed_va">
 <description>
-Collects the attributes of the element from the
-data passed to the #GMarkupParser start_element
-function, dealing with common error conditions
-and supporting boolean values.
-
-This utility function is not required to write
-a parser but can save a lot of typing.
-
-The @element_name, @attribute_names,
- attribute_values and @error parameters passed
-to the start_element callback should be passed
-unmodified to this function.
-
-Following these arguments is a list of
-&quot;supported&quot; attributes to collect.  It is an
-error to specify multiple attributes with the
-same name.  If any attribute not in the list
-appears in the @attribute_names array then an
-unknown attribute error will result.
-
-The #GMarkupCollectType field allows specifying
-the type of collection to perform and if a
-given attribute must appear or is optional.
-
-The attribute name is simply the name of the
-attribute to collect.
+Parses @format and returns the result.
 
-The pointer should be of the appropriate type
-(see the descriptions under
-#GMarkupCollectType) and may be %NULL in case a
-particular attribute is to be allowed but
-ignored.
+This is the version of g_variant_new_parsed() intended to be used
+from libraries.
 
-This function deals with issuing errors for missing attributes 
-(of type %G_MARKUP_ERROR_MISSING_ATTRIBUTE), unknown attributes 
-(of type %G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE) and duplicate 
-attributes (of type %G_MARKUP_ERROR_INVALID_CONTENT) as well 
-as parse errors for boolean-valued attributes (again of type
-%G_MARKUP_ERROR_INVALID_CONTENT). In all of these cases %FALSE 
-will be returned and @error will be set as appropriate.
+The return value will be floating if it was a newly created GVariant
+instance.  In the case that @format simply specified the collection
+of a #GVariant pointer (eg: @format was &quot;%*&quot;) then the collected
+#GVariant pointer will be returned unmodified, without adding any
+additional references.
 
-Since: 2.16
+In order to behave correctly in all cases it is necessary for the
+calling function to g_variant_ref_sink() the return result before
+returning control to the user that originally provided the pointer.
+At this point, the caller will have their own full reference to the
+result.  This can also be done by adding the result to a container,
+or by passing it to another g_variant_new() call.
 
 </description>
 <parameters>
-<parameter name="element_name">
-<parameter_description> the current tag name
-</parameter_description>
-</parameter>
-<parameter name="attribute_names">
-<parameter_description> the attribute names
-</parameter_description>
-</parameter>
-<parameter name="attribute_values">
-<parameter_description> the attribute values
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a pointer to a #GError or %NULL
-</parameter_description>
-</parameter>
-<parameter name="first_type">
-<parameter_description> the #GMarkupCollectType of the
-first attribute
-</parameter_description>
-</parameter>
-<parameter name="first_attr">
-<parameter_description> the name of the first attribute
+<parameter name="format">
+<parameter_description> a text format #GVariant
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a pointer to the storage location of the
-first attribute (or %NULL), followed by
-more types names and pointers, ending
-with %G_MARKUP_COLLECT_INVALID.
+<parameter name="app">
+<parameter_description> a pointer to a #va_list
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful
-
+<return> a new, usually floating, #GVariant
 </return>
 </function>
 
-<function name="g_io_channel_get_line_term">
+<function name="g_variant_new_signature">
 <description>
-This returns the string that #GIOChannel uses to determine
-where in the file a line break occurs. A value of %NULL
-indicates autodetection.
+Creates a DBus type signature #GVariant with the contents of
+ string   @string must be a valid DBus type signature.  Use
+g_variant_is_signature() if you're not sure.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> a location to return the length of the line terminator
+<parameter name="signature">
+<parameter_description> a normal C nul-terminated string
 </parameter_description>
 </parameter>
 </parameters>
-<return> The line termination string. This value
-is owned by GLib and must not be freed.
+<return> a floating reference to a new signature #GVariant instance
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__BOOLEAN">
+<function name="g_variant_new_string">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gboolean arg1, gpointer user_data)&lt;/literal&gt;.
-
-</description>
-<parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 2
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding the instance and the #gboolean parameter
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Creates a string #GVariant with the contents of @string.
 
-<function name="g_param_spec_get_name">
-<description>
-Get the name of a #GParamSpec.
+ string must be valid utf8.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="pspec">
-<parameter_description> a valid #GParamSpec
+<parameter name="string">
+<parameter_description> a normal utf8 nul-terminated string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of @pspec.
+<return> a floating reference to a new string #GVariant instance
 </return>
 </function>
 
-<function name="g_cclosure_marshal_VOID__VOID">
+<function name="g_variant_new_strv">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;void (*callback) (gpointer instance, gpointer user_data)&lt;/literal&gt;.
+Constructs an array of strings #GVariant from the given array of
+strings.
+
+If @length is -1 then @strv is %NULL-terminated.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> ignored
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 1
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding only the instance
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
+<parameter name="strv">
+<parameter_description> an array of strings
 </parameter_description>
 </parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="length">
+<parameter_description> the length of @strv, or -1
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new floating #GVariant instance
+</return>
 </function>
 
-<function name="g_basename">
+<function name="g_variant_new_tuple">
 <description>
-Gets the name of the file without any leading directory components.  
-It returns a pointer into the given file name string.
-
-Deprecated:2.2: Use g_path_get_basename() instead, but notice that
-g_path_get_basename() allocates new memory for the returned string, unlike
-this function which returns a pointer into the argument.
+Creates a new tuple #GVariant out of the items in @children.  The
+type is determined from the types of @children.  No entry in the
+ children array may be %NULL.
 
-</description>
-<parameters>
-<parameter name="file_name">
-<parameter_description> the name of the file.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the name of the file without any leading directory components.
+If @n_children is 0 then the unit tuple is constructed.
 
-</return>
-</function>
+If the @children are floating references (see g_variant_ref_sink()), the
+new instance takes ownership of them as if via g_variant_ref_sink().
 
-<function name="g_value_set_static_boxed">
-<description>
-Set the contents of a %G_TYPE_BOXED derived #GValue to @v_boxed.
-The boxed value is assumed to be static, and is thus not duplicated
-when setting the #GValue.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_BOXED derived type
+<parameter name="children">
+<parameter_description> the items to make the tuple out of
 </parameter_description>
 </parameter>
-<parameter name="v_boxed">
-<parameter_description> static boxed value to be set
+<parameter name="n_children">
+<parameter_description> the length of @children
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a floating reference to a new #GVariant tuple
+</return>
 </function>
 
-<function name="g_async_queue_try_pop_unlocked">
+<function name="g_variant_new_uint16">
 <description>
-Tries to pop data from the @queue. If no data is available, %NULL is
-returned. This function must be called while holding the @queue's
-lock.
+Creates a new uint16 #GVariant instance.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GAsyncQueue.
+<parameter name="value">
+<parameter_description> a #guint16 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> data from the queue or %NULL, when no data is
-available immediately.
+<return> a floating reference to a new uint16 #GVariant instance
 </return>
 </function>
 
-<function name="g_value_dup_boxed">
+<function name="g_variant_new_uint32">
 <description>
-Get the contents of a %G_TYPE_BOXED derived #GValue.  Upon getting,
-the boxed value is duplicated and needs to be later freed with
-g_boxed_free(), e.g. like: g_boxed_free (G_VALUE_TYPE (@value),
-return_value);
+Creates a new uint32 #GVariant instance.
 
+Since: 2.24
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> a valid #GValue of %G_TYPE_BOXED derived type
+<parameter_description> a #guint32 value
 </parameter_description>
 </parameter>
 </parameters>
-<return> boxed contents of @value
+<return> a floating reference to a new uint32 #GVariant instance
 </return>
 </function>
 
-<function name="g_node_reverse_children">
+<function name="g_variant_new_uint64">
 <description>
-Reverses the order of the children of a #GNode.
-(It doesn't change the order of the grandchildren.)
+Creates a new uint64 #GVariant instance.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode.
+<parameter name="value">
+<parameter_description> a #guint64 value
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a floating reference to a new uint64 #GVariant instance
+</return>
 </function>
 
-<function name="g_error_new">
+<function name="g_variant_new_va">
 <description>
-Creates a new #GError with the given @domain and @code,
-and a message formatted with @format.
+This function is intended to be used by libraries based on
+#GVariant that want to provide g_variant_new()-like functionality
+to their users.
 
+The API is more general than g_variant_new() to allow a wider range
+of possible uses.
 
-</description>
-<parameters>
-<parameter name="domain">
-<parameter_description> error domain
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> error code
-</parameter_description>
-</parameter>
-<parameter name="format">
-<parameter_description> printf()-style format for error message
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> parameters for message format
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GError
-</return>
-</function>
+ format_string must still point to a valid format string, but it only
+needs to be nul-terminated if @endptr is %NULL.  If @endptr is
+non-%NULL then it is updated to point to the first character past the
+end of the format string.
 
-<function name="g_poll">
-<description>
-Polls @fds, as with the poll() system call, but portably. (On
-systems that don't have poll(), it is emulated using select().)
-This is used internally by #GMainContext, but it can be called
-directly if you need to block until a file descriptor is ready, but
-don't want to run the full main loop.
+ app is a pointer to a #va_list.  The arguments, according to
+ format_string, are collected from this #va_list and the list is left
+pointing to the argument following the last.
 
-Each element of @fds is a #GPollFD describing a single file
-descriptor to poll. The %fd field indicates the file descriptor,
-and the %events field indicates the events to poll for. On return,
-the %revents fields will be filled with the events that actually
-occurred.
+These two generalisations allow mixing of multiple calls to
+g_variant_new_va() and g_variant_get_va() within a single actual
+varargs call by the user.
 
-On POSIX systems, the file descriptors in @fds can be any sort of
-file descriptor, but the situation is much more complicated on
-Windows. If you need to use g_poll() in code that has to run on
-Windows, the easiest solution is to construct all of your
-#GPollFD&lt;!-- --&gt;s with g_io_channel_win32_make_pollfd().
+The return value will be floating if it was a newly created GVariant
+instance (for example, if the format string was &quot;(ii)&quot;).  In the case
+that the format_string was '*', '?', 'r', or a format starting with
+'@' then the collected #GVariant pointer will be returned unmodified,
+without adding any additional references.
 
-Since: 2.20
+In order to behave correctly in all cases it is necessary for the
+calling function to g_variant_ref_sink() the return result before
+returning control to the user that originally provided the pointer.
+At this point, the caller will have their own full reference to the
+result.  This can also be done by adding the result to a container,
+or by passing it to another g_variant_new() call.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="fds">
-<parameter_description> file descriptors to poll
+<parameter name="format_string">
+<parameter_description> a string that is prefixed with a format string
 </parameter_description>
 </parameter>
-<parameter name="nfds">
-<parameter_description> the number of file descriptors in @fds
+<parameter name="endptr">
+<parameter_description> location to store the end pointer,
+or %NULL
 </parameter_description>
 </parameter>
-<parameter name="timeout">
-<parameter_description> amount of time to wait, in milliseconds, or -1 to wait forever
+<parameter name="app">
+<parameter_description> a pointer to a #va_list
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of entries in @fds whose %revents fields
-were filled in, or 0 if the operation timed out, or -1 on error or
-if the call was interrupted.
-
+<return> a new, usually floating, #GVariant
 </return>
 </function>
 
-<function name="g_relation_new">
+<function name="g_variant_new_variant">
 <description>
-Creates a new #GRelation with the given number of fields. Note that
-currently the number of fields must be 2.
+Boxes @value.  The result is a #GVariant instance representing a
+variant containing the original value.
 
-Deprecated: 2.26: Rarely used API
+If @child is a floating reference (see g_variant_ref_sink()), the new
+instance takes ownership of @child.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="fields">
-<parameter_description> the number of fields.
+<parameter name="value">
+<parameter_description> a #GVariance instance
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GRelation.
+<return> a floating reference to a new variant #GVariant instance
 </return>
 </function>
 
-<function name="g_regex_ref">
+<function name="g_variant_parse">
 <description>
-Increases reference count of @regex by 1.
+Parses a #GVariant from a text representation.
 
-Since: 2.14
+A single #GVariant is parsed from the content of @text.
 
-</description>
-<parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex
-</parameter_description>
-</parameter>
-</parameters>
-<return> @regex
+The format is described &lt;link linkend='gvariant-text'&gt;here&lt;/link&gt;.
 
-</return>
-</function>
+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 @text.
 
-<function name="g_sequence_sort_changed">
-<description>
-Moves the data pointed to a new position as indicated by @cmp_func. This
-function should be called for items in a sequence already sorted according
-to @cmp_func whenever some aspect of an item changes so that @cmp_func
-may return different values for that item.
+If @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 function.  If @endptr is %NULL and there is extra data
+then an error is returned.
 
-Since: 2.14
+If @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 #GVariant
+is returned.
+
+In case of any error, %NULL will be returned.  If @error is non-%NULL
+then it will be set to reflect the error that occured.
+
+Officially, the language understood by the parser is &quot;any string
+produced by g_variant_print()&quot;.
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> A #GSequenceIter
+<parameter name="type">
+<parameter_description> a #GVariantType, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="cmp_func">
-<parameter_description> the #GCompareDataFunc used to compare items in the sequence. It
-is called with two items of the @seq and @user_data. It should
-return 0 if the items are equal, a negative value if the first
-item comes before the second, and a positive value if the second
-item comes before the first.
+<parameter name="text">
+<parameter_description> a string containing a GVariant in text form
 </parameter_description>
 </parameter>
-<parameter name="cmp_data">
-<parameter_description> user data passed to @cmp_func.
+<parameter name="limit">
+<parameter_description> a pointer to the end of @text, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_string_ascii_up">
-<description>
-Converts all lower case ASCII letters to upper case ASCII letters.
-
-
-</description>
-<parameters>
-<parameter name="string">
-<parameter_description> a GString
+<parameter name="endptr">
+<parameter_description> a location to store the end pointer, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a pointer to a %NULL #GError pointer, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> passed-in @string pointer, with all the lower case
-characters converted to upper case in place, with
-semantics that exactly match g_ascii_toupper().
+<return> a reference to a #GVariant, or %NULL
 </return>
 </function>
 
-<function name="g_slist_last">
+<function name="g_variant_print">
 <description>
-Gets the last element in a #GSList.
+Pretty-prints @value in the format understood by g_variant_parse().
 
-&lt;note&gt;&lt;para&gt;
-This function iterates over the whole list.
-&lt;/para&gt;&lt;/note&gt;
+The format is described &lt;link linkend='gvariant-text'&gt;here&lt;/link&gt;.
 
+If @type_annotate is %TRUE, then type information is included in
+the output.
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GSList 
+<parameter name="value">
+<parameter_description> a #GVariant
+</parameter_description>
+</parameter>
+<parameter name="type_annotate">
+<parameter_description> %TRUE if type information should be included in
+the output
 </parameter_description>
 </parameter>
 </parameters>
-<return> the last element in the #GSList, 
-or %NULL if the #GSList has no elements
+<return> a newly-allocated string holding the result.
 </return>
 </function>
 
-<function name="g_thread_pool_get_max_threads">
+<function name="g_variant_print_string">
 <description>
-Returns the maximal number of threads for @pool.
+Behaves as g_variant_print(), but operates on a #GString.
 
+If @string is non-%NULL then it is appended to and returned.  Else,
+a new empty #GString is allocated and it is returned.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #GThreadPool
+<parameter name="value">
+<parameter_description> a #GVariant
+</parameter_description>
+</parameter>
+<parameter name="string">
+<parameter_description> a #GString, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="type_annotate">
+<parameter_description> %TRUE if type information should be included in
+the output
 </parameter_description>
 </parameter>
 </parameters>
-<return> the maximal number of threads
+<return> a #GString containing the string
 </return>
 </function>
 
-<function name="g_variant_builder_new">
+<function name="g_variant_ref">
 <description>
-Allocates and initialises a new #GVariantBuilder.
-
-You should call g_variant_builder_unref() on the return value when it
-is no longer needed.  The memory will not be automatically freed by
-any other call.
-
-In most cases it is easier to place a #GVariantBuilder directly on
-the stack of the calling function and initialise it with
-g_variant_builder_init().
+Increases the reference count of @value.
 
 Since: 2.24
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> a container type
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GVariantBuilder
+<return> the same @value
 </return>
 </function>
 
-<function name="g_test_trap_reached_timeout">
+<function name="g_variant_ref_sink">
 <description>
-Check the result of the last g_test_trap_fork() call.
-
-Since: 2.16
+#GVariant uses a floating reference count system.  All functions with
+names starting with &lt;literal&gt;g_variant_new_&lt;/literal&gt; return floating
+references.
 
-</description>
-<parameters>
-</parameters>
-<return> %TRUE if the last forked child got killed due to a fork timeout.
+Calling g_variant_ref_sink() on a #GVariant with a floating reference
+will convert the floating reference into a full reference.  Calling
+g_variant_ref_sink() on a non-floating #GVariant results in an
+additional normal reference being added.
 
-</return>
-</function>
+In other words, if the @value is floating, then this call &quot;assumes
+ownership&quot; of the floating reference, converting it to a normal
+reference.  If the @value is not floating, then this call adds a
+new normal reference increasing the reference count by one.
 
-<function name="g_cache_value_foreach">
-<description>
-Calls the given function for each of the values in the #GCache.
+All calls that result in a #GVariant instance being inserted into a
+container will call g_variant_ref_sink() on the instance.  This means
+that if the value was just created (and has only its floating
+reference) then the container will assume sole ownership of the value
+at that point and the caller will not need to unreference it.  This
+makes certain common styles of programming much easier while still
+maintaining normal refcounting semantics in situations where values
+are not floating.
 
-Deprecated:2.10: The reason is that it passes pointers to internal
-data structures to @func; use g_cache_key_foreach()
-instead
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="cache">
-<parameter_description> a #GCache.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call with each #GCache value.
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function.
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the same @value
+</return>
 </function>
 
-<function name="g_object_interface_list_properties">
+<function name="g_variant_store">
 <description>
-Lists the properties of an interface.Generally, the interface
-vtable passed in as @g_iface will be the default vtable from
-g_type_default_interface_ref(), or, if you know the interface has
-already been loaded, g_type_default_interface_peek().
+Stores the serialised form of @value at @data.  @data should be
+large enough.  See g_variant_get_size().
 
-Since: 2.4
+The stored data is in machine native byte order but may not be in
+fully-normalised form if read from an untrusted source.  See
+g_variant_get_normal_form() for a solution.
 
+This function is approximately O(n) in the size of @data.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="g_iface">
-<parameter_description> any interface vtable for the interface, or the default
-vtable for the interface
+<parameter name="value">
+<parameter_description> the #GVariant to store
 </parameter_description>
 </parameter>
-<parameter name="n_properties_p">
-<parameter_description> location to store number of properties returned.
+<parameter name="data">
+<parameter_description> the location to store the serialised data at
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to an array of pointers to #GParamSpec
-structures. The paramspecs are owned by GLib, but the
-array should be freed with g_free() when you are done with
-it.
-</return>
+<return></return>
 </function>
 
-<function name="g_timeout_add_full">
+<function name="g_variant_type_copy">
 <description>
-Sets a function to be called at regular intervals, with the given
-priority.  The function is called repeatedly until it returns
-%FALSE, at which point the timeout is automatically destroyed and
-the function will not be called again.  The @notify function is
-called when the timeout is destroyed.  The first call to the
-function will be at the end of the first @interval.
-
-Note that timeout functions may be delayed, due to the processing of other
-event sources. Thus they should not be relied on for precise timing.
-After each call to the timeout function, the time of the next
-timeout is recalculated based on the current time and the given interval
-(it does not try to 'catch up' time lost in delays).
-
-This internally creates a main loop source using g_timeout_source_new()
-and attaches it to the main loop context using g_source_attach(). You can
-do these steps manually if you need greater control.
+Makes a copy of a #GVariantType.  It is appropriate to call
+g_variant_type_free() on the return value.  @type may not be %NULL.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the timeout source. Typically this will be in
-the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
-</parameter_description>
-</parameter>
-<parameter name="interval">
-<parameter_description> the time between calls to the function, in milliseconds
-(1/1000ths of a second)
-</parameter_description>
-</parameter>
-<parameter name="function">
-<parameter_description> function to call
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description>     data to pass to @function
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description>   function to call when the timeout is removed, or %NULL
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> a new #GVariantType
 </return>
 </function>
 
-<function name="g_bit_trylock">
+<function name="g_variant_type_dup_string">
 <description>
-Sets the indicated @lock_bit in @address, returning %TRUE if
-successful.  If the bit is already set, returns %FALSE immediately.
-
-Attempting to lock on two different bits within the same integer is
-not supported.
-
-The value of the bit that is set is (1u &lt;&lt; @bit).  If @bit is not
-between 0 and 31 then the result is undefined.
-
-This function accesses @address atomically.  All other accesses to
- address must be atomic in order for this function to work
-reliably.
+Returns a newly-allocated copy of the type string corresponding to
+ type   The returned string is nul-terminated.  It is appropriate to
+call g_free() on the return value.
 
-Since: 2.24
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="address">
-<parameter_description> a pointer to an integer
-</parameter_description>
-</parameter>
-<parameter name="lock_bit">
-<parameter_description> a bit value between 0 and 31
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the lock was acquired
+<return> the corresponding type string
 </return>
 </function>
 
-<function name="g_unichar_iszerowidth">
+<function name="g_variant_type_element">
 <description>
-Determines if a given character typically takes zero width when rendered.
-The return value is %TRUE for all non-spacing and enclosing marks
-(e.g., combining accents), format characters, zero-width
-space, but not U+00AD SOFT HYPHEN.
+Determines the element type of an array or maybe type.
 
-A typical use of this function is with one of g_unichar_iswide() or
-g_unichar_iswide_cjk() to determine the number of cells a string occupies
-when displayed on a grid display (terminals).  However, note that not all
-terminals support zero-width rendering of zero-width marks.
+This function may only be used with array or maybe types.
 
-Since: 2.14
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="type">
+<parameter_description> an array or maybe #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the character has zero width
-
+<return> the element type of @type
 </return>
 </function>
 
-<function name="g_test_run">
+<function name="g_variant_type_equal">
 <description>
-Runs all tests under the toplevel suite which can be retrieved
-with g_test_get_root(). Similar to g_test_run_suite(), the test
-cases to be run are filtered according to
-test path arguments (-p &lt;replaceable&gt;testpath&lt;/replaceable&gt;) as 
-parsed by g_test_init().
-g_test_run_suite() or g_test_run() may only be called once
-in a program.
-
-Since: 2.16
-
-</description>
-<parameters>
-</parameters>
-<return> 0 on success
+Compares @type1 and @type2 for equality.
 
-</return>
-</function>
+Only returns %TRUE if the types are exactly equal.  Even if one type
+is an indefinite type and the other is a subtype of it, %FALSE will
+be returned if they are not exactly equal.  If you want to check for
+subtypes, use g_variant_type_is_subtype_of().
 
-<function name="g_list_position">
-<description>
-Gets the position of the given element 
-in the #GList (starting from 0).
+The argument types of @type1 and @type2 are only #gconstpointer to
+allow use with #GHashTable without function pointer casting.  For
+both arguments, a valid #GVariantType must be provided.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> a #GList
+<parameter name="type1">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
-<parameter name="llink">
-<parameter_description> an element in the #GList
+<parameter name="type2">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position of the element in the #GList, 
-or -1 if the element is not found
+<return> %TRUE if @type1 and @type2 are exactly equal
 </return>
 </function>
 
-<function name="g_ptr_array_new">
+<function name="g_variant_type_first">
 <description>
-Creates a new #GPtrArray with a reference count of 1.
+Determines the first item type of a tuple or dictionary entry
+type.
 
-</description>
-<parameters>
-</parameters>
-<return> the new #GPtrArray.
-</return>
-</function>
+This function may only be used with tuple or dictionary entry types,
+but must not be used with the generic tuple type
+%G_VARIANT_TYPE_TUPLE.
 
-<function name="g_strreverse">
-<description>
-Reverses all of the bytes in a string. For example, 
-&lt;literal&gt;g_strreverse (&quot;abcdef&quot;)&lt;/literal&gt; will result 
-in &quot;fedcba&quot;.
+In the case of a dictionary entry type, this returns the type of
+the key.
 
-Note that g_strreverse() doesn't work on UTF-8 strings 
-containing multibyte characters. For that purpose, use 
-g_utf8_strreverse().
+%NULL is returned in case of @type being %G_VARIANT_TYPE_UNIT.
 
+This call, together with g_variant_type_next() provides an iterator
+interface over tuple and dictionary entry types.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> the string to reverse 
+<parameter name="type">
+<parameter_description> a tuple or dictionary entry #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the same pointer passed in as @string
+<return> the first item type of @type, or %NULL
 </return>
 </function>
 
-<function name="g_tree_replace">
+<function name="g_variant_type_free">
 <description>
-Inserts a new key and value into a #GTree similar to g_tree_insert(). 
-The difference is that if the key already exists in the #GTree, it gets 
-replaced by the new key. If you supplied a @value_destroy_func when 
-creating the #GTree, the old value is freed using that function. If you 
-supplied a @key_destroy_func when creating the #GTree, the old key is 
-freed using that function. 
+Frees a #GVariantType that was allocated with
+g_variant_type_copy(), g_variant_type_new() or one of the container
+type constructor functions.
 
-The tree is automatically 'balanced' as new key/value pairs are added,
-so that the distance from the root to every leaf is as small as possible.
+In the case that @type is %NULL, this function does nothing.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
-</parameter_description>
-</parameter>
-<parameter name="key">
-<parameter_description> the key to insert.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value corresponding to the key.
+<parameter name="type">
+<parameter_description> a #GVariantType, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="g_node_find_child">
+<function name="g_variant_type_get_string_length">
 <description>
-Finds the first child of a #GNode with the given data.
+Returns the length of the type string corresponding to the given
+ type   This function must be used to determine the valid extent of
+the memory region returned by g_variant_type_peek_string().
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #GNode
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> which types of children are to be searched, one of 
-%G_TRAVERSE_ALL, %G_TRAVERSE_LEAVES and %G_TRAVERSE_NON_LEAVES
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the data to find
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the found child #GNode, or %NULL if the data is not found
+<return> the length of the corresponding type string
 </return>
 </function>
 
-<function name="g_closure_remove_invalidate_notifier">
+<function name="g_variant_type_hash">
 <description>
-Removes an invalidation notifier.
+Hashes @type.
 
-Notice that notifiers are automatically removed after they are run.
+The argument type of @type is only #gconstpointer to allow use with
+#GHashTable without function pointer casting.  A valid
+#GVariantType must be provided.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
-</parameter_description>
-</parameter>
-<parameter name="notify_data">
-<parameter_description> data which was passed to g_closure_add_invalidate_notifier()
-when registering @notify_func
-</parameter_description>
-</parameter>
-<parameter name="notify_func">
-<parameter_description> the callback function to remove
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the hash value
+</return>
 </function>
 
-<function name="g_cclosure_marshal_BOOLEAN__OBJECT_BOXED_BOXED">
+<function name="g_variant_type_is_array">
 <description>
-A marshaller for a #GCClosure with a callback of type
-&lt;literal&gt;gboolean (*callback) (gpointer instance, GBoxed *arg1, GBoxed *arg2, gpointer user_data)&lt;/literal&gt;.
+Determines if the given @type is an array type.  This is true if the
+type string for @type starts with an 'a'.
 
-Since: 2.26
+This function returns %TRUE for any indefinite type for which every
+definite subtype is an array type -- %G_VARIANT_TYPE_ARRAY, for
+example.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> the #GClosure to which the marshaller belongs
-</parameter_description>
-</parameter>
-<parameter name="return_value">
-<parameter_description> a #GValue, which can store the returned string
-</parameter_description>
-</parameter>
-<parameter name="n_param_values">
-<parameter_description> 3
-</parameter_description>
-</parameter>
-<parameter name="param_values">
-<parameter_description> a #GValue array holding instance, arg1 and arg2
-</parameter_description>
-</parameter>
-<parameter name="invocation_hint">
-<parameter_description> the invocation hint given as the last argument
-to g_closure_invoke()
-</parameter_description>
-</parameter>
-<parameter name="marshal_data">
-<parameter_description> additional data specified when registering the marshaller
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @type is an array type
+</return>
 </function>
 
-<function name="g_signal_override_class_closure">
+<function name="g_variant_type_is_basic">
 <description>
-Overrides the class closure (i.e. the default handler) for the given signal
-for emissions on instances of @instance_type. @instance_type must be derived
-from the type to which the signal belongs.
+Determines if the given @type is a basic type.
 
-See g_signal_chain_from_overridden() and
-g_signal_chain_from_overridden_handler() for how to chain up to the
-parent class closure from inside the overridden one.
+Basic types are booleans, bytes, integers, doubles, strings, object
+paths and signatures.
 
-</description>
-<parameters>
-<parameter name="signal_id">
-<parameter_description> the signal id
-</parameter_description>
-</parameter>
-<parameter name="instance_type">
-<parameter_description> the instance type on which to override the class closure
-for the signal.
-</parameter_description>
-</parameter>
-<parameter name="class_closure">
-<parameter_description> the closure.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Only a basic type may be used as the key of a dictionary entry.
 
-<function name="g_slist_concat">
-<description>
-Adds the second #GSList onto the end of the first #GSList.
-Note that the elements of the second #GSList are not copied.
-They are used directly.
+This function returns %FALSE for all indefinite types except
+%G_VARIANT_TYPE_BASIC.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="list1">
-<parameter_description> a #GSList
-</parameter_description>
-</parameter>
-<parameter name="list2">
-<parameter_description> the #GSList to add to the end of the first #GSList
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the start of the new #GSList
+<return> %TRUE if @type is a basic type
 </return>
 </function>
 
-<function name="g_ascii_strtoull">
+<function name="g_variant_type_is_container">
 <description>
-Converts a string to a #guint64 value.
-This function behaves like the standard strtoull() function
-does in the C locale. It does this without actually
-changing the current locale, since that would not be
-thread-safe.
+Determines if the given @type is a container type.
 
-This function is typically used when reading configuration
-files or other non-user input that should be locale independent.
-To handle input from the user you should normally use the
-locale-sensitive system strtoull() function.
+Container types are any array, maybe, tuple, or dictionary
+entry types plus the variant type.
 
-If the correct value would cause overflow, %G_MAXUINT64
-is returned, and %ERANGE is stored in %errno.  If the base is
-outside the valid range, zero is returned, and %EINVAL is stored
-in %errno.  If the string conversion fails, zero is returned, and
- endptr returns @nptr (if @endptr is non-%NULL).
+This function returns %TRUE for any indefinite type for which every
+definite subtype is a container -- %G_VARIANT_TYPE_ARRAY, for
+example.
 
-Since: 2.2
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="nptr">
-<parameter_description>    the string to convert to a numeric value.
-</parameter_description>
-</parameter>
-<parameter name="endptr">
-<parameter_description>  if non-%NULL, it returns the character after
-the last character used in the conversion.
-</parameter_description>
-</parameter>
-<parameter name="base">
-<parameter_description>    to be used for the conversion, 2..36 or 0
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #guint64 value or zero on error.
-
+<return> %TRUE if @type is a container type
 </return>
 </function>
 
-<function name="g_type_add_interface_dynamic">
+<function name="g_variant_type_is_definite">
 <description>
-Adds the dynamic @interface_type to @instantiable_type. The information
-contained in the #GTypePlugin structure pointed to by @plugin
-is used to manage the relationship.
+Determines if the given @type is definite (ie: not indefinite).
 
-</description>
-<parameters>
-<parameter name="instance_type">
-<parameter_description> the #GType value of an instantiable type.
-</parameter_description>
-</parameter>
-<parameter name="interface_type">
-<parameter_description> the #GType value of an interface type.
-</parameter_description>
-</parameter>
-<parameter name="plugin">
-<parameter_description> the #GTypePlugin structure to retrieve the #GInterfaceInfo from.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+A type is definite if its type string does not contain any indefinite
+type characters ('*', '?', or 'r').
 
-<function name="g_tree_ref">
-<description>
-Increments the reference count of @tree by one.  It is safe to call
-this function from any thread.
+A #GVariant instance may not have an indefinite type, so calling
+this function on the result of g_variant_get_type() will always
+result in %TRUE being returned.  Calling this function on an
+indefinite type like %G_VARIANT_TYPE_ARRAY, however, will result in
+%FALSE being returned.
 
-Since: 2.22
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="tree">
-<parameter_description> a #GTree.
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the passed in #GTree.
-
+<return> %TRUE if @type is definite
 </return>
 </function>
 
-<function name="g_timeout_source_new">
+<function name="g_variant_type_is_dict_entry">
 <description>
-Creates a new timeout source.
+Determines if the given @type is a dictionary entry type.  This is
+true if the type string for @type starts with a '{'.
 
-The source will not initially be associated with any #GMainContext
-and must be added to one with g_source_attach() before it will be
-executed.
+This function returns %TRUE for any indefinite type for which every
+definite subtype is a dictionary entry type --
+%G_VARIANT_TYPE_DICT_ENTRY, for example.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> the timeout interval in milliseconds.
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly-created timeout source
+<return> %TRUE if @type is a dictionary entry type
 </return>
 </function>
 
-<function name="g_main_context_get_poll_func">
+<function name="g_variant_type_is_maybe">
 <description>
-Gets the poll function set by g_main_context_set_poll_func().
+Determines if the given @type is a maybe type.  This is true if the
+type string for @type starts with an 'm'.
+
+This function returns %TRUE for any indefinite type for which every
+definite subtype is a maybe type -- %G_VARIANT_TYPE_MAYBE, for
+example.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GMainContext
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the poll function
+<return> %TRUE if @type is a maybe type
 </return>
 </function>
 
-<function name="g_array_set_size">
+<function name="g_variant_type_is_subtype_of">
 <description>
-Sets the size of the array, expanding it if necessary. If the array
-was created with @clear_ set to %TRUE, the new elements are set to 0.
+Checks if @type is a subtype of @supertype.
+
+This function returns %TRUE if @type is a subtype of @supertype.  All
+types are considered to be subtypes of themselves.  Aside from that,
+only indefinite types can have subtypes.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> the new size of the #GArray.
+<parameter name="supertype">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GArray.
+<return> %TRUE if @type is a subtype of @supertype
 </return>
 </function>
 
-<function name="g_unichar_toupper">
+<function name="g_variant_type_is_tuple">
 <description>
-Converts a character to uppercase.
+Determines if the given @type is a tuple type.  This is true if the
+type string for @type starts with a '(' or if @type is
+%G_VARIANT_TYPE_TUPLE.
+
+This function returns %TRUE for any indefinite type for which every
+definite subtype is a tuple type -- %G_VARIANT_TYPE_TUPLE, for
+example.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the result of converting @c to uppercase.
-If @c is not an lowercase or titlecase character,
-or has no upper case equivalent @c is returned unchanged.
+<return> %TRUE if @type is a tuple type
 </return>
 </function>
 
-<function name="g_byte_array_prepend">
+<function name="g_variant_type_is_variant">
 <description>
-Adds the given data to the start of the #GByteArray. The array will
-grow in size automatically if necessary.
+Determines if the given @type is the variant type.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GByteArray.
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> the byte data to be added.
-</parameter_description>
-</parameter>
-<parameter name="len">
-<parameter_description> the number of bytes to add.
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GByteArray.
+<return> %TRUE if @type is the variant type
 </return>
 </function>
 
-<function name="g_param_spec_internal">
+<function name="g_variant_type_key">
 <description>
-Creates a new #GParamSpec instance.
-
-A property name consists of segments consisting of ASCII letters and
-digits, separated by either the '-' or '_' character. The first
-character of a property name must be a letter. Names which violate these
-rules lead to undefined behaviour.
-
-When creating and looking up a #GParamSpec, either separator can be
-used, but they cannot be mixed. Using '-' is considerably more
-efficient and in fact required when using property names as detail
-strings for signals.
+Determines the key type of a dictionary entry type.
 
-Beyond the name, #GParamSpec&lt;!-- --&gt;s have two more descriptive
-strings associated with them, the @nick, which should be suitable
-for use as a label for the property in a property editor, and the
- blurb, which should be a somewhat longer description, suitable for
-e.g. a tooltip. The @nick and @blurb should ideally be localized.
+This function may only be used with a dictionary entry type.  Other
+than the additional restriction, this call is equivalent to
+g_variant_type_first().
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="param_type">
-<parameter_description> the #GType for the property; must be derived from #G_TYPE_PARAM
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the canonical name of the property
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> the nickname of the property
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> a short description of the property
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> a combination of #GParamFlags
+<parameter name="type">
+<parameter_description> a dictionary entry #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GParamSpec instance
+<return> the key type of the dictionary entry
 </return>
 </function>
 
-<function name="g_io_channel_set_line_term">
+<function name="g_variant_type_n_items">
 <description>
-This sets the string that #GIOChannel uses to determine
-where in the file a line break occurs.
+Determines the number of items contained in a tuple or
+dictionary entry type.
 
-</description>
-<parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="line_term">
-<parameter_description> The line termination string. Use %NULL for autodetect.
-Autodetection breaks on &quot;\n&quot;, &quot;\r\n&quot;, &quot;\r&quot;, &quot;\0&quot;, and
-the Unicode paragraph separator. Autodetection should
-not be used for anything other than file-based channels.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> The length of the termination string. If -1 is passed, the
-string is assumed to be nul-terminated. This option allows
-termination strings with embedded nuls.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+This function may only be used with tuple or dictionary entry types,
+but must not be used with the generic tuple type
+%G_VARIANT_TYPE_TUPLE.
 
-<function name="g_boxed_free">
-<description>
-Free the boxed structure @boxed which is of type @boxed_type.
+In the case of a dictionary entry type, this function will always
+return 2.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="boxed_type">
-<parameter_description> The type of @boxed.
-</parameter_description>
-</parameter>
-<parameter name="boxed">
-<parameter_description> The boxed structure to be freed.
+<parameter name="type">
+<parameter_description> a tuple or dictionary entry #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of items in @type
+</return>
 </function>
 
-<function name="g_sequence_get_begin_iter">
+<function name="g_variant_type_new">
 <description>
-Returns the begin iterator for @seq.
+Creates a new #GVariantType corresponding to the type string given
+by @type_string.  It is appropriate to call g_variant_type_free() on
+the return value.
 
-Since: 2.14
+It is a programmer error to call this function with an invalid type
+string.  Use g_variant_type_string_is_valid() if you are unsure.
+
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="seq">
-<parameter_description> a #GSequence
+<parameter name="type_string">
+<parameter_description> a valid GVariant type string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the begin iterator for @seq.
-
+<return> a new #GVariantType
 </return>
 </function>
 
-<function name="g_type_register_dynamic">
+<function name="g_variant_type_new_array">
 <description>
-Registers @type_name as the name of a new dynamic type derived from
- parent_type   The type system uses the information contained in the
-#GTypePlugin structure pointed to by @plugin to manage the type and its
-instances (if not abstract).  The value of @flags determines the nature
-(e.g. abstract or not) of the type.
+Constructs the type corresponding to an array of elements of the
+type @type.
 
+It is appropriate to call g_variant_type_free() on the return value.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="parent_type">
-<parameter_description> Type from which this type will be derived.
-</parameter_description>
-</parameter>
-<parameter name="type_name">
-<parameter_description> 0-terminated string used as the name of the new type.
-</parameter_description>
-</parameter>
-<parameter name="plugin">
-<parameter_description> The #GTypePlugin structure to retrieve the #GTypeInfo from.
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> Bitwise combination of #GTypeFlags values.
+<parameter name="element">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> The new type identifier or #G_TYPE_INVALID if registration failed.
+<return> a new array #GVariantType
 </return>
 </function>
 
-<function name="g_option_context_set_translate_func">
+<function name="g_variant_type_new_dict_entry">
 <description>
-Sets the function which is used to translate the contexts 
-user-visible strings, for &lt;option&gt;--help&lt;/option&gt; output. 
-If @func is %NULL, strings are not translated.
-
-Note that option groups have their own translation functions, 
-this function only affects the @parameter_string (see g_option_context_new()), 
-the summary (see g_option_context_set_summary()) and the description 
-(see g_option_context_set_description()).
+Constructs the type corresponding to a dictionary entry with a key
+of type @key and a value of type @value.
 
-If you are using gettext(), you only need to set the translation
-domain, see g_option_context_set_translation_domain().
+It is appropriate to call g_variant_type_free() on the return value.
 
-Since: 2.12
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GOptionContext
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the #GTranslateFunc, or %NULL 
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> user data to pass to @func, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="destroy_notify">
-<parameter_description> a function which gets called to free @data, or %NULL
+<parameter name="key">
+<parameter_description> a basic #GVariantType
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_io_channel_get_buffer_condition">
-<description>
-This function returns a #GIOCondition depending on whether there
-is data to be read/space to write data in the internal buffers in 
-the #GIOChannel. Only the flags %G_IO_IN and %G_IO_OUT may be set.
-
-
-</description>
-<parameters>
-<parameter name="channel">
-<parameter_description> A #GIOChannel
+<parameter name="value">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #GIOCondition
+<return> a new dictionary entry #GVariantType
 </return>
 </function>
 
-<function name="g_variant_type_equal">
+<function name="g_variant_type_new_maybe">
 <description>
-Compares @type1 and @type2 for equality.
-
-Only returns %TRUE if the types are exactly equal.  Even if one type
-is an indefinite type and the other is a subtype of it, %FALSE will
-be returned if they are not exactly equal.  If you want to check for
-subtypes, use g_variant_type_is_subtype_of().
+Constructs the type corresponding to a maybe instance containing
+type @type or Nothing.
 
-The argument types of @type1 and @type2 are only #gconstpointer to
-allow use with #GHashTable without function pointer casting.  For
-both arguments, a valid #GVariantType must be provided.
+It is appropriate to call g_variant_type_free() on the return value.
 
 Since 2.24
 
 </description>
 <parameters>
-<parameter name="type1">
-<parameter_description> a #GVariantType
-</parameter_description>
-</parameter>
-<parameter name="type2">
+<parameter name="element">
 <parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @type1 and @type2 are exactly equal
+<return> a new maybe #GVariantType
 </return>
 </function>
 
-<function name="g_sequence_iter_move">
+<function name="g_variant_type_new_tuple">
 <description>
-Returns the #GSequenceIter which is @delta positions away from @iter.
-If @iter is closer than - delta positions to the beginning of the sequence,
-the begin iterator is returned. If @iter is closer than @delta positions
-to the end of the sequence, the end iterator is returned.
+Constructs a new tuple type, from @items.
 
-Since: 2.14
+ length is the number of items in @items, or -1 to indicate that
+ items is %NULL-terminated.
+
+It is appropriate to call g_variant_type_free() on the return value.
+
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GSequenceIter
+<parameter name="items">
+<parameter_description> an array of #GVariantTypes, one for each item
 </parameter_description>
 </parameter>
-<parameter name="delta">
-<parameter_description> A positive or negative number indicating how many positions away
-from @iter the returned #GSequenceIter will be.
+<parameter name="length">
+<parameter_description> the length of @items, or -1
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSequenceIter which is @delta positions away from @iter.
-
+<return> a new tuple #GVariantType
 </return>
 </function>
 
-<function name="g_get_charset">
+<function name="g_variant_type_next">
 <description>
-Obtains the character set for the &lt;link linkend=&quot;setlocale&quot;&gt;current 
-locale&lt;/link&gt;; you might use this character set as an argument to 
-g_convert(), to convert from the current locale's encoding to some 
-other encoding. (Frequently g_locale_to_utf8() and g_locale_from_utf8()
-are nice shortcuts, though.)
+Determines the next item type of a tuple or dictionary entry
+type.
 
-On Windows the character set returned by this function is the
-so-called system default ANSI code-page. That is the character set
-used by the &quot;narrow&quot; versions of C library and Win32 functions that
-handle file names. It might be different from the character set
-used by the C library's current locale.
+ type must be the result of a previous call to
+g_variant_type_first() or g_variant_type_next().
 
-The return value is %TRUE if the locale's encoding is UTF-8, in that
-case you can perhaps avoid calling g_convert().
+If called on the key type of a dictionary entry then this call
+returns the value type.  If called on the value type of a dictionary
+entry then this call returns %NULL.
 
-The string returned in @charset is not allocated, and should not be
-freed.
+For tuples, %NULL is returned when @type is the last item in a tuple.
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="charset">
-<parameter_description> return location for character set name
+<parameter name="type">
+<parameter_description> a #GVariantType from a previous call
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the returned charset is UTF-8
+<return> the next #GVariantType after @type, or %NULL
 </return>
 </function>
 
-<function name="g_object_thaw_notify">
+<function name="g_variant_type_peek_string">
 <description>
-Reverts the effect of a previous call to
-g_object_freeze_notify(). The freeze count is decreased on @object
-and when it reaches zero, all queued &quot;notify&quot; signals are emitted.
-
-It is an error to call this function when the freeze count is zero.
-
-</description>
-<parameters>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Returns the type string corresponding to the given @type.  The
+result is not nul-terminated; in order to determine its length you
+must call g_variant_type_get_string_length().
 
-<function name="g_queue_is_empty">
-<description>
-Returns %TRUE if the queue is empty.
+To get a nul-terminated string, see g_variant_type_dup_string().
 
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="queue">
-<parameter_description> a #GQueue.
+<parameter name="type">
+<parameter_description> a #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the queue is empty.
+<return> the corresponding type string (not nul-terminated)
 </return>
 </function>
 
-<function name="g_test_queue_destroy">
+<function name="g_variant_type_string_is_valid">
 <description>
-This function enqueus a callback @destroy_func() to be executed
-during the next test case teardown phase. This is most useful
-to auto destruct allocted test resources at the end of a test run.
-Resources are released in reverse queue order, that means enqueueing
-callback A before callback B will cause B() to be called before
-A() during teardown.
+Checks if @type_string is a valid GVariant type string.  This call is
+equivalent to calling g_variant_type_string_scan() and confirming
+that the following character is a nul terminator.
 
-Since: 2.16
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="destroy_func">
-<parameter_description>       Destroy callback for teardown phase.
-</parameter_description>
-</parameter>
-<parameter name="destroy_data">
-<parameter_description>       Destroy callback data.
+<parameter name="type_string">
+<parameter_description> a pointer to any string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if @type_string is exactly one valid type string
+</return>
 </function>
 
-<function name="g_regex_get_string_number">
+<function name="g_variant_type_string_scan">
 <description>
-Retrieves the number of the subexpression named @name.
+Scan for a single complete and valid GVariant type string in @string.
+The memory pointed to by @limit (or bytes beyond it) is never
+accessed.
 
-Since: 2.14
+If a valid type string is found, @endptr is updated to point to the
+first character past the end of the string that was found and %TRUE
+is returned.
 
-</description>
-<parameters>
-<parameter name="regex">
-<parameter_description> #GRegex structure
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name of the subexpression
-</parameter_description>
-</parameter>
-</parameters>
-<return> The number of the subexpression or -1 if @name
-does not exists
+If there is no valid type string starting at @string, or if the type
+string does not end before @limit then %FALSE is returned.
 
-</return>
-</function>
+For the simple case of checking if a string is a valid type string,
+see g_variant_type_string_is_valid().
 
-<function name="g_array_sort_with_data">
-<description>
-Like g_array_sort(), but the comparison function receives an extra
-user data argument.
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GArray.
+<parameter name="string">
+<parameter_description> a pointer to any string
 </parameter_description>
 </parameter>
-<parameter name="compare_func">
-<parameter_description> comparison function.
+<parameter name="limit">
+<parameter_description> the end of @string, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to pass to @compare_func.
+<parameter name="endptr">
+<parameter_description> location to store the end pointer, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if a valid type string was found
+</return>
 </function>
 
-<function name="g_variant_n_children">
+<function name="g_variant_type_value">
 <description>
-Determines the number of children in a container #GVariant instance.
-This includes variants, maybes, arrays, tuples and dictionary
-entries.  It is an error to call this function on any other type of
-#GVariant.
-
-For variants, the return value is always 1.  For values with maybe
-types, it is always zero or one.  For arrays, it is the length of the
-array.  For tuples it is the number of tuple items (which depends
-only on the type).  For dictionary entries, it is always 2
+Determines the value type of a dictionary entry type.
 
-This function is O(1).
+This function may only be used with a dictionary entry type.
 
-Since: 2.24
+Since 2.24
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a container #GVariant
+<parameter name="type">
+<parameter_description> a dictionary entry #GVariantType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of children in the container
+<return> the value type of the dictionary entry
 </return>
 </function>
 
-<function name="g_unichar_istitle">
+<function name="g_variant_unref">
 <description>
-Determines if a character is titlecase. Some characters in
-Unicode which are composites, such as the DZ digraph
-have three case variants instead of just two. The titlecase
-form is used at the beginning of a word where only the
-first letter is capitalized. The titlecase form of the DZ
-digraph is U+01F2 LATIN CAPITAL LETTTER D WITH SMALL LETTER Z.
+Decreases the reference count of @value.  When its reference count
+drops to 0, the memory used by the variant is freed.
 
+Since: 2.24
 
 </description>
 <parameters>
-<parameter name="c">
-<parameter_description> a Unicode character
+<parameter name="value">
+<parameter_description> a #GVariant
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the character is titlecase
-</return>
+<return></return>
 </function>
 
-<function name="g_io_channel_write_chars">
+<function name="g_vasprintf">
 <description>
-Replacement for g_io_channel_write() with the new API.
-
-On seekable channels with encodings other than %NULL or UTF-8, generic
-mixing of reading and writing is not allowed. A call to g_io_channel_write_chars ()
-may only be made on a channel from which data has been read in the
-cases described in the documentation for g_io_channel_set_encoding ().
+An implementation of the GNU vasprintf() function which supports 
+positional parameters, as specified in the Single Unix Specification.
+This function is similar to g_vsprintf(), except that it allocates a 
+string to hold the output, instead of putting the output in a buffer 
+you allocate in advance.
 
+Since: 2.4
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
-</parameter_description>
-</parameter>
-<parameter name="buf">
-<parameter_description> a buffer to write data from
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> the size of the buffer. If -1, the buffer
-is taken to be a nul-terminated string.
+<parameter name="string">
+<parameter_description> the return location for the newly-allocated string.
 </parameter_description>
 </parameter>
-<parameter name="bytes_written">
-<parameter_description> The number of bytes written. This can be nonzero
-even if the return value is not %G_IO_STATUS_NORMAL.
-If the return value is %G_IO_STATUS_NORMAL and the
-channel is blocking, this will always be equal
-to @count if @count &gt;= 0.
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a location to return an error of type #GConvertError
-or #GIOChannelError
+<parameter name="args">
+<parameter_description> the list of arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the status of the operation.
+<return> the number of bytes printed.
+
 </return>
 </function>
 
-<function name="g_source_get_can_recurse">
+<function name="g_vfprintf">
 <description>
-Checks whether a source is allowed to be called recursively.
-see g_source_set_can_recurse().
+An implementation of the standard fprintf() function which supports 
+positional parameters, as specified in the Single Unix Specification.
 
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="source">
-<parameter_description> a #GSource
+<parameter name="file">
+<parameter_description> the stream to write to.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice 
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
+</parameter_description>
+</parameter>
+<parameter name="args">
+<parameter_description> the list of arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether recursion is allowed.
+<return> the number of bytes printed.
+
 </return>
 </function>
 
-<function name="g_variant_builder_clear">
+<function name="g_vprintf">
 <description>
-Releases all memory associated with a #GVariantBuilder without
-freeing the #GVariantBuilder structure itself.
-
-It typically only makes sense to do this on a stack-allocated
-#GVariantBuilder if you want to abort building the value part-way
-through.  This function need not be called if you call
-g_variant_builder_end() and it also doesn't need to be called on
-builders allocated with g_variant_builder_new (see
-g_variant_builder_free() for that).
-
-This function leaves the #GVariantBuilder structure set to all-zeros.
-It is valid to call this function on either an initialised
-#GVariantBuilder or one that is set to all-zeros but it is not valid
-to call this function on uninitialised memory.
+An implementation of the standard vprintf() function which supports 
+positional parameters, as specified in the Single Unix Specification.
 
-Since: 2.24
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="builder">
-<parameter_description> a #GVariantBuilder
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice 
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="g_tree_new">
-<description>
-Creates a new #GTree.
-
-
-</description>
-<parameters>
-<parameter name="key_compare_func">
-<parameter_description> the function used to order the nodes in the #GTree.
-It should return values similar to the standard strcmp() function -
-0 if the two arguments are equal, a negative value if the first argument 
-comes before the second, or a positive value if the first argument comes 
-after the second.
+<parameter name="args">
+<parameter_description> the list of arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GTree.
+<return> the number of bytes printed.
+
 </return>
 </function>
 
-<function name="g_param_spec_object">
+<function name="g_vsnprintf">
 <description>
-Creates a new #GParamSpecBoxed instance specifying a %G_TYPE_OBJECT
-derived property.
+A safer form of the standard vsprintf() function. The output is guaranteed
+to not exceed @n characters (including the terminating nul character), so 
+it is easy to ensure that a buffer overflow cannot occur.
+
+See also g_strdup_vprintf().
+
+In versions of GLib prior to 1.2.3, this function may return -1 if the 
+output was truncated, and the truncated string may not be nul-terminated.
+In versions prior to 1.3.12, this function returns the length of the output 
+string.
+
+The return value of g_vsnprintf() conforms to the vsnprintf() function 
+as standardized in ISO C99. Note that this is different from traditional 
+vsnprintf(), which returns the length of the output string.
 
-See g_param_spec_internal() for details on property names.
+The format string may contain positional parameters, as specified in 
+the Single Unix Specification.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
+<parameter name="string">
+<parameter_description> the buffer to hold the output.
 </parameter_description>
 </parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
+<parameter name="n">
+<parameter_description> the maximum number of bytes to produce (including the 
+terminating nul character).
 </parameter_description>
 </parameter>
-<parameter name="object_type">
-<parameter_description> %G_TYPE_OBJECT derived type of this property
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice 
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="args">
+<parameter_description> the list of arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> the number of bytes which would be produced if the buffer 
+was large enough.
 </return>
 </function>
 
-<function name="g_timeout_add">
+<function name="g_vsprintf">
 <description>
-Sets a function to be called at regular intervals, with the default
-priority, #G_PRIORITY_DEFAULT.  The function is called repeatedly
-until it returns %FALSE, at which point the timeout is automatically
-destroyed and the function will not be called again.  The first call
-to the function will be at the end of the first @interval.
-
-Note that timeout functions may be delayed, due to the processing of other
-event sources. Thus they should not be relied on for precise timing.
-After each call to the timeout function, the time of the next
-timeout is recalculated based on the current time and the given interval
-(it does not try to 'catch up' time lost in delays).
-
-If you want to have a timer in the &quot;seconds&quot; range and do not care
-about the exact time of the first call of the timer, use the
-g_timeout_add_seconds() function; this function allows for more
-optimizations and more efficient system power usage.
-
-This internally creates a main loop source using g_timeout_source_new()
-and attaches it to the main loop context using g_source_attach(). You can
-do these steps manually if you need greater control.
+An implementation of the standard vsprintf() function which supports 
+positional parameters, as specified in the Single Unix Specification.
 
+Since: 2.2
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> the time between calls to the function, in milliseconds
-(1/1000ths of a second)
+<parameter name="string">
+<parameter_description> the buffer to hold the output.
 </parameter_description>
 </parameter>
-<parameter name="function">
-<parameter_description> function to call
+<parameter name="format">
+<parameter_description> a standard printf() format string, but notice 
+&lt;link linkend=&quot;string-precision&quot;&gt;string precision pitfalls&lt;/link&gt;.
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description>     data to pass to @function
+<parameter name="args">
+<parameter_description> the list of arguments to insert in the output.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> the number of bytes printed.
+
 </return>
 </function>
 
-<function name="g_mapped_file_get_length">
+<function name="g_win32_error_message">
 <description>
-Returns the length of the contents of a #GMappedFile.
+Translate a Win32 error code (as returned by GetLastError()) into
+the corresponding message. The message is either language neutral,
+or in the thread's language, or the user's language, the system's
+language, or US English (see docs for FormatMessage()). The
+returned string is in UTF-8. It should be deallocated with
+g_free().
 
-Since: 2.8
 
 </description>
 <parameters>
-<parameter name="file">
-<parameter_description> a #GMappedFile
+<parameter name="error">
+<parameter_description> error code.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of the contents of @file.
-
+<return> newly-allocated error message
 </return>
 </function>
 
-<function name="g_param_spec_string">
+<function name="g_win32_get_package_installation_directory">
 <description>
-Creates a new #GParamSpecString instance.
+Try to determine the installation directory for a software package.
+
+This function is deprecated. Use
+g_win32_get_package_installation_directory_of_module() instead.
+
+The use of @package is deprecated. You should always pass %NULL. A
+warning is printed if non-NULL is passed as @package.
+
+The original intended use of @package was for a short identifier of
+the package, typically the same identifier as used for
+&lt;literal&gt;GETTEXT_PACKAGE&lt;/literal&gt; in software configured using GNU
+autotools. The function first looks in the Windows Registry for the
+value &lt;literal&gt;&#35;InstallationDirectory&lt;/literal&gt; in the key
+&lt;literal&gt;&#35;HKLM\Software\ package&lt;/literal&gt;, and if that value
+exists and is a string, returns that.
 
-See g_param_spec_internal() for details on property names.
+It is strongly recommended that packagers of GLib-using libraries
+for Windows do not store installation paths in the Registry to be
+used by this function as that interfers with having several
+parallel installations of the library. Enabling multiple
+installations of different versions of some GLib-using library, or
+GLib itself, is desirable for various reasons.
 
+For this reason it is recommeded to always pass %NULL as
+ package to this function, to avoid the temptation to use the
+Registry. In version 2.20 of GLib the @package parameter
+will be ignored and this function won't look in the Registry at all.
+
+If @package is %NULL, or the above value isn't found in the
+Registry, but @dll_name is non-%NULL, it should name a DLL loaded
+into the current process. Typically that would be the name of the
+DLL calling this function, looking for its installation
+directory. The function then asks Windows what directory that DLL
+was loaded from. If that directory's last component is &quot;bin&quot; or
+&quot;lib&quot;, the parent directory is returned, otherwise the directory
+itself. If that DLL isn't loaded, the function proceeds as if
+ dll_name was %NULL.
+
+If both @package and @dll_name are %NULL, the directory from where
+the main executable of the process was loaded is used instead in
+the same way as above.
+
+Deprecated: 2.18: Pass the HMODULE of a DLL or EXE to
+g_win32_get_package_installation_directory_of_module() instead.
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> canonical name of the property specified
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> nick name for the property specified
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description of the property specified
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value for the property specified
+<parameter name="package">
+<parameter_description> You should pass %NULL for this.
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the property specified
+<parameter name="dll_name">
+<parameter_description> The name of a DLL that a package provides in UTF-8, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created parameter specification
+<return> a string containing the installation directory for
+ package  The string is in the GLib file name encoding,
+i.e. UTF-8. The return value should be freed with g_free() when not
+needed any longer. If the function fails %NULL is returned.
+
 </return>
 </function>
 
-<function name="g_test_rand_double_range">
+<function name="g_win32_get_package_installation_directory_of_module">
 <description>
-Get a reproducible random floating pointer number out of a specified range,
-see g_test_rand_int() for details on test case random numbers.
+This function tries to determine the installation directory of a
+software package based on the location of a DLL of the software
+package.
+
+ hmodule should be the handle of a loaded DLL or %NULL. The
+function looks up the directory that DLL was loaded from. If
+ hmodule is NULL, the directory the main executable of the current
+process is looked up. If that directory's last component is &quot;bin&quot;
+or &quot;lib&quot;, its parent directory is returned, otherwise the directory
+itself.
+
+It thus makes sense to pass only the handle to a &quot;public&quot; DLL of a
+software package to this function, as such DLLs typically are known
+to be installed in a &quot;bin&quot; or occasionally &quot;lib&quot; subfolder of the
+installation folder. DLLs that are of the dynamically loaded module
+or plugin variety are often located in more private locations
+deeper down in the tree, from which it is impossible for GLib to
+deduce the root of the package installation.
+
+The typical use case for this function is to have a DllMain() that
+saves the handle for the DLL. Then when code in the DLL needs to
+construct names of files in the installation tree it calls this
+function passing the DLL handle.
 
 Since: 2.16
 
 </description>
 <parameters>
-<parameter name="range_start">
-<parameter_description> the minimum value returned by this function
-</parameter_description>
-</parameter>
-<parameter name="range_end">
-<parameter_description> the minimum value not returned by this function
+<parameter name="hmodule">
+<parameter_description> The Win32 handle for a DLL loaded into the current process, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a number with @range_start &lt;= number &lt; @range_end.
+<return> a string containing the guessed installation directory for
+the software package @hmodule is from. The string is in the GLib
+file name encoding, i.e. UTF-8. The return value should be freed
+with g_free() when not needed any longer. If the function fails
+%NULL is returned.
 
 </return>
 </function>
 
-<function name="g_io_channel_read_unichar">
+<function name="g_win32_get_package_installation_subdirectory">
 <description>
-Reads a Unicode character from @channel.
-This function cannot be called on a channel with %NULL encoding.
+This function is deprecated. Use
+g_win32_get_package_installation_directory_of_module() and
+g_build_filename() instead.
 
+Deprecated: 2.18: Pass the HMODULE of a DLL or EXE to
+g_win32_get_package_installation_directory_of_module() instead, and
+then construct a subdirectory pathname with g_build_filename().
 
 </description>
 <parameters>
-<parameter name="channel">
-<parameter_description> a #GIOChannel
+<parameter name="package">
+<parameter_description> You should pass %NULL for this.
 </parameter_description>
 </parameter>
-<parameter name="thechar">
-<parameter_description> a location to return a character
+<parameter name="dll_name">
+<parameter_description> The name of a DLL that a package provides, in UTF-8, or %NULL.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a location to return an error of type #GConvertError
-or #GIOChannelError
+<parameter name="subdir">
+<parameter_description> A subdirectory of the package installation directory, also in UTF-8
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GIOStatus
+<return> a string containing the complete path to @subdir inside
+the installation directory of @package. The returned string is in
+the GLib file name encoding, i.e. UTF-8. The return value should be
+freed with g_free() when no longer needed. If something goes wrong,
+%NULL is returned.
+
 </return>
 </function>
 
-<function name="g_once">
+<function name="g_win32_get_windows_version">
 <description>
-The first call to this routine by a process with a given #GOnce
-struct calls @func with the given argument. Thereafter, subsequent
-calls to g_once()  with the same #GOnce struct do not call @func
-again, but return the stored result of the first call. On return
-from g_once(), the status of @once will be %G_ONCE_STATUS_READY.
-
-For example, a mutex or a thread-specific data key must be created
-exactly once. In a threaded environment, calling g_once() ensures
-that the initialization is serialized across multiple threads.
+Returns version information for the Windows operating system the
+code is running on. See MSDN documentation for the GetVersion()
+function. To summarize, the most significant bit is one on Win9x,
+and zero on NT-based systems. Since version 2.14, GLib works only
+on NT-based systems, so checking whether your are running on Win9x
+in your own software is moot. The least significant byte is 4 on
+Windows NT 4, and 5 on Windows XP. Software that needs really
+detailled version and feature information should use Win32 API like
+GetVersionEx() and VerifyVersionInfo().
 
-&lt;note&gt;&lt;para&gt;Calling g_once() recursively on the same #GOnce struct in
- func will lead to a deadlock.&lt;/para&gt;&lt;/note&gt;
+Since: 2.6
 
-&lt;informalexample&gt;
-&lt;programlisting&gt;
-gpointer
-get_debug_flags (void)
-{
-static GOnce my_once = G_ONCE_INIT;
+</description>
+<parameters>
+</parameters>
+<return> The version information.
 
-g_once (&amp;my_once, parse_debug_flags, NULL);
+</return>
+</function>
 
-return my_once.retval;
-}
-&lt;/programlisting&gt;
-&lt;/informalexample&gt;
+<function name="g_win32_getlocale">
+<description>
+The setlocale() function in the Microsoft C library uses locale
+names of the form &quot;English_United States.1252&quot; etc. We want the
+UNIXish standard form &quot;en_US&quot;, &quot;zh_TW&quot; etc. This function gets the
+current thread locale from Windows - without any encoding info -
+and returns it as a string of the above form for use in forming
+file names etc. The returned string should be deallocated with
+g_free().
 
-Since: 2.4
 
 </description>
 <parameters>
-<parameter name="once">
-<parameter_description> a #GOnce structure
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the #GThreadFunc function associated to @once. This function
-is called only once, regardless of the number of times it and
-its associated #GOnce struct are passed to g_once().
-</parameter_description>
-</parameter>
-<parameter name="arg">
-<parameter_description> data to be passed to @func
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> newly-allocated locale name.
+</return>
 </function>
 
-<function name="g_time_val_to_iso8601">
+<function name="g_win32_locale_filename_from_utf8">
 <description>
-Converts @time_ into an ISO 8601 encoded string, relative to the
-Coordinated Universal Time (UTC).
+Converts a filename from UTF-8 to the system codepage.
 
-Since: 2.12
+On NT-based Windows, on NTFS file systems, file names are in
+Unicode. It is quite possible that Unicode file names contain
+characters not representable in the system codepage. (For instance,
+Greek or Cyrillic characters on Western European or US Windows
+installations, or various less common CJK characters on CJK Windows
+installations.)
+
+In such a case, and if the filename refers to an existing file, and
+the file system stores alternate short (8.3) names for directory
+entries, the short form of the filename is returned. Note that the
+&quot;short&quot; name might in fact be longer than the Unicode name if the
+Unicode name has very short pathname components containing
+non-ASCII characters. If no system codepage name for the file is
+possible, %NULL is returned.
+
+The return value is dynamically allocated and should be freed with
+g_free() when no longer needed.
+
+Since: 2.8
 
 </description>
 <parameters>
-<parameter name="time_">
-<parameter_description> a #GTimeVal
+<parameter name="utf8filename">
+<parameter_description> a UTF-8 encoded filename.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing an ISO 8601 date
+<return> The converted filename, or %NULL on conversion
+failure and lack of short names.
 
 </return>
 </function>
 
-<function name="g_regex_match_all">
+<function name="glib_check_version">
 <description>
-Using the standard algorithm for regular expression matching only
-the longest match in the string is retrieved. This function uses
-a different algorithm so it can retrieve all the possible matches.
-For more documentation see g_regex_match_all_full().
-
-A #GMatchInfo structure, used to get information on the match, is
-stored in @match_info if not %NULL. Note that if @match_info is
-not %NULL then it is created even if the function returns %FALSE,
-i.e. you must free it regardless if regular expression actually
-matched.
+Checks that the GLib library in use is compatible with the
+given version. Generally you would pass in the constants
+#GLIB_MAJOR_VERSION, #GLIB_MINOR_VERSION, #GLIB_MICRO_VERSION
+as the three arguments to this function; that produces
+a check that the library in use is compatible with
+the version of GLib the application or module was compiled
+against.
 
- string is not copied and is used in #GMatchInfo internally. If
-you use any #GMatchInfo method (except g_match_info_free()) after
-freeing or modifying @string then the behaviour is undefined.
+Compatibility is defined by two things: first the version
+of the running library is newer than the version
+ required_major required_minor @required_micro. Second
+the running library must be binary compatible with the
+version @required_major required_minor  required_micro
+(same major version.)
 
-Since: 2.14
+Since: 2.6
 
 </description>
 <parameters>
-<parameter name="regex">
-<parameter_description> a #GRegex structure from g_regex_new()
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to scan for matches
+<parameter name="required_major">
+<parameter_description> the required major version.
 </parameter_description>
 </parameter>
-<parameter name="match_options">
-<parameter_description> match options
+<parameter name="required_minor">
+<parameter_description> the required minor version.
 </parameter_description>
 </parameter>
-<parameter name="match_info">
-<parameter_description> pointer to location where to store
-the #GMatchInfo, or %NULL if you do not need it
+<parameter name="required_micro">
+<parameter_description> the required micro version.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the string matched, %FALSE otherwise
+<return> %NULL if the GLib library is compatible with the
+given version, or a string describing the version mismatch.
+The returned string is owned by GLib and must not be modified
+or freed.
 
 </return>
 </function>
 
-<function name="g_signal_handlers_block_matched">
+<function name="glib_gettext">
 <description>
-Blocks all handlers on an instance that match a certain selection criteria.
-The criteria mask is passed as an OR-ed combination of #GSignalMatchType
-flags, and the criteria values are passed as arguments.
-Passing at least one of the %G_SIGNAL_MATCH_CLOSURE, %G_SIGNAL_MATCH_FUNC
-or %G_SIGNAL_MATCH_DATA match flags is required for successful matches.
-If no handlers were found, 0 is returned, the number of blocked handlers
-otherwise.
+Returns the translated string from the glib translations.
+This is an internal function and should only be used by
+the internals of glib (such as libgio).
 
 
 </description>
 <parameters>
-<parameter name="instance">
-<parameter_description> The instance to block handlers from.
-</parameter_description>
-</parameter>
-<parameter name="mask">
-<parameter_description> Mask indicating which of @signal_id, @detail, @closure, @func
-and/or @data the handlers have to match.
-</parameter_description>
-</parameter>
-<parameter name="signal_id">
-<parameter_description> Signal the handlers have to be connected to.
-</parameter_description>
-</parameter>
-<parameter name="detail">
-<parameter_description> Signal detail the handlers have to be connected to.
-</parameter_description>
-</parameter>
-<parameter name="closure">
-<parameter_description> The closure the handlers will invoke.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> The C closure callback of the handlers (useless for non-C closures).
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> The closure data of the handlers' closures.
+<parameter name="str">
+<parameter_description> The string to be translated
 </parameter_description>
 </parameter>
 </parameters>
-<return> The number of handlers that matched.
+<return> the transation of @str to the current locale
 </return>
 </function>
 
-<function name="g_ptr_array_set_size">
+<function name="glib_mem_profiler_table">
 <description>
-Sets the size of the array. When making the array larger,
-newly-added elements will be set to %NULL. When making it smaller,
-if @array has a non-%NULL #GDestroyNotify function then it will be
-called for the removed elements.
+A #GMemVTable containing profiling variants of the memory
+allocation functions. Use them together with g_mem_profile()
+in order to get information about the memory allocation pattern
+of your program.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #GPtrArray.
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the new length of the pointer array.
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]