[gobject-introspection] Update annotations from git.



commit cffff9d28a46229e9de966d535195f0bb89dd175
Author: Johan Dahlin <johan gnome org>
Date:   Thu Apr 5 14:26:18 2012 -0300

    Update annotations from git.
    
    This removes also all the headers as it's the first run
    with the updated extraction tool.

 gir/gio-2.0.c     |11648 +++++------------------------------------------------
 gir/glib-2.0.c    | 5900 +---------------------------
 gir/gobject-2.0.c | 6164 +---------------------------
 3 files changed, 1150 insertions(+), 22562 deletions(-)
---
diff --git a/gir/gio-2.0.c b/gir/gio-2.0.c
index 3a00434..395f4dd 100644
--- a/gir/gio-2.0.c
+++ b/gir/gio-2.0.c
@@ -177,73 +177,6 @@
 
 
 /**
- * GAppInfo:
- *
- * Information about an installed application and methods to launch
- * it (with file arguments).
- */
-
-
-/**
- * GAppInfoCreateFlags:
- * @G_APP_INFO_CREATE_NONE: No flags.
- * @G_APP_INFO_CREATE_NEEDS_TERMINAL: Application opens in a terminal window.
- * @G_APP_INFO_CREATE_SUPPORTS_URIS: Application supports URI arguments.
- * @G_APP_INFO_CREATE_SUPPORTS_STARTUP_NOTIFICATION: Application supports startup notification. Since 2.26
- *
- * Flags used when creating a #GAppInfo.
- */
-
-
-/**
- * GAppInfoIface:
- * @g_iface: The parent interface.
- * @dup: Copies a #GAppInfo.
- * @equal: Checks two #GAppInfo<!-- -->s for equality.
- * @get_id: Gets a string identifier for a #GAppInfo.
- * @get_name: Gets the name of the application for a #GAppInfo.
- * @get_description: Gets a short description for the application described by the #GAppInfo.
- * @get_executable: Gets the executable name for the #GAppInfo.
- * @get_icon: Gets the #GIcon for the #GAppInfo.
- * @launch: Launches an application specified by the #GAppInfo.
- * @supports_uris: Indicates whether the application specified supports launching URIs.
- * @supports_files: Indicates whether the application specified accepts filename arguments.
- * @launch_uris: Launches an application with a list of URIs.
- * @should_show: Returns whether an application should be shown (e.g. when getting a list of installed applications). <ulink url="http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt";> <citetitle>FreeDesktop.Org Startup Notification Specification</citetitle></ulink>.
- * @set_as_default_for_type: Sets an application as default for a given content type.
- * @set_as_default_for_extension: Sets an application as default for a given file extension.
- * @add_supports_type: Adds to the #GAppInfo information about supported file types.
- * @can_remove_supports_type: Checks for support for removing supported file types from a #GAppInfo.
- * @remove_supports_type: Removes a supported application type from a #GAppInfo.
- * @can_delete: Checks if a #GAppInfo can be deleted. Since 2.20
- * @do_delete: Deletes a #GAppInfo. Since 2.20
- * @get_commandline: Gets the commandline for the #GAppInfo. Since 2.20
- * @get_display_name: Gets the display name for the #GAppInfo. Since 2.24
- * @set_as_last_used_for_type: Sets the application as the last used. See g_app_info_set_as_last_used_for_type().
- *
- * Application Information interface, for operating system portability.
- */
-
-
-/**
- * GAppLaunchContext:
- *
- * Integrating the launch with the launching application. This is used to
- * handle for instance startup notification and launching the new application
- * on the same screen as the launching window.
- */
-
-
-/**
- * GApplication:
- *
- *
- *
- * Since: 2.28
- */
-
-
-/**
  * GApplication::activate:
  * @application: the application
  *
@@ -326,337 +259,6 @@
 
 
 /**
- * GApplicationFlags:
- * @G_APPLICATION_FLAGS_NONE: Default
- * @G_APPLICATION_IS_SERVICE: Run as a service. In this mode, registration fails if the service is already running, and the application will stay around for a while when the use count falls to zero.
- * @G_APPLICATION_IS_LAUNCHER: Don't try to become the primary instance.
- * @G_APPLICATION_HANDLES_OPEN: This application handles opening files (in the primary instance). Note that this flag only affects the default implementation of local_command_line(), and has no effect if %G_APPLICATION_HANDLES_COMMAND_LINE is given. See g_application_run() for details.
- * @G_APPLICATION_HANDLES_COMMAND_LINE: This application handles command line arguments (in the primary instance). Note that this flag only affect the default implementation of local_command_line(). See g_application_run() for details.
- * @G_APPLICATION_SEND_ENVIRONMENT: Send the environment of the launching process to the primary instance. Set this flag if your application is expected to behave differently depending on certain environment variables. For instance, an editor might be expected to use the <envar>GIT_COMMITTER_NAME</envar> environment variable when editing a git commit message. The environment is available to the #GApplication::command-line signal handler, via g_application_command_line_getenv().
- * @G_APPLICATION_NON_UNIQUE: Make no attempts to do any of the typical single-instance application negotiation.  The application neither attempts to become the owner of the application ID nor does it check if an existing owner already exists.  Everything occurs in the local process.  Since: 2.30.
- *
- * Flags used to define the behaviour of a #GApplication.
- *
- * Since: 2.28
- */
-
-
-/**
- * GAskPasswordFlags:
- * @G_ASK_PASSWORD_NEED_PASSWORD: operation requires a password.
- * @G_ASK_PASSWORD_NEED_USERNAME: operation requires a username.
- * @G_ASK_PASSWORD_NEED_DOMAIN: operation requires a domain.
- * @G_ASK_PASSWORD_SAVING_SUPPORTED: operation supports saving settings.
- * @G_ASK_PASSWORD_ANONYMOUS_SUPPORTED: operation supports anonymous users.
- *
- * #GAskPasswordFlags are used to request specific information from the
- * user, or to notify the user of their choices in an authentication
- * situation.
- */
-
-
-/**
- * GAsyncInitable:
- *
- * Interface for asynchronously initializable objects.
- *
- * Since: 2.22
- */
-
-
-/**
- * GAsyncInitableIface:
- * @g_iface: The parent interface.
- * @init_async: Starts initialization of the object.
- * @init_finish: Finishes initialization of the object.
- *
- * Provides an interface for asynchronous initializing object such that
- * initialization may fail.
- *
- * Since: 2.22
- */
-
-
-/**
- * GAsyncReadyCallback:
- * @source_object: the object the asynchronous operation was started with.
- * @res: a #GAsyncResult.
- * @user_data: user data passed to the callback.
- *
- * Type definition for a function that will be called back when an asynchronous
- * operation within GIO has been completed.
- */
-
-
-/**
- * GAsyncResult:
- *
- * Holds results information for an asynchronous operation,
- * usually passed directly to a asynchronous _finish() operation.
- */
-
-
-/**
- * GAsyncResultIface:
- * @g_iface: The parent interface.
- * @get_user_data: Gets the user data passed to the callback.
- * @get_source_object: Gets the source object that issued the asynchronous operation.
- *
- * Interface definition for #GAsyncResult.
- */
-
-
-/**
- * GBaseFinalizeFunc:
- * @g_class: The #GTypeClass structure to finalize.
- *
- * A callback function used by the type system to finalize those portions
- * of a derived types class structure that were setup from the corresponding
- * GBaseInitFunc() function. Class finalization basically works the inverse
- * way in which class intialization is performed.
- * See GClassInitFunc() for a discussion of the class intialization process.
- */
-
-
-/**
- * GBaseInitFunc:
- * @g_class: The #GTypeClass structure to initialize.
- *
- * A callback function used by the type system to do base initialization
- * of the class structures of derived types. It is called as part of the
- * initialization process of all derived classes and should reallocate
- * or reset all dynamic class members copied over from the parent class.
- * For example, class members (such as strings) that are not sufficiently
- * handled by a plain memory copy of the parent class into the derived class
- * have to be altered. See GClassInitFunc() for a discussion of the class
- * intialization process.
- */
-
-
-/**
- * GBinding:
- *
- * <structname>GBinding</structname> is an opaque structure whose members
- * cannot be accessed directly.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBindingFlags:
- * @G_BINDING_DEFAULT: The default binding; if the source property changes, the target property is updated with its value.
- * @G_BINDING_BIDIRECTIONAL: Bidirectional binding; if either the property of the source or the property of the target changes, the other is updated.
- * @G_BINDING_SYNC_CREATE: Synchronize the values of the source and target properties when creating the binding; the direction of the synchronization is always from the source to the target.
- * @G_BINDING_INVERT_BOOLEAN: If the two properties being bound are booleans, setting one to %TRUE will result in the other being set to %FALSE and vice versa. This flag will only work for boolean properties, and cannot be used when passing custom transformation functions to g_object_bind_property_full().
- *
- * Flags to be passed to g_object_bind_property() or
- * g_object_bind_property_full().
- *
- * This enumeration can be extended at later date.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBindingTransformFunc:
- * @binding: a #GBinding
- * @source_value: the value of the source property
- * @target_value: the value of the target property
- * @user_data: data passed to the transform function
- *
- * A function to be called to transform the source property of @source
- * from @source_value into the target property of @target
- * using @target_value.
- *
- * Returns: %TRUE if the transformation was successful, and %FALSE otherwise
- * Since: 2.26
- */
-
-
-/**
- * GBookmarkFile:
- *
- * The <structname>GBookmarkFile</structname> struct contains only
- * private data and should not be directly accessed.
- */
-
-
-/**
- * GBookmarkFileError:
- * @G_BOOKMARK_FILE_ERROR_INVALID_URI: URI was ill-formed
- * @G_BOOKMARK_FILE_ERROR_INVALID_VALUE: a requested field was not found
- * @G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED: a requested application did not register a bookmark
- * @G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND: a requested URI was not found
- * @G_BOOKMARK_FILE_ERROR_READ: document was ill formed
- * @G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING: the text being parsed was in an unknown encoding
- * @G_BOOKMARK_FILE_ERROR_WRITE: an error occurred while writing
- * @G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND: requested file was not found
- *
- * Error codes returned by bookmark file parsing.
- */
-
-
-/**
- * GBoxedCopyFunc:
- * @boxed: The boxed structure to be copied.
- *
- * This function is provided by the user and should produce a copy
- * of the passed in boxed structure.
- *
- * Returns: The newly created copy of the boxed structure.
- */
-
-
-/**
- * GBoxedFreeFunc:
- * @boxed: The boxed structure to be freed.
- *
- * This function is provided by the user and should free the boxed
- * structure passed.
- */
-
-
-/**
- * GBufferedInputStream:
- *
- * Implements #GFilterInputStream with a sized input buffer.
- */
-
-
-/**
- * GBufferedOutputStream:
- *
- * An implementation of #GFilterOutputStream with a sized buffer.
- */
-
-
-/**
- * GBusAcquiredCallback:
- * @connection: The #GDBusConnection to a message bus.
- * @name: The name that is requested to be owned.
- * @user_data: User data passed to g_bus_own_name().
- *
- * Invoked when a connection to a message bus has been obtained.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusNameAcquiredCallback:
- * @connection: The #GDBusConnection on which to acquired the name.
- * @name: The name being owned.
- * @user_data: User data passed to g_bus_own_name() or g_bus_own_name_on_connection().
- *
- * Invoked when the name is acquired.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusNameAppearedCallback:
- * @connection: The #GDBusConnection the name is being watched on.
- * @name: The name being watched.
- * @name_owner: Unique name of the owner of the name being watched.
- * @user_data: User data passed to g_bus_watch_name().
- *
- * Invoked when the name being watched is known to have to have a owner.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusNameLostCallback:
- * @connection: The #GDBusConnection on which to acquire the name or %NULL if the connection was disconnected.
- * @name: The name being owned.
- * @user_data: User data passed to g_bus_own_name() or g_bus_own_name_on_connection().
- *
- * Invoked when the name is lost or @connection has been closed.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusNameOwnerFlags:
- * @G_BUS_NAME_OWNER_FLAGS_NONE: No flags set.
- * @G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT: Allow another message bus connection to claim the the name.
- * @G_BUS_NAME_OWNER_FLAGS_REPLACE: If another message bus connection owns the name and have specified #G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT, then take the name from the other connection.
- *
- * Flags used in g_bus_own_name().
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusNameVanishedCallback:
- * @connection: The #GDBusConnection the name is being watched on.
- * @name: The name being watched.
- * @user_data: User data passed to g_bus_watch_name().
- *
- * Invoked when the name being watched is known not to have to have a owner.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusNameWatcherFlags:
- * @G_BUS_NAME_WATCHER_FLAGS_NONE: No flags set.
- * @G_BUS_NAME_WATCHER_FLAGS_AUTO_START: If no-one owns the name when beginning to watch the name, ask the bus to launch an owner for the name.
- *
- * Flags used in g_bus_watch_name().
- *
- * Since: 2.26
- */
-
-
-/**
- * GBusType:
- * @G_BUS_TYPE_STARTER: An alias for the message bus that activated the process, if any.
- * @G_BUS_TYPE_NONE: Not a message bus.
- * @G_BUS_TYPE_SYSTEM: The system-wide message bus.
- * @G_BUS_TYPE_SESSION: The login session message bus.
- *
- * An enumeration for well-known message buses.
- *
- * Since: 2.26
- */
-
-
-/**
- * GCClosure:
- * @closure: the #GClosure
- * @callback: the callback function
- *
- * A #GCClosure is a specialization of #GClosure for C function callbacks.
- */
-
-
-/**
- * GCallback:
- *
- * The type used for callback functions in structure definitions and function
- * signatures. This doesn't mean that all callback functions must take no
- * parameters and return void. The required signature of a callback function
- * is determined by the context in which is used (e.g. the signal to which it
- * is connected). Use G_CALLBACK() to cast the callback function to a #GCallback.
- */
-
-
-/**
- * GCancellable:
- *
- * Allows actions to be cancelled.
- */
-
-
-/**
  * GCancellable::cancelled:
  * @cancellable: a #GCancellable.
  *
@@ -717,19 +319,6 @@
 
 
 /**
- * GCancellableSourceFunc:
- * @cancellable: the #GCancellable
- * @user_data: data passed in by the user.
- *
- * This is the function type of the callback used for the #GSource
- * returned by g_cancellable_source_new().
- *
- * Returns: it should return %FALSE if the source should be removed.
- * Since: 2.28
- */
-
-
-/**
  * GCharsetConverter:
  *
  * Conversions between character sets.
@@ -737,296 +326,6 @@
 
 
 /**
- * GChecksum:
- *
- * An opaque structure representing a checksumming operation.
- * To create a new GChecksum, use g_checksum_new(). To free
- * a GChecksum, use g_checksum_free().
- *
- * Since: 2.16
- */
-
-
-/**
- * GChecksumType:
- * @G_CHECKSUM_MD5: Use the MD5 hashing algorithm
- * @G_CHECKSUM_SHA1: Use the SHA-1 hashing algorithm
- * @G_CHECKSUM_SHA256: Use the SHA-256 hashing algorithm
- *
- * The hashing algorithm to be used by #GChecksum when performing the
- * digest of some data.
- *
- * Note that the #GChecksumType enumeration may be extended at a later
- * date to include new hashing algorithm types.
- *
- * Since: 2.16
- */
-
-
-/**
- * GChildWatchFunc:
- * @pid: the process id of the child process
- * @status: Status information about the child process, see waitpid(2) for more information about this field
- * @user_data: user data passed to g_child_watch_add()
- *
- * The type of functions to be called when a child exists.
- */
-
-
-/**
- * GClassFinalizeFunc:
- * @g_class: The #GTypeClass structure to finalize.
- * @class_data: The @class_data member supplied via the #GTypeInfo structure.
- *
- * A callback function used by the type system to finalize a class.
- * This function is rarely needed, as dynamically allocated class resources
- * should be handled by GBaseInitFunc() and GBaseFinalizeFunc().
- * Also, specification of a GClassFinalizeFunc() in the #GTypeInfo
- * structure of a static type is invalid, because classes of static types
- * will never be finalized (they are artificially kept alive when their
- * reference count drops to zero).
- */
-
-
-/**
- * GClassInitFunc:
- * @g_class: The #GTypeClass structure to initialize.
- * @class_data: The @class_data member supplied via the #GTypeInfo structure.
- *
- * A callback function used by the type system to initialize the class
- * of a specific type. This function should initialize all static class
- * members.
- * The initialization process of a class involves:
- * <itemizedlist>
- * <listitem><para>
- * 	1 - Copying common members from the parent class over to the
- * 	derived class structure.
- * </para></listitem>
- * <listitem><para>
- * 	2 -  Zero initialization of the remaining members not copied
- * 	over from the parent class.
- * </para></listitem>
- * <listitem><para>
- * 	3 - Invocation of the GBaseInitFunc() initializers of all parent
- * 	types and the class' type.
- * </para></listitem>
- * <listitem><para>
- * 	4 - Invocation of the class' GClassInitFunc() initializer.
- * </para></listitem>
- * </itemizedlist>
- * Since derived classes are partially initialized through a memory copy
- * of the parent class, the general rule is that GBaseInitFunc() and
- * GBaseFinalizeFunc() should take care of necessary reinitialization
- * and release of those class members that were introduced by the type
- * that specified these GBaseInitFunc()/GBaseFinalizeFunc().
- * GClassInitFunc() should only care about initializing static
- * class members, while dynamic class members (such as allocated strings
- * or reference counted resources) are better handled by a GBaseInitFunc()
- * for this type, so proper initialization of the dynamic class members
- * is performed for class initialization of derived types as well.
- * An example may help to correspond the intend of the different class
- * initializers:
- *
- * |[
- * typedef struct {
- *   GObjectClass parent_class;
- *   gint         static_integer;
- *   gchar       *dynamic_string;
- * } TypeAClass;
- * static void
- * type_a_base_class_init (TypeAClass *class)
- * {
- *   class->dynamic_string = g_strdup ("some string");
- * }
- * static void
- * type_a_base_class_finalize (TypeAClass *class)
- * {
- *   g_free (class->dynamic_string);
- * }
- * static void
- * type_a_class_init (TypeAClass *class)
- * {
- *   class->static_integer = 42;
- * }
- *
- * typedef struct {
- *   TypeAClass   parent_class;
- *   gfloat       static_float;
- *   GString     *dynamic_gstring;
- * } TypeBClass;
- * static void
- * type_b_base_class_init (TypeBClass *class)
- * {
- *   class->dynamic_gstring = g_string_new ("some other string");
- * }
- * static void
- * type_b_base_class_finalize (TypeBClass *class)
- * {
- *   g_string_free (class->dynamic_gstring);
- * }
- * static void
- * type_b_class_init (TypeBClass *class)
- * {
- *   class->static_float = 3.14159265358979323846;
- * }
- * ]|
- * Initialization of TypeBClass will first cause initialization of
- * TypeAClass (derived classes reference their parent classes, see
- * g_type_class_ref() on this).
- * Initialization of TypeAClass roughly involves zero-initializing its fields,
- * then calling its GBaseInitFunc() type_a_base_class_init() to allocate
- * its dynamic members (dynamic_string), and finally calling its GClassInitFunc()
- * type_a_class_init() to initialize its static members (static_integer).
- * The first step in the initialization process of TypeBClass is then
- * a plain memory copy of the contents of TypeAClass into TypeBClass and
- * zero-initialization of the remaining fields in TypeBClass.
- * The dynamic members of TypeAClass within TypeBClass now need
- * reinitialization which is performed by calling type_a_base_class_init()
- * with an argument of TypeBClass.
- * After that, the GBaseInitFunc() of TypeBClass, type_b_base_class_init()
- * is called to allocate the dynamic members of TypeBClass (dynamic_gstring),
- * and finally the GClassInitFunc() of TypeBClass, type_b_class_init(),
- * is called to complete the initialization process with the static members
- * (static_float).
- * Corresponding finalization counter parts to the GBaseInitFunc() functions
- * have to be provided to release allocated resources at class finalization
- * time.
- */
-
-
-/**
- * GClosure:
- * @in_marshal: Indicates whether the closure is currently being invoked with g_closure_invoke()
- * @is_invalid: Indicates whether the closure has been invalidated by g_closure_invalidate()
- *
- * A #GClosure represents a callback supplied by the programmer.
- */
-
-
-/**
- * GClosureMarshal:
- * @closure: the #GClosure to which the marshaller belongs
- * @return_value: (allow-none): a #GValue to store the return value. May be %NULL if the callback of @closure doesn't return a value.
- * @n_param_values: the length of the @param_values array
- * @param_values: (array length=n_param_values): an array of #GValue<!-- -->s holding the arguments on which to invoke the callback of @closure
- * @invocation_hint: (allow-none): the invocation hint given as the last argument to g_closure_invoke()
- * @marshal_data: (allow-none): additional data specified when registering the marshaller, see g_closure_set_marshal() and g_closure_set_meta_marshal()
- *
- * The type used for marshaller functions.
- */
-
-
-/**
- * GClosureNotify:
- * @data: data specified when registering the notification callback
- * @closure: the #GClosure on which the notification is emitted
- *
- * The type used for the various notification callbacks which can be registered
- * on closures.
- */
-
-
-/**
- * GConnectFlags:
- * @G_CONNECT_AFTER: whether the handler should be called before or after the default handler of the signal.
- * @G_CONNECT_SWAPPED: whether the instance and data should be swapped when calling the handler.
- *
- * The connection flags are used to specify the behaviour of a signal's
- * connection.
- */
-
-
-/**
- * GConvertError:
- * @G_CONVERT_ERROR_NO_CONVERSION: Conversion between the requested character sets is not supported.
- * @G_CONVERT_ERROR_ILLEGAL_SEQUENCE: Invalid byte sequence in conversion input.
- * @G_CONVERT_ERROR_FAILED: Conversion failed for some reason.
- * @G_CONVERT_ERROR_PARTIAL_INPUT: Partial character sequence at end of input.
- * @G_CONVERT_ERROR_BAD_URI: URI is invalid.
- * @G_CONVERT_ERROR_NOT_ABSOLUTE_PATH: Pathname is not an absolute path.
- *
- * Error codes returned by character set conversion routines.
- */
-
-
-/**
- * GConverter:
- *
- * Seek object for streaming operations.
- *
- * Since: 2.24
- */
-
-
-/**
- * GConverterFlags:
- * @G_CONVERTER_NO_FLAGS: No flags.
- * @G_CONVERTER_INPUT_AT_END: At end of input data
- * @G_CONVERTER_FLUSH: Flush data
- *
- * Flags used when calling a g_converter_convert().
- *
- * Since: 2.24
- */
-
-
-/**
- * GConverterIface:
- * @g_iface: The parent interface.
- * @convert: Converts data.
- * @reset: Reverts the internal state of the converter to its initial state.
- *
- * Provides an interface for converting data from one type
- * to another type. The conversion can be stateful
- * and may fail at any place.
- *
- * Since: 2.24
- */
-
-
-/**
- * GConverterInputStream:
- *
- * An implementation of #GFilterInputStream that allows data
- * conversion.
- */
-
-
-/**
- * GConverterOutputStream:
- *
- * An implementation of #GFilterOutputStream that allows data
- * conversion.
- */
-
-
-/**
- * GConverterResult:
- * @G_CONVERTER_ERROR: There was an error during conversion.
- * @G_CONVERTER_CONVERTED: Some data was consumed or produced
- * @G_CONVERTER_FINISHED: The conversion is finished
- * @G_CONVERTER_FLUSHED: Flushing is finished
- *
- * Results returned from g_converter_convert().
- *
- * Since: 2.24
- */
-
-
-/**
- * GCopyFunc:
- * @src: A pointer to the data which should be copied
- * @data: Additional data
- *
- * A function of this signature is used to copy the node data
- * when doing a deep-copy of a tree.
- *
- * Returns: A pointer to the copy
- * Since: 2.4
- */
-
-
-/**
  * GCredentials:
  *
  * The #GCredentials structure contains only private data and
@@ -1046,45 +345,6 @@
 
 
 /**
- * GCredentialsType:
- * @G_CREDENTIALS_TYPE_INVALID: Indicates an invalid native credential type.
- * @G_CREDENTIALS_TYPE_LINUX_UCRED: The native credentials type is a <type>struct ucred</type>.
- * @G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED: The native credentials type is a <type>struct cmsgcred</type>.
- * @G_CREDENTIALS_TYPE_OPENBSD_SOCKPEERCRED: The native credentials type is a <type>struct sockpeercred</type>. Added in 2.30.
- *
- * Enumeration describing different kinds of native credential types.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusAnnotationInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @key: The name of the annotation, e.g. "org.freedesktop.DBus.Deprecated".
- * @value: The value of the annotation.
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about an annotation.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusArgInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @name: Name of the argument, e.g. @unix_user_id.
- * @signature: D-Bus signature of the argument (a single complete type).
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about an argument for a method or a signal.
- *
- * Since: 2.26
- */
-
-
-/**
  * GDBusAuthMechanism:credentials:
  *
  * If authenticating as a server, this property contains the
@@ -1130,28 +390,6 @@
 
 
 /**
- * GDBusCallFlags:
- * @G_DBUS_CALL_FLAGS_NONE: No flags set.
- * @G_DBUS_CALL_FLAGS_NO_AUTO_START: The bus must not launch an owner for the destination name in response to this method invocation.
- *
- * Flags used in g_dbus_connection_call() and similar APIs.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusCapabilityFlags:
- * @G_DBUS_CAPABILITY_FLAGS_NONE: No flags set.
- * @G_DBUS_CAPABILITY_FLAGS_UNIX_FD_PASSING: The connection supports exchanging UNIX file descriptors with the remote peer.
- *
- * Capabilities negotiated with the remote peer.
- *
- * Since: 2.26
- */
-
-
-/**
  * GDBusConnection:
  *
  * The #GDBusConnection structure contains only private data and
@@ -1322,182 +560,6 @@
 
 
 /**
- * GDBusConnectionFlags:
- * @G_DBUS_CONNECTION_FLAGS_NONE: No flags set.
- * @G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT: Perform authentication against server.
- * @G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER: Perform authentication against client.
- * @G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS: When authenticating as a server, allow the anonymous authentication method.
- * @G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION: Pass this flag if connecting to a peer that is a message bus. This means that the Hello() method will be invoked as part of the connection setup.
- * @G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING: If set, processing of D-Bus messages is delayed until g_dbus_connection_start_message_processing() is called.
- *
- * Flags used when creating a new #GDBusConnection.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusError:
- * @G_DBUS_ERROR_FAILED: A generic error; "something went wrong" - see the error message for more.
- * @G_DBUS_ERROR_NO_MEMORY: There was not enough memory to complete an operation.
- * @G_DBUS_ERROR_SERVICE_UNKNOWN: The bus doesn't know how to launch a service to supply the bus name you wanted.
- * @G_DBUS_ERROR_NAME_HAS_NO_OWNER: The bus name you referenced doesn't exist (i.e. no application owns it).
- * @G_DBUS_ERROR_NO_REPLY: No reply to a message expecting one, usually means a timeout occurred.
- * @G_DBUS_ERROR_IO_ERROR: Something went wrong reading or writing to a socket, for example.
- * @G_DBUS_ERROR_BAD_ADDRESS: A D-Bus bus address was malformed.
- * @G_DBUS_ERROR_NOT_SUPPORTED: Requested operation isn't supported (like ENOSYS on UNIX).
- * @G_DBUS_ERROR_LIMITS_EXCEEDED: Some limited resource is exhausted.
- * @G_DBUS_ERROR_ACCESS_DENIED: Security restrictions don't allow doing what you're trying to do.
- * @G_DBUS_ERROR_AUTH_FAILED: Authentication didn't work.
- * @G_DBUS_ERROR_NO_SERVER: Unable to connect to server (probably caused by ECONNREFUSED on a socket).
- * @G_DBUS_ERROR_TIMEOUT: Certain timeout errors, possibly ETIMEDOUT on a socket.  Note that %G_DBUS_ERROR_NO_REPLY is used for message reply timeouts. Warning: this is confusingly-named given that %G_DBUS_ERROR_TIMED_OUT also exists. We can't fix it for compatibility reasons so just be careful.
- * @G_DBUS_ERROR_NO_NETWORK: No network access (probably ENETUNREACH on a socket).
- * @G_DBUS_ERROR_ADDRESS_IN_USE: Can't bind a socket since its address is in use (i.e. EADDRINUSE).
- * @G_DBUS_ERROR_DISCONNECTED: The connection is disconnected and you're trying to use it.
- * @G_DBUS_ERROR_INVALID_ARGS: Invalid arguments passed to a method call.
- * @G_DBUS_ERROR_FILE_NOT_FOUND: Missing file.
- * @G_DBUS_ERROR_FILE_EXISTS: Existing file and the operation you're using does not silently overwrite.
- * @G_DBUS_ERROR_UNKNOWN_METHOD: Method name you invoked isn't known by the object you invoked it on.
- * @G_DBUS_ERROR_TIMED_OUT: Certain timeout errors, e.g. while starting a service. Warning: this is confusingly-named given that %G_DBUS_ERROR_TIMEOUT also exists. We can't fix it for compatibility reasons so just be careful.
- * @G_DBUS_ERROR_MATCH_RULE_NOT_FOUND: Tried to remove or modify a match rule that didn't exist.
- * @G_DBUS_ERROR_MATCH_RULE_INVALID: The match rule isn't syntactically valid.
- * @G_DBUS_ERROR_SPAWN_EXEC_FAILED: While starting a new process, the exec() call failed.
- * @G_DBUS_ERROR_SPAWN_FORK_FAILED: While starting a new process, the fork() call failed.
- * @G_DBUS_ERROR_SPAWN_CHILD_EXITED: While starting a new process, the child exited with a status code.
- * @G_DBUS_ERROR_SPAWN_CHILD_SIGNALED: While starting a new process, the child exited on a signal.
- * @G_DBUS_ERROR_SPAWN_FAILED: While starting a new process, something went wrong.
- * @G_DBUS_ERROR_SPAWN_SETUP_FAILED: We failed to setup the environment correctly.
- * @G_DBUS_ERROR_SPAWN_CONFIG_INVALID: We failed to setup the config parser correctly.
- * @G_DBUS_ERROR_SPAWN_SERVICE_INVALID: Bus name was not valid.
- * @G_DBUS_ERROR_SPAWN_SERVICE_NOT_FOUND: Service file not found in system-services directory.
- * @G_DBUS_ERROR_SPAWN_PERMISSIONS_INVALID: Permissions are incorrect on the setuid helper.
- * @G_DBUS_ERROR_SPAWN_FILE_INVALID: Service file invalid (Name, User or Exec missing).
- * @G_DBUS_ERROR_SPAWN_NO_MEMORY: Tried to get a UNIX process ID and it wasn't available.
- * @G_DBUS_ERROR_UNIX_PROCESS_ID_UNKNOWN: Tried to get a UNIX process ID and it wasn't available.
- * @G_DBUS_ERROR_INVALID_SIGNATURE: A type signature is not valid.
- * @G_DBUS_ERROR_INVALID_FILE_CONTENT: A file contains invalid syntax or is otherwise broken.
- * @G_DBUS_ERROR_SELINUX_SECURITY_CONTEXT_UNKNOWN: Asked for SELinux security context and it wasn't available.
- * @G_DBUS_ERROR_ADT_AUDIT_DATA_UNKNOWN: Asked for ADT audit data and it wasn't available.
- * @G_DBUS_ERROR_OBJECT_PATH_IN_USE: There's already an object with the requested object path.
- *
- * Error codes for the %G_DBUS_ERROR error domain.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusErrorEntry:
- * @error_code: An error code.
- * @dbus_error_name: The D-Bus error name to associate with @error_code.
- *
- * Struct used in g_dbus_error_register_error_domain().
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusInterface:
- *
- * Base type for D-Bus interfaces.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusInterfaceGetPropertyFunc:
- * @connection: A #GDBusConnection.
- * @sender: The unique bus name of the remote caller.
- * @object_path: The object path that the method was invoked on.
- * @interface_name: The D-Bus interface name for the property.
- * @property_name: The name of the property to get the value of.
- * @error: Return location for error.
- * @user_data: The @user_data #gpointer passed to g_dbus_connection_register_object().
- *
- * The type of the @get_property function in #GDBusInterfaceVTable.
- *
- * Returns: A #GVariant with the value for @property_name or %NULL if @error is set. If the returned #GVariant is floating, it is consumed - otherwise its reference count is decreased by one.
- * Since: 2.26
- */
-
-
-/**
- * GDBusInterfaceIface:
- * @parent_iface: The parent interface.
- * @get_info: Returns a #GDBusInterfaceInfo. See g_dbus_interface_get_info().
- * @get_object: Gets the enclosing #GDBusObject. See g_dbus_interface_get_object().
- * @set_object: Sets the enclosing #GDBusObject. See g_dbus_interface_set_object().
- * @dup_object: Gets a reference to the enclosing #GDBusObject. See g_dbus_interface_dup_object(). Added in 2.32.
- *
- * Base type for D-Bus interfaces.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusInterfaceInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @name: The name of the D-Bus interface, e.g. "org.freedesktop.DBus.Properties".
- * @methods: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusMethodInfo structures or %NULL if there are no methods.
- * @signals: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusSignalInfo structures or %NULL if there are no signals.
- * @properties: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusPropertyInfo structures or %NULL if there are no properties.
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about a D-Bus interface.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusInterfaceMethodCallFunc:
- * @connection: A #GDBusConnection.
- * @sender: The unique bus name of the remote caller.
- * @object_path: The object path that the method was invoked on.
- * @interface_name: The D-Bus interface name the method was invoked on.
- * @method_name: The name of the method that was invoked.
- * @parameters: A #GVariant tuple with parameters.
- * @invocation: A #GDBusMethodInvocation object that can be used to return a value or error.
- * @user_data: The @user_data #gpointer passed to g_dbus_connection_register_object().
- *
- * The type of the @method_call function in #GDBusInterfaceVTable.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusInterfaceSetPropertyFunc:
- * @connection: A #GDBusConnection.
- * @sender: The unique bus name of the remote caller.
- * @object_path: The object path that the method was invoked on.
- * @interface_name: The D-Bus interface name for the property.
- * @property_name: The name of the property to get the value of.
- * @value: The value to set the property to.
- * @error: Return location for error.
- * @user_data: The @user_data #gpointer passed to g_dbus_connection_register_object().
- *
- * The type of the @set_property function in #GDBusInterfaceVTable.
- *
- * Returns: %TRUE if the property was set to @value, %FALSE if @error is set.
- * Since: 2.26
- */
-
-
-/**
- * GDBusInterfaceSkeleton:
- *
- * The #GDBusInterfaceSkeleton structure contains private data and should
- * only be accessed using the provided API.
- *
- * Since: 2.30
- */
-
-
-/**
  * GDBusInterfaceSkeleton::g-authorize-method:
  * @interface: The #GDBusInterfaceSkeleton emitting the signal.
  * @invocation: A #GDBusMethodInvocation.
@@ -1551,289 +613,75 @@
 
 
 /**
- * GDBusInterfaceSkeletonClass:
- * @parent_class: The parent class.
- * @get_info: Returns a #GDBusInterfaceInfo. See g_dbus_interface_skeleton_get_info() for details.
- * @get_vtable: Returns a #GDBusInterfaceVTable. See g_dbus_interface_skeleton_get_vtable() for details.
- * @get_properties: Returns a #GVariant with all properties. See g_dbus_interface_skeleton_get_properties().
- * @flush: Emits outstanding changes, if any. See g_dbus_interface_skeleton_flush().
- * @g_authorize_method: Signal class handler for the #GDBusInterfaceSkeleton::g-authorize-method signal.
+ * GDBusMessage:
  *
- * Class structure for #GDBusInterfaceSkeleton.
+ * The #GDBusMessage structure contains only private data and should
+ * only be accessed using the provided API.
  *
- * Since: 2.30
+ * Since: 2.26
  */
 
 
 /**
- * GDBusInterfaceSkeletonFlags:
- * @G_DBUS_INTERFACE_SKELETON_FLAGS_NONE: No flags set.
- * @G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD: Each method invocation is handled in a thread dedicated to the invocation. This means that the method implementation can use blocking IO without blocking any other part of the process. It also means that the method implementation must use locking to access data structures used by other threads.
+ * GDBusMessageClass:
  *
- * Flags describing the behavior of a #GDBusInterfaceSkeleton instance.
+ * Class structure for #GDBusMessage.
  *
- * Since: 2.30
+ * Since: 2.26
  */
 
 
 /**
- * GDBusInterfaceVTable:
- * @method_call: Function for handling incoming method calls.
- * @get_property: Function for getting a property.
- * @set_property: Function for setting a property.
- *
- * Virtual table for handling properties and method calls for a D-Bus
- * interface.
+ * GDBusMethodInvocation:
  *
- * If you want to handle getting/setting D-Bus properties asynchronously, simply
- * register an object with the <literal>org.freedesktop.DBus.Properties</literal>
- * D-Bus interface using g_dbus_connection_register_object().
+ * The #GDBusMethodInvocation structure contains only private data and
+ * should only be accessed using the provided API.
  *
  * Since: 2.26
  */
 
 
 /**
- * GDBusMessage:
+ * GDBusMethodInvocationClass:
  *
- * The #GDBusMessage structure contains only private data and should
- * only be accessed using the provided API.
+ * Class structure for #GDBusMethodInvocation.
  *
  * Since: 2.26
  */
 
 
 /**
- * GDBusMessageByteOrder:
- * @G_DBUS_MESSAGE_BYTE_ORDER_BIG_ENDIAN: The byte order is big endian.
- * @G_DBUS_MESSAGE_BYTE_ORDER_LITTLE_ENDIAN: The byte order is little endian.
+ * GDBusObject::interface-added:
+ * @object: The #GDBusObject emitting the signal.
+ * @interface: The #GDBusInterface that was added.
  *
- * Enumeration used to describe the byte order of a D-Bus message.
+ * Emitted when @interface is added to @object.
  *
- * Since: 2.26
+ * Since: 2.30
  */
 
 
 /**
- * GDBusMessageClass:
+ * GDBusObject::interface-removed:
+ * @object: The #GDBusObject emitting the signal.
+ * @interface: The #GDBusInterface that was removed.
  *
- * Class structure for #GDBusMessage.
+ * Emitted when @interface is removed from @object.
  *
- * Since: 2.26
+ * Since: 2.30
  */
 
 
 /**
- * GDBusMessageFilterFunction:
- * @connection: (transfer none): A #GDBusConnection.
- * @message: (transfer full): A locked #GDBusMessage that the filter function takes ownership of.
- * @incoming: %TRUE if it is a message received from the other peer, %FALSE if it is a message to be sent to the other peer.
- * @user_data: User data passed when adding the filter.
- *
- * Signature for function used in g_dbus_connection_add_filter().
- *
- * A filter function is passed a #GDBusMessage and expected to return
- * a #GDBusMessage too. Passive filter functions that don't modify the
- * message can simply return the @message object:
- * |[
- * static GDBusMessage *
- * passive_filter (GDBusConnection *connection
- *                 GDBusMessage    *message,
- *                 gboolean         incoming,
- *                 gpointer         user_data)
- * {
- *   /<!-- -->* inspect @message *<!-- -->/
- *   return message;
- * }
- * ]|
- * Filter functions that wants to drop a message can simply return %NULL:
- * |[
- * static GDBusMessage *
- * drop_filter (GDBusConnection *connection
- *              GDBusMessage    *message,
- *              gboolean         incoming,
- *              gpointer         user_data)
- * {
- *   if (should_drop_message)
- *     {
- *       g_object_unref (message);
- *       message = NULL;
- *     }
- *   return message;
- * }
- * ]|
- * Finally, a filter function may modify a message by copying it:
- * |[
- * static GDBusMessage *
- * modifying_filter (GDBusConnection *connection
- *                   GDBusMessage    *message,
- *                   gboolean         incoming,
- *                   gpointer         user_data)
- * {
- *   GDBusMessage *copy;
- *   GError *error;
- *
- *   error = NULL;
- *   copy = g_dbus_message_copy (message, &error);
- *   /<!-- -->* handle @error being is set *<!-- -->/
- *   g_object_unref (message);
+ * GDBusObjectManager::interface-added:
+ * @manager: The #GDBusObjectManager emitting the signal.
+ * @object: The #GDBusObject on which an interface was added.
+ * @interface: The #GDBusInterface that was added.
  *
- *   /<!-- -->* modify @copy *<!-- -->/
+ * Emitted when @interface is added to @object.
  *
- *   return copy;
- * }
- * ]|
- * If the returned #GDBusMessage is different from @message and cannot
- * be sent on @connection (it could use features, such as file
- * descriptors, not compatible with @connection), then a warning is
- * logged to <emphasis>standard error</emphasis>. Applications can
- * check this ahead of time using g_dbus_message_to_blob() passing a
- * #GDBusCapabilityFlags value obtained from @connection.
- *
- * Returns: (transfer full) (allow-none): A #GDBusMessage that will be freed with g_object_unref() or %NULL to drop the message. Passive filter functions can simply return the passed @message object.
- * Since: 2.26
- */
-
-
-/**
- * GDBusMessageFlags:
- * @G_DBUS_MESSAGE_FLAGS_NONE: No flags set.
- * @G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED: A reply is not expected.
- * @G_DBUS_MESSAGE_FLAGS_NO_AUTO_START: The bus must not launch an owner for the destination name in response to this message.
- *
- * Message flags used in #GDBusMessage.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusMessageHeaderField:
- * @G_DBUS_MESSAGE_HEADER_FIELD_INVALID: Not a valid header field.
- * @G_DBUS_MESSAGE_HEADER_FIELD_PATH: The object path.
- * @G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE: The interface name.
- * @G_DBUS_MESSAGE_HEADER_FIELD_MEMBER: The method or signal name.
- * @G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME: The name of the error that occurred.
- * @G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL: The serial number the message is a reply to.
- * @G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION: The name the message is intended for.
- * @G_DBUS_MESSAGE_HEADER_FIELD_SENDER: Unique name of the sender of the message (filled in by the bus).
- * @G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE: The signature of the message body.
- * @G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS: The number of UNIX file descriptors that accompany the message.
- *
- * Header fields used in #GDBusMessage.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusMessageType:
- * @G_DBUS_MESSAGE_TYPE_INVALID: Message is of invalid type.
- * @G_DBUS_MESSAGE_TYPE_METHOD_CALL: Method call.
- * @G_DBUS_MESSAGE_TYPE_METHOD_RETURN: Method reply.
- * @G_DBUS_MESSAGE_TYPE_ERROR: Error reply.
- * @G_DBUS_MESSAGE_TYPE_SIGNAL: Signal emission.
- *
- * Message types used in #GDBusMessage.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusMethodInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @name: The name of the D-Bus method, e.g. @RequestName.
- * @in_args: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no in arguments.
- * @out_args: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no out arguments.
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about a method on an D-Bus interface.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusMethodInvocation:
- *
- * The #GDBusMethodInvocation structure contains only private data and
- * should only be accessed using the provided API.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusMethodInvocationClass:
- *
- * Class structure for #GDBusMethodInvocation.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusNodeInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @path: The path of the node or %NULL if omitted. Note that this may be a relative path. See the D-Bus specification for more details.
- * @interfaces: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusInterfaceInfo structures or %NULL if there are no interfaces.
- * @nodes: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusNodeInfo structures or %NULL if there are no nodes.
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about nodes in a remote object hierarchy.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusObject::interface-added:
- * @object: The #GDBusObject emitting the signal.
- * @interface: The #GDBusInterface that was added.
- *
- * Emitted when @interface is added to @object.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObject::interface-removed:
- * @object: The #GDBusObject emitting the signal.
- * @interface: The #GDBusInterface that was removed.
- *
- * Emitted when @interface is removed from @object.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectIface:
- * @parent_iface: The parent interface.
- * @get_object_path: Returns the object path. See g_dbus_object_get_object_path().
- * @get_interfaces: Returns all interfaces. See g_dbus_object_get_interfaces().
- * @get_interface: Returns an interface by name. See g_dbus_object_get_interface().
- * @interface_added: Signal handler for the #GDBusObject::interface-added signal.
- * @interface_removed: Signal handler for the #GDBusObject::interface-removed signal.
- *
- * Base object type for D-Bus objects.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectManager::interface-added:
- * @manager: The #GDBusObjectManager emitting the signal.
- * @object: The #GDBusObject on which an interface was added.
- * @interface: The #GDBusInterface that was added.
- *
- * Emitted when @interface is added to @object.
- *
- * This signal exists purely as a convenience to avoid having to
- * connect signals to all objects managed by @manager.
+ * This signal exists purely as a convenience to avoid having to
+ * connect signals to all objects managed by @manager.
  *
  * Since: 2.30
  */
@@ -1877,16 +725,6 @@
 
 
 /**
- * GDBusObjectManagerClient:
- *
- * The #GDBusObjectManagerClient structure contains private data and should
- * only be accessed using the provided API.
- *
- * Since: 2.30
- */
-
-
-/**
  * GDBusObjectManagerClient::interface-proxy-properties-changed:
  * @manager: The #GDBusObjectManagerClient emitting the signal.
  * @object_proxy: The #GDBusObjectProxy on which an interface has properties that are changing.
@@ -2020,57 +858,6 @@
 
 
 /**
- * GDBusObjectManagerClientClass:
- * @parent_class: The parent class.
- * @interface_proxy_signal: Signal class handler for the #GDBusObjectManagerClient::interface-proxy-signal signal.
- * @interface_proxy_properties_changed: Signal class handler for the #GDBusObjectManagerClient::interface-proxy-properties-changed signal.
- *
- * Class structure for #GDBusObjectManagerClient.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectManagerClientFlags:
- * @G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE: No flags set.
- * @G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START: If not set and the manager is for a well-known name, then request the bus to launch an owner for the name if no-one owns the name. This flag can only be used in managers for well-known names.
- *
- * Flags used when constructing a #GDBusObjectManagerClient.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectManagerIface:
- * @parent_iface: The parent interface.
- * @get_object_path: Virtual function for g_dbus_object_manager_get_object_path().
- * @get_objects: Virtual function for g_dbus_object_manager_get_objects().
- * @get_object: Virtual function for g_dbus_object_manager_get_object().
- * @get_interface: Virtual function for g_dbus_object_manager_get_interface().
- * @object_added: Signal handler for the #GDBusObjectManager::object-added signal.
- * @object_removed: Signal handler for the #GDBusObjectManager::object-removed signal.
- * @interface_added: Signal handler for the #GDBusObjectManager::interface-added signal.
- * @interface_removed: Signal handler for the #GDBusObjectManager::interface-removed signal.
- *
- * Base type for D-Bus object managers.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectManagerServer:
- *
- * The #GDBusObjectManagerServer structure contains private data and should
- * only be accessed using the provided API.
- *
- * Since: 2.30
- */
-
-
-/**
  * GDBusObjectManagerServer:connection:
  *
  * The #GDBusConnection to export objects on.
@@ -2089,26 +876,6 @@
 
 
 /**
- * GDBusObjectManagerServerClass:
- * @parent_class: The parent class.
- *
- * Class structure for #GDBusObjectManagerServer.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectProxy:
- *
- * The #GDBusObjectProxy structure contains private data and should
- * only be accessed using the provided API.
- *
- * Since: 2.30
- */
-
-
-/**
  * GDBusObjectProxy:g-connection:
  *
  * The connection of the proxy.
@@ -2127,26 +894,6 @@
 
 
 /**
- * GDBusObjectProxyClass:
- * @parent_class: The parent class.
- *
- * Class structure for #GDBusObjectProxy.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusObjectSkeleton:
- *
- * The #GDBusObjectSkeleton structure contains private data and should only be
- * accessed using the provided API.
- *
- * Since: 2.30
- */
-
-
-/**
  * GDBusObjectSkeleton::authorize-method:
  * @object: The #GDBusObjectSkeleton emitting the signal.
  * @interface: The #GDBusInterfaceSkeleton that @invocation is for.
@@ -2176,53 +923,6 @@
 
 
 /**
- * GDBusObjectSkeletonClass:
- * @parent_class: The parent class.
- * @authorize_method: Signal class handler for the #GDBusObjectSkeleton::authorize-method signal.
- *
- * Class structure for #GDBusObjectSkeleton.
- *
- * Since: 2.30
- */
-
-
-/**
- * GDBusPropertyInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @name: The name of the D-Bus property, e.g. "SupportedFilesystems".
- * @signature: The D-Bus signature of the property (a single complete type).
- * @flags: Access control flags for the property.
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about a D-Bus property on a D-Bus interface.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusPropertyInfoFlags:
- * @G_DBUS_PROPERTY_INFO_FLAGS_NONE: No flags set.
- * @G_DBUS_PROPERTY_INFO_FLAGS_READABLE: Property is readable.
- * @G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE: Property is writable.
- *
- * Flags describing the access control of a D-Bus property.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusProxy:
- *
- * The #GDBusProxy structure contains only private data and
- * should only be accessed using the provided API.
- *
- * Since: 2.26
- */
-
-
-/**
  * GDBusProxy::g-properties-changed:
  * @proxy: The #GDBusProxy emitting the signal.
  * @changed_properties: A #GVariant containing the properties that changed
@@ -2379,62 +1079,6 @@
 
 
 /**
- * GDBusProxyClass:
- * @g_properties_changed: Signal class handler for the #GDBusProxy::g-properties-changed signal.
- * @g_signal: Signal class handler for the #GDBusProxy::g-signal signal.
- *
- * Class structure for #GDBusProxy.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusProxyFlags:
- * @G_DBUS_PROXY_FLAGS_NONE: No flags set.
- * @G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES: Don't load properties.
- * @G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS: Don't connect to signals on the remote object.
- * @G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START: If not set and the proxy if for a well-known name, then request the bus to launch an owner for the name if no-one owns the name. This flag can only be used in proxies for well-known names.
- * @G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES: If set, the property value for any <emphasis>invalidated property</emphasis> will be (asynchronously) retrieved upon receiving the <ulink url="http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-properties";>PropertiesChanged</ulink> D-Bus signal and the property will not cause emission of the #GDBusProxy::g-properties-changed signal. When the value is received the #GDBusProxy::g-properties-changed signal is emitted for the property along with the retrieved value. Since 2.32.
- *
- * Flags used when constructing an instance of a #GDBusProxy derived class.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusProxyTypeFunc:
- * @manager: A #GDBusObjectManagerClient.
- * @object_path: The object path of the remote object.
- * @interface_name: (allow-none): The interface name of the remote object or %NULL if a #GDBusObjectProxy #GType is requested.
- * @user_data: User data.
- *
- * Function signature for a function used to determine the #GType to
- * use for an interface proxy (if @interface_name is not %NULL) or
- * object proxy (if @interface_name is %NULL).
- *
- * This function is called in the
- * <link linkend="g-main-context-push-thread-default">thread-default main loop</link>
- * that @manager was constructed in.
- *
- * Returns: A #GType to use for the remote object. The returned type must be a #GDBusProxy<!-- -->- or #GDBusObjectProxy<!-- -->-derived type.
- * Since: 2.30
- */
-
-
-/**
- * GDBusSendMessageFlags:
- * @G_DBUS_SEND_MESSAGE_FLAGS_NONE: No flags set.
- * @G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL: Do not automatically assign a serial number from the #GDBusConnection object when sending a message.
- *
- * Flags used when sending #GDBusMessage<!-- -->s on a #GDBusConnection.
- *
- * Since: 2.26
- */
-
-
-/**
  * GDBusServer:
  *
  * The #GDBusServer structure contains only private data and
@@ -2541,173 +1185,6 @@
 
 
 /**
- * GDBusServerFlags:
- * @G_DBUS_SERVER_FLAGS_NONE: No flags set.
- * @G_DBUS_SERVER_FLAGS_RUN_IN_THREAD: All #GDBusServer::new-connection signals will run in separated dedicated threads (see signal for details).
- * @G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS: Allow the anonymous authentication method.
- *
- * Flags used when creating a #GDBusServer.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusSignalCallback:
- * @connection: A #GDBusConnection.
- * @sender_name: The unique bus name of the sender of the signal.
- * @object_path: The object path that the signal was emitted on.
- * @interface_name: The name of the interface.
- * @signal_name: The name of the signal.
- * @parameters: A #GVariant tuple with parameters for the signal.
- * @user_data: User data passed when subscribing to the signal.
- *
- * Signature for callback function used in g_dbus_connection_signal_subscribe().
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusSignalFlags:
- * @G_DBUS_SIGNAL_FLAGS_NONE: No flags set.
- * @G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE: Don't actually send the AddMatch D-Bus call for this signal subscription.  This gives you more control over which match rules you add (but you must add them manually).
- *
- * Flags used when subscribing to signals via g_dbus_connection_signal_subscribe().
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusSignalInfo:
- * @ref_count: The reference count or -1 if statically allocated.
- * @name: The name of the D-Bus signal, e.g. "NameOwnerChanged".
- * @args: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no arguments.
- * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
- *
- * Information about a signal on a D-Bus interface.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusSubtreeDispatchFunc:
- * @connection: A #GDBusConnection.
- * @sender: The unique bus name of the remote caller.
- * @object_path: The object path that was registered with g_dbus_connection_register_subtree().
- * @interface_name: The D-Bus interface name that the method call or property access is for.
- * @node: A node that is a child of @object_path (relative to @object_path) or %NULL for the root of the subtree.
- * @out_user_data: Return location for user data to pass to functions in the returned #GDBusInterfaceVTable (never %NULL).
- * @user_data: The @user_data #gpointer passed to g_dbus_connection_register_subtree().
- *
- * The type of the @dispatch function in #GDBusSubtreeVTable.
- *
- * Subtrees are flat.  @node, if non-%NULL, is always exactly one
- * segment of the object path (ie: it never contains a slash).
- *
- * Returns: A #GDBusInterfaceVTable or %NULL if you don't want to handle the methods.
- * Since: 2.26
- */
-
-
-/**
- * GDBusSubtreeEnumerateFunc:
- * @connection: A #GDBusConnection.
- * @sender: The unique bus name of the remote caller.
- * @object_path: The object path that was registered with g_dbus_connection_register_subtree().
- * @user_data: The @user_data #gpointer passed to g_dbus_connection_register_subtree().
- *
- * The type of the @enumerate function in #GDBusSubtreeVTable.
- *
- * This function is called when generating introspection data and also
- * when preparing to dispatch incoming messages in the event that the
- * %G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES flag is not
- * specified (ie: to verify that the object path is valid).
- *
- * Hierarchies are not supported; the items that you return should not
- * contain the '/' character.
- *
- * The return value will be freed with g_strfreev().
- *
- * Returns: A newly allocated array of strings for node names that are children of @object_path.
- * Since: 2.26
- */
-
-
-/**
- * GDBusSubtreeFlags:
- * @G_DBUS_SUBTREE_FLAGS_NONE: No flags set.
- * @G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES: Method calls to objects not in the enumerated range will still be dispatched. This is useful if you want to dynamically spawn objects in the subtree.
- *
- * Flags passed to g_dbus_connection_register_subtree().
- *
- * Since: 2.26
- */
-
-
-/**
- * GDBusSubtreeIntrospectFunc:
- * @connection: A #GDBusConnection.
- * @sender: The unique bus name of the remote caller.
- * @object_path: The object path that was registered with g_dbus_connection_register_subtree().
- * @node: A node that is a child of @object_path (relative to @object_path) or %NULL for the root of the subtree.
- * @user_data: The @user_data #gpointer passed to g_dbus_connection_register_subtree().
- *
- * The type of the @introspect function in #GDBusSubtreeVTable.
- *
- * Subtrees are flat.  @node, if non-%NULL, is always exactly one
- * segment of the object path (ie: it never contains a slash).
- *
- * This function should return %NULL to indicate that there is no object
- * at this node.
- *
- * If this function returns non-%NULL, the return value is expected to
- * be a %NULL-terminated array of pointers to #GDBusInterfaceInfo
- * structures describing the interfaces implemented by @node.  This
- * array will have g_dbus_interface_info_unref() called on each item
- * before being freed with g_free().
- *
- * The difference between returning %NULL and an array containing zero
- * items is that the standard DBus interfaces will returned to the
- * remote introspector in the empty array case, but not in the %NULL
- * case.
- *
- * Returns: A %NULL-terminated array of pointers to #GDBusInterfaceInfo, or %NULL.
- * Since: 2.26
- */
-
-
-/**
- * GDBusSubtreeVTable:
- * @enumerate: Function for enumerating child nodes.
- * @introspect: Function for introspecting a child node.
- * @dispatch: Function for dispatching a remote call on a child node.
- *
- * Virtual table for handling subtrees registered with g_dbus_connection_register_subtree().
- *
- * Since: 2.26
- */
-
-
-/**
- * GDataInputStream:
- *
- * An implementation of #GBufferedInputStream that allows for high-level
- * data manipulation of arbitrary data (including binary operations).
- */
-
-
-/**
- * GDataOutputStream:
- *
- * An implementation of #GBufferedOutputStream that allows for high-level
- * data manipulation of arbitrary data (including binary operations).
- */
-
-
-/**
  * GDataOutputStream:byte-order:
  *
  * Determines the byte ordering that is used when writing
@@ -2733,48 +1210,6 @@
 
 
 /**
- * GDataStreamByteOrder:
- * @G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN: Selects Big Endian byte order.
- * @G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN: Selects Little Endian byte order.
- * @G_DATA_STREAM_BYTE_ORDER_HOST_ENDIAN: Selects endianness based on host machine's architecture.
- *
- * #GDataStreamByteOrder is used to ensure proper endianness of streaming data sources
- * across various machine architectures.
- */
-
-
-/**
- * GDataStreamNewlineType:
- * @G_DATA_STREAM_NEWLINE_TYPE_LF: Selects "LF" line endings, common on most modern UNIX platforms.
- * @G_DATA_STREAM_NEWLINE_TYPE_CR: Selects "CR" line endings.
- * @G_DATA_STREAM_NEWLINE_TYPE_CR_LF: Selects "CR, LF" line ending, common on Microsoft Windows.
- * @G_DATA_STREAM_NEWLINE_TYPE_ANY: Automatically try to handle any line ending type.
- *
- * #GDataStreamNewlineType is used when checking for or setting the line endings for a given file.
- */
-
-
-/**
- * GDateTime:
- *
- * <structname>GDateTime</structname> is an opaque structure whose members
- * cannot be accessed directly.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDebugKey:
- * @key: the string
- * @value: the flag
- *
- * Associates a string with a bit flag.
- * Used in g_parse_debug_string().
- */
-
-
-/**
  * GDesktopAppInfo:
  *
  * Information about an installed application from a desktop file.
@@ -2789,33 +1224,6 @@
 
 
 /**
- * GDesktopAppInfoLookup:
- *
- * Interface that is used by backends to associate default
- * handlers with URI schemes.
- */
-
-
-/**
- * GDesktopAppLaunchCallback:
- * @appinfo: a #GDesktopAppInfo
- * @pid: Process identifier
- * @user_data: User data
- *
- * During invocation, g_desktop_app_info_launch_uris_as_manager() may
- * create one or more child processes.  This callback is invoked once
- * for each, providing the process ID.
- */
-
-
-/**
- * GDrive:
- *
- * Opaque drive object.
- */
-
-
-/**
  * GDrive::changed:
  * @drive: a #GDrive.
  *
@@ -2855,9380 +1263,1837 @@
 
 
 /**
- * GDriveIface:
- * @g_iface: The parent interface.
- * @changed: Signal emitted when the drive is changed.
- * @disconnected: The removed signal that is emitted when the #GDrive have been disconnected. If the recipient is holding references to the object they should release them so the object can be finalized.
- * @eject_button: Signal emitted when the physical eject button (if any) of a drive have been pressed.
- * @get_name: Returns the name for the given #GDrive.
- * @get_icon: Returns a #GIcon for the given #GDrive.
- * @has_volumes: Returns %TRUE if the #GDrive has mountable volumes.
- * @get_volumes: Returns a list #GList of #GVolume for the #GDrive.
- * @is_media_removable: Returns %TRUE if the #GDrive supports removal and insertion of media.
- * @has_media: Returns %TRUE if the #GDrive has media inserted.
- * @is_media_check_automatic: Returns %TRUE if the #GDrive is capabable of automatically detecting media changes.
- * @can_poll_for_media: Returns %TRUE if the #GDrive is capable of manually polling for media change.
- * @can_eject: Returns %TRUE if the #GDrive can eject media.
- * @eject: Ejects a #GDrive.
- * @eject_finish: Finishes an eject operation.
- * @poll_for_media: Poll for media insertion/removal on a #GDrive.
- * @poll_for_media_finish: Finishes a media poll operation.
- * @get_identifier: Returns the identifier of the given kind, or %NULL if the #GDrive doesn't have one.
- * @enumerate_identifiers: Returns an array strings listing the kinds of identifiers which the #GDrive has.
- * @get_start_stop_type: Gets a #GDriveStartStopType with details about starting/stopping the drive. Since 2.22.
- * @can_stop: Returns %TRUE if a #GDrive can be stopped. Since 2.22.
- * @stop: Stops a #GDrive. Since 2.22.
- * @stop_finish: Finishes a stop operation. Since 2.22.
- * @can_start: Returns %TRUE if a #GDrive can be started. Since 2.22.
- * @can_start_degraded: Returns %TRUE if a #GDrive can be started degraded. Since 2.22.
- * @start: Starts a #GDrive. Since 2.22.
- * @start_finish: Finishes a start operation. Since 2.22.
- * @stop_button: Signal emitted when the physical stop button (if any) of a drive have been pressed. Since 2.22.
- * @eject_with_operation: Starts ejecting a #GDrive using a #GMountOperation. Since 2.22.
- * @eject_with_operation_finish: Finishes an eject operation using a #GMountOperation. Since 2.22.
- * @get_sort_key: Gets a key used for sorting #GDrive instances or %NULL if no such key exists. Since 2.32.
+ * GFileIcon:file:
  *
- * Interface for creating #GDrive implementations.
+ * The file containing the icon.
  */
 
 
 /**
- * GDriveStartFlags:
- * @G_DRIVE_START_NONE: No flags set.
- *
- * Flags used when starting a drive.
+ * GFileMonitor::changed:
+ * @monitor: a #GFileMonitor.
+ * @file: a #GFile.
+ * @other_file: (allow-none): a #GFile or #NULL.
+ * @event_type: a #GFileMonitorEvent.
  *
- * Since: 2.22
- */
-
-
-/**
- * GDriveStartStopType:
- * @G_DRIVE_START_STOP_TYPE_UNKNOWN: Unknown or drive doesn't support start/stop.
- * @G_DRIVE_START_STOP_TYPE_SHUTDOWN: The stop method will physically shut down the drive and e.g. power down the port the drive is attached to.
- * @G_DRIVE_START_STOP_TYPE_NETWORK: The start/stop methods are used for connecting/disconnect to the drive over the network.
- * @G_DRIVE_START_STOP_TYPE_MULTIDISK: The start/stop methods will assemble/disassemble a virtual drive from several physical drives.
- * @G_DRIVE_START_STOP_TYPE_PASSWORD: The start/stop methods will unlock/lock the disk (for example using the ATA <quote>SECURITY UNLOCK DEVICE</quote> command)
+ * Emitted when @file has been changed.
  *
- * Enumeration describing how a drive can be started/stopped.
+ * If using #G_FILE_MONITOR_SEND_MOVED flag and @event_type is
+ * #G_FILE_MONITOR_EVENT_MOVED, @file will be set to a #GFile containing the
+ * old path, and @other_file will be set to a #GFile containing the new path.
  *
- * Since: 2.22
+ * In all the other cases, @other_file will be set to #NULL.
  */
 
 
 /**
- * GEmblem:
+ * GFilenameCompleter::got-completion-data:
  *
- * An object for Emblems
+ * Emitted when the file name completion information comes available.
  */
 
 
 /**
- * GEmblemOrigin:
- * @G_EMBLEM_ORIGIN_UNKNOWN: Emblem of unknown origin
- * @G_EMBLEM_ORIGIN_DEVICE: Emblem adds device-specific information
- * @G_EMBLEM_ORIGIN_LIVEMETADATA: Emblem depicts live metadata, such as "readonly"
- * @G_EMBLEM_ORIGIN_TAG: Emblem comes from a user-defined tag, e.g. set by nautilus (in the future)
+ * GIOModuleScope:
  *
- * GEmblemOrigin is used to add information about the origin of the emblem
- * to #GEmblem.
+ * Represents a scope for loading IO modules. A scope can be used for blocking
+ * duplicate modules, or blocking a module you don't want to load.
  *
- * Since: 2.18
- */
-
-
-/**
- * GEmblemedIcon:
+ * The scope can be used with g_io_modules_load_all_in_directory_with_scope()
+ * or g_io_modules_scan_all_in_directory_with_scope().
  *
- * An implementation of #GIcon for icons with emblems.
+ * Since: 2.30
  */
 
 
 /**
- * GEnumClass:
- * @g_type_class: the parent class
- * @minimum: the smallest possible value.
- * @maximum: the largest possible value.
- * @n_values: the number of possible values.
- * @values: an array of #GEnumValue structs describing the individual values.
+ * GInetAddress:
  *
- * The class of an enumeration type holds information about its
- * possible values.
+ * An IPv4 or IPv6 internet address.
  */
 
 
 /**
- * GEnumValue:
- * @value: the enum value
- * @value_name: the name of the value
- * @value_nick: the nickname of the value
+ * GInetAddress:is-any:
  *
- * A structure which contains a single enum value, its name, and its
- * nickname.
- */
-
-
-/**
- * GError:
- * @domain: error domain, e.g. #G_FILE_ERROR
- * @code: error code, e.g. %G_FILE_ERROR_NOENT
- * @message: human-readable informative error message
+ * Whether this is the "any" address for its family.
+ * See g_inet_address_get_is_any().
  *
- * The <structname>GError</structname> structure contains
- * information about an error that has occurred.
+ * Since: 2.22
  */
 
 
 /**
- * GFile:
+ * GInetAddress:is-link-local:
  *
- * A handle to an object implementing the #GFileIface interface.
- * Generally stores a location within the file system. Handles do not
- * necessarily represent files or directories that currently exist.
- */
-
-
-/**
- * GFileAttributeInfo:
- * @name: the name of the attribute.
- * @type: the #GFileAttributeType type of the attribute.
- * @flags: a set of #GFileAttributeInfoFlags.
+ * Whether this is a link-local address.
+ * See g_inet_address_get_is_link_local().
  *
- * Information about a specific attribute.
+ * Since: 2.22
  */
 
 
 /**
- * GFileAttributeInfoFlags:
- * @G_FILE_ATTRIBUTE_INFO_NONE: no flags set.
- * @G_FILE_ATTRIBUTE_INFO_COPY_WITH_FILE: copy the attribute values when the file is copied.
- * @G_FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED: copy the attribute values when the file is moved.
+ * GInetAddress:is-loopback:
  *
- * Flags specifying the behaviour of an attribute.
+ * Whether this is the loopback address for its family.
+ * See g_inet_address_get_is_loopback().
+ *
+ * Since: 2.22
  */
 
 
 /**
- * GFileAttributeInfoList:
- * @infos: an array of #GFileAttributeInfo<!-- -->s.
- * @n_infos: the number of values in the array.
+ * GInetAddress:is-mc-global:
+ *
+ * Whether this is a global multicast address.
+ * See g_inet_address_get_is_mc_global().
  *
- * Acts as a lightweight registry for possible valid file attributes.
- * The registry stores Key-Value pair formats as #GFileAttributeInfo<!-- -->s.
+ * Since: 2.22
  */
 
 
 /**
- * GFileAttributeMatcher:
+ * GInetAddress:is-mc-link-local:
+ *
+ * Whether this is a link-local multicast address.
+ * See g_inet_address_get_is_mc_link_local().
  *
- * Determines if a string matches a file attribute.
+ * Since: 2.22
  */
 
 
 /**
- * GFileAttributeStatus:
- * @G_FILE_ATTRIBUTE_STATUS_UNSET: Attribute value is unset (empty).
- * @G_FILE_ATTRIBUTE_STATUS_SET: Attribute value is set.
- * @G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING: Indicates an error in setting the value.
+ * GInetAddress:is-mc-node-local:
+ *
+ * Whether this is a node-local multicast address.
+ * See g_inet_address_get_is_mc_node_local().
  *
- * Used by g_file_set_attributes_from_info() when setting file attributes.
+ * Since: 2.22
  */
 
 
 /**
- * GFileAttributeType:
- * @G_FILE_ATTRIBUTE_TYPE_INVALID: indicates an invalid or uninitalized type.
- * @G_FILE_ATTRIBUTE_TYPE_STRING: a null terminated UTF8 string.
- * @G_FILE_ATTRIBUTE_TYPE_BYTE_STRING: a zero terminated string of non-zero bytes.
- * @G_FILE_ATTRIBUTE_TYPE_BOOLEAN: a boolean value.
- * @G_FILE_ATTRIBUTE_TYPE_UINT32: an unsigned 4-byte/32-bit integer.
- * @G_FILE_ATTRIBUTE_TYPE_INT32: a signed 4-byte/32-bit integer.
- * @G_FILE_ATTRIBUTE_TYPE_UINT64: an unsigned 8-byte/64-bit integer.
- * @G_FILE_ATTRIBUTE_TYPE_INT64: a signed 8-byte/64-bit integer.
- * @G_FILE_ATTRIBUTE_TYPE_OBJECT: a #GObject.
- * @G_FILE_ATTRIBUTE_TYPE_STRINGV: a %NULL terminated char **. Since 2.22
+ * GInetAddress:is-mc-org-local:
  *
- * The data types for file attributes.
+ * Whether this is an organization-local multicast address.
+ * See g_inet_address_get_is_mc_org_local().
+ *
+ * Since: 2.22
  */
 
 
 /**
- * GFileCopyFlags:
- * @G_FILE_COPY_NONE: No flags set.
- * @G_FILE_COPY_OVERWRITE: Overwrite any existing files
- * @G_FILE_COPY_BACKUP: Make a backup of any existing files.
- * @G_FILE_COPY_NOFOLLOW_SYMLINKS: Don't follow symlinks.
- * @G_FILE_COPY_ALL_METADATA: Copy all file metadata instead of just default set used for copy (see #GFileInfo).
- * @G_FILE_COPY_NO_FALLBACK_FOR_MOVE: Don't use copy and delete fallback if native move not supported.
- * @G_FILE_COPY_TARGET_DEFAULT_PERMS: Leaves target file with default perms, instead of setting the source file perms.
+ * GInetAddress:is-mc-site-local:
+ *
+ * Whether this is a site-local multicast address.
+ * See g_inet_address_get_is_mc_site_local().
  *
- * Flags used when copying or moving files.
+ * Since: 2.22
  */
 
 
 /**
- * GFileCreateFlags:
- * @G_FILE_CREATE_NONE: No flags set.
- * @G_FILE_CREATE_PRIVATE: Create a file that can only be accessed by the current user.
- * @G_FILE_CREATE_REPLACE_DESTINATION: Replace the destination as if it didn't exist before. Don't try to keep any old permissions, replace instead of following links. This is generally useful if you're doing a "copy over" rather than a "save new version of" replace operation. You can think of it as "unlink destination" before writing to it, although the implementation may not be exactly like that. Since 2.20
+ * GInetAddress:is-multicast:
+ *
+ * Whether this is a multicast address.
+ * See g_inet_address_get_is_multicast().
  *
- * Flags used when an operation may create a file.
+ * Since: 2.22
  */
 
 
 /**
- * GFileDescriptorBased:
+ * GInetAddress:is-site-local:
+ *
+ * Whether this is a site-local address.
+ * See g_inet_address_get_is_loopback().
  *
- * An interface for file descriptor based io objects.
+ * Since: 2.22
  */
 
 
 /**
- * GFileDescriptorBasedIface:
- * @g_iface: The parent interface.
+ * GInetAddressMask:
  *
+ * A combination of an IPv4 or IPv6 base address and a length,
+ * representing a range of IP addresses.
  *
+ * Since: 2.32
  */
 
 
 /**
- * GFileEnumerator:
+ * GInetSocketAddress:
  *
- * A per matched file iterator.
+ * An IPv4 or IPv6 socket address, corresponding to a <type>struct
+ * sockaddr_in</type> or <type>struct sockaddr_in6</type>.
  */
 
 
 /**
- * GFileIOStream:
+ * GInetSocketAddress:flowinfo:
  *
- * A subclass of GIOStream for opened files. This adds
- * a few file-specific operations and seeking and truncating.
+ * The <literal>sin6_flowinfo</literal> field, for IPv6 addresses.
  *
- * #GFileIOStream implements GSeekable.
+ * Since: 2.32
  */
 
 
 /**
- * GFileIcon:
+ * GInetSocketAddress:scope_id:
  *
- * Gets an icon for a #GFile. Implements #GLoadableIcon.
- */
-
-
-/**
- * GFileIcon:file:
+ * The <literal>sin6_scope_id</literal> field, for IPv6 addresses.
  *
- * The file containing the icon.
+ * Since: 2.32
  */
 
 
 /**
- * GFileIface:
- * @g_iface: The parent interface.
- * @dup: Duplicates a #GFile.
- * @hash: Creates a hash of a #GFile.
- * @equal: Checks equality of two given #GFile<!-- -->s.
- * @is_native: Checks to see if a file is native to the system.
- * @has_uri_scheme: Checks to see if a #GFile has a given URI scheme.
- * @get_uri_scheme: Gets the URI scheme for a #GFile.
- * @get_basename: Gets the basename for a given #GFile.
- * @get_path: Gets the current path within a #GFile.
- * @get_uri: Gets a URI for the path within a #GFile.
- * @get_parse_name: Gets the parsed name for the #GFile.
- * @get_parent: Gets the parent directory for the #GFile.
- * @prefix_matches: Checks whether a #GFile contains a specified file.
- * @get_relative_path: Gets the path for a #GFile relative to a given path.
- * @resolve_relative_path: Resolves a relative path for a #GFile to an absolute path.
- * @get_child_for_display_name: Gets the child #GFile for a given display name.
- * @enumerate_children: Gets a #GFileEnumerator with the children of a #GFile.
- * @enumerate_children_async: Asynchronously gets a #GFileEnumerator with the children of a #GFile.
- * @enumerate_children_finish: Finishes asynchronously enumerating the children.
- * @query_info: Gets the #GFileInfo for a #GFile.
- * @query_info_async: Asynchronously gets the #GFileInfo for a #GFile.
- * @query_info_finish: Finishes an asynchronous query info operation.
- * @query_filesystem_info: Gets a #GFileInfo for the file system #GFile is on.
- * @query_filesystem_info_async: Asynchronously gets a #GFileInfo for the file system #GFile is on.
- * @query_filesystem_info_finish: Finishes asynchronously getting the file system info.
- * @find_enclosing_mount: Gets a #GMount for the #GFile.
- * @find_enclosing_mount_async: Asynchronously gets the #GMount for a #GFile.
- * @find_enclosing_mount_finish: Finishes asynchronously getting the volume.
- * @set_display_name: Sets the display name for a #GFile.
- * @set_display_name_async: Asynchronously sets a #GFile's display name.
- * @set_display_name_finish: Finishes asynchronously setting a #GFile's display name.
- * @query_settable_attributes: Returns a list of #GFileAttribute<!-- -->s that can be set.
- * @_query_settable_attributes_async: Asynchronously gets a list of #GFileAttribute<!-- -->s that can be set.
- * @_query_settable_attributes_finish: Finishes asynchronously querying settable attributes.
- * @query_writable_namespaces: Returns a list of #GFileAttribute namespaces that are writable.
- * @_query_writable_namespaces_async: Asynchronously gets a list of #GFileAttribute namespaces that are writable.
- * @_query_writable_namespaces_finish: Finishes asynchronously querying the writable namespaces.
- * @set_attribute: Sets a #GFileAttribute.
- * @set_attributes_from_info: Sets a #GFileAttribute with information from a #GFileInfo.
- * @set_attributes_async: Asynchronously sets a file's attributes.
- * @set_attributes_finish: Finishes setting a file's attributes asynchronously.
- * @read_fn: Reads a file asynchronously.
- * @read_async: Asynchronously reads a file.
- * @read_finish: Finishes asynchronously reading a file.
- * @append_to: Writes to the end of a file.
- * @append_to_async: Asynchronously writes to the end of a file.
- * @append_to_finish: Finishes an asynchronous file append operation.
- * @create: Creates a new file.
- * @create_async: Asynchronously creates a file.
- * @create_finish: Finishes asynchronously creating a file.
- * @replace: Replaces the contents of a file.
- * @replace_async: Asynchronously replaces the contents of a file.
- * @replace_finish: Finishes asynchronously replacing a file.
- * @delete_file: Deletes a file.
- * @_delete_file_async: Asynchronously deletes a file.
- * @_delete_file_finish: Finishes an asynchronous delete.
- * @trash: Sends a #GFile to the Trash location.
- * @_trash_async: Asynchronously sends a #GFile to the Trash location.
- * @_trash_finish: Finishes an asynchronous file trashing operation.
- * @make_directory: Makes a directory.
- * @_make_directory_async: Asynchronously makes a directory.
- * @_make_directory_finish: Finishes making a directory asynchronously.
- * @make_symbolic_link: Makes a symbolic link.
- * @_make_symbolic_link_async: Asynchronously makes a symbolic link
- * @_make_symbolic_link_finish: Finishes making a symbolic link asynchronously.
- * @copy: Copies a file.
- * @copy_async: Asynchronously copies a file.
- * @copy_finish: Finishes an asynchronous copy operation.
- * @move: Moves a file.
- * @_move_async: Asynchronously moves a file.
- * @_move_finish: Finishes an asynchronous move operation.
- * @mount_mountable: Mounts a mountable object.
- * @mount_mountable_finish: Finishes a mounting operation.
- * @unmount_mountable: Unmounts a mountable object.
- * @unmount_mountable_finish: Finishes an unmount operation.
- * @eject_mountable: Ejects a mountable.
- * @eject_mountable_finish: Finishes an eject operation.
- * @mount_enclosing_volume: Mounts a specified location.
- * @mount_enclosing_volume_finish: Finishes mounting a specified location.
- * @monitor_dir: Creates a #GFileMonitor for the location.
- * @monitor_file: Creates a #GFileMonitor for the location.
- * @open_readwrite: Open file read/write. Since 2.22.
- * @open_readwrite_async: Asynchronously opens file read/write. Since 2.22.
- * @open_readwrite_finish: Finishes an asynchronous open read/write. Since 2.22.
- * @create_readwrite: Creates file read/write. Since 2.22.
- * @create_readwrite_async: Asynchronously creates file read/write. Since 2.22.
- * @create_readwrite_finish: Finishes an asynchronous creates read/write. Since 2.22.
- * @replace_readwrite: Replaces file read/write. Since 2.22.
- * @replace_readwrite_async: Asynchronously replaces file read/write. Since 2.22.
- * @replace_readwrite_finish: Finishes an asynchronous replace read/write. Since 2.22.
- * @start_mountable: Starts a mountable object. Since 2.22.
- * @start_mountable_finish: Finishes an start operation. Since 2.22.
- * @stop_mountable: Stops a mountable. Since 2.22.
- * @stop_mountable_finish: Finishes an stop operation. Since 2.22.
- * @supports_thread_contexts: a boolean that indicates whether the #GFile implementation supports thread-default contexts. Since 2.22.
- * @unmount_mountable_with_operation: Unmounts a mountable object using a #GMountOperation. Since 2.22.
- * @unmount_mountable_with_operation_finish: Finishes an unmount operation using a #GMountOperation. Since 2.22.
- * @eject_mountable_with_operation: Ejects a mountable object using a #GMountOperation. Since 2.22.
- * @eject_mountable_with_operation_finish: Finishes an eject operation using a #GMountOperation. Since 2.22.
- * @poll_mountable: Polls a mountable object for media changes. Since 2.22.
- * @poll_mountable_finish: Finishes an poll operation for media changes. Since 2.22.
- *
- * An interface for writing VFS file handles.
- */
-
-
-/**
- * GFileInfo:
- *
- * Stores information about a file system object referenced by a #GFile.
- */
-
-
-/**
- * GFileInputStream:
- *
- * A subclass of GInputStream for opened files. This adds
- * a few file-specific operations and seeking.
- *
- * #GFileInputStream implements #GSeekable.
- */
-
-
-/**
- * GFileMonitor:
- *
- * Watches for changes to a file.
+ * GMemoryOutputStream:data:
+ *
+ * Pointer to buffer where data will be written.
+ *
+ * Since: 2.24
  */
 
 
 /**
- * GFileMonitor::changed:
- * @monitor: a #GFileMonitor.
- * @file: a #GFile.
- * @other_file: (allow-none): a #GFile or #NULL.
- * @event_type: a #GFileMonitorEvent.
- *
- * Emitted when @file has been changed.
+ * GMemoryOutputStream:data-size:
  *
- * If using #G_FILE_MONITOR_SEND_MOVED flag and @event_type is
- * #G_FILE_MONITOR_EVENT_MOVED, @file will be set to a #GFile containing the
- * old path, and @other_file will be set to a #GFile containing the new path.
+ * Size of data written to the buffer.
  *
- * In all the other cases, @other_file will be set to #NULL.
+ * Since: 2.24
  */
 
 
 /**
- * GFileMonitorEvent:
- * @G_FILE_MONITOR_EVENT_CHANGED: a file changed.
- * @G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT: a hint that this was probably the last change in a set of changes.
- * @G_FILE_MONITOR_EVENT_DELETED: a file was deleted.
- * @G_FILE_MONITOR_EVENT_CREATED: a file was created.
- * @G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED: a file attribute was changed.
- * @G_FILE_MONITOR_EVENT_PRE_UNMOUNT: the file location will soon be unmounted.
- * @G_FILE_MONITOR_EVENT_UNMOUNTED: the file location was unmounted.
- * @G_FILE_MONITOR_EVENT_MOVED: the file was moved.
+ * GMemoryOutputStream:destroy-function: (skip)
+ *
+ * Function called with the buffer as argument when the stream is destroyed.
  *
- * Specifies what type of event a monitor event is.
+ * Since: 2.24
  */
 
 
 /**
- * GFileMonitorFlags:
- * @G_FILE_MONITOR_NONE: No flags set.
- * @G_FILE_MONITOR_WATCH_MOUNTS: Watch for mount events.
- * @G_FILE_MONITOR_SEND_MOVED: Pair DELETED and CREATED events caused by file renames (moves) and send a single G_FILE_MONITOR_EVENT_MOVED event instead (NB: not supported on all backends; the default behaviour -without specifying this flag- is to send single DELETED and CREATED events).
+ * GMemoryOutputStream:realloc-function: (skip)
+ *
+ * Function with realloc semantics called to enlarge the buffer.
  *
- * Flags used to set what a #GFileMonitor will watch for.
+ * Since: 2.24
  */
 
 
 /**
- * GFileOutputStream:
+ * GMemoryOutputStream:size:
  *
- * A subclass of GOutputStream for opened files. This adds
- * a few file-specific operations and seeking and truncating.
+ * Current size of the data buffer.
  *
- * #GFileOutputStream implements GSeekable.
+ * Since: 2.24
  */
 
 
 /**
- * GFileProgressCallback:
- * @current_num_bytes: the current number of bytes in the operation.
- * @total_num_bytes: the total number of bytes in the operation.
- * @user_data: user data passed to the callback.
+ * GMenu:
+ *
+ * #GMenu is an opaque structure type.  You must access it using the
+ * functions below.
  *
- * When doing file operations that may take a while, such as moving
- * a file or copying a file, a progress callback is used to pass how
- * far along that operation is to the application.
+ * Since: 2.32
  */
 
 
 /**
- * GFileQueryInfoFlags:
- * @G_FILE_QUERY_INFO_NONE: No flags set.
- * @G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS: Don't follow symlinks.
+ * GMenuAttributeIter:
+ *
+ * #GMenuAttributeIter is an opaque structure type.  You must access it
+ * using the functions below.
  *
- * Flags used when querying a #GFileInfo.
+ * Since: 2.32
  */
 
 
 /**
- * GFileReadMoreCallback:
- * @file_contents: the data as currently read.
- * @file_size: the size of the data currently read.
- * @callback_data: data passed to the callback.
+ * GMenuItem:
  *
- * When loading the partial contents of a file with g_file_load_partial_contents_async(),
- * it may become necessary to determine if any more data from the file should be loaded.
- * A #GFileReadMoreCallback function facilitates this by returning %TRUE if more data
- * should be read, or %FALSE otherwise.
+ * #GMenuItem is an opaque structure type.  You must access it using the
+ * functions below.
  *
- * Returns: %TRUE if more data should be read back. %FALSE otherwise.
+ * Since: 2.32
  */
 
 
 /**
- * GFileType:
- * @G_FILE_TYPE_UNKNOWN: File's type is unknown.
- * @G_FILE_TYPE_REGULAR: File handle represents a regular file.
- * @G_FILE_TYPE_DIRECTORY: File handle represents a directory.
- * @G_FILE_TYPE_SYMBOLIC_LINK: File handle represents a symbolic link (Unix systems).
- * @G_FILE_TYPE_SPECIAL: File is a "special" file, such as a socket, fifo, block device, or character device.
- * @G_FILE_TYPE_SHORTCUT: File is a shortcut (Windows systems).
- * @G_FILE_TYPE_MOUNTABLE: File is a mountable location.
+ * GMenuLinkIter:
+ *
+ * #GMenuLinkIter is an opaque structure type.  You must access it using
+ * the functions below.
  *
- * Indicates the file's on-disk type.
+ * Since: 2.32
  */
 
 
 /**
- * GFilenameCompleter:
+ * GMenuModel:
  *
- * Completes filenames based on files that exist within the file system.
+ * #GMenuModel is an opaque structure type.  You must access it using the
+ * functions below.
+ *
+ * Since: 2.32
  */
 
 
 /**
- * GFilenameCompleter::got-completion-data:
+ * GMenuModel::items-changed:
+ * @model: the #GMenuModel that is changing
+ * @position: the position of the change
+ * @removed: the number of items removed
+ * @added: the number of items added
  *
- * Emitted when the file name completion information comes available.
- */
-
-
-/**
- * GFilesystemPreviewType:
- * @G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS: Only preview files if user has explicitly requested it.
- * @G_FILESYSTEM_PREVIEW_TYPE_IF_LOCAL: Preview files if user has requested preview of "local" files.
- * @G_FILESYSTEM_PREVIEW_TYPE_NEVER: Never preview files.
+ * Emitted when a change has occured to the menu.
  *
- * Indicates a hint from the file system whether files should be
- * previewed in a file manager. Returned as the value of the key
- * #G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW.
- */
-
-
-/**
- * GFilterInputStream:
+ * The only changes that can occur to a menu is that items are removed
+ * or added.  Items may not change (except by being removed and added
+ * back in the same location).  This signal is capable of describing
+ * both of those changes (at the same time).
  *
- * A base class for all input streams that work on an underlying stream.
- */
-
-
-/**
- * GFilterOutputStream:
+ * The signal means that starting at the index @position, @removed
+ * items were removed and @added items were added in their place.  If
+ * @removed is zero then only items were added.  If @added is zero
+ * then only items were removed.
+ *
+ * As an example, if the menu contains items a, b, c, d (in that
+ * order) and the signal (2, 1, 3) occurs then the new composition of
+ * the menu will be a, b, _, _, _, d (with each _ representing some
+ * new item).
  *
- * A base class for all output streams that work on an underlying stream.
+ * Signal handlers may query the model (particularly the added items)
+ * and expect to see the results of the modification that is being
+ * reported.  The signal is emitted after the modification.
  */
 
 
 /**
- * GFlagsClass:
- * @g_type_class: the parent class
- * @mask: a mask covering all possible values.
- * @n_values: the number of possible values.
- * @values: an array of #GFlagsValue structs describing the individual values.
+ * GMount::changed:
+ * @mount: the object on which the signal is emitted
  *
- * The class of a flags type holds information about its
- * possible values.
+ * Emitted when the mount has been changed.
  */
 
 
 /**
- * GFlagsValue:
- * @value: the flags value
- * @value_name: the name of the value
- * @value_nick: the nickname of the value
+ * GMount::pre-unmount:
+ * @mount: the object on which the signal is emitted
+ *
+ * This signal is emitted when the #GMount is about to be
+ * unmounted.
  *
- * A structure which contains a single flags value, its name, and its
- * nickname.
+ * Since: 2.22
  */
 
 
 /**
- * GFreeFunc:
- * @data: a data pointer
+ * GMount::unmounted:
+ * @mount: the object on which the signal is emitted
  *
- * Declares a type of function which takes an arbitrary
- * data pointer argument and has no return value. It is
- * not currently used in GLib or GTK+.
+ * This signal is emitted when the #GMount have been
+ * unmounted. If the recipient is holding references to the
+ * object they should release them so the object can be
+ * finalized.
  */
 
 
 /**
- * GHmac:
+ * GMountOperation::aborted:
  *
- * An opaque structure representing a HMAC operation.
- * To create a new GHmac, use g_hmac_new(). To free
- * a GHmac, use g_hmac_unref().
+ * Emitted by the backend when e.g. a device becomes unavailable
+ * while a mount operation is in progress.
  *
- * Since: 2.30
- */
-
-
-/**
- * GIOErrorEnum:
- * @G_IO_ERROR_FAILED: Generic error condition for when any operation fails.
- * @G_IO_ERROR_NOT_FOUND: File not found.
- * @G_IO_ERROR_EXISTS: File already exists.
- * @G_IO_ERROR_IS_DIRECTORY: File is a directory.
- * @G_IO_ERROR_NOT_DIRECTORY: File is not a directory.
- * @G_IO_ERROR_NOT_EMPTY: File is a directory that isn't empty.
- * @G_IO_ERROR_NOT_REGULAR_FILE: File is not a regular file.
- * @G_IO_ERROR_NOT_SYMBOLIC_LINK: File is not a symbolic link.
- * @G_IO_ERROR_NOT_MOUNTABLE_FILE: File cannot be mounted.
- * @G_IO_ERROR_FILENAME_TOO_LONG: Filename is too many characters.
- * @G_IO_ERROR_INVALID_FILENAME: Filename is invalid or contains invalid characters.
- * @G_IO_ERROR_TOO_MANY_LINKS: File contains too many symbolic links.
- * @G_IO_ERROR_NO_SPACE: No space left on drive.
- * @G_IO_ERROR_INVALID_ARGUMENT: Invalid argument.
- * @G_IO_ERROR_PERMISSION_DENIED: Permission denied.
- * @G_IO_ERROR_NOT_SUPPORTED: Operation not supported for the current backend.
- * @G_IO_ERROR_NOT_MOUNTED: File isn't mounted.
- * @G_IO_ERROR_ALREADY_MOUNTED: File is already mounted.
- * @G_IO_ERROR_CLOSED: File was closed.
- * @G_IO_ERROR_CANCELLED: Operation was cancelled. See #GCancellable.
- * @G_IO_ERROR_PENDING: Operations are still pending.
- * @G_IO_ERROR_READ_ONLY: File is read only.
- * @G_IO_ERROR_CANT_CREATE_BACKUP: Backup couldn't be created.
- * @G_IO_ERROR_WRONG_ETAG: File's Entity Tag was incorrect.
- * @G_IO_ERROR_TIMED_OUT: Operation timed out.
- * @G_IO_ERROR_WOULD_RECURSE: Operation would be recursive.
- * @G_IO_ERROR_BUSY: File is busy.
- * @G_IO_ERROR_WOULD_BLOCK: Operation would block.
- * @G_IO_ERROR_HOST_NOT_FOUND: Host couldn't be found (remote operations).
- * @G_IO_ERROR_WOULD_MERGE: Operation would merge files.
- * @G_IO_ERROR_FAILED_HANDLED: Operation failed and a helper program has already interacted with the user. Do not display any error dialog.
- * @G_IO_ERROR_TOO_MANY_OPEN_FILES: The current process has too many files open and can't open any more. Duplicate descriptors do count toward this limit. Since 2.20
- * @G_IO_ERROR_NOT_INITIALIZED: The object has not been initialized. Since 2.22
- * @G_IO_ERROR_ADDRESS_IN_USE: The requested address is already in use. Since 2.22
- * @G_IO_ERROR_PARTIAL_INPUT: Need more input to finish operation. Since 2.24
- * @G_IO_ERROR_INVALID_DATA: There input data was invalid. Since 2.24
- * @G_IO_ERROR_DBUS_ERROR: A remote object generated an error that doesn't correspond to a locally registered #GError error domain. Use g_dbus_error_get_remote_error() to extract the D-Bus error name and g_dbus_error_strip_remote_error() to fix up the message so it matches what was received on the wire. Since 2.26.
- * @G_IO_ERROR_HOST_UNREACHABLE: Host unreachable. Since 2.26
- * @G_IO_ERROR_NETWORK_UNREACHABLE: Network unreachable. Since 2.26
- * @G_IO_ERROR_CONNECTION_REFUSED: Connection refused. Since 2.26
- * @G_IO_ERROR_PROXY_FAILED: Connection to proxy server failed. Since 2.26
- * @G_IO_ERROR_PROXY_AUTH_FAILED: Proxy authentication failed. Since 2.26
- * @G_IO_ERROR_PROXY_NEED_AUTH: Proxy server needs authentication. Since 2.26
- * @G_IO_ERROR_PROXY_NOT_ALLOWED: Proxy connection is not allowed by ruleset. Since 2.26
- *
- * Error codes returned by GIO functions.
- */
-
-
-/**
- * GIOModule:
- *
- * Opaque module base class for extending GIO.
+ * Implementations of GMountOperation should handle this signal
+ * by dismissing open password dialogs.
+ *
+ * Since: 2.20
  */
 
 
 /**
- * GIOModuleScope:
- *
- * Represents a scope for loading IO modules. A scope can be used for blocking
- * duplicate modules, or blocking a module you don't want to load.
+ * GMountOperation::ask-password:
+ * @op: a #GMountOperation requesting a password.
+ * @message: string containing a message to display to the user.
+ * @default_user: string containing the default user name.
+ * @default_domain: string containing the default domain.
+ * @flags: a set of #GAskPasswordFlags.
  *
- * The scope can be used with g_io_modules_load_all_in_directory_with_scope()
- * or g_io_modules_scan_all_in_directory_with_scope().
+ * Emitted when a mount operation asks the user for a password.
  *
- * Since: 2.30
+ * If the message contains a line break, the first line should be
+ * presented as a heading. For example, it may be used as the
+ * primary text in a #GtkMessageDialog.
  */
 
 
 /**
- * GIOModuleScopeFlags:
- * @G_IO_MODULE_SCOPE_NONE: No module scan flags
- * @G_IO_MODULE_SCOPE_BLOCK_DUPLICATES: When using this scope to load or scan modules, automatically block a modules which has the same base basename as previously loaded module.
+ * GMountOperation::ask-question:
+ * @op: a #GMountOperation asking a question.
+ * @message: string containing a message to display to the user.
+ * @choices: an array of strings for each possible choice.
  *
- * Flags for use with g_io_module_scope_new().
+ * Emitted when asking the user a question and gives a list of
+ * choices for the user to choose from.
  *
- * Since: 2.30
+ * If the message contains a line break, the first line should be
+ * presented as a heading. For example, it may be used as the
+ * primary text in a #GtkMessageDialog.
  */
 
 
 /**
- * GIOSchedulerJob:
+ * GMountOperation::reply:
+ * @op: a #GMountOperation.
+ * @result: a #GMountOperationResult indicating how the request was handled
  *
- * Opaque class for defining and scheduling IO jobs.
+ * Emitted when the user has replied to the mount operation.
  */
 
 
 /**
- * GIOSchedulerJobFunc:
- * @job: a #GIOSchedulerJob.
- * @cancellable: optional #GCancellable object, %NULL to ignore.
- * @user_data: the data to pass to callback function
+ * GMountOperation::show-processes:
+ * @op: a #GMountOperation.
+ * @message: string containing a message to display to the user.
+ * @processes: (element-type GPid): an array of #GPid for processes blocking the operation.
+ * @choices: an array of strings for each possible choice.
+ *
+ * Emitted when one or more processes are blocking an operation
+ * e.g. unmounting/ejecting a #GMount or stopping a #GDrive.
  *
- * I/O Job function.
+ * Note that this signal may be emitted several times to update the
+ * list of blocking processes as processes close files. The
+ * application should only respond with g_mount_operation_reply() to
+ * the latest signal (setting #GMountOperation:choice to the choice
+ * the user made).
  *
- * Long-running jobs should periodically check the @cancellable
- * to see if they have been cancelled.
+ * If the message contains a line break, the first line should be
+ * presented as a heading. For example, it may be used as the
+ * primary text in a #GtkMessageDialog.
  *
- * Returns: %TRUE if this function should be called again to complete the job, %FALSE if the job is complete (or cancelled)
+ * Since: 2.22
  */
 
 
 /**
- * GIOStream:
+ * GMountOperation:anonymous:
  *
- * Base class for read-write streams.
+ * Whether to use an anonymous user when authenticating.
  */
 
 
 /**
- * GIOStreamSpliceFlags:
- * @G_IO_STREAM_SPLICE_NONE: Do not close either stream.
- * @G_IO_STREAM_SPLICE_CLOSE_STREAM1: Close the first stream after the splice.
- * @G_IO_STREAM_SPLICE_CLOSE_STREAM2: Close the second stream after the splice.
- * @G_IO_STREAM_SPLICE_WAIT_FOR_BOTH: Wait for both splice operations to finish before calling the callback.
- *
- * GIOStreamSpliceFlags determine how streams should be spliced.
+ * GMountOperation:choice:
  *
- * Since: 2.28
+ * The index of the user's choice when a question is asked during the
+ * mount operation. See the #GMountOperation::ask-question signal.
  */
 
 
 /**
- * GIcon:
+ * GMountOperation:domain:
  *
- * An abstract type that specifies an icon.
+ * The domain to use for the mount operation.
  */
 
 
 /**
- * GIconIface:
- * @g_iface: The parent interface.
- * @hash: A hash for a given #GIcon.
- * @equal: Checks if two #GIcon<!-- -->s are equal.
- * @to_tokens: Serializes a #GIcon into tokens. The tokens must not contain any whitespace. Don't implement if the #GIcon can't be serialized (Since 2.20).
- * @from_tokens: Constructs a #GIcon from tokens. Set the #GError if the tokens are malformed. Don't implement if the #GIcon can't be serialized (Since 2.20).
+ * GMountOperation:password:
  *
- * GIconIface is used to implement GIcon types for various
- * different systems. See #GThemedIcon and #GLoadableIcon for
- * examples of how to implement this interface.
+ * The password that is used for authentication when carrying out
+ * the mount operation.
  */
 
 
 /**
- * GIconv:
+ * GMountOperation:password-save:
  *
- * The <structname>GIConv</structname> struct wraps an
- * iconv() conversion descriptor. It contains private data
- * and should only be accessed using the following functions.
+ * Determines if and how the password information should be saved.
  */
 
 
 /**
- * GInetAddress:
+ * GMountOperation:username:
  *
- * An IPv4 or IPv6 internet address.
+ * The user name that is used for authentication when carrying out
+ * the mount operation.
  */
 
 
 /**
- * GInetAddress:is-any:
- *
- * Whether this is the "any" address for its family.
- * See g_inet_address_get_is_any().
+ * GNetworkAddress:
  *
- * Since: 2.22
+ * A #GSocketConnectable for resolving a hostname and connecting to
+ * that host.
  */
 
 
 /**
- * GInetAddress:is-link-local:
+ * GNetworkMonitor:
  *
- * Whether this is a link-local address.
- * See g_inet_address_get_is_link_local().
+ * #GNetworkMonitor monitors the status of network connections and
+ * indicates when a possibly-user-visible change has occurred.
  *
- * Since: 2.22
+ * Since: 2.32
  */
 
 
 /**
- * GInetAddress:is-loopback:
+ * GNetworkMonitor::network-changed:
+ * @monitor: a #GNetworkMonitor
+ * @available: the current value of #GNetworkMonitor:network-available
  *
- * Whether this is the loopback address for its family.
- * See g_inet_address_get_is_loopback().
+ * Emitted when the network configuration changes. If @available is
+ * %TRUE, then some hosts may be reachable that were not reachable
+ * before, while others that were reachable before may no longer be
+ * reachable. If @available is %FALSE, then no remote hosts are
+ * reachable.
  *
- * Since: 2.22
+ * Since: 2.32
  */
 
 
 /**
- * GInetAddress:is-mc-global:
+ * GNetworkMonitor:network-available:
  *
- * Whether this is a global multicast address.
- * See g_inet_address_get_is_mc_global().
+ * Whether the network is considered available. That is, whether the
+ * system has a default route for at least one of IPv4 or IPv6.
  *
- * Since: 2.22
+ * Real-world networks are of course much more complicated than
+ * this; the machine may be connected to a wifi hotspot that
+ * requires payment before allowing traffic through, or may be
+ * connected to a functioning router that has lost its own upstream
+ * connectivity. Some hosts might only be accessible when a VPN is
+ * active. Other hosts might only be accessible when the VPN is
+ * <emphasis>not</emphasis> active. Thus, it is best to use
+ * g_network_monitor_can_reach() or
+ * g_network_monitor_can_reach_async() to test for reachability on a
+ * host-by-host basis. (On the other hand, when the property is
+ * %FALSE, the application can reasonably expect that no remote
+ * hosts at all are reachable, and should indicate this to the user
+ * in its UI.)
+ *
+ * See also #GNetworkMonitor::network-changed.
+ *
+ * Since: 2.32
  */
 
 
 /**
- * GInetAddress:is-mc-link-local:
- *
- * Whether this is a link-local multicast address.
- * See g_inet_address_get_is_mc_link_local().
+ * GNetworkService:
  *
- * Since: 2.22
+ * A #GSocketConnectable for resolving a SRV record and connecting to
+ * that service.
  */
 
 
 /**
- * GInetAddress:is-mc-node-local:
- *
- * Whether this is a node-local multicast address.
- * See g_inet_address_get_is_mc_node_local().
+ * GPermission:
  *
- * Since: 2.22
+ * #GPermission is an opaque data structure and can only be accessed
+ * using the following functions.
  */
 
 
 /**
- * GInetAddress:is-mc-org-local:
- *
- * Whether this is an organization-local multicast address.
- * See g_inet_address_get_is_mc_org_local().
+ * GPermission:allowed:
  *
- * Since: 2.22
+ * %TRUE if the caller currently has permission to perform the action that
+ * @permission represents the permission to perform.
  */
 
 
 /**
- * GInetAddress:is-mc-site-local:
- *
- * Whether this is a site-local multicast address.
- * See g_inet_address_get_is_mc_site_local().
+ * GPermission:can-acquire:
  *
- * Since: 2.22
+ * %TRUE if it is generally possible to acquire the permission by calling
+ * g_permission_acquire().
  */
 
 
 /**
- * GInetAddress:is-multicast:
- *
- * Whether this is a multicast address.
- * See g_inet_address_get_is_multicast().
+ * GPermission:can-release:
  *
- * Since: 2.22
+ * %TRUE if it is generally possible to release the permission by calling
+ * g_permission_release().
  */
 
 
 /**
- * GInetAddress:is-site-local:
+ * GProxyAddress:
  *
- * Whether this is a site-local address.
- * See g_inet_address_get_is_loopback().
+ * A #GInetSocketAddress representing a connection via a proxy server
  *
- * Since: 2.22
+ * Since: 2.26
  */
 
 
 /**
- * GInetAddressMask:
+ * GRemoteActionGroupInterface:
+ * @activate_action_full: the virtual function pointer for g_remote_action_group_activate_action_full()
+ * @change_action_state_full: the virtual function pointer for g_remote_action_group_change_action_state_full()
  *
- * A combination of an IPv4 or IPv6 base address and a length,
- * representing a range of IP addresses.
+ * The virtual function table for #GRemoteActionGroup.
  *
  * Since: 2.32
  */
 
 
 /**
- * GInetSocketAddress:
+ * GResolver:
  *
- * An IPv4 or IPv6 socket address, corresponding to a <type>struct
- * sockaddr_in</type> or <type>struct sockaddr_in6</type>.
+ * The object that handles DNS resolution. Use g_resolver_get_default()
+ * to get the default resolver.
  */
 
 
 /**
- * GInetSocketAddress:flowinfo:
- *
- * The <literal>sin6_flowinfo</literal> field, for IPv6 addresses.
+ * GResolver::reload:
+ * @resolver: a #GResolver
  *
- * Since: 2.32
+ * Emitted when the resolver notices that the system resolver
+ * configuration has changed.
  */
 
 
 /**
- * GInetSocketAddress:scope_id:
+ * GSettings::change-event:
+ * @settings: the object on which the signal was emitted
+ * @keys: (array length=n_keys) (element-type GQuark) (allow-none): an array of #GQuark<!-- -->s for the changed keys, or %NULL
+ * @n_keys: the length of the @keys array, or 0
  *
- * The <literal>sin6_scope_id</literal> field, for IPv6 addresses.
+ * The "change-event" signal is emitted once per change event that
+ * affects this settings object.  You should connect to this signal
+ * only if you are interested in viewing groups of changes before they
+ * are split out into multiple emissions of the "changed" signal.
+ * For most use cases it is more appropriate to use the "changed" signal.
  *
- * Since: 2.32
- */
-
-
-/**
- * GInitable:
+ * In the event that the change event applies to one or more specified
+ * keys, @keys will be an array of #GQuark of length @n_keys.  In the
+ * event that the change event applies to the #GSettings object as a
+ * whole (ie: potentially every key has been changed) then @keys will
+ * be %NULL and @n_keys will be 0.
  *
- * Interface for initializable objects.
+ * The default handler for this signal invokes the "changed" signal
+ * for each affected key.  If any other connected handler returns
+ * %TRUE then this default functionality will be suppressed.
  *
- * Since: 2.22
+ * Returns: %TRUE to stop other handlers from being invoked for the event. FALSE to propagate the event further.
  */
 
 
 /**
- * GInitableIface:
- * @g_iface: The parent interface.
- * @init: Initializes the object.
+ * GSettings::changed:
+ * @settings: the object on which the signal was emitted
+ * @key: the name of the key that changed
  *
- * Provides an interface for initializing object such that initialization
- * may fail.
+ * The "changed" signal is emitted when a key has potentially changed.
+ * You should call one of the g_settings_get() calls to check the new
+ * value.
  *
- * Since: 2.22
+ * This signal supports detailed connections.  You can connect to the
+ * detailed signal "changed::x" in order to only receive callbacks
+ * when key "x" changes.
  */
 
 
 /**
- * GInitiallyUnowned:
+ * GSettings::writable-change-event:
+ * @settings: the object on which the signal was emitted
+ * @key: the quark of the key, or 0
+ *
+ * The "writable-change-event" signal is emitted once per writability
+ * change event that affects this settings object.  You should connect
+ * to this signal if you are interested in viewing groups of changes
+ * before they are split out into multiple emissions of the
+ * "writable-changed" signal.  For most use cases it is more
+ * appropriate to use the "writable-changed" signal.
+ *
+ * In the event that the writability change applies only to a single
+ * key, @key will be set to the #GQuark for that key.  In the event
+ * that the writability change affects the entire settings object,
+ * @key will be 0.
  *
- * All the fields in the <structname>GInitiallyUnowned</structname> structure
- * are private to the #GInitiallyUnowned implementation and should never be
- * accessed directly.
+ * The default handler for this signal invokes the "writable-changed"
+ * and "changed" signals for each affected key.  This is done because
+ * changes in writability might also imply changes in value (if for
+ * example, a new mandatory setting is introduced).  If any other
+ * connected handler returns %TRUE then this default functionality
+ * will be suppressed.
+ *
+ * Returns: %TRUE to stop other handlers from being invoked for the event. FALSE to propagate the event further.
  */
 
 
 /**
- * GInitiallyUnownedClass:
+ * GSettings::writable-changed:
+ * @settings: the object on which the signal was emitted
+ * @key: the key
+ *
+ * The "writable-changed" signal is emitted when the writability of a
+ * key has potentially changed.  You should call
+ * g_settings_is_writable() in order to determine the new status.
  *
- * The class structure for the <structname>GInitiallyUnowned</structname> type.
+ * This signal supports detailed connections.  You can connect to the
+ * detailed signal "writable-changed::x" in order to only receive
+ * callbacks when the writability of "x" changes.
  */
 
 
 /**
- * GInputStream:
+ * GSettings:context:
  *
- * Base class for streaming input operations.
+ * The name of the context that the settings are stored in.
  */
 
 
 /**
- * GInputVector:
- * @buffer: Pointer to a buffer where data will be written.
- * @size: the available size in @buffer.
+ * GSettings:delay-apply:
  *
- * Structure used for scatter/gather data input.
- * You generally pass in an array of #GInputVector<!-- -->s
- * and the operation will store the read data starting in the
- * first buffer, switching to the next as needed.
+ * Whether the #GSettings object is in 'delay-apply' mode. See
+ * g_settings_delay() for details.
  *
- * Since: 2.22
+ * Since: 2.28
  */
 
 
 /**
- * GInstanceInitFunc:
- * @instance: The instance to initialize.
- * @g_class: The class of the type the instance is created for.
+ * GSettings:has-unapplied:
  *
- * A callback function used by the type system to initialize a new
- * instance of a type. This function initializes all instance members and
- * allocates any resources required by it.
- * Initialization of a derived instance involves calling all its parent
- * types instance initializers, so the class member of the instance
- * is altered during its initialization to always point to the class that
- * belongs to the type the current initializer was introduced for.
+ * If this property is %TRUE, the #GSettings object has outstanding
+ * changes that will be applied when g_settings_apply() is called.
  */
 
 
 /**
- * GInterfaceFinalizeFunc:
- * @g_iface: The interface structure to finalize.
- * @iface_data: The @interface_data supplied via the #GInterfaceInfo structure.
+ * GSettings:path:
  *
- * A callback function used by the type system to finalize an interface.
- * This function should destroy any internal data and release any resources
- * allocated by the corresponding GInterfaceInitFunc() function.
+ * The path within the backend where the settings are stored.
  */
 
 
 /**
- * GInterfaceInfo:
- * @interface_init: location of the interface initialization function
- * @interface_finalize: location of the interface finalization function
- * @interface_data: user-supplied data passed to the interface init/finalize functions
+ * GSettings:schema:
  *
- * A structure that provides information to the type system which is
- * used specifically for managing interface types.
- */
-
-
-/**
- * GInterfaceInitFunc:
- * @g_iface: The interface structure to initialize.
- * @iface_data: The @interface_data supplied via the #GInterfaceInfo structure.
+ * The name of the schema that describes the types of keys
+ * for this #GSettings object.
+ *
+ * The type of this property is *not* #GSettingsSchema.
+ * #GSettingsSchema has only existed since version 2.32 and
+ * unfortunately this name was used in previous versions to refer to
+ * the schema ID rather than the schema itself.  Take care to use the
+ * 'settings-schema' property if you wish to pass in a
+ * #GSettingsSchema.
  *
- * A callback function used by the type system to initialize a new
- * interface.  This function should initialize all internal data and
- * allocate any resources required by the interface.
+ * Deprecated: 2.32:Use the 'schema-id' property instead.  In a future version, this property may instead refer to a #GSettingsSchema.
  */
 
 
 /**
- * GLIB_VERSION_2_26:
- *
- * A macro that evaluates to the 2.26 version of GLib, in a format
- * that can be used by the C pre-processor.
+ * GSettings:schema-id:
  *
- * Since: 2.32
+ * The name of the schema that describes the types of keys
+ * for this #GSettings object.
  */
 
 
 /**
- * GLIB_VERSION_2_28:
+ * GSettings:settings-schema:
  *
- * A macro that evaluates to the 2.28 version of GLib, in a format
- * that can be used by the C pre-processor.
+ * The #GSettingsSchema describing the types of keys for this
+ * #GSettings object.
  *
- * Since: 2.32
+ * Ideally, this property would be called 'schema'.  #GSettingsSchema
+ * has only existed since version 2.32, however, and before then the
+ * 'schema' property was used to refer to the ID of the schema rather
+ * than the schema itself.  Take care.
  */
 
 
 /**
- * GLIB_VERSION_2_30:
+ * GSettingsSchema:
  *
- * A macro that evaluates to the 2.30 version of GLib, in a format
- * that can be used by the C pre-processor.
+ * This is an opaque structure type.  You may not access it directly.
  *
  * Since: 2.32
  */
 
 
 /**
- * GLIB_VERSION_2_32:
+ * GSettingsSchemaSource:
  *
- * A macro that evaluates to the 2.32 version of GLib, in a format
- * that can be used by the C pre-processor.
+ * This is an opaque structure type.  You may not access it directly.
  *
  * Since: 2.32
  */
 
 
 /**
- * GLIB_VERSION_MAX_ALLOWED:
- *
- * A macro that should be defined by the user prior to including
- * the glib.h header.
- * The definition should be one of the predefined GLib version
- * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
+ * GSimpleAction::activate:
+ * @simple: the #GSimpleAction
+ * @parameter: (allow-none): the parameter to the activation
  *
- * This macro defines the upper bound for the GLib API to use.
+ * Indicates that the action was just activated.
  *
- * If a function has been introduced in a newer version of GLib,
- * it is possible to use this symbol to get compiler warnings when
- * trying to use that function.
+ * @parameter will always be of the expected type.  In the event that
+ * an incorrect type was given, no signal will be emitted.
  *
- * Since: 2.32
+ * Since: 2.28
  */
 
 
 /**
- * GLIB_VERSION_MIN_REQUIRED:
- *
- * A macro that should be defined by the user prior to including
- * the glib.h header.
- * The definition should be one of the predefined GLib version
- * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
+ * GSimpleAction::change-state:
+ * @simple: the #GSimpleAction
+ * @value: (allow-none): the requested value for the state
  *
- * This macro defines the lower bound for the GLib API to use.
+ * Indicates that the action just received a request to change its
+ * state.
  *
- * If a function has been deprecated in a newer version of GLib,
- * it is possible to use this symbol to avoid the compiler warnings
- * without disabling warning for every deprecated function.
+ * @value will always be of the correct state type.  In the event that
+ * an incorrect type was given, no signal will be emitted.
  *
- * Since: 2.32
- */
-
-
-/**
- * GLoadableIcon:
+ * If no handler is connected to this signal then the default
+ * behaviour is to call g_simple_action_set_state() to set the state
+ * to the requested value.  If you connect a signal handler then no
+ * default action is taken.  If the state should change then you must
+ * call g_simple_action_set_state() from the handler.
  *
- * Generic type for all kinds of icons that can be loaded
- * as a stream.
- */
-
-
-/**
- * GLoadableIconIface:
- * @g_iface: The parent interface.
- * @load: Loads an icon.
- * @load_async: Loads an icon asynchronously.
- * @load_finish: Finishes an asynchronous icon load.
+ * <example>
+ * <title>Example 'change-state' handler</title>
+ * <programlisting>
+ * static void
+ * change_volume_state (GSimpleAction *action,
+ *                      GVariant      *value,
+ *                      gpointer       user_data)
+ * {
+ *   gint requested;
  *
- * Interface for icons that can be loaded as a stream.
- */
-
-
-/**
- * GMainContext:
+ *   requested = g_variant_get_int32 (value);
  *
- * The <structname>GMainContext</structname> struct is an opaque data
- * type representing a set of sources to be handled in a main loop.
- */
-
-
-/**
- * GMainLoop:
+ *   // Volume only goes from 0 to 10
+ *   if (0 <= requested && requested <= 10)
+ *     g_simple_action_set_state (action, value);
+ * }
+ * </programlisting>
+ * </example>
  *
- * The <structname>GMainLoop</structname> struct is an opaque data type
- * representing the main event loop of a GLib or GTK+ application.
- */
-
-
-/**
- * GMarkupError:
- * @G_MARKUP_ERROR_BAD_UTF8: text being parsed was not valid UTF-8
- * @G_MARKUP_ERROR_EMPTY: document contained nothing, or only whitespace
- * @G_MARKUP_ERROR_PARSE: document was ill-formed
- * @G_MARKUP_ERROR_UNKNOWN_ELEMENT: error should be set by #GMarkupParser functions; element wasn't known
- * @G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE: error should be set by #GMarkupParser functions; attribute wasn't known
- * @G_MARKUP_ERROR_INVALID_CONTENT: error should be set by #GMarkupParser functions; content was invalid
- * @G_MARKUP_ERROR_MISSING_ATTRIBUTE: error should be set by #GMarkupParser functions; a required attribute was missing
+ * The handler need not set the state to the requested value.  It
+ * could set it to any value at all, or take some other action.
  *
- * Error codes returned by markup parsing.
+ * Since: 2.30
  */
 
 
 /**
- * GMarkupParseContext:
+ * GSimpleAction:enabled:
  *
- * A parse context is used to parse a stream of bytes that
- * you expect to contain marked-up text.
+ * If @action is currently enabled.
  *
- * See g_markup_parse_context_new(), #GMarkupParser, and so
- * on for more details.
- */
-
-
-/**
- * GMarkupParseFlags:
- * @G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG: flag you should not use
- * @G_MARKUP_TREAT_CDATA_AS_TEXT: When this flag is set, CDATA marked sections are not passed literally to the @passthrough function of the parser. Instead, the content of the section (without the <literal>&lt;![CDATA[</literal> and <literal>]]&gt;</literal>) is passed to the @text function. This flag was added in GLib 2.12
- * @G_MARKUP_PREFIX_ERROR_POSITION: Normally errors caught by GMarkup itself have line/column information prefixed to them to let the caller know the location of the error. When this flag is set the location information is also prefixed to errors generated by the #GMarkupParser implementation functions
+ * If the action is disabled then calls to g_action_activate() and
+ * g_action_change_state() have no effect.
  *
- * Flags that affect the behaviour of the parser.
+ * Since: 2.28
  */
 
 
 /**
- * GMarkupParser:
- * @start_element: Callback to invoke when the opening tag of an element is seen.
- * @end_element: Callback to invoke when the closing tag of an element is seen. Note that this is also called for empty tags like <literal>&lt;empty/&gt;</literal>.
- * @text: Callback to invoke when some text is seen (text is always inside an element). Note that the text of an element may be spread over multiple calls of this function. If the %G_MARKUP_TREAT_CDATA_AS_TEXT flag is set, this function is also called for the content of CDATA marked sections.
- * @passthrough: Callback to invoke for comments, processing instructions and doctype declarations; if you're re-writing the parsed document, write the passthrough text back out in the same position. If the %G_MARKUP_TREAT_CDATA_AS_TEXT flag is not set, this function is also called for CDATA marked sections.
- * @error: Callback to invoke when an error occurs.
+ * GSimpleAction:name:
  *
- * Any of the fields in #GMarkupParser can be %NULL, in which case they
- * will be ignored. Except for the @error function, any of these callbacks
- * can set an error; in particular the %G_MARKUP_ERROR_UNKNOWN_ELEMENT,
- * %G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, and %G_MARKUP_ERROR_INVALID_CONTENT
- * errors are intended to be set from these callbacks. If you set an error
- * from a callback, g_markup_parse_context_parse() will report that error
- * back to its caller.
- */
-
-
-/**
- * GMemVTable:
- * @malloc: function to use for allocating memory.
- * @realloc: function to use for reallocating memory.
- * @free: function to use to free memory.
- * @calloc: function to use for allocating zero-filled memory.
- * @try_malloc: function to use for allocating memory without a default error handler.
- * @try_realloc: function to use for reallocating memory without a default error handler.
+ * The name of the action.  This is mostly meaningful for identifying
+ * the action once it has been added to a #GSimpleActionGroup.
  *
- * A set of functions used to perform memory allocation. The same #GMemVTable must
- * be used for all allocations in the same program; a call to g_mem_set_vtable(),
- * if it exists, should be prior to any use of GLib.
+ * Since: 2.28
  */
 
 
 /**
- * GMemoryInputStream:
+ * GSimpleAction:parameter-type:
  *
- * Implements #GInputStream for arbitrary memory chunks.
- */
-
-
-/**
- * GMemoryOutputStream:
+ * The type of the parameter that must be given when activating the
+ * action.
  *
- * Implements #GOutputStream for arbitrary memory chunks.
+ * Since: 2.28
  */
 
 
 /**
- * GMemoryOutputStream:data:
+ * GSimpleAction:state:
  *
- * Pointer to buffer where data will be written.
+ * The state of the action, or %NULL if the action is stateless.
  *
- * Since: 2.24
+ * Since: 2.28
  */
 
 
 /**
- * GMemoryOutputStream:data-size:
+ * GSimpleAction:state-type:
  *
- * Size of data written to the buffer.
+ * The #GVariantType of the state that the action has, or %NULL if the
+ * action is stateless.
  *
- * Since: 2.24
+ * Since: 2.28
  */
 
 
 /**
- * GMemoryOutputStream:destroy-function: (skip)
- *
- * Function called with the buffer as argument when the stream is destroyed.
+ * GSimplePermission:
  *
- * Since: 2.24
+ * #GSimplePermission is an opaque data structure.  There are no methods
+ * except for those defined by #GPermission.
  */
 
 
 /**
- * GMemoryOutputStream:realloc-function: (skip)
+ * GSocket:broadcast:
  *
- * Function with realloc semantics called to enlarge the buffer.
+ * Whether the socket should allow sending to and receiving from broadcast addresses.
  *
- * Since: 2.24
+ * Since: 2.32
  */
 
 
 /**
- * GMemoryOutputStream:size:
+ * GSocket:multicast-loopback:
  *
- * Current size of the data buffer.
+ * Whether outgoing multicast packets loop back to the local host.
  *
- * Since: 2.24
+ * Since: 2.32
  */
 
 
 /**
- * GMenu:
+ * GSocket:multicast-ttl:
  *
- * #GMenu is an opaque structure type.  You must access it using the
- * functions below.
+ * Time-to-live out outgoing multicast packets
  *
  * Since: 2.32
  */
 
 
 /**
- * GMenuAttributeIter:
+ * GSocket:timeout:
  *
- * #GMenuAttributeIter is an opaque structure type.  You must access it
- * using the functions below.
+ * The timeout in seconds on socket I/O
  *
- * Since: 2.32
+ * Since: 2.26
  */
 
 
 /**
- * GMenuItem:
+ * GSocket:ttl:
  *
- * #GMenuItem is an opaque structure type.  You must access it using the
- * functions below.
+ * Time-to-live for outgoing unicast packets
  *
  * Since: 2.32
  */
 
 
 /**
- * GMenuLinkIter:
- *
- * #GMenuLinkIter is an opaque structure type.  You must access it using
- * the functions below.
+ * GSocketAddress:
  *
- * Since: 2.32
+ * A socket endpoint address, corresponding to <type>struct sockaddr</type>
+ * or one of its subtypes.
  */
 
 
 /**
- * GMenuModel:
- *
- * #GMenuModel is an opaque structure type.  You must access it using the
- * functions below.
- *
- * Since: 2.32
- */
-
-
-/**
- * GMenuModel::items-changed:
- * @model: the #GMenuModel that is changing
- * @position: the position of the change
- * @removed: the number of items removed
- * @added: the number of items added
- *
- * Emitted when a change has occured to the menu.
- *
- * The only changes that can occur to a menu is that items are removed
- * or added.  Items may not change (except by being removed and added
- * back in the same location).  This signal is capable of describing
- * both of those changes (at the same time).
- *
- * The signal means that starting at the index @position, @removed
- * items were removed and @added items were added in their place.  If
- * @removed is zero then only items were added.  If @added is zero
- * then only items were removed.
- *
- * As an example, if the menu contains items a, b, c, d (in that
- * order) and the signal (2, 1, 3) occurs then the new composition of
- * the menu will be a, b, _, _, _, d (with each _ representing some
- * new item).
- *
- * Signal handlers may query the model (particularly the added items)
- * and expect to see the results of the modification that is being
- * reported.  The signal is emitted after the modification.
- */
-
-
-/**
- * GMount:
- *
- * A handle to an object implementing the #GMountIface interface.
- */
-
-
-/**
- * GMount::changed:
- * @mount: the object on which the signal is emitted
- *
- * Emitted when the mount has been changed.
- */
-
-
-/**
- * GMount::pre-unmount:
- * @mount: the object on which the signal is emitted
- *
- * This signal is emitted when the #GMount is about to be
- * unmounted.
- *
- * Since: 2.22
- */
-
-
-/**
- * GMount::unmounted:
- * @mount: the object on which the signal is emitted
- *
- * This signal is emitted when the #GMount have been
- * unmounted. If the recipient is holding references to the
- * object they should release them so the object can be
- * finalized.
- */
-
-
-/**
- * GMountIface:
- * @g_iface: The parent interface.
- * @changed: Changed signal that is emitted when the mount's state has changed.
- * @unmounted: The unmounted signal that is emitted when the #GMount have been unmounted. If the recipient is holding references to the object they should release them so the object can be finalized.
- * @pre_unmount: The ::pre-unmount signal that is emitted when the #GMount will soon be emitted. If the recipient is somehow holding the mount open by keeping an open file on it it should close the file.
- * @get_root: Gets a #GFile to the root directory of the #GMount.
- * @get_name: Gets a string containing the name of the #GMount.
- * @get_icon: Gets a #GIcon for the #GMount.
- * @get_uuid: Gets the UUID for the #GMount. 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.
- * @get_volume: Gets a #GVolume the mount is located on. Returns %NULL if the #GMount is not associated with a #GVolume.
- * @get_drive: Gets a #GDrive the volume of the mount is located on. Returns %NULL if the #GMount is not associated with a #GDrive or a #GVolume. This is convenience method for getting the #GVolume and using that to get the #GDrive.
- * @can_unmount: Checks if a #GMount can be unmounted.
- * @can_eject: Checks if a #GMount can be ejected.
- * @unmount: Starts unmounting a #GMount.
- * @unmount_finish: Finishes an unmounting operation.
- * @eject: Starts ejecting a #GMount.
- * @eject_finish: Finishes an eject operation.
- * @remount: Starts remounting a #GMount.
- * @remount_finish: Finishes a remounting operation.
- * @guess_content_type: Starts guessing the type of the content of a #GMount. See g_mount_guess_content_type() for more information on content type guessing. This operation was added in 2.18.
- * @guess_content_type_finish: Finishes a content type guessing operation. Added in 2.18.
- * @guess_content_type_sync: Synchronous variant of @guess_content_type. Added in 2.18
- * @unmount_with_operation: Starts unmounting a #GMount using a #GMountOperation. Since 2.22.
- * @unmount_with_operation_finish: Finishes an unmounting operation using a #GMountOperation. Since 2.22.
- * @eject_with_operation: Starts ejecting a #GMount using a #GMountOperation. Since 2.22.
- * @eject_with_operation_finish: Finishes an eject operation using a #GMountOperation. Since 2.22.
- * @get_default_location: Gets a #GFile indication a start location that can be use as the entry point for this mount. Since 2.24.
- * @get_sort_key: Gets a key used for sorting #GMount instance or %NULL if no such key exists. Since 2.32.
- *
- * Interface for implementing operations for mounts.
- */
-
-
-/**
- * GMountMountFlags:
- * @G_MOUNT_MOUNT_NONE: No flags set.
- *
- * Flags used when mounting a mount.
- */
-
-
-/**
- * GMountOperation:
- *
- * Class for providing authentication methods for mounting operations,
- * such as mounting a file locally, or authenticating with a server.
- */
-
-
-/**
- * GMountOperation::aborted:
- *
- * Emitted by the backend when e.g. a device becomes unavailable
- * while a mount operation is in progress.
- *
- * Implementations of GMountOperation should handle this signal
- * by dismissing open password dialogs.
- *
- * Since: 2.20
- */
-
-
-/**
- * GMountOperation::ask-password:
- * @op: a #GMountOperation requesting a password.
- * @message: string containing a message to display to the user.
- * @default_user: string containing the default user name.
- * @default_domain: string containing the default domain.
- * @flags: a set of #GAskPasswordFlags.
- *
- * Emitted when a mount operation asks the user for a password.
- *
- * If the message contains a line break, the first line should be
- * presented as a heading. For example, it may be used as the
- * primary text in a #GtkMessageDialog.
- */
-
-
-/**
- * GMountOperation::ask-question:
- * @op: a #GMountOperation asking a question.
- * @message: string containing a message to display to the user.
- * @choices: an array of strings for each possible choice.
- *
- * Emitted when asking the user a question and gives a list of
- * choices for the user to choose from.
- *
- * If the message contains a line break, the first line should be
- * presented as a heading. For example, it may be used as the
- * primary text in a #GtkMessageDialog.
- */
-
-
-/**
- * GMountOperation::reply:
- * @op: a #GMountOperation.
- * @result: a #GMountOperationResult indicating how the request was handled
- *
- * Emitted when the user has replied to the mount operation.
- */
-
-
-/**
- * GMountOperation::show-processes:
- * @op: a #GMountOperation.
- * @message: string containing a message to display to the user.
- * @processes: (element-type GPid): an array of #GPid for processes blocking the operation.
- * @choices: an array of strings for each possible choice.
- *
- * Emitted when one or more processes are blocking an operation
- * e.g. unmounting/ejecting a #GMount or stopping a #GDrive.
- *
- * Note that this signal may be emitted several times to update the
- * list of blocking processes as processes close files. The
- * application should only respond with g_mount_operation_reply() to
- * the latest signal (setting #GMountOperation:choice to the choice
- * the user made).
- *
- * If the message contains a line break, the first line should be
- * presented as a heading. For example, it may be used as the
- * primary text in a #GtkMessageDialog.
- *
- * Since: 2.22
- */
-
-
-/**
- * GMountOperation:anonymous:
- *
- * Whether to use an anonymous user when authenticating.
- */
-
-
-/**
- * GMountOperation:choice:
- *
- * The index of the user's choice when a question is asked during the
- * mount operation. See the #GMountOperation::ask-question signal.
- */
-
-
-/**
- * GMountOperation:domain:
- *
- * The domain to use for the mount operation.
- */
-
-
-/**
- * GMountOperation:password:
- *
- * The password that is used for authentication when carrying out
- * the mount operation.
- */
-
-
-/**
- * GMountOperation:password-save:
- *
- * Determines if and how the password information should be saved.
- */
-
-
-/**
- * GMountOperation:username:
- *
- * The user name that is used for authentication when carrying out
- * the mount operation.
- */
-
-
-/**
- * GMountOperationResult:
- * @G_MOUNT_OPERATION_HANDLED: The request was fulfilled and the user specified data is now available
- * @G_MOUNT_OPERATION_ABORTED: The user requested the mount operation to be aborted
- * @G_MOUNT_OPERATION_UNHANDLED: The request was unhandled (i.e. not implemented)
- *
- * #GMountOperationResult is returned as a result when a request for
- * information is send by the mounting operation.
- */
-
-
-/**
- * GMountUnmountFlags:
- * @G_MOUNT_UNMOUNT_NONE: No flags set.
- * @G_MOUNT_UNMOUNT_FORCE: Unmount even if there are outstanding file operations on the mount.
- *
- * Flags used when an unmounting a mount.
- */
-
-
-/**
- * GNetworkAddress:
- *
- * A #GSocketConnectable for resolving a hostname and connecting to
- * that host.
- */
-
-
-/**
- * GNetworkMonitor:
- *
- * #GNetworkMonitor monitors the status of network connections and
- * indicates when a possibly-user-visible change has occurred.
- *
- * Since: 2.32
- */
-
-
-/**
- * GNetworkMonitor::network-changed:
- * @monitor: a #GNetworkMonitor
- * @available: the current value of #GNetworkMonitor:network-available
- *
- * Emitted when the network configuration changes. If @available is
- * %TRUE, then some hosts may be reachable that were not reachable
- * before, while others that were reachable before may no longer be
- * reachable. If @available is %FALSE, then no remote hosts are
- * reachable.
- *
- * Since: 2.32
- */
-
-
-/**
- * GNetworkMonitor:network-available:
- *
- * Whether the network is considered available. That is, whether the
- * system has a default route for at least one of IPv4 or IPv6.
- *
- * Real-world networks are of course much more complicated than
- * this; the machine may be connected to a wifi hotspot that
- * requires payment before allowing traffic through, or may be
- * connected to a functioning router that has lost its own upstream
- * connectivity. Some hosts might only be accessible when a VPN is
- * active. Other hosts might only be accessible when the VPN is
- * <emphasis>not</emphasis> active. Thus, it is best to use
- * g_network_monitor_can_reach() or
- * g_network_monitor_can_reach_async() to test for reachability on a
- * host-by-host basis. (On the other hand, when the property is
- * %FALSE, the application can reasonably expect that no remote
- * hosts at all are reachable, and should indicate this to the user
- * in its UI.)
- *
- * See also #GNetworkMonitor::network-changed.
- *
- * Since: 2.32
- */
-
-
-/**
- * GNetworkService:
- *
- * A #GSocketConnectable for resolving a SRV record and connecting to
- * that service.
- */
-
-
-/**
- * GNormalizeMode:
- * @G_NORMALIZE_DEFAULT: standardize differences that do not affect the text content, such as the above-mentioned accent representation
- * @G_NORMALIZE_NFD: another name for %G_NORMALIZE_DEFAULT
- * @G_NORMALIZE_DEFAULT_COMPOSE: like %G_NORMALIZE_DEFAULT, but with composed forms rather than a maximally decomposed form
- * @G_NORMALIZE_NFC: another name for %G_NORMALIZE_DEFAULT_COMPOSE
- * @G_NORMALIZE_ALL: beyond %G_NORMALIZE_DEFAULT also standardize the "compatibility" 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_NFKD: another name for %G_NORMALIZE_ALL
- * @G_NORMALIZE_ALL_COMPOSE: like %G_NORMALIZE_ALL, but with composed forms rather than a maximally decomposed form
- * @G_NORMALIZE_NFKC: another name for %G_NORMALIZE_ALL_COMPOSE
- *
- * Defines how a Unicode string is transformed in a 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. Unicode strings
- * should generally be normalized before comparing them.
- */
-
-
-/**
- * GObject:
- *
- * All the fields in the <structname>GObject</structname> structure are private
- * to the #GObject implementation and should never be accessed directly.
- */
-
-
-/**
- * GObjectClass:
- * @g_type_class: the parent class
- * @constructor: the @constructor function is called by g_object_new () to complete the object initialization after all the construction properties are set. The first thing a @constructor implementation must do is chain up to the @constructor of the parent class. Overriding @constructor should be rarely needed, e.g. to handle construct properties, or to implement singletons.
- * @set_property: the generic setter for all properties of this type. Should be overridden for every type with properties. Implementations of @set_property don't need to emit property change notification explicitly, this is handled by the type system.
- * @get_property: the generic getter for all properties of this type. Should be overridden for every type with properties.
- * @dispose: the @dispose function is supposed to drop all references to other objects, but keep the instance otherwise intact, so that client method invocations still work. It may be run multiple times (due to reference loops). Before returning, @dispose should chain up to the @dispose method of the parent class.
- * @finalize: instance finalization function, should finish the finalization of the instance begun in @dispose and chain up to the @finalize method of the parent class.
- * @dispatch_properties_changed: emits property change notification for a bunch of properties. Overriding @dispatch_properties_changed should be rarely needed.
- * @notify: the class closure for the notify signal
- * @constructed: the @constructed function is called by g_object_new() as the final step of the object creation process.  At the point of the call, all construction properties have been set on the object.  The purpose of this call is to allow for object initialisation steps that can only be performed after construction properties have been set.  @constructed implementors should chain up to the @constructed call of their parent class to allow it to complete its initialisation.
- *
- * The class structure for the <structname>GObject</structname> type.
- *
- * <example>
- * <title>Implementing singletons using a constructor</title>
- * <programlisting>
- * static MySingleton *the_singleton = NULL;
- *
- * static GObject*
- * my_singleton_constructor (GType                  type,
- *                           guint                  n_construct_params,
- *                           GObjectConstructParam *construct_params)
- * {
- *   GObject *object;
- *
- *   if (!the_singleton)
- *     {
- *       object = G_OBJECT_CLASS (parent_class)->constructor (type,
- *                                                            n_construct_params,
- *                                                            construct_params);
- *       the_singleton = MY_SINGLETON (object);
- *     }
- *   else
- *     object = g_object_ref (G_OBJECT (the_singleton));
- *
- *   return object;
- * }
- * </programlisting></example>
- */
-
-
-/**
- * GObjectConstructParam:
- * @pspec: the #GParamSpec of the construct parameter
- * @value: the value to set the parameter to
- *
- * The <structname>GObjectConstructParam</structname> struct is an auxiliary
- * structure used to hand #GParamSpec/#GValue pairs to the @constructor of
- * a #GObjectClass.
- */
-
-
-/**
- * GObjectFinalizeFunc:
- * @object: the #GObject being finalized
- *
- * The type of the @finalize function of #GObjectClass.
- */
-
-
-/**
- * GObjectGetPropertyFunc:
- * @object: a #GObject
- * @property_id: the numeric id under which the property was registered with g_object_class_install_property().
- * @value: a #GValue to return the property value in
- * @pspec: the #GParamSpec describing the property
- *
- * The type of the @get_property function of #GObjectClass.
- */
-
-
-/**
- * GObjectSetPropertyFunc:
- * @object: a #GObject
- * @property_id: the numeric id under which the property was registered with g_object_class_install_property().
- * @value: the new value for the property
- * @pspec: the #GParamSpec describing the property
- *
- * The type of the @set_property function of #GObjectClass.
- */
-
-
-/**
- * GOptionArg:
- * @G_OPTION_ARG_NONE: No extra argument. This is useful for simple flags.
- * @G_OPTION_ARG_STRING: The option takes a string argument.
- * @G_OPTION_ARG_INT: The option takes an integer argument.
- * @G_OPTION_ARG_CALLBACK: The option provides a callback to parse the extra argument.
- * @G_OPTION_ARG_FILENAME: The option takes a filename as argument.
- * @G_OPTION_ARG_STRING_ARRAY: The option takes a string argument, multiple uses of the option are collected into an array of strings.
- * @G_OPTION_ARG_FILENAME_ARRAY: The option takes a filename as argument, multiple uses of the option are collected into an array of strings.
- * @G_OPTION_ARG_DOUBLE: The option takes a double argument. The argument can be formatted either for the user's locale or for the "C" locale. Since 2.12
- * @G_OPTION_ARG_INT64: The option takes a 64-bit integer. Like %G_OPTION_ARG_INT but for larger numbers. The number can be in decimal base, or in hexadecimal (when prefixed with <literal>0x</literal>, for example, <literal>0xffffffff</literal>). Since 2.12
- *
- * The #GOptionArg enum values determine which type of extra argument the
- * options expect to find. If an option expects an extra argument, it
- * can be specified in several ways; with a short option:
- * <option>-x arg</option>, with a long option: <option>--name arg</option>
- * or combined in a single argument: <option>--name=arg</option>.
- */
-
-
-/**
- * GOptionArgFunc:
- * @option_name: The name of the option being parsed. This will be either a single dash followed by a single letter (for a short name) or two dashes followed by a long option name.
- * @value: The value to be parsed.
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: A return location for errors. The error code %G_OPTION_ERROR_FAILED is intended to be used for errors in #GOptionArgFunc callbacks.
- *
- * The type of function to be passed as callback for %G_OPTION_ARG_CALLBACK
- * options.
- *
- * Returns: %TRUE if the option was successfully parsed, %FALSE if an error occurred, in which case @error should be set with g_set_error()
- */
-
-
-/**
- * GOptionContext:
- *
- * A <structname>GOptionContext</structname> struct defines which options
- * are accepted by the commandline option parser. The struct has only private
- * fields and should not be directly accessed.
- */
-
-
-/**
- * GOptionEntry:
- * @long_name: The long name of an option can be used to specify it in a commandline as --<replaceable>long_name</replaceable>. Every option must have a long name. To resolve conflicts if multiple option groups contain the same long name, it is also possible to specify the option as --<replaceable>groupname</replaceable>-<replaceable>long_name</replaceable>.
- * @short_name: If an option has a short name, it can be specified -<replaceable>short_name</replaceable> in a commandline. @short_name must be a printable ASCII character different from '-', or zero if the option has no short name.
- * @flags: Flags from #GOptionFlags.
- * @arg: The type of the option, as a #GOptionArg.
- * @arg_data: If the @arg type is %G_OPTION_ARG_CALLBACK, then @arg_data must point to a #GOptionArgFunc callback function, which will be called to handle the extra argument. Otherwise, @arg_data is a pointer to a location to store the value, the required type of the location depends on the @arg type: <variablelist> <varlistentry> <term>%G_OPTION_ARG_NONE</term> <listitem><para>%gboolean</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_STRING</term> <listitem><para>%gchar*</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_INT</term> <listitem><para>%gint</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_FILENAME</term> <listitem><para>%gchar*</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_STRING_ARRAY</term> <listitem><para>%gchar**</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_FILENAME_ARRAY</term> <listitem><para>%gchar**</para></listitem> </varlistentry> <varlistentry> <
 term>%G_OPTION_ARG_DOUBLE</term> <listitem><para>%gdouble</para></listitem> </varlistentry> </variablelist> If @arg type is %G_OPTION_ARG_STRING or %G_OPTION_ARG_FILENAME the location will contain a newly allocated string if the option was given. That string needs to be freed by the callee using g_free(). Likewise if @arg type is %G_OPTION_ARG_STRING_ARRAY or %G_OPTION_ARG_FILENAME_ARRAY, the data should be freed using g_strfreev().
- * @description: the description for the option in <option>--help</option> output. The @description is translated using the @translate_func of the group, see g_option_group_set_translation_domain().
- * @arg_description: The placeholder to use for the extra argument parsed by the option in <option>--help</option> output. The @arg_description is translated using the @translate_func of the group, see g_option_group_set_translation_domain().
- *
- * A <structname>GOptionEntry</structname> defines a single option.
- * To have an effect, they must be added to a #GOptionGroup with
- * g_option_context_add_main_entries() or g_option_group_add_entries().
- */
-
-
-/**
- * GOptionError:
- * @G_OPTION_ERROR_UNKNOWN_OPTION: An option was not known to the parser. This error will only be reported, if the parser hasn't been instructed to ignore unknown options, see g_option_context_set_ignore_unknown_options().
- * @G_OPTION_ERROR_BAD_VALUE: A value couldn't be parsed.
- * @G_OPTION_ERROR_FAILED: A #GOptionArgFunc callback failed.
- *
- * Error codes returned by option parsing.
- */
-
-
-/**
- * GOptionErrorFunc:
- * @context: The active #GOptionContext
- * @group: The group to which the function belongs
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: The #GError containing details about the parse error
- *
- * The type of function to be used as callback when a parse error occurs.
- */
-
-
-/**
- * GOptionFlags:
- * @G_OPTION_FLAG_HIDDEN: The option doesn't appear in <option>--help</option> output.
- * @G_OPTION_FLAG_IN_MAIN: The option appears in the main section of the <option>--help</option> output, even if it is defined in a group.
- * @G_OPTION_FLAG_REVERSE: For options of the %G_OPTION_ARG_NONE kind, this flag indicates that the sense of the option is reversed.
- * @G_OPTION_FLAG_NO_ARG: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the callback does not take any argument (like a %G_OPTION_ARG_NONE option). Since 2.8
- * @G_OPTION_FLAG_FILENAME: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the argument should be passed to the callback in the GLib filename encoding rather than UTF-8. Since 2.8
- * @G_OPTION_FLAG_OPTIONAL_ARG: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the argument supply is optional. If no argument is given then data of %GOptionParseFunc will be set to NULL. Since 2.8
- * @G_OPTION_FLAG_NOALIAS: This flag turns off the automatic conflict resolution which prefixes long option names with <literal>groupname-</literal> if there is a conflict. This option should only be used in situations where aliasing is necessary to model some legacy commandline interface. It is not safe to use this option, unless all option groups are under your direct control. Since 2.8.
- *
- * Flags which modify individual options.
- */
-
-
-/**
- * GOptionGroup:
- *
- * A <structname>GOptionGroup</structname> struct defines the options in a single
- * group. The struct has only private fields and should not be directly accessed.
- *
- * All options in a group share the same translation function. Libraries which
- * need to parse commandline options are expected to provide a function for
- * getting a <structname>GOptionGroup</structname> holding their options, which
- * the application can then add to its #GOptionContext.
- */
-
-
-/**
- * GOptionParseFunc:
- * @context: The active #GOptionContext
- * @group: The group to which the function belongs
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: A return location for error details
- *
- * The type of function that can be called before and after parsing.
- *
- * Returns: %TRUE if the function completed successfully, %FALSE if an error occurred, in which case @error should be set with g_set_error()
- */
-
-
-/**
- * GOutputStream:
- *
- * Base class for writing output.
- *
- * All classes derived from GOutputStream should implement synchronous
- * writing, splicing, flushing and closing streams, but may implement
- * asynchronous versions.
- */
-
-
-/**
- * GOutputStreamSpliceFlags:
- * @G_OUTPUT_STREAM_SPLICE_NONE: Do not close either stream.
- * @G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE: Close the source stream after the splice.
- * @G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET: Close the target stream after the splice.
- *
- * GOutputStreamSpliceFlags determine how streams should be spliced.
- */
-
-
-/**
- * GOutputVector:
- * @buffer: Pointer to a buffer of data to read.
- * @size: the size of @buffer.
- *
- * Structure used for scatter/gather data output.
- * You generally pass in an array of #GOutputVector<!-- -->s
- * and the operation will use all the buffers as if they were
- * one buffer.
- *
- * Since: 2.22
- */
-
-
-/**
- * GParamFlags:
- * @G_PARAM_READABLE: the parameter is readable
- * @G_PARAM_WRITABLE: the parameter is writable
- * @G_PARAM_CONSTRUCT: the parameter will be set upon object construction
- * @G_PARAM_CONSTRUCT_ONLY: the parameter will only be set upon object construction
- * @G_PARAM_LAX_VALIDATION: upon parameter conversion (see g_param_value_convert()) strict validation is not required
- * @G_PARAM_STATIC_NAME: the string used as name when constructing the parameter is guaranteed to remain valid and unmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_STATIC_NICK: the string used as nick when constructing the parameter is guaranteed to remain valid and unmmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_STATIC_BLURB: the string used as blurb when constructing the parameter is guaranteed to remain valid and unmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_PRIVATE: internal
- * @G_PARAM_DEPRECATED: the parameter is deprecated and will be removed in a future version. A warning will be generated if it is used while running with G_ENABLE_DIAGNOSTIC=1. Since 2.26
- *
- * Through the #GParamFlags flag values, certain aspects of parameters
- * can be configured.
- */
-
-
-/**
- * GParamSpec:
- * @g_type_instance: private #GTypeInstance portion
- * @name: name of this parameter: always an interned string
- * @flags: #GParamFlags flags for this parameter
- * @value_type: the #GValue type for this parameter
- * @owner_type: #GType type that uses (introduces) this parameter
- *
- * All other fields of the <structname>GParamSpec</structname> struct are private and
- * should not be used directly.
- */
-
-
-/**
- * GParamSpecBoolean:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for boolean properties.
- */
-
-
-/**
- * GParamSpecBoxed:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for boxed properties.
- */
-
-
-/**
- * GParamSpecChar:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for character properties.
- */
-
-
-/**
- * GParamSpecClass:
- * @g_type_class: the parent class
- * @value_type: the #GValue type for this parameter
- * @finalize: The instance finalization function (optional), should chain up to the finalize method of the parent class.
- * @value_set_default: Resets a @value to the default value for this type (recommended, the default is g_value_reset()), see g_param_value_set_default().
- * @value_validate: Ensures that the contents of @value comply with the specifications set out by this type (optional), see g_param_value_validate().
- * @values_cmp: Compares @value1 with @value2 according to this type (recommended, the default is memcmp()), see g_param_values_cmp().
- *
- * The class structure for the <structname>GParamSpec</structname> type.
- * Normally, <structname>GParamSpec</structname> classes are filled by
- * g_param_type_register_static().
- */
-
-
-/**
- * GParamSpecDouble:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- * @epsilon: values closer than @epsilon will be considered identical by g_param_values_cmp(); the default value is 1e-90.
- *
- * A #GParamSpec derived structure that contains the meta data for double properties.
- */
-
-
-/**
- * GParamSpecEnum:
- * @parent_instance: private #GParamSpec portion
- * @enum_class: the #GEnumClass for the enum
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for enum
- * properties.
- */
-
-
-/**
- * GParamSpecFlags:
- * @parent_instance: private #GParamSpec portion
- * @flags_class: the #GFlagsClass for the flags
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for flags
- * properties.
- */
-
-
-/**
- * GParamSpecFloat:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- * @epsilon: values closer than @epsilon will be considered identical by g_param_values_cmp(); the default value is 1e-30.
- *
- * A #GParamSpec derived structure that contains the meta data for float properties.
- */
-
-
-/**
- * GParamSpecGType:
- * @parent_instance: private #GParamSpec portion
- * @is_a_type: a #GType whose subtypes can occur as values
- *
- * A #GParamSpec derived structure that contains the meta data for #GType properties.
- *
- * Since: 2.10
- */
-
-
-/**
- * GParamSpecInt:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for integer properties.
- */
-
-
-/**
- * GParamSpecInt64:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for 64bit integer properties.
- */
-
-
-/**
- * GParamSpecLong:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for long integer properties.
- */
-
-
-/**
- * GParamSpecObject:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for object properties.
- */
-
-
-/**
- * GParamSpecOverride:
- *
- * This is a type of #GParamSpec type that simply redirects operations to
- * another paramspec.  All operations other than getting or
- * setting the value are redirected, including accessing the nick and
- * blurb, validating a value, and so forth. See
- * g_param_spec_get_redirect_target() for retrieving the overidden
- * property. #GParamSpecOverride is used in implementing
- * g_object_class_override_property(), and will not be directly useful
- * unless you are implementing a new base type similar to GObject.
- *
- * Since: 2.4
- */
-
-
-/**
- * GParamSpecParam:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for %G_TYPE_PARAM
- * properties.
- */
-
-
-/**
- * GParamSpecPointer:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for pointer properties.
- */
-
-
-/**
- * GParamSpecString:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- * @cset_first: a string containing the allowed values for the first byte
- * @cset_nth: a string containing the allowed values for the subsequent bytes
- * @substitutor: the replacement byte for bytes which don't match @cset_first or @cset_nth.
- * @null_fold_if_empty: replace empty string by %NULL
- * @ensure_non_null: replace %NULL strings by an empty string
- *
- * A #GParamSpec derived structure that contains the meta data for string
- * properties.
- */
-
-
-/**
- * GParamSpecTypeInfo:
- * @instance_size: Size of the instance (object) structure.
- * @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
- * @instance_init: Location of the instance initialization function (optional).
- * @value_type: The #GType of values conforming to this #GParamSpec
- * @finalize: The instance finalization function (optional).
- * @value_set_default: Resets a @value to the default value for @pspec (recommended, the default is g_value_reset()), see g_param_value_set_default().
- * @value_validate: Ensures that the contents of @value comply with the specifications set out by @pspec (optional), see g_param_value_validate().
- * @values_cmp: Compares @value1 with @value2 according to @pspec (recommended, the default is memcmp()), see g_param_values_cmp().
- *
- * This structure is used to provide the type system with the information
- * required to initialize and destruct (finalize) a parameter's class and
- * instances thereof.
- * The initialized structure is passed to the g_param_type_register_static()
- * The type system will perform a deep copy of this structure, so its memory
- * does not need to be persistent across invocation of
- * g_param_type_register_static().
- */
-
-
-/**
- * GParamSpecUChar:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned character properties.
- */
-
-
-/**
- * GParamSpecUInt:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned integer properties.
- */
-
-
-/**
- * GParamSpecUInt64:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned 64bit integer properties.
- */
-
-
-/**
- * GParamSpecULong:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned long integer properties.
- */
-
-
-/**
- * GParamSpecUnichar:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unichar (unsigned integer) properties.
- */
-
-
-/**
- * GParamSpecValueArray:
- * @parent_instance: private #GParamSpec portion
- * @element_spec: a #GParamSpec describing the elements contained in arrays of this property, may be %NULL
- * @fixed_n_elements: if greater than 0, arrays of this property will always have this many elements
- *
- * A #GParamSpec derived structure that contains the meta data for #GValueArray properties.
- */
-
-
-/**
- * GParamSpecVariant:
- * @parent_instance: private #GParamSpec portion
- * @type: a #GVariantType, or %NULL
- * @default_value: a #GVariant, or %NULL
- *
- * A #GParamSpec derived structure that contains the meta data for #GVariant properties.
- *
- * Since: 2.26
- */
-
-
-/**
- * GParameter:
- * @name: the parameter name
- * @value: the parameter value
- *
- * The <structname>GParameter</structname> struct is an auxiliary structure used
- * to hand parameter name/value pairs to g_object_newv().
- */
-
-
-/**
- * GPasswordSave:
- * @G_PASSWORD_SAVE_NEVER: never save a password.
- * @G_PASSWORD_SAVE_FOR_SESSION: save a password for the session.
- * @G_PASSWORD_SAVE_PERMANENTLY: save a password permanently.
- *
- * #GPasswordSave is used to indicate the lifespan of a saved password.
- *
- * #Gvfs stores passwords in the Gnome keyring when this flag allows it
- * to, and later retrieves it again from there.
- */
-
-
-/**
- * GPermission:
- *
- * #GPermission is an opaque data structure and can only be accessed
- * using the following functions.
- */
-
-
-/**
- * GPermission:allowed:
- *
- * %TRUE if the caller currently has permission to perform the action that
- * @permission represents the permission to perform.
- */
-
-
-/**
- * GPermission:can-acquire:
- *
- * %TRUE if it is generally possible to acquire the permission by calling
- * g_permission_acquire().
- */
-
-
-/**
- * GPermission:can-release:
- *
- * %TRUE if it is generally possible to release the permission by calling
- * g_permission_release().
- */
-
-
-/**
- * GPid:
- *
- * A type which is used to hold a process identification.
- *
- * On UNIX, processes are identified by a process id (an integer),
- * while Windows uses process handles (which are pointers).
- *
- * GPid is used in GLib only for descendant processes spawned with
- * the g_spawn functions.
- */
-
-
-/**
- * GPollFD:
- * @fd: the file descriptor to poll (or a <type>HANDLE</type> on Win32)
- * @events: a bitwise combination from #GIOCondition, specifying which events should be polled for. Typically for reading from a file descriptor you would use %G_IO_IN | %G_IO_HUP | %G_IO_ERR, and for writing you would use %G_IO_OUT | %G_IO_ERR.
- * @revents: a bitwise combination of flags from #GIOCondition, returned from the poll() function to indicate which events occurred.
- *
- * Represents a file descriptor, which events to poll for, and which events
- * occurred.
- */
-
-
-/**
- * GPollFunc:
- * @ufds: an array of #GPollFD elements
- * @nfsd: the number of elements in @ufds
- * @timeout_: the maximum time to wait for an event of the file descriptors. A negative value indicates an infinite timeout.
- *
- * Specifies the type of function passed to g_main_context_set_poll_func().
- * The semantics of the function should match those of the poll() system call.
- *
- * Returns: the number of #GPollFD elements which have events or errors reported, or -1 if an error occurred.
- */
-
-
-/**
- * GPollableInputStream:
- *
- * An interface for a #GInputStream that can be polled for readability.
- *
- * Since: 2.28
- */
-
-
-/**
- * GPollableInputStreamInterface:
- * @g_iface: The parent interface.
- * @can_poll: Checks if the #GPollableInputStream instance is actually pollable
- * @is_readable: Checks if the stream is readable
- * @create_source: Creates a #GSource to poll the stream
- * @read_nonblocking: Does a non-blocking read or returns %G_IO_ERROR_WOULD_BLOCK
- *
- * The interface for pollable input streams.
- *
- * The default implementation of @can_poll always returns %TRUE.
- *
- * The default implementation of @read_nonblocking calls
- * g_pollable_input_stream_is_readable(), and then calls
- * g_input_stream_read() if it returns %TRUE. This means you only need
- * to override it if it is possible that your @is_readable
- * implementation may return %TRUE when the stream is not actually
- * readable.
- *
- * Since: 2.28
- */
-
-
-/**
- * GPollableOutputStream:
- *
- * An interface for a #GOutputStream that can be polled for readability.
- *
- * Since: 2.28
- */
-
-
-/**
- * GPollableOutputStreamInterface:
- * @g_iface: The parent interface.
- * @can_poll: Checks if the #GPollableOutputStream instance is actually pollable
- * @is_writable: Checks if the stream is writable
- * @create_source: Creates a #GSource to poll the stream
- * @write_nonblocking: Does a non-blocking write or returns %G_IO_ERROR_WOULD_BLOCK
- *
- * The interface for pollable output streams.
- *
- * The default implementation of @can_poll always returns %TRUE.
- *
- * The default implementation of @write_nonblocking calls
- * g_pollable_output_stream_is_writable(), and then calls
- * g_output_stream_write() if it returns %TRUE. This means you only
- * need to override it if it is possible that your @is_writable
- * implementation may return %TRUE when the stream is not actually
- * writable.
- *
- * Since: 2.28
- */
-
-
-/**
- * GPollableSourceFunc:
- * @pollable_stream: the #GPollableInputStream or #GPollableOutputStream
- * @user_data: data passed in by the user.
- *
- * This is the function type of the callback used for the #GSource
- * returned by g_pollable_input_stream_create_source() and
- * g_pollable_output_stream_create_source().
- *
- * Returns: it should return %FALSE if the source should be removed.
- * Since: 2.28
- */
-
-
-/**
- * GPrintFunc:
- * @string: the message to output
- *
- * Specifies the type of the print handler functions.
- * These are called with the complete formatted string to output.
- */
-
-
-/**
- * GProxy:
- *
- * Interface that handles proxy connection and payload.
- *
- * Since: 2.26
- */
-
-
-/**
- * GProxyAddress:
- *
- * A #GInetSocketAddress representing a connection via a proxy server
- *
- * Since: 2.26
- */
-
-
-/**
- * GProxyAddressEnumerator:
- *
- * A subclass of #GSocketAddressEnumerator that takes another address
- * enumerator and wraps its results in #GProxyAddress<!-- -->es as
- * directed by the default #GProxyResolver.
- */
-
-
-/**
- * GProxyInterface:
- * @g_iface: The parent interface.
- * @connect: Connect to proxy server and wrap (if required) the #connection to handle payload.
- * @connect_async: Same as connect() but asynchronous.
- * @connect_finish: Returns the result of connect_async()
- * @supports_hostname: Returns whether the proxy supports hostname lookups.
- *
- * Provides an interface for handling proxy connection and payload.
- *
- * Since: 2.26
- */
-
-
-/**
- * GProxyResolver:
- *
- * A helper class to enumerate proxies base on URI.
- *
- * Since: 2.26
- */
-
-
-/**
- * GQueue:
- * @head: a pointer to the first element of the queue
- * @tail: a pointer to the last element of the queue
- * @length: the number of elements in the queue
- *
- * Contains the public fields of a
- * <link linkend="glib-Double-ended-Queues">Queue</link>.
- */
-
-
-/**
- * GReallocFunc:
- * @data: memory block to reallocate
- * @size: size to reallocate @data to
- *
- * Changes the size of the memory block pointed to by @data to
- * @size bytes.
- *
- * The function should have the same semantics as realloc().
- *
- * Returns: a pointer to the reallocated memory
- */
-
-
-/**
- * GRegex:
- *
- * A GRegex is the "compiled" form of a regular expression pattern. This
- * structure is opaque and its fields cannot be accessed directly.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexCompileFlags:
- * @G_REGEX_CASELESS: Letters in the pattern match both upper- and lowercase letters. This option can be changed within a pattern by a "(?i)" option setting.
- * @G_REGEX_MULTILINE: By default, GRegex treats the strings as consisting of a single line of characters (even if it actually contains newlines). The "start of line" metacharacter ("^") matches only at the start of the string, while the "end of line" metacharacter ("$") matches only at the end of the string, or before a terminating newline (unless #G_REGEX_DOLLAR_ENDONLY is set). When #G_REGEX_MULTILINE is set, the "start of line" and "end of line" constructs match immediately following or immediately before any newline in the string, respectively, as well as at the very start and end. This can be changed within a pattern by a "(?m)" option setting.
- * @G_REGEX_DOTALL: A dot metacharater (".") in the pattern matches all characters, including newlines. Without it, newlines are excluded. This option can be changed within a pattern by a ("?s") option setting.
- * @G_REGEX_EXTENDED: Whitespace data characters in the pattern are totally ignored except when escaped or inside a character class. Whitespace does not include the VT character (code 11). In addition, characters between an unescaped "#" outside a character class and the next newline character, inclusive, are also ignored. This can be changed within a pattern by a "(?x)" option setting.
- * @G_REGEX_ANCHORED: The pattern is forced to be "anchored", that is, it is constrained to match only at the first matching point in the string that is being searched. This effect can also be achieved by appropriate constructs in the pattern itself such as the "^" metacharater.
- * @G_REGEX_DOLLAR_ENDONLY: A dollar metacharacter ("$") in the pattern matches only at the end of the string. Without this option, a dollar also matches immediately before the final character if it is a newline (but not before any other newlines). This option is ignored if #G_REGEX_MULTILINE is set.
- * @G_REGEX_UNGREEDY: Inverts the "greediness" of the quantifiers so that they are not greedy by default, but become greedy if followed by "?". It can also be set by a "(?U)" option setting within the pattern.
- * @G_REGEX_RAW: Usually strings must be valid UTF-8 strings, using this flag they are considered as a raw sequence of bytes.
- * @G_REGEX_NO_AUTO_CAPTURE: Disables the use of numbered capturing parentheses in the pattern. Any opening parenthesis that is not followed by "?" behaves as if it were followed by "?:" but named parentheses can still be used for capturing (and they acquire numbers in the usual way).
- * @G_REGEX_OPTIMIZE: Optimize the regular expression. If the pattern will be used many times, then it may be worth the effort to optimize it to improve the speed of matches.
- * @G_REGEX_DUPNAMES: Names used to identify capturing subpatterns need not be unique. This can be helpful for certain types of pattern when it is known that only one instance of the named subpattern can ever be matched.
- * @G_REGEX_NEWLINE_CR: Usually any newline character is recognized, if this option is set, the only recognized newline character is '\r'.
- * @G_REGEX_NEWLINE_LF: Usually any newline character is recognized, if this option is set, the only recognized newline character is '\n'.
- * @G_REGEX_NEWLINE_CRLF: Usually any newline character is recognized, if this option is set, the only recognized newline character sequence is '\r\n'.
- *
- * Flags specifying compile-time options.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexError:
- * @G_REGEX_ERROR_COMPILE: Compilation of the regular expression failed.
- * @G_REGEX_ERROR_OPTIMIZE: Optimization of the regular expression failed.
- * @G_REGEX_ERROR_REPLACE: Replacement failed due to an ill-formed replacement string.
- * @G_REGEX_ERROR_MATCH: The match process failed.
- * @G_REGEX_ERROR_INTERNAL: Internal error of the regular expression engine. Since 2.16
- * @G_REGEX_ERROR_STRAY_BACKSLASH: "\\" at end of pattern. Since 2.16
- * @G_REGEX_ERROR_MISSING_CONTROL_CHAR: "\\c" at end of pattern. Since 2.16
- * @G_REGEX_ERROR_UNRECOGNIZED_ESCAPE: Unrecognized character follows "\\". Since 2.16
- * @G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER: Numbers out of order in "{}" quantifier. Since 2.16
- * @G_REGEX_ERROR_QUANTIFIER_TOO_BIG: Number too big in "{}" quantifier. Since 2.16
- * @G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS: Missing terminating "]" for character class. Since 2.16
- * @G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS: Invalid escape sequence in character class. Since 2.16
- * @G_REGEX_ERROR_RANGE_OUT_OF_ORDER: Range out of order in character class. Since 2.16
- * @G_REGEX_ERROR_NOTHING_TO_REPEAT: Nothing to repeat. Since 2.16
- * @G_REGEX_ERROR_UNRECOGNIZED_CHARACTER: Unrecognized character after "(?", "(?&lt;" or "(?P". Since 2.16
- * @G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS: POSIX named classes are supported only within a class. Since 2.16
- * @G_REGEX_ERROR_UNMATCHED_PARENTHESIS: Missing terminating ")" or ")" without opening "(". Since 2.16
- * @G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE: Reference to non-existent subpattern. Since 2.16
- * @G_REGEX_ERROR_UNTERMINATED_COMMENT: Missing terminating ")" after comment. Since 2.16
- * @G_REGEX_ERROR_EXPRESSION_TOO_LARGE: Regular expression too large. Since 2.16
- * @G_REGEX_ERROR_MEMORY_ERROR: Failed to get memory. Since 2.16
- * @G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND: Lookbehind assertion is not fixed length. Since 2.16
- * @G_REGEX_ERROR_MALFORMED_CONDITION: Malformed number or name after "(?(". Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES: Conditional group contains more than two branches. Since 2.16
- * @G_REGEX_ERROR_ASSERTION_EXPECTED: Assertion expected after "(?(". Since 2.16
- * @G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME: Unknown POSIX class name. Since 2.16
- * @G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED: POSIX collating elements are not supported. Since 2.16
- * @G_REGEX_ERROR_HEX_CODE_TOO_LARGE: Character value in "\\x{...}" sequence is too large. Since 2.16
- * @G_REGEX_ERROR_INVALID_CONDITION: Invalid condition "(?(0)". Since 2.16
- * @G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND: \\C not allowed in lookbehind assertion. Since 2.16
- * @G_REGEX_ERROR_INFINITE_LOOP: Recursive call could loop indefinitely. Since 2.16
- * @G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR: Missing terminator in subpattern name. Since 2.16
- * @G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME: Two named subpatterns have the same name. Since 2.16
- * @G_REGEX_ERROR_MALFORMED_PROPERTY: Malformed "\\P" or "\\p" sequence. Since 2.16
- * @G_REGEX_ERROR_UNKNOWN_PROPERTY: Unknown property name after "\\P" or "\\p". Since 2.16
- * @G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG: Subpattern name is too long (maximum 32 characters). Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_SUBPATTERNS: Too many named subpatterns (maximum 10,000). Since 2.16
- * @G_REGEX_ERROR_INVALID_OCTAL_VALUE: Octal value is greater than "\\377". Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE: "DEFINE" group contains more than one branch. Since 2.16
- * @G_REGEX_ERROR_DEFINE_REPETION: Repeating a "DEFINE" group is not allowed. Since 2.16
- * @G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS: Inconsistent newline options. Since 2.16
- * @G_REGEX_ERROR_MISSING_BACK_REFERENCE: "\\g" is not followed by a braced name or an optionally braced non-zero number. Since 2.16
- *
- * Error codes returned by regular expressions functions.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexEvalCallback:
- * @match_info: the #GMatchInfo generated by the match. Use g_match_info_get_regex() and g_match_info_get_string() if you need the #GRegex or the matched string.
- * @result: a #GString containing the new string
- * @user_data: user data passed to g_regex_replace_eval()
- *
- * Specifies the type of the function passed to g_regex_replace_eval().
- * It is called for each occurrence of the pattern in the string passed
- * to g_regex_replace_eval(), and it should append the replacement to
- * @result.
- *
- * Returns: %FALSE to continue the replacement process, %TRUE to stop it
- * Since: 2.14
- */
-
-
-/**
- * GRegexMatchFlags:
- * @G_REGEX_MATCH_ANCHORED: The pattern is forced to be "anchored", that is, it is constrained to match only at the first matching point in the string that is being searched. This effect can also be achieved by appropriate constructs in the pattern itself such as the "^" metacharater.
- * @G_REGEX_MATCH_NOTBOL: Specifies that first character of the string is not the beginning of a line, so the circumflex metacharacter should not match before it. Setting this without #G_REGEX_MULTILINE (at compile time) causes circumflex never to match. This option affects only the behaviour of the circumflex metacharacter, it does not affect "\A".
- * @G_REGEX_MATCH_NOTEOL: Specifies that the end of the subject string is not the end of a line, so the dollar metacharacter should not match it nor (except in multiline mode) a newline immediately before it. Setting this without #G_REGEX_MULTILINE (at compile time) causes dollar never to match. This option affects only the behaviour of the dollar metacharacter, it does not affect "\Z" or "\z".
- * @G_REGEX_MATCH_NOTEMPTY: An empty string is not considered to be a valid match if this option is set. If there are alternatives in the pattern, they are tried. If all the alternatives match the empty string, the entire match fails. For example, if the pattern "a?b?" is applied to a string not beginning with "a" or "b", it matches the empty string at the start of the string. With this flag set, this match is not valid, so GRegex searches further into the string for occurrences of "a" or "b".
- * @G_REGEX_MATCH_PARTIAL: Turns on the partial matching feature, for more documentation on partial matching see g_match_info_is_partial_match().
- * @G_REGEX_MATCH_NEWLINE_CR: Overrides the newline definition set when creating a new #GRegex, setting the '\r' character as line terminator.
- * @G_REGEX_MATCH_NEWLINE_LF: Overrides the newline definition set when creating a new #GRegex, setting the '\n' character as line terminator.
- * @G_REGEX_MATCH_NEWLINE_CRLF: Overrides the newline definition set when creating a new #GRegex, setting the '\r\n' characters as line terminator.
- * @G_REGEX_MATCH_NEWLINE_ANY: Overrides the newline definition set when creating a new #GRegex, any newline character or character sequence is recognized.
- *
- * Flags specifying match-time options.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRemoteActionGroupInterface:
- * @activate_action_full: the virtual function pointer for g_remote_action_group_activate_action_full()
- * @change_action_state_full: the virtual function pointer for g_remote_action_group_change_action_state_full()
- *
- * The virtual function table for #GRemoteActionGroup.
- *
- * Since: 2.32
- */
-
-
-/**
- * GResolver:
- *
- * The object that handles DNS resolution. Use g_resolver_get_default()
- * to get the default resolver.
- */
-
-
-/**
- * GResolver::reload:
- * @resolver: a #GResolver
- *
- * Emitted when the resolver notices that the system resolver
- * configuration has changed.
- */
-
-
-/**
- * GResolverError:
- * @G_RESOLVER_ERROR_NOT_FOUND: the requested name/address/service was not found
- * @G_RESOLVER_ERROR_TEMPORARY_FAILURE: the requested information could not be looked up due to a network error or similar problem
- * @G_RESOLVER_ERROR_INTERNAL: unknown error
- *
- * An error code used with %G_RESOLVER_ERROR in a #GError returned
- * from a #GResolver routine.
- *
- * Since: 2.22
- */
-
-
-/**
- * GResource:
- *
- * A resource bundle.
- *
- * Since: 2.32
- */
-
-
-/**
- * GResourceError:
- * @G_RESOURCE_ERROR_NOT_FOUND: no file was found at the requested path
- * @G_RESOURCE_ERROR_INTERNAL: unknown error
- *
- * An error code used with %G_RESOURCE_ERROR in a #GError returned
- * from a #GResource routine.
- *
- * Since: 2.32
- */
-
-
-/**
- * GResourceFlags:
- * @G_RESOURCE_FLAGS_NONE: No flags set.
- * @G_RESOURCE_FLAGS_COMPRESSED: The file is compressed.
- *
- * GResourceFlags give information about a particular file inside a resource
- * bundle.
- *
- * Since: 2.32
- */
-
-
-/**
- * GResourceLookupFlags:
- * @G_RESOURCE_LOOKUP_FLAGS_NONE: No flags set.
- *
- * GResourceLookupFlags determine how resource path lookups are handled.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSeekable:
- *
- * Seek object for streaming operations.
- */
-
-
-/**
- * GSeekableIface:
- * @g_iface: The parent interface.
- * @tell: Tells the current location within a stream.
- * @can_seek: Checks if seeking is supported by the stream.
- * @seek: Seeks to a location within a stream.
- * @can_truncate: Checks if truncation is supported by the stream.
- * @truncate_fn: Truncates a stream.
- *
- * Provides an interface for implementing seekable functionality on I/O Streams.
- */
-
-
-/**
- * GSettings::change-event:
- * @settings: the object on which the signal was emitted
- * @keys: (array length=n_keys) (element-type GQuark) (allow-none): an array of #GQuark<!-- -->s for the changed keys, or %NULL
- * @n_keys: the length of the @keys array, or 0
- *
- * The "change-event" signal is emitted once per change event that
- * affects this settings object.  You should connect to this signal
- * only if you are interested in viewing groups of changes before they
- * are split out into multiple emissions of the "changed" signal.
- * For most use cases it is more appropriate to use the "changed" signal.
- *
- * In the event that the change event applies to one or more specified
- * keys, @keys will be an array of #GQuark of length @n_keys.  In the
- * event that the change event applies to the #GSettings object as a
- * whole (ie: potentially every key has been changed) then @keys will
- * be %NULL and @n_keys will be 0.
- *
- * The default handler for this signal invokes the "changed" signal
- * for each affected key.  If any other connected handler returns
- * %TRUE then this default functionality will be suppressed.
- *
- * Returns: %TRUE to stop other handlers from being invoked for the event. FALSE to propagate the event further.
- */
-
-
-/**
- * GSettings::changed:
- * @settings: the object on which the signal was emitted
- * @key: the name of the key that changed
- *
- * The "changed" signal is emitted when a key has potentially changed.
- * You should call one of the g_settings_get() calls to check the new
- * value.
- *
- * This signal supports detailed connections.  You can connect to the
- * detailed signal "changed::x" in order to only receive callbacks
- * when key "x" changes.
- */
-
-
-/**
- * GSettings::writable-change-event:
- * @settings: the object on which the signal was emitted
- * @key: the quark of the key, or 0
- *
- * The "writable-change-event" signal is emitted once per writability
- * change event that affects this settings object.  You should connect
- * to this signal if you are interested in viewing groups of changes
- * before they are split out into multiple emissions of the
- * "writable-changed" signal.  For most use cases it is more
- * appropriate to use the "writable-changed" signal.
- *
- * In the event that the writability change applies only to a single
- * key, @key will be set to the #GQuark for that key.  In the event
- * that the writability change affects the entire settings object,
- * @key will be 0.
- *
- * The default handler for this signal invokes the "writable-changed"
- * and "changed" signals for each affected key.  This is done because
- * changes in writability might also imply changes in value (if for
- * example, a new mandatory setting is introduced).  If any other
- * connected handler returns %TRUE then this default functionality
- * will be suppressed.
- *
- * Returns: %TRUE to stop other handlers from being invoked for the event. FALSE to propagate the event further.
- */
-
-
-/**
- * GSettings::writable-changed:
- * @settings: the object on which the signal was emitted
- * @key: the key
- *
- * The "writable-changed" signal is emitted when the writability of a
- * key has potentially changed.  You should call
- * g_settings_is_writable() in order to determine the new status.
- *
- * This signal supports detailed connections.  You can connect to the
- * detailed signal "writable-changed::x" in order to only receive
- * callbacks when the writability of "x" changes.
- */
-
-
-/**
- * GSettings:context:
- *
- * The name of the context that the settings are stored in.
- */
-
-
-/**
- * GSettings:delay-apply:
- *
- * Whether the #GSettings object is in 'delay-apply' mode. See
- * g_settings_delay() for details.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSettings:has-unapplied:
- *
- * If this property is %TRUE, the #GSettings object has outstanding
- * changes that will be applied when g_settings_apply() is called.
- */
-
-
-/**
- * GSettings:path:
- *
- * The path within the backend where the settings are stored.
- */
-
-
-/**
- * GSettings:schema:
- *
- * The name of the schema that describes the types of keys
- * for this #GSettings object.
- *
- * The type of this property is *not* #GSettingsSchema.
- * #GSettingsSchema has only existed since version 2.32 and
- * unfortunately this name was used in previous versions to refer to
- * the schema ID rather than the schema itself.  Take care to use the
- * 'settings-schema' property if you wish to pass in a
- * #GSettingsSchema.
- *
- * Deprecated: 2.32:Use the 'schema-id' property instead.  In a future version, this property may instead refer to a #GSettingsSchema.
- */
-
-
-/**
- * GSettings:schema-id:
- *
- * The name of the schema that describes the types of keys
- * for this #GSettings object.
- */
-
-
-/**
- * GSettings:settings-schema:
- *
- * The #GSettingsSchema describing the types of keys for this
- * #GSettings object.
- *
- * Ideally, this property would be called 'schema'.  #GSettingsSchema
- * has only existed since version 2.32, however, and before then the
- * 'schema' property was used to refer to the ID of the schema rather
- * than the schema itself.  Take care.
- */
-
-
-/**
- * GSettingsBackend:
- *
- * An implementation of a settings storage repository.
- */
-
-
-/**
- * GSettingsBindFlags:
- * @G_SETTINGS_BIND_DEFAULT: Equivalent to <literal>G_SETTINGS_BIND_GET|G_SETTINGS_BIND_SET</literal>
- * @G_SETTINGS_BIND_GET: Update the #GObject property when the setting changes. It is an error to use this flag if the property is not writable.
- * @G_SETTINGS_BIND_SET: Update the setting when the #GObject property changes. It is an error to use this flag if the property is not readable.
- * @G_SETTINGS_BIND_NO_SENSITIVITY: Do not try to bind a "sensitivity" property to the writability of the setting
- * @G_SETTINGS_BIND_GET_NO_CHANGES: When set in addition to #G_SETTINGS_BIND_GET, set the #GObject property value initially from the setting, but do not listen for changes of the setting
- * @G_SETTINGS_BIND_INVERT_BOOLEAN: When passed to g_settings_bind(), uses a pair of mapping functions that invert the boolean value when mapping between the setting and the property.  The setting and property must both be booleans.  You cannot pass this flag to g_settings_bind_with_mapping().
- *
- * Flags used when creating a binding. These flags determine in which
- * direction the binding works. The default is to synchronize in both
- * directions.
- */
-
-
-/**
- * GSettingsBindGetMapping:
- * @value: return location for the property value
- * @variant: the #GVariant
- * @user_data: user data that was specified when the binding was created
- *
- * The type for the function that is used to convert from #GSettings to
- * an object property. The @value is already initialized to hold values
- * of the appropriate type.
- *
- * Returns: %TRUE if the conversion succeeded, %FALSE in case of an error
- */
-
-
-/**
- * GSettingsBindSetMapping:
- * @value: a #GValue containing the property value to map
- * @expected_type: the #GVariantType to create
- * @user_data: user data that was specified when the binding was created
- *
- * The type for the function that is used to convert an object property
- * value to a #GVariant for storing it in #GSettings.
- *
- * Returns: a new #GVariant holding the data from @value, or %NULL in case of an error
- */
-
-
-/**
- * GSettingsGetMapping:
- * @value: the #GVariant to map, or %NULL
- * @result: (out): the result of the mapping
- * @user_data: (closure): the user data that was passed to g_settings_get_mapped()
- *
- * The type of the function that is used to convert from a value stored
- * in a #GSettings to a value that is useful to the application.
- *
- * If the value is successfully mapped, the result should be stored at
- * @result and %TRUE returned.  If mapping fails (for example, if @value
- * is not in the right format) then %FALSE should be returned.
- *
- * If @value is %NULL then it means that the mapping function is being
- * given a "last chance" to successfully return a valid value.  %TRUE
- * must be returned in this case.
- *
- * Returns: %TRUE if the conversion succeeded, %FALSE in case of an error
- */
-
-
-/**
- * GSettingsSchema:
- *
- * This is an opaque structure type.  You may not access it directly.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSettingsSchemaSource:
- *
- * This is an opaque structure type.  You may not access it directly.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSignalAccumulator:
- * @ihint: Signal invocation hint, see #GSignalInvocationHint.
- * @return_accu: Accumulator to collect callback return values in, this is the return value of the current signal emission.
- * @handler_return: A #GValue holding the return value of the signal handler.
- * @data: Callback data that was specified when creating the signal.
- *
- * The signal accumulator is a special callback function that can be used
- * to collect return values of the various callbacks that are called
- * during a signal emission. The signal accumulator is specified at signal
- * creation time, if it is left %NULL, no accumulation of callback return
- * values is performed. The return value of signal emissions is then the
- * value returned by the last callback.
- *
- * Returns: The accumulator function returns whether the signal emission should be aborted. Returning %FALSE means to abort the current emission and %TRUE is returned for continuation.
- */
-
-
-/**
- * GSignalCMarshaller:
- *
- * This is the signature of marshaller functions, required to marshall
- * arrays of parameter values to signal emissions into C language callback
- * invocations. It is merely an alias to #GClosureMarshal since the #GClosure
- * mechanism takes over responsibility of actual function invocation for the
- * signal system.
- */
-
-
-/**
- * GSignalCVaMarshaller:
- *
- * This is the signature of va_list marshaller functions, an optional
- * marshaller that can be used in some situations to avoid
- * marshalling the signal argument into GValues.
- */
-
-
-/**
- * GSignalEmissionHook:
- * @ihint: Signal invocation hint, see #GSignalInvocationHint.
- * @n_param_values: the number of parameters to the function, including the instance on which the signal was emitted.
- * @param_values: (array length=n_param_values): the instance on which the signal was emitted, followed by the parameters of the emission.
- * @data: user data associated with the hook.
- *
- * A simple function pointer to get invoked when the signal is emitted. This
- * allows you to tie a hook to the signal type, so that it will trap all
- * emissions of that signal, from any object.
- *
- * You may not attach these to signals created with the #G_SIGNAL_NO_HOOKS flag.
- *
- * Returns: whether it wants to stay connected. If it returns %FALSE, the signal hook is disconnected (and destroyed).
- */
-
-
-/**
- * GSignalFlags:
- * @G_SIGNAL_RUN_FIRST: Invoke the object method handler in the first emission stage.
- * @G_SIGNAL_RUN_LAST: Invoke the object method handler in the third emission stage.
- * @G_SIGNAL_RUN_CLEANUP: Invoke the object method handler in the last emission stage.
- * @G_SIGNAL_NO_RECURSE: Signals being emitted for an object while currently being in emission for this very object will not be emitted recursively, but instead cause the first emission to be restarted.
- * @G_SIGNAL_DETAILED: This signal supports "::detail" appendices to the signal name upon handler connections and emissions.
- * @G_SIGNAL_ACTION: Action signals are signals that may freely be emitted on alive objects from user code via g_signal_emit() and friends, without the need of being embedded into extra code that performs pre or post emission adjustments on the object. They can also be thought of as object methods which can be called generically by third-party code.
- * @G_SIGNAL_NO_HOOKS: No emissions hooks are supported for this signal.
- * @G_SIGNAL_MUST_COLLECT: Varargs signal emission will always collect the arguments, even if there are no signal handlers connected.  Since 2.30.
- * @G_SIGNAL_DEPRECATED: The signal is deprecated and will be removed in a future version. A warning will be generated if it is connected while running with G_ENABLE_DIAGNOSTIC=1.  Since 2.32.
- *
- * The signal flags are used to specify a signal's behaviour, the overall
- * signal description outlines how especially the RUN flags control the
- * stages of a signal emission.
- */
-
-
-/**
- * GSignalInvocationHint:
- * @signal_id: The signal id of the signal invoking the callback
- * @detail: The detail passed on for this emission
- * @run_type: The stage the signal emission is currently in, this field will contain one of %G_SIGNAL_RUN_FIRST, %G_SIGNAL_RUN_LAST or %G_SIGNAL_RUN_CLEANUP.
- *
- * The #GSignalInvocationHint structure is used to pass on additional information
- * to callbacks during a signal emission.
- */
-
-
-/**
- * GSignalMatchType:
- * @G_SIGNAL_MATCH_ID: The signal id must be equal.
- * @G_SIGNAL_MATCH_DETAIL: The signal detail be equal.
- * @G_SIGNAL_MATCH_CLOSURE: The closure must be the same.
- * @G_SIGNAL_MATCH_FUNC: The C closure callback must be the same.
- * @G_SIGNAL_MATCH_DATA: The closure data must be the same.
- * @G_SIGNAL_MATCH_UNBLOCKED: Only unblocked signals may matched.
- *
- * The match types specify what g_signal_handlers_block_matched(),
- * g_signal_handlers_unblock_matched() and g_signal_handlers_disconnect_matched()
- * match signals by.
- */
-
-
-/**
- * GSignalQuery:
- * @signal_id: The signal id of the signal being queried, or 0 if the signal to be queried was unknown.
- * @signal_name: The signal name.
- * @itype: The interface/instance type that this signal can be emitted for.
- * @signal_flags: The signal flags as passed in to g_signal_new().
- * @return_type: The return type for user callbacks.
- * @n_params: The number of parameters that user callbacks take.
- * @param_types: The individual parameter types for user callbacks, note that the effective callback signature is: <programlisting> @return_type callback (#gpointer     data1, [param_types param_names,] gpointer     data2); </programlisting>
- *
- * A structure holding in-depth information for a specific signal. It is
- * filled in by the g_signal_query() function.
- */
-
-
-/**
- * GSimpleAction::activate:
- * @simple: the #GSimpleAction
- * @parameter: (allow-none): the parameter to the activation
- *
- * Indicates that the action was just activated.
- *
- * @parameter will always be of the expected type.  In the event that
- * an incorrect type was given, no signal will be emitted.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleAction::change-state:
- * @simple: the #GSimpleAction
- * @value: (allow-none): the requested value for the state
- *
- * Indicates that the action just received a request to change its
- * state.
- *
- * @value will always be of the correct state type.  In the event that
- * an incorrect type was given, no signal will be emitted.
- *
- * If no handler is connected to this signal then the default
- * behaviour is to call g_simple_action_set_state() to set the state
- * to the requested value.  If you connect a signal handler then no
- * default action is taken.  If the state should change then you must
- * call g_simple_action_set_state() from the handler.
- *
- * <example>
- * <title>Example 'change-state' handler</title>
- * <programlisting>
- * static void
- * change_volume_state (GSimpleAction *action,
- *                      GVariant      *value,
- *                      gpointer       user_data)
- * {
- *   gint requested;
- *
- *   requested = g_variant_get_int32 (value);
- *
- *   // Volume only goes from 0 to 10
- *   if (0 <= requested && requested <= 10)
- *     g_simple_action_set_state (action, value);
- * }
- * </programlisting>
- * </example>
- *
- * The handler need not set the state to the requested value.  It
- * could set it to any value at all, or take some other action.
- *
- * Since: 2.30
- */
-
-
-/**
- * GSimpleAction:enabled:
- *
- * If @action is currently enabled.
- *
- * If the action is disabled then calls to g_action_activate() and
- * g_action_change_state() have no effect.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleAction:name:
- *
- * The name of the action.  This is mostly meaningful for identifying
- * the action once it has been added to a #GSimpleActionGroup.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleAction:parameter-type:
- *
- * The type of the parameter that must be given when activating the
- * action.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleAction:state:
- *
- * The state of the action, or %NULL if the action is stateless.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleAction:state-type:
- *
- * The #GVariantType of the state that the action has, or %NULL if the
- * action is stateless.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleActionGroup:
- *
- * The #GSimpleActionGroup structure contains private data and should only be accessed using the provided API.
- *
- * Since: 2.28
- */
-
-
-/**
- * GSimpleAsyncResult:
- *
- * A simple implementation of #GAsyncResult.
- */
-
-
-/**
- * GSimpleAsyncThreadFunc:
- * @res: a #GSimpleAsyncResult.
- * @object: a #GObject.
- * @cancellable: optional #GCancellable object, %NULL to ignore.
- *
- * Simple thread function that runs an asynchronous operation and
- * checks for cancellation.
- */
-
-
-/**
- * GSimplePermission:
- *
- * #GSimplePermission is an opaque data structure.  There are no methods
- * except for those defined by #GPermission.
- */
-
-
-/**
- * GSocket:
- *
- * A lowlevel network socket object.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocket:broadcast:
- *
- * Whether the socket should allow sending to and receiving from broadcast addresses.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSocket:multicast-loopback:
- *
- * Whether outgoing multicast packets loop back to the local host.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSocket:multicast-ttl:
- *
- * Time-to-live out outgoing multicast packets
- *
- * Since: 2.32
- */
-
-
-/**
- * GSocket:timeout:
- *
- * The timeout in seconds on socket I/O
- *
- * Since: 2.26
- */
-
-
-/**
- * GSocket:ttl:
- *
- * Time-to-live for outgoing unicast packets
- *
- * Since: 2.32
- */
-
-
-/**
- * GSocketAddress:
- *
- * A socket endpoint address, corresponding to <type>struct sockaddr</type>
- * or one of its subtypes.
- */
-
-
-/**
- * GSocketAddressEnumerator:
- *
- * Enumerator type for objects that contain or generate
- * #GSocketAddress<!-- -->es.
- */
-
-
-/**
- * GSocketClient:
- *
- * A helper class for network clients to make connections.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketClient::event:
- * @client: the #GSocketClient
- * @event: the event that is occurring
- * @connectable: the #GSocketConnectable that @event is occurring on
- * @connection: the current representation of the connection
- *
- * Emitted when @client's activity on @connectable changes state.
- * Among other things, this can be used to provide progress
- * information about a network connection in the UI. The meanings of
- * the different @event values are as follows:
- *
- * <variablelist>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_RESOLVING:</term>
- *     <listitem><para>
- *       @client is about to look up @connectable in DNS.
- *       @connection will be %NULL.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_RESOLVED:</term>
- *     <listitem><para>
- *       @client has successfully resolved @connectable in DNS.
- *       @connection will be %NULL.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_CONNECTING:</term>
- *     <listitem><para>
- *       @client is about to make a connection to a remote host;
- *       either a proxy server or the destination server itself.
- *       @connection is the #GSocketConnection, which is not yet
- *       connected.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_CONNECTED:</term>
- *     <listitem><para>
- *       @client has successfully connected to a remote host.
- *       @connection is the connected #GSocketConnection.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_PROXY_NEGOTIATING:</term>
- *     <listitem><para>
- *       @client is about to negotiate with a proxy to get it to
- *       connect to @connectable. @connection is the
- *       #GSocketConnection to the proxy server.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_PROXY_NEGOTIATED:</term>
- *     <listitem><para>
- *       @client has negotiated a connection to @connectable through
- *       a proxy server. @connection is the stream returned from
- *       g_proxy_connect(), which may or may not be a
- *       #GSocketConnection.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_TLS_HANDSHAKING:</term>
- *     <listitem><para>
- *       @client is about to begin a TLS handshake. @connection is a
- *       #GTlsClientConnection.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_TLS_HANDSHAKED:</term>
- *     <listitem><para>
- *       @client has successfully completed the TLS handshake.
- *       @connection is a #GTlsClientConnection.
- *     </para></listitem>
- *   </varlistentry>
- *   <varlistentry>
- *     <term>%G_SOCKET_CLIENT_COMPLETE:</term>
- *     <listitem><para>
- *       @client has either successfully connected to @connectable
- *       (in which case @connection is the #GSocketConnection that
- *       it will be returning to the caller) or has failed (in which
- *       case @connection is %NULL and the client is about to return
- *       an error).
- *     </para></listitem>
- *   </varlistentry>
- * </variablelist>
- *
- * Each event except %G_SOCKET_CLIENT_COMPLETE may be emitted
- * multiple times (or not at all) for a given connectable (in
- * particular, if @client ends up attempting to connect to more than
- * one address). However, if @client emits the #GSocketClient::event
- * signal at all for a given connectable, that it will always emit
- * it with %G_SOCKET_CLIENT_COMPLETE when it is done.
- *
- * Note that there may be additional #GSocketClientEvent values in
- * the future; unrecognized @event values should be ignored.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSocketClientEvent:
- * @G_SOCKET_CLIENT_RESOLVING: The client is doing a DNS lookup.
- * @G_SOCKET_CLIENT_RESOLVED: The client has completed a DNS lookup.
- * @G_SOCKET_CLIENT_CONNECTING: The client is connecting to a remote host (either a proxy or the destination server).
- * @G_SOCKET_CLIENT_CONNECTED: The client has connected to a remote host.
- * @G_SOCKET_CLIENT_PROXY_NEGOTIATING: The client is negotiating with a proxy to connect to the destination server.
- * @G_SOCKET_CLIENT_PROXY_NEGOTIATED: The client has negotiated with the proxy server.
- * @G_SOCKET_CLIENT_TLS_HANDSHAKING: The client is performing a TLS handshake.
- * @G_SOCKET_CLIENT_TLS_HANDSHAKED: The client has performed a TLS handshake.
- * @G_SOCKET_CLIENT_COMPLETE: The client is done with a particular #GSocketConnectable.
- *
- * Describes an event occurring on a #GSocketClient. See the
- * #GSocketClient::event signal for more details.
- *
- * Additional values may be added to this type in the future.
- *
- * Since: 2.32
- */
-
-
-/**
- * GSocketConnectable:
- *
- * Interface for objects that contain or generate #GSocketAddress<!-- -->es.
- */
-
-
-/**
- * GSocketConnectableIface:
- * @g_iface: The parent interface.
- * @enumerate: Creates a #GSocketAddressEnumerator
- * @proxy_enumerate: Creates a #GProxyAddressEnumerator
- *
- * Provides an interface for returning a #GSocketAddressEnumerator
- * and #GProxyAddressEnumerator
- */
-
-
-/**
- * GSocketConnection:
- *
- * A socket connection GIOStream object for connection-oriented sockets.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketControlMessage:
- *
- * Base class for socket-type specific control messages that can be sent and
- * received over #GSocket.
- */
-
-
-/**
- * GSocketControlMessageClass:
- * @get_size: gets the size of the message.
- * @get_level: gets the protocol of the message.
- * @get_type: gets the protocol specific type of the message.
- * @serialize: Writes out the message data.
- * @deserialize: Tries to deserialize a message.
- *
- *
- */
-
-
-/**
- * GSocketFamily:
- * @G_SOCKET_FAMILY_INVALID: no address family
- * @G_SOCKET_FAMILY_IPV4: the IPv4 family
- * @G_SOCKET_FAMILY_IPV6: the IPv6 family
- * @G_SOCKET_FAMILY_UNIX: the UNIX domain family
- *
- * The protocol family of a #GSocketAddress. (These values are
- * identical to the system defines %AF_INET, %AF_INET6 and %AF_UNIX,
- * if available.)
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketListener:
- *
- * A helper class for network servers to listen for and accept connections.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketListenerClass:
- * @changed: virtual method called when the set of socket listened to changes
- *
- *
- */
-
-
-/**
- * GSocketMsgFlags:
- * @G_SOCKET_MSG_NONE: No flags.
- * @G_SOCKET_MSG_OOB: Request to send/receive out of band data.
- * @G_SOCKET_MSG_PEEK: Read data from the socket without removing it from the queue.
- * @G_SOCKET_MSG_DONTROUTE: Don't use a gateway to send out the packet, only send to hosts on directly connected networks.
- *
- * Flags used in g_socket_receive_message() and g_socket_send_message().
- * The flags listed in the enum are some commonly available flags, but the
- * values used for them are the same as on the platform, and any other flags
- * are passed in/out as is. So to use a platform specific flag, just include
- * the right system header and pass in the flag.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketProtocol:
- * @G_SOCKET_PROTOCOL_UNKNOWN: The protocol type is unknown
- * @G_SOCKET_PROTOCOL_DEFAULT: The default protocol for the family/type
- * @G_SOCKET_PROTOCOL_TCP: TCP over IP
- * @G_SOCKET_PROTOCOL_UDP: UDP over IP
- * @G_SOCKET_PROTOCOL_SCTP: SCTP over IP
- *
- * A protocol identifier is specified when creating a #GSocket, which is a
- * family/type specific identifier, where 0 means the default protocol for
- * the particular family/type.
- *
- * This enum contains a set of commonly available and used protocols. You
- * can also pass any other identifiers handled by the platform in order to
- * use protocols not listed here.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketService:
- *
- * A helper class for handling accepting incomming connections in the
- * glib mainloop.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSocketService::incoming:
- * @service: the #GSocketService
- * @connection: a new #GSocketConnection object
- * @source_object: (allow-none): the source_object passed to g_socket_listener_add_address()
- *
- * The ::incoming signal is emitted when a new incoming connection
- * to @service needs to be handled. The handler must initiate the
- * handling of @connection, but may not block; in essence,
- * asynchronous operations must be used.
- *
- * @connection will be unreffed once the signal handler returns,
- * so you need to ref it yourself if you are planning to use it.
- *
- * Returns: %TRUE to stop other handlers from being called
- * Since: 2.22
- */
-
-
-/**
- * GSocketServiceClass:
- * @incomming: signal emitted when new connections are accepted
- *
- *
- */
-
-
-/**
- * GSocketSourceFunc:
- * @socket: the #GSocket
- * @condition: the current condition at the source fired.
- * @user_data: data passed in by the user.
- *
- * This is the function type of the callback used for the #GSource
- * returned by g_socket_create_source().
- *
- * Returns: it should return %FALSE if the source should be removed.
- * Since: 2.22
- */
-
-
-/**
- * GSocketType:
- * @G_SOCKET_TYPE_INVALID: Type unknown or wrong
- * @G_SOCKET_TYPE_STREAM: Reliable connection-based byte streams (e.g. TCP).
- * @G_SOCKET_TYPE_DATAGRAM: Connectionless, unreliable datagram passing. (e.g. UDP)
- * @G_SOCKET_TYPE_SEQPACKET: Reliable connection-based passing of datagrams of fixed maximum length (e.g. SCTP).
- *
- * Flags used when creating a #GSocket. Some protocols may not implement
- * all the socket types.
- *
- * Since: 2.22
- */
-
-
-/**
- * GSource:
- *
- * The <structname>GSource</structname> struct is an opaque data type
- * representing an event source.
- */
-
-
-/**
- * GSourceCallbackFuncs:
- * @ref: Called when a reference is added to the callback object
- * @unref: Called when a reference to the callback object is dropped
- * @get: Called to extract the callback function and data from the callback object.
- *
- * The <structname>GSourceCallbackFuncs</structname> struct contains
- * functions for managing callback objects.
- */
-
-
-/**
- * GSourceDummyMarshal:
- *
- * This is just a placeholder for #GClosureMarshal,
- * which cannot be used here for dependency reasons.
- */
-
-
-/**
- * GSourceFunc:
- * @user_data: data passed to the function, set when the source was created with one of the above functions
- *
- * Specifies the type of function passed to g_timeout_add(),
- * g_timeout_add_full(), g_idle_add(), and g_idle_add_full().
- *
- * Returns: %FALSE if the source should be removed
- */
-
-
-/**
- * GSourceFuncs:
- * @prepare: Called before all the file descriptors are polled. If the source can determine that it is ready here (without waiting for the results of the poll() call) it should return %TRUE. It can also return a @timeout_ value which should be the maximum timeout (in milliseconds) which should be passed to the poll() call. The actual timeout used will be -1 if all sources returned -1, or it will be the minimum of all the @timeout_ values returned which were >= 0.
- * @check: Called after all the file descriptors are polled. The source should return %TRUE if it is ready to be dispatched. Note that some time may have passed since the previous prepare function was called, so the source should be checked again here.
- * @dispatch: Called to dispatch the event source, after it has returned %TRUE in either its @prepare or its @check function. The @dispatch function is passed in a callback function and data. The callback function may be %NULL if the source was never connected to a callback using g_source_set_callback(). The @dispatch function should call the callback function with @user_data and whatever additional parameters are needed for this type of event source.
- * @finalize: Called when the source is finalized.
- *
- * The <structname>GSourceFuncs</structname> struct contains a table of
- * functions used to handle event sources in a generic manner.
- *
- * For idle sources, the prepare and check functions always return %TRUE
- * to indicate that the source is always ready to be processed. The prepare
- * function also returns a timeout value of 0 to ensure that the poll() call
- * doesn't block (since that would be time wasted which could have been spent
- * running the idle function).
- *
- * For timeout sources, the prepare and check functions both return %TRUE
- * if the timeout interval has expired. The prepare function also returns
- * a timeout value to ensure that the poll() call doesn't block too long
- * and miss the next timeout.
- *
- * For file descriptor sources, the prepare function typically returns %FALSE,
- * since it must wait until poll() has been called before it knows whether
- * any events need to be processed. It sets the returned timeout to -1 to
- * indicate that it doesn't mind how long the poll() call blocks. In the
- * check function, it tests the results of the poll() call to see if the
- * required condition has been met, and returns %TRUE if so.
- */
-
-
-/**
- * GSpawnChildSetupFunc:
- * @user_data: user data to pass to the function.
- *
- * Specifies the type of the setup function passed to g_spawn_async(),
- * g_spawn_sync() and g_spawn_async_with_pipes(), which can, in very
- * limited ways, be used to affect the child's execution.
- *
- * On POSIX platforms, the function is called in the child after GLib
- * has performed all the setup it plans to perform, but before calling
- * exec(). Actions taken in this function will only affect the child,
- * not the parent.
- *
- * On Windows, the function is called in the parent. Its usefulness on
- * Windows is thus questionable. In many cases executing the child setup
- * function in the parent can have ill effects, and you should be very
- * careful when porting software to Windows that uses child setup
- * functions.
- *
- * However, even on POSIX, you are extremely limited in what you can
- * safely do from a #GSpawnChildSetupFunc, because any mutexes that
- * were held by other threads in the parent process at the time of the
- * fork() will still be locked in the child process, and they will
- * never be unlocked (since the threads that held them don't exist in
- * the child). POSIX allows only async-signal-safe functions (see
- * <citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>)
- * to be called in the child between fork() and exec(), which
- * drastically limits the usefulness of child setup functions.
- *
- * In particular, it is not safe to call any function which may
- * call malloc(), which includes POSIX functions such as setenv().
- * If you need to set up the child environment differently from
- * the parent, you should use g_get_environ(), g_environ_setenv(),
- * and g_environ_unsetenv(), and then pass the complete environment
- * list to the <literal>g_spawn...</literal> function.
- */
-
-
-/**
- * GSpawnError:
- * @G_SPAWN_ERROR_FORK: Fork failed due to lack of memory.
- * @G_SPAWN_ERROR_READ: Read or select on pipes failed.
- * @G_SPAWN_ERROR_CHDIR: Changing to working directory failed.
- * @G_SPAWN_ERROR_ACCES: execv() returned <literal>EACCES</literal>
- * @G_SPAWN_ERROR_PERM: execv() returned <literal>EPERM</literal>
- * @G_SPAWN_ERROR_TOO_BIG: execv() returned <literal>E2BIG</literal>
- * @G_SPAWN_ERROR_2BIG: deprecated alias for %G_SPAWN_ERROR_TOO_BIG
- * @G_SPAWN_ERROR_NOEXEC: execv() returned <literal>ENOEXEC</literal>
- * @G_SPAWN_ERROR_NAMETOOLONG: execv() returned <literal>ENAMETOOLONG</literal>
- * @G_SPAWN_ERROR_NOENT: execv() returned <literal>ENOENT</literal>
- * @G_SPAWN_ERROR_NOMEM: execv() returned <literal>ENOMEM</literal>
- * @G_SPAWN_ERROR_NOTDIR: execv() returned <literal>ENOTDIR</literal>
- * @G_SPAWN_ERROR_LOOP: execv() returned <literal>ELOOP</literal>
- * @G_SPAWN_ERROR_TXTBUSY: execv() returned <literal>ETXTBUSY</literal>
- * @G_SPAWN_ERROR_IO: execv() returned <literal>EIO</literal>
- * @G_SPAWN_ERROR_NFILE: execv() returned <literal>ENFILE</literal>
- * @G_SPAWN_ERROR_MFILE: execv() returned <literal>EMFILE</literal>
- * @G_SPAWN_ERROR_INVAL: execv() returned <literal>EINVAL</literal>
- * @G_SPAWN_ERROR_ISDIR: execv() returned <literal>EISDIR</literal>
- * @G_SPAWN_ERROR_LIBBAD: execv() returned <literal>ELIBBAD</literal>
- * @G_SPAWN_ERROR_FAILED: Some other fatal failure, <literal>error-&gt;message</literal> should explain.
- *
- * Error codes returned by spawning processes.
- */
-
-
-/**
- * GSpawnFlags:
- * @G_SPAWN_LEAVE_DESCRIPTORS_OPEN: 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_DO_NOT_REAP_CHILD: the child will not be automatically reaped; you must use g_child_watch_add() yourself (or call waitpid() or handle <literal>SIGCHLD</literal> yourself), or the child will become a zombie.
- * @G_SPAWN_SEARCH_PATH: <literal>argv[0]</literal> need not be an absolute path, it will be looked for in the user's <envar>PATH</envar>.
- * @G_SPAWN_STDOUT_TO_DEV_NULL: the child's standard output will be discarded, instead of going to the same location as the parent's standard output.
- * @G_SPAWN_STDERR_TO_DEV_NULL: the child's standard error will be discarded.
- * @G_SPAWN_CHILD_INHERITS_STDIN: the child will inherit the parent's standard input (by default, the child's standard input is attached to <filename>/dev/null</filename>).
- * @G_SPAWN_FILE_AND_ARGV_ZERO: the first element of <literal>argv</literal> 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 <literal>argv[0]</literal> as the file to execute, and passes all of <literal>argv</literal> to the child.
- *
- * Flags passed to g_spawn_sync(), g_spawn_async() and g_spawn_async_with_pipes().
- */
-
-
-/**
- * GSrvTarget:
- *
- * A single target host/port that a network service is running on.
- */
-
-
-/**
- * GStrv:
- *
- * A C representable type name for #G_TYPE_STRV.
- */
-
-
-/**
- * GTcpConnection:
- *
- * A #GSocketConnection for TCP/IP connections.
- *
- * Since: 2.22
- */
-
-
-/**
- * GTestLogFatalFunc:
- * @log_domain: the log domain of the message
- * @log_level: the log level of the message (including the fatal and recursion flags)
- * @message: the message to process
- * @user_data: user data, set in g_test_log_set_fatal_handler()
- *
- * Specifies the prototype of fatal log handler functions.
- *
- * Returns: %TRUE if the program should abort, %FALSE otherwise
- * Since: 2.22
- */
-
-
-/**
- * GThemedIcon:
- *
- * An implementation of #GIcon for themed icons.
- */
-
-
-/**
- * GThemedIcon:name:
- *
- * The icon name.
- */
-
-
-/**
- * GThemedIcon:names:
- *
- * A %NULL-terminated array of icon names.
- */
-
-
-/**
- * GThemedIcon:use-default-fallbacks:
- *
- * Whether to use the default fallbacks found by shortening the icon name
- * at '-' characters. If the "names" array has more than one element,
- * ignores any past the first.
- *
- * For example, if the icon name was "gnome-dev-cdrom-audio", the array
- * would become
- * |[
- * {
- *   "gnome-dev-cdrom-audio",
- *   "gnome-dev-cdrom",
- *   "gnome-dev",
- *   "gnome",
- *   NULL
- * };
- * ]|
- */
-
-
-/**
- * GThreadedSocketService:
- *
- * A helper class for handling accepting incoming connections in the
- * glib mainloop and handling them in a thread.
- *
- * Since: 2.22
- */
-
-
-/**
- * GThreadedSocketService::run:
- * @service: the #GThreadedSocketService.
- * @connection: a new #GSocketConnection object.
- * @source_object: the source_object passed to g_socket_listener_add_address().
- *
- * The ::run signal is emitted in a worker thread in response to an
- * incoming connection. This thread is dedicated to handling
- * @connection and may perform blocking IO. The signal handler need
- * not return until the connection is closed.
- *
- * Returns: %TRUE to stop further signal handlers from being called
- */
-
-
-/**
- * GTimeSpan:
- *
- * A value representing an interval of time, in microseconds.
- *
- * Since: 2.26
- */
-
-
-/**
- * GTimeType:
- * @G_TIME_TYPE_STANDARD: the time is in local standard time
- * @G_TIME_TYPE_DAYLIGHT: the time is in local daylight time
- * @G_TIME_TYPE_UNIVERSAL: the time is in UTC
- *
- * Disambiguates a given time in two ways.
- *
- * First, specifies if the given time is in universal or local time.
- *
- * Second, if the time is in local time, specifies if it is local
- * standard time or local daylight time.  This is important for the case
- * where the same local time occurs twice (during daylight savings time
- * transitions, for example).
- */
-
-
-/**
- * GTlsAuthenticationMode:
- * @G_TLS_AUTHENTICATION_NONE: client authentication not required
- * @G_TLS_AUTHENTICATION_REQUESTED: client authentication is requested
- * @G_TLS_AUTHENTICATION_REQUIRED: client authentication is required
- *
- * The client authentication mode for a #GTlsServerConnection.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsBackend:
- *
- * TLS (Transport Layer Security, aka SSL) backend. This is an
- * internal type used to coordinate the different classes implemented
- * by a TLS backend.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsBackendInterface:
- * @g_iface: The parent interface.
- * @supports_tls: returns whether the backend supports TLS.
- * @get_default_database: returns a default #GTlsDatabase instance.
- * @get_certificate_type: returns the #GTlsCertificate implementation type
- * @get_client_connection_type: returns the #GTlsClientConnection implementation type
- * @get_server_connection_type: returns the #GTlsServerConnection implementation type
- * @get_file_database_type: returns the #GTlsFileDatabase implementation type.
- *
- * Provides an interface for describing TLS-related types.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificate:
- *
- * Abstract base class for TLS certificate types.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificate:certificate:
- *
- * The DER (binary) encoded representation of the certificate's
- * public key. This property and the
- * #GTlsCertificate:certificate-pem property represent the same
- * data, just in different forms.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificate:certificate-pem:
- *
- * The PEM (ASCII) encoded representation of the certificate's
- * public key. This property and the #GTlsCertificate:certificate
- * property represent the same data, just in different forms.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificate:issuer:
- *
- * A #GTlsCertificate representing the entity that issued this
- * certificate. If %NULL, this means that the certificate is either
- * self-signed, or else the certificate of the issuer is not
- * available.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificate:private-key:
- *
- * The DER (binary) encoded representation of the certificate's
- * private key, in either PKCS#1 format or unencrypted PKCS#8
- * format. This property (or the #GTlsCertificate:private-key-pem
- * property) can be set when constructing a key (eg, from a file),
- * but cannot be read.
- *
- * PKCS#8 format is supported since 2.32; earlier releases only
- * support PKCS#1. You can use the <literal>openssl rsa</literal>
- * tool to convert PKCS#8 keys to PKCS#1.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificate:private-key-pem:
- *
- * The PEM (ASCII) encoded representation of the certificate's
- * private key in either PKCS#1 format ("<literal>BEGIN RSA PRIVATE
- * KEY</literal>") or unencrypted PKCS#8 format ("<literal>BEGIN
- * PRIVATE KEY</literal>"). This property (or the
- * #GTlsCertificate:private-key property) can be set when
- * constructing a key (eg, from a file), but cannot be read.
- *
- * PKCS#8 format is supported since 2.32; earlier releases only
- * support PKCS#1. You can use the <literal>openssl rsa</literal>
- * tool to convert PKCS#8 keys to PKCS#1.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsCertificateFlags:
- * @G_TLS_CERTIFICATE_UNKNOWN_CA: The signing certificate authority is not known.
- * @G_TLS_CERTIFICATE_BAD_IDENTITY: The certificate does not match the expected identity of the site that it was retrieved from.
- * @G_TLS_CERTIFICATE_NOT_ACTIVATED: The certificate's activation time is still in the future
- * @G_TLS_CERTIFICATE_EXPIRED: The certificate has expired
- * @G_TLS_CERTIFICATE_REVOKED: The certificate has been revoked according to the #GTlsConnection's certificate revocation list.
- * @G_TLS_CERTIFICATE_INSECURE: The certificate's algorithm is considered insecure.
- * @G_TLS_CERTIFICATE_GENERIC_ERROR: Some other error occurred validating the certificate
- * @G_TLS_CERTIFICATE_VALIDATE_ALL: the combination of all of the above flags
- *
- * A set of flags describing TLS certification validation. This can be
- * used to set which validation steps to perform (eg, with
- * g_tls_client_connection_set_validation_flags()), or to describe why
- * a particular certificate was rejected (eg, in
- * #GTlsConnection::accept-certificate).
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsClientConnection:
- *
- * Abstract base class for the backend-specific client connection
- * type.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsClientConnection:accepted-cas:
- *
- * A list of the distinguished names of the Certificate Authorities
- * that the server will accept client certificates signed by. If the
- * server requests a client certificate during the handshake, then
- * this property will be set after the handshake completes.
- *
- * Each item in the list is a #GByteArray which contains the complete
- * subject DN of the certificate authority.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsClientConnection:server-identity:
- *
- * A #GSocketConnectable describing the identity of the server that
- * is expected on the other end of the connection.
- *
- * If the %G_TLS_CERTIFICATE_BAD_IDENTITY flag is set in
- * #GTlsClientConnection:validation-flags, this object will be used
- * to determine the expected identify of the remote end of the
- * connection; if #GTlsClientConnection:server-identity is not set,
- * or does not match the identity presented by the server, then the
- * %G_TLS_CERTIFICATE_BAD_IDENTITY validation will fail.
- *
- * In addition to its use in verifying the server certificate,
- * this is also used to give a hint to the server about what
- * certificate we expect, which is useful for servers that serve
- * virtual hosts.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsClientConnection:use-ssl3:
- *
- * If %TRUE, tells the connection to use SSL 3.0 rather than trying
- * to negotiate the best version of TLS or SSL to use. This can be
- * used when talking to servers that don't implement version
- * negotiation correctly and therefore refuse to handshake at all with
- * a "modern" TLS handshake.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsClientConnection:validation-flags:
- *
- * What steps to perform when validating a certificate received from
- * a server. Server certificates that fail to validate in all of the
- * ways indicated here will be rejected unless the application
- * overrides the default via #GTlsConnection::accept-certificate.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:
- *
- * Abstract base class for the backend-specific #GTlsClientConnection
- * and #GTlsServerConnection types.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection::accept-certificate:
- * @conn: a #GTlsConnection
- * @peer_cert: the peer's #GTlsCertificate
- * @errors: the problems with @peer_cert.
- *
- * Emitted during the TLS handshake after the peer certificate has
- * been received. You can examine @peer_cert's certification path by
- * calling g_tls_certificate_get_issuer() on it.
- *
- * For a client-side connection, @peer_cert is the server's
- * certificate, and the signal will only be emitted if the
- * certificate was not acceptable according to @conn's
- * #GTlsClientConnection:validation_flags. If you would like the
- * certificate to be accepted despite @errors, return %TRUE from the
- * signal handler. Otherwise, if no handler accepts the certificate,
- * the handshake will fail with %G_TLS_ERROR_BAD_CERTIFICATE.
- *
- * For a server-side connection, @peer_cert is the certificate
- * presented by the client, if this was requested via the server's
- * #GTlsServerConnection:authentication_mode. On the server side,
- * the signal is always emitted when the client presents a
- * certificate, and the certificate will only be accepted if a
- * handler returns %TRUE.
- *
- * Note that if this signal is emitted as part of asynchronous I/O
- * in the main thread, then you should not attempt to interact with
- * the user before returning from the signal handler. If you want to
- * let the user decide whether or not to accept the certificate, you
- * would have to return %FALSE from the signal handler on the first
- * attempt, and then after the connection attempt returns a
- * %G_TLS_ERROR_HANDSHAKE, you can interact with the user, and if
- * the user decides to accept the certificate, remember that fact,
- * create a new connection, and return %TRUE from the signal handler
- * the next time.
- *
- * If you are doing I/O in another thread, you do not
- * need to worry about this, and can simply block in the signal
- * handler until the UI thread returns an answer.
- *
- * Returns: %TRUE to accept @peer_cert (which will also immediately end the signal emission). %FALSE to allow the signal emission to continue, which will cause the handshake to fail if no one else overrides it.
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:base-io-stream:
- *
- * The #GIOStream that the connection wraps
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:certificate:
- *
- * The connection's certificate; see
- * g_tls_connection_set_certificate().
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:database:
- *
- * The certificate database to use when verifying this TLS connection.
- * If no cerificate database is set, then the default database will be
- * used. See g_tls_backend_get_default_database().
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsConnection:interaction:
- *
- * A #GTlsInteraction object to be used when the connection or certificate
- * database need to interact with the user. This will be used to prompt the
- * user for passwords where necessary.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsConnection:peer-certificate:
- *
- * The connection's peer's certificate, after the TLS handshake has
- * completed and the certificate has been accepted. Note in
- * particular that this is not yet set during the emission of
- * #GTlsConnection::accept-certificate.
- *
- * (You can watch for a #GObject::notify signal on this property to
- * detect when a handshake has occurred.)
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:peer-certificate-errors:
- *
- * The errors noticed-and-ignored while verifying
- * #GTlsConnection:peer-certificate. Normally this should be 0, but
- * it may not be if #GTlsClientConnection:validation-flags is not
- * %G_TLS_CERTIFICATE_VALIDATE_ALL, or if
- * #GTlsConnection::accept-certificate overrode the default
- * behavior.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:rehandshake-mode:
- *
- * The rehandshaking mode. See
- * g_tls_connection_set_rehandshake_mode().
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:require-close-notify:
- *
- * Whether or not proper TLS close notification is required.
- * See g_tls_connection_set_require_close_notify().
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsConnection:use-system-certdb:
- *
- * Whether or not the system certificate database will be used to
- * verify peer certificates. See
- * g_tls_connection_set_use_system_certdb().
- *
- * Deprecated: 2.30: Use GTlsConnection:database instead
- */
-
-
-/**
- * GTlsDatabase:
- *
- * Abstract base class for the backend-specific database types.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsDatabaseLookupFlags:
- * @G_TLS_DATABASE_LOOKUP_NONE: No lookup flags
- * @G_TLS_DATABASE_LOOKUP_KEYPAIR: Restrict lookup to certificates that have a private key.
- *
- * Flags for g_tls_database_lookup_certificate_handle(),
- * g_tls_database_lookup_certificate_issuer(),
- * and g_tls_database_lookup_certificates_issued_by().
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsDatabaseVerifyFlags:
- * @G_TLS_DATABASE_VERIFY_NONE: No verification flags
- *
- * Flags for g_tls_database_verify_chain().
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsError:
- * @G_TLS_ERROR_UNAVAILABLE: No TLS provider is available
- * @G_TLS_ERROR_MISC: Miscellaneous TLS error
- * @G_TLS_ERROR_BAD_CERTIFICATE: A certificate could not be parsed
- * @G_TLS_ERROR_NOT_TLS: The TLS handshake failed because the peer does not seem to be a TLS server.
- * @G_TLS_ERROR_HANDSHAKE: The TLS handshake failed because the peer's certificate was not acceptable.
- * @G_TLS_ERROR_CERTIFICATE_REQUIRED: The TLS handshake failed because the server requested a client-side certificate, but none was provided. See g_tls_connection_set_certificate().
- * @G_TLS_ERROR_EOF: The TLS connection was closed without proper notice, which may indicate an attack. See g_tls_connection_set_require_close_notify().
- *
- * An error code used with %G_TLS_ERROR in a #GError returned from a
- * TLS-related routine.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsFileDatabase:
- *
- * Implemented by a #GTlsDatabase which allows you to load certificates
- * from a file.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsFileDatabase:anchors:
- *
- * The path to a file containing PEM encoded certificate authority
- * root anchors. The certificates in this file will be treated as
- * root authorities for the purpose of verifying other certificates
- * via the g_tls_database_verify_chain() operation.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsFileDatabaseInterface:
- * @g_iface: The parent interface.
- *
- * Provides an interface for #GTlsFileDatabase implementations.
- */
-
-
-/**
- * GTlsInteraction:
- *
- * An object representing interaction that the TLS connection and database
- * might have with the user.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsInteractionClass:
- * @ask_password: ask for a password synchronously. If the implementation returns %G_TLS_INTERACTION_HANDLED, then the password argument should have been filled in by using g_tls_password_set_value() or a similar function.
- * @ask_password_async: ask for a password asynchronously.
- * @ask_password_finish: complete operation to ask for a password asynchronously. If the implementation returns %G_TLS_INTERACTION_HANDLED, then the password argument of the async method should have been filled in by using g_tls_password_set_value() or a similar function.
- *
- * The class for #GTlsInteraction. Derived classes implement the various
- * virtual interaction methods to handle TLS interactions.
- *
- * Derived classes can choose to implement whichever interactions methods they'd
- * like to support by overriding those virtual methods in their class
- * initialization function. If a derived class implements an async method,
- * it must also implement the corresponding finish method.
- *
- * The synchronous interaction methods should implement to display modal dialogs,
- * and the asynchronous methods to display modeless dialogs.
- *
- * If the user cancels an interaction, then the result should be
- * %G_TLS_INTERACTION_FAILED and the error should be set with a domain of
- * %G_IO_ERROR and code of %G_IO_ERROR_CANCELLED.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsInteractionResult:
- * @G_TLS_INTERACTION_UNHANDLED: The interaction was unhandled (i.e. not implemented).
- * @G_TLS_INTERACTION_HANDLED: The interaction completed, and resulting data is available.
- * @G_TLS_INTERACTION_FAILED: The interaction has failed, or was cancelled. and the operation should be aborted.
- *
- * #GTlsInteractionResult is returned by various functions in #GTlsInteraction
- * when finishing an interaction request.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsPassword:
- *
- * An abstract interface representing a password used in TLS. Often used in
- * user interaction such as unlocking a key storage token.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsPasswordFlags:
- * @G_TLS_PASSWORD_NONE: No flags
- * @G_TLS_PASSWORD_RETRY: The password was wrong, and the user should retry.
- * @G_TLS_PASSWORD_MANY_TRIES: Hint to the user that the password has been wrong many times, and the user may not have many chances left.
- * @G_TLS_PASSWORD_FINAL_TRY: Hint to the user that this is the last try to get this password right.
- *
- * Various flags for the password.
- *
- * Since: 2.30
- */
-
-
-/**
- * GTlsRehandshakeMode:
- * @G_TLS_REHANDSHAKE_NEVER: Never allow rehandshaking
- * @G_TLS_REHANDSHAKE_SAFELY: Allow safe rehandshaking only
- * @G_TLS_REHANDSHAKE_UNSAFELY: Allow unsafe rehandshaking
- *
- * When to allow rehandshaking. See
- * g_tls_connection_set_rehandshake_mode().
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsServerConnection:
- *
- * TLS server-side connection. This is the server-side implementation
- * of a #GTlsConnection.
- *
- * Since: 2.28
- */
-
-
-/**
- * GTlsServerConnection:authentication-mode:
- *
- * The #GTlsAuthenticationMode for the server. This can be changed
- * before calling g_tls_connection_handshake() if you want to
- * rehandshake with a different mode from the initial handshake.
- *
- * Since: 2.28
- */
-
-
-/**
- * GToggleNotify:
- * @data: Callback data passed to g_object_add_toggle_ref()
- * @object: The object on which g_object_add_toggle_ref() was called.
- * @is_last_ref: %TRUE if the toggle reference is now the last reference to the object. %FALSE if the toggle reference was the last reference and there are now other references.
- *
- * A callback function used for notification when the state
- * of a toggle reference changes. See g_object_add_toggle_ref().
- */
-
-
-/**
- * GTranslateFunc:
- * @str: the untranslated string
- * @data: user data specified when installing the function, e.g. in g_option_group_set_translate_func()
- *
- * The type of functions which are used to translate user-visible
- * strings, for <option>--help</option> output.
- *
- * Returns: a translation of the string for the current locale. The returned string is owned by GLib and must not be freed.
- */
-
-
-/**
- * GType:
- *
- * A numerical value which represents the unique identifier of a registered
- * type.
- */
-
-
-/**
- * GTypeClass:
- *
- * An opaque structure used as the base of all classes.
- */
-
-
-/**
- * GTypeClassCacheFunc:
- * @cache_data: data that was given to the g_type_add_class_cache_func() call
- * @g_class: The #GTypeClass structure which is unreferenced
- *
- * A callback function which is called when the reference count of a class
- * drops to zero. It may use g_type_class_ref() to prevent the class from
- * being freed. You should not call g_type_class_unref() from a
- * #GTypeClassCacheFunc function to prevent infinite recursion, use
- * g_type_class_unref_uncached() instead.
- *
- * 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.
- *
- * Returns: %TRUE to stop further #GTypeClassCacheFunc<!-- -->s from being called, %FALSE to continue.
- */
-
-
-/**
- * GTypeDebugFlags:
- * @G_TYPE_DEBUG_NONE: Print no messages.
- * @G_TYPE_DEBUG_OBJECTS: Print messages about object bookkeeping.
- * @G_TYPE_DEBUG_SIGNALS: Print messages about signal emissions.
- * @G_TYPE_DEBUG_MASK: Mask covering all debug flags.
- *
- * The <type>GTypeDebugFlags</type> enumeration values can be passed to
- * g_type_init_with_debug_flags() to trigger debugging messages during runtime.
- * Note that the messages can also be triggered by setting the
- * <envar>GOBJECT_DEBUG</envar> environment variable to a ':'-separated list of
- * "objects" and "signals".
- */
-
-
-/**
- * GTypeFlags:
- * @G_TYPE_FLAG_ABSTRACT: Indicates an abstract type. No instances can be created for an abstract type.
- * @G_TYPE_FLAG_VALUE_ABSTRACT: Indicates an abstract value type, i.e. a type that introduces a value table, but can't be used for g_value_init().
- *
- * Bit masks used to check or determine characteristics of a type.
- */
-
-
-/**
- * GTypeFundamentalFlags:
- * @G_TYPE_FLAG_CLASSED: Indicates a classed type.
- * @G_TYPE_FLAG_INSTANTIATABLE: Indicates an instantiable type (implies classed).
- * @G_TYPE_FLAG_DERIVABLE: Indicates a flat derivable type.
- * @G_TYPE_FLAG_DEEP_DERIVABLE: Indicates a deep derivable type (implies derivable).
- *
- * Bit masks used to check or determine specific characteristics of a
- * fundamental type.
- */
-
-
-/**
- * GTypeFundamentalInfo:
- * @type_flags: #GTypeFundamentalFlags describing the characteristics of the fundamental type
- *
- * A structure that provides information to the type system which is
- * used specifically for managing fundamental types.
- */
-
-
-/**
- * GTypeInfo:
- * @class_size: Size of the class structure (required for interface, classed and instantiatable types).
- * @base_init: Location of the base initialization function (optional).
- * @base_finalize: Location of the base finalization function (optional).
- * @class_init: Location of the class initialization function for classed and instantiatable types. Location of the default vtable inititalization function for interface types. (optional) This function is used both to fill in virtual functions in the class or default vtable, and to do type-specific setup such as registering signals and object properties.
- * @class_finalize: Location of the class finalization function for classed and instantiatable types. Location fo the default vtable finalization function for interface types. (optional)
- * @class_data: User-supplied data passed to the class init/finalize functions.
- * @instance_size: Size of the instance (object) structure (required for instantiatable types only).
- * @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
- * @instance_init: Location of the instance initialization function (optional, for instantiatable types only).
- * @value_table: A #GTypeValueTable function table for generic handling of GValues of this type (usually only useful for fundamental types).
- *
- * This structure is used to provide the type system with the information
- * required to initialize and destruct (finalize) a type's class and
- * its instances.
- * The initialized structure is passed to the g_type_register_static() function
- * (or is copied into the provided #GTypeInfo structure in the
- * g_type_plugin_complete_type_info()). The type system will perform a deep
- * copy of this structure, so its memory does not need to be persistent
- * across invocation of g_type_register_static().
- */
-
-
-/**
- * GTypeInstance:
- *
- * An opaque structure used as the base of all type instances.
- */
-
-
-/**
- * GTypeInterface:
- *
- * An opaque structure used as the base of all interface types.
- */
-
-
-/**
- * GTypeInterfaceCheckFunc:
- * @check_data: data passed to g_type_add_interface_check().
- * @g_iface: the interface that has been initialized
- *
- * A callback called after an interface vtable is initialized.
- * See g_type_add_interface_check().
- *
- * Since: 2.4
- */
-
-
-/**
- * GTypeModule:
- * @name: the name of the module
- *
- * The members of the <structname>GTypeModule</structname> structure should not
- * be accessed directly, except for the @name field.
- */
-
-
-/**
- * GTypeModuleClass:
- * @parent_class: the parent class
- * @load: loads the module and registers one or more types using g_type_module_register_type().
- * @unload: unloads the module
- *
- * In order to implement dynamic loading of types based on #GTypeModule,
- * the @load and @unload functions in #GTypeModuleClass must be implemented.
- */
-
-
-/**
- * GTypePlugin:
- *
- * The <structname>GTypePlugin</structname> typedef is used as a placeholder
- * for objects that implement the <structname>GTypePlugin</structname>
- * interface.
- */
-
-
-/**
- * GTypePluginClass:
- * @use_plugin: Increases the use count of the plugin.
- * @unuse_plugin: Decreases the use count of the plugin.
- * @complete_type_info: Fills in the #GTypeInfo and #GTypeValueTable structs for the type. The structs are initialized with <literal>memset(s, 0, sizeof (s))</literal> before calling this function.
- * @complete_interface_info: Fills in missing parts of the #GInterfaceInfo for the interface. The structs is initialized with <literal>memset(s, 0, sizeof (s))</literal> before calling this function.
- *
- * The #GTypePlugin interface is used by the type system in order to handle
- * the lifecycle of dynamically loaded types.
- */
-
-
-/**
- * GTypePluginCompleteInterfaceInfo:
- * @plugin: the #GTypePlugin
- * @instance_type: the #GType of an instantiable type to which the interface is added
- * @interface_type: the #GType of the interface whose info is completed
- * @info: the #GInterfaceInfo to fill in
- *
- * The type of the @complete_interface_info function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginCompleteTypeInfo:
- * @plugin: the #GTypePlugin
- * @g_type: the #GType whose info is completed
- * @info: the #GTypeInfo struct to fill in
- * @value_table: the #GTypeValueTable to fill in
- *
- * The type of the @complete_type_info function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginUnuse:
- * @plugin: the #GTypePlugin whose use count should be decreased
- *
- * The type of the @unuse_plugin function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginUse:
- * @plugin: the #GTypePlugin whose use count should be increased
- *
- * The type of the @use_plugin function of #GTypePluginClass, which gets called
- * to increase the use count of @plugin.
- */
-
-
-/**
- * GTypeQuery:
- * @type: the #GType value of the type.
- * @type_name: the name of the type.
- * @class_size: the size of the class structure.
- * @instance_size: the size of the instance structure.
- *
- * A structure holding information for a specific type. It is
- * filled in by the g_type_query() function.
- */
-
-
-/**
- * GTypeValueTable:
- * @value_init: Default initialize @values contents by poking values directly into the value->data array. The data array of the #GValue passed into this function was zero-filled with <function>memset()</function>, so no care has to be taken to free any old contents. E.g. for the implementation of a string value that may never be %NULL, the implementation might look like: |[ value->data[0].v_pointer = g_strdup (""); ]|
- * @value_free: Free any old contents that might be left in the data array of the passed in @value. No resources may remain allocated through the #GValue contents after this function returns. E.g. for our above string type: |[ // only free strings without a specific flag for static storage if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS)) g_free (value->data[0].v_pointer); ]|
- * @value_copy: @dest_value is a #GValue with zero-filled data section and @src_value is a properly setup #GValue of same or derived type. The purpose of this function is to copy the contents of @src_value into @dest_value in a way, that even after @src_value has been freed, the contents of @dest_value remain valid. String type example: |[ dest_value->data[0].v_pointer = g_strdup (src_value->data[0].v_pointer); ]|
- * @value_peek_pointer: If the value contents fit into a pointer, such as objects or strings, return this pointer, so the caller can peek at the current contents. To extend on our above string example: |[ return value->data[0].v_pointer; ]|
- * @collect_format: A string format describing how to collect the contents of this value bit-by-bit. Each character in the format represents an argument to be collected, and the characters themselves indicate the type of the argument. Currently supported arguments are: <variablelist> <varlistentry><term /><listitem><para> 'i' - Integers. passed as collect_values[].v_int. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'l' - Longs. passed as collect_values[].v_long. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'd' - Doubles. passed as collect_values[].v_double. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'p' - Pointers. passed as collect_values[].v_pointer. </para></listitem></varlistentry> </variablelist> It should be noted that for variable argument list construction, ANSI C promotes every type smaller than an integer to an int, and floats to doubles. So for collection of short int or char, 'i
 ' needs to be used, and for collection of floats 'd'.
- * @collect_value: The collect_value() function is responsible for converting the values collected from a variable argument list into contents suitable for storage in a GValue. This function should setup @value similar to value_init(); e.g. for a string value that does not allow %NULL pointers, it needs to either spew an error, or do an implicit conversion by storing an empty string. The @value passed in to this function has a zero-filled data array, so just like for value_init() it is guaranteed to not contain any old contents that might need freeing. @n_collect_values is exactly the string length of @collect_format, and @collect_values is an array of unions #GTypeCValue with length @n_collect_values, containing the collected values according to @collect_format. @collect_flags is an argument provided as a hint by the caller. It may contain the flag %G_VALUE_NOCOPY_CONTENTS indicating, that the collected value contents may be considered "static" for the duration of the @valu
 e lifetime. Thus an extra copy of the contents stored in @collect_values is not required for assignment to @value. For our above string example, we continue with: |[ if (!collect_values[0].v_pointer) value->data[0].v_pointer = g_strdup (""); else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { value->data[0].v_pointer = collect_values[0].v_pointer; // keep a flag for the value_free() implementation to not free this string value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; } else value->data[0].v_pointer = g_strdup (collect_values[0].v_pointer); return NULL; ]| It should be noted, that it is generally a bad idea to follow the #G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to reentrancy requirements and reference count assertions performed by the signal emission code, reference counts should always be incremented for reference counted contents stored in the value->data array.  To deviate from our string example for a moment, and taking a look at an exemplary imple
 mentation for collect_value() of #GObject: |[ if (collect_values[0].v_pointer) { GObject *object = G_OBJECT (collect_values[0].v_pointer); // never honour G_VALUE_NOCOPY_CONTENTS for ref-counted types value->data[0].v_pointer = g_object_ref (object); return NULL; } else return g_strdup_printf ("Object passed as invalid NULL pointer"); } ]| The reference count for valid objects is always incremented, regardless of @collect_flags. For invalid objects, the example returns a newly allocated string without altering @value. Upon success, collect_value() needs to return %NULL. If, however, an error condition occurred, collect_value() may spew an error by returning a newly allocated non-%NULL string, giving a suitable description of the error condition. The calling code makes no assumptions about the @value contents being valid upon error returns, @value is simply thrown away without further freeing. As such, it is a good idea to not allocate #GValue contents, prior to returning an 
 error, however, collect_values() is not obliged to return a correctly setup @value for error returns, simply because any non-%NULL return is considered a fatal condition so further program behaviour is undefined.
- * @lcopy_format: Format description of the arguments to collect for @lcopy_value, analogous to @collect_format. Usually, @lcopy_format string consists only of 'p's to provide lcopy_value() with pointers to storage locations.
- * @lcopy_value: This function is responsible for storing the @value contents into arguments passed through a variable argument list which got collected into @collect_values according to @lcopy_format. @n_collect_values equals the string length of @lcopy_format, and @collect_flags may contain %G_VALUE_NOCOPY_CONTENTS. In contrast to collect_value(), lcopy_value() is obliged to always properly support %G_VALUE_NOCOPY_CONTENTS. Similar to collect_value() the function may prematurely abort by returning a newly allocated string describing an error condition. To complete the string example: |[ gchar **string_p = collect_values[0].v_pointer; if (!string_p) return g_strdup_printf ("string location passed as NULL"); if (collect_flags & G_VALUE_NOCOPY_CONTENTS) *string_p = value->data[0].v_pointer; else *string_p = g_strdup (value->data[0].v_pointer); ]| And an illustrative version of lcopy_value() for reference-counted types: |[ GObject **object_p = collect_values[0].v_pointer; if (
 !object_p) return g_strdup_printf ("object location passed as NULL"); if (!value->data[0].v_pointer) *object_p = NULL; else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) /&ast; always honour &ast;/ *object_p = value->data[0].v_pointer; else *object_p = g_object_ref (value->data[0].v_pointer); return NULL; ]|
- *
- * The #GTypeValueTable provides the functions required by the #GValue implementation,
- * to serve as a container for values of a type.
- */
-
-
-/**
- * GUnicodeBreakType:
- * @G_UNICODE_BREAK_MANDATORY: Mandatory Break (BK)
- * @G_UNICODE_BREAK_CARRIAGE_RETURN: Carriage Return (CR)
- * @G_UNICODE_BREAK_LINE_FEED: Line Feed (LF)
- * @G_UNICODE_BREAK_COMBINING_MARK: Attached Characters and Combining Marks (CM)
- * @G_UNICODE_BREAK_SURROGATE: Surrogates (SG)
- * @G_UNICODE_BREAK_ZERO_WIDTH_SPACE: Zero Width Space (ZW)
- * @G_UNICODE_BREAK_INSEPARABLE: Inseparable (IN)
- * @G_UNICODE_BREAK_NON_BREAKING_GLUE: Non-breaking ("Glue") (GL)
- * @G_UNICODE_BREAK_CONTINGENT: Contingent Break Opportunity (CB)
- * @G_UNICODE_BREAK_SPACE: Space (SP)
- * @G_UNICODE_BREAK_AFTER: Break Opportunity After (BA)
- * @G_UNICODE_BREAK_BEFORE: Break Opportunity Before (BB)
- * @G_UNICODE_BREAK_BEFORE_AND_AFTER: Break Opportunity Before and After (B2)
- * @G_UNICODE_BREAK_HYPHEN: Hyphen (HY)
- * @G_UNICODE_BREAK_NON_STARTER: Nonstarter (NS)
- * @G_UNICODE_BREAK_OPEN_PUNCTUATION: Opening Punctuation (OP)
- * @G_UNICODE_BREAK_CLOSE_PUNCTUATION: Closing Punctuation (CL)
- * @G_UNICODE_BREAK_QUOTATION: Ambiguous Quotation (QU)
- * @G_UNICODE_BREAK_EXCLAMATION: Exclamation/Interrogation (EX)
- * @G_UNICODE_BREAK_IDEOGRAPHIC: Ideographic (ID)
- * @G_UNICODE_BREAK_NUMERIC: Numeric (NU)
- * @G_UNICODE_BREAK_INFIX_SEPARATOR: Infix Separator (Numeric) (IS)
- * @G_UNICODE_BREAK_SYMBOL: Symbols Allowing Break After (SY)
- * @G_UNICODE_BREAK_ALPHABETIC: Ordinary Alphabetic and Symbol Characters (AL)
- * @G_UNICODE_BREAK_PREFIX: Prefix (Numeric) (PR)
- * @G_UNICODE_BREAK_POSTFIX: Postfix (Numeric) (PO)
- * @G_UNICODE_BREAK_COMPLEX_CONTEXT: Complex Content Dependent (South East Asian) (SA)
- * @G_UNICODE_BREAK_AMBIGUOUS: Ambiguous (Alphabetic or Ideographic) (AI)
- * @G_UNICODE_BREAK_UNKNOWN: Unknown (XX)
- * @G_UNICODE_BREAK_NEXT_LINE: Next Line (NL)
- * @G_UNICODE_BREAK_WORD_JOINER: Word Joiner (WJ)
- * @G_UNICODE_BREAK_HANGUL_L_JAMO: Hangul L Jamo (JL)
- * @G_UNICODE_BREAK_HANGUL_V_JAMO: Hangul V Jamo (JV)
- * @G_UNICODE_BREAK_HANGUL_T_JAMO: Hangul T Jamo (JT)
- * @G_UNICODE_BREAK_HANGUL_LV_SYLLABLE: Hangul LV Syllable (H2)
- * @G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE: Hangul LVT Syllable (H3)
- * @G_UNICODE_BREAK_CLOSE_PARANTHESIS: Closing Parenthesis (CP). Since 2.28
- * @G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER: Conditional Japanese Starter (CJ). Since: 2.32
- * @G_UNICODE_BREAK_HEBREW_LETTER: Hebrew Letter (HL). Since: 2.32
- *
- * These are the possible line break classifications.
- *
- * The five Hangul types were added in Unicode 4.1, so, has been
- * introduced in GLib 2.10. Note that new types may be added in the future.
- * Applications should be ready to handle unknown values.
- * They may be regarded as %G_UNICODE_BREAK_UNKNOWN.
- *
- * See <ulink url="http://www.unicode.org/unicode/reports/tr14/";>http://www.unicode.org/unicode/reports/tr14/</ulink>.
- */
-
-
-/**
- * GUnicodeScript:
- * @G_UNICODE_SCRIPT_INVALID_CODE: a value never returned from g_unichar_get_script()
- * @G_UNICODE_SCRIPT_COMMON: a character used by multiple different scripts
- * @G_UNICODE_SCRIPT_INHERITED: a mark glyph that takes its script from the i                             base glyph to which it is attached
- * @G_UNICODE_SCRIPT_ARABIC: Arabic
- * @G_UNICODE_SCRIPT_ARMENIAN: Armenian
- * @G_UNICODE_SCRIPT_BENGALI: Bengali
- * @G_UNICODE_SCRIPT_BOPOMOFO: Bopomofo
- * @G_UNICODE_SCRIPT_CHEROKEE: Cherokee
- * @G_UNICODE_SCRIPT_COPTIC: Coptic
- * @G_UNICODE_SCRIPT_CYRILLIC: Cyrillic
- * @G_UNICODE_SCRIPT_DESERET: Deseret
- * @G_UNICODE_SCRIPT_DEVANAGARI: Devanagari
- * @G_UNICODE_SCRIPT_ETHIOPIC: Ethiopic
- * @G_UNICODE_SCRIPT_GEORGIAN: Georgian
- * @G_UNICODE_SCRIPT_GOTHIC: Gothic
- * @G_UNICODE_SCRIPT_GREEK: Greek
- * @G_UNICODE_SCRIPT_GUJARATI: Gujarati
- * @G_UNICODE_SCRIPT_GURMUKHI: Gurmukhi
- * @G_UNICODE_SCRIPT_HAN: Han
- * @G_UNICODE_SCRIPT_HANGUL: Hangul
- * @G_UNICODE_SCRIPT_HEBREW: Hebrew
- * @G_UNICODE_SCRIPT_HIRAGANA: Hiragana
- * @G_UNICODE_SCRIPT_KANNADA: Kannada
- * @G_UNICODE_SCRIPT_KATAKANA: Katakana
- * @G_UNICODE_SCRIPT_KHMER: Khmer
- * @G_UNICODE_SCRIPT_LAO: Lao
- * @G_UNICODE_SCRIPT_LATIN: Latin
- * @G_UNICODE_SCRIPT_MALAYALAM: Malayalam
- * @G_UNICODE_SCRIPT_MONGOLIAN: Mongolian
- * @G_UNICODE_SCRIPT_MYANMAR: Myanmar
- * @G_UNICODE_SCRIPT_OGHAM: Ogham
- * @G_UNICODE_SCRIPT_OLD_ITALIC: Old Italic
- * @G_UNICODE_SCRIPT_ORIYA: Oriya
- * @G_UNICODE_SCRIPT_RUNIC: Runic
- * @G_UNICODE_SCRIPT_SINHALA: Sinhala
- * @G_UNICODE_SCRIPT_SYRIAC: Syriac
- * @G_UNICODE_SCRIPT_TAMIL: Tamil
- * @G_UNICODE_SCRIPT_TELUGU: Telugu
- * @G_UNICODE_SCRIPT_THAANA: Thaana
- * @G_UNICODE_SCRIPT_THAI: Thai
- * @G_UNICODE_SCRIPT_TIBETAN: Tibetan
- * @G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL: Canadian Aboriginal
- * @G_UNICODE_SCRIPT_YI: Yi
- * @G_UNICODE_SCRIPT_TAGALOG: Tagalog
- * @G_UNICODE_SCRIPT_HANUNOO: Hanunoo
- * @G_UNICODE_SCRIPT_BUHID: Buhid
- * @G_UNICODE_SCRIPT_TAGBANWA: Tagbanwa
- * @G_UNICODE_SCRIPT_BRAILLE: Braille
- * @G_UNICODE_SCRIPT_CYPRIOT: Cypriot
- * @G_UNICODE_SCRIPT_LIMBU: Limbu
- * @G_UNICODE_SCRIPT_OSMANYA: Osmanya
- * @G_UNICODE_SCRIPT_SHAVIAN: Shavian
- * @G_UNICODE_SCRIPT_LINEAR_B: Linear B
- * @G_UNICODE_SCRIPT_TAI_LE: Tai Le
- * @G_UNICODE_SCRIPT_UGARITIC: Ugaritic
- * @G_UNICODE_SCRIPT_NEW_TAI_LUE: New Tai Lue
- * @G_UNICODE_SCRIPT_BUGINESE: Buginese
- * @G_UNICODE_SCRIPT_GLAGOLITIC: Glagolitic
- * @G_UNICODE_SCRIPT_TIFINAGH: Tifinagh
- * @G_UNICODE_SCRIPT_SYLOTI_NAGRI: Syloti Nagri
- * @G_UNICODE_SCRIPT_OLD_PERSIAN: Old Persian
- * @G_UNICODE_SCRIPT_KHAROSHTHI: Kharoshthi
- * @G_UNICODE_SCRIPT_UNKNOWN: an unassigned code point
- * @G_UNICODE_SCRIPT_BALINESE: Balinese
- * @G_UNICODE_SCRIPT_CUNEIFORM: Cuneiform
- * @G_UNICODE_SCRIPT_PHOENICIAN: Phoenician
- * @G_UNICODE_SCRIPT_PHAGS_PA: Phags-pa
- * @G_UNICODE_SCRIPT_NKO: N'Ko
- * @G_UNICODE_SCRIPT_KAYAH_LI: Kayah Li. Since 2.16.3
- * @G_UNICODE_SCRIPT_LEPCHA: Lepcha. Since 2.16.3
- * @G_UNICODE_SCRIPT_REJANG: Rejang. Since 2.16.3
- * @G_UNICODE_SCRIPT_SUNDANESE: Sundanese. Since 2.16.3
- * @G_UNICODE_SCRIPT_SAURASHTRA: Saurashtra. Since 2.16.3
- * @G_UNICODE_SCRIPT_CHAM: Cham. Since 2.16.3
- * @G_UNICODE_SCRIPT_OL_CHIKI: Ol Chiki. Since 2.16.3
- * @G_UNICODE_SCRIPT_VAI: Vai. Since 2.16.3
- * @G_UNICODE_SCRIPT_CARIAN: Carian. Since 2.16.3
- * @G_UNICODE_SCRIPT_LYCIAN: Lycian. Since 2.16.3
- * @G_UNICODE_SCRIPT_LYDIAN: Lydian. Since 2.16.3
- * @G_UNICODE_SCRIPT_AVESTAN: Avestan. Since 2.26
- * @G_UNICODE_SCRIPT_BAMUM: Bamum. Since 2.26
- * @G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS: Egyptian Hieroglpyhs. Since 2.26
- * @G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC: Imperial Aramaic. Since 2.26
- * @G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI: Inscriptional Pahlavi. Since 2.26
- * @G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN: Inscriptional Parthian. Since 2.26
- * @G_UNICODE_SCRIPT_JAVANESE: Javanese. Since 2.26
- * @G_UNICODE_SCRIPT_KAITHI: Kaithi. Since 2.26
- * @G_UNICODE_SCRIPT_LISU: Lisu. Since 2.26
- * @G_UNICODE_SCRIPT_MEETEI_MAYEK: Meetei Mayek. Since 2.26
- * @G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN: Old South Arabian. Since 2.26
- * @G_UNICODE_SCRIPT_OLD_TURKIC: Old Turkic. Since 2.28
- * @G_UNICODE_SCRIPT_SAMARITAN: Samaritan. Since 2.26
- * @G_UNICODE_SCRIPT_TAI_THAM: Tai Tham. Since 2.26
- * @G_UNICODE_SCRIPT_TAI_VIET: Tai Viet. Since 2.26
- * @G_UNICODE_SCRIPT_BATAK: Batak. Since 2.28
- * @G_UNICODE_SCRIPT_BRAHMI: Brahmi. Since 2.28
- * @G_UNICODE_SCRIPT_MANDAIC: Mandaic. Since 2.28
- * @G_UNICODE_SCRIPT_CHAKMA: Chakma. Since: 2.32
- * @G_UNICODE_SCRIPT_MEROITIC_CURSIVE: Meroitic Cursive. Since: 2.32 @G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS, Meroitic Hieroglyphs. Since: 2.32
- * @G_UNICODE_SCRIPT_MIAO: Miao. Since: 2.32
- * @G_UNICODE_SCRIPT_SHARADA: Sharada. Since: 2.32
- * @G_UNICODE_SCRIPT_SORA_SOMPENG: Sora Sompeng. Since: 2.32
- * @G_UNICODE_SCRIPT_TAKRI: Takri. Since: 2.32
- *
- * The #GUnicodeScript enumeration identifies different writing
- * systems. The values correspond to the names as defined in the
- * Unicode standard. The enumeration has been added in GLib 2.14,
- * and is interchangeable with #PangoScript.
- *
- * Note that new types may be added in the future. Applications
- * should be ready to handle unknown values.
- * See <ulink
- * url="http://www.unicode.org/reports/tr24/";>Unicode Standard Annex
- * #24: Script names</ulink>.
- */
-
-
-/**
- * GUnicodeType:
- * @G_UNICODE_CONTROL: General category "Other, Control" (Cc)
- * @G_UNICODE_FORMAT: General category "Other, Format" (Cf)
- * @G_UNICODE_UNASSIGNED: General category "Other, Not Assigned" (Cn)
- * @G_UNICODE_PRIVATE_USE: General category "Other, Private Use" (Co)
- * @G_UNICODE_SURROGATE: General category "Other, Surrogate" (Cs)
- * @G_UNICODE_LOWERCASE_LETTER: General category "Letter, Lowercase" (Ll)
- * @G_UNICODE_MODIFIER_LETTER: General category "Letter, Modifier" (Lm)
- * @G_UNICODE_OTHER_LETTER: General category "Letter, Other" (Lo)
- * @G_UNICODE_TITLECASE_LETTER: General category "Letter, Titlecase" (Lt)
- * @G_UNICODE_UPPERCASE_LETTER: General category "Letter, Uppercase" (Lu)
- * @G_UNICODE_SPACING_MARK: General category "Mark, Spacing" (Mc)
- * @G_UNICODE_ENCLOSING_MARK: General category "Mark, Enclosing" (Me)
- * @G_UNICODE_NON_SPACING_MARK: General category "Mark, Nonspacing" (Mn)
- * @G_UNICODE_DECIMAL_NUMBER: General category "Number, Decimal Digit" (Nd)
- * @G_UNICODE_LETTER_NUMBER: General category "Number, Letter" (Nl)
- * @G_UNICODE_OTHER_NUMBER: General category "Number, Other" (No)
- * @G_UNICODE_CONNECT_PUNCTUATION: General category "Punctuation, Connector" (Pc)
- * @G_UNICODE_DASH_PUNCTUATION: General category "Punctuation, Dash" (Pd)
- * @G_UNICODE_CLOSE_PUNCTUATION: General category "Punctuation, Close" (Pe)
- * @G_UNICODE_FINAL_PUNCTUATION: General category "Punctuation, Final quote" (Pf)
- * @G_UNICODE_INITIAL_PUNCTUATION: General category "Punctuation, Initial quote" (Pi)
- * @G_UNICODE_OTHER_PUNCTUATION: General category "Punctuation, Other" (Po)
- * @G_UNICODE_OPEN_PUNCTUATION: General category "Punctuation, Open" (Ps)
- * @G_UNICODE_CURRENCY_SYMBOL: General category "Symbol, Currency" (Sc)
- * @G_UNICODE_MODIFIER_SYMBOL: General category "Symbol, Modifier" (Sk)
- * @G_UNICODE_MATH_SYMBOL: General category "Symbol, Math" (Sm)
- * @G_UNICODE_OTHER_SYMBOL: General category "Symbol, Other" (So)
- * @G_UNICODE_LINE_SEPARATOR: General category "Separator, Line" (Zl)
- * @G_UNICODE_PARAGRAPH_SEPARATOR: General category "Separator, Paragraph" (Zp)
- * @G_UNICODE_SPACE_SEPARATOR: General category "Separator, Space" (Zs)
- *
- * These are the possible character classifications from the
- * Unicode specification.
- * See <ulink url="http://www.unicode.org/Public/UNIDATA/UnicodeData.html";>http://www.unicode.org/Public/UNIDATA/UnicodeData.html</ulink>.
- */
-
-
-/**
- * GUnixCredentialsMessage:
- *
- * The #GUnixCredentialsMessage structure contains only private data
- * and should only be accessed using the provided API.
- *
- * Since: 2.26
- */
-
-
-/**
- * GUnixCredentialsMessage:credentials:
- *
- * The credentials stored in the message.
- *
- * Since: 2.26
- */
-
-
-/**
- * GUnixCredentialsMessageClass:
- *
- * Class structure for #GUnixCredentialsMessage.
- *
- * Since: 2.26
- */
-
-
-/**
- * GUnixInputStream:
- *
- * Implements #GInputStream for reading from selectable unix file descriptors
- */
-
-
-/**
- * GUnixInputStream:close-fd:
- *
- * Whether to close the file descriptor when the stream is closed.
- *
- * Since: 2.20
- */
-
-
-/**
- * GUnixInputStream:fd:
- *
- * The file descriptor that the stream reads from.
- *
- * Since: 2.20
- */
-
-
-/**
- * GUnixMountEntry:
- *
- * Defines a Unix mount entry (e.g. <filename>/media/cdrom</filename>).
- * This corresponds roughly to a mtab entry.
- */
-
-
-/**
- * GUnixMountMonitor:
- *
- * Watches #GUnixMount<!-- -->s for changes.
- */
-
-
-/**
- * GUnixMountMonitor::mountpoints-changed:
- * @monitor: the object on which the signal is emitted
- *
- * Emitted when the unix mount points have changed.
- */
-
-
-/**
- * GUnixMountMonitor::mounts-changed:
- * @monitor: the object on which the signal is emitted
- *
- * Emitted when the unix mounts have changed.
- */
-
-
-/**
- * GUnixMountPoint:
- *
- * Defines a Unix mount point (e.g. <filename>/dev</filename>).
- * This corresponds roughly to a fstab entry.
- */
-
-
-/**
- * GUnixOutputStream:
- *
- * Implements #GOutputStream for outputting to selectable unix file descriptors
- */
-
-
-/**
- * GUnixOutputStream:close-fd:
- *
- * Whether to close the file descriptor when the stream is closed.
- *
- * Since: 2.20
- */
-
-
-/**
- * GUnixOutputStream:fd:
- *
- * The file descriptor that the stream writes to.
- *
- * Since: 2.20
- */
-
-
-/**
- * GUnixSocketAddress:
- *
- * A UNIX-domain (local) socket address, corresponding to a
- * <type>struct sockaddr_un</type>.
- */
-
-
-/**
- * GUnixSocketAddress:abstract:
- *
- * Whether or not this is an abstract address
- *
- * Deprecated: Use #GUnixSocketAddress:address-type, which distinguishes between zero-padded and non-zero-padded abstract addresses.
- */
-
-
-/**
- * GUnixSocketAddressType:
- * @G_UNIX_SOCKET_ADDRESS_INVALID: invalid
- * @G_UNIX_SOCKET_ADDRESS_ANONYMOUS: anonymous
- * @G_UNIX_SOCKET_ADDRESS_PATH: a filesystem path
- * @G_UNIX_SOCKET_ADDRESS_ABSTRACT: an abstract name
- * @G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED: an abstract name, 0-padded to the full length of a unix socket name
- *
- * The type of name used by a #GUnixSocketAddress.
- * %G_UNIX_SOCKET_ADDRESS_PATH indicates a traditional unix domain
- * socket bound to a filesystem path. %G_UNIX_SOCKET_ADDRESS_ANONYMOUS
- * indicates a socket not bound to any name (eg, a client-side socket,
- * or a socket created with socketpair()).
- *
- * For abstract sockets, there are two incompatible ways of naming
- * them; the man pages suggest using the entire <literal>struct
- * sockaddr_un</literal> as the name, padding the unused parts of the
- * %sun_path field with zeroes; this corresponds to
- * %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED. However, many programs
- * instead just use a portion of %sun_path, and pass an appropriate
- * smaller length to bind() or connect(). This is
- * %G_UNIX_SOCKET_ADDRESS_ABSTRACT.
- *
- * Since: 2.26
- */
-
-
-/**
- * GUserDirectory:
- * @G_USER_DIRECTORY_DESKTOP: the user's Desktop directory
- * @G_USER_DIRECTORY_DOCUMENTS: the user's Documents directory
- * @G_USER_DIRECTORY_DOWNLOAD: the user's Downloads directory
- * @G_USER_DIRECTORY_MUSIC: the user's Music directory
- * @G_USER_DIRECTORY_PICTURES: the user's Pictures directory
- * @G_USER_DIRECTORY_PUBLIC_SHARE: the user's shared directory
- * @G_USER_DIRECTORY_TEMPLATES: the user's Templates directory
- * @G_USER_DIRECTORY_VIDEOS: the user's Movies directory
- * @G_USER_N_DIRECTORIES: the number of enum values
- *
- * These are logical ids for special directories which are defined
- * depending on the platform used. You should use g_get_user_special_dir()
- * to retrieve the full path associated to the logical id.
- *
- * The #GUserDirectory enumeration can be extended at later date. Not
- * every platform has a directory for every logical id in this
- * enumeration.
- *
- * Since: 2.14
- */
-
-
-/**
- * GValue:
- *
- * An opaque structure used to hold different types of values.
- * The data within the structure has protected scope: it is accessible only
- * to functions within a #GTypeValueTable structure, or implementations of
- * the g_value_*() API. That is, code portions which implement new fundamental
- * types.
- * #GValue users cannot make any assumptions about how data is stored
- * within the 2 element @data union, and the @g_type member should
- * only be accessed through the G_VALUE_TYPE() macro.
- */
-
-
-/**
- * GValueArray:
- * @n_values: number of values contained in the array
- * @values: array of values
- *
- * A #GValueArray contains an array of #GValue elements.
- */
-
-
-/**
- * GValueTransform:
- * @src_value: Source value.
- * @dest_value: Target value.
- *
- * The type of value transformation functions which can be registered with
- * g_value_register_transform_func().
- */
-
-
-/**
- * GVariantType:
- *
- * A type in the GVariant type system.
- *
- * Two types may not be compared by value; use g_variant_type_equal() or
- * g_variant_type_is_subtype_of().  May be copied using
- * g_variant_type_copy() and freed using g_variant_type_free().
- */
-
-
-/**
- * GVfs:
- *
- * Virtual File System object.
- */
-
-
-/**
- * GVoidFunc:
- *
- * Declares a type of function which takes no arguments
- * and has no return value. It is used to specify the type
- * function passed to g_atexit().
- */
-
-
-/**
- * GVolume:
- *
- * Opaque mountable volume object.
- */
-
-
-/**
- * GVolume::changed:
- *
- * Emitted when the volume has been changed.
- */
-
-
-/**
- * GVolume::removed:
- *
- * This signal is emitted when the #GVolume have been removed. If
- * the recipient is holding references to the object they should
- * release them so the object can be finalized.
- */
-
-
-/**
- * GVolumeIface:
- * @g_iface: The parent interface.
- * @changed: Changed signal that is emitted when the volume's state has changed.
- * @removed: The removed signal that is emitted when the #GVolume have been removed. If the recipient is holding references to the object they should release them so the object can be finalized.
- * @get_name: Gets a string containing the name of the #GVolume.
- * @get_icon: Gets a #GIcon for the #GVolume.
- * @get_uuid: Gets the UUID for the #GVolume. 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.
- * @get_drive: Gets a #GDrive the volume is located on. Returns %NULL if the #GVolume is not associated with a #GDrive.
- * @get_mount: Gets a #GMount representing the mounted volume. Returns %NULL if the #GVolume is not mounted.
- * @can_mount: Returns %TRUE if the #GVolume can be mounted.
- * @can_eject: Checks if a #GVolume can be ejected.
- * @mount_fn: Mounts a given #GVolume. #GVolume implementations must emit the #GMountOperation::aborted signal before completing a mount operation that is aborted while awaiting input from the user through a #GMountOperation instance.
- * @mount_finish: Finishes a mount operation.
- * @eject: Ejects a given #GVolume.
- * @eject_finish: Finishes an eject operation.
- * @get_identifier: Returns the <link linkend="volume-identifier">identifier</link> of the given kind, or %NULL if the #GVolume doesn't have one.
- * @enumerate_identifiers: Returns an array strings listing the kinds of <link linkend="volume-identifier">identifiers</link> which the #GVolume has.
- * @should_automount: Returns %TRUE if the #GVolume should be automatically mounted.
- * @get_activation_root: Returns the activation root for the #GVolume if it is known in advance or %NULL if it is not known.
- * @eject_with_operation: Starts ejecting a #GVolume using a #GMountOperation. Since 2.22.
- * @eject_with_operation_finish: Finishes an eject operation using a #GMountOperation. Since 2.22.
- * @get_sort_key: Gets a key used for sorting #GVolume instance or %NULL if no such key exists. Since 2.32.
- *
- * Interface for implementing operations for mountable volumes.
- */
-
-
-/**
- * GVolumeMonitor:
- *
- * A Volume Monitor that watches for volume events.
- */
-
-
-/**
- * GVolumeMonitor::drive-changed:
- * @volume_monitor: The volume monitor emitting the signal.
- * @drive: the drive that changed
- *
- * Emitted when a drive changes.
- */
-
-
-/**
- * GVolumeMonitor::drive-connected:
- * @volume_monitor: The volume monitor emitting the signal.
- * @drive: a #GDrive that was connected.
- *
- * Emitted when a drive is connected to the system.
- */
-
-
-/**
- * GVolumeMonitor::drive-disconnected:
- * @volume_monitor: The volume monitor emitting the signal.
- * @drive: a #GDrive that was disconnected.
- *
- * Emitted when a drive is disconnected from the system.
- */
-
-
-/**
- * GVolumeMonitor::drive-eject-button:
- * @volume_monitor: The volume monitor emitting the signal.
- * @drive: the drive where the eject button was pressed
- *
- * Emitted when the eject button is pressed on @drive.
- *
- * Since: 2.18
- */
-
-
-/**
- * GVolumeMonitor::drive-stop-button:
- * @volume_monitor: The volume monitor emitting the signal.
- * @drive: the drive where the stop button was pressed
- *
- * Emitted when the stop button is pressed on @drive.
- *
- * Since: 2.22
- */
-
-
-/**
- * GVolumeMonitor::mount-added:
- * @volume_monitor: The volume monitor emitting the signal.
- * @mount: a #GMount that was added.
- *
- * Emitted when a mount is added.
- */
-
-
-/**
- * GVolumeMonitor::mount-changed:
- * @volume_monitor: The volume monitor emitting the signal.
- * @mount: a #GMount that changed.
- *
- * Emitted when a mount changes.
- */
-
-
-/**
- * GVolumeMonitor::mount-pre-unmount:
- * @volume_monitor: The volume monitor emitting the signal.
- * @mount: a #GMount that is being unmounted.
- *
- * Emitted when a mount is about to be removed.
- */
-
-
-/**
- * GVolumeMonitor::mount-removed:
- * @volume_monitor: The volume monitor emitting the signal.
- * @mount: a #GMount that was removed.
- *
- * Emitted when a mount is removed.
- */
-
-
-/**
- * GVolumeMonitor::volume-added:
- * @volume_monitor: The volume monitor emitting the signal.
- * @volume: a #GVolume that was added.
- *
- * Emitted when a mountable volume is added to the system.
- */
-
-
-/**
- * GVolumeMonitor::volume-changed:
- * @volume_monitor: The volume monitor emitting the signal.
- * @volume: a #GVolume that changed.
- *
- * Emitted when mountable volume is changed.
- */
-
-
-/**
- * GVolumeMonitor::volume-removed:
- * @volume_monitor: The volume monitor emitting the signal.
- * @volume: a #GVolume that was removed.
- *
- * Emitted when a mountable volume is removed from the system.
- */
-
-
-/**
- * GWeakNotify:
- * @data: data that was provided when the weak reference was established
- * @where_the_object_was: the object being finalized
- *
- * A #GWeakNotify function can be added to an object as a callback that gets
- * triggered when the object is finalized. Since the object is already being
- * finalized when the #GWeakNotify is called, there's not much you could do
- * with the object, apart from e.g. using its address as hash-index or the like.
- */
-
-
-/**
- * GWin32InputStream:close-handle:
- *
- * Whether to close the file handle when the stream is closed.
- *
- * Since: 2.26
- */
-
-
-/**
- * GWin32InputStream:handle:
- *
- * The handle that the stream reads from.
- *
- * Since: 2.26
- */
-
-
-/**
- * GWin32OutputStream:close-handle:
- *
- * Whether to close the file handle when the stream is closed.
- *
- * Since: 2.26
- */
-
-
-/**
- * GWin32OutputStream:handle:
- *
- * The file handle that the stream writes to.
- *
- * Since: 2.26
- */
-
-
-/**
- * GZlibCompressor:
- *
- * Zlib decompression
- */
-
-
-/**
- * GZlibCompressor:file-info:
- *
- * If set to a non-%NULL #GFileInfo object, and #GZlibCompressor:format is
- * %G_ZLIB_COMPRESSOR_FORMAT_GZIP, the compressor will write the file name
- * and modification time from the file info to the the GZIP header.
- *
- * Since: 2.26
- */
-
-
-/**
- * GZlibCompressorFormat:
- * @G_ZLIB_COMPRESSOR_FORMAT_ZLIB: deflate compression with zlib header
- * @G_ZLIB_COMPRESSOR_FORMAT_GZIP: gzip file format
- * @G_ZLIB_COMPRESSOR_FORMAT_RAW: deflate compression with no header
- *
- * Used to select the type of data format to use for #GZlibDecompressor
- * and #GZlibCompressor.
- *
- * Since: 2.24
- */
-
-
-/**
- * GZlibDecompressor:
- *
- * Zlib decompression
- */
-
-
-/**
- * GZlibDecompressor:file-info:
- *
- * A #GFileInfo containing the information found in the GZIP header
- * of the data stream processed, or %NULL if the header was not yet
- * fully processed, is not present at all, or the compressor's
- * #GZlibDecompressor:format property is not %G_ZLIB_COMPRESSOR_FORMAT_GZIP.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_BOOKMARK_FILE_ERROR:
- *
- * Error domain for bookmark file parsing.
- * Errors in this domain will be from the #GBookmarkFileError
- * enumeration. See #GError for information on error domains.
- */
-
-
-/**
- * G_BREAKPOINT:
- *
- * Inserts a breakpoint instruction into the code.
- *
- * On x86 and alpha systems this is implemented as a soft interrupt
- * and on other architectures it raises a <literal>SIGTRAP</literal> signal.
- */
-
-
-/**
- * G_CALLBACK:
- * @f: a function pointer.
- *
- * Cast a function pointer to a #GCallback.
- */
-
-
-/**
- * G_CCLOSURE_SWAP_DATA:
- * @cclosure: a #GCClosure
- *
- * Checks whether the user data of the #GCClosure should be passed as the
- * first parameter to the callback. See g_cclosure_new_swap().
- *
- * Returns: %TRUE if data has to be swapped.
- */
-
-
-/**
- * G_CLOSURE_NEEDS_MARSHAL:
- * @closure: a #GClosure
- *
- * Check if the closure still needs a marshaller. See g_closure_set_marshal().
- *
- * Returns: %TRUE if a #GClosureMarshal marshaller has not yet been set on @closure.
- */
-
-
-/**
- * G_CLOSURE_N_NOTIFIERS:
- * @cl: a #GClosure
- *
- * Get the total number of notifiers connected with the closure @cl.
- * The count includes the meta marshaller, the finalize and invalidate notifiers
- * and the marshal guards. Note that each guard counts as two notifiers.
- * See g_closure_set_meta_marshal(), g_closure_add_finalize_notifier(),
- * g_closure_add_invalidate_notifier() and g_closure_add_marshal_guards().
- *
- * Returns: number of notifiers
- */
-
-
-/**
- * G_CONVERT_ERROR:
- *
- * Error domain for character set conversions. Errors in this domain will
- * be from the #GConvertError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_DATALIST_FLAGS_MASK:
- *
- * A bitmask that restricts the possible flags passed to
- * g_datalist_set_flags(). Passing a flags value where
- * flags & ~G_DATALIST_FLAGS_MASK != 0 is an error.
- */
-
-
-/**
- * G_DBUS_ERROR:
- *
- * Error domain for errors generated by a remote message bus. Errors
- * in this domain will be from the #GDBusError enumeration.  See
- * #GError for more information on error domains.
- *
- * Note that errors in this error domain is intended only for
- * returning errors from a remote message bus process. Errors
- * generated locally in-process by e.g. #GDBusConnection is from the
- * %G_IO_ERROR domain.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_ABSTRACT_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE(), but defines an abstract type.
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_ABSTRACT_TYPE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_C_: Custom code that gets inserted in the @type_name_get_type() function.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE_WITH_CODE(), but defines an abstract type and allows you to
- * insert custom code into the *_get_type() function, e.g. interface implementations
- * via G_IMPLEMENT_INTERFACE(). See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_BOXED_TYPE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @copy_func: the #GBoxedCopyFunc for the new type
- * @free_func: the #GBoxedFreeFunc for the new type
- *
- * A convenience macro for boxed type implementations, which defines a
- * type_name_get_type() function registering the boxed type.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_BOXED_TYPE_WITH_CODE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @copy_func: the #GBoxedCopyFunc for the new type
- * @free_func: the #GBoxedFreeFunc for the new type
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for boxed type implementations.
- * Similar to G_DEFINE_BOXED_TYPE(), but allows to insert custom code into the
- * type_name_get_type() function, e.g. to register value transformations with
- * g_value_register_transform_func().
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_DYNAMIC_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for dynamic type implementations, which declares a
- * class initialization function, an instance initialization function (see
- * #GTypeInfo for information about these) and a static variable named
- * @t_n<!-- -->_parent_class pointing to the parent class. Furthermore,
- * it defines a <function>*_get_type()</function> and a static
- * <function>*_register_type()</function> function for use in your
- * <function>module_init()</function>.
- * See G_DEFINE_DYNAMIC_TYPE_EXTENDED() for an example.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @TYPE_PARENT: The #GType of the parent type.
- * @flags: #GTypeFlags to pass to g_type_module_register_type()
- * @CODE: Custom code that gets inserted in the *_get_type() function.
- *
- * A more general version of G_DEFINE_DYNAMIC_TYPE() which
- * allows to specify #GTypeFlags and custom code.
- *
- * |[
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED (GtkGadget,
- *                                 gtk_gadget,
- *                                 GTK_TYPE_THING,
- *                                 0,
- *                                 G_IMPLEMENT_INTERFACE_DYNAMIC (TYPE_GIZMO,
- *                                                                gtk_gadget_gizmo_init));
- * ]|
- * expands to
- * |[
- * static void     gtk_gadget_init              (GtkGadget      *self);
- * static void     gtk_gadget_class_init        (GtkGadgetClass *klass);
- * static void     gtk_gadget_class_finalize    (GtkGadgetClass *klass);
- *
- * static gpointer gtk_gadget_parent_class = NULL;
- * static GType    gtk_gadget_type_id = 0;
- *
- * static void     gtk_gadget_class_intern_init (gpointer klass)
- * {
- *   gtk_gadget_parent_class = g_type_class_peek_parent (klass);
- *   gtk_gadget_class_init ((GtkGadgetClass*) klass);
- * }
- *
- * GType
- * gtk_gadget_get_type (void)
- * {
- *   return gtk_gadget_type_id;
- * }
- *
- * static void
- * gtk_gadget_register_type (GTypeModule *type_module)
- * {
- *   const GTypeInfo g_define_type_info = {
- *     sizeof (GtkGadgetClass),
- *     (GBaseInitFunc) NULL,
- *     (GBaseFinalizeFunc) NULL,
- *     (GClassInitFunc) gtk_gadget_class_intern_init,
- *     (GClassFinalizeFunc) gtk_gadget_class_finalize,
- *     NULL,   // class_data
- *     sizeof (GtkGadget),
- *     0,      // n_preallocs
- *     (GInstanceInitFunc) gtk_gadget_init,
- *     NULL    // value_table
- *   };
- *   gtk_gadget_type_id = g_type_module_register_type (type_module,
- *                                                     GTK_TYPE_THING,
- *                                                     GtkGadget,
- *                                                     &g_define_type_info,
- *                                                     (GTypeFlags) flags);
- *   {
- *     const GInterfaceInfo g_implement_interface_info = {
- *       (GInterfaceInitFunc) gtk_gadget_gizmo_init
- *     };
- *     g_type_module_add_interface (type_module, g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
- *   }
- * }
- * ]|
- *
- * Since: 2.14
- */
-
-
-/**
- * G_DEFINE_INTERFACE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the prerequisite type for the interface, or 0 (%G_TYPE_INVALID) for no prerequisite type.
- *
- * A convenience macro for #GTypeInterface definitions, which declares
- * a default vtable initialization function and defines a *_get_type()
- * function.
- *
- * The macro expects the interface initialization function to have the
- * name <literal>t_n ## _default_init</literal>, and the interface
- * structure to have the name <literal>TN ## Interface</literal>.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_DEFINE_INTERFACE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the prerequisite type for the interface, or 0 (%G_TYPE_INVALID) for no prerequisite type.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for #GTypeInterface definitions. Similar to
- * G_DEFINE_INTERFACE(), but allows you to insert custom code into the
- * *_get_type() function, e.g. additional interface implementations
- * via G_IMPLEMENT_INTERFACE(), or additional prerequisite types. See
- * G_DEFINE_TYPE_EXTENDED() for a similar example using
- * G_DEFINE_TYPE_WITH_CODE().
- *
- * Since: 2.24
- */
-
-
-/**
- * G_DEFINE_POINTER_TYPE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- *
- * A convenience macro for pointer type implementations, which defines a
- * type_name_get_type() function registering the pointer type.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_POINTER_TYPE_WITH_CODE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for pointer type implementations.
- * Similar to G_DEFINE_POINTER_TYPE(), but allows to insert custom code into the
- * type_name_get_type() function.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for type implementations, which declares a
- * class initialization function, an instance initialization function (see #GTypeInfo for information about
- * these) and a static variable named @t_n<!-- -->_parent_class pointing to the parent class. Furthermore, it defines
- * a *_get_type() function. See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_TYPE_EXTENDED:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_f_: #GTypeFlags to pass to g_type_register_static()
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * The most general convenience macro for type implementations, on which
- * G_DEFINE_TYPE(), etc are based.
- *
- * |[
- * G_DEFINE_TYPE_EXTENDED (GtkGadget,
- *                         gtk_gadget,
- *                         GTK_TYPE_WIDGET,
- *                         0,
- *                         G_IMPLEMENT_INTERFACE (TYPE_GIZMO,
- *                                                gtk_gadget_gizmo_init));
- * ]|
- * expands to
- * |[
- * static void     gtk_gadget_init       (GtkGadget      *self);
- * static void     gtk_gadget_class_init (GtkGadgetClass *klass);
- * static gpointer gtk_gadget_parent_class = NULL;
- * static void     gtk_gadget_class_intern_init (gpointer klass)
- * {
- *   gtk_gadget_parent_class = g_type_class_peek_parent (klass);
- *   gtk_gadget_class_init ((GtkGadgetClass*) klass);
- * }
- *
- * GType
- * gtk_gadget_get_type (void)
- * {
- *   static volatile gsize g_define_type_id__volatile = 0;
- *   if (g_once_init_enter (&g_define_type_id__volatile))
- *     {
- *       GType g_define_type_id =
- *         g_type_register_static_simple (GTK_TYPE_WIDGET,
- *                                        g_intern_static_string ("GtkGadget"),
- *                                        sizeof (GtkGadgetClass),
- *                                        (GClassInitFunc) gtk_gadget_class_intern_init,
- *                                        sizeof (GtkGadget),
- *                                        (GInstanceInitFunc) gtk_gadget_init,
- *                                        (GTypeFlags) flags);
- *       {
- *         const GInterfaceInfo g_implement_interface_info = {
- *           (GInterfaceInitFunc) gtk_gadget_gizmo_init
- *         };
- *         g_type_add_interface_static (g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
- *       }
- *       g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
- *     }
- *   return g_define_type_id__volatile;
- * }
- * ]|
- * The only pieces which have to be manually provided are the definitions of
- * the instance and class structure and the definitions of the instance and
- * class init functions.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_TYPE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE(), but allows you to insert custom code into the
- * *_get_type() function, e.g. interface implementations via G_IMPLEMENT_INTERFACE().
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME:
- *
- * Extension point for default handler to URI association. See
- * <link linkend="extending-gio">Extending GIO</link>.
- */
-
-
-/**
- * G_ENUM_CLASS:
- * @class: a valid #GEnumClass
- *
- * Casts a derived #GEnumClass structure into a #GEnumClass structure.
- */
-
-
-/**
- * G_ENUM_CLASS_TYPE:
- * @class: a #GEnumClass
- *
- * Get the type identifier from a given #GEnumClass structure.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_ENUM_CLASS_TYPE_NAME:
- * @class: a #GEnumClass
- *
- * Get the static type name from a given #GEnumClass structure.
- *
- * Returns: the type name.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE:
- *
- * A key in the "access" namespace for checking deletion privileges.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- * This attribute will be %TRUE if the user is able to delete the file.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE:
- *
- * A key in the "access" namespace for getting execution privileges.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- * This attribute will be %TRUE if the user is able to execute the file.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_READ:
- *
- * A key in the "access" namespace for getting read privileges.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- * This attribute will be %TRUE if the user is able to read the file.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME:
- *
- * A key in the "access" namespace for checking renaming privileges.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- * This attribute will be %TRUE if the user is able to rename the file.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_TRASH:
- *
- * A key in the "access" namespace for checking trashing privileges.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- * This attribute will be %TRUE if the user is able to move the file to
- * the trash.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE:
- *
- * A key in the "access" namespace for getting write privileges.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- * This attribute will be %TRUE if the user is able to write to the file.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_DOS_IS_ARCHIVE:
- *
- * A key in the "dos" namespace for checking if the file's archive flag
- * is set. This attribute is %TRUE if the archive flag is set. This attribute
- * is only available for DOS file systems. Corresponding #GFileAttributeType
- * is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_DOS_IS_SYSTEM:
- *
- * A key in the "dos" namespace for checking if the file's backup flag
- * is set. This attribute is %TRUE if the backup flag is set. This attribute
- * is only available for DOS file systems. Corresponding #GFileAttributeType
- * is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ETAG_VALUE:
- *
- * A key in the "etag" namespace for getting the value of the file's
- * entity tag. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_FILESYSTEM_FREE:
- *
- * A key in the "filesystem" namespace for getting the number of bytes of free space left on the
- * file system. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT64.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_FILESYSTEM_READONLY:
- *
- * A key in the "filesystem" namespace for checking if the file system
- * is read only. Is set to %TRUE if the file system is read only.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_FILESYSTEM_SIZE:
- *
- * A key in the "filesystem" namespace for getting the total size (in bytes) of the file system,
- * used in g_file_query_filesystem_info(). Corresponding #GFileAttributeType
- * is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_FILESYSTEM_TYPE:
- *
- * A key in the "filesystem" namespace for getting the file system's type.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_FILESYSTEM_USED:
- *
- * A key in the "filesystem" namespace for getting the number of bytes of used on the
- * file system. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT64.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW:
- *
- * A key in the "filesystem" namespace for hinting a file manager
- * application whether it should preview (e.g. thumbnail) files on the
- * file system. The value for this key contain a
- * #GFilesystemPreviewType.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_GVFS_BACKEND:
- *
- * A key in the "gvfs" namespace that gets the name of the current
- * GVFS backend in use. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ID_FILE:
- *
- * A key in the "id" namespace for getting a file identifier.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- * An example use would be during listing files, to avoid recursive
- * directory scanning.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_ID_FILESYSTEM:
- *
- * A key in the "id" namespace for getting the file system identifier.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- * An example use would be during drag and drop to see if the source
- * and target are on the same filesystem (default to move) or not (default
- * to copy).
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be ejected.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) is mountable.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be polled.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be started.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be started
- * degraded.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be stopped.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE)  is unmountable.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI:
- *
- * A key in the "mountable" namespace for getting the HAL UDI for the mountable
- * file. Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC:
- *
- * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE)
- * is automatically polled for media.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE:
- *
- * A key in the "mountable" namespace for getting the #GDriveStartStopType.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE:
- *
- * A key in the "mountable" namespace for getting the unix device.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE:
- *
- * A key in the "mountable" namespace for getting the unix device file.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_OWNER_GROUP:
- *
- * A key in the "owner" namespace for getting the file owner's group.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_OWNER_USER:
- *
- * A key in the "owner" namespace for getting the user name of the
- * file's owner. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_OWNER_USER_REAL:
- *
- * A key in the "owner" namespace for getting the real name of the
- * user that owns the file. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_PREVIEW_ICON:
- *
- * A key in the "preview" namespace for getting a #GIcon that can be
- * used to get preview of the file. For example, it may be a low
- * resolution thumbnail without metadata. Corresponding
- * #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT.  The value
- * for this key should contain a #GIcon.
- *
- * Since: 2.20
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_SELINUX_CONTEXT:
- *
- * A key in the "selinux" namespace for getting the file's SELinux
- * context. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_STRING. Note that this attribute is only
- * available if GLib has been built with SELinux support.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE:
- *
- * A key in the "standard" namespace for getting the amount of disk space
- * that is consumed by the file (in bytes).  This will generally be larger
- * than the file size (due to block size overhead) but can occasionally be
- * smaller (for example, for sparse files).
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- *
- * Since: 2.20
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE:
- *
- * A key in the "standard" namespace for getting the content type of the file.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- * The value for this key should contain a valid content type.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_COPY_NAME:
- *
- * A key in the "standard" namespace for getting the copy name of the file.
- * The copy name is an optional version of the name. If available it's always
- * in UTF8, and corresponds directly to the original filename (only transcoded to
- * UTF8). This is useful if you want to copy the file to another filesystem that
- * might have a different encoding. If the filename is not a valid string in the
- * encoding selected for the filesystem it is in then the copy name will not be set.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_DESCRIPTION:
- *
- * A key in the "standard" namespace for getting the description of the file.
- * The description is a utf8 string that describes the file, generally containing
- * the filename, but can also contain furter information. Example descriptions
- * could be "filename (on hostname)" for a remote file or "filename (in trash)"
- * for a file in the trash. This is useful for instance as the window title
- * when displaying a directory or for a bookmarks menu.
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME:
- *
- * A key in the "standard" namespace for getting the display name of the file.
- * A display name is guaranteed to be in UTF8 and can thus be displayed in
- * the UI.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME:
- *
- * A key in the "standard" namespace for edit name of the file.
- * An edit name is similar to the display name, but it is meant to be
- * used when you want to rename the file in the UI. The display name
- * might contain information you don't want in the new filename (such as
- * "(invalid unicode)" if the filename was in an invalid encoding).
- *
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE:
- *
- * A key in the "standard" namespace for getting the fast content type.
- * The fast content type isn't as reliable as the regular one, as it
- * only uses the filename to guess it, but it is faster to calculate than the
- * regular content type.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_ICON:
- *
- * A key in the "standard" namespace for getting the icon for the file.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT.
- * The value for this key should contain a #GIcon.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_IS_BACKUP:
- *
- * A key in the "standard" namespace for checking if a file is a backup file.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN:
- *
- * A key in the "standard" namespace for checking if a file is hidden.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK:
- *
- * A key in the "standard" namespace for checking if the file is a symlink.
- * Typically the actual type is something else, if we followed the symlink
- * to get the type.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL:
- *
- * A key in the "standard" namespace for checking if a file is virtual.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_NAME:
- *
- * A key in the "standard" namespace for getting the name of the file.
- * The name is the on-disk filename which may not be in any known encoding,
- * and can thus not be generally displayed as is.
- * Use #G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME if you need to display the
- * name in a user interface.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_SIZE:
- *
- * A key in the "standard" namespace for getting the file's size (in bytes).
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER:
- *
- * A key in the "standard" namespace for setting the sort order of a file.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_INT32.
- * An example use would be in file managers, which would use this key
- * to set the order files are displayed. Files with smaller sort order
- * should be sorted first, and files without sort order as if sort order
- * was zero.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET:
- *
- * A key in the "standard" namespace for getting the symlink target, if the file
- * is a symlink. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_TARGET_URI:
- *
- * A key in the "standard" namespace for getting the target URI for the file, in
- * the case of %G_FILE_TYPE_SHORTCUT or %G_FILE_TYPE_MOUNTABLE files.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_STANDARD_TYPE:
- *
- * A key in the "standard" namespace for storing file types.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- * The value for this key should contain a #GFileType.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_THUMBNAILING_FAILED:
- *
- * A key in the "thumbnail" namespace for checking if thumbnailing failed.
- * This attribute is %TRUE if thumbnailing failed. Corresponding
- * #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_THUMBNAIL_PATH:
- *
- * A key in the "thumbnail" namespace for getting the path to the thumbnail
- * image. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_ACCESS:
- *
- * A key in the "time" namespace for getting the time the file was last
- * accessed. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT64, and contains the UNIX time since the
- * file was last accessed.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_ACCESS_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was last accessed. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_ACCESS. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_CHANGED:
- *
- * A key in the "time" namespace for getting the time the file was last
- * changed. Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64,
- * and contains the UNIX time since the file was last changed.
- *
- * This corresponds to the traditional UNIX ctime.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_CHANGED_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was last changed. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_CHANGED. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_CREATED:
- *
- * A key in the "time" namespace for getting the time the file was created.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64,
- * and contains the UNIX time since the file was created.
- *
- * This corresponds to the NTFS ctime.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_CREATED_USEC:
- *
- * A key in the "time" namespace for getting the microseconds of the time
- * the file was created. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_CREATED. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_MODIFIED:
- *
- * A key in the "time" namespace for getting the time the file was last
- * modified. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT64, and contains the UNIX time since the
- * file was modified.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC:
- *
- * A key in the "time" namespace for getting the miliseconds of the time
- * the file was last modified. This should be used in conjunction with
- * #G_FILE_ATTRIBUTE_TIME_MODIFIED. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TRASH_DELETION_DATE:
- *
- * A key in the "trash" namespace.  When requested against
- * items in "trash:///", will return the date and time when the file
- * was trashed. The format of the returned string is YYYY-MM-DDThh:mm:ss.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * Since: 2.24.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TRASH_ITEM_COUNT:
- *
- * A key in the "trash" namespace.  When requested against
- * "trash:///" returns the number of (toplevel) items in the trash folder.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_TRASH_ORIG_PATH:
- *
- * A key in the "trash" namespace.  When requested against
- * items in "trash:///", will return the original path to the file before it
- * was trashed. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_STRING.
- *
- * Since: 2.24.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_BLOCKS:
- *
- * A key in the "unix" namespace for getting the number of blocks allocated
- * for the file. This attribute is only available for UNIX file systems.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_BLOCK_SIZE:
- *
- * A key in the "unix" namespace for getting the block size for the file
- * system. This attribute is only available for UNIX file systems.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_DEVICE:
- *
- * A key in the "unix" namespace for getting the device id of the device the
- * file is located on (see stat() documentation). This attribute is only
- * available for UNIX file systems. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_GID:
- *
- * A key in the "unix" namespace for getting the group ID for the file.
- * This attribute is only available for UNIX file systems.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_INODE:
- *
- * A key in the "unix" namespace for getting the inode of the file.
- * This attribute is only available for UNIX file systems. Corresponding
- * #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT:
- *
- * A key in the "unix" namespace for checking if the file represents a
- * UNIX mount point. This attribute is %TRUE if the file is a UNIX mount
- * point. This attribute is only available for UNIX file systems.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_MODE:
- *
- * A key in the "unix" namespace for getting the mode of the file
- * (e.g. whether the file is a regular file, symlink, etc). See lstat()
- * documentation. This attribute is only available for UNIX file systems.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_NLINK:
- *
- * A key in the "unix" namespace for getting the number of hard links
- * for a file. See lstat() documentation. This attribute is only available
- * for UNIX file systems. Corresponding #GFileAttributeType is
- * %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_RDEV:
- *
- * A key in the "unix" namespace for getting the device ID for the file
- * (if it is a special file). See lstat() documentation. This attribute
- * is only available for UNIX file systems. Corresponding #GFileAttributeType
- * is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FILE_ATTRIBUTE_UNIX_UID:
- *
- * A key in the "unix" namespace for getting the user ID for the file.
- * This attribute is only available for UNIX file systems.
- * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32.
- */
-
-
-/**
- * G_FLAGS_CLASS:
- * @class: a valid #GFlagsClass
- *
- * Casts a derived #GFlagsClass structure into a #GFlagsClass structure.
- */
-
-
-/**
- * G_FLAGS_CLASS_TYPE:
- * @class: a #GFlagsClass
- *
- * Get the type identifier from a given #GFlagsClass structure.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_FLAGS_CLASS_TYPE_NAME:
- * @class: a #GFlagsClass
- *
- * Get the static type name from a given #GFlagsClass structure.
- *
- * Returns: the type name.
- */
-
-
-/**
- * G_IMPLEMENT_INTERFACE:
- * @TYPE_IFACE: The #GType of the interface to add
- * @iface_init: The interface init function
- *
- * A convenience macro to ease interface addition in the @_C_ section
- * of G_DEFINE_TYPE_WITH_CODE() or G_DEFINE_ABSTRACT_TYPE_WITH_CODE().
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Note that this macro can only be used together with the G_DEFINE_TYPE_*
- * macros, since it depends on variable names from those macros.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_IMPLEMENT_INTERFACE_DYNAMIC:
- * @TYPE_IFACE: The #GType of the interface to add
- * @iface_init: The interface init function
- *
- * A convenience macro to ease interface addition in the @_C_ section
- * of G_DEFINE_DYNAMIC_TYPE_EXTENDED(). See G_DEFINE_DYNAMIC_TYPE_EXTENDED()
- * for an example.
- *
- * Note that this macro can only be used together with the
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED macros, since it depends on variable
- * names from that macro.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_INITIALLY_UNOWNED:
- * @object: Object which is subject to casting.
- *
- * Casts a #GInitiallyUnowned or derived pointer into a (GInitiallyUnowned*)
- * pointer. Depending on the current debugging level, this function may invoke
- * certain runtime checks to identify invalid casts.
- */
-
-
-/**
- * G_INITIALLY_UNOWNED_CLASS:
- * @class: a valid #GInitiallyUnownedClass
- *
- * Casts a derived #GInitiallyUnownedClass structure into a
- * #GInitiallyUnownedClass structure.
- */
-
-
-/**
- * G_INITIALLY_UNOWNED_GET_CLASS:
- * @object: a #GInitiallyUnowned instance.
- *
- * Get the class structure associated to a #GInitiallyUnowned instance.
- *
- * Returns: pointer to object class structure.
- */
-
-
-/**
- * G_IO_ERROR:
- *
- * Error domain for GIO. Errors in this domain will be from the #GIOErrorEnum enumeration.
- * See #GError for more information on error domains.
- */
-
-
-/**
- * G_IS_ENUM_CLASS:
- * @class: a #GEnumClass
- *
- * Checks whether @class "is a" valid #GEnumClass structure of type %G_TYPE_ENUM
- * or derived.
- */
-
-
-/**
- * G_IS_FLAGS_CLASS:
- * @class: a #GFlagsClass
- *
- * Checks whether @class "is a" valid #GFlagsClass structure of type %G_TYPE_FLAGS
- * or derived.
- */
-
-
-/**
- * G_IS_INITIALLY_UNOWNED:
- * @object: Instance to check for being a %G_TYPE_INITIALLY_UNOWNED.
- *
- * Checks whether a valid #GTypeInstance pointer is of type %G_TYPE_INITIALLY_UNOWNED.
- */
-
-
-/**
- * G_IS_INITIALLY_UNOWNED_CLASS:
- * @class: a #GInitiallyUnownedClass
- *
- * Checks whether @class "is a" valid #GInitiallyUnownedClass structure of type
- * %G_TYPE_INITIALLY_UNOWNED or derived.
- */
-
-
-/**
- * G_IS_OBJECT:
- * @object: Instance to check for being a %G_TYPE_OBJECT.
- *
- * Checks whether a valid #GTypeInstance pointer is of type %G_TYPE_OBJECT.
- */
-
-
-/**
- * G_IS_OBJECT_CLASS:
- * @class: a #GObjectClass
- *
- * Checks whether @class "is a" valid #GObjectClass structure of type
- * %G_TYPE_OBJECT or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC:
- * @pspec: a #GParamSpec
- *
- * Checks whether @pspec "is a" valid #GParamSpec structure of type %G_TYPE_PARAM
- * or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_BOOLEAN:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_BOOLEAN.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_BOXED:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_BOXED.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_CHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_CHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_CLASS:
- * @pclass: a #GParamSpecClass
- *
- * Checks whether @pclass "is a" valid #GParamSpecClass structure of type
- * %G_TYPE_PARAM or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_DOUBLE:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_DOUBLE.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_ENUM:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_ENUM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_FLAGS:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_FLAGS.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_FLOAT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_FLOAT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_GTYPE:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_GTYPE.
- *
- * Since: 2.10
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_INT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_INT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_INT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_INT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_LONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_LONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_OBJECT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_OBJECT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_OVERRIDE:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_OVERRIDE.
- *
- * Since: 2.4
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_PARAM:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_PARAM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_POINTER:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_POINTER.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_STRING:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_STRING.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UCHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UCHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UINT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UINT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UINT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UINT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_ULONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_ULONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UNICHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UNICHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_VALUE_ARRAY:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_VALUE_ARRAY.
- *
- * Returns: %TRUE on success.
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_IS_PARAM_SPEC_VARIANT:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_VARIANT.
- *
- * Returns: %TRUE on success
- * Since: 2.26
- */
-
-
-/**
- * G_IS_VALUE:
- * @value: A #GValue structure.
- *
- * Checks if @value is a valid and initialized #GValue structure.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_MARKUP_ERROR:
- *
- * Error domain for markup parsing.
- * Errors in this domain will be from the #GMarkupError enumeration.
- * See #GError for information on error domains.
- */
-
-
-/**
- * G_NETWORK_MONITOR_EXTENSION_POINT_NAME:
- *
- * Extension point for network status monitoring functionality.
- * See <link linkend="extending-gio">Extending GIO</link>.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_NODE_IS_LEAF:
- * @node: a #GNode
- *
- * Returns %TRUE if a #GNode is a leaf node.
- *
- * Returns: %TRUE if the #GNode is a leaf node (i.e. it has no children)
- */
-
-
-/**
- * G_NODE_IS_ROOT:
- * @node: a #GNode
- *
- * Returns %TRUE if a #GNode is the root of a tree.
- *
- * Returns: %TRUE if the #GNode is the root of a tree (i.e. it has no parent or siblings)
- */
-
-
-/**
- * G_OBJECT:
- * @object: Object which is subject to casting.
- *
- * Casts a #GObject or derived pointer into a (GObject*) pointer.
- * Depending on the current debugging level, this function may invoke
- * certain runtime checks to identify invalid casts.
- */
-
-
-/**
- * G_OBJECT_CLASS:
- * @class: a valid #GObjectClass
- *
- * Casts a derived #GObjectClass structure into a #GObjectClass structure.
- */
-
-
-/**
- * G_OBJECT_CLASS_NAME:
- * @class: a valid #GObjectClass
- *
- * Return the name of a class structure's type.
- *
- * Returns: Type name of @class. The string is owned by the type system and should not be freed.
- */
-
-
-/**
- * G_OBJECT_CLASS_TYPE:
- * @class: a valid #GObjectClass
- *
- * Get the type id of a class structure.
- *
- * Returns: Type id of @class.
- */
-
-
-/**
- * G_OBJECT_GET_CLASS:
- * @object: a #GObject instance.
- *
- * Get the class structure associated to a #GObject instance.
- *
- * Returns: pointer to object class structure.
- */
-
-
-/**
- * G_OBJECT_TYPE:
- * @object: Object to return the type id for.
- *
- * Get the type id of an object.
- *
- * Returns: Type id of @object.
- */
-
-
-/**
- * G_OBJECT_TYPE_NAME:
- * @object: Object to return the type name for.
- *
- * Get the name of an object's type.
- *
- * Returns: Type name of @object. The string is owned by the type system and should not be freed.
- */
-
-
-/**
- * G_OBJECT_WARN_INVALID_PROPERTY_ID:
- * @object: the #GObject on which set_property() or get_property() was called
- * @property_id: the numeric id of the property
- * @pspec: the #GParamSpec of the property
- *
- * This macro should be used to emit a standard warning about unexpected
- * properties in set_property() and get_property() implementations.
- */
-
-
-/**
- * G_OPTION_ERROR:
- *
- * Error domain for option parsing. Errors in this domain will
- * be from the #GOptionError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_OPTION_REMAINING:
- *
- * If a long option in the main group has this name, it is not treated as a
- * regular option. Instead it collects all non-option arguments which would
- * otherwise be left in <literal>argv</literal>. The option must be of type
- * %G_OPTION_ARG_CALLBACK, %G_OPTION_ARG_STRING_ARRAY
- * or %G_OPTION_ARG_FILENAME_ARRAY.
- *
- *
- * Using #G_OPTION_REMAINING instead of simply scanning <literal>argv</literal>
- * for leftover arguments has the advantage that GOption takes care of
- * necessary encoding conversions for strings or filenames.
- *
- * Since: 2.6
- */
-
-
-/**
- * G_PARAM_MASK:
- *
- * Mask containing the bits of #GParamSpec.flags which are reserved for GLib.
- */
-
-
-/**
- * G_PARAM_READWRITE:
- *
- * #GParamFlags value alias for %G_PARAM_READABLE | %G_PARAM_WRITABLE.
- */
-
-
-/**
- * G_PARAM_SPEC:
- * @pspec: a valid #GParamSpec
- *
- * Casts a derived #GParamSpec object (e.g. of type #GParamSpecInt) into
- * a #GParamSpec object.
- */
-
-
-/**
- * G_PARAM_SPEC_BOOLEAN:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecBoolean.
- */
-
-
-/**
- * G_PARAM_SPEC_BOXED:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecBoxed.
- */
-
-
-/**
- * G_PARAM_SPEC_CHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecChar.
- */
-
-
-/**
- * G_PARAM_SPEC_CLASS:
- * @pclass: a valid #GParamSpecClass
- *
- * Casts a derived #GParamSpecClass structure into a #GParamSpecClass structure.
- */
-
-
-/**
- * G_PARAM_SPEC_DOUBLE:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecDouble.
- */
-
-
-/**
- * G_PARAM_SPEC_ENUM:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecEnum.
- */
-
-
-/**
- * G_PARAM_SPEC_FLAGS:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecFlags.
- */
-
-
-/**
- * G_PARAM_SPEC_FLOAT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecFloat.
- */
-
-
-/**
- * G_PARAM_SPEC_GET_CLASS:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GParamSpecClass of a #GParamSpec.
- */
-
-
-/**
- * G_PARAM_SPEC_GTYPE:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecGType.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_PARAM_SPEC_INT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecInt.
- */
-
-
-/**
- * G_PARAM_SPEC_INT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecInt64.
- */
-
-
-/**
- * G_PARAM_SPEC_LONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecLong.
- */
-
-
-/**
- * G_PARAM_SPEC_OBJECT:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecObject.
- */
-
-
-/**
- * G_PARAM_SPEC_OVERRIDE:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecOverride.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_PARAM_SPEC_PARAM:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecParam.
- */
-
-
-/**
- * G_PARAM_SPEC_POINTER:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecPointer.
- */
-
-
-/**
- * G_PARAM_SPEC_STRING:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecString.
- */
-
-
-/**
- * G_PARAM_SPEC_TYPE:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType of this @pspec.
- */
-
-
-/**
- * G_PARAM_SPEC_TYPE_NAME:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType name of this @pspec.
- */
-
-
-/**
- * G_PARAM_SPEC_UCHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUChar.
- */
-
-
-/**
- * G_PARAM_SPEC_UINT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUInt.
- */
-
-
-/**
- * G_PARAM_SPEC_UINT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUInt64.
- */
-
-
-/**
- * G_PARAM_SPEC_ULONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecULong.
- */
-
-
-/**
- * G_PARAM_SPEC_UNICHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUnichar.
- */
-
-
-/**
- * G_PARAM_SPEC_VALUE_ARRAY:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecValueArray.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_PARAM_SPEC_VALUE_TYPE:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType to initialize a #GValue for this parameter.
- */
-
-
-/**
- * G_PARAM_SPEC_VARIANT:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecVariant.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_PARAM_STATIC_STRINGS:
- *
- * #GParamFlags value alias for %G_PARAM_STATIC_NAME | %G_PARAM_STATIC_NICK | %G_PARAM_STATIC_BLURB.
- *
- * Since 2.13.0
- */
-
-
-/**
- * G_PARAM_USER_SHIFT:
- *
- * Minimum shift count to be used for user defined flags, to be stored in
- * #GParamSpec.flags. The maximum allowed is 30 + G_PARAM_USER_SHIFT.
- */
-
-
-/**
- * G_PRIORITY_DEFAULT:
- *
- * Use this for default priority event sources.
- *
- * In GLib this priority is used when adding timeout functions
- * with g_timeout_add(). In GDK this priority is used for events
- * from the X server.
- */
-
-
-/**
- * G_PRIORITY_DEFAULT_IDLE:
- *
- * Use this for default priority idle functions.
- *
- * In GLib this priority is used when adding idle functions with
- * g_idle_add().
- */
-
-
-/**
- * G_PRIORITY_HIGH:
- *
- * Use this for high priority event sources.
- *
- * It is not used within GLib or GTK+.
- */
-
-
-/**
- * G_PRIORITY_HIGH_IDLE:
- *
- * Use this for high priority idle functions.
- *
- * GTK+ uses #G_PRIORITY_HIGH_IDLE + 10 for resizing operations,
- * and #G_PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is
- * done to ensure that any pending resizes are processed before any
- * pending redraws, so that widgets are not redrawn twice unnecessarily.)
- */
-
-
-/**
- * G_PRIORITY_LOW:
- *
- * Use this for very low priority background tasks.
- *
- * It is not used within GLib or GTK+.
- */
-
-
-/**
- * G_PROXY_EXTENSION_POINT_NAME:
- *
- * Extension point for proxy functionality.
- * See <link linkend="extending-gio">Extending GIO</link>.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_PROXY_RESOLVER_EXTENSION_POINT_NAME:
- *
- * Extension point for proxy resolving functionality.
- * See <link linkend="extending-gio">Extending GIO</link>.
- */
-
-
-/**
- * G_QUEUE_INIT:
- *
- * A statically-allocated #GQueue must be initialized with this
- * macro before it can be used. This macro can be used to initialize
- * a variable, but it cannot be assigned to a variable. In that case
- * you have to use g_queue_init().
- *
- * |[
- * GQueue my_queue = G_QUEUE_INIT;
- * ]|
- *
- * Since: 2.14
- */
-
-
-/**
- * G_REGEX_ERROR:
- *
- * Error domain for regular expressions. Errors in this domain will be
- * from the #GRegexError enumeration. See #GError for information on
- * error domains.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_RESOLVER_ERROR:
- *
- * Error domain for #GResolver. Errors in this domain will be from the
- * #GResolverError enumeration. See #GError for more information on
- * error domains.
- */
-
-
-/**
- * G_RESOURCE_ERROR:
- *
- * Error domain for #GResource. Errors in this domain will be from the
- * #GResourceError enumeration. See #GError for more information on
- * error domains.
- */
-
-
-/**
- * G_SETTINGS_BACKEND_EXTENSION_POINT_NAME:
- *
- * Extension point for #GSettingsBackend functionality.
- */
-
-
-/**
- * G_SIGNAL_FLAGS_MASK:
- *
- * A mask for all #GSignalFlags bits.
- */
-
-
-/**
- * G_SIGNAL_MATCH_MASK:
- *
- * A mask for all #GSignalMatchType bits.
- */
-
-
-/**
- * G_SIGNAL_TYPE_STATIC_SCOPE:
- *
- * This macro flags signal argument types for which the signal system may
- * assume that instances thereof remain persistent across all signal emissions
- * they are used in. This is only useful for non ref-counted, value-copy types.
- *
- * To flag a signal argument in this way, add
- * <literal>| G_SIGNAL_TYPE_STATIC_SCOPE</literal> to the corresponding argument
- * of g_signal_new().
- * |[
- * g_signal_new ("size_request",
- *   G_TYPE_FROM_CLASS (gobject_class),
- * 	 G_SIGNAL_RUN_FIRST,
- * 	 G_STRUCT_OFFSET (GtkWidgetClass, size_request),
- * 	 NULL, NULL,
- * 	 _gtk_marshal_VOID__BOXED,
- * 	 G_TYPE_NONE, 1,
- * 	 GTK_TYPE_REQUISITION | G_SIGNAL_TYPE_STATIC_SCOPE);
- * ]|
- */
-
-
-/**
- * G_SOURCE_CONTINUE:
- *
- * Use this macro as the return value of a #GSourceFunc to leave
- * the #GSource in the main loop.
- *
- * Since: 2.28
- */
-
-
-/**
- * G_SOURCE_REMOVE:
- *
- * Use this macro as the return value of a #GSourceFunc to remove
- * the #GSource from the main loop.
- *
- * Since: 2.28
- */
-
-
-/**
- * G_SPAWN_ERROR:
- *
- * Error domain for spawning processes. Errors in this domain will
- * be from the #GSpawnError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_TIME_SPAN_DAY:
- *
- * Evaluates to a time span of one day.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_HOUR:
- *
- * Evaluates to a time span of one hour.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_MILLISECOND:
- *
- * Evaluates to a time span of one millisecond.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_MINUTE:
- *
- * Evaluates to a time span of one minute.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_SECOND:
- *
- * Evaluates to a time span of one second.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TLS_BACKEND_EXTENSION_POINT_NAME:
- *
- * Extension point for TLS functionality via #GTlsBackend.
- * See <link linkend="extending-gio">Extending GIO</link>.
- */
-
-
-/**
- * G_TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT:
- *
- * The purpose used to verify the client certificate in a TLS connection.
- * Used by TLS servers.
- */
-
-
-/**
- * G_TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER:
- *
- * The purpose used to verify the server certificate in a TLS connection. This
- * is the most common purpose in use. Used by TLS clients.
- */
-
-
-/**
- * G_TLS_ERROR:
- *
- * Error domain for TLS. Errors in this domain will be from the
- * #GTlsError enumeration. See #GError for more information on error
- * domains.
- */
-
-
-/**
- * G_TYPE_ARRAY:
- *
- * The #GType for a boxed type holding a #GArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_BOOLEAN:
- *
- * The fundamental type corresponding to #gboolean.
- */
-
-
-/**
- * G_TYPE_BOXED:
- *
- * The fundamental type from which all boxed types are derived.
- */
-
-
-/**
- * G_TYPE_BYTES:
- *
- * The #GType for #GBytes.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_TYPE_BYTE_ARRAY:
- *
- * The #GType for a boxed type holding a #GByteArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_CHAR:
- *
- * The fundamental type corresponding to #gchar.
- * The type designated by G_TYPE_CHAR is unconditionally an 8-bit signed integer.
- * This may or may not be the same type a the C type "gchar".
- */
-
-
-/**
- * G_TYPE_CHECK_CLASS_CAST:
- * @g_class: Location of a #GTypeClass structure.
- * @g_type: The type to be returned.
- * @c_type: The corresponding C type of class structure of @g_type.
- *
- * Checks that @g_class is a class structure of the type identified by @g_type
- * and issues a warning if this is not the case. Returns @g_class casted
- * to a pointer to @c_type.
- *
- * This macro should only be used in type implementations.
- */
-
-
-/**
- * G_TYPE_CHECK_CLASS_TYPE:
- * @g_class: Location of a #GTypeClass structure.
- * @g_type: The type to be checked.
- *
- * Checks if @g_class is a class structure of the type identified by
- * @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE:
- * @instance: Location of a #GTypeInstance structure.
- *
- * Checks if @instance is a valid #GTypeInstance structure,
- * otherwise issues a warning and returns %FALSE.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE_CAST:
- * @instance: Location of a #GTypeInstance structure.
- * @g_type: The type to be returned.
- * @c_type: The corresponding C type of @g_type.
- *
- * Checks that @instance is an instance of the type identified by @g_type
- * and issues a warning if this is not the case. Returns @instance casted
- * to a pointer to @c_type.
- *
- * This macro should only be used in type implementations.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE_TYPE:
- * @instance: Location of a #GTypeInstance structure.
- * @g_type: The type to be checked
- *
- * Checks if @instance is an instance of the type identified by @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_VALUE:
- * @value: a #GValue
- *
- * Checks if @value has been initialized to hold values
- * of a value type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_VALUE_TYPE:
- * @value: a #GValue
- * @g_type: The type to be checked.
- *
- * Checks if @value has been initialized to hold values
- * of type @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CLASS_GET_PRIVATE:
- * @klass: the class of a type deriving from @private_type.
- * @g_type: the type identifying which private data to retrieve.
- * @c_type: The C type for the private structure.
- *
- * Gets the private class structure for a particular type.
- * The private structure must have been registered in the
- * get_type() function with g_type_add_class_private().
- *
- * This macro should only be used in type implementations.
- *
- * Since: 2.24
- * Returns: a pointer to the private data structure.
- */
-
-
-/**
- * G_TYPE_CLOSURE:
- *
- * The #GType for #GClosure.
- */
-
-
-/**
- * G_TYPE_DATE:
- *
- * The #GType for #GDate.
- */
-
-
-/**
- * G_TYPE_DATE_TIME:
- *
- * The #GType for a boxed type holding a #GDateTime.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_ANNOTATION_INFO:
- *
- * The #GType for a boxed type holding a #GDBusAnnotationInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_ARG_INFO:
- *
- * The #GType for a boxed type holding a #GDBusArgInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_INTERFACE_INFO:
- *
- * The #GType for a boxed type holding a #GDBusInterfaceInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_METHOD_INFO:
- *
- * The #GType for a boxed type holding a #GDBusMethodInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_NODE_INFO:
- *
- * The #GType for a boxed type holding a #GDBusNodeInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_PROPERTY_INFO:
- *
- * The #GType for a boxed type holding a #GDBusPropertyInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DBUS_SIGNAL_INFO:
- *
- * The #GType for a boxed type holding a #GDBusSignalInfo.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DOUBLE:
- *
- * The fundamental type corresponding to #gdouble.
- */
-
-
-/**
- * G_TYPE_ENUM:
- *
- * The fundamental type from which all enumeration types are derived.
- */
-
-
-/**
- * G_TYPE_ERROR:
- *
- * The #GType for a boxed type holding a #GError.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_FLAGS:
- *
- * The fundamental type from which all flags types are derived.
- */
-
-
-/**
- * G_TYPE_FLAG_RESERVED_ID_BIT:
- *
- * A bit in the type number that's supposed to be left untouched.
- */
-
-
-/**
- * G_TYPE_FLOAT:
- *
- * The fundamental type corresponding to #gfloat.
- */
-
-
-/**
- * G_TYPE_FROM_CLASS:
- * @g_class: Location of a valid #GTypeClass structure.
- *
- * Get the type identifier from a given @class structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FROM_INSTANCE:
- * @instance: Location of a valid #GTypeInstance structure.
- *
- * Get the type identifier from a given @instance structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FROM_INTERFACE:
- * @g_iface: Location of a valid #GTypeInterface structure.
- *
- * Get the type identifier from a given @interface structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL:
- * @type: A #GType value.
- *
- * The fundamental type which is the ancestor of @type.
- * Fundamental types are types that serve as ultimate bases for the derived types,
- * thus they are the roots of distinct inheritance hierarchies.
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL_MAX:
- *
- * An integer constant that represents the number of identifiers reserved
- * for types that are assigned at compile-time.
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL_SHIFT:
- *
- * Shift value used in converting numbers to type IDs.
- */
-
-
-/**
- * G_TYPE_GSTRING:
- *
- * The #GType for #GString.
- */
-
-
-/**
- * G_TYPE_GTYPE:
- *
- * The type for #GType.
- */
-
-
-/**
- * G_TYPE_HASH_TABLE:
- *
- * The #GType for a boxed type holding a #GHashTable reference.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_TYPE_HAS_VALUE_TABLE:
- * @type: A #GType value.
- *
- * Checks if @type has a #GTypeValueTable.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_INITIALLY_UNOWNED:
- *
- * The type for #GInitiallyUnowned.
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_CLASS:
- * @instance: Location of the #GTypeInstance structure.
- * @g_type: The #GType of the class to be returned.
- * @c_type: The C type of the class structure.
- *
- * Get the class structure of a given @instance, casted
- * to a specified ancestor type @g_type of the instance.
- *
- * Note that while calling a GInstanceInitFunc(), the class pointer gets
- * modified, so it might not always return the expected pointer.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: a pointer to the class structure
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_INTERFACE:
- * @instance: Location of the #GTypeInstance structure.
- * @g_type: The #GType of the interface to be returned.
- * @c_type: The C type of the interface structure.
- *
- * Get the interface structure for interface @g_type of a given @instance.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: a pointer to the interface structure
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_PRIVATE:
- * @instance: the instance of a type deriving from @private_type.
- * @g_type: the type identifying which private data to retrieve.
- * @c_type: The C type for the private structure.
- *
- * Gets the private structure for a particular type.
- * The private structure must have been registered in the
- * class_init function with g_type_class_add_private().
- *
- * This macro should only be used in type implementations.
- *
- * Since: 2.4
- * Returns: a pointer to the private data structure.
- */
-
-
-/**
- * G_TYPE_INT:
- *
- * The fundamental type corresponding to #gint.
- */
-
-
-/**
- * G_TYPE_INT64:
- *
- * The fundamental type corresponding to #gint64.
- */
-
-
-/**
- * G_TYPE_INTERFACE:
- *
- * The fundamental type from which all interfaces are derived.
- */
-
-
-/**
- * G_TYPE_INVALID:
- *
- * An invalid #GType used as error return value in some functions which return
- * a #GType.
- */
-
-
-/**
- * G_TYPE_IO_CHANNEL:
- *
- * The #GType for #GIOChannel.
- */
-
-
-/**
- * G_TYPE_IO_CONDITION:
- *
- * The #GType for #GIOCondition.
- */
-
-
-/**
- * G_TYPE_IS_ABSTRACT:
- * @type: A #GType value.
- *
- * Checks if @type is an abstract type.  An abstract type cannot be
- * instantiated and is normally used as an abstract base class for
- * derived classes.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_CLASSED:
- * @type: A #GType value.
- *
- * Checks if @type is a classed type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DEEP_DERIVABLE:
- * @type: A #GType value.
- *
- * Checks if @type is a deep derivable type.  A deep derivable type
- * can be used as the base class of a deep (multi-level) class hierarchy.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DERIVABLE:
- * @type: A #GType value.
- *
- * Checks if @type is a derivable type.  A derivable type can
- * be used as the base class of a flat (single-level) class hierarchy.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DERIVED:
- * @type: A #GType value.
- *
- * Checks if @type is derived (or in object-oriented terminology:
- * inherited) from another type (this holds true for all non-fundamental
- * types).
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_ENUM:
- * @type: a #GType ID.
- *
- * Checks whether @type "is a" %G_TYPE_ENUM.
- *
- * Returns: %TRUE if @type "is a" %G_TYPE_ENUM.
- */
-
-
-/**
- * G_TYPE_IS_FLAGS:
- * @type: a #GType ID.
- *
- * Checks whether @type "is a" %G_TYPE_FLAGS.
- *
- * Returns: %TRUE if @type "is a" %G_TYPE_FLAGS.
- */
-
-
-/**
- * G_TYPE_IS_FUNDAMENTAL:
- * @type: A #GType value.
- *
- * Checks if @type is a fundamental type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_INSTANTIATABLE:
- * @type: A #GType value.
- *
- * Checks if @type can be instantiated.  Instantiation is the
- * process of creating an instance (object) of this type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_INTERFACE:
- * @type: A #GType value.
- *
- * Checks if @type is an interface type.
- * An interface type provides a pure API, the implementation
- * of which is provided by another type (which is then said to conform
- * to the interface).  GLib interfaces are somewhat analogous to Java
- * interfaces and C++ classes containing only pure virtual functions,
- * with the difference that GType interfaces are not derivable (but see
- * g_type_interface_add_prerequisite() for an alternative).
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_OBJECT:
- * @type: Type id to check
- *
- * Check if the passed in type id is a %G_TYPE_OBJECT or derived from it.
- *
- * Returns: %FALSE or %TRUE, indicating whether @type is a %G_TYPE_OBJECT.
- */
-
-
-/**
- * G_TYPE_IS_PARAM:
- * @type: a #GType ID
- *
- * Checks whether @type "is a" %G_TYPE_PARAM.
- */
-
-
-/**
- * G_TYPE_IS_VALUE:
- * @type: A #GType value.
- *
- * Checks whether the passed in type ID can be used for g_value_init().
- * That is, this macro checks whether this type provides an implementation
- * of the #GTypeValueTable functions required for a type to create a #GValue of.
- *
- * Returns: Whether @type is suitable as a #GValue type.
- */
-
-
-/**
- * G_TYPE_IS_VALUE_ABSTRACT:
- * @type: A #GType value.
- *
- * Checks if @type is an abstract value type.  An abstract value type introduces
- * a value table, but can't be used for g_value_init() and is normally used as
- * an abstract base type for derived value types.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_VALUE_TYPE:
- * @type: A #GType value.
- *
- * Checks if @type is a value type and can be used with g_value_init().
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_KEY_FILE:
- *
- * The #GType for a boxed type holding a #GKeyFile.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_TYPE_LONG:
- *
- * The fundamental type corresponding to #glong.
- */
-
-
-/**
- * G_TYPE_MAIN_CONTEXT:
- *
- * The #GType for a boxed type holding a #GMainContext.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_MAIN_LOOP:
- *
- * The #GType for a boxed type holding a #GMainLoop.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_MAKE_FUNDAMENTAL:
- * @x: the fundamental type number.
- *
- * Get the type ID for the fundamental type number @x.
- * Use g_type_fundamental_next() instead of this macro to create new fundamental
- * types.
- *
- * Returns: the GType
- */
-
-
-/**
- * G_TYPE_MATCH_INFO:
- *
- * The #GType for a boxed type holding a #GMatchInfo reference.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_NONE:
- *
- * A fundamental type which is used as a replacement for the C
- * <literal>void</literal> return type.
- */
-
-
-/**
- * G_TYPE_OBJECT:
- *
- * The fundamental type for #GObject.
- */
-
-
-/**
- * G_TYPE_PARAM:
- *
- * The fundamental type from which all #GParamSpec types are derived.
- */
-
-
-/**
- * G_TYPE_PARAM_BOOLEAN:
- *
- * The #GType of #GParamSpecBoolean.
- */
-
-
-/**
- * G_TYPE_PARAM_BOXED:
- *
- * The #GType of #GParamSpecBoxed.
- */
-
-
-/**
- * G_TYPE_PARAM_CHAR:
- *
- * The #GType of #GParamSpecChar.
- */
-
-
-/**
- * G_TYPE_PARAM_DOUBLE:
- *
- * The #GType of #GParamSpecDouble.
- */
-
-
-/**
- * G_TYPE_PARAM_ENUM:
- *
- * The #GType of #GParamSpecEnum.
- */
-
-
-/**
- * G_TYPE_PARAM_FLAGS:
- *
- * The #GType of #GParamSpecFlags.
- */
-
-
-/**
- * G_TYPE_PARAM_FLOAT:
- *
- * The #GType of #GParamSpecFloat.
- */
-
-
-/**
- * G_TYPE_PARAM_GTYPE:
- *
- * The #GType of #GParamSpecGType.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_TYPE_PARAM_INT:
- *
- * The #GType of #GParamSpecInt.
- */
-
-
-/**
- * G_TYPE_PARAM_INT64:
- *
- * The #GType of #GParamSpecInt64.
- */
-
-
-/**
- * G_TYPE_PARAM_LONG:
- *
- * The #GType of #GParamSpecLong.
- */
-
-
-/**
- * G_TYPE_PARAM_OBJECT:
- *
- * The #GType of #GParamSpecObject.
- */
-
-
-/**
- * G_TYPE_PARAM_OVERRIDE:
- *
- * The #GType of #GParamSpecOverride.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_TYPE_PARAM_PARAM:
- *
- * The #GType of #GParamSpecParam.
- */
-
-
-/**
- * G_TYPE_PARAM_POINTER:
- *
- * The #GType of #GParamSpecPointer.
- */
-
-
-/**
- * G_TYPE_PARAM_STRING:
- *
- * The #GType of #GParamSpecString.
- */
-
-
-/**
- * G_TYPE_PARAM_UCHAR:
- *
- * The #GType of #GParamSpecUChar.
- */
-
-
-/**
- * G_TYPE_PARAM_UINT:
- *
- * The #GType of #GParamSpecUInt.
- */
-
-
-/**
- * G_TYPE_PARAM_UINT64:
- *
- * The #GType of #GParamSpecUInt64.
- */
-
-
-/**
- * G_TYPE_PARAM_ULONG:
- *
- * The #GType of #GParamSpecULong.
- */
-
-
-/**
- * G_TYPE_PARAM_UNICHAR:
+ * GSocketClient::event:
+ * @client: the #GSocketClient
+ * @event: the event that is occurring
+ * @connectable: the #GSocketConnectable that @event is occurring on
+ * @connection: the current representation of the connection
  *
- * The #GType of #GParamSpecUnichar.
- */
-
-
-/**
- * G_TYPE_PARAM_VALUE_ARRAY:
+ * Emitted when @client's activity on @connectable changes state.
+ * Among other things, this can be used to provide progress
+ * information about a network connection in the UI. The meanings of
+ * the different @event values are as follows:
  *
- * The #GType of #GParamSpecValueArray.
+ * <variablelist>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_RESOLVING:</term>
+ *     <listitem><para>
+ *       @client is about to look up @connectable in DNS.
+ *       @connection will be %NULL.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_RESOLVED:</term>
+ *     <listitem><para>
+ *       @client has successfully resolved @connectable in DNS.
+ *       @connection will be %NULL.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_CONNECTING:</term>
+ *     <listitem><para>
+ *       @client is about to make a connection to a remote host;
+ *       either a proxy server or the destination server itself.
+ *       @connection is the #GSocketConnection, which is not yet
+ *       connected.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_CONNECTED:</term>
+ *     <listitem><para>
+ *       @client has successfully connected to a remote host.
+ *       @connection is the connected #GSocketConnection.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_PROXY_NEGOTIATING:</term>
+ *     <listitem><para>
+ *       @client is about to negotiate with a proxy to get it to
+ *       connect to @connectable. @connection is the
+ *       #GSocketConnection to the proxy server.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_PROXY_NEGOTIATED:</term>
+ *     <listitem><para>
+ *       @client has negotiated a connection to @connectable through
+ *       a proxy server. @connection is the stream returned from
+ *       g_proxy_connect(), which may or may not be a
+ *       #GSocketConnection.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_TLS_HANDSHAKING:</term>
+ *     <listitem><para>
+ *       @client is about to begin a TLS handshake. @connection is a
+ *       #GTlsClientConnection.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_TLS_HANDSHAKED:</term>
+ *     <listitem><para>
+ *       @client has successfully completed the TLS handshake.
+ *       @connection is a #GTlsClientConnection.
+ *     </para></listitem>
+ *   </varlistentry>
+ *   <varlistentry>
+ *     <term>%G_SOCKET_CLIENT_COMPLETE:</term>
+ *     <listitem><para>
+ *       @client has either successfully connected to @connectable
+ *       (in which case @connection is the #GSocketConnection that
+ *       it will be returning to the caller) or has failed (in which
+ *       case @connection is %NULL and the client is about to return
+ *       an error).
+ *     </para></listitem>
+ *   </varlistentry>
+ * </variablelist>
  *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_TYPE_PARAM_VARIANT:
+ * Each event except %G_SOCKET_CLIENT_COMPLETE may be emitted
+ * multiple times (or not at all) for a given connectable (in
+ * particular, if @client ends up attempting to connect to more than
+ * one address). However, if @client emits the #GSocketClient::event
+ * signal at all for a given connectable, that it will always emit
+ * it with %G_SOCKET_CLIENT_COMPLETE when it is done.
  *
- * The #GType of #GParamSpecVariant.
+ * Note that there may be additional #GSocketClientEvent values in
+ * the future; unrecognized @event values should be ignored.
  *
- * Since: 2.26
+ * Since: 2.32
  */
 
 
 /**
- * G_TYPE_POINTER:
+ * GSocketService::incoming:
+ * @service: the #GSocketService
+ * @connection: a new #GSocketConnection object
+ * @source_object: (allow-none): the source_object passed to g_socket_listener_add_address()
  *
- * The fundamental type corresponding to #gpointer.
- */
-
-
-/**
- * G_TYPE_PTR_ARRAY:
+ * The ::incoming signal is emitted when a new incoming connection
+ * to @service needs to be handled. The handler must initiate the
+ * handling of @connection, but may not block; in essence,
+ * asynchronous operations must be used.
  *
- * The #GType for a boxed type holding a #GPtrArray reference.
+ * @connection will be unreffed once the signal handler returns,
+ * so you need to ref it yourself if you are planning to use it.
  *
+ * Returns: %TRUE to stop other handlers from being called
  * Since: 2.22
  */
 
 
 /**
- * G_TYPE_REGEX:
- *
- * The #GType for a boxed type holding a #GRegex reference.
+ * GSrvTarget:
  *
- * Since: 2.14
+ * A single target host/port that a network service is running on.
  */
 
 
 /**
- * G_TYPE_RESERVED_BSE_FIRST:
+ * GThemedIcon:name:
  *
- * First fundamental type number to create a new fundamental type id with
- * G_TYPE_MAKE_FUNDAMENTAL() reserved for BSE.
+ * The icon name.
  */
 
 
 /**
- * G_TYPE_RESERVED_BSE_LAST:
+ * GThemedIcon:names:
  *
- * Last fundamental type number reserved for BSE.
+ * A %NULL-terminated array of icon names.
  */
 
 
 /**
- * G_TYPE_RESERVED_GLIB_FIRST:
+ * GThemedIcon:use-default-fallbacks:
  *
- * First fundamental type number to create a new fundamental type id with
- * G_TYPE_MAKE_FUNDAMENTAL() reserved for GLib.
- */
-
-
-/**
- * G_TYPE_RESERVED_GLIB_LAST:
+ * Whether to use the default fallbacks found by shortening the icon name
+ * at '-' characters. If the "names" array has more than one element,
+ * ignores any past the first.
  *
- * Last fundamental type number reserved for GLib.
+ * For example, if the icon name was "gnome-dev-cdrom-audio", the array
+ * would become
+ * |[
+ * {
+ *   "gnome-dev-cdrom-audio",
+ *   "gnome-dev-cdrom",
+ *   "gnome-dev",
+ *   "gnome",
+ *   NULL
+ * };
+ * ]|
  */
 
 
 /**
- * G_TYPE_RESERVED_USER_FIRST:
+ * GThreadedSocketService::run:
+ * @service: the #GThreadedSocketService.
+ * @connection: a new #GSocketConnection object.
+ * @source_object: the source_object passed to g_socket_listener_add_address().
  *
- * First available fundamental type number to create new fundamental
- * type id with G_TYPE_MAKE_FUNDAMENTAL().
- */
-
-
-/**
- * G_TYPE_RESOURCE:
+ * The ::run signal is emitted in a worker thread in response to an
+ * incoming connection. This thread is dedicated to handling
+ * @connection and may perform blocking IO. The signal handler need
+ * not return until the connection is closed.
  *
- * The #GType for #GResource.
+ * Returns: %TRUE to stop further signal handlers from being called
  */
 
 
 /**
- * G_TYPE_SETTINGS_SCHEMA:
+ * GTlsBackend:
  *
- * A boxed #GType corresponding to #GSettingsSchema.
+ * TLS (Transport Layer Security, aka SSL) backend. This is an
+ * internal type used to coordinate the different classes implemented
+ * by a TLS backend.
  *
- * Since: 2.32
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_SETTINGS_SCHEMA_SOURCE:
+ * GTlsCertificate:
  *
- * A boxed #GType corresponding to #GSettingsSchemaSource.
+ * Abstract base class for TLS certificate types.
  *
- * Since: 2.32
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_SOURCE:
+ * GTlsCertificate:certificate:
  *
- * The #GType for a boxed type holding a #GSource.
+ * The DER (binary) encoded representation of the certificate's
+ * public key. This property and the
+ * #GTlsCertificate:certificate-pem property represent the same
+ * data, just in different forms.
  *
- * Since: 2.30
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_STRING:
+ * GTlsCertificate:certificate-pem:
+ *
+ * The PEM (ASCII) encoded representation of the certificate's
+ * public key. This property and the #GTlsCertificate:certificate
+ * property represent the same data, just in different forms.
  *
- * The fundamental type corresponding to nul-terminated C strings.
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_STRV:
- *
- * The #GType for a boxed type holding a %NULL-terminated array of strings.
- *
- * The code fragments in the following example show the use of a property of
- * type #G_TYPE_STRV with g_object_class_install_property(), g_object_set()
- * and g_object_get().
+ * GTlsCertificate:issuer:
  *
- * |[
- * g_object_class_install_property (object_class,
- *                                  PROP_AUTHORS,
- *                                  g_param_spec_boxed ("authors",
- *                                                      _("Authors"),
- *                                                      _("List of authors"),
- *                                                      G_TYPE_STRV,
- *                                                      G_PARAM_READWRITE));
- *
- * gchar *authors[] = { "Owen", "Tim", NULL };
- * g_object_set (obj, "authors", authors, NULL);
- *
- * gchar *writers[];
- * g_object_get (obj, "authors", &writers, NULL);
- * /&ast; do something with writers &ast;/
- * g_strfreev (writers);
- * ]|
+ * A #GTlsCertificate representing the entity that issued this
+ * certificate. If %NULL, this means that the certificate is either
+ * self-signed, or else the certificate of the issuer is not
+ * available.
  *
- * Since: 2.4
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_UCHAR:
+ * GTlsCertificate:private-key:
  *
- * The fundamental type corresponding to #guchar.
- */
-
-
-/**
- * G_TYPE_UINT:
+ * The DER (binary) encoded representation of the certificate's
+ * private key, in either PKCS#1 format or unencrypted PKCS#8
+ * format. This property (or the #GTlsCertificate:private-key-pem
+ * property) can be set when constructing a key (eg, from a file),
+ * but cannot be read.
  *
- * The fundamental type corresponding to #guint.
- */
-
-
-/**
- * G_TYPE_UINT64:
+ * PKCS#8 format is supported since 2.32; earlier releases only
+ * support PKCS#1. You can use the <literal>openssl rsa</literal>
+ * tool to convert PKCS#8 keys to PKCS#1.
  *
- * The fundamental type corresponding to #guint64.
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_ULONG:
+ * GTlsCertificate:private-key-pem:
  *
- * The fundamental type corresponding to #gulong.
- */
-
-
-/**
- * G_TYPE_VALUE:
+ * The PEM (ASCII) encoded representation of the certificate's
+ * private key in either PKCS#1 format ("<literal>BEGIN RSA PRIVATE
+ * KEY</literal>") or unencrypted PKCS#8 format ("<literal>BEGIN
+ * PRIVATE KEY</literal>"). This property (or the
+ * #GTlsCertificate:private-key property) can be set when
+ * constructing a key (eg, from a file), but cannot be read.
+ *
+ * PKCS#8 format is supported since 2.32; earlier releases only
+ * support PKCS#1. You can use the <literal>openssl rsa</literal>
+ * tool to convert PKCS#8 keys to PKCS#1.
  *
- * The type ID of the "GValue" type which is a boxed type,
- * used to pass around pointers to GValues.
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_VALUE_ARRAY:
+ * GTlsClientConnection:
  *
- * The type ID of the "GValueArray" type which is a boxed type,
- * used to pass around pointers to GValueArrays.
+ * Abstract base class for the backend-specific client connection
+ * type.
  *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_VARIANT:
- *
- * The fundamental type corresponding to #GVariant.
- *
- * All floating #GVariant instances passed through the #GType system are
- * consumed.
+ * GTlsClientConnection:accepted-cas:
  *
- * Note that callbacks in closures, and signal handlers
- * for signals of return type %G_TYPE_VARIANT, must never return floating
- * variants.
+ * A list of the distinguished names of the Certificate Authorities
+ * that the server will accept client certificates signed by. If the
+ * server requests a client certificate during the handshake, then
+ * this property will be set after the handshake completes.
  *
- * Note: GLib 2.24 did include a boxed type with this name. It was replaced
- * with this fundamental type in 2.26.
+ * Each item in the list is a #GByteArray which contains the complete
+ * subject DN of the certificate authority.
  *
- * Since: 2.26
+ * Since: 2.28
  */
 
 
 /**
- * G_TYPE_VARIANT_BUILDER:
+ * GTlsClientConnection:server-identity:
  *
- * The #GType for a boxed type holding a #GVariantBuilder.
+ * A #GSocketConnectable describing the identity of the server that
+ * is expected on the other end of the connection.
  *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_VARIANT_TYPE:
+ * If the %G_TLS_CERTIFICATE_BAD_IDENTITY flag is set in
+ * #GTlsClientConnection:validation-flags, this object will be used
+ * to determine the expected identify of the remote end of the
+ * connection; if #GTlsClientConnection:server-identity is not set,
+ * or does not match the identity presented by the server, then the
+ * %G_TLS_CERTIFICATE_BAD_IDENTITY validation will fail.
  *
- * The #GType for a boxed type holding a #GVariantType.
+ * In addition to its use in verifying the server certificate,
+ * this is also used to give a hint to the server about what
+ * certificate we expect, which is useful for servers that serve
+ * virtual hosts.
  *
- * Since: 2.24
+ * Since: 2.28
  */
 
 
 /**
- * G_UNICHAR_MAX_DECOMPOSITION_LENGTH:
- *
- * The maximum length (in codepoints) of a compatibility or canonical
- * decomposition of a single Unicode character.
+ * GTlsClientConnection:use-ssl3:
  *
- * This is as defined by Unicode 6.1.
+ * If %TRUE, tells the connection to use SSL 3.0 rather than trying
+ * to negotiate the best version of TLS or SSL to use. This can be
+ * used when talking to servers that don't implement version
+ * negotiation correctly and therefore refuse to handshake at all with
+ * a "modern" TLS handshake.
  *
- * Since: 2.32
+ * Since: 2.28
  */
 
 
 /**
- * G_UNICODE_COMBINING_MARK:
- *
- * Older name for %G_UNICODE_SPACING_MARK.
+ * GTlsClientConnection:validation-flags:
  *
- * Deprecated: 2.30: Use %G_UNICODE_SPACING_MARK.
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_PATH:
+ * What steps to perform when validating a certificate received from
+ * a server. Server certificates that fail to validate in all of the
+ * ways indicated here will be rejected unless the application
+ * overrides the default via #GTlsConnection::accept-certificate.
  *
- * Allowed characters in a path. Includes "!$&'()*+,;=:@/".
+ * Since: 2.28
  */
 
 
 /**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT:
+ * GTlsConnection:
  *
- * Allowed characters in path elements. Includes "!$&'()*+,;=:@".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO:
+ * Abstract base class for the backend-specific #GTlsClientConnection
+ * and #GTlsServerConnection types.
  *
- * Allowed characters in userinfo as defined in RFC 3986. Includes "!$&'()*+,;=:".
+ * Since: 2.28
  */
 
 
 /**
- * G_URI_RESERVED_CHARS_GENERIC_DELIMITERS:
+ * GTlsConnection::accept-certificate:
+ * @conn: a #GTlsConnection
+ * @peer_cert: the peer's #GTlsCertificate
+ * @errors: the problems with @peer_cert.
  *
- * Generic delimiters characters as defined in RFC 3986. Includes ":/?#[]@".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS:
+ * Emitted during the TLS handshake after the peer certificate has
+ * been received. You can examine @peer_cert's certification path by
+ * calling g_tls_certificate_get_issuer() on it.
  *
- * Subcomponent delimiter characters as defined in RFC 3986. Includes "!$&'()*+,;=".
- */
-
-
-/**
- * G_VALUE_HOLDS:
- * @value: A #GValue structure.
- * @type: A #GType value.
+ * For a client-side connection, @peer_cert is the server's
+ * certificate, and the signal will only be emitted if the
+ * certificate was not acceptable according to @conn's
+ * #GTlsClientConnection:validation_flags. If you would like the
+ * certificate to be accepted despite @errors, return %TRUE from the
+ * signal handler. Otherwise, if no handler accepts the certificate,
+ * the handshake will fail with %G_TLS_ERROR_BAD_CERTIFICATE.
  *
- * Checks if @value holds (or contains) a value of @type.
- * This macro will also check for @value != %NULL and issue a
- * warning if the check fails.
+ * For a server-side connection, @peer_cert is the certificate
+ * presented by the client, if this was requested via the server's
+ * #GTlsServerConnection:authentication_mode. On the server side,
+ * the signal is always emitted when the client presents a
+ * certificate, and the certificate will only be accepted if a
+ * handler returns %TRUE.
  *
- * Returns: %TRUE if @value holds the @type.
- */
-
-
-/**
- * G_VALUE_HOLDS_BOOLEAN:
- * @value: a valid #GValue structure
+ * Note that if this signal is emitted as part of asynchronous I/O
+ * in the main thread, then you should not attempt to interact with
+ * the user before returning from the signal handler. If you want to
+ * let the user decide whether or not to accept the certificate, you
+ * would have to return %FALSE from the signal handler on the first
+ * attempt, and then after the connection attempt returns a
+ * %G_TLS_ERROR_HANDSHAKE, you can interact with the user, and if
+ * the user decides to accept the certificate, remember that fact,
+ * create a new connection, and return %TRUE from the signal handler
+ * the next time.
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_BOOLEAN.
+ * If you are doing I/O in another thread, you do not
+ * need to worry about this, and can simply block in the signal
+ * handler until the UI thread returns an answer.
  *
- * Returns: %TRUE on success.
+ * Returns: %TRUE to accept @peer_cert (which will also immediately end the signal emission). %FALSE to allow the signal emission to continue, which will cause the handshake to fail if no one else overrides it.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_BOXED:
- * @value: a valid #GValue structure
+ * GTlsConnection:base-io-stream:
  *
- * Checks whether the given #GValue can hold values derived
- * from type %G_TYPE_BOXED.
+ * The #GIOStream that the connection wraps
  *
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_CHAR:
- * @value: a valid #GValue structure
+ * GTlsConnection:certificate:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_CHAR.
+ * The connection's certificate; see
+ * g_tls_connection_set_certificate().
  *
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_DOUBLE:
- * @value: a valid #GValue structure
+ * GTlsConnection:database:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_DOUBLE.
+ * The certificate database to use when verifying this TLS connection.
+ * If no cerificate database is set, then the default database will be
+ * used. See g_tls_backend_get_default_database().
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_ENUM:
- * @value: a valid #GValue structure
+ * GTlsConnection:interaction:
  *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_ENUM.
+ * A #GTlsInteraction object to be used when the connection or certificate
+ * database need to interact with the user. This will be used to prompt the
+ * user for passwords where necessary.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_FLAGS:
- * @value: a valid #GValue structure
+ * GTlsConnection:peer-certificate:
+ *
+ * The connection's peer's certificate, after the TLS handshake has
+ * completed and the certificate has been accepted. Note in
+ * particular that this is not yet set during the emission of
+ * #GTlsConnection::accept-certificate.
  *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_FLAGS.
+ * (You can watch for a #GObject::notify signal on this property to
+ * detect when a handshake has occurred.)
  *
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_FLOAT:
- * @value: a valid #GValue structure
+ * GTlsConnection:peer-certificate-errors:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_FLOAT.
+ * The errors noticed-and-ignored while verifying
+ * #GTlsConnection:peer-certificate. Normally this should be 0, but
+ * it may not be if #GTlsClientConnection:validation-flags is not
+ * %G_TLS_CERTIFICATE_VALIDATE_ALL, or if
+ * #GTlsConnection::accept-certificate overrode the default
+ * behavior.
  *
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_GTYPE:
- * @value: a valid #GValue structure
+ * GTlsConnection:rehandshake-mode:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_GTYPE.
+ * The rehandshaking mode. See
+ * g_tls_connection_set_rehandshake_mode().
  *
- * Since: 2.12
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_INT:
- * @value: a valid #GValue structure
+ * GTlsConnection:require-close-notify:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_INT.
+ * Whether or not proper TLS close notification is required.
+ * See g_tls_connection_set_require_close_notify().
  *
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_INT64:
- * @value: a valid #GValue structure
+ * GTlsConnection:use-system-certdb:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_INT64.
+ * Whether or not the system certificate database will be used to
+ * verify peer certificates. See
+ * g_tls_connection_set_use_system_certdb().
  *
- * Returns: %TRUE on success.
+ * Deprecated: 2.30: Use GTlsConnection:database instead
  */
 
 
 /**
- * G_VALUE_HOLDS_LONG:
- * @value: a valid #GValue structure
+ * GTlsDatabase:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_LONG.
+ * Abstract base class for the backend-specific database types.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_OBJECT:
- * @value: a valid #GValue structure
+ * GTlsFileDatabase:
  *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_OBJECT.
+ * Implemented by a #GTlsDatabase which allows you to load certificates
+ * from a file.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_PARAM:
- * @value: a valid #GValue structure
+ * GTlsFileDatabase:anchors:
  *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_PARAM.
+ * The path to a file containing PEM encoded certificate authority
+ * root anchors. The certificates in this file will be treated as
+ * root authorities for the purpose of verifying other certificates
+ * via the g_tls_database_verify_chain() operation.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_POINTER:
- * @value: a valid #GValue structure
+ * GTlsInteraction:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_POINTER.
+ * An object representing interaction that the TLS connection and database
+ * might have with the user.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_STRING:
- * @value: a valid #GValue structure
+ * GTlsInteractionClass:
+ * @ask_password: ask for a password synchronously. If the implementation returns %G_TLS_INTERACTION_HANDLED, then the password argument should have been filled in by using g_tls_password_set_value() or a similar function.
+ * @ask_password_async: ask for a password asynchronously.
+ * @ask_password_finish: complete operation to ask for a password asynchronously. If the implementation returns %G_TLS_INTERACTION_HANDLED, then the password argument of the async method should have been filled in by using g_tls_password_set_value() or a similar function.
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_STRING.
+ * The class for #GTlsInteraction. Derived classes implement the various
+ * virtual interaction methods to handle TLS interactions.
  *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UCHAR:
- * @value: a valid #GValue structure
+ * Derived classes can choose to implement whichever interactions methods they'd
+ * like to support by overriding those virtual methods in their class
+ * initialization function. If a derived class implements an async method,
+ * it must also implement the corresponding finish method.
+ *
+ * The synchronous interaction methods should implement to display modal dialogs,
+ * and the asynchronous methods to display modeless dialogs.
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UCHAR.
+ * If the user cancels an interaction, then the result should be
+ * %G_TLS_INTERACTION_FAILED and the error should be set with a domain of
+ * %G_IO_ERROR and code of %G_IO_ERROR_CANCELLED.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_UINT:
- * @value: a valid #GValue structure
+ * GTlsPassword:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UINT.
+ * An abstract interface representing a password used in TLS. Often used in
+ * user interaction such as unlocking a key storage token.
  *
- * Returns: %TRUE on success.
+ * Since: 2.30
  */
 
 
 /**
- * G_VALUE_HOLDS_UINT64:
- * @value: a valid #GValue structure
+ * GTlsServerConnection:authentication-mode:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UINT64.
+ * The #GTlsAuthenticationMode for the server. This can be changed
+ * before calling g_tls_connection_handshake() if you want to
+ * rehandshake with a different mode from the initial handshake.
  *
- * Returns: %TRUE on success.
+ * Since: 2.28
  */
 
 
 /**
- * G_VALUE_HOLDS_ULONG:
- * @value: a valid #GValue structure
+ * GUnixCredentialsMessage:credentials:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_ULONG.
+ * The credentials stored in the message.
  *
- * Returns: %TRUE on success.
+ * Since: 2.26
  */
 
 
 /**
- * G_VALUE_HOLDS_VARIANT:
- * @value: a valid #GValue structure
+ * GUnixInputStream:close-fd:
  *
- * Checks whether the given #GValue can hold values of type %G_TYPE_VARIANT.
+ * Whether to close the file descriptor when the stream is closed.
  *
- * Returns: %TRUE on success.
- * Since: 2.26
+ * Since: 2.20
  */
 
 
 /**
- * G_VALUE_INIT:
- *
- * A #GValue must be initialized before it can be used.
- * This macro can be used as initializer instead of an explicit
- * <literal>{ 0 }</literal> when declaring a variable,
- * but it cannot be assigned to a variable.
+ * GUnixInputStream:fd:
  *
- * |[
- *   GValue value = G_VALUE_INIT;
- * ]|
+ * The file descriptor that the stream reads from.
  *
- * Since: 2.30
+ * Since: 2.20
  */
 
 
 /**
- * G_VALUE_NOCOPY_CONTENTS:
+ * GUnixMountMonitor::mountpoints-changed:
+ * @monitor: the object on which the signal is emitted
  *
- * If passed to G_VALUE_COLLECT(), allocated data won't be copied
- * but used verbatim. This does not affect ref-counted types like
- * objects.
+ * Emitted when the unix mount points have changed.
  */
 
 
 /**
- * G_VALUE_TYPE:
- * @value: A #GValue structure.
- *
- * Get the type identifier of @value.
+ * GUnixMountMonitor::mounts-changed:
+ * @monitor: the object on which the signal is emitted
  *
- * Returns: the #GType.
+ * Emitted when the unix mounts have changed.
  */
 
 
 /**
- * G_VALUE_TYPE_NAME:
- * @value: A #GValue structure.
+ * GUnixOutputStream:close-fd:
  *
- * Gets the the type name of @value.
+ * Whether to close the file descriptor when the stream is closed.
  *
- * Returns: the type name.
+ * Since: 2.20
  */
 
 
 /**
- * G_VARIANT_TYPE:
- * @type_string: a well-formed #GVariantType type string
- *
- * Converts a string to a const #GVariantType.  Depending on the
- * current debugging level, this function may perform a runtime check
- * to ensure that @string is a valid GVariant type string.
+ * GUnixOutputStream:fd:
  *
- * It is always a programmer error to use this macro with an invalid
- * type string. If in doubt, use g_variant_type_string_is_valid() to
- * check if the string is valid.
+ * The file descriptor that the stream writes to.
  *
- * Since 2.24
+ * Since: 2.20
  */
 
 
 /**
- * G_VARIANT_TYPE_ANY:
+ * GUnixSocketAddress:
  *
- * An indefinite type that is a supertype of every type (including
- * itself).
+ * A UNIX-domain (local) socket address, corresponding to a
+ * <type>struct sockaddr_un</type>.
  */
 
 
 /**
- * G_VARIANT_TYPE_ARRAY:
+ * GUnixSocketAddress:abstract:
  *
- * An indefinite type that is a supertype of every array type.
- */
-
-
-/**
- * G_VARIANT_TYPE_BASIC:
+ * Whether or not this is an abstract address
  *
- * An indefinite type that is a supertype of every basic (ie:
- * non-container) type.
+ * Deprecated: Use #GUnixSocketAddress:address-type, which distinguishes between zero-padded and non-zero-padded abstract addresses.
  */
 
 
 /**
- * G_VARIANT_TYPE_BOOLEAN:
+ * GVolume::changed:
  *
- * The type of a value that can be either %TRUE or %FALSE.
+ * Emitted when the volume has been changed.
  */
 
 
 /**
- * G_VARIANT_TYPE_BYTE:
+ * GVolume::removed:
  *
- * The type of an integer value that can range from 0 to 255.
+ * This signal is emitted when the #GVolume have been removed. If
+ * the recipient is holding references to the object they should
+ * release them so the object can be finalized.
  */
 
 
 /**
- * G_VARIANT_TYPE_BYTESTRING:
+ * GVolumeMonitor::drive-changed:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @drive: the drive that changed
  *
- * The type of an array of bytes.  This type is commonly used to pass
- * around strings that may not be valid utf8.  In that case, the
- * convention is that the nul terminator character should be included as
- * the last character in the array.
+ * Emitted when a drive changes.
  */
 
 
 /**
- * G_VARIANT_TYPE_BYTESTRING_ARRAY:
+ * GVolumeMonitor::drive-connected:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @drive: a #GDrive that was connected.
  *
- * The type of an array of byte strings (an array of arrays of bytes).
+ * Emitted when a drive is connected to the system.
  */
 
 
 /**
- * G_VARIANT_TYPE_DICTIONARY:
+ * GVolumeMonitor::drive-disconnected:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @drive: a #GDrive that was disconnected.
  *
- * An indefinite type that is a supertype of every dictionary type --
- * that is, any array type that has an element type equal to any
- * dictionary entry type.
+ * Emitted when a drive is disconnected from the system.
  */
 
 
 /**
- * G_VARIANT_TYPE_DICT_ENTRY:
+ * GVolumeMonitor::drive-eject-button:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @drive: the drive where the eject button was pressed
  *
- * An indefinite type that is a supertype of every dictionary entry
- * type.
- */
-
-
-/**
- * G_VARIANT_TYPE_DOUBLE:
+ * Emitted when the eject button is pressed on @drive.
  *
- * The type of a double precision IEEE754 floating point number.
- * These guys go up to about 1.80e308 (plus and minus) but miss out on
- * some numbers in between.  In any case, that's far greater than the
- * estimated number of fundamental particles in the observable
- * universe.
+ * Since: 2.18
  */
 
 
 /**
- * G_VARIANT_TYPE_HANDLE:
+ * GVolumeMonitor::drive-stop-button:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @drive: the drive where the stop button was pressed
  *
- * The type of a 32bit signed integer value, that by convention, is used
- * as an index into an array of file descriptors that are sent alongside
- * a D-Bus message.
+ * Emitted when the stop button is pressed on @drive.
  *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.
+ * Since: 2.22
  */
 
 
 /**
- * G_VARIANT_TYPE_INT16:
+ * GVolumeMonitor::mount-added:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @mount: a #GMount that was added.
  *
- * The type of an integer value that can range from -32768 to 32767.
+ * Emitted when a mount is added.
  */
 
 
 /**
- * G_VARIANT_TYPE_INT32:
+ * GVolumeMonitor::mount-changed:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @mount: a #GMount that changed.
  *
- * The type of an integer value that can range from -2147483648 to
- * 2147483647.
+ * Emitted when a mount changes.
  */
 
 
 /**
- * G_VARIANT_TYPE_INT64:
+ * GVolumeMonitor::mount-pre-unmount:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @mount: a #GMount that is being unmounted.
  *
- * The type of an integer value that can range from
- * -9223372036854775808 to 9223372036854775807.
+ * Emitted when a mount is about to be removed.
  */
 
 
 /**
- * G_VARIANT_TYPE_MAYBE:
+ * GVolumeMonitor::mount-removed:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @mount: a #GMount that was removed.
  *
- * An indefinite type that is a supertype of every maybe type.
+ * Emitted when a mount is removed.
  */
 
 
 /**
- * G_VARIANT_TYPE_OBJECT_PATH:
- *
- * The type of a D-Bus object reference.  These are strings of a
- * specific format used to identify objects at a given destination on
- * the bus.
+ * GVolumeMonitor::volume-added:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @volume: a #GVolume that was added.
  *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.  If you are, then the D-Bus specification contains a
- * precise description of valid object paths.
+ * Emitted when a mountable volume is added to the system.
  */
 
 
 /**
- * G_VARIANT_TYPE_OBJECT_PATH_ARRAY:
+ * GVolumeMonitor::volume-changed:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @volume: a #GVolume that changed.
  *
- * The type of an array of object paths.
+ * Emitted when mountable volume is changed.
  */
 
 
 /**
- * G_VARIANT_TYPE_SIGNATURE:
- *
- * The type of a D-Bus type signature.  These are strings of a specific
- * format used as type signatures for D-Bus methods and messages.
+ * GVolumeMonitor::volume-removed:
+ * @volume_monitor: The volume monitor emitting the signal.
+ * @volume: a #GVolume that was removed.
  *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.  If you are, then the D-Bus specification contains a
- * precise description of valid signature strings.
+ * Emitted when a mountable volume is removed from the system.
  */
 
 
 /**
- * G_VARIANT_TYPE_STRING:
+ * GWin32InputStream:close-handle:
  *
- * The type of a string.  "" is a string.  %NULL is not a string.
- */
-
-
-/**
- * G_VARIANT_TYPE_STRING_ARRAY:
+ * Whether to close the file handle when the stream is closed.
  *
- * The type of an array of strings.
+ * Since: 2.26
  */
 
 
 /**
- * G_VARIANT_TYPE_TUPLE:
+ * GWin32InputStream:handle:
  *
- * An indefinite type that is a supertype of every tuple type,
- * regardless of the number of items in the tuple.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT16:
+ * The handle that the stream reads from.
  *
- * The type of an integer value that can range from 0 to 65535.
- * There were about this many people living in Toronto in the 1870s.
+ * Since: 2.26
  */
 
 
 /**
- * G_VARIANT_TYPE_UINT32:
+ * GWin32OutputStream:close-handle:
  *
- * The type of an integer value that can range from 0 to 4294967295.
- * That's one number for everyone who was around in the late 1970s.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT64:
+ * Whether to close the file handle when the stream is closed.
  *
- * The type of an integer value that can range from 0 to
- * 18446744073709551616.  That's a really big number, but a Rubik's
- * cube can have a bit more than twice as many possible positions.
+ * Since: 2.26
  */
 
 
 /**
- * G_VARIANT_TYPE_UNIT:
+ * GWin32OutputStream:handle:
+ *
+ * The file handle that the stream writes to.
  *
- * The empty tuple type.  Has only one instance.  Known also as "triv"
- * or "void".
+ * Since: 2.26
  */
 
 
 /**
- * G_VARIANT_TYPE_VARDICT:
- *
- * The type of a dictionary mapping strings to variants (the ubiquitous
- * "a{sv}" type).
+ * GZlibCompressor:
  *
- * Since: 2.30
+ * Zlib decompression
  */
 
 
 /**
- * G_VARIANT_TYPE_VARIANT:
+ * GZlibCompressor:file-info:
+ *
+ * If set to a non-%NULL #GFileInfo object, and #GZlibCompressor:format is
+ * %G_ZLIB_COMPRESSOR_FORMAT_GZIP, the compressor will write the file name
+ * and modification time from the file info to the the GZIP header.
  *
- * The type of a box that contains any other value (including another
- * variant).
+ * Since: 2.26
  */
 
 
 /**
- * G_VFS_EXTENSION_POINT_NAME:
+ * GZlibDecompressor:
  *
- * Extension point for #GVfs functionality.
- * See <link linkend="extending-gio">Extending GIO</link>.
+ * Zlib decompression
  */
 
 
 /**
- * G_VOLUME_IDENTIFIER_KIND_CLASS:
- *
- * The string used to obtain the volume <emphasis>class</emphasis>
- * with g_volume_get_identifier().
+ * GZlibDecompressor:file-info:
  *
- * Known volume classes include <literal>device</literal> and
- * <literal>network</literal>. Other classes may be added in the
- * future.
+ * A #GFileInfo containing the information found in the GZIP header
+ * of the data stream processed, or %NULL if the header was not yet
+ * fully processed, is not present at all, or the compressor's
+ * #GZlibDecompressor:format property is not %G_ZLIB_COMPRESSOR_FORMAT_GZIP.
  *
- * This is intended to be used by applications to classify #GVolume
- * instances into different sections - for example a file manager or
- * file chooser can use this information to show
- * <literal>network</literal> volumes under a "Network" heading and
- * <literal>device</literal> volumes under a "Devices" heading.
+ * Since: 2.26
  */
 
 
 /**
- * G_VOLUME_IDENTIFIER_KIND_HAL_UDI:
+ * G_TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT:
  *
- * The string used to obtain a Hal UDI with g_volume_get_identifier().
+ * The purpose used to verify the client certificate in a TLS connection.
+ * Used by TLS servers.
  */
 
 
 /**
- * G_VOLUME_IDENTIFIER_KIND_LABEL:
+ * G_TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER:
  *
- * The string used to obtain a filesystem label with g_volume_get_identifier().
+ * The purpose used to verify the server certificate in a TLS connection. This
+ * is the most common purpose in use. Used by TLS clients.
  */
 
 
 /**
- * G_VOLUME_IDENTIFIER_KIND_NFS_MOUNT:
+ * G_TYPE_SETTINGS_SCHEMA:
  *
- * The string used to obtain a NFS mount with g_volume_get_identifier().
- */
-
-
-/**
- * G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE:
+ * A boxed #GType corresponding to #GSettingsSchema.
  *
- * The string used to obtain a Unix device path with g_volume_get_identifier().
+ * Since: 2.32
  */
 
 
 /**
- * G_VOLUME_IDENTIFIER_KIND_UUID:
+ * G_TYPE_SETTINGS_SCHEMA_SOURCE:
  *
- * The string used to obtain a UUID with g_volume_get_identifier().
- */
-
-
-/**
- * G_VOLUME_MONITOR_EXTENSION_POINT_NAME:
+ * A boxed #GType corresponding to #GSettingsSchemaSource.
  *
- * Extension point for volume monitor functionality.
- * See <link linkend="extending-gio">Extending GIO</link>.
+ * Since: 2.32
  */
 
 
@@ -14220,7 +5085,7 @@
  * @short_description: Base class for implementing streaming input
  * @include: gio/gio.h
  *
- * GInputStream has functions to read from a stream (g_input_stream_read()),
+ * #GInputStream has functions to read from a stream (g_input_stream_read()),
  * to close a stream (g_input_stream_close()) and to skip some content
  * (g_input_stream_skip()).
  *
@@ -14607,7 +5472,7 @@
  * @short_description: Base class for implementing streaming output
  * @include: gio/gio.h
  *
- * GOutputStream has functions to write to a stream (g_output_stream_write()),
+ * #GOutputStream has functions to write to a stream (g_output_stream_write()),
  * to close a stream (g_output_stream_close()) and to flush pending writes
  * (g_output_stream_flush()).
  *
@@ -16733,46 +7598,6 @@
 
 
 /**
- * g_alloca:
- * @size: number of bytes to allocate.
- *
- * Allocates @size bytes on the stack; these bytes will be freed when the current
- * stack frame is cleaned up. This macro essentially just wraps the alloca()
- * function present on most UNIX variants.
- * Thus it provides the same advantages and pitfalls as alloca():
- * <variablelist>
- *   <varlistentry><term></term><listitem><para>
- *     + alloca() is very fast, as on most systems it's implemented by just adjusting
- *     the stack pointer register.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     + It doesn't cause any memory fragmentation, within its scope, separate alloca()
- *     blocks just build up and are released together at function end.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Allocation sizes have to fit into the current stack frame. For instance in a
- *       threaded environment on Linux, the per-thread stack size is limited to 2 Megabytes,
- *       so be sparse with alloca() uses.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Allocation failure due to insufficient stack space is not indicated with a %NULL
- *       return like e.g. with malloc(). Instead, most systems probably handle it the same
- *       way as out of stack space situations from infinite function recursion, i.e.
- *       with a segmentation fault.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Special care has to be taken when mixing alloca() with GNU C variable sized arrays.
- *       Stack space allocated with alloca() in the same scope as a variable sized array
- *       will be freed together with the variable sized array upon exit of that scope, and
- *       not upon exit of the enclosing function scope.
- *   </para></listitem></varlistentry>
- * </variablelist>
- *
- * Returns: space for @size bytes, allocated on the stack
- */
-
-
-/**
  * g_app_info_add_supports_type:
  * @appinfo: a #GAppInfo.
  * @content_type: a string.
@@ -28681,7 +19506,7 @@
  * 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.
  * Cancelling a close will still leave the stream closed, but some streams
@@ -28763,15 +19588,15 @@
  * 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 @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.
  *
- * Returns: Number of bytes read, or -1 on error
+ * Returns: Number of bytes read, or -1 on error, or 0 on end of file.
  */
 
 
@@ -28846,7 +19671,7 @@
  *
  * Finishes an asynchronous stream read operation.
  *
- * Returns: number of bytes read in, or -1 on error.
+ * Returns: number of bytes read in, or -1 on error, or 0 on end of file.
  */
 
 
@@ -29092,16 +19917,6 @@
 
 
 /**
- * g_io_module_load:
- * @module: a #GIOModule.
- *
- * Required API for GIO modules to implement.
- * This function is ran after the module has been loaded into GIO,
- * to initialize the module.
- */
-
-
-/**
  * g_io_module_new:
  * @filename: filename of the shared library module.
  *
@@ -29113,37 +19928,6 @@
 
 
 /**
- * g_io_module_query:
- *
- * Optional API for GIO modules to implement.
- *
- * Should return a list of all the extension points that may be
- * implemented in this module.
- *
- * This method will not be called in normal use, however it may be
- * called when probing existing modules and recording which extension
- * points that this model is used for. This means we won't have to
- * load and initialze this module unless its needed.
- *
- * If this function is not implemented by the module the module will
- * always be loaded, initialized and then unloaded on application startup
- * so that it can register its extension points during init.
- *
- * Note that a module need not actually implement all the extension points
- * that g_io_module_query returns, since the exact list of extension may
- * depend on runtime issues. However all extension points actually implemented
- * must be returned by g_io_module_query() (if defined).
- *
- * When installing a module that implements g_io_module_query you must
- * run gio-querymodules in order to build the cache files required for
- * lazy loading.
- *
- * Returns: (transfer full): A %NULL-terminated array of strings, listing the supported extension points of the module. The array must be suitable for freeing with g_strfreev().
- * Since: 2.24
- */
-
-
-/**
  * g_io_module_scope_block:
  * @scope: a module loading scope
  * @basename: the basename to block
@@ -29183,16 +19967,6 @@
 
 
 /**
- * g_io_module_unload:
- * @module: a #GIOModule.
- *
- * Required API for GIO modules to implement.
- * This function is ran when the module is being unloaded from GIO,
- * to finalize the module.
- */
-
-
-/**
  * g_io_modules_load_all_in_directory:
  * @dirname: pathname for a directory containing modules to load.
  *
@@ -29618,91 +20392,6 @@
 
 
 /**
- * g_main_destroy:
- * @loop: a #GMainLoop
- *
- * Frees the memory allocated for the #GMainLoop.
- *
- * Deprecated: 2.2: Use g_main_loop_unref() instead
- */
-
-
-/**
- * g_main_is_running:
- * @loop: a #GMainLoop
- *
- * Checks if the main loop is running.
- *
- * Returns: %TRUE if the main loop is running
- * Deprecated: 2.2: Use g_main_loop_is_running() instead
- */
-
-
-/**
- * g_main_iteration:
- * @may_block: set to %TRUE if it should block (i.e. wait) until an event source becomes ready. It will return after an event source has been processed. If set to %FALSE it will return immediately if no event source is ready to be processed.
- *
- * Runs a single iteration for the default #GMainContext.
- *
- * Returns: %TRUE if more events are pending.
- * Deprecated: 2.2: Use g_main_context_iteration() instead.
- */
-
-
-/**
- * g_main_new:
- * @is_running: set to %TRUE to indicate that the loop is running. This is not very important since calling g_main_run() will set this to %TRUE anyway.
- *
- * Creates a new #GMainLoop for th default main context.
- *
- * Returns: a new #GMainLoop
- * Deprecated: 2.2: Use g_main_loop_new() instead
- */
-
-
-/**
- * g_main_pending:
- *
- * Checks if any events are pending for the default #GMainContext
- * (i.e. ready to be processed).
- *
- * Returns: %TRUE if any events are pending.  Deprected: 2.2: Use g_main_context_pending() instead.
- */
-
-
-/**
- * g_main_quit:
- * @loop: a #GMainLoop
- *
- * Stops the #GMainLoop.
- * If g_main_run() was called to run the #GMainLoop, it will now return.
- *
- * Deprecated: 2.2: Use g_main_loop_quit() instead
- */
-
-
-/**
- * g_main_run:
- * @loop: a #GMainLoop
- *
- * Runs a main loop until it stops running.
- *
- * Deprecated: 2.2: Use g_main_loop_run() instead
- */
-
-
-/**
- * g_main_set_poll_func:
- * @func: the function to call to poll all file descriptors
- *
- * Sets the function to use for the handle polling of file descriptors
- * for the default main context.
- *
- * Deprecated: 2.2: Use g_main_context_set_poll_func() again
- */
-
-
-/**
  * g_memory_input_stream_add_data:
  * @stream: a #GMemoryInputStream
  * @data: (array length=len) (element-type guint8) (transfer full): input data
@@ -31512,152 +22201,6 @@
 
 
 /**
- * g_new:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Allocates @n_structs elements of type @struct_type.
- * The returned pointer is cast to a pointer to the given type.
- * If @n_structs is 0 it returns %NULL.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Since the returned pointer is already casted to the right type,
- * it is normally unnecessary to cast it explicitly, and doing
- * so might hide memory allocation errors.
- *
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_new0:
- * @struct_type: the type of the elements to allocate.
- * @n_structs: the number of elements to allocate.
- *
- * Allocates @n_structs elements of type @struct_type, initialized to 0's.
- * The returned pointer is cast to a pointer to the given type.
- * If @n_structs is 0 it returns %NULL.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Since the returned pointer is already casted to the right type,
- * it is normally unnecessary to cast it explicitly, and doing
- * so might hide memory allocation errors.
- *
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type.
- */
-
-
-/**
- * g_newa:
- * @struct_type: Type of memory chunks to be allocated
- * @n_structs: Number of chunks to be allocated
- *
- * Wraps g_alloca() in a more typesafe manner.
- *
- * Returns: Pointer to stack space for @n_structs chunks of type @struct_type
- */
-
-
-/**
- * g_node_append:
- * @parent: the #GNode to place the new #GNode under
- * @node: the #GNode to insert
- *
- * Inserts a #GNode as the last child of the given parent.
- *
- * Returns: the inserted #GNode
- */
-
-
-/**
- * g_node_append_data:
- * @parent: the #GNode to place the new #GNode under
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode as the last child of the given parent.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_first_child:
- * @node: a #GNode
- *
- * Gets the first child of a #GNode.
- *
- * Returns: the first child of @node, or %NULL if @node is %NULL or has no children
- */
-
-
-/**
- * g_node_insert_data:
- * @parent: the #GNode to place the new #GNode under
- * @position: the position to place the new #GNode at. If position is -1, the new #GNode is inserted as the last child of @parent
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode at the given position.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_insert_data_after:
- * @parent: the #GNode to place the new #GNode under
- * @sibling: the sibling #GNode to place the new #GNode after
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode after the given sibling.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_insert_data_before:
- * @parent: the #GNode to place the new #GNode under
- * @sibling: the sibling #GNode to place the new #GNode before
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode before the given sibling.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_next_sibling:
- * @node: a #GNode
- *
- * Gets the next sibling of a #GNode.
- *
- * Returns: the next sibling of @node, or %NULL if @node is the last node or %NULL
- */
-
-
-/**
- * g_node_prepend_data:
- * @parent: the #GNode to place the new #GNode under
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode as the first child of the given parent.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_prev_sibling:
- * @node: a #GNode
- *
- * Gets the previous sibling of a #GNode.
- *
- * Returns: the previous sibling of @node, or %NULL if @node is the first node or %NULL
- */
-
-
-/**
  * g_null_settings_backend_new:
  *
  * Creates a readonly #GSettingsBackend.
@@ -31706,7 +22249,7 @@
  * 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
+ * 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
@@ -31915,7 +22458,7 @@
  * 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
+ * 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
@@ -31946,7 +22489,7 @@
  * 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
+ * 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.
  *
@@ -32640,21 +23183,6 @@
 
 
 /**
- * g_renew:
- * @struct_type: the type of the elements to allocate
- * @mem: the currently allocated memory
- * @n_structs: the number of elements to allocate
- *
- * Reallocates the memory pointed to by @mem, so that it now has space for
- * @n_structs elements of type @struct_type. It returns the new address of
- * the memory, which may have been moved.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_resolver_error_quark:
  *
  * Gets the #GResolver Error Quark.
@@ -34486,100 +25014,6 @@
 
 
 /**
- * g_signal_connect:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The handler will be called before the default handler of the signal.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_connect_after:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The handler will be called after the default handler of the signal.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_connect_swapped:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The instance on which the signal is emitted and @data will be swapped when
- * calling the handler.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_handlers_block_by_func:
- * @instance: The instance to block handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Blocks all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
- * g_signal_handlers_disconnect_by_data:
- * @instance: The instance to remove handlers from
- * @data: the closure data of the handlers' closures
- *
- * Disconnects all handlers on an instance that match @data.
- *
- * Returns: The number of handlers that matched.
- * Since: 2.32
- */
-
-
-/**
- * g_signal_handlers_disconnect_by_func:
- * @instance: The instance to remove handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Disconnects all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
- * g_signal_handlers_unblock_by_func:
- * @instance: The instance to unblock handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Unblocks all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
  * g_simple_action_group_add_entries:
  * @simple: a #GSimpleActionGroup
  * @entries: (array length=n_entries): a pointer to the first item in an array of #GActionEntry structs
@@ -38758,54 +29192,6 @@
 
 
 /**
- * g_try_new:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Attempts to allocate @n_structs elements of type @struct_type, and returns
- * %NULL on failure. Contrast with g_new(), which aborts the program on failure.
- * The returned pointer is cast to a pointer to the given type.
- * The function returns %NULL when @n_structs is 0 of if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_try_new0:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Attempts to allocate @n_structs elements of type @struct_type, initialized
- * to 0's, and returns %NULL on failure. Contrast with g_new0(), which aborts
- * the program on failure.
- * The returned pointer is cast to a pointer to the given type.
- * The function returns %NULL when @n_structs is 0 of if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_try_renew:
- * @struct_type: the type of the elements to allocate
- * @mem: the currently allocated memory
- * @n_structs: the number of elements to allocate
- *
- * Attempts to reallocate the memory pointed to by @mem, so that it now has
- * space for @n_structs elements of type @struct_type, and returns %NULL on
- * failure. Contrast with g_renew(), which aborts the program on failure.
- * It returns the new address of the memory, which may have been moved.
- * The function returns %NULL if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_unix_connection_receive_credentials:
  * @connection: A #GUnixConnection.
  * @cancellable: (allow-none): A #GCancellable or %NULL.
@@ -39777,19 +30163,6 @@
 
 
 /**
- * g_utf8_next_char:
- * @p: Pointer to the start of a valid UTF-8 character
- *
- * Skips to the next character in a UTF-8 string. The string must be
- * valid; this macro is as fast as possible, and has no error-checking.
- * You would use this macro to iterate over a string character by
- * character. The macro returns the start of the next UTF-8 character.
- * Before using this macro, use g_utf8_validate() to validate strings
- * that may contain invalid UTF-8.
- */
-
-
-/**
  * g_vfs_get_default:
  *
  * Gets the default #GVfs for the system.
@@ -40229,25 +30602,6 @@
 
 
 /**
- * g_warn_if_fail:
- * @expr: the expression to check
- *
- * Logs a warning if the expression is not true.
- *
- * Since: 2.16
- */
-
-
-/**
- * g_warn_if_reached:
- *
- * Logs a critical warning.
- *
- * Since: 2.16
- */
-
-
-/**
  * g_win32_input_stream_get_close_handle:
  * @stream: a #GWin32InputStream
  *
@@ -40417,13 +30771,6 @@
 
 
 /**
- * gchararray:
- *
- * A C representable type name for #G_TYPE_STRING.
- */
-
-
-/**
  * get_all_desktop_entries_for_mime_type:
  * @mime_type: a mime type.
  * @except: NULL or a strv list
@@ -40440,53 +30787,6 @@
 
 
 /**
- * gunichar:
- *
- * A type which can hold any UTF-32 or UCS-4 character code,
- * also known as a Unicode code point.
- *
- * If you want to produce the UTF-8 representation of a #gunichar,
- * use g_ucs4_to_utf8(). See also g_utf8_to_ucs4() for the reverse
- * process.
- *
- * To print/scan values of this type as integer, use
- * %G_GINT32_MODIFIER and/or %G_GUINT32_FORMAT.
- *
- * The notation to express a Unicode code point in running text is
- * as a hexadecimal number with four to six digits and uppercase
- * letters, prefixed by the string "U+". Leading zeros are omitted,
- * unless the code point would have fewer than four hexadecimal digits.
- * For example, "U+0041 LATIN CAPITAL LETTER A". To print a code point
- * in the U+-notation, use the format string "U+\%04"G_GINT32_FORMAT"X".
- * To scan, use the format string "U+\%06"G_GINT32_FORMAT"X".
- *
- * |[
- * gunichar c;
- * sscanf ("U+0041", "U+%06"G_GINT32_FORMAT"X", &amp;c)
- * g_print ("Read U+%04"G_GINT32_FORMAT"X", c);
- * ]|
- */
-
-
-/**
- * gunichar2:
- *
- * A type which can hold any UTF-16 code
- * point<footnote id="utf16_surrogate_pairs">UTF-16 also has so called
- * <firstterm>surrogate pairs</firstterm> to encode characters beyond
- * the BMP as pairs of 16bit numbers. Surrogate pairs cannot be stored
- * in a single gunichar2 field, but all GLib functions accepting gunichar2
- * arrays will correctly interpret surrogate pairs.</footnote>.
- *
- * To print/scan values of this type to/from text you need to convert
- * to/from UTF-8, using g_utf16_to_utf8()/g_utf8_to_utf16().
- *
- * To print/scan values of this type as integer, use
- * %G_GINT16_MODIFIER and/or %G_GUINT16_FORMAT.
- */
-
-
-/**
  * mime_info_cache_reload:
  * @dir: directory path which needs reloading.
  *
diff --git a/gir/glib-2.0.c b/gir/glib-2.0.c
index 13a9eee..8bd2c0b 100644
--- a/gir/glib-2.0.c
+++ b/gir/glib-2.0.c
@@ -85,118 +85,6 @@
 
 
 /**
- * GBaseFinalizeFunc:
- * @g_class: The #GTypeClass structure to finalize.
- *
- * A callback function used by the type system to finalize those portions
- * of a derived types class structure that were setup from the corresponding
- * GBaseInitFunc() function. Class finalization basically works the inverse
- * way in which class intialization is performed.
- * See GClassInitFunc() for a discussion of the class intialization process.
- */
-
-
-/**
- * GBaseInitFunc:
- * @g_class: The #GTypeClass structure to initialize.
- *
- * A callback function used by the type system to do base initialization
- * of the class structures of derived types. It is called as part of the
- * initialization process of all derived classes and should reallocate
- * or reset all dynamic class members copied over from the parent class.
- * For example, class members (such as strings) that are not sufficiently
- * handled by a plain memory copy of the parent class into the derived class
- * have to be altered. See GClassInitFunc() for a discussion of the class
- * intialization process.
- */
-
-
-/**
- * GBinding:
- *
- * <structname>GBinding</structname> is an opaque structure whose members
- * cannot be accessed directly.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBindingFlags:
- * @G_BINDING_DEFAULT: The default binding; if the source property changes, the target property is updated with its value.
- * @G_BINDING_BIDIRECTIONAL: Bidirectional binding; if either the property of the source or the property of the target changes, the other is updated.
- * @G_BINDING_SYNC_CREATE: Synchronize the values of the source and target properties when creating the binding; the direction of the synchronization is always from the source to the target.
- * @G_BINDING_INVERT_BOOLEAN: If the two properties being bound are booleans, setting one to %TRUE will result in the other being set to %FALSE and vice versa. This flag will only work for boolean properties, and cannot be used when passing custom transformation functions to g_object_bind_property_full().
- *
- * Flags to be passed to g_object_bind_property() or
- * g_object_bind_property_full().
- *
- * This enumeration can be extended at later date.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBindingTransformFunc:
- * @binding: a #GBinding
- * @source_value: the value of the source property
- * @target_value: the value of the target property
- * @user_data: data passed to the transform function
- *
- * A function to be called to transform the source property of @source
- * from @source_value into the target property of @target
- * using @target_value.
- *
- * Returns: %TRUE if the transformation was successful, and %FALSE otherwise
- * Since: 2.26
- */
-
-
-/**
- * GBookmarkFile:
- *
- * The <structname>GBookmarkFile</structname> struct contains only
- * private data and should not be directly accessed.
- */
-
-
-/**
- * GBookmarkFileError:
- * @G_BOOKMARK_FILE_ERROR_INVALID_URI: URI was ill-formed
- * @G_BOOKMARK_FILE_ERROR_INVALID_VALUE: a requested field was not found
- * @G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED: a requested application did not register a bookmark
- * @G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND: a requested URI was not found
- * @G_BOOKMARK_FILE_ERROR_READ: document was ill formed
- * @G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING: the text being parsed was in an unknown encoding
- * @G_BOOKMARK_FILE_ERROR_WRITE: an error occurred while writing
- * @G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND: requested file was not found
- *
- * Error codes returned by bookmark file parsing.
- */
-
-
-/**
- * GBoxedCopyFunc:
- * @boxed: The boxed structure to be copied.
- *
- * This function is provided by the user and should produce a copy
- * of the passed in boxed structure.
- *
- * Returns: The newly created copy of the boxed structure.
- */
-
-
-/**
- * GBoxedFreeFunc:
- * @boxed: The boxed structure to be freed.
- *
- * This function is provided by the user and should free the boxed
- * structure passed.
- */
-
-
-/**
  * GByteArray:
  * @data: a pointer to the element data. The data may be moved as elements are added to the #GByteArray.
  * @len: the number of elements in the #GByteArray.
@@ -239,216 +127,6 @@
 
 
 /**
- * GCClosure:
- * @closure: the #GClosure
- * @callback: the callback function
- *
- * A #GCClosure is a specialization of #GClosure for C function callbacks.
- */
-
-
-/**
- * GCallback:
- *
- * The type used for callback functions in structure definitions and function
- * signatures. This doesn't mean that all callback functions must take no
- * parameters and return void. The required signature of a callback function
- * is determined by the context in which is used (e.g. the signal to which it
- * is connected). Use G_CALLBACK() to cast the callback function to a #GCallback.
- */
-
-
-/**
- * GChecksum:
- *
- * An opaque structure representing a checksumming operation.
- * To create a new GChecksum, use g_checksum_new(). To free
- * a GChecksum, use g_checksum_free().
- *
- * Since: 2.16
- */
-
-
-/**
- * GChecksumType:
- * @G_CHECKSUM_MD5: Use the MD5 hashing algorithm
- * @G_CHECKSUM_SHA1: Use the SHA-1 hashing algorithm
- * @G_CHECKSUM_SHA256: Use the SHA-256 hashing algorithm
- *
- * The hashing algorithm to be used by #GChecksum when performing the
- * digest of some data.
- *
- * Note that the #GChecksumType enumeration may be extended at a later
- * date to include new hashing algorithm types.
- *
- * Since: 2.16
- */
-
-
-/**
- * GChildWatchFunc:
- * @pid: the process id of the child process
- * @status: Status information about the child process, see waitpid(2) for more information about this field
- * @user_data: user data passed to g_child_watch_add()
- *
- * The type of functions to be called when a child exists.
- */
-
-
-/**
- * GClassFinalizeFunc:
- * @g_class: The #GTypeClass structure to finalize.
- * @class_data: The @class_data member supplied via the #GTypeInfo structure.
- *
- * A callback function used by the type system to finalize a class.
- * This function is rarely needed, as dynamically allocated class resources
- * should be handled by GBaseInitFunc() and GBaseFinalizeFunc().
- * Also, specification of a GClassFinalizeFunc() in the #GTypeInfo
- * structure of a static type is invalid, because classes of static types
- * will never be finalized (they are artificially kept alive when their
- * reference count drops to zero).
- */
-
-
-/**
- * GClassInitFunc:
- * @g_class: The #GTypeClass structure to initialize.
- * @class_data: The @class_data member supplied via the #GTypeInfo structure.
- *
- * A callback function used by the type system to initialize the class
- * of a specific type. This function should initialize all static class
- * members.
- * The initialization process of a class involves:
- * <itemizedlist>
- * <listitem><para>
- * 	1 - Copying common members from the parent class over to the
- * 	derived class structure.
- * </para></listitem>
- * <listitem><para>
- * 	2 -  Zero initialization of the remaining members not copied
- * 	over from the parent class.
- * </para></listitem>
- * <listitem><para>
- * 	3 - Invocation of the GBaseInitFunc() initializers of all parent
- * 	types and the class' type.
- * </para></listitem>
- * <listitem><para>
- * 	4 - Invocation of the class' GClassInitFunc() initializer.
- * </para></listitem>
- * </itemizedlist>
- * Since derived classes are partially initialized through a memory copy
- * of the parent class, the general rule is that GBaseInitFunc() and
- * GBaseFinalizeFunc() should take care of necessary reinitialization
- * and release of those class members that were introduced by the type
- * that specified these GBaseInitFunc()/GBaseFinalizeFunc().
- * GClassInitFunc() should only care about initializing static
- * class members, while dynamic class members (such as allocated strings
- * or reference counted resources) are better handled by a GBaseInitFunc()
- * for this type, so proper initialization of the dynamic class members
- * is performed for class initialization of derived types as well.
- * An example may help to correspond the intend of the different class
- * initializers:
- *
- * |[
- * typedef struct {
- *   GObjectClass parent_class;
- *   gint         static_integer;
- *   gchar       *dynamic_string;
- * } TypeAClass;
- * static void
- * type_a_base_class_init (TypeAClass *class)
- * {
- *   class->dynamic_string = g_strdup ("some string");
- * }
- * static void
- * type_a_base_class_finalize (TypeAClass *class)
- * {
- *   g_free (class->dynamic_string);
- * }
- * static void
- * type_a_class_init (TypeAClass *class)
- * {
- *   class->static_integer = 42;
- * }
- *
- * typedef struct {
- *   TypeAClass   parent_class;
- *   gfloat       static_float;
- *   GString     *dynamic_gstring;
- * } TypeBClass;
- * static void
- * type_b_base_class_init (TypeBClass *class)
- * {
- *   class->dynamic_gstring = g_string_new ("some other string");
- * }
- * static void
- * type_b_base_class_finalize (TypeBClass *class)
- * {
- *   g_string_free (class->dynamic_gstring);
- * }
- * static void
- * type_b_class_init (TypeBClass *class)
- * {
- *   class->static_float = 3.14159265358979323846;
- * }
- * ]|
- * Initialization of TypeBClass will first cause initialization of
- * TypeAClass (derived classes reference their parent classes, see
- * g_type_class_ref() on this).
- * Initialization of TypeAClass roughly involves zero-initializing its fields,
- * then calling its GBaseInitFunc() type_a_base_class_init() to allocate
- * its dynamic members (dynamic_string), and finally calling its GClassInitFunc()
- * type_a_class_init() to initialize its static members (static_integer).
- * The first step in the initialization process of TypeBClass is then
- * a plain memory copy of the contents of TypeAClass into TypeBClass and
- * zero-initialization of the remaining fields in TypeBClass.
- * The dynamic members of TypeAClass within TypeBClass now need
- * reinitialization which is performed by calling type_a_base_class_init()
- * with an argument of TypeBClass.
- * After that, the GBaseInitFunc() of TypeBClass, type_b_base_class_init()
- * is called to allocate the dynamic members of TypeBClass (dynamic_gstring),
- * and finally the GClassInitFunc() of TypeBClass, type_b_class_init(),
- * is called to complete the initialization process with the static members
- * (static_float).
- * Corresponding finalization counter parts to the GBaseInitFunc() functions
- * have to be provided to release allocated resources at class finalization
- * time.
- */
-
-
-/**
- * GClosure:
- * @in_marshal: Indicates whether the closure is currently being invoked with g_closure_invoke()
- * @is_invalid: Indicates whether the closure has been invalidated by g_closure_invalidate()
- *
- * A #GClosure represents a callback supplied by the programmer.
- */
-
-
-/**
- * GClosureMarshal:
- * @closure: the #GClosure to which the marshaller belongs
- * @return_value: (allow-none): a #GValue to store the return value. May be %NULL if the callback of @closure doesn't return a value.
- * @n_param_values: the length of the @param_values array
- * @param_values: (array length=n_param_values): an array of #GValue<!-- -->s holding the arguments on which to invoke the callback of @closure
- * @invocation_hint: (allow-none): the invocation hint given as the last argument to g_closure_invoke()
- * @marshal_data: (allow-none): additional data specified when registering the marshaller, see g_closure_set_marshal() and g_closure_set_meta_marshal()
- *
- * The type used for marshaller functions.
- */
-
-
-/**
- * GClosureNotify:
- * @data: data specified when registering the notification callback
- * @closure: the #GClosure on which the notification is emitted
- *
- * The type used for the various notification callbacks which can be registered
- * on closures.
- */
-
-
-/**
  * GCompareDataFunc:
  * @a: a value.
  * @b: a value to compare with.
@@ -554,42 +232,6 @@
 
 
 /**
- * GConnectFlags:
- * @G_CONNECT_AFTER: whether the handler should be called before or after the default handler of the signal.
- * @G_CONNECT_SWAPPED: whether the instance and data should be swapped when calling the handler.
- *
- * The connection flags are used to specify the behaviour of a signal's
- * connection.
- */
-
-
-/**
- * GConvertError:
- * @G_CONVERT_ERROR_NO_CONVERSION: Conversion between the requested character sets is not supported.
- * @G_CONVERT_ERROR_ILLEGAL_SEQUENCE: Invalid byte sequence in conversion input.
- * @G_CONVERT_ERROR_FAILED: Conversion failed for some reason.
- * @G_CONVERT_ERROR_PARTIAL_INPUT: Partial character sequence at end of input.
- * @G_CONVERT_ERROR_BAD_URI: URI is invalid.
- * @G_CONVERT_ERROR_NOT_ABSOLUTE_PATH: Pathname is not an absolute path.
- *
- * Error codes returned by character set conversion routines.
- */
-
-
-/**
- * GCopyFunc:
- * @src: A pointer to the data which should be copied
- * @data: Additional data
- *
- * A function of this signature is used to copy the node data
- * when doing a deep-copy of a tree.
- *
- * Returns: A pointer to the copy
- * Since: 2.4
- */
-
-
-/**
  * GData:
  *
  * The #GData struct is an opaque data structure to represent a <link
@@ -672,16 +314,6 @@
 
 
 /**
- * GDateTime:
- *
- * <structname>GDateTime</structname> is an opaque structure whose members
- * cannot be accessed directly.
- *
- * Since: 2.26
- */
-
-
-/**
  * GDateWeekday:
  * @G_DATE_BAD_WEEKDAY: invalid value
  * @G_DATE_MONDAY: Monday
@@ -707,16 +339,6 @@
 
 
 /**
- * GDebugKey:
- * @key: the string
- * @value: the flag
- *
- * Associates a string with a bit flag.
- * Used in g_parse_debug_string().
- */
-
-
-/**
  * GDestroyNotify:
  * @data: the data element.
  *
@@ -745,30 +367,6 @@
 
 
 /**
- * GEnumClass:
- * @g_type_class: the parent class
- * @minimum: the smallest possible value.
- * @maximum: the largest possible value.
- * @n_values: the number of possible values.
- * @values: an array of #GEnumValue structs describing the individual values.
- *
- * The class of an enumeration type holds information about its
- * possible values.
- */
-
-
-/**
- * GEnumValue:
- * @value: the enum value
- * @value_name: the name of the value
- * @value_nick: the nickname of the value
- *
- * A structure which contains a single enum value, its name, and its
- * nickname.
- */
-
-
-/**
  * GEqualFunc:
  * @a: a value
  * @b: a value to compare with
@@ -782,17 +380,6 @@
 
 
 /**
- * GError:
- * @domain: error domain, e.g. #G_FILE_ERROR
- * @code: error code, e.g. %G_FILE_ERROR_NOENT
- * @message: human-readable informative error message
- *
- * The <structname>GError</structname> structure contains
- * information about an error that has occurred.
- */
-
-
-/**
  * GErrorType:
  * @G_ERR_UNKNOWN: unknown error
  * @G_ERR_UNEXP_EOF: unexpected end of file
@@ -864,29 +451,6 @@
 
 
 /**
- * GFlagsClass:
- * @g_type_class: the parent class
- * @mask: a mask covering all possible values.
- * @n_values: the number of possible values.
- * @values: an array of #GFlagsValue structs describing the individual values.
- *
- * The class of a flags type holds information about its
- * possible values.
- */
-
-
-/**
- * GFlagsValue:
- * @value: the flags value
- * @value_name: the name of the value
- * @value_nick: the nickname of the value
- *
- * A structure which contains a single flags value, its name, and its
- * nickname.
- */
-
-
-/**
  * GFloatIEEE754:
  * @v_float: the double value
  *
@@ -908,16 +472,6 @@
 
 
 /**
- * GFreeFunc:
- * @data: a data pointer
- *
- * Declares a type of function which takes an arbitrary
- * data pointer argument and has no return value. It is
- * not currently used in GLib or GTK+.
- */
-
-
-/**
  * GFunc:
  * @data: the element's data.
  * @user_data: user data passed to g_list_foreach() or g_slist_foreach().
@@ -1013,17 +567,6 @@
 
 
 /**
- * GHmac:
- *
- * An opaque structure representing a HMAC operation.
- * To create a new GHmac, use g_hmac_new(). To free
- * a GHmac, use g_hmac_unref().
- *
- * Since: 2.30
- */
-
-
-/**
  * GHook:
  * @data: data which is passed to func when this hook is invoked
  * @next: pointer to the next hook in the list
@@ -1420,79 +963,6 @@
 
 
 /**
- * GIconv:
- *
- * The <structname>GIConv</structname> struct wraps an
- * iconv() conversion descriptor. It contains private data
- * and should only be accessed using the following functions.
- */
-
-
-/**
- * GInitiallyUnowned:
- *
- * All the fields in the <structname>GInitiallyUnowned</structname> structure
- * are private to the #GInitiallyUnowned implementation and should never be
- * accessed directly.
- */
-
-
-/**
- * GInitiallyUnownedClass:
- *
- * The class structure for the <structname>GInitiallyUnowned</structname> type.
- */
-
-
-/**
- * GInstanceInitFunc:
- * @instance: The instance to initialize.
- * @g_class: The class of the type the instance is created for.
- *
- * A callback function used by the type system to initialize a new
- * instance of a type. This function initializes all instance members and
- * allocates any resources required by it.
- * Initialization of a derived instance involves calling all its parent
- * types instance initializers, so the class member of the instance
- * is altered during its initialization to always point to the class that
- * belongs to the type the current initializer was introduced for.
- */
-
-
-/**
- * GInterfaceFinalizeFunc:
- * @g_iface: The interface structure to finalize.
- * @iface_data: The @interface_data supplied via the #GInterfaceInfo structure.
- *
- * A callback function used by the type system to finalize an interface.
- * This function should destroy any internal data and release any resources
- * allocated by the corresponding GInterfaceInitFunc() function.
- */
-
-
-/**
- * GInterfaceInfo:
- * @interface_init: location of the interface initialization function
- * @interface_finalize: location of the interface finalization function
- * @interface_data: user-supplied data passed to the interface init/finalize functions
- *
- * A structure that provides information to the type system which is
- * used specifically for managing interface types.
- */
-
-
-/**
- * GInterfaceInitFunc:
- * @g_iface: The interface structure to initialize.
- * @iface_data: The @interface_data supplied via the #GInterfaceInfo structure.
- *
- * A callback function used by the type system to initialize a new
- * interface.  This function should initialize all internal data and
- * allocate any resources required by the interface.
- */
-
-
-/**
  * GKeyFile:
  *
  * The GKeyFile struct contains only private data
@@ -1589,82 +1059,6 @@
 
 
 /**
- * GLIB_VERSION_2_26:
- *
- * A macro that evaluates to the 2.26 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_2_28:
- *
- * A macro that evaluates to the 2.28 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_2_30:
- *
- * A macro that evaluates to the 2.30 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_2_32:
- *
- * A macro that evaluates to the 2.32 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_MAX_ALLOWED:
- *
- * A macro that should be defined by the user prior to including
- * the glib.h header.
- * The definition should be one of the predefined GLib version
- * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
- *
- * This macro defines the upper bound for the GLib API to use.
- *
- * If a function has been introduced in a newer version of GLib,
- * it is possible to use this symbol to get compiler warnings when
- * trying to use that function.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_MIN_REQUIRED:
- *
- * A macro that should be defined by the user prior to including
- * the glib.h header.
- * The definition should be one of the predefined GLib version
- * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
- *
- * This macro defines the lower bound for the GLib API to use.
- *
- * If a function has been deprecated in a newer version of GLib,
- * it is possible to use this symbol to avoid the compiler warnings
- * without disabling warning for every deprecated function.
- *
- * Since: 2.32
- */
-
-
-/**
  * GLONG_FROM_BE:
  * @val: a #glong value in big-endian byte order
  *
@@ -1745,22 +1139,6 @@
 
 
 /**
- * GMainContext:
- *
- * The <structname>GMainContext</structname> struct is an opaque data
- * type representing a set of sources to be handled in a main loop.
- */
-
-
-/**
- * GMainLoop:
- *
- * The <structname>GMainLoop</structname> struct is an opaque data type
- * representing the main event loop of a GLib or GTK+ application.
- */
-
-
-/**
  * GMappedFile:
  *
  * The #GMappedFile represents a file mapping created with
@@ -1788,74 +1166,6 @@
 
 
 /**
- * GMarkupError:
- * @G_MARKUP_ERROR_BAD_UTF8: text being parsed was not valid UTF-8
- * @G_MARKUP_ERROR_EMPTY: document contained nothing, or only whitespace
- * @G_MARKUP_ERROR_PARSE: document was ill-formed
- * @G_MARKUP_ERROR_UNKNOWN_ELEMENT: error should be set by #GMarkupParser functions; element wasn't known
- * @G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE: error should be set by #GMarkupParser functions; attribute wasn't known
- * @G_MARKUP_ERROR_INVALID_CONTENT: error should be set by #GMarkupParser functions; content was invalid
- * @G_MARKUP_ERROR_MISSING_ATTRIBUTE: error should be set by #GMarkupParser functions; a required attribute was missing
- *
- * Error codes returned by markup parsing.
- */
-
-
-/**
- * GMarkupParseContext:
- *
- * A parse context is used to parse a stream of bytes that
- * you expect to contain marked-up text.
- *
- * See g_markup_parse_context_new(), #GMarkupParser, and so
- * on for more details.
- */
-
-
-/**
- * GMarkupParseFlags:
- * @G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG: flag you should not use
- * @G_MARKUP_TREAT_CDATA_AS_TEXT: When this flag is set, CDATA marked sections are not passed literally to the @passthrough function of the parser. Instead, the content of the section (without the <literal>&lt;![CDATA[</literal> and <literal>]]&gt;</literal>) is passed to the @text function. This flag was added in GLib 2.12
- * @G_MARKUP_PREFIX_ERROR_POSITION: Normally errors caught by GMarkup itself have line/column information prefixed to them to let the caller know the location of the error. When this flag is set the location information is also prefixed to errors generated by the #GMarkupParser implementation functions
- *
- * Flags that affect the behaviour of the parser.
- */
-
-
-/**
- * GMarkupParser:
- * @start_element: Callback to invoke when the opening tag of an element is seen.
- * @end_element: Callback to invoke when the closing tag of an element is seen. Note that this is also called for empty tags like <literal>&lt;empty/&gt;</literal>.
- * @text: Callback to invoke when some text is seen (text is always inside an element). Note that the text of an element may be spread over multiple calls of this function. If the %G_MARKUP_TREAT_CDATA_AS_TEXT flag is set, this function is also called for the content of CDATA marked sections.
- * @passthrough: Callback to invoke for comments, processing instructions and doctype declarations; if you're re-writing the parsed document, write the passthrough text back out in the same position. If the %G_MARKUP_TREAT_CDATA_AS_TEXT flag is not set, this function is also called for CDATA marked sections.
- * @error: Callback to invoke when an error occurs.
- *
- * Any of the fields in #GMarkupParser can be %NULL, in which case they
- * will be ignored. Except for the @error function, any of these callbacks
- * can set an error; in particular the %G_MARKUP_ERROR_UNKNOWN_ELEMENT,
- * %G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, and %G_MARKUP_ERROR_INVALID_CONTENT
- * errors are intended to be set from these callbacks. If you set an error
- * from a callback, g_markup_parse_context_parse() will report that error
- * back to its caller.
- */
-
-
-/**
- * GMemVTable:
- * @malloc: function to use for allocating memory.
- * @realloc: function to use for reallocating memory.
- * @free: function to use to free memory.
- * @calloc: function to use for allocating zero-filled memory.
- * @try_malloc: function to use for allocating memory without a default error handler.
- * @try_realloc: function to use for reallocating memory without a default error handler.
- *
- * A set of functions used to perform memory allocation. The same #GMemVTable must
- * be used for all allocations in the same program; a call to g_mem_set_vtable(),
- * if it exists, should be prior to any use of GLib.
- */
-
-
-/**
  * GMutex:
  *
  * The #GMutex struct is an opaque data structure to represent a mutex
@@ -1954,116 +1264,6 @@
 
 
 /**
- * GNormalizeMode:
- * @G_NORMALIZE_DEFAULT: standardize differences that do not affect the text content, such as the above-mentioned accent representation
- * @G_NORMALIZE_NFD: another name for %G_NORMALIZE_DEFAULT
- * @G_NORMALIZE_DEFAULT_COMPOSE: like %G_NORMALIZE_DEFAULT, but with composed forms rather than a maximally decomposed form
- * @G_NORMALIZE_NFC: another name for %G_NORMALIZE_DEFAULT_COMPOSE
- * @G_NORMALIZE_ALL: beyond %G_NORMALIZE_DEFAULT also standardize the "compatibility" 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_NFKD: another name for %G_NORMALIZE_ALL
- * @G_NORMALIZE_ALL_COMPOSE: like %G_NORMALIZE_ALL, but with composed forms rather than a maximally decomposed form
- * @G_NORMALIZE_NFKC: another name for %G_NORMALIZE_ALL_COMPOSE
- *
- * Defines how a Unicode string is transformed in a 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. Unicode strings
- * should generally be normalized before comparing them.
- */
-
-
-/**
- * GObject:
- *
- * All the fields in the <structname>GObject</structname> structure are private
- * to the #GObject implementation and should never be accessed directly.
- */
-
-
-/**
- * GObjectClass:
- * @g_type_class: the parent class
- * @constructor: the @constructor function is called by g_object_new () to complete the object initialization after all the construction properties are set. The first thing a @constructor implementation must do is chain up to the @constructor of the parent class. Overriding @constructor should be rarely needed, e.g. to handle construct properties, or to implement singletons.
- * @set_property: the generic setter for all properties of this type. Should be overridden for every type with properties. Implementations of @set_property don't need to emit property change notification explicitly, this is handled by the type system.
- * @get_property: the generic getter for all properties of this type. Should be overridden for every type with properties.
- * @dispose: the @dispose function is supposed to drop all references to other objects, but keep the instance otherwise intact, so that client method invocations still work. It may be run multiple times (due to reference loops). Before returning, @dispose should chain up to the @dispose method of the parent class.
- * @finalize: instance finalization function, should finish the finalization of the instance begun in @dispose and chain up to the @finalize method of the parent class.
- * @dispatch_properties_changed: emits property change notification for a bunch of properties. Overriding @dispatch_properties_changed should be rarely needed.
- * @notify: the class closure for the notify signal
- * @constructed: the @constructed function is called by g_object_new() as the final step of the object creation process.  At the point of the call, all construction properties have been set on the object.  The purpose of this call is to allow for object initialisation steps that can only be performed after construction properties have been set.  @constructed implementors should chain up to the @constructed call of their parent class to allow it to complete its initialisation.
- *
- * The class structure for the <structname>GObject</structname> type.
- *
- * <example>
- * <title>Implementing singletons using a constructor</title>
- * <programlisting>
- * static MySingleton *the_singleton = NULL;
- *
- * static GObject*
- * my_singleton_constructor (GType                  type,
- *                           guint                  n_construct_params,
- *                           GObjectConstructParam *construct_params)
- * {
- *   GObject *object;
- *
- *   if (!the_singleton)
- *     {
- *       object = G_OBJECT_CLASS (parent_class)->constructor (type,
- *                                                            n_construct_params,
- *                                                            construct_params);
- *       the_singleton = MY_SINGLETON (object);
- *     }
- *   else
- *     object = g_object_ref (G_OBJECT (the_singleton));
- *
- *   return object;
- * }
- * </programlisting></example>
- */
-
-
-/**
- * GObjectConstructParam:
- * @pspec: the #GParamSpec of the construct parameter
- * @value: the value to set the parameter to
- *
- * The <structname>GObjectConstructParam</structname> struct is an auxiliary
- * structure used to hand #GParamSpec/#GValue pairs to the @constructor of
- * a #GObjectClass.
- */
-
-
-/**
- * GObjectFinalizeFunc:
- * @object: the #GObject being finalized
- *
- * The type of the @finalize function of #GObjectClass.
- */
-
-
-/**
- * GObjectGetPropertyFunc:
- * @object: a #GObject
- * @property_id: the numeric id under which the property was registered with g_object_class_install_property().
- * @value: a #GValue to return the property value in
- * @pspec: the #GParamSpec describing the property
- *
- * The type of the @get_property function of #GObjectClass.
- */
-
-
-/**
- * GObjectSetPropertyFunc:
- * @object: a #GObject
- * @property_id: the numeric id under which the property was registered with g_object_class_install_property().
- * @value: the new value for the property
- * @pspec: the #GParamSpec describing the property
- *
- * The type of the @set_property function of #GObjectClass.
- */
-
-
-/**
  * GOnce:
  * @status: the status of the #GOnce
  * @retval: the value returned by the call to the function, if @status is %G_ONCE_STATUS_READY
@@ -2090,126 +1290,6 @@
 
 
 /**
- * GOptionArg:
- * @G_OPTION_ARG_NONE: No extra argument. This is useful for simple flags.
- * @G_OPTION_ARG_STRING: The option takes a string argument.
- * @G_OPTION_ARG_INT: The option takes an integer argument.
- * @G_OPTION_ARG_CALLBACK: The option provides a callback to parse the extra argument.
- * @G_OPTION_ARG_FILENAME: The option takes a filename as argument.
- * @G_OPTION_ARG_STRING_ARRAY: The option takes a string argument, multiple uses of the option are collected into an array of strings.
- * @G_OPTION_ARG_FILENAME_ARRAY: The option takes a filename as argument, multiple uses of the option are collected into an array of strings.
- * @G_OPTION_ARG_DOUBLE: The option takes a double argument. The argument can be formatted either for the user's locale or for the "C" locale. Since 2.12
- * @G_OPTION_ARG_INT64: The option takes a 64-bit integer. Like %G_OPTION_ARG_INT but for larger numbers. The number can be in decimal base, or in hexadecimal (when prefixed with <literal>0x</literal>, for example, <literal>0xffffffff</literal>). Since 2.12
- *
- * The #GOptionArg enum values determine which type of extra argument the
- * options expect to find. If an option expects an extra argument, it
- * can be specified in several ways; with a short option:
- * <option>-x arg</option>, with a long option: <option>--name arg</option>
- * or combined in a single argument: <option>--name=arg</option>.
- */
-
-
-/**
- * GOptionArgFunc:
- * @option_name: The name of the option being parsed. This will be either a single dash followed by a single letter (for a short name) or two dashes followed by a long option name.
- * @value: The value to be parsed.
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: A return location for errors. The error code %G_OPTION_ERROR_FAILED is intended to be used for errors in #GOptionArgFunc callbacks.
- *
- * The type of function to be passed as callback for %G_OPTION_ARG_CALLBACK
- * options.
- *
- * Returns: %TRUE if the option was successfully parsed, %FALSE if an error occurred, in which case @error should be set with g_set_error()
- */
-
-
-/**
- * GOptionContext:
- *
- * A <structname>GOptionContext</structname> struct defines which options
- * are accepted by the commandline option parser. The struct has only private
- * fields and should not be directly accessed.
- */
-
-
-/**
- * GOptionEntry:
- * @long_name: The long name of an option can be used to specify it in a commandline as --<replaceable>long_name</replaceable>. Every option must have a long name. To resolve conflicts if multiple option groups contain the same long name, it is also possible to specify the option as --<replaceable>groupname</replaceable>-<replaceable>long_name</replaceable>.
- * @short_name: If an option has a short name, it can be specified -<replaceable>short_name</replaceable> in a commandline. @short_name must be a printable ASCII character different from '-', or zero if the option has no short name.
- * @flags: Flags from #GOptionFlags.
- * @arg: The type of the option, as a #GOptionArg.
- * @arg_data: If the @arg type is %G_OPTION_ARG_CALLBACK, then @arg_data must point to a #GOptionArgFunc callback function, which will be called to handle the extra argument. Otherwise, @arg_data is a pointer to a location to store the value, the required type of the location depends on the @arg type: <variablelist> <varlistentry> <term>%G_OPTION_ARG_NONE</term> <listitem><para>%gboolean</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_STRING</term> <listitem><para>%gchar*</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_INT</term> <listitem><para>%gint</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_FILENAME</term> <listitem><para>%gchar*</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_STRING_ARRAY</term> <listitem><para>%gchar**</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_FILENAME_ARRAY</term> <listitem><para>%gchar**</para></listitem> </varlistentry> <varlistentry> <
 term>%G_OPTION_ARG_DOUBLE</term> <listitem><para>%gdouble</para></listitem> </varlistentry> </variablelist> If @arg type is %G_OPTION_ARG_STRING or %G_OPTION_ARG_FILENAME the location will contain a newly allocated string if the option was given. That string needs to be freed by the callee using g_free(). Likewise if @arg type is %G_OPTION_ARG_STRING_ARRAY or %G_OPTION_ARG_FILENAME_ARRAY, the data should be freed using g_strfreev().
- * @description: the description for the option in <option>--help</option> output. The @description is translated using the @translate_func of the group, see g_option_group_set_translation_domain().
- * @arg_description: The placeholder to use for the extra argument parsed by the option in <option>--help</option> output. The @arg_description is translated using the @translate_func of the group, see g_option_group_set_translation_domain().
- *
- * A <structname>GOptionEntry</structname> defines a single option.
- * To have an effect, they must be added to a #GOptionGroup with
- * g_option_context_add_main_entries() or g_option_group_add_entries().
- */
-
-
-/**
- * GOptionError:
- * @G_OPTION_ERROR_UNKNOWN_OPTION: An option was not known to the parser. This error will only be reported, if the parser hasn't been instructed to ignore unknown options, see g_option_context_set_ignore_unknown_options().
- * @G_OPTION_ERROR_BAD_VALUE: A value couldn't be parsed.
- * @G_OPTION_ERROR_FAILED: A #GOptionArgFunc callback failed.
- *
- * Error codes returned by option parsing.
- */
-
-
-/**
- * GOptionErrorFunc:
- * @context: The active #GOptionContext
- * @group: The group to which the function belongs
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: The #GError containing details about the parse error
- *
- * The type of function to be used as callback when a parse error occurs.
- */
-
-
-/**
- * GOptionFlags:
- * @G_OPTION_FLAG_HIDDEN: The option doesn't appear in <option>--help</option> output.
- * @G_OPTION_FLAG_IN_MAIN: The option appears in the main section of the <option>--help</option> output, even if it is defined in a group.
- * @G_OPTION_FLAG_REVERSE: For options of the %G_OPTION_ARG_NONE kind, this flag indicates that the sense of the option is reversed.
- * @G_OPTION_FLAG_NO_ARG: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the callback does not take any argument (like a %G_OPTION_ARG_NONE option). Since 2.8
- * @G_OPTION_FLAG_FILENAME: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the argument should be passed to the callback in the GLib filename encoding rather than UTF-8. Since 2.8
- * @G_OPTION_FLAG_OPTIONAL_ARG: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the argument supply is optional. If no argument is given then data of %GOptionParseFunc will be set to NULL. Since 2.8
- * @G_OPTION_FLAG_NOALIAS: This flag turns off the automatic conflict resolution which prefixes long option names with <literal>groupname-</literal> if there is a conflict. This option should only be used in situations where aliasing is necessary to model some legacy commandline interface. It is not safe to use this option, unless all option groups are under your direct control. Since 2.8.
- *
- * Flags which modify individual options.
- */
-
-
-/**
- * GOptionGroup:
- *
- * A <structname>GOptionGroup</structname> struct defines the options in a single
- * group. The struct has only private fields and should not be directly accessed.
- *
- * All options in a group share the same translation function. Libraries which
- * need to parse commandline options are expected to provide a function for
- * getting a <structname>GOptionGroup</structname> holding their options, which
- * the application can then add to its #GOptionContext.
- */
-
-
-/**
- * GOptionParseFunc:
- * @context: The active #GOptionContext
- * @group: The group to which the function belongs
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: A return location for error details
- *
- * The type of function that can be called before and after parsing.
- *
- * Returns: %TRUE if the function completed successfully, %FALSE if an error occurred, in which case @error should be set with g_set_error()
- */
-
-
-/**
  * GPOINTER_TO_INT:
  * @p: pointer containing an integer
  *
@@ -2242,332 +1322,6 @@
 
 
 /**
- * GParamFlags:
- * @G_PARAM_READABLE: the parameter is readable
- * @G_PARAM_WRITABLE: the parameter is writable
- * @G_PARAM_CONSTRUCT: the parameter will be set upon object construction
- * @G_PARAM_CONSTRUCT_ONLY: the parameter will only be set upon object construction
- * @G_PARAM_LAX_VALIDATION: upon parameter conversion (see g_param_value_convert()) strict validation is not required
- * @G_PARAM_STATIC_NAME: the string used as name when constructing the parameter is guaranteed to remain valid and unmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_STATIC_NICK: the string used as nick when constructing the parameter is guaranteed to remain valid and unmmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_STATIC_BLURB: the string used as blurb when constructing the parameter is guaranteed to remain valid and unmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_PRIVATE: internal
- * @G_PARAM_DEPRECATED: the parameter is deprecated and will be removed in a future version. A warning will be generated if it is used while running with G_ENABLE_DIAGNOSTIC=1. Since 2.26
- *
- * Through the #GParamFlags flag values, certain aspects of parameters
- * can be configured.
- */
-
-
-/**
- * GParamSpec:
- * @g_type_instance: private #GTypeInstance portion
- * @name: name of this parameter: always an interned string
- * @flags: #GParamFlags flags for this parameter
- * @value_type: the #GValue type for this parameter
- * @owner_type: #GType type that uses (introduces) this parameter
- *
- * All other fields of the <structname>GParamSpec</structname> struct are private and
- * should not be used directly.
- */
-
-
-/**
- * GParamSpecBoolean:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for boolean properties.
- */
-
-
-/**
- * GParamSpecBoxed:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for boxed properties.
- */
-
-
-/**
- * GParamSpecChar:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for character properties.
- */
-
-
-/**
- * GParamSpecClass:
- * @g_type_class: the parent class
- * @value_type: the #GValue type for this parameter
- * @finalize: The instance finalization function (optional), should chain up to the finalize method of the parent class.
- * @value_set_default: Resets a @value to the default value for this type (recommended, the default is g_value_reset()), see g_param_value_set_default().
- * @value_validate: Ensures that the contents of @value comply with the specifications set out by this type (optional), see g_param_value_validate().
- * @values_cmp: Compares @value1 with @value2 according to this type (recommended, the default is memcmp()), see g_param_values_cmp().
- *
- * The class structure for the <structname>GParamSpec</structname> type.
- * Normally, <structname>GParamSpec</structname> classes are filled by
- * g_param_type_register_static().
- */
-
-
-/**
- * GParamSpecDouble:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- * @epsilon: values closer than @epsilon will be considered identical by g_param_values_cmp(); the default value is 1e-90.
- *
- * A #GParamSpec derived structure that contains the meta data for double properties.
- */
-
-
-/**
- * GParamSpecEnum:
- * @parent_instance: private #GParamSpec portion
- * @enum_class: the #GEnumClass for the enum
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for enum
- * properties.
- */
-
-
-/**
- * GParamSpecFlags:
- * @parent_instance: private #GParamSpec portion
- * @flags_class: the #GFlagsClass for the flags
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for flags
- * properties.
- */
-
-
-/**
- * GParamSpecFloat:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- * @epsilon: values closer than @epsilon will be considered identical by g_param_values_cmp(); the default value is 1e-30.
- *
- * A #GParamSpec derived structure that contains the meta data for float properties.
- */
-
-
-/**
- * GParamSpecGType:
- * @parent_instance: private #GParamSpec portion
- * @is_a_type: a #GType whose subtypes can occur as values
- *
- * A #GParamSpec derived structure that contains the meta data for #GType properties.
- *
- * Since: 2.10
- */
-
-
-/**
- * GParamSpecInt:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for integer properties.
- */
-
-
-/**
- * GParamSpecInt64:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for 64bit integer properties.
- */
-
-
-/**
- * GParamSpecLong:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for long integer properties.
- */
-
-
-/**
- * GParamSpecObject:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for object properties.
- */
-
-
-/**
- * GParamSpecOverride:
- *
- * This is a type of #GParamSpec type that simply redirects operations to
- * another paramspec.  All operations other than getting or
- * setting the value are redirected, including accessing the nick and
- * blurb, validating a value, and so forth. See
- * g_param_spec_get_redirect_target() for retrieving the overidden
- * property. #GParamSpecOverride is used in implementing
- * g_object_class_override_property(), and will not be directly useful
- * unless you are implementing a new base type similar to GObject.
- *
- * Since: 2.4
- */
-
-
-/**
- * GParamSpecParam:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for %G_TYPE_PARAM
- * properties.
- */
-
-
-/**
- * GParamSpecPointer:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for pointer properties.
- */
-
-
-/**
- * GParamSpecString:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- * @cset_first: a string containing the allowed values for the first byte
- * @cset_nth: a string containing the allowed values for the subsequent bytes
- * @substitutor: the replacement byte for bytes which don't match @cset_first or @cset_nth.
- * @null_fold_if_empty: replace empty string by %NULL
- * @ensure_non_null: replace %NULL strings by an empty string
- *
- * A #GParamSpec derived structure that contains the meta data for string
- * properties.
- */
-
-
-/**
- * GParamSpecTypeInfo:
- * @instance_size: Size of the instance (object) structure.
- * @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
- * @instance_init: Location of the instance initialization function (optional).
- * @value_type: The #GType of values conforming to this #GParamSpec
- * @finalize: The instance finalization function (optional).
- * @value_set_default: Resets a @value to the default value for @pspec (recommended, the default is g_value_reset()), see g_param_value_set_default().
- * @value_validate: Ensures that the contents of @value comply with the specifications set out by @pspec (optional), see g_param_value_validate().
- * @values_cmp: Compares @value1 with @value2 according to @pspec (recommended, the default is memcmp()), see g_param_values_cmp().
- *
- * This structure is used to provide the type system with the information
- * required to initialize and destruct (finalize) a parameter's class and
- * instances thereof.
- * The initialized structure is passed to the g_param_type_register_static()
- * The type system will perform a deep copy of this structure, so its memory
- * does not need to be persistent across invocation of
- * g_param_type_register_static().
- */
-
-
-/**
- * GParamSpecUChar:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned character properties.
- */
-
-
-/**
- * GParamSpecUInt:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned integer properties.
- */
-
-
-/**
- * GParamSpecUInt64:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned 64bit integer properties.
- */
-
-
-/**
- * GParamSpecULong:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned long integer properties.
- */
-
-
-/**
- * GParamSpecUnichar:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unichar (unsigned integer) properties.
- */
-
-
-/**
- * GParamSpecValueArray:
- * @parent_instance: private #GParamSpec portion
- * @element_spec: a #GParamSpec describing the elements contained in arrays of this property, may be %NULL
- * @fixed_n_elements: if greater than 0, arrays of this property will always have this many elements
- *
- * A #GParamSpec derived structure that contains the meta data for #GValueArray properties.
- */
-
-
-/**
- * GParamSpecVariant:
- * @parent_instance: private #GParamSpec portion
- * @type: a #GVariantType, or %NULL
- * @default_value: a #GVariant, or %NULL
- *
- * A #GParamSpec derived structure that contains the meta data for #GVariant properties.
- *
- * Since: 2.26
- */
-
-
-/**
- * GParameter:
- * @name: the parameter name
- * @value: the parameter value
- *
- * The <structname>GParameter</structname> struct is an auxiliary structure used
- * to hand parameter name/value pairs to g_object_newv().
- */
-
-
-/**
  * GPatternSpec:
  *
  * A <structname>GPatternSpec</structname> is the 'compiled' form of a
@@ -2577,52 +1331,6 @@
 
 
 /**
- * GPid:
- *
- * A type which is used to hold a process identification.
- *
- * On UNIX, processes are identified by a process id (an integer),
- * while Windows uses process handles (which are pointers).
- *
- * GPid is used in GLib only for descendant processes spawned with
- * the g_spawn functions.
- */
-
-
-/**
- * GPollFD:
- * @fd: the file descriptor to poll (or a <type>HANDLE</type> on Win32)
- * @events: a bitwise combination from #GIOCondition, specifying which events should be polled for. Typically for reading from a file descriptor you would use %G_IO_IN | %G_IO_HUP | %G_IO_ERR, and for writing you would use %G_IO_OUT | %G_IO_ERR.
- * @revents: a bitwise combination of flags from #GIOCondition, returned from the poll() function to indicate which events occurred.
- *
- * Represents a file descriptor, which events to poll for, and which events
- * occurred.
- */
-
-
-/**
- * GPollFunc:
- * @ufds: an array of #GPollFD elements
- * @nfsd: the number of elements in @ufds
- * @timeout_: the maximum time to wait for an event of the file descriptors. A negative value indicates an infinite timeout.
- *
- * Specifies the type of function passed to g_main_context_set_poll_func().
- * The semantics of the function should match those of the poll() system call.
- *
- * Returns: the number of #GPollFD elements which have events or errors reported, or -1 if an error occurred.
- */
-
-
-/**
- * GPrintFunc:
- * @string: the message to output
- *
- * Specifies the type of the print handler functions.
- * These are called with the complete formatted string to output.
- */
-
-
-/**
  * GPrivate:
  *
  * The #GPrivate struct is an opaque data structure to represent a
@@ -2663,17 +1371,6 @@
 
 
 /**
- * GQueue:
- * @head: a pointer to the first element of the queue
- * @tail: a pointer to the last element of the queue
- * @length: the number of elements in the queue
- *
- * Contains the public fields of a
- * <link linkend="glib-Double-ended-Queues">Queue</link>.
- */
-
-
-/**
  * GRWLock:
  *
  * The GRWLock struct is an opaque data structure to represent a
@@ -2775,124 +1472,6 @@
 
 
 /**
- * GRegex:
- *
- * A GRegex is the "compiled" form of a regular expression pattern. This
- * structure is opaque and its fields cannot be accessed directly.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexCompileFlags:
- * @G_REGEX_CASELESS: Letters in the pattern match both upper- and lowercase letters. This option can be changed within a pattern by a "(?i)" option setting.
- * @G_REGEX_MULTILINE: By default, GRegex treats the strings as consisting of a single line of characters (even if it actually contains newlines). The "start of line" metacharacter ("^") matches only at the start of the string, while the "end of line" metacharacter ("$") matches only at the end of the string, or before a terminating newline (unless #G_REGEX_DOLLAR_ENDONLY is set). When #G_REGEX_MULTILINE is set, the "start of line" and "end of line" constructs match immediately following or immediately before any newline in the string, respectively, as well as at the very start and end. This can be changed within a pattern by a "(?m)" option setting.
- * @G_REGEX_DOTALL: A dot metacharater (".") in the pattern matches all characters, including newlines. Without it, newlines are excluded. This option can be changed within a pattern by a ("?s") option setting.
- * @G_REGEX_EXTENDED: Whitespace data characters in the pattern are totally ignored except when escaped or inside a character class. Whitespace does not include the VT character (code 11). In addition, characters between an unescaped "#" outside a character class and the next newline character, inclusive, are also ignored. This can be changed within a pattern by a "(?x)" option setting.
- * @G_REGEX_ANCHORED: The pattern is forced to be "anchored", that is, it is constrained to match only at the first matching point in the string that is being searched. This effect can also be achieved by appropriate constructs in the pattern itself such as the "^" metacharater.
- * @G_REGEX_DOLLAR_ENDONLY: A dollar metacharacter ("$") in the pattern matches only at the end of the string. Without this option, a dollar also matches immediately before the final character if it is a newline (but not before any other newlines). This option is ignored if #G_REGEX_MULTILINE is set.
- * @G_REGEX_UNGREEDY: Inverts the "greediness" of the quantifiers so that they are not greedy by default, but become greedy if followed by "?". It can also be set by a "(?U)" option setting within the pattern.
- * @G_REGEX_RAW: Usually strings must be valid UTF-8 strings, using this flag they are considered as a raw sequence of bytes.
- * @G_REGEX_NO_AUTO_CAPTURE: Disables the use of numbered capturing parentheses in the pattern. Any opening parenthesis that is not followed by "?" behaves as if it were followed by "?:" but named parentheses can still be used for capturing (and they acquire numbers in the usual way).
- * @G_REGEX_OPTIMIZE: Optimize the regular expression. If the pattern will be used many times, then it may be worth the effort to optimize it to improve the speed of matches.
- * @G_REGEX_DUPNAMES: Names used to identify capturing subpatterns need not be unique. This can be helpful for certain types of pattern when it is known that only one instance of the named subpattern can ever be matched.
- * @G_REGEX_NEWLINE_CR: Usually any newline character is recognized, if this option is set, the only recognized newline character is '\r'.
- * @G_REGEX_NEWLINE_LF: Usually any newline character is recognized, if this option is set, the only recognized newline character is '\n'.
- * @G_REGEX_NEWLINE_CRLF: Usually any newline character is recognized, if this option is set, the only recognized newline character sequence is '\r\n'.
- *
- * Flags specifying compile-time options.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexError:
- * @G_REGEX_ERROR_COMPILE: Compilation of the regular expression failed.
- * @G_REGEX_ERROR_OPTIMIZE: Optimization of the regular expression failed.
- * @G_REGEX_ERROR_REPLACE: Replacement failed due to an ill-formed replacement string.
- * @G_REGEX_ERROR_MATCH: The match process failed.
- * @G_REGEX_ERROR_INTERNAL: Internal error of the regular expression engine. Since 2.16
- * @G_REGEX_ERROR_STRAY_BACKSLASH: "\\" at end of pattern. Since 2.16
- * @G_REGEX_ERROR_MISSING_CONTROL_CHAR: "\\c" at end of pattern. Since 2.16
- * @G_REGEX_ERROR_UNRECOGNIZED_ESCAPE: Unrecognized character follows "\\". Since 2.16
- * @G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER: Numbers out of order in "{}" quantifier. Since 2.16
- * @G_REGEX_ERROR_QUANTIFIER_TOO_BIG: Number too big in "{}" quantifier. Since 2.16
- * @G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS: Missing terminating "]" for character class. Since 2.16
- * @G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS: Invalid escape sequence in character class. Since 2.16
- * @G_REGEX_ERROR_RANGE_OUT_OF_ORDER: Range out of order in character class. Since 2.16
- * @G_REGEX_ERROR_NOTHING_TO_REPEAT: Nothing to repeat. Since 2.16
- * @G_REGEX_ERROR_UNRECOGNIZED_CHARACTER: Unrecognized character after "(?", "(?&lt;" or "(?P". Since 2.16
- * @G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS: POSIX named classes are supported only within a class. Since 2.16
- * @G_REGEX_ERROR_UNMATCHED_PARENTHESIS: Missing terminating ")" or ")" without opening "(". Since 2.16
- * @G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE: Reference to non-existent subpattern. Since 2.16
- * @G_REGEX_ERROR_UNTERMINATED_COMMENT: Missing terminating ")" after comment. Since 2.16
- * @G_REGEX_ERROR_EXPRESSION_TOO_LARGE: Regular expression too large. Since 2.16
- * @G_REGEX_ERROR_MEMORY_ERROR: Failed to get memory. Since 2.16
- * @G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND: Lookbehind assertion is not fixed length. Since 2.16
- * @G_REGEX_ERROR_MALFORMED_CONDITION: Malformed number or name after "(?(". Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES: Conditional group contains more than two branches. Since 2.16
- * @G_REGEX_ERROR_ASSERTION_EXPECTED: Assertion expected after "(?(". Since 2.16
- * @G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME: Unknown POSIX class name. Since 2.16
- * @G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED: POSIX collating elements are not supported. Since 2.16
- * @G_REGEX_ERROR_HEX_CODE_TOO_LARGE: Character value in "\\x{...}" sequence is too large. Since 2.16
- * @G_REGEX_ERROR_INVALID_CONDITION: Invalid condition "(?(0)". Since 2.16
- * @G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND: \\C not allowed in lookbehind assertion. Since 2.16
- * @G_REGEX_ERROR_INFINITE_LOOP: Recursive call could loop indefinitely. Since 2.16
- * @G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR: Missing terminator in subpattern name. Since 2.16
- * @G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME: Two named subpatterns have the same name. Since 2.16
- * @G_REGEX_ERROR_MALFORMED_PROPERTY: Malformed "\\P" or "\\p" sequence. Since 2.16
- * @G_REGEX_ERROR_UNKNOWN_PROPERTY: Unknown property name after "\\P" or "\\p". Since 2.16
- * @G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG: Subpattern name is too long (maximum 32 characters). Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_SUBPATTERNS: Too many named subpatterns (maximum 10,000). Since 2.16
- * @G_REGEX_ERROR_INVALID_OCTAL_VALUE: Octal value is greater than "\\377". Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE: "DEFINE" group contains more than one branch. Since 2.16
- * @G_REGEX_ERROR_DEFINE_REPETION: Repeating a "DEFINE" group is not allowed. Since 2.16
- * @G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS: Inconsistent newline options. Since 2.16
- * @G_REGEX_ERROR_MISSING_BACK_REFERENCE: "\\g" is not followed by a braced name or an optionally braced non-zero number. Since 2.16
- *
- * Error codes returned by regular expressions functions.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexEvalCallback:
- * @match_info: the #GMatchInfo generated by the match. Use g_match_info_get_regex() and g_match_info_get_string() if you need the #GRegex or the matched string.
- * @result: a #GString containing the new string
- * @user_data: user data passed to g_regex_replace_eval()
- *
- * Specifies the type of the function passed to g_regex_replace_eval().
- * It is called for each occurrence of the pattern in the string passed
- * to g_regex_replace_eval(), and it should append the replacement to
- * @result.
- *
- * Returns: %FALSE to continue the replacement process, %TRUE to stop it
- * Since: 2.14
- */
-
-
-/**
- * GRegexMatchFlags:
- * @G_REGEX_MATCH_ANCHORED: The pattern is forced to be "anchored", that is, it is constrained to match only at the first matching point in the string that is being searched. This effect can also be achieved by appropriate constructs in the pattern itself such as the "^" metacharater.
- * @G_REGEX_MATCH_NOTBOL: Specifies that first character of the string is not the beginning of a line, so the circumflex metacharacter should not match before it. Setting this without #G_REGEX_MULTILINE (at compile time) causes circumflex never to match. This option affects only the behaviour of the circumflex metacharacter, it does not affect "\A".
- * @G_REGEX_MATCH_NOTEOL: Specifies that the end of the subject string is not the end of a line, so the dollar metacharacter should not match it nor (except in multiline mode) a newline immediately before it. Setting this without #G_REGEX_MULTILINE (at compile time) causes dollar never to match. This option affects only the behaviour of the dollar metacharacter, it does not affect "\Z" or "\z".
- * @G_REGEX_MATCH_NOTEMPTY: An empty string is not considered to be a valid match if this option is set. If there are alternatives in the pattern, they are tried. If all the alternatives match the empty string, the entire match fails. For example, if the pattern "a?b?" is applied to a string not beginning with "a" or "b", it matches the empty string at the start of the string. With this flag set, this match is not valid, so GRegex searches further into the string for occurrences of "a" or "b".
- * @G_REGEX_MATCH_PARTIAL: Turns on the partial matching feature, for more documentation on partial matching see g_match_info_is_partial_match().
- * @G_REGEX_MATCH_NEWLINE_CR: Overrides the newline definition set when creating a new #GRegex, setting the '\r' character as line terminator.
- * @G_REGEX_MATCH_NEWLINE_LF: Overrides the newline definition set when creating a new #GRegex, setting the '\n' character as line terminator.
- * @G_REGEX_MATCH_NEWLINE_CRLF: Overrides the newline definition set when creating a new #GRegex, setting the '\r\n' characters as line terminator.
- * @G_REGEX_MATCH_NEWLINE_ANY: Overrides the newline definition set when creating a new #GRegex, any newline character or character sequence is recognized.
- *
- * Flags specifying match-time options.
- *
- * Since: 2.14
- */
-
-
-/**
  * GSIZE_FROM_BE:
  * @val: a #gsize value in big-endian byte order
  *
@@ -3122,268 +1701,6 @@
 
 
 /**
- * GSignalAccumulator:
- * @ihint: Signal invocation hint, see #GSignalInvocationHint.
- * @return_accu: Accumulator to collect callback return values in, this is the return value of the current signal emission.
- * @handler_return: A #GValue holding the return value of the signal handler.
- * @data: Callback data that was specified when creating the signal.
- *
- * The signal accumulator is a special callback function that can be used
- * to collect return values of the various callbacks that are called
- * during a signal emission. The signal accumulator is specified at signal
- * creation time, if it is left %NULL, no accumulation of callback return
- * values is performed. The return value of signal emissions is then the
- * value returned by the last callback.
- *
- * Returns: The accumulator function returns whether the signal emission should be aborted. Returning %FALSE means to abort the current emission and %TRUE is returned for continuation.
- */
-
-
-/**
- * GSignalCMarshaller:
- *
- * This is the signature of marshaller functions, required to marshall
- * arrays of parameter values to signal emissions into C language callback
- * invocations. It is merely an alias to #GClosureMarshal since the #GClosure
- * mechanism takes over responsibility of actual function invocation for the
- * signal system.
- */
-
-
-/**
- * GSignalCVaMarshaller:
- *
- * This is the signature of va_list marshaller functions, an optional
- * marshaller that can be used in some situations to avoid
- * marshalling the signal argument into GValues.
- */
-
-
-/**
- * GSignalEmissionHook:
- * @ihint: Signal invocation hint, see #GSignalInvocationHint.
- * @n_param_values: the number of parameters to the function, including the instance on which the signal was emitted.
- * @param_values: (array length=n_param_values): the instance on which the signal was emitted, followed by the parameters of the emission.
- * @data: user data associated with the hook.
- *
- * A simple function pointer to get invoked when the signal is emitted. This
- * allows you to tie a hook to the signal type, so that it will trap all
- * emissions of that signal, from any object.
- *
- * You may not attach these to signals created with the #G_SIGNAL_NO_HOOKS flag.
- *
- * Returns: whether it wants to stay connected. If it returns %FALSE, the signal hook is disconnected (and destroyed).
- */
-
-
-/**
- * GSignalFlags:
- * @G_SIGNAL_RUN_FIRST: Invoke the object method handler in the first emission stage.
- * @G_SIGNAL_RUN_LAST: Invoke the object method handler in the third emission stage.
- * @G_SIGNAL_RUN_CLEANUP: Invoke the object method handler in the last emission stage.
- * @G_SIGNAL_NO_RECURSE: Signals being emitted for an object while currently being in emission for this very object will not be emitted recursively, but instead cause the first emission to be restarted.
- * @G_SIGNAL_DETAILED: This signal supports "::detail" appendices to the signal name upon handler connections and emissions.
- * @G_SIGNAL_ACTION: Action signals are signals that may freely be emitted on alive objects from user code via g_signal_emit() and friends, without the need of being embedded into extra code that performs pre or post emission adjustments on the object. They can also be thought of as object methods which can be called generically by third-party code.
- * @G_SIGNAL_NO_HOOKS: No emissions hooks are supported for this signal.
- * @G_SIGNAL_MUST_COLLECT: Varargs signal emission will always collect the arguments, even if there are no signal handlers connected.  Since 2.30.
- * @G_SIGNAL_DEPRECATED: The signal is deprecated and will be removed in a future version. A warning will be generated if it is connected while running with G_ENABLE_DIAGNOSTIC=1.  Since 2.32.
- *
- * The signal flags are used to specify a signal's behaviour, the overall
- * signal description outlines how especially the RUN flags control the
- * stages of a signal emission.
- */
-
-
-/**
- * GSignalInvocationHint:
- * @signal_id: The signal id of the signal invoking the callback
- * @detail: The detail passed on for this emission
- * @run_type: The stage the signal emission is currently in, this field will contain one of %G_SIGNAL_RUN_FIRST, %G_SIGNAL_RUN_LAST or %G_SIGNAL_RUN_CLEANUP.
- *
- * The #GSignalInvocationHint structure is used to pass on additional information
- * to callbacks during a signal emission.
- */
-
-
-/**
- * GSignalMatchType:
- * @G_SIGNAL_MATCH_ID: The signal id must be equal.
- * @G_SIGNAL_MATCH_DETAIL: The signal detail be equal.
- * @G_SIGNAL_MATCH_CLOSURE: The closure must be the same.
- * @G_SIGNAL_MATCH_FUNC: The C closure callback must be the same.
- * @G_SIGNAL_MATCH_DATA: The closure data must be the same.
- * @G_SIGNAL_MATCH_UNBLOCKED: Only unblocked signals may matched.
- *
- * The match types specify what g_signal_handlers_block_matched(),
- * g_signal_handlers_unblock_matched() and g_signal_handlers_disconnect_matched()
- * match signals by.
- */
-
-
-/**
- * GSignalQuery:
- * @signal_id: The signal id of the signal being queried, or 0 if the signal to be queried was unknown.
- * @signal_name: The signal name.
- * @itype: The interface/instance type that this signal can be emitted for.
- * @signal_flags: The signal flags as passed in to g_signal_new().
- * @return_type: The return type for user callbacks.
- * @n_params: The number of parameters that user callbacks take.
- * @param_types: The individual parameter types for user callbacks, note that the effective callback signature is: <programlisting> @return_type callback (#gpointer     data1, [param_types param_names,] gpointer     data2); </programlisting>
- *
- * A structure holding in-depth information for a specific signal. It is
- * filled in by the g_signal_query() function.
- */
-
-
-/**
- * GSource:
- *
- * The <structname>GSource</structname> struct is an opaque data type
- * representing an event source.
- */
-
-
-/**
- * GSourceCallbackFuncs:
- * @ref: Called when a reference is added to the callback object
- * @unref: Called when a reference to the callback object is dropped
- * @get: Called to extract the callback function and data from the callback object.
- *
- * The <structname>GSourceCallbackFuncs</structname> struct contains
- * functions for managing callback objects.
- */
-
-
-/**
- * GSourceDummyMarshal:
- *
- * This is just a placeholder for #GClosureMarshal,
- * which cannot be used here for dependency reasons.
- */
-
-
-/**
- * GSourceFunc:
- * @user_data: data passed to the function, set when the source was created with one of the above functions
- *
- * Specifies the type of function passed to g_timeout_add(),
- * g_timeout_add_full(), g_idle_add(), and g_idle_add_full().
- *
- * Returns: %FALSE if the source should be removed
- */
-
-
-/**
- * GSourceFuncs:
- * @prepare: Called before all the file descriptors are polled. If the source can determine that it is ready here (without waiting for the results of the poll() call) it should return %TRUE. It can also return a @timeout_ value which should be the maximum timeout (in milliseconds) which should be passed to the poll() call. The actual timeout used will be -1 if all sources returned -1, or it will be the minimum of all the @timeout_ values returned which were >= 0.
- * @check: Called after all the file descriptors are polled. The source should return %TRUE if it is ready to be dispatched. Note that some time may have passed since the previous prepare function was called, so the source should be checked again here.
- * @dispatch: Called to dispatch the event source, after it has returned %TRUE in either its @prepare or its @check function. The @dispatch function is passed in a callback function and data. The callback function may be %NULL if the source was never connected to a callback using g_source_set_callback(). The @dispatch function should call the callback function with @user_data and whatever additional parameters are needed for this type of event source.
- * @finalize: Called when the source is finalized.
- *
- * The <structname>GSourceFuncs</structname> struct contains a table of
- * functions used to handle event sources in a generic manner.
- *
- * For idle sources, the prepare and check functions always return %TRUE
- * to indicate that the source is always ready to be processed. The prepare
- * function also returns a timeout value of 0 to ensure that the poll() call
- * doesn't block (since that would be time wasted which could have been spent
- * running the idle function).
- *
- * For timeout sources, the prepare and check functions both return %TRUE
- * if the timeout interval has expired. The prepare function also returns
- * a timeout value to ensure that the poll() call doesn't block too long
- * and miss the next timeout.
- *
- * For file descriptor sources, the prepare function typically returns %FALSE,
- * since it must wait until poll() has been called before it knows whether
- * any events need to be processed. It sets the returned timeout to -1 to
- * indicate that it doesn't mind how long the poll() call blocks. In the
- * check function, it tests the results of the poll() call to see if the
- * required condition has been met, and returns %TRUE if so.
- */
-
-
-/**
- * GSpawnChildSetupFunc:
- * @user_data: user data to pass to the function.
- *
- * Specifies the type of the setup function passed to g_spawn_async(),
- * g_spawn_sync() and g_spawn_async_with_pipes(), which can, in very
- * limited ways, be used to affect the child's execution.
- *
- * On POSIX platforms, the function is called in the child after GLib
- * has performed all the setup it plans to perform, but before calling
- * exec(). Actions taken in this function will only affect the child,
- * not the parent.
- *
- * On Windows, the function is called in the parent. Its usefulness on
- * Windows is thus questionable. In many cases executing the child setup
- * function in the parent can have ill effects, and you should be very
- * careful when porting software to Windows that uses child setup
- * functions.
- *
- * However, even on POSIX, you are extremely limited in what you can
- * safely do from a #GSpawnChildSetupFunc, because any mutexes that
- * were held by other threads in the parent process at the time of the
- * fork() will still be locked in the child process, and they will
- * never be unlocked (since the threads that held them don't exist in
- * the child). POSIX allows only async-signal-safe functions (see
- * <citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>)
- * to be called in the child between fork() and exec(), which
- * drastically limits the usefulness of child setup functions.
- *
- * In particular, it is not safe to call any function which may
- * call malloc(), which includes POSIX functions such as setenv().
- * If you need to set up the child environment differently from
- * the parent, you should use g_get_environ(), g_environ_setenv(),
- * and g_environ_unsetenv(), and then pass the complete environment
- * list to the <literal>g_spawn...</literal> function.
- */
-
-
-/**
- * GSpawnError:
- * @G_SPAWN_ERROR_FORK: Fork failed due to lack of memory.
- * @G_SPAWN_ERROR_READ: Read or select on pipes failed.
- * @G_SPAWN_ERROR_CHDIR: Changing to working directory failed.
- * @G_SPAWN_ERROR_ACCES: execv() returned <literal>EACCES</literal>
- * @G_SPAWN_ERROR_PERM: execv() returned <literal>EPERM</literal>
- * @G_SPAWN_ERROR_TOO_BIG: execv() returned <literal>E2BIG</literal>
- * @G_SPAWN_ERROR_2BIG: deprecated alias for %G_SPAWN_ERROR_TOO_BIG
- * @G_SPAWN_ERROR_NOEXEC: execv() returned <literal>ENOEXEC</literal>
- * @G_SPAWN_ERROR_NAMETOOLONG: execv() returned <literal>ENAMETOOLONG</literal>
- * @G_SPAWN_ERROR_NOENT: execv() returned <literal>ENOENT</literal>
- * @G_SPAWN_ERROR_NOMEM: execv() returned <literal>ENOMEM</literal>
- * @G_SPAWN_ERROR_NOTDIR: execv() returned <literal>ENOTDIR</literal>
- * @G_SPAWN_ERROR_LOOP: execv() returned <literal>ELOOP</literal>
- * @G_SPAWN_ERROR_TXTBUSY: execv() returned <literal>ETXTBUSY</literal>
- * @G_SPAWN_ERROR_IO: execv() returned <literal>EIO</literal>
- * @G_SPAWN_ERROR_NFILE: execv() returned <literal>ENFILE</literal>
- * @G_SPAWN_ERROR_MFILE: execv() returned <literal>EMFILE</literal>
- * @G_SPAWN_ERROR_INVAL: execv() returned <literal>EINVAL</literal>
- * @G_SPAWN_ERROR_ISDIR: execv() returned <literal>EISDIR</literal>
- * @G_SPAWN_ERROR_LIBBAD: execv() returned <literal>ELIBBAD</literal>
- * @G_SPAWN_ERROR_FAILED: Some other fatal failure, <literal>error-&gt;message</literal> should explain.
- *
- * Error codes returned by spawning processes.
- */
-
-
-/**
- * GSpawnFlags:
- * @G_SPAWN_LEAVE_DESCRIPTORS_OPEN: 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_DO_NOT_REAP_CHILD: the child will not be automatically reaped; you must use g_child_watch_add() yourself (or call waitpid() or handle <literal>SIGCHLD</literal> yourself), or the child will become a zombie.
- * @G_SPAWN_SEARCH_PATH: <literal>argv[0]</literal> need not be an absolute path, it will be looked for in the user's <envar>PATH</envar>.
- * @G_SPAWN_STDOUT_TO_DEV_NULL: the child's standard output will be discarded, instead of going to the same location as the parent's standard output.
- * @G_SPAWN_STDERR_TO_DEV_NULL: the child's standard error will be discarded.
- * @G_SPAWN_CHILD_INHERITS_STDIN: the child will inherit the parent's standard input (by default, the child's standard input is attached to <filename>/dev/null</filename>).
- * @G_SPAWN_FILE_AND_ARGV_ZERO: the first element of <literal>argv</literal> 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 <literal>argv[0]</literal> as the file to execute, and passes all of <literal>argv</literal> to the child.
- *
- * Flags passed to g_spawn_sync(), g_spawn_async() and g_spawn_async_with_pipes().
- */
-
-
-/**
  * GStatBuf:
  *
  * A type corresponding to the appropriate struct type for the stat
@@ -3412,13 +1729,6 @@
 
 
 /**
- * GStrv:
- *
- * A C representable type name for #G_TYPE_STRV.
- */
-
-
-/**
  * GTestCase:
  *
  * An opaque structure representing a test case.
@@ -3466,20 +1776,6 @@
 
 
 /**
- * GTestLogFatalFunc:
- * @log_domain: the log domain of the message
- * @log_level: the log level of the message (including the fatal and recursion flags)
- * @message: the message to process
- * @user_data: user data, set in g_test_log_set_fatal_handler()
- *
- * Specifies the prototype of fatal log handler functions.
- *
- * Returns: %TRUE if the program should abort, %FALSE otherwise
- * Since: 2.22
- */
-
-
-/**
  * GTestSuite:
  *
  * An opaque structure representing a test suite.
@@ -3571,32 +1867,6 @@
 
 
 /**
- * GTimeSpan:
- *
- * A value representing an interval of time, in microseconds.
- *
- * Since: 2.26
- */
-
-
-/**
- * GTimeType:
- * @G_TIME_TYPE_STANDARD: the time is in local standard time
- * @G_TIME_TYPE_DAYLIGHT: the time is in local daylight time
- * @G_TIME_TYPE_UNIVERSAL: the time is in UTC
- *
- * Disambiguates a given time in two ways.
- *
- * First, specifies if the given time is in universal or local time.
- *
- * Second, if the time is in local time, specifies if it is local
- * standard time or local daylight time.  This is important for the case
- * where the same local time occurs twice (during daylight savings time
- * transitions, for example).
- */
-
-
-/**
  * GTimeVal:
  * @tv_sec: seconds
  * @tv_usec: microseconds
@@ -3629,17 +1899,6 @@
 
 
 /**
- * GToggleNotify:
- * @data: Callback data passed to g_object_add_toggle_ref()
- * @object: The object on which g_object_add_toggle_ref() was called.
- * @is_last_ref: %TRUE if the toggle reference is now the last reference to the object. %FALSE if the toggle reference was the last reference and there are now other references.
- *
- * A callback function used for notification when the state
- * of a toggle reference changes. See g_object_add_toggle_ref().
- */
-
-
-/**
  * GTokenType:
  * @G_TOKEN_EOF: the end of the file
  * @G_TOKEN_LEFT_PAREN: a '(' character
@@ -3690,18 +1949,6 @@
 
 
 /**
- * GTranslateFunc:
- * @str: the untranslated string
- * @data: user data specified when installing the function, e.g. in g_option_group_set_translate_func()
- *
- * The type of functions which are used to translate user-visible
- * strings, for <option>--help</option> output.
- *
- * Returns: a translation of the string for the current locale. The returned string is owned by GLib and must not be freed.
- */
-
-
-/**
  * GTrashStack:
  * @next: pointer to the previous element of the stack, gets stored in the first <literal>sizeof (gpointer)</literal> bytes of the element
  *
@@ -3762,312 +2009,75 @@
 
 
 /**
- * GType:
+ * GUINT16_FROM_BE:
+ * @val: a #guint16 value in big-endian byte order
  *
- * A numerical value which represents the unique identifier of a registered
- * type.
+ * Converts a #guint16 value from big-endian to host byte order.
+ *
+ * Returns: @val converted to host byte order
  */
 
 
 /**
- * GTypeClass:
+ * GUINT16_FROM_LE:
+ * @val: a #guint16 value in little-endian byte order
+ *
+ * Converts a #guint16 value from little-endian to host byte order.
  *
- * An opaque structure used as the base of all classes.
+ * Returns: @val converted to host byte order
  */
 
 
 /**
- * GTypeClassCacheFunc:
- * @cache_data: data that was given to the g_type_add_class_cache_func() call
- * @g_class: The #GTypeClass structure which is unreferenced
- *
- * A callback function which is called when the reference count of a class
- * drops to zero. It may use g_type_class_ref() to prevent the class from
- * being freed. You should not call g_type_class_unref() from a
- * #GTypeClassCacheFunc function to prevent infinite recursion, use
- * g_type_class_unref_uncached() instead.
+ * GUINT16_SWAP_BE_PDP:
+ * @val: a #guint16 value in big-endian or pdp-endian byte order
  *
- * 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.
+ * Converts a #guint16 value between big-endian and pdp-endian byte order.
+ * The conversion is symmetric so it can be used both ways.
  *
- * Returns: %TRUE to stop further #GTypeClassCacheFunc<!-- -->s from being called, %FALSE to continue.
+ * Returns: @val converted to the opposite byte order
  */
 
 
 /**
- * GTypeDebugFlags:
- * @G_TYPE_DEBUG_NONE: Print no messages.
- * @G_TYPE_DEBUG_OBJECTS: Print messages about object bookkeeping.
- * @G_TYPE_DEBUG_SIGNALS: Print messages about signal emissions.
- * @G_TYPE_DEBUG_MASK: Mask covering all debug flags.
+ * GUINT16_SWAP_LE_BE:
+ * @val: a #guint16 value in little-endian or big-endian byte order
  *
- * The <type>GTypeDebugFlags</type> enumeration values can be passed to
- * g_type_init_with_debug_flags() to trigger debugging messages during runtime.
- * Note that the messages can also be triggered by setting the
- * <envar>GOBJECT_DEBUG</envar> environment variable to a ':'-separated list of
- * "objects" and "signals".
+ * Converts a #guint16 value between little-endian and big-endian byte order.
+ * The conversion is symmetric so it can be used both ways.
+ *
+ * Returns: @val converted to the opposite byte order
  */
 
 
 /**
- * GTypeFlags:
- * @G_TYPE_FLAG_ABSTRACT: Indicates an abstract type. No instances can be created for an abstract type.
- * @G_TYPE_FLAG_VALUE_ABSTRACT: Indicates an abstract value type, i.e. a type that introduces a value table, but can't be used for g_value_init().
+ * GUINT16_SWAP_LE_PDP:
+ * @val: a #guint16 value in little-endian or pdp-endian byte order
+ *
+ * Converts a #guint16 value between little-endian and pdp-endian byte order.
+ * The conversion is symmetric so it can be used both ways.
  *
- * Bit masks used to check or determine characteristics of a type.
+ * Returns: @val converted to the opposite byte order
  */
 
 
 /**
- * GTypeFundamentalFlags:
- * @G_TYPE_FLAG_CLASSED: Indicates a classed type.
- * @G_TYPE_FLAG_INSTANTIATABLE: Indicates an instantiable type (implies classed).
- * @G_TYPE_FLAG_DERIVABLE: Indicates a flat derivable type.
- * @G_TYPE_FLAG_DEEP_DERIVABLE: Indicates a deep derivable type (implies derivable).
+ * GUINT16_TO_BE:
+ * @val: a #guint16 value in host byte order
  *
- * Bit masks used to check or determine specific characteristics of a
- * fundamental type.
+ * Converts a #guint16 value from host byte order to big-endian.
+ *
+ * Returns: @val converted to big-endian
  */
 
 
 /**
- * GTypeFundamentalInfo:
- * @type_flags: #GTypeFundamentalFlags describing the characteristics of the fundamental type
+ * GUINT16_TO_LE:
+ * @val: a #guint16 value in host byte order
+ *
+ * Converts a #guint16 value from host byte order to little-endian.
  *
- * A structure that provides information to the type system which is
- * used specifically for managing fundamental types.
- */
-
-
-/**
- * GTypeInfo:
- * @class_size: Size of the class structure (required for interface, classed and instantiatable types).
- * @base_init: Location of the base initialization function (optional).
- * @base_finalize: Location of the base finalization function (optional).
- * @class_init: Location of the class initialization function for classed and instantiatable types. Location of the default vtable inititalization function for interface types. (optional) This function is used both to fill in virtual functions in the class or default vtable, and to do type-specific setup such as registering signals and object properties.
- * @class_finalize: Location of the class finalization function for classed and instantiatable types. Location fo the default vtable finalization function for interface types. (optional)
- * @class_data: User-supplied data passed to the class init/finalize functions.
- * @instance_size: Size of the instance (object) structure (required for instantiatable types only).
- * @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
- * @instance_init: Location of the instance initialization function (optional, for instantiatable types only).
- * @value_table: A #GTypeValueTable function table for generic handling of GValues of this type (usually only useful for fundamental types).
- *
- * This structure is used to provide the type system with the information
- * required to initialize and destruct (finalize) a type's class and
- * its instances.
- * The initialized structure is passed to the g_type_register_static() function
- * (or is copied into the provided #GTypeInfo structure in the
- * g_type_plugin_complete_type_info()). The type system will perform a deep
- * copy of this structure, so its memory does not need to be persistent
- * across invocation of g_type_register_static().
- */
-
-
-/**
- * GTypeInstance:
- *
- * An opaque structure used as the base of all type instances.
- */
-
-
-/**
- * GTypeInterface:
- *
- * An opaque structure used as the base of all interface types.
- */
-
-
-/**
- * GTypeInterfaceCheckFunc:
- * @check_data: data passed to g_type_add_interface_check().
- * @g_iface: the interface that has been initialized
- *
- * A callback called after an interface vtable is initialized.
- * See g_type_add_interface_check().
- *
- * Since: 2.4
- */
-
-
-/**
- * GTypeModule:
- * @name: the name of the module
- *
- * The members of the <structname>GTypeModule</structname> structure should not
- * be accessed directly, except for the @name field.
- */
-
-
-/**
- * GTypeModuleClass:
- * @parent_class: the parent class
- * @load: loads the module and registers one or more types using g_type_module_register_type().
- * @unload: unloads the module
- *
- * In order to implement dynamic loading of types based on #GTypeModule,
- * the @load and @unload functions in #GTypeModuleClass must be implemented.
- */
-
-
-/**
- * GTypePlugin:
- *
- * The <structname>GTypePlugin</structname> typedef is used as a placeholder
- * for objects that implement the <structname>GTypePlugin</structname>
- * interface.
- */
-
-
-/**
- * GTypePluginClass:
- * @use_plugin: Increases the use count of the plugin.
- * @unuse_plugin: Decreases the use count of the plugin.
- * @complete_type_info: Fills in the #GTypeInfo and #GTypeValueTable structs for the type. The structs are initialized with <literal>memset(s, 0, sizeof (s))</literal> before calling this function.
- * @complete_interface_info: Fills in missing parts of the #GInterfaceInfo for the interface. The structs is initialized with <literal>memset(s, 0, sizeof (s))</literal> before calling this function.
- *
- * The #GTypePlugin interface is used by the type system in order to handle
- * the lifecycle of dynamically loaded types.
- */
-
-
-/**
- * GTypePluginCompleteInterfaceInfo:
- * @plugin: the #GTypePlugin
- * @instance_type: the #GType of an instantiable type to which the interface is added
- * @interface_type: the #GType of the interface whose info is completed
- * @info: the #GInterfaceInfo to fill in
- *
- * The type of the @complete_interface_info function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginCompleteTypeInfo:
- * @plugin: the #GTypePlugin
- * @g_type: the #GType whose info is completed
- * @info: the #GTypeInfo struct to fill in
- * @value_table: the #GTypeValueTable to fill in
- *
- * The type of the @complete_type_info function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginUnuse:
- * @plugin: the #GTypePlugin whose use count should be decreased
- *
- * The type of the @unuse_plugin function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginUse:
- * @plugin: the #GTypePlugin whose use count should be increased
- *
- * The type of the @use_plugin function of #GTypePluginClass, which gets called
- * to increase the use count of @plugin.
- */
-
-
-/**
- * GTypeQuery:
- * @type: the #GType value of the type.
- * @type_name: the name of the type.
- * @class_size: the size of the class structure.
- * @instance_size: the size of the instance structure.
- *
- * A structure holding information for a specific type. It is
- * filled in by the g_type_query() function.
- */
-
-
-/**
- * GTypeValueTable:
- * @value_init: Default initialize @values contents by poking values directly into the value->data array. The data array of the #GValue passed into this function was zero-filled with <function>memset()</function>, so no care has to be taken to free any old contents. E.g. for the implementation of a string value that may never be %NULL, the implementation might look like: |[ value->data[0].v_pointer = g_strdup (""); ]|
- * @value_free: Free any old contents that might be left in the data array of the passed in @value. No resources may remain allocated through the #GValue contents after this function returns. E.g. for our above string type: |[ // only free strings without a specific flag for static storage if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS)) g_free (value->data[0].v_pointer); ]|
- * @value_copy: @dest_value is a #GValue with zero-filled data section and @src_value is a properly setup #GValue of same or derived type. The purpose of this function is to copy the contents of @src_value into @dest_value in a way, that even after @src_value has been freed, the contents of @dest_value remain valid. String type example: |[ dest_value->data[0].v_pointer = g_strdup (src_value->data[0].v_pointer); ]|
- * @value_peek_pointer: If the value contents fit into a pointer, such as objects or strings, return this pointer, so the caller can peek at the current contents. To extend on our above string example: |[ return value->data[0].v_pointer; ]|
- * @collect_format: A string format describing how to collect the contents of this value bit-by-bit. Each character in the format represents an argument to be collected, and the characters themselves indicate the type of the argument. Currently supported arguments are: <variablelist> <varlistentry><term /><listitem><para> 'i' - Integers. passed as collect_values[].v_int. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'l' - Longs. passed as collect_values[].v_long. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'd' - Doubles. passed as collect_values[].v_double. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'p' - Pointers. passed as collect_values[].v_pointer. </para></listitem></varlistentry> </variablelist> It should be noted that for variable argument list construction, ANSI C promotes every type smaller than an integer to an int, and floats to doubles. So for collection of short int or char, 'i
 ' needs to be used, and for collection of floats 'd'.
- * @collect_value: The collect_value() function is responsible for converting the values collected from a variable argument list into contents suitable for storage in a GValue. This function should setup @value similar to value_init(); e.g. for a string value that does not allow %NULL pointers, it needs to either spew an error, or do an implicit conversion by storing an empty string. The @value passed in to this function has a zero-filled data array, so just like for value_init() it is guaranteed to not contain any old contents that might need freeing. @n_collect_values is exactly the string length of @collect_format, and @collect_values is an array of unions #GTypeCValue with length @n_collect_values, containing the collected values according to @collect_format. @collect_flags is an argument provided as a hint by the caller. It may contain the flag %G_VALUE_NOCOPY_CONTENTS indicating, that the collected value contents may be considered "static" for the duration of the @valu
 e lifetime. Thus an extra copy of the contents stored in @collect_values is not required for assignment to @value. For our above string example, we continue with: |[ if (!collect_values[0].v_pointer) value->data[0].v_pointer = g_strdup (""); else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { value->data[0].v_pointer = collect_values[0].v_pointer; // keep a flag for the value_free() implementation to not free this string value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; } else value->data[0].v_pointer = g_strdup (collect_values[0].v_pointer); return NULL; ]| It should be noted, that it is generally a bad idea to follow the #G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to reentrancy requirements and reference count assertions performed by the signal emission code, reference counts should always be incremented for reference counted contents stored in the value->data array.  To deviate from our string example for a moment, and taking a look at an exemplary imple
 mentation for collect_value() of #GObject: |[ if (collect_values[0].v_pointer) { GObject *object = G_OBJECT (collect_values[0].v_pointer); // never honour G_VALUE_NOCOPY_CONTENTS for ref-counted types value->data[0].v_pointer = g_object_ref (object); return NULL; } else return g_strdup_printf ("Object passed as invalid NULL pointer"); } ]| The reference count for valid objects is always incremented, regardless of @collect_flags. For invalid objects, the example returns a newly allocated string without altering @value. Upon success, collect_value() needs to return %NULL. If, however, an error condition occurred, collect_value() may spew an error by returning a newly allocated non-%NULL string, giving a suitable description of the error condition. The calling code makes no assumptions about the @value contents being valid upon error returns, @value is simply thrown away without further freeing. As such, it is a good idea to not allocate #GValue contents, prior to returning an 
 error, however, collect_values() is not obliged to return a correctly setup @value for error returns, simply because any non-%NULL return is considered a fatal condition so further program behaviour is undefined.
- * @lcopy_format: Format description of the arguments to collect for @lcopy_value, analogous to @collect_format. Usually, @lcopy_format string consists only of 'p's to provide lcopy_value() with pointers to storage locations.
- * @lcopy_value: This function is responsible for storing the @value contents into arguments passed through a variable argument list which got collected into @collect_values according to @lcopy_format. @n_collect_values equals the string length of @lcopy_format, and @collect_flags may contain %G_VALUE_NOCOPY_CONTENTS. In contrast to collect_value(), lcopy_value() is obliged to always properly support %G_VALUE_NOCOPY_CONTENTS. Similar to collect_value() the function may prematurely abort by returning a newly allocated string describing an error condition. To complete the string example: |[ gchar **string_p = collect_values[0].v_pointer; if (!string_p) return g_strdup_printf ("string location passed as NULL"); if (collect_flags & G_VALUE_NOCOPY_CONTENTS) *string_p = value->data[0].v_pointer; else *string_p = g_strdup (value->data[0].v_pointer); ]| And an illustrative version of lcopy_value() for reference-counted types: |[ GObject **object_p = collect_values[0].v_pointer; if (
 !object_p) return g_strdup_printf ("object location passed as NULL"); if (!value->data[0].v_pointer) *object_p = NULL; else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) /&ast; always honour &ast;/ *object_p = value->data[0].v_pointer; else *object_p = g_object_ref (value->data[0].v_pointer); return NULL; ]|
- *
- * The #GTypeValueTable provides the functions required by the #GValue implementation,
- * to serve as a container for values of a type.
- */
-
-
-/**
- * GUINT16_FROM_BE:
- * @val: a #guint16 value in big-endian byte order
- *
- * Converts a #guint16 value from big-endian to host byte order.
- *
- * Returns: @val converted to host byte order
- */
-
-
-/**
- * GUINT16_FROM_LE:
- * @val: a #guint16 value in little-endian byte order
- *
- * Converts a #guint16 value from little-endian to host byte order.
- *
- * Returns: @val converted to host byte order
- */
-
-
-/**
- * GUINT16_SWAP_BE_PDP:
- * @val: a #guint16 value in big-endian or pdp-endian byte order
- *
- * Converts a #guint16 value between big-endian and pdp-endian byte order.
- * The conversion is symmetric so it can be used both ways.
- *
- * Returns: @val converted to the opposite byte order
- */
-
-
-/**
- * GUINT16_SWAP_LE_BE:
- * @val: a #guint16 value in little-endian or big-endian byte order
- *
- * Converts a #guint16 value between little-endian and big-endian byte order.
- * The conversion is symmetric so it can be used both ways.
- *
- * Returns: @val converted to the opposite byte order
- */
-
-
-/**
- * GUINT16_SWAP_LE_PDP:
- * @val: a #guint16 value in little-endian or pdp-endian byte order
- *
- * Converts a #guint16 value between little-endian and pdp-endian byte order.
- * The conversion is symmetric so it can be used both ways.
- *
- * Returns: @val converted to the opposite byte order
- */
-
-
-/**
- * GUINT16_TO_BE:
- * @val: a #guint16 value in host byte order
- *
- * Converts a #guint16 value from host byte order to big-endian.
- *
- * Returns: @val converted to big-endian
- */
-
-
-/**
- * GUINT16_TO_LE:
- * @val: a #guint16 value in host byte order
- *
- * Converts a #guint16 value from host byte order to little-endian.
- *
- * Returns: @val converted to little-endian
+ * Returns: @val converted to little-endian
  */
 
 
@@ -4284,274 +2294,6 @@
 
 
 /**
- * GUnicodeBreakType:
- * @G_UNICODE_BREAK_MANDATORY: Mandatory Break (BK)
- * @G_UNICODE_BREAK_CARRIAGE_RETURN: Carriage Return (CR)
- * @G_UNICODE_BREAK_LINE_FEED: Line Feed (LF)
- * @G_UNICODE_BREAK_COMBINING_MARK: Attached Characters and Combining Marks (CM)
- * @G_UNICODE_BREAK_SURROGATE: Surrogates (SG)
- * @G_UNICODE_BREAK_ZERO_WIDTH_SPACE: Zero Width Space (ZW)
- * @G_UNICODE_BREAK_INSEPARABLE: Inseparable (IN)
- * @G_UNICODE_BREAK_NON_BREAKING_GLUE: Non-breaking ("Glue") (GL)
- * @G_UNICODE_BREAK_CONTINGENT: Contingent Break Opportunity (CB)
- * @G_UNICODE_BREAK_SPACE: Space (SP)
- * @G_UNICODE_BREAK_AFTER: Break Opportunity After (BA)
- * @G_UNICODE_BREAK_BEFORE: Break Opportunity Before (BB)
- * @G_UNICODE_BREAK_BEFORE_AND_AFTER: Break Opportunity Before and After (B2)
- * @G_UNICODE_BREAK_HYPHEN: Hyphen (HY)
- * @G_UNICODE_BREAK_NON_STARTER: Nonstarter (NS)
- * @G_UNICODE_BREAK_OPEN_PUNCTUATION: Opening Punctuation (OP)
- * @G_UNICODE_BREAK_CLOSE_PUNCTUATION: Closing Punctuation (CL)
- * @G_UNICODE_BREAK_QUOTATION: Ambiguous Quotation (QU)
- * @G_UNICODE_BREAK_EXCLAMATION: Exclamation/Interrogation (EX)
- * @G_UNICODE_BREAK_IDEOGRAPHIC: Ideographic (ID)
- * @G_UNICODE_BREAK_NUMERIC: Numeric (NU)
- * @G_UNICODE_BREAK_INFIX_SEPARATOR: Infix Separator (Numeric) (IS)
- * @G_UNICODE_BREAK_SYMBOL: Symbols Allowing Break After (SY)
- * @G_UNICODE_BREAK_ALPHABETIC: Ordinary Alphabetic and Symbol Characters (AL)
- * @G_UNICODE_BREAK_PREFIX: Prefix (Numeric) (PR)
- * @G_UNICODE_BREAK_POSTFIX: Postfix (Numeric) (PO)
- * @G_UNICODE_BREAK_COMPLEX_CONTEXT: Complex Content Dependent (South East Asian) (SA)
- * @G_UNICODE_BREAK_AMBIGUOUS: Ambiguous (Alphabetic or Ideographic) (AI)
- * @G_UNICODE_BREAK_UNKNOWN: Unknown (XX)
- * @G_UNICODE_BREAK_NEXT_LINE: Next Line (NL)
- * @G_UNICODE_BREAK_WORD_JOINER: Word Joiner (WJ)
- * @G_UNICODE_BREAK_HANGUL_L_JAMO: Hangul L Jamo (JL)
- * @G_UNICODE_BREAK_HANGUL_V_JAMO: Hangul V Jamo (JV)
- * @G_UNICODE_BREAK_HANGUL_T_JAMO: Hangul T Jamo (JT)
- * @G_UNICODE_BREAK_HANGUL_LV_SYLLABLE: Hangul LV Syllable (H2)
- * @G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE: Hangul LVT Syllable (H3)
- * @G_UNICODE_BREAK_CLOSE_PARANTHESIS: Closing Parenthesis (CP). Since 2.28
- * @G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER: Conditional Japanese Starter (CJ). Since: 2.32
- * @G_UNICODE_BREAK_HEBREW_LETTER: Hebrew Letter (HL). Since: 2.32
- *
- * These are the possible line break classifications.
- *
- * The five Hangul types were added in Unicode 4.1, so, has been
- * introduced in GLib 2.10. Note that new types may be added in the future.
- * Applications should be ready to handle unknown values.
- * They may be regarded as %G_UNICODE_BREAK_UNKNOWN.
- *
- * See <ulink url="http://www.unicode.org/unicode/reports/tr14/";>http://www.unicode.org/unicode/reports/tr14/</ulink>.
- */
-
-
-/**
- * GUnicodeScript:
- * @G_UNICODE_SCRIPT_INVALID_CODE: a value never returned from g_unichar_get_script()
- * @G_UNICODE_SCRIPT_COMMON: a character used by multiple different scripts
- * @G_UNICODE_SCRIPT_INHERITED: a mark glyph that takes its script from the i                             base glyph to which it is attached
- * @G_UNICODE_SCRIPT_ARABIC: Arabic
- * @G_UNICODE_SCRIPT_ARMENIAN: Armenian
- * @G_UNICODE_SCRIPT_BENGALI: Bengali
- * @G_UNICODE_SCRIPT_BOPOMOFO: Bopomofo
- * @G_UNICODE_SCRIPT_CHEROKEE: Cherokee
- * @G_UNICODE_SCRIPT_COPTIC: Coptic
- * @G_UNICODE_SCRIPT_CYRILLIC: Cyrillic
- * @G_UNICODE_SCRIPT_DESERET: Deseret
- * @G_UNICODE_SCRIPT_DEVANAGARI: Devanagari
- * @G_UNICODE_SCRIPT_ETHIOPIC: Ethiopic
- * @G_UNICODE_SCRIPT_GEORGIAN: Georgian
- * @G_UNICODE_SCRIPT_GOTHIC: Gothic
- * @G_UNICODE_SCRIPT_GREEK: Greek
- * @G_UNICODE_SCRIPT_GUJARATI: Gujarati
- * @G_UNICODE_SCRIPT_GURMUKHI: Gurmukhi
- * @G_UNICODE_SCRIPT_HAN: Han
- * @G_UNICODE_SCRIPT_HANGUL: Hangul
- * @G_UNICODE_SCRIPT_HEBREW: Hebrew
- * @G_UNICODE_SCRIPT_HIRAGANA: Hiragana
- * @G_UNICODE_SCRIPT_KANNADA: Kannada
- * @G_UNICODE_SCRIPT_KATAKANA: Katakana
- * @G_UNICODE_SCRIPT_KHMER: Khmer
- * @G_UNICODE_SCRIPT_LAO: Lao
- * @G_UNICODE_SCRIPT_LATIN: Latin
- * @G_UNICODE_SCRIPT_MALAYALAM: Malayalam
- * @G_UNICODE_SCRIPT_MONGOLIAN: Mongolian
- * @G_UNICODE_SCRIPT_MYANMAR: Myanmar
- * @G_UNICODE_SCRIPT_OGHAM: Ogham
- * @G_UNICODE_SCRIPT_OLD_ITALIC: Old Italic
- * @G_UNICODE_SCRIPT_ORIYA: Oriya
- * @G_UNICODE_SCRIPT_RUNIC: Runic
- * @G_UNICODE_SCRIPT_SINHALA: Sinhala
- * @G_UNICODE_SCRIPT_SYRIAC: Syriac
- * @G_UNICODE_SCRIPT_TAMIL: Tamil
- * @G_UNICODE_SCRIPT_TELUGU: Telugu
- * @G_UNICODE_SCRIPT_THAANA: Thaana
- * @G_UNICODE_SCRIPT_THAI: Thai
- * @G_UNICODE_SCRIPT_TIBETAN: Tibetan
- * @G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL: Canadian Aboriginal
- * @G_UNICODE_SCRIPT_YI: Yi
- * @G_UNICODE_SCRIPT_TAGALOG: Tagalog
- * @G_UNICODE_SCRIPT_HANUNOO: Hanunoo
- * @G_UNICODE_SCRIPT_BUHID: Buhid
- * @G_UNICODE_SCRIPT_TAGBANWA: Tagbanwa
- * @G_UNICODE_SCRIPT_BRAILLE: Braille
- * @G_UNICODE_SCRIPT_CYPRIOT: Cypriot
- * @G_UNICODE_SCRIPT_LIMBU: Limbu
- * @G_UNICODE_SCRIPT_OSMANYA: Osmanya
- * @G_UNICODE_SCRIPT_SHAVIAN: Shavian
- * @G_UNICODE_SCRIPT_LINEAR_B: Linear B
- * @G_UNICODE_SCRIPT_TAI_LE: Tai Le
- * @G_UNICODE_SCRIPT_UGARITIC: Ugaritic
- * @G_UNICODE_SCRIPT_NEW_TAI_LUE: New Tai Lue
- * @G_UNICODE_SCRIPT_BUGINESE: Buginese
- * @G_UNICODE_SCRIPT_GLAGOLITIC: Glagolitic
- * @G_UNICODE_SCRIPT_TIFINAGH: Tifinagh
- * @G_UNICODE_SCRIPT_SYLOTI_NAGRI: Syloti Nagri
- * @G_UNICODE_SCRIPT_OLD_PERSIAN: Old Persian
- * @G_UNICODE_SCRIPT_KHAROSHTHI: Kharoshthi
- * @G_UNICODE_SCRIPT_UNKNOWN: an unassigned code point
- * @G_UNICODE_SCRIPT_BALINESE: Balinese
- * @G_UNICODE_SCRIPT_CUNEIFORM: Cuneiform
- * @G_UNICODE_SCRIPT_PHOENICIAN: Phoenician
- * @G_UNICODE_SCRIPT_PHAGS_PA: Phags-pa
- * @G_UNICODE_SCRIPT_NKO: N'Ko
- * @G_UNICODE_SCRIPT_KAYAH_LI: Kayah Li. Since 2.16.3
- * @G_UNICODE_SCRIPT_LEPCHA: Lepcha. Since 2.16.3
- * @G_UNICODE_SCRIPT_REJANG: Rejang. Since 2.16.3
- * @G_UNICODE_SCRIPT_SUNDANESE: Sundanese. Since 2.16.3
- * @G_UNICODE_SCRIPT_SAURASHTRA: Saurashtra. Since 2.16.3
- * @G_UNICODE_SCRIPT_CHAM: Cham. Since 2.16.3
- * @G_UNICODE_SCRIPT_OL_CHIKI: Ol Chiki. Since 2.16.3
- * @G_UNICODE_SCRIPT_VAI: Vai. Since 2.16.3
- * @G_UNICODE_SCRIPT_CARIAN: Carian. Since 2.16.3
- * @G_UNICODE_SCRIPT_LYCIAN: Lycian. Since 2.16.3
- * @G_UNICODE_SCRIPT_LYDIAN: Lydian. Since 2.16.3
- * @G_UNICODE_SCRIPT_AVESTAN: Avestan. Since 2.26
- * @G_UNICODE_SCRIPT_BAMUM: Bamum. Since 2.26
- * @G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS: Egyptian Hieroglpyhs. Since 2.26
- * @G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC: Imperial Aramaic. Since 2.26
- * @G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI: Inscriptional Pahlavi. Since 2.26
- * @G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN: Inscriptional Parthian. Since 2.26
- * @G_UNICODE_SCRIPT_JAVANESE: Javanese. Since 2.26
- * @G_UNICODE_SCRIPT_KAITHI: Kaithi. Since 2.26
- * @G_UNICODE_SCRIPT_LISU: Lisu. Since 2.26
- * @G_UNICODE_SCRIPT_MEETEI_MAYEK: Meetei Mayek. Since 2.26
- * @G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN: Old South Arabian. Since 2.26
- * @G_UNICODE_SCRIPT_OLD_TURKIC: Old Turkic. Since 2.28
- * @G_UNICODE_SCRIPT_SAMARITAN: Samaritan. Since 2.26
- * @G_UNICODE_SCRIPT_TAI_THAM: Tai Tham. Since 2.26
- * @G_UNICODE_SCRIPT_TAI_VIET: Tai Viet. Since 2.26
- * @G_UNICODE_SCRIPT_BATAK: Batak. Since 2.28
- * @G_UNICODE_SCRIPT_BRAHMI: Brahmi. Since 2.28
- * @G_UNICODE_SCRIPT_MANDAIC: Mandaic. Since 2.28
- * @G_UNICODE_SCRIPT_CHAKMA: Chakma. Since: 2.32
- * @G_UNICODE_SCRIPT_MEROITIC_CURSIVE: Meroitic Cursive. Since: 2.32 @G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS, Meroitic Hieroglyphs. Since: 2.32
- * @G_UNICODE_SCRIPT_MIAO: Miao. Since: 2.32
- * @G_UNICODE_SCRIPT_SHARADA: Sharada. Since: 2.32
- * @G_UNICODE_SCRIPT_SORA_SOMPENG: Sora Sompeng. Since: 2.32
- * @G_UNICODE_SCRIPT_TAKRI: Takri. Since: 2.32
- *
- * The #GUnicodeScript enumeration identifies different writing
- * systems. The values correspond to the names as defined in the
- * Unicode standard. The enumeration has been added in GLib 2.14,
- * and is interchangeable with #PangoScript.
- *
- * Note that new types may be added in the future. Applications
- * should be ready to handle unknown values.
- * See <ulink
- * url="http://www.unicode.org/reports/tr24/";>Unicode Standard Annex
- * #24: Script names</ulink>.
- */
-
-
-/**
- * GUnicodeType:
- * @G_UNICODE_CONTROL: General category "Other, Control" (Cc)
- * @G_UNICODE_FORMAT: General category "Other, Format" (Cf)
- * @G_UNICODE_UNASSIGNED: General category "Other, Not Assigned" (Cn)
- * @G_UNICODE_PRIVATE_USE: General category "Other, Private Use" (Co)
- * @G_UNICODE_SURROGATE: General category "Other, Surrogate" (Cs)
- * @G_UNICODE_LOWERCASE_LETTER: General category "Letter, Lowercase" (Ll)
- * @G_UNICODE_MODIFIER_LETTER: General category "Letter, Modifier" (Lm)
- * @G_UNICODE_OTHER_LETTER: General category "Letter, Other" (Lo)
- * @G_UNICODE_TITLECASE_LETTER: General category "Letter, Titlecase" (Lt)
- * @G_UNICODE_UPPERCASE_LETTER: General category "Letter, Uppercase" (Lu)
- * @G_UNICODE_SPACING_MARK: General category "Mark, Spacing" (Mc)
- * @G_UNICODE_ENCLOSING_MARK: General category "Mark, Enclosing" (Me)
- * @G_UNICODE_NON_SPACING_MARK: General category "Mark, Nonspacing" (Mn)
- * @G_UNICODE_DECIMAL_NUMBER: General category "Number, Decimal Digit" (Nd)
- * @G_UNICODE_LETTER_NUMBER: General category "Number, Letter" (Nl)
- * @G_UNICODE_OTHER_NUMBER: General category "Number, Other" (No)
- * @G_UNICODE_CONNECT_PUNCTUATION: General category "Punctuation, Connector" (Pc)
- * @G_UNICODE_DASH_PUNCTUATION: General category "Punctuation, Dash" (Pd)
- * @G_UNICODE_CLOSE_PUNCTUATION: General category "Punctuation, Close" (Pe)
- * @G_UNICODE_FINAL_PUNCTUATION: General category "Punctuation, Final quote" (Pf)
- * @G_UNICODE_INITIAL_PUNCTUATION: General category "Punctuation, Initial quote" (Pi)
- * @G_UNICODE_OTHER_PUNCTUATION: General category "Punctuation, Other" (Po)
- * @G_UNICODE_OPEN_PUNCTUATION: General category "Punctuation, Open" (Ps)
- * @G_UNICODE_CURRENCY_SYMBOL: General category "Symbol, Currency" (Sc)
- * @G_UNICODE_MODIFIER_SYMBOL: General category "Symbol, Modifier" (Sk)
- * @G_UNICODE_MATH_SYMBOL: General category "Symbol, Math" (Sm)
- * @G_UNICODE_OTHER_SYMBOL: General category "Symbol, Other" (So)
- * @G_UNICODE_LINE_SEPARATOR: General category "Separator, Line" (Zl)
- * @G_UNICODE_PARAGRAPH_SEPARATOR: General category "Separator, Paragraph" (Zp)
- * @G_UNICODE_SPACE_SEPARATOR: General category "Separator, Space" (Zs)
- *
- * These are the possible character classifications from the
- * Unicode specification.
- * See <ulink url="http://www.unicode.org/Public/UNIDATA/UnicodeData.html";>http://www.unicode.org/Public/UNIDATA/UnicodeData.html</ulink>.
- */
-
-
-/**
- * GUserDirectory:
- * @G_USER_DIRECTORY_DESKTOP: the user's Desktop directory
- * @G_USER_DIRECTORY_DOCUMENTS: the user's Documents directory
- * @G_USER_DIRECTORY_DOWNLOAD: the user's Downloads directory
- * @G_USER_DIRECTORY_MUSIC: the user's Music directory
- * @G_USER_DIRECTORY_PICTURES: the user's Pictures directory
- * @G_USER_DIRECTORY_PUBLIC_SHARE: the user's shared directory
- * @G_USER_DIRECTORY_TEMPLATES: the user's Templates directory
- * @G_USER_DIRECTORY_VIDEOS: the user's Movies directory
- * @G_USER_N_DIRECTORIES: the number of enum values
- *
- * These are logical ids for special directories which are defined
- * depending on the platform used. You should use g_get_user_special_dir()
- * to retrieve the full path associated to the logical id.
- *
- * The #GUserDirectory enumeration can be extended at later date. Not
- * every platform has a directory for every logical id in this
- * enumeration.
- *
- * Since: 2.14
- */
-
-
-/**
- * GValue:
- *
- * An opaque structure used to hold different types of values.
- * The data within the structure has protected scope: it is accessible only
- * to functions within a #GTypeValueTable structure, or implementations of
- * the g_value_*() API. That is, code portions which implement new fundamental
- * types.
- * #GValue users cannot make any assumptions about how data is stored
- * within the 2 element @data union, and the @g_type member should
- * only be accessed through the G_VALUE_TYPE() macro.
- */
-
-
-/**
- * GValueArray:
- * @n_values: number of values contained in the array
- * @values: array of values
- *
- * A #GValueArray contains an array of #GValue elements.
- */
-
-
-/**
- * GValueTransform:
- * @src_value: Source value.
- * @dest_value: Target value.
- *
- * The type of value transformation functions which can be registered with
- * g_value_register_transform_func().
- */
-
-
-/**
  * GVariant:
  *
  * #GVariant is an opaque data structure and can only be accessed
@@ -4635,38 +2377,6 @@
 
 
 /**
- * GVariantType:
- *
- * A type in the GVariant type system.
- *
- * Two types may not be compared by value; use g_variant_type_equal() or
- * g_variant_type_is_subtype_of().  May be copied using
- * g_variant_type_copy() and freed using g_variant_type_free().
- */
-
-
-/**
- * GVoidFunc:
- *
- * Declares a type of function which takes no arguments
- * and has no return value. It is used to specify the type
- * function passed to g_atexit().
- */
-
-
-/**
- * GWeakNotify:
- * @data: data that was provided when the weak reference was established
- * @where_the_object_was: the object being finalized
- *
- * A #GWeakNotify function can be added to an object as a callback that gets
- * triggered when the object is finalized. Since the object is already being
- * finalized when the #GWeakNotify is called, there's not much you could do
- * with the object, apart from e.g. using its address as hash-index or the like.
- */
-
-
-/**
  * G_ASCII_DTOSTR_BUF_SIZE:
  *
  * A good size for a buffer to be passed into g_ascii_dtostr().
@@ -4714,25 +2424,6 @@
 
 
 /**
- * G_BOOKMARK_FILE_ERROR:
- *
- * Error domain for bookmark file parsing.
- * Errors in this domain will be from the #GBookmarkFileError
- * enumeration. See #GError for information on error domains.
- */
-
-
-/**
- * G_BREAKPOINT:
- *
- * Inserts a breakpoint instruction into the code.
- *
- * On x86 and alpha systems this is implemented as a soft interrupt
- * and on other architectures it raises a <literal>SIGTRAP</literal> signal.
- */
-
-
-/**
  * G_BYTE_ORDER:
  *
  * The host byte order.
@@ -4742,49 +2433,6 @@
 
 
 /**
- * G_CALLBACK:
- * @f: a function pointer.
- *
- * Cast a function pointer to a #GCallback.
- */
-
-
-/**
- * G_CCLOSURE_SWAP_DATA:
- * @cclosure: a #GCClosure
- *
- * Checks whether the user data of the #GCClosure should be passed as the
- * first parameter to the callback. See g_cclosure_new_swap().
- *
- * Returns: %TRUE if data has to be swapped.
- */
-
-
-/**
- * G_CLOSURE_NEEDS_MARSHAL:
- * @closure: a #GClosure
- *
- * Check if the closure still needs a marshaller. See g_closure_set_marshal().
- *
- * Returns: %TRUE if a #GClosureMarshal marshaller has not yet been set on @closure.
- */
-
-
-/**
- * G_CLOSURE_N_NOTIFIERS:
- * @cl: a #GClosure
- *
- * Get the total number of notifiers connected with the closure @cl.
- * The count includes the meta marshaller, the finalize and invalidate notifiers
- * and the marshal guards. Note that each guard counts as two notifiers.
- * See g_closure_set_meta_marshal(), g_closure_add_finalize_notifier(),
- * g_closure_add_invalidate_notifier() and g_closure_add_marshal_guards().
- *
- * Returns: number of notifiers
- */
-
-
-/**
  * G_CONST_RETURN:
  *
  * If <literal>G_DISABLE_CONST_RETURNS</literal> is defined, this macro expands
@@ -4802,15 +2450,6 @@
 
 
 /**
- * G_CONVERT_ERROR:
- *
- * Error domain for character set conversions. Errors in this domain will
- * be from the #GConvertError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
  * G_CSET_A_2_Z:
  *
  * The set of uppercase ASCII alphabet characters.
@@ -4849,15 +2488,6 @@
 
 
 /**
- * G_DATALIST_FLAGS_MASK:
- *
- * A bitmask that restricts the possible flags passed to
- * g_datalist_set_flags(). Passing a flags value where
- * flags & ~G_DATALIST_FLAGS_MASK != 0 is an error.
- */
-
-
-/**
  * G_DATE_BAD_DAY:
  *
  * Represents an invalid #GDateDay.
@@ -4879,315 +2509,6 @@
 
 
 /**
- * G_DEFINE_ABSTRACT_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE(), but defines an abstract type.
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_ABSTRACT_TYPE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_C_: Custom code that gets inserted in the @type_name_get_type() function.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE_WITH_CODE(), but defines an abstract type and allows you to
- * insert custom code into the *_get_type() function, e.g. interface implementations
- * via G_IMPLEMENT_INTERFACE(). See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_BOXED_TYPE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @copy_func: the #GBoxedCopyFunc for the new type
- * @free_func: the #GBoxedFreeFunc for the new type
- *
- * A convenience macro for boxed type implementations, which defines a
- * type_name_get_type() function registering the boxed type.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_BOXED_TYPE_WITH_CODE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @copy_func: the #GBoxedCopyFunc for the new type
- * @free_func: the #GBoxedFreeFunc for the new type
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for boxed type implementations.
- * Similar to G_DEFINE_BOXED_TYPE(), but allows to insert custom code into the
- * type_name_get_type() function, e.g. to register value transformations with
- * g_value_register_transform_func().
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_DYNAMIC_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for dynamic type implementations, which declares a
- * class initialization function, an instance initialization function (see
- * #GTypeInfo for information about these) and a static variable named
- * @t_n<!-- -->_parent_class pointing to the parent class. Furthermore,
- * it defines a <function>*_get_type()</function> and a static
- * <function>*_register_type()</function> function for use in your
- * <function>module_init()</function>.
- * See G_DEFINE_DYNAMIC_TYPE_EXTENDED() for an example.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @TYPE_PARENT: The #GType of the parent type.
- * @flags: #GTypeFlags to pass to g_type_module_register_type()
- * @CODE: Custom code that gets inserted in the *_get_type() function.
- *
- * A more general version of G_DEFINE_DYNAMIC_TYPE() which
- * allows to specify #GTypeFlags and custom code.
- *
- * |[
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED (GtkGadget,
- *                                 gtk_gadget,
- *                                 GTK_TYPE_THING,
- *                                 0,
- *                                 G_IMPLEMENT_INTERFACE_DYNAMIC (TYPE_GIZMO,
- *                                                                gtk_gadget_gizmo_init));
- * ]|
- * expands to
- * |[
- * static void     gtk_gadget_init              (GtkGadget      *self);
- * static void     gtk_gadget_class_init        (GtkGadgetClass *klass);
- * static void     gtk_gadget_class_finalize    (GtkGadgetClass *klass);
- *
- * static gpointer gtk_gadget_parent_class = NULL;
- * static GType    gtk_gadget_type_id = 0;
- *
- * static void     gtk_gadget_class_intern_init (gpointer klass)
- * {
- *   gtk_gadget_parent_class = g_type_class_peek_parent (klass);
- *   gtk_gadget_class_init ((GtkGadgetClass*) klass);
- * }
- *
- * GType
- * gtk_gadget_get_type (void)
- * {
- *   return gtk_gadget_type_id;
- * }
- *
- * static void
- * gtk_gadget_register_type (GTypeModule *type_module)
- * {
- *   const GTypeInfo g_define_type_info = {
- *     sizeof (GtkGadgetClass),
- *     (GBaseInitFunc) NULL,
- *     (GBaseFinalizeFunc) NULL,
- *     (GClassInitFunc) gtk_gadget_class_intern_init,
- *     (GClassFinalizeFunc) gtk_gadget_class_finalize,
- *     NULL,   // class_data
- *     sizeof (GtkGadget),
- *     0,      // n_preallocs
- *     (GInstanceInitFunc) gtk_gadget_init,
- *     NULL    // value_table
- *   };
- *   gtk_gadget_type_id = g_type_module_register_type (type_module,
- *                                                     GTK_TYPE_THING,
- *                                                     GtkGadget,
- *                                                     &g_define_type_info,
- *                                                     (GTypeFlags) flags);
- *   {
- *     const GInterfaceInfo g_implement_interface_info = {
- *       (GInterfaceInitFunc) gtk_gadget_gizmo_init
- *     };
- *     g_type_module_add_interface (type_module, g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
- *   }
- * }
- * ]|
- *
- * Since: 2.14
- */
-
-
-/**
- * G_DEFINE_INTERFACE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the prerequisite type for the interface, or 0 (%G_TYPE_INVALID) for no prerequisite type.
- *
- * A convenience macro for #GTypeInterface definitions, which declares
- * a default vtable initialization function and defines a *_get_type()
- * function.
- *
- * The macro expects the interface initialization function to have the
- * name <literal>t_n ## _default_init</literal>, and the interface
- * structure to have the name <literal>TN ## Interface</literal>.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_DEFINE_INTERFACE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the prerequisite type for the interface, or 0 (%G_TYPE_INVALID) for no prerequisite type.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for #GTypeInterface definitions. Similar to
- * G_DEFINE_INTERFACE(), but allows you to insert custom code into the
- * *_get_type() function, e.g. additional interface implementations
- * via G_IMPLEMENT_INTERFACE(), or additional prerequisite types. See
- * G_DEFINE_TYPE_EXTENDED() for a similar example using
- * G_DEFINE_TYPE_WITH_CODE().
- *
- * Since: 2.24
- */
-
-
-/**
- * G_DEFINE_POINTER_TYPE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- *
- * A convenience macro for pointer type implementations, which defines a
- * type_name_get_type() function registering the pointer type.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_POINTER_TYPE_WITH_CODE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for pointer type implementations.
- * Similar to G_DEFINE_POINTER_TYPE(), but allows to insert custom code into the
- * type_name_get_type() function.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for type implementations, which declares a
- * class initialization function, an instance initialization function (see #GTypeInfo for information about
- * these) and a static variable named @t_n<!-- -->_parent_class pointing to the parent class. Furthermore, it defines
- * a *_get_type() function. See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_TYPE_EXTENDED:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_f_: #GTypeFlags to pass to g_type_register_static()
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * The most general convenience macro for type implementations, on which
- * G_DEFINE_TYPE(), etc are based.
- *
- * |[
- * G_DEFINE_TYPE_EXTENDED (GtkGadget,
- *                         gtk_gadget,
- *                         GTK_TYPE_WIDGET,
- *                         0,
- *                         G_IMPLEMENT_INTERFACE (TYPE_GIZMO,
- *                                                gtk_gadget_gizmo_init));
- * ]|
- * expands to
- * |[
- * static void     gtk_gadget_init       (GtkGadget      *self);
- * static void     gtk_gadget_class_init (GtkGadgetClass *klass);
- * static gpointer gtk_gadget_parent_class = NULL;
- * static void     gtk_gadget_class_intern_init (gpointer klass)
- * {
- *   gtk_gadget_parent_class = g_type_class_peek_parent (klass);
- *   gtk_gadget_class_init ((GtkGadgetClass*) klass);
- * }
- *
- * GType
- * gtk_gadget_get_type (void)
- * {
- *   static volatile gsize g_define_type_id__volatile = 0;
- *   if (g_once_init_enter (&g_define_type_id__volatile))
- *     {
- *       GType g_define_type_id =
- *         g_type_register_static_simple (GTK_TYPE_WIDGET,
- *                                        g_intern_static_string ("GtkGadget"),
- *                                        sizeof (GtkGadgetClass),
- *                                        (GClassInitFunc) gtk_gadget_class_intern_init,
- *                                        sizeof (GtkGadget),
- *                                        (GInstanceInitFunc) gtk_gadget_init,
- *                                        (GTypeFlags) flags);
- *       {
- *         const GInterfaceInfo g_implement_interface_info = {
- *           (GInterfaceInitFunc) gtk_gadget_gizmo_init
- *         };
- *         g_type_add_interface_static (g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
- *       }
- *       g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
- *     }
- *   return g_define_type_id__volatile;
- * }
- * ]|
- * The only pieces which have to be manually provided are the definitions of
- * the instance and class structure and the definitions of the instance and
- * class init functions.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_TYPE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE(), but allows you to insert custom code into the
- * *_get_type() function, e.g. interface implementations via G_IMPLEMENT_INTERFACE().
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
  * G_DEPRECATED:
  *
  * This macro is similar to %G_GNUC_DEPRECATED, and can be used to mark
@@ -5244,34 +2565,6 @@
 
 
 /**
- * G_ENUM_CLASS:
- * @class: a valid #GEnumClass
- *
- * Casts a derived #GEnumClass structure into a #GEnumClass structure.
- */
-
-
-/**
- * G_ENUM_CLASS_TYPE:
- * @class: a #GEnumClass
- *
- * Get the type identifier from a given #GEnumClass structure.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_ENUM_CLASS_TYPE_NAME:
- * @class: a #GEnumClass
- *
- * Get the static type name from a given #GEnumClass structure.
- *
- * Returns: the type name.
- */
-
-
-/**
  * G_FILE_ERROR:
  *
  * Error domain for file operations. Errors in this domain will
@@ -5281,34 +2574,6 @@
 
 
 /**
- * G_FLAGS_CLASS:
- * @class: a valid #GFlagsClass
- *
- * Casts a derived #GFlagsClass structure into a #GFlagsClass structure.
- */
-
-
-/**
- * G_FLAGS_CLASS_TYPE:
- * @class: a #GFlagsClass
- *
- * Get the type identifier from a given #GFlagsClass structure.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_FLAGS_CLASS_TYPE_NAME:
- * @class: a #GFlagsClass
- *
- * Get the static type name from a given #GFlagsClass structure.
- *
- * Returns: the type name.
- */
-
-
-/**
  * G_GINT16_FORMAT:
  *
  * This is the platform dependent conversion specifier for scanning and
@@ -5952,68 +3217,6 @@
 
 
 /**
- * G_IMPLEMENT_INTERFACE:
- * @TYPE_IFACE: The #GType of the interface to add
- * @iface_init: The interface init function
- *
- * A convenience macro to ease interface addition in the @_C_ section
- * of G_DEFINE_TYPE_WITH_CODE() or G_DEFINE_ABSTRACT_TYPE_WITH_CODE().
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Note that this macro can only be used together with the G_DEFINE_TYPE_*
- * macros, since it depends on variable names from those macros.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_IMPLEMENT_INTERFACE_DYNAMIC:
- * @TYPE_IFACE: The #GType of the interface to add
- * @iface_init: The interface init function
- *
- * A convenience macro to ease interface addition in the @_C_ section
- * of G_DEFINE_DYNAMIC_TYPE_EXTENDED(). See G_DEFINE_DYNAMIC_TYPE_EXTENDED()
- * for an example.
- *
- * Note that this macro can only be used together with the
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED macros, since it depends on variable
- * names from that macro.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_INITIALLY_UNOWNED:
- * @object: Object which is subject to casting.
- *
- * Casts a #GInitiallyUnowned or derived pointer into a (GInitiallyUnowned*)
- * pointer. Depending on the current debugging level, this function may invoke
- * certain runtime checks to identify invalid casts.
- */
-
-
-/**
- * G_INITIALLY_UNOWNED_CLASS:
- * @class: a valid #GInitiallyUnownedClass
- *
- * Casts a derived #GInitiallyUnownedClass structure into a
- * #GInitiallyUnownedClass structure.
- */
-
-
-/**
- * G_INITIALLY_UNOWNED_GET_CLASS:
- * @object: a #GInitiallyUnowned instance.
- *
- * Get the class structure associated to a #GInitiallyUnowned instance.
- *
- * Returns: pointer to object class structure.
- */
-
-
-/**
  * G_INLINE_FUNC:
  *
  * This macro is used to export function prototypes so they can be linked
@@ -6062,320 +3265,6 @@
 
 
 /**
- * G_IS_ENUM_CLASS:
- * @class: a #GEnumClass
- *
- * Checks whether @class "is a" valid #GEnumClass structure of type %G_TYPE_ENUM
- * or derived.
- */
-
-
-/**
- * G_IS_FLAGS_CLASS:
- * @class: a #GFlagsClass
- *
- * Checks whether @class "is a" valid #GFlagsClass structure of type %G_TYPE_FLAGS
- * or derived.
- */
-
-
-/**
- * G_IS_INITIALLY_UNOWNED:
- * @object: Instance to check for being a %G_TYPE_INITIALLY_UNOWNED.
- *
- * Checks whether a valid #GTypeInstance pointer is of type %G_TYPE_INITIALLY_UNOWNED.
- */
-
-
-/**
- * G_IS_INITIALLY_UNOWNED_CLASS:
- * @class: a #GInitiallyUnownedClass
- *
- * Checks whether @class "is a" valid #GInitiallyUnownedClass structure of type
- * %G_TYPE_INITIALLY_UNOWNED or derived.
- */
-
-
-/**
- * G_IS_OBJECT:
- * @object: Instance to check for being a %G_TYPE_OBJECT.
- *
- * Checks whether a valid #GTypeInstance pointer is of type %G_TYPE_OBJECT.
- */
-
-
-/**
- * G_IS_OBJECT_CLASS:
- * @class: a #GObjectClass
- *
- * Checks whether @class "is a" valid #GObjectClass structure of type
- * %G_TYPE_OBJECT or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC:
- * @pspec: a #GParamSpec
- *
- * Checks whether @pspec "is a" valid #GParamSpec structure of type %G_TYPE_PARAM
- * or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_BOOLEAN:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_BOOLEAN.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_BOXED:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_BOXED.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_CHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_CHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_CLASS:
- * @pclass: a #GParamSpecClass
- *
- * Checks whether @pclass "is a" valid #GParamSpecClass structure of type
- * %G_TYPE_PARAM or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_DOUBLE:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_DOUBLE.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_ENUM:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_ENUM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_FLAGS:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_FLAGS.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_FLOAT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_FLOAT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_GTYPE:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_GTYPE.
- *
- * Since: 2.10
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_INT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_INT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_INT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_INT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_LONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_LONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_OBJECT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_OBJECT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_OVERRIDE:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_OVERRIDE.
- *
- * Since: 2.4
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_PARAM:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_PARAM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_POINTER:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_POINTER.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_STRING:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_STRING.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UCHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UCHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UINT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UINT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UINT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UINT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_ULONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_ULONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UNICHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UNICHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_VALUE_ARRAY:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_VALUE_ARRAY.
- *
- * Returns: %TRUE on success.
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_IS_PARAM_SPEC_VARIANT:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_VARIANT.
- *
- * Returns: %TRUE on success
- * Since: 2.26
- */
-
-
-/**
- * G_IS_VALUE:
- * @value: A #GValue structure.
- *
- * Checks if @value is a valid and initialized #GValue structure.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
  * G_KEY_FILE_DESKTOP_GROUP:
  *
  * The name of the main group of a desktop entry file, as defined in the
@@ -6770,15 +3659,6 @@
 
 
 /**
- * G_MARKUP_ERROR:
- *
- * Error domain for markup parsing.
- * Errors in this domain will be from the #GMarkupError enumeration.
- * See #GError for information on error domains.
- */
-
-
-/**
  * G_MAXDOUBLE:
  *
  * The maximum value which can be held in a #gdouble.
@@ -7019,26 +3899,6 @@
 
 
 /**
- * G_NODE_IS_LEAF:
- * @node: a #GNode
- *
- * Returns %TRUE if a #GNode is a leaf node.
- *
- * Returns: %TRUE if the #GNode is a leaf node (i.e. it has no children)
- */
-
-
-/**
- * G_NODE_IS_ROOT:
- * @node: a #GNode
- *
- * Returns %TRUE if a #GNode is the root of a tree.
- *
- * Returns: %TRUE if the #GNode is the root of a tree (i.e. it has no parent or siblings)
- */
-
-
-/**
  * G_N_ELEMENTS:
  * @arr: the array
  *
@@ -7050,85 +3910,6 @@
 
 
 /**
- * G_OBJECT:
- * @object: Object which is subject to casting.
- *
- * Casts a #GObject or derived pointer into a (GObject*) pointer.
- * Depending on the current debugging level, this function may invoke
- * certain runtime checks to identify invalid casts.
- */
-
-
-/**
- * G_OBJECT_CLASS:
- * @class: a valid #GObjectClass
- *
- * Casts a derived #GObjectClass structure into a #GObjectClass structure.
- */
-
-
-/**
- * G_OBJECT_CLASS_NAME:
- * @class: a valid #GObjectClass
- *
- * Return the name of a class structure's type.
- *
- * Returns: Type name of @class. The string is owned by the type system and should not be freed.
- */
-
-
-/**
- * G_OBJECT_CLASS_TYPE:
- * @class: a valid #GObjectClass
- *
- * Get the type id of a class structure.
- *
- * Returns: Type id of @class.
- */
-
-
-/**
- * G_OBJECT_GET_CLASS:
- * @object: a #GObject instance.
- *
- * Get the class structure associated to a #GObject instance.
- *
- * Returns: pointer to object class structure.
- */
-
-
-/**
- * G_OBJECT_TYPE:
- * @object: Object to return the type id for.
- *
- * Get the type id of an object.
- *
- * Returns: Type id of @object.
- */
-
-
-/**
- * G_OBJECT_TYPE_NAME:
- * @object: Object to return the type name for.
- *
- * Get the name of an object's type.
- *
- * Returns: Type name of @object. The string is owned by the type system and should not be freed.
- */
-
-
-/**
- * G_OBJECT_WARN_INVALID_PROPERTY_ID:
- * @object: the #GObject on which set_property() or get_property() was called
- * @property_id: the numeric id of the property
- * @pspec: the #GParamSpec of the property
- *
- * This macro should be used to emit a standard warning about unexpected
- * properties in set_property() and get_property() implementations.
- */
-
-
-/**
  * G_ONCE_INIT:
  *
  * A #GOnce must be initialized with this macro before it can be used.
@@ -7142,33 +3923,6 @@
 
 
 /**
- * G_OPTION_ERROR:
- *
- * Error domain for option parsing. Errors in this domain will
- * be from the #GOptionError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_OPTION_REMAINING:
- *
- * If a long option in the main group has this name, it is not treated as a
- * regular option. Instead it collects all non-option arguments which would
- * otherwise be left in <literal>argv</literal>. The option must be of type
- * %G_OPTION_ARG_CALLBACK, %G_OPTION_ARG_STRING_ARRAY
- * or %G_OPTION_ARG_FILENAME_ARRAY.
- *
- *
- * Using #G_OPTION_REMAINING instead of simply scanning <literal>argv</literal>
- * for leftover arguments has the advantage that GOption takes care of
- * necessary encoding conversions for strings or filenames.
- *
- * Since: 2.6
- */
-
-
-/**
  * G_OS_BEOS:
  *
  * This macro is defined only on BeOS. So you can bracket
@@ -7193,278 +3947,6 @@
 
 
 /**
- * G_PARAM_MASK:
- *
- * Mask containing the bits of #GParamSpec.flags which are reserved for GLib.
- */
-
-
-/**
- * G_PARAM_READWRITE:
- *
- * #GParamFlags value alias for %G_PARAM_READABLE | %G_PARAM_WRITABLE.
- */
-
-
-/**
- * G_PARAM_SPEC:
- * @pspec: a valid #GParamSpec
- *
- * Casts a derived #GParamSpec object (e.g. of type #GParamSpecInt) into
- * a #GParamSpec object.
- */
-
-
-/**
- * G_PARAM_SPEC_BOOLEAN:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecBoolean.
- */
-
-
-/**
- * G_PARAM_SPEC_BOXED:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecBoxed.
- */
-
-
-/**
- * G_PARAM_SPEC_CHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecChar.
- */
-
-
-/**
- * G_PARAM_SPEC_CLASS:
- * @pclass: a valid #GParamSpecClass
- *
- * Casts a derived #GParamSpecClass structure into a #GParamSpecClass structure.
- */
-
-
-/**
- * G_PARAM_SPEC_DOUBLE:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecDouble.
- */
-
-
-/**
- * G_PARAM_SPEC_ENUM:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecEnum.
- */
-
-
-/**
- * G_PARAM_SPEC_FLAGS:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecFlags.
- */
-
-
-/**
- * G_PARAM_SPEC_FLOAT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecFloat.
- */
-
-
-/**
- * G_PARAM_SPEC_GET_CLASS:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GParamSpecClass of a #GParamSpec.
- */
-
-
-/**
- * G_PARAM_SPEC_GTYPE:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecGType.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_PARAM_SPEC_INT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecInt.
- */
-
-
-/**
- * G_PARAM_SPEC_INT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecInt64.
- */
-
-
-/**
- * G_PARAM_SPEC_LONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecLong.
- */
-
-
-/**
- * G_PARAM_SPEC_OBJECT:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecObject.
- */
-
-
-/**
- * G_PARAM_SPEC_OVERRIDE:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecOverride.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_PARAM_SPEC_PARAM:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecParam.
- */
-
-
-/**
- * G_PARAM_SPEC_POINTER:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecPointer.
- */
-
-
-/**
- * G_PARAM_SPEC_STRING:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecString.
- */
-
-
-/**
- * G_PARAM_SPEC_TYPE:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType of this @pspec.
- */
-
-
-/**
- * G_PARAM_SPEC_TYPE_NAME:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType name of this @pspec.
- */
-
-
-/**
- * G_PARAM_SPEC_UCHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUChar.
- */
-
-
-/**
- * G_PARAM_SPEC_UINT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUInt.
- */
-
-
-/**
- * G_PARAM_SPEC_UINT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUInt64.
- */
-
-
-/**
- * G_PARAM_SPEC_ULONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecULong.
- */
-
-
-/**
- * G_PARAM_SPEC_UNICHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUnichar.
- */
-
-
-/**
- * G_PARAM_SPEC_VALUE_ARRAY:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecValueArray.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_PARAM_SPEC_VALUE_TYPE:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType to initialize a #GValue for this parameter.
- */
-
-
-/**
- * G_PARAM_SPEC_VARIANT:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecVariant.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_PARAM_STATIC_STRINGS:
- *
- * #GParamFlags value alias for %G_PARAM_STATIC_NAME | %G_PARAM_STATIC_NICK | %G_PARAM_STATIC_BLURB.
- *
- * Since 2.13.0
- */
-
-
-/**
- * G_PARAM_USER_SHIFT:
- *
- * Minimum shift count to be used for user defined flags, to be stored in
- * #GParamSpec.flags. The maximum allowed is 30 + G_PARAM_USER_SHIFT.
- */
-
-
-/**
  * G_PASTE:
  * @identifier1: an identifier
  * @identifier2: an identifier
@@ -7521,57 +4003,6 @@
 
 
 /**
- * G_PRIORITY_DEFAULT:
- *
- * Use this for default priority event sources.
- *
- * In GLib this priority is used when adding timeout functions
- * with g_timeout_add(). In GDK this priority is used for events
- * from the X server.
- */
-
-
-/**
- * G_PRIORITY_DEFAULT_IDLE:
- *
- * Use this for default priority idle functions.
- *
- * In GLib this priority is used when adding idle functions with
- * g_idle_add().
- */
-
-
-/**
- * G_PRIORITY_HIGH:
- *
- * Use this for high priority event sources.
- *
- * It is not used within GLib or GTK+.
- */
-
-
-/**
- * G_PRIORITY_HIGH_IDLE:
- *
- * Use this for high priority idle functions.
- *
- * GTK+ uses #G_PRIORITY_HIGH_IDLE + 10 for resizing operations,
- * and #G_PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is
- * done to ensure that any pending resizes are processed before any
- * pending redraws, so that widgets are not redrawn twice unnecessarily.)
- */
-
-
-/**
- * G_PRIORITY_LOW:
- *
- * Use this for very low priority background tasks.
- *
- * It is not used within GLib or GTK+.
- */
-
-
-/**
  * G_PRIVATE_INIT:
  * @notify: a #GDestroyNotify
  *
@@ -7627,33 +4058,6 @@
 
 
 /**
- * G_QUEUE_INIT:
- *
- * A statically-allocated #GQueue must be initialized with this
- * macro before it can be used. This macro can be used to initialize
- * a variable, but it cannot be assigned to a variable. In that case
- * you have to use g_queue_init().
- *
- * |[
- * GQueue my_queue = G_QUEUE_INIT;
- * ]|
- *
- * Since: 2.14
- */
-
-
-/**
- * G_REGEX_ERROR:
- *
- * Error domain for regular expressions. Errors in this domain will be
- * from the #GRegexError enumeration. See #GError for information on
- * error domains.
- *
- * Since: 2.14
- */
-
-
-/**
  * G_SEARCHPATH_SEPARATOR:
  *
  * The search path separator character.
@@ -7679,72 +4083,6 @@
 
 
 /**
- * G_SIGNAL_FLAGS_MASK:
- *
- * A mask for all #GSignalFlags bits.
- */
-
-
-/**
- * G_SIGNAL_MATCH_MASK:
- *
- * A mask for all #GSignalMatchType bits.
- */
-
-
-/**
- * G_SIGNAL_TYPE_STATIC_SCOPE:
- *
- * This macro flags signal argument types for which the signal system may
- * assume that instances thereof remain persistent across all signal emissions
- * they are used in. This is only useful for non ref-counted, value-copy types.
- *
- * To flag a signal argument in this way, add
- * <literal>| G_SIGNAL_TYPE_STATIC_SCOPE</literal> to the corresponding argument
- * of g_signal_new().
- * |[
- * g_signal_new ("size_request",
- *   G_TYPE_FROM_CLASS (gobject_class),
- * 	 G_SIGNAL_RUN_FIRST,
- * 	 G_STRUCT_OFFSET (GtkWidgetClass, size_request),
- * 	 NULL, NULL,
- * 	 _gtk_marshal_VOID__BOXED,
- * 	 G_TYPE_NONE, 1,
- * 	 GTK_TYPE_REQUISITION | G_SIGNAL_TYPE_STATIC_SCOPE);
- * ]|
- */
-
-
-/**
- * G_SOURCE_CONTINUE:
- *
- * Use this macro as the return value of a #GSourceFunc to leave
- * the #GSource in the main loop.
- *
- * Since: 2.28
- */
-
-
-/**
- * G_SOURCE_REMOVE:
- *
- * Use this macro as the return value of a #GSourceFunc to remove
- * the #GSource from the main loop.
- *
- * Since: 2.28
- */
-
-
-/**
- * G_SPAWN_ERROR:
- *
- * Error domain for spawning processes. Errors in this domain will
- * be from the #GSpawnError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
  * G_SQRT2:
  *
  * The square root of two.
@@ -7898,51 +4236,6 @@
 
 
 /**
- * G_TIME_SPAN_DAY:
- *
- * Evaluates to a time span of one day.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_HOUR:
- *
- * Evaluates to a time span of one hour.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_MILLISECOND:
- *
- * Evaluates to a time span of one millisecond.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_MINUTE:
- *
- * Evaluates to a time span of one minute.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_SECOND:
- *
- * Evaluates to a time span of one second.
- *
- * Since: 2.26
- */
-
-
-/**
  * G_TRYLOCK:
  * @name: the name of the lock
  *
@@ -7954,1032 +4247,6 @@
 
 
 /**
- * G_TYPE_ARRAY:
- *
- * The #GType for a boxed type holding a #GArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_BOOLEAN:
- *
- * The fundamental type corresponding to #gboolean.
- */
-
-
-/**
- * G_TYPE_BOXED:
- *
- * The fundamental type from which all boxed types are derived.
- */
-
-
-/**
- * G_TYPE_BYTES:
- *
- * The #GType for #GBytes.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_TYPE_BYTE_ARRAY:
- *
- * The #GType for a boxed type holding a #GByteArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_CHAR:
- *
- * The fundamental type corresponding to #gchar.
- * The type designated by G_TYPE_CHAR is unconditionally an 8-bit signed integer.
- * This may or may not be the same type a the C type "gchar".
- */
-
-
-/**
- * G_TYPE_CHECK_CLASS_CAST:
- * @g_class: Location of a #GTypeClass structure.
- * @g_type: The type to be returned.
- * @c_type: The corresponding C type of class structure of @g_type.
- *
- * Checks that @g_class is a class structure of the type identified by @g_type
- * and issues a warning if this is not the case. Returns @g_class casted
- * to a pointer to @c_type.
- *
- * This macro should only be used in type implementations.
- */
-
-
-/**
- * G_TYPE_CHECK_CLASS_TYPE:
- * @g_class: Location of a #GTypeClass structure.
- * @g_type: The type to be checked.
- *
- * Checks if @g_class is a class structure of the type identified by
- * @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE:
- * @instance: Location of a #GTypeInstance structure.
- *
- * Checks if @instance is a valid #GTypeInstance structure,
- * otherwise issues a warning and returns %FALSE.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE_CAST:
- * @instance: Location of a #GTypeInstance structure.
- * @g_type: The type to be returned.
- * @c_type: The corresponding C type of @g_type.
- *
- * Checks that @instance is an instance of the type identified by @g_type
- * and issues a warning if this is not the case. Returns @instance casted
- * to a pointer to @c_type.
- *
- * This macro should only be used in type implementations.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE_TYPE:
- * @instance: Location of a #GTypeInstance structure.
- * @g_type: The type to be checked
- *
- * Checks if @instance is an instance of the type identified by @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_VALUE:
- * @value: a #GValue
- *
- * Checks if @value has been initialized to hold values
- * of a value type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_VALUE_TYPE:
- * @value: a #GValue
- * @g_type: The type to be checked.
- *
- * Checks if @value has been initialized to hold values
- * of type @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CLASS_GET_PRIVATE:
- * @klass: the class of a type deriving from @private_type.
- * @g_type: the type identifying which private data to retrieve.
- * @c_type: The C type for the private structure.
- *
- * Gets the private class structure for a particular type.
- * The private structure must have been registered in the
- * get_type() function with g_type_add_class_private().
- *
- * This macro should only be used in type implementations.
- *
- * Since: 2.24
- * Returns: a pointer to the private data structure.
- */
-
-
-/**
- * G_TYPE_CLOSURE:
- *
- * The #GType for #GClosure.
- */
-
-
-/**
- * G_TYPE_DATE:
- *
- * The #GType for #GDate.
- */
-
-
-/**
- * G_TYPE_DATE_TIME:
- *
- * The #GType for a boxed type holding a #GDateTime.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DOUBLE:
- *
- * The fundamental type corresponding to #gdouble.
- */
-
-
-/**
- * G_TYPE_ENUM:
- *
- * The fundamental type from which all enumeration types are derived.
- */
-
-
-/**
- * G_TYPE_ERROR:
- *
- * The #GType for a boxed type holding a #GError.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_FLAGS:
- *
- * The fundamental type from which all flags types are derived.
- */
-
-
-/**
- * G_TYPE_FLAG_RESERVED_ID_BIT:
- *
- * A bit in the type number that's supposed to be left untouched.
- */
-
-
-/**
- * G_TYPE_FLOAT:
- *
- * The fundamental type corresponding to #gfloat.
- */
-
-
-/**
- * G_TYPE_FROM_CLASS:
- * @g_class: Location of a valid #GTypeClass structure.
- *
- * Get the type identifier from a given @class structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FROM_INSTANCE:
- * @instance: Location of a valid #GTypeInstance structure.
- *
- * Get the type identifier from a given @instance structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FROM_INTERFACE:
- * @g_iface: Location of a valid #GTypeInterface structure.
- *
- * Get the type identifier from a given @interface structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL:
- * @type: A #GType value.
- *
- * The fundamental type which is the ancestor of @type.
- * Fundamental types are types that serve as ultimate bases for the derived types,
- * thus they are the roots of distinct inheritance hierarchies.
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL_MAX:
- *
- * An integer constant that represents the number of identifiers reserved
- * for types that are assigned at compile-time.
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL_SHIFT:
- *
- * Shift value used in converting numbers to type IDs.
- */
-
-
-/**
- * G_TYPE_GSTRING:
- *
- * The #GType for #GString.
- */
-
-
-/**
- * G_TYPE_GTYPE:
- *
- * The type for #GType.
- */
-
-
-/**
- * G_TYPE_HASH_TABLE:
- *
- * The #GType for a boxed type holding a #GHashTable reference.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_TYPE_HAS_VALUE_TABLE:
- * @type: A #GType value.
- *
- * Checks if @type has a #GTypeValueTable.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_INITIALLY_UNOWNED:
- *
- * The type for #GInitiallyUnowned.
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_CLASS:
- * @instance: Location of the #GTypeInstance structure.
- * @g_type: The #GType of the class to be returned.
- * @c_type: The C type of the class structure.
- *
- * Get the class structure of a given @instance, casted
- * to a specified ancestor type @g_type of the instance.
- *
- * Note that while calling a GInstanceInitFunc(), the class pointer gets
- * modified, so it might not always return the expected pointer.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: a pointer to the class structure
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_INTERFACE:
- * @instance: Location of the #GTypeInstance structure.
- * @g_type: The #GType of the interface to be returned.
- * @c_type: The C type of the interface structure.
- *
- * Get the interface structure for interface @g_type of a given @instance.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: a pointer to the interface structure
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_PRIVATE:
- * @instance: the instance of a type deriving from @private_type.
- * @g_type: the type identifying which private data to retrieve.
- * @c_type: The C type for the private structure.
- *
- * Gets the private structure for a particular type.
- * The private structure must have been registered in the
- * class_init function with g_type_class_add_private().
- *
- * This macro should only be used in type implementations.
- *
- * Since: 2.4
- * Returns: a pointer to the private data structure.
- */
-
-
-/**
- * G_TYPE_INT:
- *
- * The fundamental type corresponding to #gint.
- */
-
-
-/**
- * G_TYPE_INT64:
- *
- * The fundamental type corresponding to #gint64.
- */
-
-
-/**
- * G_TYPE_INTERFACE:
- *
- * The fundamental type from which all interfaces are derived.
- */
-
-
-/**
- * G_TYPE_INVALID:
- *
- * An invalid #GType used as error return value in some functions which return
- * a #GType.
- */
-
-
-/**
- * G_TYPE_IO_CHANNEL:
- *
- * The #GType for #GIOChannel.
- */
-
-
-/**
- * G_TYPE_IO_CONDITION:
- *
- * The #GType for #GIOCondition.
- */
-
-
-/**
- * G_TYPE_IS_ABSTRACT:
- * @type: A #GType value.
- *
- * Checks if @type is an abstract type.  An abstract type cannot be
- * instantiated and is normally used as an abstract base class for
- * derived classes.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_CLASSED:
- * @type: A #GType value.
- *
- * Checks if @type is a classed type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DEEP_DERIVABLE:
- * @type: A #GType value.
- *
- * Checks if @type is a deep derivable type.  A deep derivable type
- * can be used as the base class of a deep (multi-level) class hierarchy.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DERIVABLE:
- * @type: A #GType value.
- *
- * Checks if @type is a derivable type.  A derivable type can
- * be used as the base class of a flat (single-level) class hierarchy.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DERIVED:
- * @type: A #GType value.
- *
- * Checks if @type is derived (or in object-oriented terminology:
- * inherited) from another type (this holds true for all non-fundamental
- * types).
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_ENUM:
- * @type: a #GType ID.
- *
- * Checks whether @type "is a" %G_TYPE_ENUM.
- *
- * Returns: %TRUE if @type "is a" %G_TYPE_ENUM.
- */
-
-
-/**
- * G_TYPE_IS_FLAGS:
- * @type: a #GType ID.
- *
- * Checks whether @type "is a" %G_TYPE_FLAGS.
- *
- * Returns: %TRUE if @type "is a" %G_TYPE_FLAGS.
- */
-
-
-/**
- * G_TYPE_IS_FUNDAMENTAL:
- * @type: A #GType value.
- *
- * Checks if @type is a fundamental type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_INSTANTIATABLE:
- * @type: A #GType value.
- *
- * Checks if @type can be instantiated.  Instantiation is the
- * process of creating an instance (object) of this type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_INTERFACE:
- * @type: A #GType value.
- *
- * Checks if @type is an interface type.
- * An interface type provides a pure API, the implementation
- * of which is provided by another type (which is then said to conform
- * to the interface).  GLib interfaces are somewhat analogous to Java
- * interfaces and C++ classes containing only pure virtual functions,
- * with the difference that GType interfaces are not derivable (but see
- * g_type_interface_add_prerequisite() for an alternative).
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_OBJECT:
- * @type: Type id to check
- *
- * Check if the passed in type id is a %G_TYPE_OBJECT or derived from it.
- *
- * Returns: %FALSE or %TRUE, indicating whether @type is a %G_TYPE_OBJECT.
- */
-
-
-/**
- * G_TYPE_IS_PARAM:
- * @type: a #GType ID
- *
- * Checks whether @type "is a" %G_TYPE_PARAM.
- */
-
-
-/**
- * G_TYPE_IS_VALUE:
- * @type: A #GType value.
- *
- * Checks whether the passed in type ID can be used for g_value_init().
- * That is, this macro checks whether this type provides an implementation
- * of the #GTypeValueTable functions required for a type to create a #GValue of.
- *
- * Returns: Whether @type is suitable as a #GValue type.
- */
-
-
-/**
- * G_TYPE_IS_VALUE_ABSTRACT:
- * @type: A #GType value.
- *
- * Checks if @type is an abstract value type.  An abstract value type introduces
- * a value table, but can't be used for g_value_init() and is normally used as
- * an abstract base type for derived value types.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_VALUE_TYPE:
- * @type: A #GType value.
- *
- * Checks if @type is a value type and can be used with g_value_init().
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_KEY_FILE:
- *
- * The #GType for a boxed type holding a #GKeyFile.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_TYPE_LONG:
- *
- * The fundamental type corresponding to #glong.
- */
-
-
-/**
- * G_TYPE_MAIN_CONTEXT:
- *
- * The #GType for a boxed type holding a #GMainContext.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_MAIN_LOOP:
- *
- * The #GType for a boxed type holding a #GMainLoop.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_MAKE_FUNDAMENTAL:
- * @x: the fundamental type number.
- *
- * Get the type ID for the fundamental type number @x.
- * Use g_type_fundamental_next() instead of this macro to create new fundamental
- * types.
- *
- * Returns: the GType
- */
-
-
-/**
- * G_TYPE_MATCH_INFO:
- *
- * The #GType for a boxed type holding a #GMatchInfo reference.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_NONE:
- *
- * A fundamental type which is used as a replacement for the C
- * <literal>void</literal> return type.
- */
-
-
-/**
- * G_TYPE_OBJECT:
- *
- * The fundamental type for #GObject.
- */
-
-
-/**
- * G_TYPE_PARAM:
- *
- * The fundamental type from which all #GParamSpec types are derived.
- */
-
-
-/**
- * G_TYPE_PARAM_BOOLEAN:
- *
- * The #GType of #GParamSpecBoolean.
- */
-
-
-/**
- * G_TYPE_PARAM_BOXED:
- *
- * The #GType of #GParamSpecBoxed.
- */
-
-
-/**
- * G_TYPE_PARAM_CHAR:
- *
- * The #GType of #GParamSpecChar.
- */
-
-
-/**
- * G_TYPE_PARAM_DOUBLE:
- *
- * The #GType of #GParamSpecDouble.
- */
-
-
-/**
- * G_TYPE_PARAM_ENUM:
- *
- * The #GType of #GParamSpecEnum.
- */
-
-
-/**
- * G_TYPE_PARAM_FLAGS:
- *
- * The #GType of #GParamSpecFlags.
- */
-
-
-/**
- * G_TYPE_PARAM_FLOAT:
- *
- * The #GType of #GParamSpecFloat.
- */
-
-
-/**
- * G_TYPE_PARAM_GTYPE:
- *
- * The #GType of #GParamSpecGType.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_TYPE_PARAM_INT:
- *
- * The #GType of #GParamSpecInt.
- */
-
-
-/**
- * G_TYPE_PARAM_INT64:
- *
- * The #GType of #GParamSpecInt64.
- */
-
-
-/**
- * G_TYPE_PARAM_LONG:
- *
- * The #GType of #GParamSpecLong.
- */
-
-
-/**
- * G_TYPE_PARAM_OBJECT:
- *
- * The #GType of #GParamSpecObject.
- */
-
-
-/**
- * G_TYPE_PARAM_OVERRIDE:
- *
- * The #GType of #GParamSpecOverride.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_TYPE_PARAM_PARAM:
- *
- * The #GType of #GParamSpecParam.
- */
-
-
-/**
- * G_TYPE_PARAM_POINTER:
- *
- * The #GType of #GParamSpecPointer.
- */
-
-
-/**
- * G_TYPE_PARAM_STRING:
- *
- * The #GType of #GParamSpecString.
- */
-
-
-/**
- * G_TYPE_PARAM_UCHAR:
- *
- * The #GType of #GParamSpecUChar.
- */
-
-
-/**
- * G_TYPE_PARAM_UINT:
- *
- * The #GType of #GParamSpecUInt.
- */
-
-
-/**
- * G_TYPE_PARAM_UINT64:
- *
- * The #GType of #GParamSpecUInt64.
- */
-
-
-/**
- * G_TYPE_PARAM_ULONG:
- *
- * The #GType of #GParamSpecULong.
- */
-
-
-/**
- * G_TYPE_PARAM_UNICHAR:
- *
- * The #GType of #GParamSpecUnichar.
- */
-
-
-/**
- * G_TYPE_PARAM_VALUE_ARRAY:
- *
- * The #GType of #GParamSpecValueArray.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_TYPE_PARAM_VARIANT:
- *
- * The #GType of #GParamSpecVariant.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_POINTER:
- *
- * The fundamental type corresponding to #gpointer.
- */
-
-
-/**
- * G_TYPE_PTR_ARRAY:
- *
- * The #GType for a boxed type holding a #GPtrArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_REGEX:
- *
- * The #GType for a boxed type holding a #GRegex reference.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_TYPE_RESERVED_BSE_FIRST:
- *
- * First fundamental type number to create a new fundamental type id with
- * G_TYPE_MAKE_FUNDAMENTAL() reserved for BSE.
- */
-
-
-/**
- * G_TYPE_RESERVED_BSE_LAST:
- *
- * Last fundamental type number reserved for BSE.
- */
-
-
-/**
- * G_TYPE_RESERVED_GLIB_FIRST:
- *
- * First fundamental type number to create a new fundamental type id with
- * G_TYPE_MAKE_FUNDAMENTAL() reserved for GLib.
- */
-
-
-/**
- * G_TYPE_RESERVED_GLIB_LAST:
- *
- * Last fundamental type number reserved for GLib.
- */
-
-
-/**
- * G_TYPE_RESERVED_USER_FIRST:
- *
- * First available fundamental type number to create new fundamental
- * type id with G_TYPE_MAKE_FUNDAMENTAL().
- */
-
-
-/**
- * G_TYPE_SOURCE:
- *
- * The #GType for a boxed type holding a #GSource.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_STRING:
- *
- * The fundamental type corresponding to nul-terminated C strings.
- */
-
-
-/**
- * G_TYPE_STRV:
- *
- * The #GType for a boxed type holding a %NULL-terminated array of strings.
- *
- * The code fragments in the following example show the use of a property of
- * type #G_TYPE_STRV with g_object_class_install_property(), g_object_set()
- * and g_object_get().
- *
- * |[
- * g_object_class_install_property (object_class,
- *                                  PROP_AUTHORS,
- *                                  g_param_spec_boxed ("authors",
- *                                                      _("Authors"),
- *                                                      _("List of authors"),
- *                                                      G_TYPE_STRV,
- *                                                      G_PARAM_READWRITE));
- *
- * gchar *authors[] = { "Owen", "Tim", NULL };
- * g_object_set (obj, "authors", authors, NULL);
- *
- * gchar *writers[];
- * g_object_get (obj, "authors", &writers, NULL);
- * /&ast; do something with writers &ast;/
- * g_strfreev (writers);
- * ]|
- *
- * Since: 2.4
- */
-
-
-/**
- * G_TYPE_UCHAR:
- *
- * The fundamental type corresponding to #guchar.
- */
-
-
-/**
- * G_TYPE_UINT:
- *
- * The fundamental type corresponding to #guint.
- */
-
-
-/**
- * G_TYPE_UINT64:
- *
- * The fundamental type corresponding to #guint64.
- */
-
-
-/**
- * G_TYPE_ULONG:
- *
- * The fundamental type corresponding to #gulong.
- */
-
-
-/**
- * G_TYPE_VALUE:
- *
- * The type ID of the "GValue" type which is a boxed type,
- * used to pass around pointers to GValues.
- */
-
-
-/**
- * G_TYPE_VALUE_ARRAY:
- *
- * The type ID of the "GValueArray" type which is a boxed type,
- * used to pass around pointers to GValueArrays.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_TYPE_VARIANT:
- *
- * The fundamental type corresponding to #GVariant.
- *
- * All floating #GVariant instances passed through the #GType system are
- * consumed.
- *
- * Note that callbacks in closures, and signal handlers
- * for signals of return type %G_TYPE_VARIANT, must never return floating
- * variants.
- *
- * Note: GLib 2.24 did include a boxed type with this name. It was replaced
- * with this fundamental type in 2.26.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_VARIANT_BUILDER:
- *
- * The #GType for a boxed type holding a #GVariantBuilder.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_VARIANT_TYPE:
- *
- * The #GType for a boxed type holding a #GVariantType.
- *
- * Since: 2.24
- */
-
-
-/**
  * G_UNAVAILABLE:
  *
  * This macro can be used to mark a function declaration as unavailable.
@@ -8991,44 +4258,6 @@
 
 
 /**
- * G_UNICHAR_MAX_DECOMPOSITION_LENGTH:
- *
- * The maximum length (in codepoints) of a compatibility or canonical
- * decomposition of a single Unicode character.
- *
- * This is as defined by Unicode 6.1.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_UNICODE_COMBINING_MARK:
- *
- * Older name for %G_UNICODE_SPACING_MARK.
- *
- * Deprecated: 2.30: Use %G_UNICODE_SPACING_MARK.
- */
-
-
-/**
- * G_UNIX_ERROR:
- *
- * Error domain for API in the "g_unix_" namespace.  Note that there is
- * no exported enumeration mapping %errno.  Instead, all functions
- * ensure that %errno is relevant.  The code for all #G_UNIX_ERROR is
- * always <literal>0</literal>, and the error message is always
- * generated via g_strerror().
- *
- * It is expected that most code will not look at %errno from these
- * APIs. Important cases where one would want to differentiate between
- * errors are already covered by existing cross-platform GLib API,
- * such as e.g. #GFile wrapping <literal>ENOENT</literal>.  However, it is
- * provided for completeness, at least.
- */
-
-
-/**
  * G_UNLIKELY:
  * @expr: the expression
  *
@@ -9055,41 +4284,6 @@
 
 
 /**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_PATH:
- *
- * Allowed characters in a path. Includes "!$&'()*+,;=:@/".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT:
- *
- * Allowed characters in path elements. Includes "!$&'()*+,;=:@".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO:
- *
- * Allowed characters in userinfo as defined in RFC 3986. Includes "!$&'()*+,;=:".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_GENERIC_DELIMITERS:
- *
- * Generic delimiters characters as defined in RFC 3986. Includes ":/?#[]@".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS:
- *
- * Subcomponent delimiter characters as defined in RFC 3986. Includes "!$&'()*+,;=".
- */
-
-
-/**
  * G_USEC_PER_SEC:
  *
  * Number of microseconds in one second (1 million).
@@ -9098,267 +4292,6 @@
 
 
 /**
- * G_VALUE_HOLDS:
- * @value: A #GValue structure.
- * @type: A #GType value.
- *
- * Checks if @value holds (or contains) a value of @type.
- * This macro will also check for @value != %NULL and issue a
- * warning if the check fails.
- *
- * Returns: %TRUE if @value holds the @type.
- */
-
-
-/**
- * G_VALUE_HOLDS_BOOLEAN:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_BOOLEAN.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_BOXED:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived
- * from type %G_TYPE_BOXED.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_CHAR:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_CHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_DOUBLE:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_DOUBLE.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_ENUM:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_ENUM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_FLAGS:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_FLAGS.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_FLOAT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_FLOAT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_GTYPE:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_GTYPE.
- *
- * Since: 2.12
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_INT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_INT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_INT64:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_INT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_LONG:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_LONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_OBJECT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_OBJECT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_PARAM:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_PARAM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_POINTER:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_POINTER.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_STRING:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_STRING.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UCHAR:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UCHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UINT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UINT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UINT64:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UINT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_ULONG:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_ULONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_VARIANT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_VARIANT.
- *
- * Returns: %TRUE on success.
- * Since: 2.26
- */
-
-
-/**
- * G_VALUE_INIT:
- *
- * A #GValue must be initialized before it can be used.
- * This macro can be used as initializer instead of an explicit
- * <literal>{ 0 }</literal> when declaring a variable,
- * but it cannot be assigned to a variable.
- *
- * |[
- *   GValue value = G_VALUE_INIT;
- * ]|
- *
- * Since: 2.30
- */
-
-
-/**
- * G_VALUE_NOCOPY_CONTENTS:
- *
- * If passed to G_VALUE_COLLECT(), allocated data won't be copied
- * but used verbatim. This does not affect ref-counted types like
- * objects.
- */
-
-
-/**
- * G_VALUE_TYPE:
- * @value: A #GValue structure.
- *
- * Get the type identifier of @value.
- *
- * Returns: the #GType.
- */
-
-
-/**
- * G_VALUE_TYPE_NAME:
- * @value: A #GValue structure.
- *
- * Gets the the type name of @value.
- *
- * Returns: the type name.
- */
-
-
-/**
  * G_VARIANT_PARSE_ERROR:
  *
  * Error domain for GVariant text format parsing.  Specific error codes
@@ -9368,251 +4301,6 @@
 
 
 /**
- * G_VARIANT_TYPE:
- * @type_string: a well-formed #GVariantType type string
- *
- * Converts a string to a const #GVariantType.  Depending on the
- * current debugging level, this function may perform a runtime check
- * to ensure that @string is a valid GVariant type string.
- *
- * It is always a programmer error to use this macro with an invalid
- * type string. If in doubt, use g_variant_type_string_is_valid() to
- * check if the string is valid.
- *
- * Since 2.24
- */
-
-
-/**
- * G_VARIANT_TYPE_ANY:
- *
- * An indefinite type that is a supertype of every type (including
- * itself).
- */
-
-
-/**
- * G_VARIANT_TYPE_ARRAY:
- *
- * An indefinite type that is a supertype of every array type.
- */
-
-
-/**
- * G_VARIANT_TYPE_BASIC:
- *
- * An indefinite type that is a supertype of every basic (ie:
- * non-container) type.
- */
-
-
-/**
- * G_VARIANT_TYPE_BOOLEAN:
- *
- * The type of a value that can be either %TRUE or %FALSE.
- */
-
-
-/**
- * G_VARIANT_TYPE_BYTE:
- *
- * The type of an integer value that can range from 0 to 255.
- */
-
-
-/**
- * G_VARIANT_TYPE_BYTESTRING:
- *
- * The type of an array of bytes.  This type is commonly used to pass
- * around strings that may not be valid utf8.  In that case, the
- * convention is that the nul terminator character should be included as
- * the last character in the array.
- */
-
-
-/**
- * G_VARIANT_TYPE_BYTESTRING_ARRAY:
- *
- * The type of an array of byte strings (an array of arrays of bytes).
- */
-
-
-/**
- * G_VARIANT_TYPE_DICTIONARY:
- *
- * An indefinite type that is a supertype of every dictionary type --
- * that is, any array type that has an element type equal to any
- * dictionary entry type.
- */
-
-
-/**
- * G_VARIANT_TYPE_DICT_ENTRY:
- *
- * An indefinite type that is a supertype of every dictionary entry
- * type.
- */
-
-
-/**
- * G_VARIANT_TYPE_DOUBLE:
- *
- * The type of a double precision IEEE754 floating point number.
- * These guys go up to about 1.80e308 (plus and minus) but miss out on
- * some numbers in between.  In any case, that's far greater than the
- * estimated number of fundamental particles in the observable
- * universe.
- */
-
-
-/**
- * G_VARIANT_TYPE_HANDLE:
- *
- * The type of a 32bit signed integer value, that by convention, is used
- * as an index into an array of file descriptors that are sent alongside
- * a D-Bus message.
- *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.
- */
-
-
-/**
- * G_VARIANT_TYPE_INT16:
- *
- * The type of an integer value that can range from -32768 to 32767.
- */
-
-
-/**
- * G_VARIANT_TYPE_INT32:
- *
- * The type of an integer value that can range from -2147483648 to
- * 2147483647.
- */
-
-
-/**
- * G_VARIANT_TYPE_INT64:
- *
- * The type of an integer value that can range from
- * -9223372036854775808 to 9223372036854775807.
- */
-
-
-/**
- * G_VARIANT_TYPE_MAYBE:
- *
- * An indefinite type that is a supertype of every maybe type.
- */
-
-
-/**
- * G_VARIANT_TYPE_OBJECT_PATH:
- *
- * The type of a D-Bus object reference.  These are strings of a
- * specific format used to identify objects at a given destination on
- * the bus.
- *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.  If you are, then the D-Bus specification contains a
- * precise description of valid object paths.
- */
-
-
-/**
- * G_VARIANT_TYPE_OBJECT_PATH_ARRAY:
- *
- * The type of an array of object paths.
- */
-
-
-/**
- * G_VARIANT_TYPE_SIGNATURE:
- *
- * The type of a D-Bus type signature.  These are strings of a specific
- * format used as type signatures for D-Bus methods and messages.
- *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.  If you are, then the D-Bus specification contains a
- * precise description of valid signature strings.
- */
-
-
-/**
- * G_VARIANT_TYPE_STRING:
- *
- * The type of a string.  "" is a string.  %NULL is not a string.
- */
-
-
-/**
- * G_VARIANT_TYPE_STRING_ARRAY:
- *
- * The type of an array of strings.
- */
-
-
-/**
- * G_VARIANT_TYPE_TUPLE:
- *
- * An indefinite type that is a supertype of every tuple type,
- * regardless of the number of items in the tuple.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT16:
- *
- * The type of an integer value that can range from 0 to 65535.
- * There were about this many people living in Toronto in the 1870s.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT32:
- *
- * The type of an integer value that can range from 0 to 4294967295.
- * That's one number for everyone who was around in the late 1970s.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT64:
- *
- * The type of an integer value that can range from 0 to
- * 18446744073709551616.  That's a really big number, but a Rubik's
- * cube can have a bit more than twice as many possible positions.
- */
-
-
-/**
- * G_VARIANT_TYPE_UNIT:
- *
- * The empty tuple type.  Has only one instance.  Known also as "triv"
- * or "void".
- */
-
-
-/**
- * G_VARIANT_TYPE_VARDICT:
- *
- * The type of a dictionary mapping strings to variants (the ubiquitous
- * "a{sv}" type).
- *
- * Since: 2.30
- */
-
-
-/**
- * G_VARIANT_TYPE_VARIANT:
- *
- * The type of a box that contains any other value (including another
- * variant).
- */
-
-
-/**
  * G_VA_COPY:
  * @ap1: the <type>va_list</type> variable to place a copy of @ap2 in
  * @ap2: a <type>va_list</type>
@@ -13156,46 +7844,6 @@
 
 
 /**
- * g_alloca:
- * @size: number of bytes to allocate.
- *
- * Allocates @size bytes on the stack; these bytes will be freed when the current
- * stack frame is cleaned up. This macro essentially just wraps the alloca()
- * function present on most UNIX variants.
- * Thus it provides the same advantages and pitfalls as alloca():
- * <variablelist>
- *   <varlistentry><term></term><listitem><para>
- *     + alloca() is very fast, as on most systems it's implemented by just adjusting
- *     the stack pointer register.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     + It doesn't cause any memory fragmentation, within its scope, separate alloca()
- *     blocks just build up and are released together at function end.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Allocation sizes have to fit into the current stack frame. For instance in a
- *       threaded environment on Linux, the per-thread stack size is limited to 2 Megabytes,
- *       so be sparse with alloca() uses.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Allocation failure due to insufficient stack space is not indicated with a %NULL
- *       return like e.g. with malloc(). Instead, most systems probably handle it the same
- *       way as out of stack space situations from infinite function recursion, i.e.
- *       with a segmentation fault.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Special care has to be taken when mixing alloca() with GNU C variable sized arrays.
- *       Stack space allocated with alloca() in the same scope as a variable sized array
- *       will be freed together with the variable sized array upon exit of that scope, and
- *       not upon exit of the enclosing function scope.
- *   </para></listitem></varlistentry>
- * </variablelist>
- *
- * Returns: space for @size bytes, allocated on the stack
- */
-
-
-/**
  * g_array_append_val:
  * @a: a #GArray.
  * @v: the value to append to the #GArray.
@@ -23802,38 +18450,6 @@
 
 
 /**
- * g_main_destroy:
- * @loop: a #GMainLoop
- *
- * Frees the memory allocated for the #GMainLoop.
- *
- * Deprecated: 2.2: Use g_main_loop_unref() instead
- */
-
-
-/**
- * g_main_is_running:
- * @loop: a #GMainLoop
- *
- * Checks if the main loop is running.
- *
- * Returns: %TRUE if the main loop is running
- * Deprecated: 2.2: Use g_main_loop_is_running() instead
- */
-
-
-/**
- * g_main_iteration:
- * @may_block: set to %TRUE if it should block (i.e. wait) until an event source becomes ready. It will return after an event source has been processed. If set to %FALSE it will return immediately if no event source is ready to be processed.
- *
- * Runs a single iteration for the default #GMainContext.
- *
- * Returns: %TRUE if more events are pending.
- * Deprecated: 2.2: Use g_main_context_iteration() instead.
- */
-
-
-/**
  * g_main_loop_get_context:
  * @loop: a #GMainLoop.
  *
@@ -23907,59 +18523,6 @@
 
 
 /**
- * g_main_new:
- * @is_running: set to %TRUE to indicate that the loop is running. This is not very important since calling g_main_run() will set this to %TRUE anyway.
- *
- * Creates a new #GMainLoop for th default main context.
- *
- * Returns: a new #GMainLoop
- * Deprecated: 2.2: Use g_main_loop_new() instead
- */
-
-
-/**
- * g_main_pending:
- *
- * Checks if any events are pending for the default #GMainContext
- * (i.e. ready to be processed).
- *
- * Returns: %TRUE if any events are pending.  Deprected: 2.2: Use g_main_context_pending() instead.
- */
-
-
-/**
- * g_main_quit:
- * @loop: a #GMainLoop
- *
- * Stops the #GMainLoop.
- * If g_main_run() was called to run the #GMainLoop, it will now return.
- *
- * Deprecated: 2.2: Use g_main_loop_quit() instead
- */
-
-
-/**
- * g_main_run:
- * @loop: a #GMainLoop
- *
- * Runs a main loop until it stops running.
- *
- * Deprecated: 2.2: Use g_main_loop_run() instead
- */
-
-
-/**
- * g_main_set_poll_func:
- * @func: the function to call to poll all file descriptors
- *
- * Sets the function to use for the handle polling of file descriptors
- * for the default main context.
- *
- * Deprecated: 2.2: Use g_main_context_set_poll_func() again
- */
-
-
-/**
  * g_malloc:
  * @n_bytes: the number of bytes to allocate
  *
@@ -25104,75 +19667,6 @@
 
 
 /**
- * g_new:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Allocates @n_structs elements of type @struct_type.
- * The returned pointer is cast to a pointer to the given type.
- * If @n_structs is 0 it returns %NULL.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Since the returned pointer is already casted to the right type,
- * it is normally unnecessary to cast it explicitly, and doing
- * so might hide memory allocation errors.
- *
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_new0:
- * @struct_type: the type of the elements to allocate.
- * @n_structs: the number of elements to allocate.
- *
- * Allocates @n_structs elements of type @struct_type, initialized to 0's.
- * The returned pointer is cast to a pointer to the given type.
- * If @n_structs is 0 it returns %NULL.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Since the returned pointer is already casted to the right type,
- * it is normally unnecessary to cast it explicitly, and doing
- * so might hide memory allocation errors.
- *
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type.
- */
-
-
-/**
- * g_newa:
- * @struct_type: Type of memory chunks to be allocated
- * @n_structs: Number of chunks to be allocated
- *
- * Wraps g_alloca() in a more typesafe manner.
- *
- * Returns: Pointer to stack space for @n_structs chunks of type @struct_type
- */
-
-
-/**
- * g_node_append:
- * @parent: the #GNode to place the new #GNode under
- * @node: the #GNode to insert
- *
- * Inserts a #GNode as the last child of the given parent.
- *
- * Returns: the inserted #GNode
- */
-
-
-/**
- * g_node_append_data:
- * @parent: the #GNode to place the new #GNode under
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode as the last child of the given parent.
- *
- * Returns: the new #GNode
- */
-
-
-/**
  * g_node_child_index:
  * @node: a #GNode
  * @data: the data to find
@@ -25281,16 +19775,6 @@
 
 
 /**
- * g_node_first_child:
- * @node: a #GNode
- *
- * Gets the first child of a #GNode.
- *
- * Returns: the first child of @node, or %NULL if @node is %NULL or has no children
- */
-
-
-/**
  * g_node_first_sibling:
  * @node: a #GNode
  *
@@ -25348,42 +19832,6 @@
 
 
 /**
- * g_node_insert_data:
- * @parent: the #GNode to place the new #GNode under
- * @position: the position to place the new #GNode at. If position is -1, the new #GNode is inserted as the last child of @parent
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode at the given position.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_insert_data_after:
- * @parent: the #GNode to place the new #GNode under
- * @sibling: the sibling #GNode to place the new #GNode after
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode after the given sibling.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_insert_data_before:
- * @parent: the #GNode to place the new #GNode under
- * @sibling: the sibling #GNode to place the new #GNode before
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode before the given sibling.
- *
- * Returns: the new #GNode
- */
-
-
-/**
  * g_node_is_ancestor:
  * @node: a #GNode
  * @descendant: a #GNode
@@ -25464,16 +19912,6 @@
 
 
 /**
- * g_node_next_sibling:
- * @node: a #GNode
- *
- * Gets the next sibling of a #GNode.
- *
- * Returns: the next sibling of @node, or %NULL if @node is the last node or %NULL
- */
-
-
-/**
  * g_node_nth_child:
  * @node: a #GNode
  * @n: the index of the desired child
@@ -25498,27 +19936,6 @@
 
 
 /**
- * g_node_prepend_data:
- * @parent: the #GNode to place the new #GNode under
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode as the first child of the given parent.
- *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_prev_sibling:
- * @node: a #GNode
- *
- * Gets the previous sibling of a #GNode.
- *
- * Returns: the previous sibling of @node, or %NULL if @node is the first node or %NULL
- */
-
-
-/**
  * g_node_reverse_children:
  * @node: a #GNode.
  *
@@ -28378,21 +22795,6 @@
 
 
 /**
- * g_renew:
- * @struct_type: the type of the elements to allocate
- * @mem: the currently allocated memory
- * @n_structs: the number of elements to allocate
- *
- * Reallocates the memory pointed to by @mem, so that it now has space for
- * @n_structs elements of type @struct_type. It returns the new address of
- * the memory, which may have been moved.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_rmdir:
  * @filename: a pathname in the GLib file name encoding (UTF-8 on Windows)
  *
@@ -29627,100 +24029,6 @@
 
 
 /**
- * g_signal_connect:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The handler will be called before the default handler of the signal.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_connect_after:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The handler will be called after the default handler of the signal.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_connect_swapped:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The instance on which the signal is emitted and @data will be swapped when
- * calling the handler.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_handlers_block_by_func:
- * @instance: The instance to block handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Blocks all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
- * g_signal_handlers_disconnect_by_data:
- * @instance: The instance to remove handlers from
- * @data: the closure data of the handlers' closures
- *
- * Disconnects all handlers on an instance that match @data.
- *
- * Returns: The number of handlers that matched.
- * Since: 2.32
- */
-
-
-/**
- * g_signal_handlers_disconnect_by_func:
- * @instance: The instance to remove handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Disconnects all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
- * g_signal_handlers_unblock_by_func:
- * @instance: The instance to unblock handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Unblocks all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
  * g_slice_alloc:
  * @block_size: the number of bytes to allocate
  *
@@ -34319,37 +28627,6 @@
 
 
 /**
- * g_try_new:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Attempts to allocate @n_structs elements of type @struct_type, and returns
- * %NULL on failure. Contrast with g_new(), which aborts the program on failure.
- * The returned pointer is cast to a pointer to the given type.
- * The function returns %NULL when @n_structs is 0 of if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_try_new0:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Attempts to allocate @n_structs elements of type @struct_type, initialized
- * to 0's, and returns %NULL on failure. Contrast with g_new0(), which aborts
- * the program on failure.
- * The returned pointer is cast to a pointer to the given type.
- * The function returns %NULL when @n_structs is 0 of if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_try_realloc:
  * @mem: (allow-none): previously-allocated memory, or %NULL.
  * @n_bytes: number of bytes to allocate.
@@ -34377,23 +28654,6 @@
 
 
 /**
- * g_try_renew:
- * @struct_type: the type of the elements to allocate
- * @mem: the currently allocated memory
- * @n_structs: the number of elements to allocate
- *
- * Attempts to reallocate the memory pointed to by @mem, so that it now has
- * space for @n_structs elements of type @struct_type, and returns %NULL on
- * failure. Contrast with g_renew(), which aborts the program on failure.
- * It returns the new address of the memory, which may have been moved.
- * The function returns %NULL if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_ucs4_to_utf16:
  * @str: a UCS-4 encoded string
  * @len: the maximum length (number of characters) of @str to use. If @len < 0, then the string is nul-terminated.
@@ -35379,19 +29639,6 @@
 
 
 /**
- * g_utf8_next_char:
- * @p: Pointer to the start of a valid UTF-8 character
- *
- * Skips to the next character in a UTF-8 string. The string must be
- * valid; this macro is as fast as possible, and has no error-checking.
- * You would use this macro to iterate over a string character by
- * character. The macro returns the start of the next UTF-8 character.
- * Before using this macro, use g_utf8_validate() to validate strings
- * that may contain invalid UTF-8.
- */
-
-
-/**
  * g_utf8_normalize:
  * @str: a UTF-8 encoded string.
  * @len: length of @str, in bytes, or -1 if @str is nul-terminated.
@@ -38399,25 +32646,6 @@
 
 
 /**
- * g_warn_if_fail:
- * @expr: the expression to check
- *
- * Logs a warning if the expression is not true.
- *
- * Since: 2.16
- */
-
-
-/**
- * g_warn_if_reached:
- *
- * Logs a critical warning.
- *
- * Since: 2.16
- */
-
-
-/**
  * g_warning:
  * @...: format string, followed by parameters to insert into the format string (as with printf())
  *
@@ -38631,13 +32859,6 @@
 
 
 /**
- * gchararray:
- *
- * A C representable type name for #G_TYPE_STRING.
- */
-
-
-/**
  * gconstpointer:
  *
  * An untyped pointer to constant data.
@@ -38951,53 +33172,6 @@
 
 
 /**
- * gunichar:
- *
- * A type which can hold any UTF-32 or UCS-4 character code,
- * also known as a Unicode code point.
- *
- * If you want to produce the UTF-8 representation of a #gunichar,
- * use g_ucs4_to_utf8(). See also g_utf8_to_ucs4() for the reverse
- * process.
- *
- * To print/scan values of this type as integer, use
- * %G_GINT32_MODIFIER and/or %G_GUINT32_FORMAT.
- *
- * The notation to express a Unicode code point in running text is
- * as a hexadecimal number with four to six digits and uppercase
- * letters, prefixed by the string "U+". Leading zeros are omitted,
- * unless the code point would have fewer than four hexadecimal digits.
- * For example, "U+0041 LATIN CAPITAL LETTER A". To print a code point
- * in the U+-notation, use the format string "U+\%04"G_GINT32_FORMAT"X".
- * To scan, use the format string "U+\%06"G_GINT32_FORMAT"X".
- *
- * |[
- * gunichar c;
- * sscanf ("U+0041", "U+%06"G_GINT32_FORMAT"X", &amp;c)
- * g_print ("Read U+%04"G_GINT32_FORMAT"X", c);
- * ]|
- */
-
-
-/**
- * gunichar2:
- *
- * A type which can hold any UTF-16 code
- * point<footnote id="utf16_surrogate_pairs">UTF-16 also has so called
- * <firstterm>surrogate pairs</firstterm> to encode characters beyond
- * the BMP as pairs of 16bit numbers. Surrogate pairs cannot be stored
- * in a single gunichar2 field, but all GLib functions accepting gunichar2
- * arrays will correctly interpret surrogate pairs.</footnote>.
- *
- * To print/scan values of this type to/from text you need to convert
- * to/from UTF-8, using g_utf16_to_utf8()/g_utf8_to_utf16().
- *
- * To print/scan values of this type as integer, use
- * %G_GINT16_MODIFIER and/or %G_GUINT16_FORMAT.
- */
-
-
-/**
  * gushort:
  *
  * Corresponds to the standard C <type>unsigned short</type> type.
diff --git a/gir/gobject-2.0.c b/gir/gobject-2.0.c
index 5f9becf..abbb141 100644
--- a/gir/gobject-2.0.c
+++ b/gir/gobject-2.0.c
@@ -3,43 +3,6 @@
 /************************************************************/
 
 /**
- * GBaseFinalizeFunc:
- * @g_class: The #GTypeClass structure to finalize.
- *
- * A callback function used by the type system to finalize those portions
- * of a derived types class structure that were setup from the corresponding
- * GBaseInitFunc() function. Class finalization basically works the inverse
- * way in which class intialization is performed.
- * See GClassInitFunc() for a discussion of the class intialization process.
- */
-
-
-/**
- * GBaseInitFunc:
- * @g_class: The #GTypeClass structure to initialize.
- *
- * A callback function used by the type system to do base initialization
- * of the class structures of derived types. It is called as part of the
- * initialization process of all derived classes and should reallocate
- * or reset all dynamic class members copied over from the parent class.
- * For example, class members (such as strings) that are not sufficiently
- * handled by a plain memory copy of the parent class into the derived class
- * have to be altered. See GClassInitFunc() for a discussion of the class
- * intialization process.
- */
-
-
-/**
- * GBinding:
- *
- * <structname>GBinding</structname> is an opaque structure whose members
- * cannot be accessed directly.
- *
- * Since: 2.26
- */
-
-
-/**
  * GBinding:flags:
  *
  * Flags to be used to control the #GBinding
@@ -87,703 +50,23 @@
 
 
 /**
- * GBindingFlags:
- * @G_BINDING_DEFAULT: The default binding; if the source property changes, the target property is updated with its value.
- * @G_BINDING_BIDIRECTIONAL: Bidirectional binding; if either the property of the source or the property of the target changes, the other is updated.
- * @G_BINDING_SYNC_CREATE: Synchronize the values of the source and target properties when creating the binding; the direction of the synchronization is always from the source to the target.
- * @G_BINDING_INVERT_BOOLEAN: If the two properties being bound are booleans, setting one to %TRUE will result in the other being set to %FALSE and vice versa. This flag will only work for boolean properties, and cannot be used when passing custom transformation functions to g_object_bind_property_full().
- *
- * Flags to be passed to g_object_bind_property() or
- * g_object_bind_property_full().
- *
- * This enumeration can be extended at later date.
- *
- * Since: 2.26
- */
-
-
-/**
- * GBindingTransformFunc:
- * @binding: a #GBinding
- * @source_value: the value of the source property
- * @target_value: the value of the target property
- * @user_data: data passed to the transform function
- *
- * A function to be called to transform the source property of @source
- * from @source_value into the target property of @target
- * using @target_value.
- *
- * Returns: %TRUE if the transformation was successful, and %FALSE otherwise
- * Since: 2.26
- */
-
-
-/**
- * GBookmarkFile:
- *
- * The <structname>GBookmarkFile</structname> struct contains only
- * private data and should not be directly accessed.
- */
-
-
-/**
- * GBookmarkFileError:
- * @G_BOOKMARK_FILE_ERROR_INVALID_URI: URI was ill-formed
- * @G_BOOKMARK_FILE_ERROR_INVALID_VALUE: a requested field was not found
- * @G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED: a requested application did not register a bookmark
- * @G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND: a requested URI was not found
- * @G_BOOKMARK_FILE_ERROR_READ: document was ill formed
- * @G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING: the text being parsed was in an unknown encoding
- * @G_BOOKMARK_FILE_ERROR_WRITE: an error occurred while writing
- * @G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND: requested file was not found
- *
- * Error codes returned by bookmark file parsing.
- */
-
-
-/**
- * GBoxedCopyFunc:
- * @boxed: The boxed structure to be copied.
- *
- * This function is provided by the user and should produce a copy
- * of the passed in boxed structure.
- *
- * Returns: The newly created copy of the boxed structure.
- */
-
-
-/**
- * GBoxedFreeFunc:
- * @boxed: The boxed structure to be freed.
- *
- * This function is provided by the user and should free the boxed
- * structure passed.
- */
-
-
-/**
- * GCClosure:
- * @closure: the #GClosure
- * @callback: the callback function
- *
- * A #GCClosure is a specialization of #GClosure for C function callbacks.
- */
-
-
-/**
- * GCallback:
- *
- * The type used for callback functions in structure definitions and function
- * signatures. This doesn't mean that all callback functions must take no
- * parameters and return void. The required signature of a callback function
- * is determined by the context in which is used (e.g. the signal to which it
- * is connected). Use G_CALLBACK() to cast the callback function to a #GCallback.
- */
-
-
-/**
- * GChecksum:
- *
- * An opaque structure representing a checksumming operation.
- * To create a new GChecksum, use g_checksum_new(). To free
- * a GChecksum, use g_checksum_free().
- *
- * Since: 2.16
- */
-
-
-/**
- * GChecksumType:
- * @G_CHECKSUM_MD5: Use the MD5 hashing algorithm
- * @G_CHECKSUM_SHA1: Use the SHA-1 hashing algorithm
- * @G_CHECKSUM_SHA256: Use the SHA-256 hashing algorithm
- *
- * The hashing algorithm to be used by #GChecksum when performing the
- * digest of some data.
- *
- * Note that the #GChecksumType enumeration may be extended at a later
- * date to include new hashing algorithm types.
- *
- * Since: 2.16
- */
-
-
-/**
- * GChildWatchFunc:
- * @pid: the process id of the child process
- * @status: Status information about the child process, see waitpid(2) for more information about this field
- * @user_data: user data passed to g_child_watch_add()
- *
- * The type of functions to be called when a child exists.
- */
-
-
-/**
- * GClassFinalizeFunc:
- * @g_class: The #GTypeClass structure to finalize.
- * @class_data: The @class_data member supplied via the #GTypeInfo structure.
- *
- * A callback function used by the type system to finalize a class.
- * This function is rarely needed, as dynamically allocated class resources
- * should be handled by GBaseInitFunc() and GBaseFinalizeFunc().
- * Also, specification of a GClassFinalizeFunc() in the #GTypeInfo
- * structure of a static type is invalid, because classes of static types
- * will never be finalized (they are artificially kept alive when their
- * reference count drops to zero).
- */
-
-
-/**
- * GClassInitFunc:
- * @g_class: The #GTypeClass structure to initialize.
- * @class_data: The @class_data member supplied via the #GTypeInfo structure.
+ * GObject::notify:
+ * @gobject: the object which received the signal.
+ * @pspec: the #GParamSpec of the property which changed.
  *
- * A callback function used by the type system to initialize the class
- * of a specific type. This function should initialize all static class
- * members.
- * The initialization process of a class involves:
- * <itemizedlist>
- * <listitem><para>
- * 	1 - Copying common members from the parent class over to the
- * 	derived class structure.
- * </para></listitem>
- * <listitem><para>
- * 	2 -  Zero initialization of the remaining members not copied
- * 	over from the parent class.
- * </para></listitem>
- * <listitem><para>
- * 	3 - Invocation of the GBaseInitFunc() initializers of all parent
- * 	types and the class' type.
- * </para></listitem>
- * <listitem><para>
- * 	4 - Invocation of the class' GClassInitFunc() initializer.
- * </para></listitem>
- * </itemizedlist>
- * Since derived classes are partially initialized through a memory copy
- * of the parent class, the general rule is that GBaseInitFunc() and
- * GBaseFinalizeFunc() should take care of necessary reinitialization
- * and release of those class members that were introduced by the type
- * that specified these GBaseInitFunc()/GBaseFinalizeFunc().
- * GClassInitFunc() should only care about initializing static
- * class members, while dynamic class members (such as allocated strings
- * or reference counted resources) are better handled by a GBaseInitFunc()
- * for this type, so proper initialization of the dynamic class members
- * is performed for class initialization of derived types as well.
- * An example may help to correspond the intend of the different class
- * initializers:
+ * The notify signal is emitted on an object when one of its
+ * properties has been changed. Note that getting this signal
+ * doesn't guarantee that the value of the property has actually
+ * changed, it may also be emitted when the setter for the property
+ * is called to reinstate the previous value.
  *
+ * This signal is typically used to obtain change notification for a
+ * single property, by specifying the property name as a detail in the
+ * g_signal_connect() call, like this:
  * |[
- * typedef struct {
- *   GObjectClass parent_class;
- *   gint         static_integer;
- *   gchar       *dynamic_string;
- * } TypeAClass;
- * static void
- * type_a_base_class_init (TypeAClass *class)
- * {
- *   class->dynamic_string = g_strdup ("some string");
- * }
- * static void
- * type_a_base_class_finalize (TypeAClass *class)
- * {
- *   g_free (class->dynamic_string);
- * }
- * static void
- * type_a_class_init (TypeAClass *class)
- * {
- *   class->static_integer = 42;
- * }
- *
- * typedef struct {
- *   TypeAClass   parent_class;
- *   gfloat       static_float;
- *   GString     *dynamic_gstring;
- * } TypeBClass;
- * static void
- * type_b_base_class_init (TypeBClass *class)
- * {
- *   class->dynamic_gstring = g_string_new ("some other string");
- * }
- * static void
- * type_b_base_class_finalize (TypeBClass *class)
- * {
- *   g_string_free (class->dynamic_gstring);
- * }
- * static void
- * type_b_class_init (TypeBClass *class)
- * {
- *   class->static_float = 3.14159265358979323846;
- * }
- * ]|
- * Initialization of TypeBClass will first cause initialization of
- * TypeAClass (derived classes reference their parent classes, see
- * g_type_class_ref() on this).
- * Initialization of TypeAClass roughly involves zero-initializing its fields,
- * then calling its GBaseInitFunc() type_a_base_class_init() to allocate
- * its dynamic members (dynamic_string), and finally calling its GClassInitFunc()
- * type_a_class_init() to initialize its static members (static_integer).
- * The first step in the initialization process of TypeBClass is then
- * a plain memory copy of the contents of TypeAClass into TypeBClass and
- * zero-initialization of the remaining fields in TypeBClass.
- * The dynamic members of TypeAClass within TypeBClass now need
- * reinitialization which is performed by calling type_a_base_class_init()
- * with an argument of TypeBClass.
- * After that, the GBaseInitFunc() of TypeBClass, type_b_base_class_init()
- * is called to allocate the dynamic members of TypeBClass (dynamic_gstring),
- * and finally the GClassInitFunc() of TypeBClass, type_b_class_init(),
- * is called to complete the initialization process with the static members
- * (static_float).
- * Corresponding finalization counter parts to the GBaseInitFunc() functions
- * have to be provided to release allocated resources at class finalization
- * time.
- */
-
-
-/**
- * GClosure:
- * @in_marshal: Indicates whether the closure is currently being invoked with g_closure_invoke()
- * @is_invalid: Indicates whether the closure has been invalidated by g_closure_invalidate()
- *
- * A #GClosure represents a callback supplied by the programmer.
- */
-
-
-/**
- * GClosureMarshal:
- * @closure: the #GClosure to which the marshaller belongs
- * @return_value: (allow-none): a #GValue to store the return value. May be %NULL if the callback of @closure doesn't return a value.
- * @n_param_values: the length of the @param_values array
- * @param_values: (array length=n_param_values): an array of #GValue<!-- -->s holding the arguments on which to invoke the callback of @closure
- * @invocation_hint: (allow-none): the invocation hint given as the last argument to g_closure_invoke()
- * @marshal_data: (allow-none): additional data specified when registering the marshaller, see g_closure_set_marshal() and g_closure_set_meta_marshal()
- *
- * The type used for marshaller functions.
- */
-
-
-/**
- * GClosureNotify:
- * @data: data specified when registering the notification callback
- * @closure: the #GClosure on which the notification is emitted
- *
- * The type used for the various notification callbacks which can be registered
- * on closures.
- */
-
-
-/**
- * GConnectFlags:
- * @G_CONNECT_AFTER: whether the handler should be called before or after the default handler of the signal.
- * @G_CONNECT_SWAPPED: whether the instance and data should be swapped when calling the handler.
- *
- * The connection flags are used to specify the behaviour of a signal's
- * connection.
- */
-
-
-/**
- * GConvertError:
- * @G_CONVERT_ERROR_NO_CONVERSION: Conversion between the requested character sets is not supported.
- * @G_CONVERT_ERROR_ILLEGAL_SEQUENCE: Invalid byte sequence in conversion input.
- * @G_CONVERT_ERROR_FAILED: Conversion failed for some reason.
- * @G_CONVERT_ERROR_PARTIAL_INPUT: Partial character sequence at end of input.
- * @G_CONVERT_ERROR_BAD_URI: URI is invalid.
- * @G_CONVERT_ERROR_NOT_ABSOLUTE_PATH: Pathname is not an absolute path.
- *
- * Error codes returned by character set conversion routines.
- */
-
-
-/**
- * GCopyFunc:
- * @src: A pointer to the data which should be copied
- * @data: Additional data
- *
- * A function of this signature is used to copy the node data
- * when doing a deep-copy of a tree.
- *
- * Returns: A pointer to the copy
- * Since: 2.4
- */
-
-
-/**
- * GDateTime:
- *
- * <structname>GDateTime</structname> is an opaque structure whose members
- * cannot be accessed directly.
- *
- * Since: 2.26
- */
-
-
-/**
- * GDebugKey:
- * @key: the string
- * @value: the flag
- *
- * Associates a string with a bit flag.
- * Used in g_parse_debug_string().
- */
-
-
-/**
- * GEnumClass:
- * @g_type_class: the parent class
- * @minimum: the smallest possible value.
- * @maximum: the largest possible value.
- * @n_values: the number of possible values.
- * @values: an array of #GEnumValue structs describing the individual values.
- *
- * The class of an enumeration type holds information about its
- * possible values.
- */
-
-
-/**
- * GEnumValue:
- * @value: the enum value
- * @value_name: the name of the value
- * @value_nick: the nickname of the value
- *
- * A structure which contains a single enum value, its name, and its
- * nickname.
- */
-
-
-/**
- * GError:
- * @domain: error domain, e.g. #G_FILE_ERROR
- * @code: error code, e.g. %G_FILE_ERROR_NOENT
- * @message: human-readable informative error message
- *
- * The <structname>GError</structname> structure contains
- * information about an error that has occurred.
- */
-
-
-/**
- * GFlagsClass:
- * @g_type_class: the parent class
- * @mask: a mask covering all possible values.
- * @n_values: the number of possible values.
- * @values: an array of #GFlagsValue structs describing the individual values.
- *
- * The class of a flags type holds information about its
- * possible values.
- */
-
-
-/**
- * GFlagsValue:
- * @value: the flags value
- * @value_name: the name of the value
- * @value_nick: the nickname of the value
- *
- * A structure which contains a single flags value, its name, and its
- * nickname.
- */
-
-
-/**
- * GFreeFunc:
- * @data: a data pointer
- *
- * Declares a type of function which takes an arbitrary
- * data pointer argument and has no return value. It is
- * not currently used in GLib or GTK+.
- */
-
-
-/**
- * GHmac:
- *
- * An opaque structure representing a HMAC operation.
- * To create a new GHmac, use g_hmac_new(). To free
- * a GHmac, use g_hmac_unref().
- *
- * Since: 2.30
- */
-
-
-/**
- * GIconv:
- *
- * The <structname>GIConv</structname> struct wraps an
- * iconv() conversion descriptor. It contains private data
- * and should only be accessed using the following functions.
- */
-
-
-/**
- * GInitiallyUnowned:
- *
- * All the fields in the <structname>GInitiallyUnowned</structname> structure
- * are private to the #GInitiallyUnowned implementation and should never be
- * accessed directly.
- */
-
-
-/**
- * GInitiallyUnownedClass:
- *
- * The class structure for the <structname>GInitiallyUnowned</structname> type.
- */
-
-
-/**
- * GInstanceInitFunc:
- * @instance: The instance to initialize.
- * @g_class: The class of the type the instance is created for.
- *
- * A callback function used by the type system to initialize a new
- * instance of a type. This function initializes all instance members and
- * allocates any resources required by it.
- * Initialization of a derived instance involves calling all its parent
- * types instance initializers, so the class member of the instance
- * is altered during its initialization to always point to the class that
- * belongs to the type the current initializer was introduced for.
- */
-
-
-/**
- * GInterfaceFinalizeFunc:
- * @g_iface: The interface structure to finalize.
- * @iface_data: The @interface_data supplied via the #GInterfaceInfo structure.
- *
- * A callback function used by the type system to finalize an interface.
- * This function should destroy any internal data and release any resources
- * allocated by the corresponding GInterfaceInitFunc() function.
- */
-
-
-/**
- * GInterfaceInfo:
- * @interface_init: location of the interface initialization function
- * @interface_finalize: location of the interface finalization function
- * @interface_data: user-supplied data passed to the interface init/finalize functions
- *
- * A structure that provides information to the type system which is
- * used specifically for managing interface types.
- */
-
-
-/**
- * GInterfaceInitFunc:
- * @g_iface: The interface structure to initialize.
- * @iface_data: The @interface_data supplied via the #GInterfaceInfo structure.
- *
- * A callback function used by the type system to initialize a new
- * interface.  This function should initialize all internal data and
- * allocate any resources required by the interface.
- */
-
-
-/**
- * GLIB_VERSION_2_26:
- *
- * A macro that evaluates to the 2.26 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_2_28:
- *
- * A macro that evaluates to the 2.28 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_2_30:
- *
- * A macro that evaluates to the 2.30 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_2_32:
- *
- * A macro that evaluates to the 2.32 version of GLib, in a format
- * that can be used by the C pre-processor.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_MAX_ALLOWED:
- *
- * A macro that should be defined by the user prior to including
- * the glib.h header.
- * The definition should be one of the predefined GLib version
- * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
- *
- * This macro defines the upper bound for the GLib API to use.
- *
- * If a function has been introduced in a newer version of GLib,
- * it is possible to use this symbol to get compiler warnings when
- * trying to use that function.
- *
- * Since: 2.32
- */
-
-
-/**
- * GLIB_VERSION_MIN_REQUIRED:
- *
- * A macro that should be defined by the user prior to including
- * the glib.h header.
- * The definition should be one of the predefined GLib version
- * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
- *
- * This macro defines the lower bound for the GLib API to use.
- *
- * If a function has been deprecated in a newer version of GLib,
- * it is possible to use this symbol to avoid the compiler warnings
- * without disabling warning for every deprecated function.
- *
- * Since: 2.32
- */
-
-
-/**
- * GMainContext:
- *
- * The <structname>GMainContext</structname> struct is an opaque data
- * type representing a set of sources to be handled in a main loop.
- */
-
-
-/**
- * GMainLoop:
- *
- * The <structname>GMainLoop</structname> struct is an opaque data type
- * representing the main event loop of a GLib or GTK+ application.
- */
-
-
-/**
- * GMarkupError:
- * @G_MARKUP_ERROR_BAD_UTF8: text being parsed was not valid UTF-8
- * @G_MARKUP_ERROR_EMPTY: document contained nothing, or only whitespace
- * @G_MARKUP_ERROR_PARSE: document was ill-formed
- * @G_MARKUP_ERROR_UNKNOWN_ELEMENT: error should be set by #GMarkupParser functions; element wasn't known
- * @G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE: error should be set by #GMarkupParser functions; attribute wasn't known
- * @G_MARKUP_ERROR_INVALID_CONTENT: error should be set by #GMarkupParser functions; content was invalid
- * @G_MARKUP_ERROR_MISSING_ATTRIBUTE: error should be set by #GMarkupParser functions; a required attribute was missing
- *
- * Error codes returned by markup parsing.
- */
-
-
-/**
- * GMarkupParseContext:
- *
- * A parse context is used to parse a stream of bytes that
- * you expect to contain marked-up text.
- *
- * See g_markup_parse_context_new(), #GMarkupParser, and so
- * on for more details.
- */
-
-
-/**
- * GMarkupParseFlags:
- * @G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG: flag you should not use
- * @G_MARKUP_TREAT_CDATA_AS_TEXT: When this flag is set, CDATA marked sections are not passed literally to the @passthrough function of the parser. Instead, the content of the section (without the <literal>&lt;![CDATA[</literal> and <literal>]]&gt;</literal>) is passed to the @text function. This flag was added in GLib 2.12
- * @G_MARKUP_PREFIX_ERROR_POSITION: Normally errors caught by GMarkup itself have line/column information prefixed to them to let the caller know the location of the error. When this flag is set the location information is also prefixed to errors generated by the #GMarkupParser implementation functions
- *
- * Flags that affect the behaviour of the parser.
- */
-
-
-/**
- * GMarkupParser:
- * @start_element: Callback to invoke when the opening tag of an element is seen.
- * @end_element: Callback to invoke when the closing tag of an element is seen. Note that this is also called for empty tags like <literal>&lt;empty/&gt;</literal>.
- * @text: Callback to invoke when some text is seen (text is always inside an element). Note that the text of an element may be spread over multiple calls of this function. If the %G_MARKUP_TREAT_CDATA_AS_TEXT flag is set, this function is also called for the content of CDATA marked sections.
- * @passthrough: Callback to invoke for comments, processing instructions and doctype declarations; if you're re-writing the parsed document, write the passthrough text back out in the same position. If the %G_MARKUP_TREAT_CDATA_AS_TEXT flag is not set, this function is also called for CDATA marked sections.
- * @error: Callback to invoke when an error occurs.
- *
- * Any of the fields in #GMarkupParser can be %NULL, in which case they
- * will be ignored. Except for the @error function, any of these callbacks
- * can set an error; in particular the %G_MARKUP_ERROR_UNKNOWN_ELEMENT,
- * %G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, and %G_MARKUP_ERROR_INVALID_CONTENT
- * errors are intended to be set from these callbacks. If you set an error
- * from a callback, g_markup_parse_context_parse() will report that error
- * back to its caller.
- */
-
-
-/**
- * GMemVTable:
- * @malloc: function to use for allocating memory.
- * @realloc: function to use for reallocating memory.
- * @free: function to use to free memory.
- * @calloc: function to use for allocating zero-filled memory.
- * @try_malloc: function to use for allocating memory without a default error handler.
- * @try_realloc: function to use for reallocating memory without a default error handler.
- *
- * A set of functions used to perform memory allocation. The same #GMemVTable must
- * be used for all allocations in the same program; a call to g_mem_set_vtable(),
- * if it exists, should be prior to any use of GLib.
- */
-
-
-/**
- * GNormalizeMode:
- * @G_NORMALIZE_DEFAULT: standardize differences that do not affect the text content, such as the above-mentioned accent representation
- * @G_NORMALIZE_NFD: another name for %G_NORMALIZE_DEFAULT
- * @G_NORMALIZE_DEFAULT_COMPOSE: like %G_NORMALIZE_DEFAULT, but with composed forms rather than a maximally decomposed form
- * @G_NORMALIZE_NFC: another name for %G_NORMALIZE_DEFAULT_COMPOSE
- * @G_NORMALIZE_ALL: beyond %G_NORMALIZE_DEFAULT also standardize the "compatibility" 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_NFKD: another name for %G_NORMALIZE_ALL
- * @G_NORMALIZE_ALL_COMPOSE: like %G_NORMALIZE_ALL, but with composed forms rather than a maximally decomposed form
- * @G_NORMALIZE_NFKC: another name for %G_NORMALIZE_ALL_COMPOSE
- *
- * Defines how a Unicode string is transformed in a 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. Unicode strings
- * should generally be normalized before comparing them.
- */
-
-
-/**
- * GObject:
- *
- * All the fields in the <structname>GObject</structname> structure are private
- * to the #GObject implementation and should never be accessed directly.
- */
-
-
-/**
- * GObject::notify:
- * @gobject: the object which received the signal.
- * @pspec: the #GParamSpec of the property which changed.
- *
- * The notify signal is emitted on an object when one of its
- * properties has been changed. Note that getting this signal
- * doesn't guarantee that the value of the property has actually
- * changed, it may also be emitted when the setter for the property
- * is called to reinstate the previous value.
- *
- * This signal is typically used to obtain change notification for a
- * single property, by specifying the property name as a detail in the
- * g_signal_connect() call, like this:
- * |[
- * g_signal_connect (text_view->buffer, "notify::paste-target-list",
- *                   G_CALLBACK (gtk_text_view_target_list_notify),
- *                   text_view)
+ * g_signal_connect (text_view->buffer, "notify::paste-target-list",
+ *                   G_CALLBACK (gtk_text_view_target_list_notify),
+ *                   text_view)
  * ]|
  * It is important to note that you must use
  * <link linkend="canonical-parameter-name">canonical</link> parameter names as
@@ -792,4681 +75,38 @@
 
 
 /**
- * GObjectClass:
- * @g_type_class: the parent class
- * @constructor: the @constructor function is called by g_object_new () to complete the object initialization after all the construction properties are set. The first thing a @constructor implementation must do is chain up to the @constructor of the parent class. Overriding @constructor should be rarely needed, e.g. to handle construct properties, or to implement singletons.
- * @set_property: the generic setter for all properties of this type. Should be overridden for every type with properties. Implementations of @set_property don't need to emit property change notification explicitly, this is handled by the type system.
- * @get_property: the generic getter for all properties of this type. Should be overridden for every type with properties.
- * @dispose: the @dispose function is supposed to drop all references to other objects, but keep the instance otherwise intact, so that client method invocations still work. It may be run multiple times (due to reference loops). Before returning, @dispose should chain up to the @dispose method of the parent class.
- * @finalize: instance finalization function, should finish the finalization of the instance begun in @dispose and chain up to the @finalize method of the parent class.
- * @dispatch_properties_changed: emits property change notification for a bunch of properties. Overriding @dispatch_properties_changed should be rarely needed.
- * @notify: the class closure for the notify signal
- * @constructed: the @constructed function is called by g_object_new() as the final step of the object creation process.  At the point of the call, all construction properties have been set on the object.  The purpose of this call is to allow for object initialisation steps that can only be performed after construction properties have been set.  @constructed implementors should chain up to the @constructed call of their parent class to allow it to complete its initialisation.
- *
- * The class structure for the <structname>GObject</structname> type.
- *
- * <example>
- * <title>Implementing singletons using a constructor</title>
- * <programlisting>
- * static MySingleton *the_singleton = NULL;
- *
- * static GObject*
- * my_singleton_constructor (GType                  type,
- *                           guint                  n_construct_params,
- *                           GObjectConstructParam *construct_params)
- * {
- *   GObject *object;
- *
- *   if (!the_singleton)
- *     {
- *       object = G_OBJECT_CLASS (parent_class)->constructor (type,
- *                                                            n_construct_params,
- *                                                            construct_params);
- *       the_singleton = MY_SINGLETON (object);
- *     }
- *   else
- *     object = g_object_ref (G_OBJECT (the_singleton));
- *
- *   return object;
- * }
- * </programlisting></example>
- */
-
-
-/**
- * GObjectConstructParam:
- * @pspec: the #GParamSpec of the construct parameter
- * @value: the value to set the parameter to
- *
- * The <structname>GObjectConstructParam</structname> struct is an auxiliary
- * structure used to hand #GParamSpec/#GValue pairs to the @constructor of
- * a #GObjectClass.
- */
-
-
-/**
- * GObjectFinalizeFunc:
- * @object: the #GObject being finalized
- *
- * The type of the @finalize function of #GObjectClass.
- */
-
-
-/**
- * GObjectGetPropertyFunc:
- * @object: a #GObject
- * @property_id: the numeric id under which the property was registered with g_object_class_install_property().
- * @value: a #GValue to return the property value in
- * @pspec: the #GParamSpec describing the property
- *
- * The type of the @get_property function of #GObjectClass.
- */
-
-
-/**
- * GObjectSetPropertyFunc:
- * @object: a #GObject
- * @property_id: the numeric id under which the property was registered with g_object_class_install_property().
- * @value: the new value for the property
- * @pspec: the #GParamSpec describing the property
- *
- * The type of the @set_property function of #GObjectClass.
- */
-
-
-/**
- * GOptionArg:
- * @G_OPTION_ARG_NONE: No extra argument. This is useful for simple flags.
- * @G_OPTION_ARG_STRING: The option takes a string argument.
- * @G_OPTION_ARG_INT: The option takes an integer argument.
- * @G_OPTION_ARG_CALLBACK: The option provides a callback to parse the extra argument.
- * @G_OPTION_ARG_FILENAME: The option takes a filename as argument.
- * @G_OPTION_ARG_STRING_ARRAY: The option takes a string argument, multiple uses of the option are collected into an array of strings.
- * @G_OPTION_ARG_FILENAME_ARRAY: The option takes a filename as argument, multiple uses of the option are collected into an array of strings.
- * @G_OPTION_ARG_DOUBLE: The option takes a double argument. The argument can be formatted either for the user's locale or for the "C" locale. Since 2.12
- * @G_OPTION_ARG_INT64: The option takes a 64-bit integer. Like %G_OPTION_ARG_INT but for larger numbers. The number can be in decimal base, or in hexadecimal (when prefixed with <literal>0x</literal>, for example, <literal>0xffffffff</literal>). Since 2.12
- *
- * The #GOptionArg enum values determine which type of extra argument the
- * options expect to find. If an option expects an extra argument, it
- * can be specified in several ways; with a short option:
- * <option>-x arg</option>, with a long option: <option>--name arg</option>
- * or combined in a single argument: <option>--name=arg</option>.
- */
-
-
-/**
- * GOptionArgFunc:
- * @option_name: The name of the option being parsed. This will be either a single dash followed by a single letter (for a short name) or two dashes followed by a long option name.
- * @value: The value to be parsed.
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: A return location for errors. The error code %G_OPTION_ERROR_FAILED is intended to be used for errors in #GOptionArgFunc callbacks.
- *
- * The type of function to be passed as callback for %G_OPTION_ARG_CALLBACK
- * options.
- *
- * Returns: %TRUE if the option was successfully parsed, %FALSE if an error occurred, in which case @error should be set with g_set_error()
- */
-
-
-/**
- * GOptionContext:
- *
- * A <structname>GOptionContext</structname> struct defines which options
- * are accepted by the commandline option parser. The struct has only private
- * fields and should not be directly accessed.
- */
-
-
-/**
- * GOptionEntry:
- * @long_name: The long name of an option can be used to specify it in a commandline as --<replaceable>long_name</replaceable>. Every option must have a long name. To resolve conflicts if multiple option groups contain the same long name, it is also possible to specify the option as --<replaceable>groupname</replaceable>-<replaceable>long_name</replaceable>.
- * @short_name: If an option has a short name, it can be specified -<replaceable>short_name</replaceable> in a commandline. @short_name must be a printable ASCII character different from '-', or zero if the option has no short name.
- * @flags: Flags from #GOptionFlags.
- * @arg: The type of the option, as a #GOptionArg.
- * @arg_data: If the @arg type is %G_OPTION_ARG_CALLBACK, then @arg_data must point to a #GOptionArgFunc callback function, which will be called to handle the extra argument. Otherwise, @arg_data is a pointer to a location to store the value, the required type of the location depends on the @arg type: <variablelist> <varlistentry> <term>%G_OPTION_ARG_NONE</term> <listitem><para>%gboolean</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_STRING</term> <listitem><para>%gchar*</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_INT</term> <listitem><para>%gint</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_FILENAME</term> <listitem><para>%gchar*</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_STRING_ARRAY</term> <listitem><para>%gchar**</para></listitem> </varlistentry> <varlistentry> <term>%G_OPTION_ARG_FILENAME_ARRAY</term> <listitem><para>%gchar**</para></listitem> </varlistentry> <varlistentry> <
 term>%G_OPTION_ARG_DOUBLE</term> <listitem><para>%gdouble</para></listitem> </varlistentry> </variablelist> If @arg type is %G_OPTION_ARG_STRING or %G_OPTION_ARG_FILENAME the location will contain a newly allocated string if the option was given. That string needs to be freed by the callee using g_free(). Likewise if @arg type is %G_OPTION_ARG_STRING_ARRAY or %G_OPTION_ARG_FILENAME_ARRAY, the data should be freed using g_strfreev().
- * @description: the description for the option in <option>--help</option> output. The @description is translated using the @translate_func of the group, see g_option_group_set_translation_domain().
- * @arg_description: The placeholder to use for the extra argument parsed by the option in <option>--help</option> output. The @arg_description is translated using the @translate_func of the group, see g_option_group_set_translation_domain().
- *
- * A <structname>GOptionEntry</structname> defines a single option.
- * To have an effect, they must be added to a #GOptionGroup with
- * g_option_context_add_main_entries() or g_option_group_add_entries().
- */
-
-
-/**
- * GOptionError:
- * @G_OPTION_ERROR_UNKNOWN_OPTION: An option was not known to the parser. This error will only be reported, if the parser hasn't been instructed to ignore unknown options, see g_option_context_set_ignore_unknown_options().
- * @G_OPTION_ERROR_BAD_VALUE: A value couldn't be parsed.
- * @G_OPTION_ERROR_FAILED: A #GOptionArgFunc callback failed.
- *
- * Error codes returned by option parsing.
- */
-
-
-/**
- * GOptionErrorFunc:
- * @context: The active #GOptionContext
- * @group: The group to which the function belongs
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: The #GError containing details about the parse error
- *
- * The type of function to be used as callback when a parse error occurs.
- */
-
-
-/**
- * GOptionFlags:
- * @G_OPTION_FLAG_HIDDEN: The option doesn't appear in <option>--help</option> output.
- * @G_OPTION_FLAG_IN_MAIN: The option appears in the main section of the <option>--help</option> output, even if it is defined in a group.
- * @G_OPTION_FLAG_REVERSE: For options of the %G_OPTION_ARG_NONE kind, this flag indicates that the sense of the option is reversed.
- * @G_OPTION_FLAG_NO_ARG: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the callback does not take any argument (like a %G_OPTION_ARG_NONE option). Since 2.8
- * @G_OPTION_FLAG_FILENAME: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the argument should be passed to the callback in the GLib filename encoding rather than UTF-8. Since 2.8
- * @G_OPTION_FLAG_OPTIONAL_ARG: For options of the %G_OPTION_ARG_CALLBACK kind, this flag indicates that the argument supply is optional. If no argument is given then data of %GOptionParseFunc will be set to NULL. Since 2.8
- * @G_OPTION_FLAG_NOALIAS: This flag turns off the automatic conflict resolution which prefixes long option names with <literal>groupname-</literal> if there is a conflict. This option should only be used in situations where aliasing is necessary to model some legacy commandline interface. It is not safe to use this option, unless all option groups are under your direct control. Since 2.8.
- *
- * Flags which modify individual options.
- */
-
-
-/**
- * GOptionGroup:
- *
- * A <structname>GOptionGroup</structname> struct defines the options in a single
- * group. The struct has only private fields and should not be directly accessed.
- *
- * All options in a group share the same translation function. Libraries which
- * need to parse commandline options are expected to provide a function for
- * getting a <structname>GOptionGroup</structname> holding their options, which
- * the application can then add to its #GOptionContext.
- */
-
-
-/**
- * GOptionParseFunc:
- * @context: The active #GOptionContext
- * @group: The group to which the function belongs
- * @data: User data added to the #GOptionGroup containing the option when it was created with g_option_group_new()
- * @error: A return location for error details
- *
- * The type of function that can be called before and after parsing.
- *
- * Returns: %TRUE if the function completed successfully, %FALSE if an error occurred, in which case @error should be set with g_set_error()
- */
-
-
-/**
- * GParamFlags:
- * @G_PARAM_READABLE: the parameter is readable
- * @G_PARAM_WRITABLE: the parameter is writable
- * @G_PARAM_CONSTRUCT: the parameter will be set upon object construction
- * @G_PARAM_CONSTRUCT_ONLY: the parameter will only be set upon object construction
- * @G_PARAM_LAX_VALIDATION: upon parameter conversion (see g_param_value_convert()) strict validation is not required
- * @G_PARAM_STATIC_NAME: the string used as name when constructing the parameter is guaranteed to remain valid and unmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_STATIC_NICK: the string used as nick when constructing the parameter is guaranteed to remain valid and unmmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_STATIC_BLURB: the string used as blurb when constructing the parameter is guaranteed to remain valid and unmodified for the lifetime of the parameter. Since 2.8
- * @G_PARAM_PRIVATE: internal
- * @G_PARAM_DEPRECATED: the parameter is deprecated and will be removed in a future version. A warning will be generated if it is used while running with G_ENABLE_DIAGNOSTIC=1. Since 2.26
- *
- * Through the #GParamFlags flag values, certain aspects of parameters
- * can be configured.
- */
-
-
-/**
- * GParamSpec:
- * @g_type_instance: private #GTypeInstance portion
- * @name: name of this parameter: always an interned string
- * @flags: #GParamFlags flags for this parameter
- * @value_type: the #GValue type for this parameter
- * @owner_type: #GType type that uses (introduces) this parameter
- *
- * All other fields of the <structname>GParamSpec</structname> struct are private and
- * should not be used directly.
- */
-
-
-/**
- * GParamSpecBoolean:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for boolean properties.
- */
-
-
-/**
- * GParamSpecBoxed:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for boxed properties.
- */
-
-
-/**
- * GParamSpecChar:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for character properties.
- */
-
-
-/**
- * GParamSpecClass:
- * @g_type_class: the parent class
- * @value_type: the #GValue type for this parameter
- * @finalize: The instance finalization function (optional), should chain up to the finalize method of the parent class.
- * @value_set_default: Resets a @value to the default value for this type (recommended, the default is g_value_reset()), see g_param_value_set_default().
- * @value_validate: Ensures that the contents of @value comply with the specifications set out by this type (optional), see g_param_value_validate().
- * @values_cmp: Compares @value1 with @value2 according to this type (recommended, the default is memcmp()), see g_param_values_cmp().
- *
- * The class structure for the <structname>GParamSpec</structname> type.
- * Normally, <structname>GParamSpec</structname> classes are filled by
- * g_param_type_register_static().
- */
-
-
-/**
- * GParamSpecDouble:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- * @epsilon: values closer than @epsilon will be considered identical by g_param_values_cmp(); the default value is 1e-90.
- *
- * A #GParamSpec derived structure that contains the meta data for double properties.
- */
-
-
-/**
- * GParamSpecEnum:
- * @parent_instance: private #GParamSpec portion
- * @enum_class: the #GEnumClass for the enum
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for enum
- * properties.
- */
-
-
-/**
- * GParamSpecFlags:
- * @parent_instance: private #GParamSpec portion
- * @flags_class: the #GFlagsClass for the flags
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for flags
- * properties.
- */
-
-
-/**
- * GParamSpecFloat:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- * @epsilon: values closer than @epsilon will be considered identical by g_param_values_cmp(); the default value is 1e-30.
- *
- * A #GParamSpec derived structure that contains the meta data for float properties.
- */
-
-
-/**
- * GParamSpecGType:
- * @parent_instance: private #GParamSpec portion
- * @is_a_type: a #GType whose subtypes can occur as values
- *
- * A #GParamSpec derived structure that contains the meta data for #GType properties.
- *
- * Since: 2.10
- */
-
-
-/**
- * GParamSpecInt:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for integer properties.
- */
-
-
-/**
- * GParamSpecInt64:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for 64bit integer properties.
- */
-
-
-/**
- * GParamSpecLong:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for long integer properties.
- */
-
-
-/**
- * GParamSpecObject:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for object properties.
- */
-
-
-/**
- * GParamSpecOverride:
- *
- * This is a type of #GParamSpec type that simply redirects operations to
- * another paramspec.  All operations other than getting or
- * setting the value are redirected, including accessing the nick and
- * blurb, validating a value, and so forth. See
- * g_param_spec_get_redirect_target() for retrieving the overidden
- * property. #GParamSpecOverride is used in implementing
- * g_object_class_override_property(), and will not be directly useful
- * unless you are implementing a new base type similar to GObject.
- *
- * Since: 2.4
- */
-
-
-/**
- * GParamSpecParam:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for %G_TYPE_PARAM
- * properties.
- */
-
-
-/**
- * GParamSpecPointer:
- * @parent_instance: private #GParamSpec portion
- *
- * A #GParamSpec derived structure that contains the meta data for pointer properties.
- */
-
-
-/**
- * GParamSpecPool:
- *
- * A #GParamSpecPool maintains a collection of #GParamSpec<!-- -->s which can be
- * quickly accessed by owner and name. The implementation of the #GObject property
- * system uses such a pool to store the #GParamSpecs of the properties all object
- * types.
- */
-
-
-/**
- * GParamSpecString:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- * @cset_first: a string containing the allowed values for the first byte
- * @cset_nth: a string containing the allowed values for the subsequent bytes
- * @substitutor: the replacement byte for bytes which don't match @cset_first or @cset_nth.
- * @null_fold_if_empty: replace empty string by %NULL
- * @ensure_non_null: replace %NULL strings by an empty string
- *
- * A #GParamSpec derived structure that contains the meta data for string
- * properties.
- */
-
-
-/**
- * GParamSpecTypeInfo:
- * @instance_size: Size of the instance (object) structure.
- * @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
- * @instance_init: Location of the instance initialization function (optional).
- * @value_type: The #GType of values conforming to this #GParamSpec
- * @finalize: The instance finalization function (optional).
- * @value_set_default: Resets a @value to the default value for @pspec (recommended, the default is g_value_reset()), see g_param_value_set_default().
- * @value_validate: Ensures that the contents of @value comply with the specifications set out by @pspec (optional), see g_param_value_validate().
- * @values_cmp: Compares @value1 with @value2 according to @pspec (recommended, the default is memcmp()), see g_param_values_cmp().
- *
- * This structure is used to provide the type system with the information
- * required to initialize and destruct (finalize) a parameter's class and
- * instances thereof.
- * The initialized structure is passed to the g_param_type_register_static()
- * The type system will perform a deep copy of this structure, so its memory
- * does not need to be persistent across invocation of
- * g_param_type_register_static().
- */
-
-
-/**
- * GParamSpecUChar:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned character properties.
- */
-
-
-/**
- * GParamSpecUInt:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned integer properties.
- */
-
-
-/**
- * GParamSpecUInt64:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned 64bit integer properties.
- */
-
-
-/**
- * GParamSpecULong:
- * @parent_instance: private #GParamSpec portion
- * @minimum: minimum value for the property specified
- * @maximum: maximum value for the property specified
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unsigned long integer properties.
- */
-
-
-/**
- * GParamSpecUnichar:
- * @parent_instance: private #GParamSpec portion
- * @default_value: default value for the property specified
- *
- * A #GParamSpec derived structure that contains the meta data for unichar (unsigned integer) properties.
- */
-
-
-/**
- * GParamSpecValueArray:
- * @parent_instance: private #GParamSpec portion
- * @element_spec: a #GParamSpec describing the elements contained in arrays of this property, may be %NULL
- * @fixed_n_elements: if greater than 0, arrays of this property will always have this many elements
- *
- * A #GParamSpec derived structure that contains the meta data for #GValueArray properties.
- */
-
-
-/**
- * GParamSpecVariant:
- * @parent_instance: private #GParamSpec portion
- * @type: a #GVariantType, or %NULL
- * @default_value: a #GVariant, or %NULL
- *
- * A #GParamSpec derived structure that contains the meta data for #GVariant properties.
- *
- * Since: 2.26
- */
-
-
-/**
- * GParameter:
- * @name: the parameter name
- * @value: the parameter value
- *
- * The <structname>GParameter</structname> struct is an auxiliary structure used
- * to hand parameter name/value pairs to g_object_newv().
- */
-
-
-/**
- * GPid:
- *
- * A type which is used to hold a process identification.
- *
- * On UNIX, processes are identified by a process id (an integer),
- * while Windows uses process handles (which are pointers).
- *
- * GPid is used in GLib only for descendant processes spawned with
- * the g_spawn functions.
- */
-
-
-/**
- * GPollFD:
- * @fd: the file descriptor to poll (or a <type>HANDLE</type> on Win32)
- * @events: a bitwise combination from #GIOCondition, specifying which events should be polled for. Typically for reading from a file descriptor you would use %G_IO_IN | %G_IO_HUP | %G_IO_ERR, and for writing you would use %G_IO_OUT | %G_IO_ERR.
- * @revents: a bitwise combination of flags from #GIOCondition, returned from the poll() function to indicate which events occurred.
- *
- * Represents a file descriptor, which events to poll for, and which events
- * occurred.
- */
-
-
-/**
- * GPollFunc:
- * @ufds: an array of #GPollFD elements
- * @nfsd: the number of elements in @ufds
- * @timeout_: the maximum time to wait for an event of the file descriptors. A negative value indicates an infinite timeout.
- *
- * Specifies the type of function passed to g_main_context_set_poll_func().
- * The semantics of the function should match those of the poll() system call.
- *
- * Returns: the number of #GPollFD elements which have events or errors reported, or -1 if an error occurred.
- */
-
-
-/**
- * GPrintFunc:
- * @string: the message to output
- *
- * Specifies the type of the print handler functions.
- * These are called with the complete formatted string to output.
- */
-
-
-/**
- * GQueue:
- * @head: a pointer to the first element of the queue
- * @tail: a pointer to the last element of the queue
- * @length: the number of elements in the queue
- *
- * Contains the public fields of a
- * <link linkend="glib-Double-ended-Queues">Queue</link>.
- */
-
-
-/**
- * GRegex:
- *
- * A GRegex is the "compiled" form of a regular expression pattern. This
- * structure is opaque and its fields cannot be accessed directly.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexCompileFlags:
- * @G_REGEX_CASELESS: Letters in the pattern match both upper- and lowercase letters. This option can be changed within a pattern by a "(?i)" option setting.
- * @G_REGEX_MULTILINE: By default, GRegex treats the strings as consisting of a single line of characters (even if it actually contains newlines). The "start of line" metacharacter ("^") matches only at the start of the string, while the "end of line" metacharacter ("$") matches only at the end of the string, or before a terminating newline (unless #G_REGEX_DOLLAR_ENDONLY is set). When #G_REGEX_MULTILINE is set, the "start of line" and "end of line" constructs match immediately following or immediately before any newline in the string, respectively, as well as at the very start and end. This can be changed within a pattern by a "(?m)" option setting.
- * @G_REGEX_DOTALL: A dot metacharater (".") in the pattern matches all characters, including newlines. Without it, newlines are excluded. This option can be changed within a pattern by a ("?s") option setting.
- * @G_REGEX_EXTENDED: Whitespace data characters in the pattern are totally ignored except when escaped or inside a character class. Whitespace does not include the VT character (code 11). In addition, characters between an unescaped "#" outside a character class and the next newline character, inclusive, are also ignored. This can be changed within a pattern by a "(?x)" option setting.
- * @G_REGEX_ANCHORED: The pattern is forced to be "anchored", that is, it is constrained to match only at the first matching point in the string that is being searched. This effect can also be achieved by appropriate constructs in the pattern itself such as the "^" metacharater.
- * @G_REGEX_DOLLAR_ENDONLY: A dollar metacharacter ("$") in the pattern matches only at the end of the string. Without this option, a dollar also matches immediately before the final character if it is a newline (but not before any other newlines). This option is ignored if #G_REGEX_MULTILINE is set.
- * @G_REGEX_UNGREEDY: Inverts the "greediness" of the quantifiers so that they are not greedy by default, but become greedy if followed by "?". It can also be set by a "(?U)" option setting within the pattern.
- * @G_REGEX_RAW: Usually strings must be valid UTF-8 strings, using this flag they are considered as a raw sequence of bytes.
- * @G_REGEX_NO_AUTO_CAPTURE: Disables the use of numbered capturing parentheses in the pattern. Any opening parenthesis that is not followed by "?" behaves as if it were followed by "?:" but named parentheses can still be used for capturing (and they acquire numbers in the usual way).
- * @G_REGEX_OPTIMIZE: Optimize the regular expression. If the pattern will be used many times, then it may be worth the effort to optimize it to improve the speed of matches.
- * @G_REGEX_DUPNAMES: Names used to identify capturing subpatterns need not be unique. This can be helpful for certain types of pattern when it is known that only one instance of the named subpattern can ever be matched.
- * @G_REGEX_NEWLINE_CR: Usually any newline character is recognized, if this option is set, the only recognized newline character is '\r'.
- * @G_REGEX_NEWLINE_LF: Usually any newline character is recognized, if this option is set, the only recognized newline character is '\n'.
- * @G_REGEX_NEWLINE_CRLF: Usually any newline character is recognized, if this option is set, the only recognized newline character sequence is '\r\n'.
- *
- * Flags specifying compile-time options.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexError:
- * @G_REGEX_ERROR_COMPILE: Compilation of the regular expression failed.
- * @G_REGEX_ERROR_OPTIMIZE: Optimization of the regular expression failed.
- * @G_REGEX_ERROR_REPLACE: Replacement failed due to an ill-formed replacement string.
- * @G_REGEX_ERROR_MATCH: The match process failed.
- * @G_REGEX_ERROR_INTERNAL: Internal error of the regular expression engine. Since 2.16
- * @G_REGEX_ERROR_STRAY_BACKSLASH: "\\" at end of pattern. Since 2.16
- * @G_REGEX_ERROR_MISSING_CONTROL_CHAR: "\\c" at end of pattern. Since 2.16
- * @G_REGEX_ERROR_UNRECOGNIZED_ESCAPE: Unrecognized character follows "\\". Since 2.16
- * @G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER: Numbers out of order in "{}" quantifier. Since 2.16
- * @G_REGEX_ERROR_QUANTIFIER_TOO_BIG: Number too big in "{}" quantifier. Since 2.16
- * @G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS: Missing terminating "]" for character class. Since 2.16
- * @G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS: Invalid escape sequence in character class. Since 2.16
- * @G_REGEX_ERROR_RANGE_OUT_OF_ORDER: Range out of order in character class. Since 2.16
- * @G_REGEX_ERROR_NOTHING_TO_REPEAT: Nothing to repeat. Since 2.16
- * @G_REGEX_ERROR_UNRECOGNIZED_CHARACTER: Unrecognized character after "(?", "(?&lt;" or "(?P". Since 2.16
- * @G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS: POSIX named classes are supported only within a class. Since 2.16
- * @G_REGEX_ERROR_UNMATCHED_PARENTHESIS: Missing terminating ")" or ")" without opening "(". Since 2.16
- * @G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE: Reference to non-existent subpattern. Since 2.16
- * @G_REGEX_ERROR_UNTERMINATED_COMMENT: Missing terminating ")" after comment. Since 2.16
- * @G_REGEX_ERROR_EXPRESSION_TOO_LARGE: Regular expression too large. Since 2.16
- * @G_REGEX_ERROR_MEMORY_ERROR: Failed to get memory. Since 2.16
- * @G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND: Lookbehind assertion is not fixed length. Since 2.16
- * @G_REGEX_ERROR_MALFORMED_CONDITION: Malformed number or name after "(?(". Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES: Conditional group contains more than two branches. Since 2.16
- * @G_REGEX_ERROR_ASSERTION_EXPECTED: Assertion expected after "(?(". Since 2.16
- * @G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME: Unknown POSIX class name. Since 2.16
- * @G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED: POSIX collating elements are not supported. Since 2.16
- * @G_REGEX_ERROR_HEX_CODE_TOO_LARGE: Character value in "\\x{...}" sequence is too large. Since 2.16
- * @G_REGEX_ERROR_INVALID_CONDITION: Invalid condition "(?(0)". Since 2.16
- * @G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND: \\C not allowed in lookbehind assertion. Since 2.16
- * @G_REGEX_ERROR_INFINITE_LOOP: Recursive call could loop indefinitely. Since 2.16
- * @G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR: Missing terminator in subpattern name. Since 2.16
- * @G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME: Two named subpatterns have the same name. Since 2.16
- * @G_REGEX_ERROR_MALFORMED_PROPERTY: Malformed "\\P" or "\\p" sequence. Since 2.16
- * @G_REGEX_ERROR_UNKNOWN_PROPERTY: Unknown property name after "\\P" or "\\p". Since 2.16
- * @G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG: Subpattern name is too long (maximum 32 characters). Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_SUBPATTERNS: Too many named subpatterns (maximum 10,000). Since 2.16
- * @G_REGEX_ERROR_INVALID_OCTAL_VALUE: Octal value is greater than "\\377". Since 2.16
- * @G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE: "DEFINE" group contains more than one branch. Since 2.16
- * @G_REGEX_ERROR_DEFINE_REPETION: Repeating a "DEFINE" group is not allowed. Since 2.16
- * @G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS: Inconsistent newline options. Since 2.16
- * @G_REGEX_ERROR_MISSING_BACK_REFERENCE: "\\g" is not followed by a braced name or an optionally braced non-zero number. Since 2.16
- *
- * Error codes returned by regular expressions functions.
- *
- * Since: 2.14
- */
-
-
-/**
- * GRegexEvalCallback:
- * @match_info: the #GMatchInfo generated by the match. Use g_match_info_get_regex() and g_match_info_get_string() if you need the #GRegex or the matched string.
- * @result: a #GString containing the new string
- * @user_data: user data passed to g_regex_replace_eval()
- *
- * Specifies the type of the function passed to g_regex_replace_eval().
- * It is called for each occurrence of the pattern in the string passed
- * to g_regex_replace_eval(), and it should append the replacement to
- * @result.
- *
- * Returns: %FALSE to continue the replacement process, %TRUE to stop it
- * Since: 2.14
- */
-
-
-/**
- * GRegexMatchFlags:
- * @G_REGEX_MATCH_ANCHORED: The pattern is forced to be "anchored", that is, it is constrained to match only at the first matching point in the string that is being searched. This effect can also be achieved by appropriate constructs in the pattern itself such as the "^" metacharater.
- * @G_REGEX_MATCH_NOTBOL: Specifies that first character of the string is not the beginning of a line, so the circumflex metacharacter should not match before it. Setting this without #G_REGEX_MULTILINE (at compile time) causes circumflex never to match. This option affects only the behaviour of the circumflex metacharacter, it does not affect "\A".
- * @G_REGEX_MATCH_NOTEOL: Specifies that the end of the subject string is not the end of a line, so the dollar metacharacter should not match it nor (except in multiline mode) a newline immediately before it. Setting this without #G_REGEX_MULTILINE (at compile time) causes dollar never to match. This option affects only the behaviour of the dollar metacharacter, it does not affect "\Z" or "\z".
- * @G_REGEX_MATCH_NOTEMPTY: An empty string is not considered to be a valid match if this option is set. If there are alternatives in the pattern, they are tried. If all the alternatives match the empty string, the entire match fails. For example, if the pattern "a?b?" is applied to a string not beginning with "a" or "b", it matches the empty string at the start of the string. With this flag set, this match is not valid, so GRegex searches further into the string for occurrences of "a" or "b".
- * @G_REGEX_MATCH_PARTIAL: Turns on the partial matching feature, for more documentation on partial matching see g_match_info_is_partial_match().
- * @G_REGEX_MATCH_NEWLINE_CR: Overrides the newline definition set when creating a new #GRegex, setting the '\r' character as line terminator.
- * @G_REGEX_MATCH_NEWLINE_LF: Overrides the newline definition set when creating a new #GRegex, setting the '\n' character as line terminator.
- * @G_REGEX_MATCH_NEWLINE_CRLF: Overrides the newline definition set when creating a new #GRegex, setting the '\r\n' characters as line terminator.
- * @G_REGEX_MATCH_NEWLINE_ANY: Overrides the newline definition set when creating a new #GRegex, any newline character or character sequence is recognized.
- *
- * Flags specifying match-time options.
- *
- * Since: 2.14
- */
-
-
-/**
- * GSignalAccumulator:
- * @ihint: Signal invocation hint, see #GSignalInvocationHint.
- * @return_accu: Accumulator to collect callback return values in, this is the return value of the current signal emission.
- * @handler_return: A #GValue holding the return value of the signal handler.
- * @data: Callback data that was specified when creating the signal.
- *
- * The signal accumulator is a special callback function that can be used
- * to collect return values of the various callbacks that are called
- * during a signal emission. The signal accumulator is specified at signal
- * creation time, if it is left %NULL, no accumulation of callback return
- * values is performed. The return value of signal emissions is then the
- * value returned by the last callback.
- *
- * Returns: The accumulator function returns whether the signal emission should be aborted. Returning %FALSE means to abort the current emission and %TRUE is returned for continuation.
- */
-
-
-/**
- * GSignalCMarshaller:
- *
- * This is the signature of marshaller functions, required to marshall
- * arrays of parameter values to signal emissions into C language callback
- * invocations. It is merely an alias to #GClosureMarshal since the #GClosure
- * mechanism takes over responsibility of actual function invocation for the
- * signal system.
- */
-
-
-/**
- * GSignalCVaMarshaller:
- *
- * This is the signature of va_list marshaller functions, an optional
- * marshaller that can be used in some situations to avoid
- * marshalling the signal argument into GValues.
- */
-
-
-/**
- * GSignalEmissionHook:
- * @ihint: Signal invocation hint, see #GSignalInvocationHint.
- * @n_param_values: the number of parameters to the function, including the instance on which the signal was emitted.
- * @param_values: (array length=n_param_values): the instance on which the signal was emitted, followed by the parameters of the emission.
- * @data: user data associated with the hook.
- *
- * A simple function pointer to get invoked when the signal is emitted. This
- * allows you to tie a hook to the signal type, so that it will trap all
- * emissions of that signal, from any object.
- *
- * You may not attach these to signals created with the #G_SIGNAL_NO_HOOKS flag.
- *
- * Returns: whether it wants to stay connected. If it returns %FALSE, the signal hook is disconnected (and destroyed).
- */
-
-
-/**
- * GSignalFlags:
- * @G_SIGNAL_RUN_FIRST: Invoke the object method handler in the first emission stage.
- * @G_SIGNAL_RUN_LAST: Invoke the object method handler in the third emission stage.
- * @G_SIGNAL_RUN_CLEANUP: Invoke the object method handler in the last emission stage.
- * @G_SIGNAL_NO_RECURSE: Signals being emitted for an object while currently being in emission for this very object will not be emitted recursively, but instead cause the first emission to be restarted.
- * @G_SIGNAL_DETAILED: This signal supports "::detail" appendices to the signal name upon handler connections and emissions.
- * @G_SIGNAL_ACTION: Action signals are signals that may freely be emitted on alive objects from user code via g_signal_emit() and friends, without the need of being embedded into extra code that performs pre or post emission adjustments on the object. They can also be thought of as object methods which can be called generically by third-party code.
- * @G_SIGNAL_NO_HOOKS: No emissions hooks are supported for this signal.
- * @G_SIGNAL_MUST_COLLECT: Varargs signal emission will always collect the arguments, even if there are no signal handlers connected.  Since 2.30.
- * @G_SIGNAL_DEPRECATED: The signal is deprecated and will be removed in a future version. A warning will be generated if it is connected while running with G_ENABLE_DIAGNOSTIC=1.  Since 2.32.
- *
- * The signal flags are used to specify a signal's behaviour, the overall
- * signal description outlines how especially the RUN flags control the
- * stages of a signal emission.
- */
-
-
-/**
- * GSignalInvocationHint:
- * @signal_id: The signal id of the signal invoking the callback
- * @detail: The detail passed on for this emission
- * @run_type: The stage the signal emission is currently in, this field will contain one of %G_SIGNAL_RUN_FIRST, %G_SIGNAL_RUN_LAST or %G_SIGNAL_RUN_CLEANUP.
- *
- * The #GSignalInvocationHint structure is used to pass on additional information
- * to callbacks during a signal emission.
- */
-
-
-/**
- * GSignalMatchType:
- * @G_SIGNAL_MATCH_ID: The signal id must be equal.
- * @G_SIGNAL_MATCH_DETAIL: The signal detail be equal.
- * @G_SIGNAL_MATCH_CLOSURE: The closure must be the same.
- * @G_SIGNAL_MATCH_FUNC: The C closure callback must be the same.
- * @G_SIGNAL_MATCH_DATA: The closure data must be the same.
- * @G_SIGNAL_MATCH_UNBLOCKED: Only unblocked signals may matched.
- *
- * The match types specify what g_signal_handlers_block_matched(),
- * g_signal_handlers_unblock_matched() and g_signal_handlers_disconnect_matched()
- * match signals by.
- */
-
-
-/**
- * GSignalQuery:
- * @signal_id: The signal id of the signal being queried, or 0 if the signal to be queried was unknown.
- * @signal_name: The signal name.
- * @itype: The interface/instance type that this signal can be emitted for.
- * @signal_flags: The signal flags as passed in to g_signal_new().
- * @return_type: The return type for user callbacks.
- * @n_params: The number of parameters that user callbacks take.
- * @param_types: The individual parameter types for user callbacks, note that the effective callback signature is: <programlisting> @return_type callback (#gpointer     data1, [param_types param_names,] gpointer     data2); </programlisting>
- *
- * A structure holding in-depth information for a specific signal. It is
- * filled in by the g_signal_query() function.
- */
-
-
-/**
- * GSource:
- *
- * The <structname>GSource</structname> struct is an opaque data type
- * representing an event source.
- */
-
-
-/**
- * GSourceCallbackFuncs:
- * @ref: Called when a reference is added to the callback object
- * @unref: Called when a reference to the callback object is dropped
- * @get: Called to extract the callback function and data from the callback object.
- *
- * The <structname>GSourceCallbackFuncs</structname> struct contains
- * functions for managing callback objects.
- */
-
-
-/**
- * GSourceDummyMarshal:
- *
- * This is just a placeholder for #GClosureMarshal,
- * which cannot be used here for dependency reasons.
- */
-
-
-/**
- * GSourceFunc:
- * @user_data: data passed to the function, set when the source was created with one of the above functions
- *
- * Specifies the type of function passed to g_timeout_add(),
- * g_timeout_add_full(), g_idle_add(), and g_idle_add_full().
- *
- * Returns: %FALSE if the source should be removed
- */
-
-
-/**
- * GSourceFuncs:
- * @prepare: Called before all the file descriptors are polled. If the source can determine that it is ready here (without waiting for the results of the poll() call) it should return %TRUE. It can also return a @timeout_ value which should be the maximum timeout (in milliseconds) which should be passed to the poll() call. The actual timeout used will be -1 if all sources returned -1, or it will be the minimum of all the @timeout_ values returned which were >= 0.
- * @check: Called after all the file descriptors are polled. The source should return %TRUE if it is ready to be dispatched. Note that some time may have passed since the previous prepare function was called, so the source should be checked again here.
- * @dispatch: Called to dispatch the event source, after it has returned %TRUE in either its @prepare or its @check function. The @dispatch function is passed in a callback function and data. The callback function may be %NULL if the source was never connected to a callback using g_source_set_callback(). The @dispatch function should call the callback function with @user_data and whatever additional parameters are needed for this type of event source.
- * @finalize: Called when the source is finalized.
- *
- * The <structname>GSourceFuncs</structname> struct contains a table of
- * functions used to handle event sources in a generic manner.
- *
- * For idle sources, the prepare and check functions always return %TRUE
- * to indicate that the source is always ready to be processed. The prepare
- * function also returns a timeout value of 0 to ensure that the poll() call
- * doesn't block (since that would be time wasted which could have been spent
- * running the idle function).
- *
- * For timeout sources, the prepare and check functions both return %TRUE
- * if the timeout interval has expired. The prepare function also returns
- * a timeout value to ensure that the poll() call doesn't block too long
- * and miss the next timeout.
- *
- * For file descriptor sources, the prepare function typically returns %FALSE,
- * since it must wait until poll() has been called before it knows whether
- * any events need to be processed. It sets the returned timeout to -1 to
- * indicate that it doesn't mind how long the poll() call blocks. In the
- * check function, it tests the results of the poll() call to see if the
- * required condition has been met, and returns %TRUE if so.
- */
-
-
-/**
- * GSpawnChildSetupFunc:
- * @user_data: user data to pass to the function.
- *
- * Specifies the type of the setup function passed to g_spawn_async(),
- * g_spawn_sync() and g_spawn_async_with_pipes(), which can, in very
- * limited ways, be used to affect the child's execution.
- *
- * On POSIX platforms, the function is called in the child after GLib
- * has performed all the setup it plans to perform, but before calling
- * exec(). Actions taken in this function will only affect the child,
- * not the parent.
- *
- * On Windows, the function is called in the parent. Its usefulness on
- * Windows is thus questionable. In many cases executing the child setup
- * function in the parent can have ill effects, and you should be very
- * careful when porting software to Windows that uses child setup
- * functions.
- *
- * However, even on POSIX, you are extremely limited in what you can
- * safely do from a #GSpawnChildSetupFunc, because any mutexes that
- * were held by other threads in the parent process at the time of the
- * fork() will still be locked in the child process, and they will
- * never be unlocked (since the threads that held them don't exist in
- * the child). POSIX allows only async-signal-safe functions (see
- * <citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>)
- * to be called in the child between fork() and exec(), which
- * drastically limits the usefulness of child setup functions.
- *
- * In particular, it is not safe to call any function which may
- * call malloc(), which includes POSIX functions such as setenv().
- * If you need to set up the child environment differently from
- * the parent, you should use g_get_environ(), g_environ_setenv(),
- * and g_environ_unsetenv(), and then pass the complete environment
- * list to the <literal>g_spawn...</literal> function.
- */
-
-
-/**
- * GSpawnError:
- * @G_SPAWN_ERROR_FORK: Fork failed due to lack of memory.
- * @G_SPAWN_ERROR_READ: Read or select on pipes failed.
- * @G_SPAWN_ERROR_CHDIR: Changing to working directory failed.
- * @G_SPAWN_ERROR_ACCES: execv() returned <literal>EACCES</literal>
- * @G_SPAWN_ERROR_PERM: execv() returned <literal>EPERM</literal>
- * @G_SPAWN_ERROR_TOO_BIG: execv() returned <literal>E2BIG</literal>
- * @G_SPAWN_ERROR_2BIG: deprecated alias for %G_SPAWN_ERROR_TOO_BIG
- * @G_SPAWN_ERROR_NOEXEC: execv() returned <literal>ENOEXEC</literal>
- * @G_SPAWN_ERROR_NAMETOOLONG: execv() returned <literal>ENAMETOOLONG</literal>
- * @G_SPAWN_ERROR_NOENT: execv() returned <literal>ENOENT</literal>
- * @G_SPAWN_ERROR_NOMEM: execv() returned <literal>ENOMEM</literal>
- * @G_SPAWN_ERROR_NOTDIR: execv() returned <literal>ENOTDIR</literal>
- * @G_SPAWN_ERROR_LOOP: execv() returned <literal>ELOOP</literal>
- * @G_SPAWN_ERROR_TXTBUSY: execv() returned <literal>ETXTBUSY</literal>
- * @G_SPAWN_ERROR_IO: execv() returned <literal>EIO</literal>
- * @G_SPAWN_ERROR_NFILE: execv() returned <literal>ENFILE</literal>
- * @G_SPAWN_ERROR_MFILE: execv() returned <literal>EMFILE</literal>
- * @G_SPAWN_ERROR_INVAL: execv() returned <literal>EINVAL</literal>
- * @G_SPAWN_ERROR_ISDIR: execv() returned <literal>EISDIR</literal>
- * @G_SPAWN_ERROR_LIBBAD: execv() returned <literal>ELIBBAD</literal>
- * @G_SPAWN_ERROR_FAILED: Some other fatal failure, <literal>error-&gt;message</literal> should explain.
- *
- * Error codes returned by spawning processes.
- */
-
-
-/**
- * GSpawnFlags:
- * @G_SPAWN_LEAVE_DESCRIPTORS_OPEN: 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_DO_NOT_REAP_CHILD: the child will not be automatically reaped; you must use g_child_watch_add() yourself (or call waitpid() or handle <literal>SIGCHLD</literal> yourself), or the child will become a zombie.
- * @G_SPAWN_SEARCH_PATH: <literal>argv[0]</literal> need not be an absolute path, it will be looked for in the user's <envar>PATH</envar>.
- * @G_SPAWN_STDOUT_TO_DEV_NULL: the child's standard output will be discarded, instead of going to the same location as the parent's standard output.
- * @G_SPAWN_STDERR_TO_DEV_NULL: the child's standard error will be discarded.
- * @G_SPAWN_CHILD_INHERITS_STDIN: the child will inherit the parent's standard input (by default, the child's standard input is attached to <filename>/dev/null</filename>).
- * @G_SPAWN_FILE_AND_ARGV_ZERO: the first element of <literal>argv</literal> 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 <literal>argv[0]</literal> as the file to execute, and passes all of <literal>argv</literal> to the child.
- *
- * Flags passed to g_spawn_sync(), g_spawn_async() and g_spawn_async_with_pipes().
- */
-
-
-/**
- * GStrv:
- *
- * A C representable type name for #G_TYPE_STRV.
- */
-
-
-/**
- * GTestLogFatalFunc:
- * @log_domain: the log domain of the message
- * @log_level: the log level of the message (including the fatal and recursion flags)
- * @message: the message to process
- * @user_data: user data, set in g_test_log_set_fatal_handler()
- *
- * Specifies the prototype of fatal log handler functions.
- *
- * Returns: %TRUE if the program should abort, %FALSE otherwise
- * Since: 2.22
- */
-
-
-/**
- * GTimeSpan:
- *
- * A value representing an interval of time, in microseconds.
- *
- * Since: 2.26
- */
-
-
-/**
- * GTimeType:
- * @G_TIME_TYPE_STANDARD: the time is in local standard time
- * @G_TIME_TYPE_DAYLIGHT: the time is in local daylight time
- * @G_TIME_TYPE_UNIVERSAL: the time is in UTC
- *
- * Disambiguates a given time in two ways.
- *
- * First, specifies if the given time is in universal or local time.
- *
- * Second, if the time is in local time, specifies if it is local
- * standard time or local daylight time.  This is important for the case
- * where the same local time occurs twice (during daylight savings time
- * transitions, for example).
- */
-
-
-/**
- * GToggleNotify:
- * @data: Callback data passed to g_object_add_toggle_ref()
- * @object: The object on which g_object_add_toggle_ref() was called.
- * @is_last_ref: %TRUE if the toggle reference is now the last reference to the object. %FALSE if the toggle reference was the last reference and there are now other references.
- *
- * A callback function used for notification when the state
- * of a toggle reference changes. See g_object_add_toggle_ref().
- */
-
-
-/**
- * GTranslateFunc:
- * @str: the untranslated string
- * @data: user data specified when installing the function, e.g. in g_option_group_set_translate_func()
- *
- * The type of functions which are used to translate user-visible
- * strings, for <option>--help</option> output.
- *
- * Returns: a translation of the string for the current locale. The returned string is owned by GLib and must not be freed.
- */
-
-
-/**
- * GType:
- *
- * A numerical value which represents the unique identifier of a registered
- * type.
- */
-
-
-/**
- * GTypeCValue:
- * @v_int: the field for holding integer values
- * @v_long: the field for holding long integer values
- * @v_int64: the field for holding 64 bit integer values
- * @v_double: the field for holding floating point values
- * @v_pointer: the field for holding pointers
- *
- * A union holding one collected value.
- */
-
-
-/**
- * GTypeClass:
- *
- * An opaque structure used as the base of all classes.
- */
-
-
-/**
- * GTypeClassCacheFunc:
- * @cache_data: data that was given to the g_type_add_class_cache_func() call
- * @g_class: The #GTypeClass structure which is unreferenced
- *
- * A callback function which is called when the reference count of a class
- * drops to zero. It may use g_type_class_ref() to prevent the class from
- * being freed. You should not call g_type_class_unref() from a
- * #GTypeClassCacheFunc function to prevent infinite recursion, use
- * g_type_class_unref_uncached() instead.
- *
- * 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.
- *
- * Returns: %TRUE to stop further #GTypeClassCacheFunc<!-- -->s from being called, %FALSE to continue.
- */
-
-
-/**
- * GTypeDebugFlags:
- * @G_TYPE_DEBUG_NONE: Print no messages.
- * @G_TYPE_DEBUG_OBJECTS: Print messages about object bookkeeping.
- * @G_TYPE_DEBUG_SIGNALS: Print messages about signal emissions.
- * @G_TYPE_DEBUG_MASK: Mask covering all debug flags.
- *
- * The <type>GTypeDebugFlags</type> enumeration values can be passed to
- * g_type_init_with_debug_flags() to trigger debugging messages during runtime.
- * Note that the messages can also be triggered by setting the
- * <envar>GOBJECT_DEBUG</envar> environment variable to a ':'-separated list of
- * "objects" and "signals".
- */
-
-
-/**
- * GTypeFlags:
- * @G_TYPE_FLAG_ABSTRACT: Indicates an abstract type. No instances can be created for an abstract type.
- * @G_TYPE_FLAG_VALUE_ABSTRACT: Indicates an abstract value type, i.e. a type that introduces a value table, but can't be used for g_value_init().
- *
- * Bit masks used to check or determine characteristics of a type.
- */
-
-
-/**
- * GTypeFundamentalFlags:
- * @G_TYPE_FLAG_CLASSED: Indicates a classed type.
- * @G_TYPE_FLAG_INSTANTIATABLE: Indicates an instantiable type (implies classed).
- * @G_TYPE_FLAG_DERIVABLE: Indicates a flat derivable type.
- * @G_TYPE_FLAG_DEEP_DERIVABLE: Indicates a deep derivable type (implies derivable).
- *
- * Bit masks used to check or determine specific characteristics of a
- * fundamental type.
- */
-
-
-/**
- * GTypeFundamentalInfo:
- * @type_flags: #GTypeFundamentalFlags describing the characteristics of the fundamental type
- *
- * A structure that provides information to the type system which is
- * used specifically for managing fundamental types.
- */
-
-
-/**
- * GTypeInfo:
- * @class_size: Size of the class structure (required for interface, classed and instantiatable types).
- * @base_init: Location of the base initialization function (optional).
- * @base_finalize: Location of the base finalization function (optional).
- * @class_init: Location of the class initialization function for classed and instantiatable types. Location of the default vtable inititalization function for interface types. (optional) This function is used both to fill in virtual functions in the class or default vtable, and to do type-specific setup such as registering signals and object properties.
- * @class_finalize: Location of the class finalization function for classed and instantiatable types. Location fo the default vtable finalization function for interface types. (optional)
- * @class_data: User-supplied data passed to the class init/finalize functions.
- * @instance_size: Size of the instance (object) structure (required for instantiatable types only).
- * @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
- * @instance_init: Location of the instance initialization function (optional, for instantiatable types only).
- * @value_table: A #GTypeValueTable function table for generic handling of GValues of this type (usually only useful for fundamental types).
- *
- * This structure is used to provide the type system with the information
- * required to initialize and destruct (finalize) a type's class and
- * its instances.
- * The initialized structure is passed to the g_type_register_static() function
- * (or is copied into the provided #GTypeInfo structure in the
- * g_type_plugin_complete_type_info()). The type system will perform a deep
- * copy of this structure, so its memory does not need to be persistent
- * across invocation of g_type_register_static().
- */
-
-
-/**
- * GTypeInstance:
- *
- * An opaque structure used as the base of all type instances.
- */
-
-
-/**
- * GTypeInterface:
- *
- * An opaque structure used as the base of all interface types.
- */
-
-
-/**
- * GTypeInterfaceCheckFunc:
- * @check_data: data passed to g_type_add_interface_check().
- * @g_iface: the interface that has been initialized
- *
- * A callback called after an interface vtable is initialized.
- * See g_type_add_interface_check().
- *
- * Since: 2.4
- */
-
-
-/**
- * GTypeModule:
- * @name: the name of the module
- *
- * The members of the <structname>GTypeModule</structname> structure should not
- * be accessed directly, except for the @name field.
- */
-
-
-/**
- * GTypeModuleClass:
- * @parent_class: the parent class
- * @load: loads the module and registers one or more types using g_type_module_register_type().
- * @unload: unloads the module
- *
- * In order to implement dynamic loading of types based on #GTypeModule,
- * the @load and @unload functions in #GTypeModuleClass must be implemented.
- */
-
-
-/**
- * GTypePlugin:
- *
- * The <structname>GTypePlugin</structname> typedef is used as a placeholder
- * for objects that implement the <structname>GTypePlugin</structname>
- * interface.
- */
-
-
-/**
- * GTypePluginClass:
- * @use_plugin: Increases the use count of the plugin.
- * @unuse_plugin: Decreases the use count of the plugin.
- * @complete_type_info: Fills in the #GTypeInfo and #GTypeValueTable structs for the type. The structs are initialized with <literal>memset(s, 0, sizeof (s))</literal> before calling this function.
- * @complete_interface_info: Fills in missing parts of the #GInterfaceInfo for the interface. The structs is initialized with <literal>memset(s, 0, sizeof (s))</literal> before calling this function.
- *
- * The #GTypePlugin interface is used by the type system in order to handle
- * the lifecycle of dynamically loaded types.
- */
-
-
-/**
- * GTypePluginCompleteInterfaceInfo:
- * @plugin: the #GTypePlugin
- * @instance_type: the #GType of an instantiable type to which the interface is added
- * @interface_type: the #GType of the interface whose info is completed
- * @info: the #GInterfaceInfo to fill in
- *
- * The type of the @complete_interface_info function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginCompleteTypeInfo:
- * @plugin: the #GTypePlugin
- * @g_type: the #GType whose info is completed
- * @info: the #GTypeInfo struct to fill in
- * @value_table: the #GTypeValueTable to fill in
- *
- * The type of the @complete_type_info function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginUnuse:
- * @plugin: the #GTypePlugin whose use count should be decreased
- *
- * The type of the @unuse_plugin function of #GTypePluginClass.
- */
-
-
-/**
- * GTypePluginUse:
- * @plugin: the #GTypePlugin whose use count should be increased
- *
- * The type of the @use_plugin function of #GTypePluginClass, which gets called
- * to increase the use count of @plugin.
- */
-
-
-/**
- * GTypeQuery:
- * @type: the #GType value of the type.
- * @type_name: the name of the type.
- * @class_size: the size of the class structure.
- * @instance_size: the size of the instance structure.
- *
- * A structure holding information for a specific type. It is
- * filled in by the g_type_query() function.
- */
-
-
-/**
- * GTypeValueTable:
- * @value_init: Default initialize @values contents by poking values directly into the value->data array. The data array of the #GValue passed into this function was zero-filled with <function>memset()</function>, so no care has to be taken to free any old contents. E.g. for the implementation of a string value that may never be %NULL, the implementation might look like: |[ value->data[0].v_pointer = g_strdup (""); ]|
- * @value_free: Free any old contents that might be left in the data array of the passed in @value. No resources may remain allocated through the #GValue contents after this function returns. E.g. for our above string type: |[ // only free strings without a specific flag for static storage if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS)) g_free (value->data[0].v_pointer); ]|
- * @value_copy: @dest_value is a #GValue with zero-filled data section and @src_value is a properly setup #GValue of same or derived type. The purpose of this function is to copy the contents of @src_value into @dest_value in a way, that even after @src_value has been freed, the contents of @dest_value remain valid. String type example: |[ dest_value->data[0].v_pointer = g_strdup (src_value->data[0].v_pointer); ]|
- * @value_peek_pointer: If the value contents fit into a pointer, such as objects or strings, return this pointer, so the caller can peek at the current contents. To extend on our above string example: |[ return value->data[0].v_pointer; ]|
- * @collect_format: A string format describing how to collect the contents of this value bit-by-bit. Each character in the format represents an argument to be collected, and the characters themselves indicate the type of the argument. Currently supported arguments are: <variablelist> <varlistentry><term /><listitem><para> 'i' - Integers. passed as collect_values[].v_int. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'l' - Longs. passed as collect_values[].v_long. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'd' - Doubles. passed as collect_values[].v_double. </para></listitem></varlistentry> <varlistentry><term /><listitem><para> 'p' - Pointers. passed as collect_values[].v_pointer. </para></listitem></varlistentry> </variablelist> It should be noted that for variable argument list construction, ANSI C promotes every type smaller than an integer to an int, and floats to doubles. So for collection of short int or char, 'i
 ' needs to be used, and for collection of floats 'd'.
- * @collect_value: The collect_value() function is responsible for converting the values collected from a variable argument list into contents suitable for storage in a GValue. This function should setup @value similar to value_init(); e.g. for a string value that does not allow %NULL pointers, it needs to either spew an error, or do an implicit conversion by storing an empty string. The @value passed in to this function has a zero-filled data array, so just like for value_init() it is guaranteed to not contain any old contents that might need freeing. @n_collect_values is exactly the string length of @collect_format, and @collect_values is an array of unions #GTypeCValue with length @n_collect_values, containing the collected values according to @collect_format. @collect_flags is an argument provided as a hint by the caller. It may contain the flag %G_VALUE_NOCOPY_CONTENTS indicating, that the collected value contents may be considered "static" for the duration of the @valu
 e lifetime. Thus an extra copy of the contents stored in @collect_values is not required for assignment to @value. For our above string example, we continue with: |[ if (!collect_values[0].v_pointer) value->data[0].v_pointer = g_strdup (""); else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { value->data[0].v_pointer = collect_values[0].v_pointer; // keep a flag for the value_free() implementation to not free this string value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; } else value->data[0].v_pointer = g_strdup (collect_values[0].v_pointer); return NULL; ]| It should be noted, that it is generally a bad idea to follow the #G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to reentrancy requirements and reference count assertions performed by the signal emission code, reference counts should always be incremented for reference counted contents stored in the value->data array.  To deviate from our string example for a moment, and taking a look at an exemplary imple
 mentation for collect_value() of #GObject: |[ if (collect_values[0].v_pointer) { GObject *object = G_OBJECT (collect_values[0].v_pointer); // never honour G_VALUE_NOCOPY_CONTENTS for ref-counted types value->data[0].v_pointer = g_object_ref (object); return NULL; } else return g_strdup_printf ("Object passed as invalid NULL pointer"); } ]| The reference count for valid objects is always incremented, regardless of @collect_flags. For invalid objects, the example returns a newly allocated string without altering @value. Upon success, collect_value() needs to return %NULL. If, however, an error condition occurred, collect_value() may spew an error by returning a newly allocated non-%NULL string, giving a suitable description of the error condition. The calling code makes no assumptions about the @value contents being valid upon error returns, @value is simply thrown away without further freeing. As such, it is a good idea to not allocate #GValue contents, prior to returning an 
 error, however, collect_values() is not obliged to return a correctly setup @value for error returns, simply because any non-%NULL return is considered a fatal condition so further program behaviour is undefined.
- * @lcopy_format: Format description of the arguments to collect for @lcopy_value, analogous to @collect_format. Usually, @lcopy_format string consists only of 'p's to provide lcopy_value() with pointers to storage locations.
- * @lcopy_value: This function is responsible for storing the @value contents into arguments passed through a variable argument list which got collected into @collect_values according to @lcopy_format. @n_collect_values equals the string length of @lcopy_format, and @collect_flags may contain %G_VALUE_NOCOPY_CONTENTS. In contrast to collect_value(), lcopy_value() is obliged to always properly support %G_VALUE_NOCOPY_CONTENTS. Similar to collect_value() the function may prematurely abort by returning a newly allocated string describing an error condition. To complete the string example: |[ gchar **string_p = collect_values[0].v_pointer; if (!string_p) return g_strdup_printf ("string location passed as NULL"); if (collect_flags & G_VALUE_NOCOPY_CONTENTS) *string_p = value->data[0].v_pointer; else *string_p = g_strdup (value->data[0].v_pointer); ]| And an illustrative version of lcopy_value() for reference-counted types: |[ GObject **object_p = collect_values[0].v_pointer; if (
 !object_p) return g_strdup_printf ("object location passed as NULL"); if (!value->data[0].v_pointer) *object_p = NULL; else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) /&ast; always honour &ast;/ *object_p = value->data[0].v_pointer; else *object_p = g_object_ref (value->data[0].v_pointer); return NULL; ]|
- *
- * The #GTypeValueTable provides the functions required by the #GValue implementation,
- * to serve as a container for values of a type.
- */
-
-
-/**
- * GUnicodeBreakType:
- * @G_UNICODE_BREAK_MANDATORY: Mandatory Break (BK)
- * @G_UNICODE_BREAK_CARRIAGE_RETURN: Carriage Return (CR)
- * @G_UNICODE_BREAK_LINE_FEED: Line Feed (LF)
- * @G_UNICODE_BREAK_COMBINING_MARK: Attached Characters and Combining Marks (CM)
- * @G_UNICODE_BREAK_SURROGATE: Surrogates (SG)
- * @G_UNICODE_BREAK_ZERO_WIDTH_SPACE: Zero Width Space (ZW)
- * @G_UNICODE_BREAK_INSEPARABLE: Inseparable (IN)
- * @G_UNICODE_BREAK_NON_BREAKING_GLUE: Non-breaking ("Glue") (GL)
- * @G_UNICODE_BREAK_CONTINGENT: Contingent Break Opportunity (CB)
- * @G_UNICODE_BREAK_SPACE: Space (SP)
- * @G_UNICODE_BREAK_AFTER: Break Opportunity After (BA)
- * @G_UNICODE_BREAK_BEFORE: Break Opportunity Before (BB)
- * @G_UNICODE_BREAK_BEFORE_AND_AFTER: Break Opportunity Before and After (B2)
- * @G_UNICODE_BREAK_HYPHEN: Hyphen (HY)
- * @G_UNICODE_BREAK_NON_STARTER: Nonstarter (NS)
- * @G_UNICODE_BREAK_OPEN_PUNCTUATION: Opening Punctuation (OP)
- * @G_UNICODE_BREAK_CLOSE_PUNCTUATION: Closing Punctuation (CL)
- * @G_UNICODE_BREAK_QUOTATION: Ambiguous Quotation (QU)
- * @G_UNICODE_BREAK_EXCLAMATION: Exclamation/Interrogation (EX)
- * @G_UNICODE_BREAK_IDEOGRAPHIC: Ideographic (ID)
- * @G_UNICODE_BREAK_NUMERIC: Numeric (NU)
- * @G_UNICODE_BREAK_INFIX_SEPARATOR: Infix Separator (Numeric) (IS)
- * @G_UNICODE_BREAK_SYMBOL: Symbols Allowing Break After (SY)
- * @G_UNICODE_BREAK_ALPHABETIC: Ordinary Alphabetic and Symbol Characters (AL)
- * @G_UNICODE_BREAK_PREFIX: Prefix (Numeric) (PR)
- * @G_UNICODE_BREAK_POSTFIX: Postfix (Numeric) (PO)
- * @G_UNICODE_BREAK_COMPLEX_CONTEXT: Complex Content Dependent (South East Asian) (SA)
- * @G_UNICODE_BREAK_AMBIGUOUS: Ambiguous (Alphabetic or Ideographic) (AI)
- * @G_UNICODE_BREAK_UNKNOWN: Unknown (XX)
- * @G_UNICODE_BREAK_NEXT_LINE: Next Line (NL)
- * @G_UNICODE_BREAK_WORD_JOINER: Word Joiner (WJ)
- * @G_UNICODE_BREAK_HANGUL_L_JAMO: Hangul L Jamo (JL)
- * @G_UNICODE_BREAK_HANGUL_V_JAMO: Hangul V Jamo (JV)
- * @G_UNICODE_BREAK_HANGUL_T_JAMO: Hangul T Jamo (JT)
- * @G_UNICODE_BREAK_HANGUL_LV_SYLLABLE: Hangul LV Syllable (H2)
- * @G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE: Hangul LVT Syllable (H3)
- * @G_UNICODE_BREAK_CLOSE_PARANTHESIS: Closing Parenthesis (CP). Since 2.28
- * @G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER: Conditional Japanese Starter (CJ). Since: 2.32
- * @G_UNICODE_BREAK_HEBREW_LETTER: Hebrew Letter (HL). Since: 2.32
- *
- * These are the possible line break classifications.
- *
- * The five Hangul types were added in Unicode 4.1, so, has been
- * introduced in GLib 2.10. Note that new types may be added in the future.
- * Applications should be ready to handle unknown values.
- * They may be regarded as %G_UNICODE_BREAK_UNKNOWN.
- *
- * See <ulink url="http://www.unicode.org/unicode/reports/tr14/";>http://www.unicode.org/unicode/reports/tr14/</ulink>.
- */
-
-
-/**
- * GUnicodeScript:
- * @G_UNICODE_SCRIPT_INVALID_CODE: a value never returned from g_unichar_get_script()
- * @G_UNICODE_SCRIPT_COMMON: a character used by multiple different scripts
- * @G_UNICODE_SCRIPT_INHERITED: a mark glyph that takes its script from the i                             base glyph to which it is attached
- * @G_UNICODE_SCRIPT_ARABIC: Arabic
- * @G_UNICODE_SCRIPT_ARMENIAN: Armenian
- * @G_UNICODE_SCRIPT_BENGALI: Bengali
- * @G_UNICODE_SCRIPT_BOPOMOFO: Bopomofo
- * @G_UNICODE_SCRIPT_CHEROKEE: Cherokee
- * @G_UNICODE_SCRIPT_COPTIC: Coptic
- * @G_UNICODE_SCRIPT_CYRILLIC: Cyrillic
- * @G_UNICODE_SCRIPT_DESERET: Deseret
- * @G_UNICODE_SCRIPT_DEVANAGARI: Devanagari
- * @G_UNICODE_SCRIPT_ETHIOPIC: Ethiopic
- * @G_UNICODE_SCRIPT_GEORGIAN: Georgian
- * @G_UNICODE_SCRIPT_GOTHIC: Gothic
- * @G_UNICODE_SCRIPT_GREEK: Greek
- * @G_UNICODE_SCRIPT_GUJARATI: Gujarati
- * @G_UNICODE_SCRIPT_GURMUKHI: Gurmukhi
- * @G_UNICODE_SCRIPT_HAN: Han
- * @G_UNICODE_SCRIPT_HANGUL: Hangul
- * @G_UNICODE_SCRIPT_HEBREW: Hebrew
- * @G_UNICODE_SCRIPT_HIRAGANA: Hiragana
- * @G_UNICODE_SCRIPT_KANNADA: Kannada
- * @G_UNICODE_SCRIPT_KATAKANA: Katakana
- * @G_UNICODE_SCRIPT_KHMER: Khmer
- * @G_UNICODE_SCRIPT_LAO: Lao
- * @G_UNICODE_SCRIPT_LATIN: Latin
- * @G_UNICODE_SCRIPT_MALAYALAM: Malayalam
- * @G_UNICODE_SCRIPT_MONGOLIAN: Mongolian
- * @G_UNICODE_SCRIPT_MYANMAR: Myanmar
- * @G_UNICODE_SCRIPT_OGHAM: Ogham
- * @G_UNICODE_SCRIPT_OLD_ITALIC: Old Italic
- * @G_UNICODE_SCRIPT_ORIYA: Oriya
- * @G_UNICODE_SCRIPT_RUNIC: Runic
- * @G_UNICODE_SCRIPT_SINHALA: Sinhala
- * @G_UNICODE_SCRIPT_SYRIAC: Syriac
- * @G_UNICODE_SCRIPT_TAMIL: Tamil
- * @G_UNICODE_SCRIPT_TELUGU: Telugu
- * @G_UNICODE_SCRIPT_THAANA: Thaana
- * @G_UNICODE_SCRIPT_THAI: Thai
- * @G_UNICODE_SCRIPT_TIBETAN: Tibetan
- * @G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL: Canadian Aboriginal
- * @G_UNICODE_SCRIPT_YI: Yi
- * @G_UNICODE_SCRIPT_TAGALOG: Tagalog
- * @G_UNICODE_SCRIPT_HANUNOO: Hanunoo
- * @G_UNICODE_SCRIPT_BUHID: Buhid
- * @G_UNICODE_SCRIPT_TAGBANWA: Tagbanwa
- * @G_UNICODE_SCRIPT_BRAILLE: Braille
- * @G_UNICODE_SCRIPT_CYPRIOT: Cypriot
- * @G_UNICODE_SCRIPT_LIMBU: Limbu
- * @G_UNICODE_SCRIPT_OSMANYA: Osmanya
- * @G_UNICODE_SCRIPT_SHAVIAN: Shavian
- * @G_UNICODE_SCRIPT_LINEAR_B: Linear B
- * @G_UNICODE_SCRIPT_TAI_LE: Tai Le
- * @G_UNICODE_SCRIPT_UGARITIC: Ugaritic
- * @G_UNICODE_SCRIPT_NEW_TAI_LUE: New Tai Lue
- * @G_UNICODE_SCRIPT_BUGINESE: Buginese
- * @G_UNICODE_SCRIPT_GLAGOLITIC: Glagolitic
- * @G_UNICODE_SCRIPT_TIFINAGH: Tifinagh
- * @G_UNICODE_SCRIPT_SYLOTI_NAGRI: Syloti Nagri
- * @G_UNICODE_SCRIPT_OLD_PERSIAN: Old Persian
- * @G_UNICODE_SCRIPT_KHAROSHTHI: Kharoshthi
- * @G_UNICODE_SCRIPT_UNKNOWN: an unassigned code point
- * @G_UNICODE_SCRIPT_BALINESE: Balinese
- * @G_UNICODE_SCRIPT_CUNEIFORM: Cuneiform
- * @G_UNICODE_SCRIPT_PHOENICIAN: Phoenician
- * @G_UNICODE_SCRIPT_PHAGS_PA: Phags-pa
- * @G_UNICODE_SCRIPT_NKO: N'Ko
- * @G_UNICODE_SCRIPT_KAYAH_LI: Kayah Li. Since 2.16.3
- * @G_UNICODE_SCRIPT_LEPCHA: Lepcha. Since 2.16.3
- * @G_UNICODE_SCRIPT_REJANG: Rejang. Since 2.16.3
- * @G_UNICODE_SCRIPT_SUNDANESE: Sundanese. Since 2.16.3
- * @G_UNICODE_SCRIPT_SAURASHTRA: Saurashtra. Since 2.16.3
- * @G_UNICODE_SCRIPT_CHAM: Cham. Since 2.16.3
- * @G_UNICODE_SCRIPT_OL_CHIKI: Ol Chiki. Since 2.16.3
- * @G_UNICODE_SCRIPT_VAI: Vai. Since 2.16.3
- * @G_UNICODE_SCRIPT_CARIAN: Carian. Since 2.16.3
- * @G_UNICODE_SCRIPT_LYCIAN: Lycian. Since 2.16.3
- * @G_UNICODE_SCRIPT_LYDIAN: Lydian. Since 2.16.3
- * @G_UNICODE_SCRIPT_AVESTAN: Avestan. Since 2.26
- * @G_UNICODE_SCRIPT_BAMUM: Bamum. Since 2.26
- * @G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS: Egyptian Hieroglpyhs. Since 2.26
- * @G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC: Imperial Aramaic. Since 2.26
- * @G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI: Inscriptional Pahlavi. Since 2.26
- * @G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN: Inscriptional Parthian. Since 2.26
- * @G_UNICODE_SCRIPT_JAVANESE: Javanese. Since 2.26
- * @G_UNICODE_SCRIPT_KAITHI: Kaithi. Since 2.26
- * @G_UNICODE_SCRIPT_LISU: Lisu. Since 2.26
- * @G_UNICODE_SCRIPT_MEETEI_MAYEK: Meetei Mayek. Since 2.26
- * @G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN: Old South Arabian. Since 2.26
- * @G_UNICODE_SCRIPT_OLD_TURKIC: Old Turkic. Since 2.28
- * @G_UNICODE_SCRIPT_SAMARITAN: Samaritan. Since 2.26
- * @G_UNICODE_SCRIPT_TAI_THAM: Tai Tham. Since 2.26
- * @G_UNICODE_SCRIPT_TAI_VIET: Tai Viet. Since 2.26
- * @G_UNICODE_SCRIPT_BATAK: Batak. Since 2.28
- * @G_UNICODE_SCRIPT_BRAHMI: Brahmi. Since 2.28
- * @G_UNICODE_SCRIPT_MANDAIC: Mandaic. Since 2.28
- * @G_UNICODE_SCRIPT_CHAKMA: Chakma. Since: 2.32
- * @G_UNICODE_SCRIPT_MEROITIC_CURSIVE: Meroitic Cursive. Since: 2.32 @G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS, Meroitic Hieroglyphs. Since: 2.32
- * @G_UNICODE_SCRIPT_MIAO: Miao. Since: 2.32
- * @G_UNICODE_SCRIPT_SHARADA: Sharada. Since: 2.32
- * @G_UNICODE_SCRIPT_SORA_SOMPENG: Sora Sompeng. Since: 2.32
- * @G_UNICODE_SCRIPT_TAKRI: Takri. Since: 2.32
- *
- * The #GUnicodeScript enumeration identifies different writing
- * systems. The values correspond to the names as defined in the
- * Unicode standard. The enumeration has been added in GLib 2.14,
- * and is interchangeable with #PangoScript.
- *
- * Note that new types may be added in the future. Applications
- * should be ready to handle unknown values.
- * See <ulink
- * url="http://www.unicode.org/reports/tr24/";>Unicode Standard Annex
- * #24: Script names</ulink>.
- */
-
-
-/**
- * GUnicodeType:
- * @G_UNICODE_CONTROL: General category "Other, Control" (Cc)
- * @G_UNICODE_FORMAT: General category "Other, Format" (Cf)
- * @G_UNICODE_UNASSIGNED: General category "Other, Not Assigned" (Cn)
- * @G_UNICODE_PRIVATE_USE: General category "Other, Private Use" (Co)
- * @G_UNICODE_SURROGATE: General category "Other, Surrogate" (Cs)
- * @G_UNICODE_LOWERCASE_LETTER: General category "Letter, Lowercase" (Ll)
- * @G_UNICODE_MODIFIER_LETTER: General category "Letter, Modifier" (Lm)
- * @G_UNICODE_OTHER_LETTER: General category "Letter, Other" (Lo)
- * @G_UNICODE_TITLECASE_LETTER: General category "Letter, Titlecase" (Lt)
- * @G_UNICODE_UPPERCASE_LETTER: General category "Letter, Uppercase" (Lu)
- * @G_UNICODE_SPACING_MARK: General category "Mark, Spacing" (Mc)
- * @G_UNICODE_ENCLOSING_MARK: General category "Mark, Enclosing" (Me)
- * @G_UNICODE_NON_SPACING_MARK: General category "Mark, Nonspacing" (Mn)
- * @G_UNICODE_DECIMAL_NUMBER: General category "Number, Decimal Digit" (Nd)
- * @G_UNICODE_LETTER_NUMBER: General category "Number, Letter" (Nl)
- * @G_UNICODE_OTHER_NUMBER: General category "Number, Other" (No)
- * @G_UNICODE_CONNECT_PUNCTUATION: General category "Punctuation, Connector" (Pc)
- * @G_UNICODE_DASH_PUNCTUATION: General category "Punctuation, Dash" (Pd)
- * @G_UNICODE_CLOSE_PUNCTUATION: General category "Punctuation, Close" (Pe)
- * @G_UNICODE_FINAL_PUNCTUATION: General category "Punctuation, Final quote" (Pf)
- * @G_UNICODE_INITIAL_PUNCTUATION: General category "Punctuation, Initial quote" (Pi)
- * @G_UNICODE_OTHER_PUNCTUATION: General category "Punctuation, Other" (Po)
- * @G_UNICODE_OPEN_PUNCTUATION: General category "Punctuation, Open" (Ps)
- * @G_UNICODE_CURRENCY_SYMBOL: General category "Symbol, Currency" (Sc)
- * @G_UNICODE_MODIFIER_SYMBOL: General category "Symbol, Modifier" (Sk)
- * @G_UNICODE_MATH_SYMBOL: General category "Symbol, Math" (Sm)
- * @G_UNICODE_OTHER_SYMBOL: General category "Symbol, Other" (So)
- * @G_UNICODE_LINE_SEPARATOR: General category "Separator, Line" (Zl)
- * @G_UNICODE_PARAGRAPH_SEPARATOR: General category "Separator, Paragraph" (Zp)
- * @G_UNICODE_SPACE_SEPARATOR: General category "Separator, Space" (Zs)
- *
- * These are the possible character classifications from the
- * Unicode specification.
- * See <ulink url="http://www.unicode.org/Public/UNIDATA/UnicodeData.html";>http://www.unicode.org/Public/UNIDATA/UnicodeData.html</ulink>.
- */
-
-
-/**
- * GUserDirectory:
- * @G_USER_DIRECTORY_DESKTOP: the user's Desktop directory
- * @G_USER_DIRECTORY_DOCUMENTS: the user's Documents directory
- * @G_USER_DIRECTORY_DOWNLOAD: the user's Downloads directory
- * @G_USER_DIRECTORY_MUSIC: the user's Music directory
- * @G_USER_DIRECTORY_PICTURES: the user's Pictures directory
- * @G_USER_DIRECTORY_PUBLIC_SHARE: the user's shared directory
- * @G_USER_DIRECTORY_TEMPLATES: the user's Templates directory
- * @G_USER_DIRECTORY_VIDEOS: the user's Movies directory
- * @G_USER_N_DIRECTORIES: the number of enum values
- *
- * These are logical ids for special directories which are defined
- * depending on the platform used. You should use g_get_user_special_dir()
- * to retrieve the full path associated to the logical id.
- *
- * The #GUserDirectory enumeration can be extended at later date. Not
- * every platform has a directory for every logical id in this
- * enumeration.
- *
- * Since: 2.14
- */
-
-
-/**
- * GValue:
- *
- * An opaque structure used to hold different types of values.
- * The data within the structure has protected scope: it is accessible only
- * to functions within a #GTypeValueTable structure, or implementations of
- * the g_value_*() API. That is, code portions which implement new fundamental
- * types.
- * #GValue users cannot make any assumptions about how data is stored
- * within the 2 element @data union, and the @g_type member should
- * only be accessed through the G_VALUE_TYPE() macro.
- */
-
-
-/**
- * GValueArray:
- * @n_values: number of values contained in the array
- * @values: array of values
- *
- * A #GValueArray contains an array of #GValue elements.
- */
-
-
-/**
- * GValueTransform:
- * @src_value: Source value.
- * @dest_value: Target value.
- *
- * The type of value transformation functions which can be registered with
- * g_value_register_transform_func().
- */
-
-
-/**
- * GVariantType:
- *
- * A type in the GVariant type system.
- *
- * Two types may not be compared by value; use g_variant_type_equal() or
- * g_variant_type_is_subtype_of().  May be copied using
- * g_variant_type_copy() and freed using g_variant_type_free().
- */
-
-
-/**
- * GVoidFunc:
- *
- * Declares a type of function which takes no arguments
- * and has no return value. It is used to specify the type
- * function passed to g_atexit().
- */
-
-
-/**
- * GWeakNotify:
- * @data: data that was provided when the weak reference was established
- * @where_the_object_was: the object being finalized
- *
- * A #GWeakNotify function can be added to an object as a callback that gets
- * triggered when the object is finalized. Since the object is already being
- * finalized when the #GWeakNotify is called, there's not much you could do
- * with the object, apart from e.g. using its address as hash-index or the like.
- */
-
-
-/**
- * GWeakRef:
- *
- * A structure containing a weak reference to a #GObject.  It can either
- * be empty (i.e. point to %NULL), or point to an object for as long as
- * at least one "strong" reference to that object exists. Before the
- * object's #GObjectClass.dispose method is called, every #GWeakRef
- * associated with becomes empty (i.e. points to %NULL).
- *
- * Like #GValue, #GWeakRef can be statically allocated, stack- or
- * heap-allocated, or embedded in larger structures.
- *
- * Unlike g_object_weak_ref() and g_object_add_weak_pointer(), this weak
- * reference is thread-safe: converting a weak pointer to a reference is
- * atomic with respect to invalidation of weak pointers to destroyed
- * objects.
- *
- * If the object's #GObjectClass.dispose method results in additional
- * references to the object being held, any #GWeakRef<!-- -->s taken
- * before it was disposed will continue to point to %NULL.  If
- * #GWeakRef<!-- -->s are taken after the object is disposed and
- * re-referenced, they will continue to point to it until its refcount
- * goes back to zero, at which point they too will be invalidated.
- */
-
-
-/**
- * G_BOOKMARK_FILE_ERROR:
- *
- * Error domain for bookmark file parsing.
- * Errors in this domain will be from the #GBookmarkFileError
- * enumeration. See #GError for information on error domains.
- */
-
-
-/**
- * G_BREAKPOINT:
- *
- * Inserts a breakpoint instruction into the code.
- *
- * On x86 and alpha systems this is implemented as a soft interrupt
- * and on other architectures it raises a <literal>SIGTRAP</literal> signal.
- */
-
-
-/**
- * G_CALLBACK:
- * @f: a function pointer.
- *
- * Cast a function pointer to a #GCallback.
- */
-
-
-/**
- * G_CCLOSURE_SWAP_DATA:
- * @cclosure: a #GCClosure
- *
- * Checks whether the user data of the #GCClosure should be passed as the
- * first parameter to the callback. See g_cclosure_new_swap().
- *
- * Returns: %TRUE if data has to be swapped.
- */
-
-
-/**
- * G_CLOSURE_NEEDS_MARSHAL:
- * @closure: a #GClosure
- *
- * Check if the closure still needs a marshaller. See g_closure_set_marshal().
- *
- * Returns: %TRUE if a #GClosureMarshal marshaller has not yet been set on @closure.
- */
-
-
-/**
- * G_CLOSURE_N_NOTIFIERS:
- * @cl: a #GClosure
- *
- * Get the total number of notifiers connected with the closure @cl.
- * The count includes the meta marshaller, the finalize and invalidate notifiers
- * and the marshal guards. Note that each guard counts as two notifiers.
- * See g_closure_set_meta_marshal(), g_closure_add_finalize_notifier(),
- * g_closure_add_invalidate_notifier() and g_closure_add_marshal_guards().
- *
- * Returns: number of notifiers
- */
-
-
-/**
- * G_CONVERT_ERROR:
- *
- * Error domain for character set conversions. Errors in this domain will
- * be from the #GConvertError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_DATALIST_FLAGS_MASK:
- *
- * A bitmask that restricts the possible flags passed to
- * g_datalist_set_flags(). Passing a flags value where
- * flags & ~G_DATALIST_FLAGS_MASK != 0 is an error.
- */
-
-
-/**
- * G_DEFINE_ABSTRACT_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE(), but defines an abstract type.
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_ABSTRACT_TYPE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_C_: Custom code that gets inserted in the @type_name_get_type() function.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE_WITH_CODE(), but defines an abstract type and allows you to
- * insert custom code into the *_get_type() function, e.g. interface implementations
- * via G_IMPLEMENT_INTERFACE(). See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_BOXED_TYPE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @copy_func: the #GBoxedCopyFunc for the new type
- * @free_func: the #GBoxedFreeFunc for the new type
- *
- * A convenience macro for boxed type implementations, which defines a
- * type_name_get_type() function registering the boxed type.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_BOXED_TYPE_WITH_CODE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @copy_func: the #GBoxedCopyFunc for the new type
- * @free_func: the #GBoxedFreeFunc for the new type
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for boxed type implementations.
- * Similar to G_DEFINE_BOXED_TYPE(), but allows to insert custom code into the
- * type_name_get_type() function, e.g. to register value transformations with
- * g_value_register_transform_func().
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_DYNAMIC_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for dynamic type implementations, which declares a
- * class initialization function, an instance initialization function (see
- * #GTypeInfo for information about these) and a static variable named
- * @t_n<!-- -->_parent_class pointing to the parent class. Furthermore,
- * it defines a <function>*_get_type()</function> and a static
- * <function>*_register_type()</function> function for use in your
- * <function>module_init()</function>.
- * See G_DEFINE_DYNAMIC_TYPE_EXTENDED() for an example.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @TYPE_PARENT: The #GType of the parent type.
- * @flags: #GTypeFlags to pass to g_type_module_register_type()
- * @CODE: Custom code that gets inserted in the *_get_type() function.
- *
- * A more general version of G_DEFINE_DYNAMIC_TYPE() which
- * allows to specify #GTypeFlags and custom code.
- *
- * |[
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED (GtkGadget,
- *                                 gtk_gadget,
- *                                 GTK_TYPE_THING,
- *                                 0,
- *                                 G_IMPLEMENT_INTERFACE_DYNAMIC (TYPE_GIZMO,
- *                                                                gtk_gadget_gizmo_init));
- * ]|
- * expands to
- * |[
- * static void     gtk_gadget_init              (GtkGadget      *self);
- * static void     gtk_gadget_class_init        (GtkGadgetClass *klass);
- * static void     gtk_gadget_class_finalize    (GtkGadgetClass *klass);
- *
- * static gpointer gtk_gadget_parent_class = NULL;
- * static GType    gtk_gadget_type_id = 0;
- *
- * static void     gtk_gadget_class_intern_init (gpointer klass)
- * {
- *   gtk_gadget_parent_class = g_type_class_peek_parent (klass);
- *   gtk_gadget_class_init ((GtkGadgetClass*) klass);
- * }
- *
- * GType
- * gtk_gadget_get_type (void)
- * {
- *   return gtk_gadget_type_id;
- * }
- *
- * static void
- * gtk_gadget_register_type (GTypeModule *type_module)
- * {
- *   const GTypeInfo g_define_type_info = {
- *     sizeof (GtkGadgetClass),
- *     (GBaseInitFunc) NULL,
- *     (GBaseFinalizeFunc) NULL,
- *     (GClassInitFunc) gtk_gadget_class_intern_init,
- *     (GClassFinalizeFunc) gtk_gadget_class_finalize,
- *     NULL,   // class_data
- *     sizeof (GtkGadget),
- *     0,      // n_preallocs
- *     (GInstanceInitFunc) gtk_gadget_init,
- *     NULL    // value_table
- *   };
- *   gtk_gadget_type_id = g_type_module_register_type (type_module,
- *                                                     GTK_TYPE_THING,
- *                                                     GtkGadget,
- *                                                     &g_define_type_info,
- *                                                     (GTypeFlags) flags);
- *   {
- *     const GInterfaceInfo g_implement_interface_info = {
- *       (GInterfaceInitFunc) gtk_gadget_gizmo_init
- *     };
- *     g_type_module_add_interface (type_module, g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
- *   }
- * }
- * ]|
- *
- * Since: 2.14
- */
-
-
-/**
- * G_DEFINE_INTERFACE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the prerequisite type for the interface, or 0 (%G_TYPE_INVALID) for no prerequisite type.
- *
- * A convenience macro for #GTypeInterface definitions, which declares
- * a default vtable initialization function and defines a *_get_type()
- * function.
- *
- * The macro expects the interface initialization function to have the
- * name <literal>t_n ## _default_init</literal>, and the interface
- * structure to have the name <literal>TN ## Interface</literal>.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_DEFINE_INTERFACE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the prerequisite type for the interface, or 0 (%G_TYPE_INVALID) for no prerequisite type.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for #GTypeInterface definitions. Similar to
- * G_DEFINE_INTERFACE(), but allows you to insert custom code into the
- * *_get_type() function, e.g. additional interface implementations
- * via G_IMPLEMENT_INTERFACE(), or additional prerequisite types. See
- * G_DEFINE_TYPE_EXTENDED() for a similar example using
- * G_DEFINE_TYPE_WITH_CODE().
- *
- * Since: 2.24
- */
-
-
-/**
- * G_DEFINE_POINTER_TYPE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- *
- * A convenience macro for pointer type implementations, which defines a
- * type_name_get_type() function registering the pointer type.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_POINTER_TYPE_WITH_CODE:
- * @TypeName: The name of the new type, in Camel case.
- * @type_name: The name of the new type, in lowercase, with words separated by '_'.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for pointer type implementations.
- * Similar to G_DEFINE_POINTER_TYPE(), but allows to insert custom code into the
- * type_name_get_type() function.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_DEFINE_TYPE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- *
- * A convenience macro for type implementations, which declares a
- * class initialization function, an instance initialization function (see #GTypeInfo for information about
- * these) and a static variable named @t_n<!-- -->_parent_class pointing to the parent class. Furthermore, it defines
- * a *_get_type() function. See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_TYPE_EXTENDED:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type, in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_f_: #GTypeFlags to pass to g_type_register_static()
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * The most general convenience macro for type implementations, on which
- * G_DEFINE_TYPE(), etc are based.
- *
- * |[
- * G_DEFINE_TYPE_EXTENDED (GtkGadget,
- *                         gtk_gadget,
- *                         GTK_TYPE_WIDGET,
- *                         0,
- *                         G_IMPLEMENT_INTERFACE (TYPE_GIZMO,
- *                                                gtk_gadget_gizmo_init));
- * ]|
- * expands to
- * |[
- * static void     gtk_gadget_init       (GtkGadget      *self);
- * static void     gtk_gadget_class_init (GtkGadgetClass *klass);
- * static gpointer gtk_gadget_parent_class = NULL;
- * static void     gtk_gadget_class_intern_init (gpointer klass)
- * {
- *   gtk_gadget_parent_class = g_type_class_peek_parent (klass);
- *   gtk_gadget_class_init ((GtkGadgetClass*) klass);
- * }
- *
- * GType
- * gtk_gadget_get_type (void)
- * {
- *   static volatile gsize g_define_type_id__volatile = 0;
- *   if (g_once_init_enter (&g_define_type_id__volatile))
- *     {
- *       GType g_define_type_id =
- *         g_type_register_static_simple (GTK_TYPE_WIDGET,
- *                                        g_intern_static_string ("GtkGadget"),
- *                                        sizeof (GtkGadgetClass),
- *                                        (GClassInitFunc) gtk_gadget_class_intern_init,
- *                                        sizeof (GtkGadget),
- *                                        (GInstanceInitFunc) gtk_gadget_init,
- *                                        (GTypeFlags) flags);
- *       {
- *         const GInterfaceInfo g_implement_interface_info = {
- *           (GInterfaceInitFunc) gtk_gadget_gizmo_init
- *         };
- *         g_type_add_interface_static (g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
- *       }
- *       g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
- *     }
- *   return g_define_type_id__volatile;
- * }
- * ]|
- * The only pieces which have to be manually provided are the definitions of
- * the instance and class structure and the definitions of the instance and
- * class init functions.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_DEFINE_TYPE_WITH_CODE:
- * @TN: The name of the new type, in Camel case.
- * @t_n: The name of the new type in lowercase, with words separated by '_'.
- * @T_P: The #GType of the parent type.
- * @_C_: Custom code that gets inserted in the *_get_type() function.
- *
- * A convenience macro for type implementations.
- * Similar to G_DEFINE_TYPE(), but allows you to insert custom code into the
- * *_get_type() function, e.g. interface implementations via G_IMPLEMENT_INTERFACE().
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_ENUM_CLASS:
- * @class: a valid #GEnumClass
- *
- * Casts a derived #GEnumClass structure into a #GEnumClass structure.
- */
-
-
-/**
- * G_ENUM_CLASS_TYPE:
- * @class: a #GEnumClass
- *
- * Get the type identifier from a given #GEnumClass structure.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_ENUM_CLASS_TYPE_NAME:
- * @class: a #GEnumClass
- *
- * Get the static type name from a given #GEnumClass structure.
- *
- * Returns: the type name.
- */
-
-
-/**
- * G_FLAGS_CLASS:
- * @class: a valid #GFlagsClass
- *
- * Casts a derived #GFlagsClass structure into a #GFlagsClass structure.
- */
-
-
-/**
- * G_FLAGS_CLASS_TYPE:
- * @class: a #GFlagsClass
- *
- * Get the type identifier from a given #GFlagsClass structure.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_FLAGS_CLASS_TYPE_NAME:
- * @class: a #GFlagsClass
- *
- * Get the static type name from a given #GFlagsClass structure.
- *
- * Returns: the type name.
- */
-
-
-/**
- * G_IMPLEMENT_INTERFACE:
- * @TYPE_IFACE: The #GType of the interface to add
- * @iface_init: The interface init function
- *
- * A convenience macro to ease interface addition in the @_C_ section
- * of G_DEFINE_TYPE_WITH_CODE() or G_DEFINE_ABSTRACT_TYPE_WITH_CODE().
- * See G_DEFINE_TYPE_EXTENDED() for an example.
- *
- * Note that this macro can only be used together with the G_DEFINE_TYPE_*
- * macros, since it depends on variable names from those macros.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_IMPLEMENT_INTERFACE_DYNAMIC:
- * @TYPE_IFACE: The #GType of the interface to add
- * @iface_init: The interface init function
- *
- * A convenience macro to ease interface addition in the @_C_ section
- * of G_DEFINE_DYNAMIC_TYPE_EXTENDED(). See G_DEFINE_DYNAMIC_TYPE_EXTENDED()
- * for an example.
- *
- * Note that this macro can only be used together with the
- * G_DEFINE_DYNAMIC_TYPE_EXTENDED macros, since it depends on variable
- * names from that macro.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_INITIALLY_UNOWNED:
- * @object: Object which is subject to casting.
- *
- * Casts a #GInitiallyUnowned or derived pointer into a (GInitiallyUnowned*)
- * pointer. Depending on the current debugging level, this function may invoke
- * certain runtime checks to identify invalid casts.
- */
-
-
-/**
- * G_INITIALLY_UNOWNED_CLASS:
- * @class: a valid #GInitiallyUnownedClass
- *
- * Casts a derived #GInitiallyUnownedClass structure into a
- * #GInitiallyUnownedClass structure.
- */
-
-
-/**
- * G_INITIALLY_UNOWNED_GET_CLASS:
- * @object: a #GInitiallyUnowned instance.
- *
- * Get the class structure associated to a #GInitiallyUnowned instance.
- *
- * Returns: pointer to object class structure.
- */
-
-
-/**
- * G_IS_ENUM_CLASS:
- * @class: a #GEnumClass
- *
- * Checks whether @class "is a" valid #GEnumClass structure of type %G_TYPE_ENUM
- * or derived.
- */
-
-
-/**
- * G_IS_FLAGS_CLASS:
- * @class: a #GFlagsClass
- *
- * Checks whether @class "is a" valid #GFlagsClass structure of type %G_TYPE_FLAGS
- * or derived.
- */
-
-
-/**
- * G_IS_INITIALLY_UNOWNED:
- * @object: Instance to check for being a %G_TYPE_INITIALLY_UNOWNED.
- *
- * Checks whether a valid #GTypeInstance pointer is of type %G_TYPE_INITIALLY_UNOWNED.
- */
-
-
-/**
- * G_IS_INITIALLY_UNOWNED_CLASS:
- * @class: a #GInitiallyUnownedClass
- *
- * Checks whether @class "is a" valid #GInitiallyUnownedClass structure of type
- * %G_TYPE_INITIALLY_UNOWNED or derived.
- */
-
-
-/**
- * G_IS_OBJECT:
- * @object: Instance to check for being a %G_TYPE_OBJECT.
- *
- * Checks whether a valid #GTypeInstance pointer is of type %G_TYPE_OBJECT.
- */
-
-
-/**
- * G_IS_OBJECT_CLASS:
- * @class: a #GObjectClass
- *
- * Checks whether @class "is a" valid #GObjectClass structure of type
- * %G_TYPE_OBJECT or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC:
- * @pspec: a #GParamSpec
- *
- * Checks whether @pspec "is a" valid #GParamSpec structure of type %G_TYPE_PARAM
- * or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_BOOLEAN:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_BOOLEAN.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_BOXED:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_BOXED.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_CHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_CHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_CLASS:
- * @pclass: a #GParamSpecClass
- *
- * Checks whether @pclass "is a" valid #GParamSpecClass structure of type
- * %G_TYPE_PARAM or derived.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_DOUBLE:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_DOUBLE.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_ENUM:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_ENUM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_FLAGS:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_FLAGS.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_FLOAT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_FLOAT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_GTYPE:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_GTYPE.
- *
- * Since: 2.10
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_INT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_INT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_INT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_INT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_LONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_LONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_OBJECT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_OBJECT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_OVERRIDE:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_OVERRIDE.
- *
- * Since: 2.4
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_PARAM:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_PARAM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_POINTER:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_POINTER.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_STRING:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_STRING.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UCHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UCHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UINT:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UINT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UINT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UINT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_ULONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_ULONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_UNICHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_UNICHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_IS_PARAM_SPEC_VALUE_ARRAY:
- * @pspec: a valid #GParamSpec instance
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_VALUE_ARRAY.
- *
- * Returns: %TRUE on success.
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_IS_PARAM_SPEC_VARIANT:
- * @pspec: a #GParamSpec
- *
- * Checks whether the given #GParamSpec is of type %G_TYPE_PARAM_VARIANT.
- *
- * Returns: %TRUE on success
- * Since: 2.26
- */
-
-
-/**
- * G_IS_VALUE:
- * @value: A #GValue structure.
- *
- * Checks if @value is a valid and initialized #GValue structure.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_MARKUP_ERROR:
- *
- * Error domain for markup parsing.
- * Errors in this domain will be from the #GMarkupError enumeration.
- * See #GError for information on error domains.
- */
-
-
-/**
- * G_NODE_IS_LEAF:
- * @node: a #GNode
- *
- * Returns %TRUE if a #GNode is a leaf node.
- *
- * Returns: %TRUE if the #GNode is a leaf node (i.e. it has no children)
- */
-
-
-/**
- * G_NODE_IS_ROOT:
- * @node: a #GNode
- *
- * Returns %TRUE if a #GNode is the root of a tree.
- *
- * Returns: %TRUE if the #GNode is the root of a tree (i.e. it has no parent or siblings)
- */
-
-
-/**
- * G_OBJECT:
- * @object: Object which is subject to casting.
- *
- * Casts a #GObject or derived pointer into a (GObject*) pointer.
- * Depending on the current debugging level, this function may invoke
- * certain runtime checks to identify invalid casts.
- */
-
-
-/**
- * G_OBJECT_CLASS:
- * @class: a valid #GObjectClass
- *
- * Casts a derived #GObjectClass structure into a #GObjectClass structure.
- */
-
-
-/**
- * G_OBJECT_CLASS_NAME:
- * @class: a valid #GObjectClass
- *
- * Return the name of a class structure's type.
- *
- * Returns: Type name of @class. The string is owned by the type system and should not be freed.
- */
-
-
-/**
- * G_OBJECT_CLASS_TYPE:
- * @class: a valid #GObjectClass
- *
- * Get the type id of a class structure.
- *
- * Returns: Type id of @class.
- */
-
-
-/**
- * G_OBJECT_GET_CLASS:
- * @object: a #GObject instance.
- *
- * Get the class structure associated to a #GObject instance.
- *
- * Returns: pointer to object class structure.
- */
-
-
-/**
- * G_OBJECT_TYPE:
- * @object: Object to return the type id for.
- *
- * Get the type id of an object.
- *
- * Returns: Type id of @object.
- */
-
-
-/**
- * G_OBJECT_TYPE_NAME:
- * @object: Object to return the type name for.
- *
- * Get the name of an object's type.
- *
- * Returns: Type name of @object. The string is owned by the type system and should not be freed.
- */
-
-
-/**
- * G_OBJECT_WARN_INVALID_PROPERTY_ID:
- * @object: the #GObject on which set_property() or get_property() was called
- * @property_id: the numeric id of the property
- * @pspec: the #GParamSpec of the property
- *
- * This macro should be used to emit a standard warning about unexpected
- * properties in set_property() and get_property() implementations.
- */
-
-
-/**
- * G_OPTION_ERROR:
- *
- * Error domain for option parsing. Errors in this domain will
- * be from the #GOptionError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_OPTION_REMAINING:
- *
- * If a long option in the main group has this name, it is not treated as a
- * regular option. Instead it collects all non-option arguments which would
- * otherwise be left in <literal>argv</literal>. The option must be of type
- * %G_OPTION_ARG_CALLBACK, %G_OPTION_ARG_STRING_ARRAY
- * or %G_OPTION_ARG_FILENAME_ARRAY.
- *
- *
- * Using #G_OPTION_REMAINING instead of simply scanning <literal>argv</literal>
- * for leftover arguments has the advantage that GOption takes care of
- * necessary encoding conversions for strings or filenames.
- *
- * Since: 2.6
- */
-
-
-/**
- * G_PARAM_MASK:
- *
- * Mask containing the bits of #GParamSpec.flags which are reserved for GLib.
- */
-
-
-/**
- * G_PARAM_READWRITE:
- *
- * #GParamFlags value alias for %G_PARAM_READABLE | %G_PARAM_WRITABLE.
- */
-
-
-/**
- * G_PARAM_SPEC:
- * @pspec: a valid #GParamSpec
- *
- * Casts a derived #GParamSpec object (e.g. of type #GParamSpecInt) into
- * a #GParamSpec object.
- */
-
-
-/**
- * G_PARAM_SPEC_BOOLEAN:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecBoolean.
- */
-
-
-/**
- * G_PARAM_SPEC_BOXED:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecBoxed.
- */
-
-
-/**
- * G_PARAM_SPEC_CHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecChar.
- */
-
-
-/**
- * G_PARAM_SPEC_CLASS:
- * @pclass: a valid #GParamSpecClass
- *
- * Casts a derived #GParamSpecClass structure into a #GParamSpecClass structure.
- */
-
-
-/**
- * G_PARAM_SPEC_DOUBLE:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecDouble.
- */
-
-
-/**
- * G_PARAM_SPEC_ENUM:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecEnum.
- */
-
-
-/**
- * G_PARAM_SPEC_FLAGS:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecFlags.
- */
-
-
-/**
- * G_PARAM_SPEC_FLOAT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecFloat.
- */
-
-
-/**
- * G_PARAM_SPEC_GET_CLASS:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GParamSpecClass of a #GParamSpec.
- */
-
-
-/**
- * G_PARAM_SPEC_GTYPE:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecGType.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_PARAM_SPEC_INT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecInt.
- */
-
-
-/**
- * G_PARAM_SPEC_INT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecInt64.
- */
-
-
-/**
- * G_PARAM_SPEC_LONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecLong.
- */
-
-
-/**
- * G_PARAM_SPEC_OBJECT:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecObject.
- */
-
-
-/**
- * G_PARAM_SPEC_OVERRIDE:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecOverride.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_PARAM_SPEC_PARAM:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecParam.
- */
-
-
-/**
- * G_PARAM_SPEC_POINTER:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecPointer.
- */
-
-
-/**
- * G_PARAM_SPEC_STRING:
- * @pspec: a valid #GParamSpec instance
- *
- * Casts a #GParamSpec instance into a #GParamSpecString.
- */
-
-
-/**
- * G_PARAM_SPEC_TYPE:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType of this @pspec.
- */
-
-
-/**
- * G_PARAM_SPEC_TYPE_NAME:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType name of this @pspec.
- */
-
-
-/**
- * G_PARAM_SPEC_UCHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUChar.
- */
-
-
-/**
- * G_PARAM_SPEC_UINT:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUInt.
- */
-
-
-/**
- * G_PARAM_SPEC_UINT64:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUInt64.
- */
-
-
-/**
- * G_PARAM_SPEC_ULONG:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecULong.
- */
-
-
-/**
- * G_PARAM_SPEC_UNICHAR:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecUnichar.
- */
-
-
-/**
- * G_PARAM_SPEC_VALUE_ARRAY:
- * @pspec: a valid #GParamSpec instance
- *
- * Cast a #GParamSpec instance into a #GParamSpecValueArray.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_PARAM_SPEC_VALUE_TYPE:
- * @pspec: a valid #GParamSpec
- *
- * Retrieves the #GType to initialize a #GValue for this parameter.
- */
-
-
-/**
- * G_PARAM_SPEC_VARIANT:
- * @pspec: a #GParamSpec
- *
- * Casts a #GParamSpec into a #GParamSpecVariant.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_PARAM_STATIC_STRINGS:
- *
- * #GParamFlags value alias for %G_PARAM_STATIC_NAME | %G_PARAM_STATIC_NICK | %G_PARAM_STATIC_BLURB.
- *
- * Since 2.13.0
- */
-
-
-/**
- * G_PARAM_USER_SHIFT:
- *
- * Minimum shift count to be used for user defined flags, to be stored in
- * #GParamSpec.flags. The maximum allowed is 30 + G_PARAM_USER_SHIFT.
- */
-
-
-/**
- * G_PRIORITY_DEFAULT:
- *
- * Use this for default priority event sources.
- *
- * In GLib this priority is used when adding timeout functions
- * with g_timeout_add(). In GDK this priority is used for events
- * from the X server.
- */
-
-
-/**
- * G_PRIORITY_DEFAULT_IDLE:
- *
- * Use this for default priority idle functions.
- *
- * In GLib this priority is used when adding idle functions with
- * g_idle_add().
- */
-
-
-/**
- * G_PRIORITY_HIGH:
- *
- * Use this for high priority event sources.
- *
- * It is not used within GLib or GTK+.
- */
-
-
-/**
- * G_PRIORITY_HIGH_IDLE:
- *
- * Use this for high priority idle functions.
- *
- * GTK+ uses #G_PRIORITY_HIGH_IDLE + 10 for resizing operations,
- * and #G_PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is
- * done to ensure that any pending resizes are processed before any
- * pending redraws, so that widgets are not redrawn twice unnecessarily.)
- */
-
-
-/**
- * G_PRIORITY_LOW:
- *
- * Use this for very low priority background tasks.
- *
- * It is not used within GLib or GTK+.
- */
-
-
-/**
- * G_QUEUE_INIT:
- *
- * A statically-allocated #GQueue must be initialized with this
- * macro before it can be used. This macro can be used to initialize
- * a variable, but it cannot be assigned to a variable. In that case
- * you have to use g_queue_init().
- *
- * |[
- * GQueue my_queue = G_QUEUE_INIT;
- * ]|
- *
- * Since: 2.14
- */
-
-
-/**
- * G_REGEX_ERROR:
- *
- * Error domain for regular expressions. Errors in this domain will be
- * from the #GRegexError enumeration. See #GError for information on
- * error domains.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_SIGNAL_FLAGS_MASK:
- *
- * A mask for all #GSignalFlags bits.
- */
-
-
-/**
- * G_SIGNAL_MATCH_MASK:
- *
- * A mask for all #GSignalMatchType bits.
- */
-
-
-/**
- * G_SIGNAL_TYPE_STATIC_SCOPE:
- *
- * This macro flags signal argument types for which the signal system may
- * assume that instances thereof remain persistent across all signal emissions
- * they are used in. This is only useful for non ref-counted, value-copy types.
- *
- * To flag a signal argument in this way, add
- * <literal>| G_SIGNAL_TYPE_STATIC_SCOPE</literal> to the corresponding argument
- * of g_signal_new().
- * |[
- * g_signal_new ("size_request",
- *   G_TYPE_FROM_CLASS (gobject_class),
- * 	 G_SIGNAL_RUN_FIRST,
- * 	 G_STRUCT_OFFSET (GtkWidgetClass, size_request),
- * 	 NULL, NULL,
- * 	 _gtk_marshal_VOID__BOXED,
- * 	 G_TYPE_NONE, 1,
- * 	 GTK_TYPE_REQUISITION | G_SIGNAL_TYPE_STATIC_SCOPE);
- * ]|
- */
-
-
-/**
- * G_SOURCE_CONTINUE:
- *
- * Use this macro as the return value of a #GSourceFunc to leave
- * the #GSource in the main loop.
- *
- * Since: 2.28
- */
-
-
-/**
- * G_SOURCE_REMOVE:
- *
- * Use this macro as the return value of a #GSourceFunc to remove
- * the #GSource from the main loop.
- *
- * Since: 2.28
- */
-
-
-/**
- * G_SPAWN_ERROR:
- *
- * Error domain for spawning processes. Errors in this domain will
- * be from the #GSpawnError enumeration. See #GError for information on
- * error domains.
- */
-
-
-/**
- * G_TIME_SPAN_DAY:
- *
- * Evaluates to a time span of one day.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_HOUR:
- *
- * Evaluates to a time span of one hour.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_MILLISECOND:
- *
- * Evaluates to a time span of one millisecond.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_MINUTE:
- *
- * Evaluates to a time span of one minute.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TIME_SPAN_SECOND:
- *
- * Evaluates to a time span of one second.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_ARRAY:
- *
- * The #GType for a boxed type holding a #GArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_BOOLEAN:
- *
- * The fundamental type corresponding to #gboolean.
- */
-
-
-/**
- * G_TYPE_BOXED:
- *
- * The fundamental type from which all boxed types are derived.
- */
-
-
-/**
- * G_TYPE_BYTES:
- *
- * The #GType for #GBytes.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_TYPE_BYTE_ARRAY:
- *
- * The #GType for a boxed type holding a #GByteArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_CHAR:
- *
- * The fundamental type corresponding to #gchar.
- * The type designated by G_TYPE_CHAR is unconditionally an 8-bit signed integer.
- * This may or may not be the same type a the C type "gchar".
- */
-
-
-/**
- * G_TYPE_CHECK_CLASS_CAST:
- * @g_class: Location of a #GTypeClass structure.
- * @g_type: The type to be returned.
- * @c_type: The corresponding C type of class structure of @g_type.
- *
- * Checks that @g_class is a class structure of the type identified by @g_type
- * and issues a warning if this is not the case. Returns @g_class casted
- * to a pointer to @c_type.
- *
- * This macro should only be used in type implementations.
- */
-
-
-/**
- * G_TYPE_CHECK_CLASS_TYPE:
- * @g_class: Location of a #GTypeClass structure.
- * @g_type: The type to be checked.
- *
- * Checks if @g_class is a class structure of the type identified by
- * @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE:
- * @instance: Location of a #GTypeInstance structure.
- *
- * Checks if @instance is a valid #GTypeInstance structure,
- * otherwise issues a warning and returns %FALSE.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE_CAST:
- * @instance: Location of a #GTypeInstance structure.
- * @g_type: The type to be returned.
- * @c_type: The corresponding C type of @g_type.
- *
- * Checks that @instance is an instance of the type identified by @g_type
- * and issues a warning if this is not the case. Returns @instance casted
- * to a pointer to @c_type.
- *
- * This macro should only be used in type implementations.
- */
-
-
-/**
- * G_TYPE_CHECK_INSTANCE_TYPE:
- * @instance: Location of a #GTypeInstance structure.
- * @g_type: The type to be checked
- *
- * Checks if @instance is an instance of the type identified by @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_VALUE:
- * @value: a #GValue
- *
- * Checks if @value has been initialized to hold values
- * of a value type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CHECK_VALUE_TYPE:
- * @value: a #GValue
- * @g_type: The type to be checked.
- *
- * Checks if @value has been initialized to hold values
- * of type @g_type.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_CLASS_GET_PRIVATE:
- * @klass: the class of a type deriving from @private_type.
- * @g_type: the type identifying which private data to retrieve.
- * @c_type: The C type for the private structure.
- *
- * Gets the private class structure for a particular type.
- * The private structure must have been registered in the
- * get_type() function with g_type_add_class_private().
- *
- * This macro should only be used in type implementations.
- *
- * Since: 2.24
- * Returns: a pointer to the private data structure.
- */
-
-
-/**
- * G_TYPE_CLOSURE:
- *
- * The #GType for #GClosure.
- */
-
-
-/**
- * G_TYPE_DATE:
- *
- * The #GType for #GDate.
- */
-
-
-/**
- * G_TYPE_DATE_TIME:
- *
- * The #GType for a boxed type holding a #GDateTime.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_DOUBLE:
- *
- * The fundamental type corresponding to #gdouble.
- */
-
-
-/**
- * G_TYPE_ENUM:
- *
- * The fundamental type from which all enumeration types are derived.
- */
-
-
-/**
- * G_TYPE_ERROR:
- *
- * The #GType for a boxed type holding a #GError.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_FLAGS:
- *
- * The fundamental type from which all flags types are derived.
- */
-
-
-/**
- * G_TYPE_FLAG_RESERVED_ID_BIT:
- *
- * A bit in the type number that's supposed to be left untouched.
- */
-
-
-/**
- * G_TYPE_FLOAT:
- *
- * The fundamental type corresponding to #gfloat.
- */
-
-
-/**
- * G_TYPE_FROM_CLASS:
- * @g_class: Location of a valid #GTypeClass structure.
- *
- * Get the type identifier from a given @class structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FROM_INSTANCE:
- * @instance: Location of a valid #GTypeInstance structure.
- *
- * Get the type identifier from a given @instance structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FROM_INTERFACE:
- * @g_iface: Location of a valid #GTypeInterface structure.
- *
- * Get the type identifier from a given @interface structure.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: the #GType
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL:
- * @type: A #GType value.
- *
- * The fundamental type which is the ancestor of @type.
- * Fundamental types are types that serve as ultimate bases for the derived types,
- * thus they are the roots of distinct inheritance hierarchies.
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL_MAX:
- *
- * An integer constant that represents the number of identifiers reserved
- * for types that are assigned at compile-time.
- */
-
-
-/**
- * G_TYPE_FUNDAMENTAL_SHIFT:
- *
- * Shift value used in converting numbers to type IDs.
- */
-
-
-/**
- * G_TYPE_GSTRING:
- *
- * The #GType for #GString.
- */
-
-
-/**
- * G_TYPE_GTYPE:
- *
- * The type for #GType.
- */
-
-
-/**
- * G_TYPE_HASH_TABLE:
- *
- * The #GType for a boxed type holding a #GHashTable reference.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_TYPE_HAS_VALUE_TABLE:
- * @type: A #GType value.
- *
- * Checks if @type has a #GTypeValueTable.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_INITIALLY_UNOWNED:
- *
- * The type for #GInitiallyUnowned.
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_CLASS:
- * @instance: Location of the #GTypeInstance structure.
- * @g_type: The #GType of the class to be returned.
- * @c_type: The C type of the class structure.
- *
- * Get the class structure of a given @instance, casted
- * to a specified ancestor type @g_type of the instance.
- *
- * Note that while calling a GInstanceInitFunc(), the class pointer gets
- * modified, so it might not always return the expected pointer.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: a pointer to the class structure
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_INTERFACE:
- * @instance: Location of the #GTypeInstance structure.
- * @g_type: The #GType of the interface to be returned.
- * @c_type: The C type of the interface structure.
- *
- * Get the interface structure for interface @g_type of a given @instance.
- *
- * This macro should only be used in type implementations.
- *
- * Returns: a pointer to the interface structure
- */
-
-
-/**
- * G_TYPE_INSTANCE_GET_PRIVATE:
- * @instance: the instance of a type deriving from @private_type.
- * @g_type: the type identifying which private data to retrieve.
- * @c_type: The C type for the private structure.
- *
- * Gets the private structure for a particular type.
- * The private structure must have been registered in the
- * class_init function with g_type_class_add_private().
- *
- * This macro should only be used in type implementations.
- *
- * Since: 2.4
- * Returns: a pointer to the private data structure.
- */
-
-
-/**
- * G_TYPE_INT:
- *
- * The fundamental type corresponding to #gint.
- */
-
-
-/**
- * G_TYPE_INT64:
- *
- * The fundamental type corresponding to #gint64.
- */
-
-
-/**
- * G_TYPE_INTERFACE:
- *
- * The fundamental type from which all interfaces are derived.
- */
-
-
-/**
- * G_TYPE_INVALID:
- *
- * An invalid #GType used as error return value in some functions which return
- * a #GType.
- */
-
-
-/**
- * G_TYPE_IO_CHANNEL:
- *
- * The #GType for #GIOChannel.
- */
-
-
-/**
- * G_TYPE_IO_CONDITION:
- *
- * The #GType for #GIOCondition.
- */
-
-
-/**
- * G_TYPE_IS_ABSTRACT:
- * @type: A #GType value.
- *
- * Checks if @type is an abstract type.  An abstract type cannot be
- * instantiated and is normally used as an abstract base class for
- * derived classes.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_CLASSED:
- * @type: A #GType value.
- *
- * Checks if @type is a classed type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DEEP_DERIVABLE:
- * @type: A #GType value.
- *
- * Checks if @type is a deep derivable type.  A deep derivable type
- * can be used as the base class of a deep (multi-level) class hierarchy.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DERIVABLE:
- * @type: A #GType value.
- *
- * Checks if @type is a derivable type.  A derivable type can
- * be used as the base class of a flat (single-level) class hierarchy.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_DERIVED:
- * @type: A #GType value.
- *
- * Checks if @type is derived (or in object-oriented terminology:
- * inherited) from another type (this holds true for all non-fundamental
- * types).
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_ENUM:
- * @type: a #GType ID.
- *
- * Checks whether @type "is a" %G_TYPE_ENUM.
- *
- * Returns: %TRUE if @type "is a" %G_TYPE_ENUM.
- */
-
-
-/**
- * G_TYPE_IS_FLAGS:
- * @type: a #GType ID.
- *
- * Checks whether @type "is a" %G_TYPE_FLAGS.
- *
- * Returns: %TRUE if @type "is a" %G_TYPE_FLAGS.
- */
-
-
-/**
- * G_TYPE_IS_FUNDAMENTAL:
- * @type: A #GType value.
- *
- * Checks if @type is a fundamental type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_INSTANTIATABLE:
- * @type: A #GType value.
- *
- * Checks if @type can be instantiated.  Instantiation is the
- * process of creating an instance (object) of this type.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_INTERFACE:
- * @type: A #GType value.
- *
- * Checks if @type is an interface type.
- * An interface type provides a pure API, the implementation
- * of which is provided by another type (which is then said to conform
- * to the interface).  GLib interfaces are somewhat analogous to Java
- * interfaces and C++ classes containing only pure virtual functions,
- * with the difference that GType interfaces are not derivable (but see
- * g_type_interface_add_prerequisite() for an alternative).
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_OBJECT:
- * @type: Type id to check
- *
- * Check if the passed in type id is a %G_TYPE_OBJECT or derived from it.
- *
- * Returns: %FALSE or %TRUE, indicating whether @type is a %G_TYPE_OBJECT.
- */
-
-
-/**
- * G_TYPE_IS_PARAM:
- * @type: a #GType ID
- *
- * Checks whether @type "is a" %G_TYPE_PARAM.
- */
-
-
-/**
- * G_TYPE_IS_VALUE:
- * @type: A #GType value.
- *
- * Checks whether the passed in type ID can be used for g_value_init().
- * That is, this macro checks whether this type provides an implementation
- * of the #GTypeValueTable functions required for a type to create a #GValue of.
- *
- * Returns: Whether @type is suitable as a #GValue type.
- */
-
-
-/**
- * G_TYPE_IS_VALUE_ABSTRACT:
- * @type: A #GType value.
- *
- * Checks if @type is an abstract value type.  An abstract value type introduces
- * a value table, but can't be used for g_value_init() and is normally used as
- * an abstract base type for derived value types.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_IS_VALUE_TYPE:
- * @type: A #GType value.
- *
- * Checks if @type is a value type and can be used with g_value_init().
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_TYPE_KEY_FILE:
- *
- * The #GType for a boxed type holding a #GKeyFile.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_TYPE_LONG:
- *
- * The fundamental type corresponding to #glong.
- */
-
-
-/**
- * G_TYPE_MAIN_CONTEXT:
- *
- * The #GType for a boxed type holding a #GMainContext.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_MAIN_LOOP:
- *
- * The #GType for a boxed type holding a #GMainLoop.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_MAKE_FUNDAMENTAL:
- * @x: the fundamental type number.
- *
- * Get the type ID for the fundamental type number @x.
- * Use g_type_fundamental_next() instead of this macro to create new fundamental
- * types.
- *
- * Returns: the GType
- */
-
-
-/**
- * G_TYPE_MATCH_INFO:
- *
- * The #GType for a boxed type holding a #GMatchInfo reference.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_NONE:
- *
- * A fundamental type which is used as a replacement for the C
- * <literal>void</literal> return type.
- */
-
-
-/**
- * G_TYPE_OBJECT:
- *
- * The fundamental type for #GObject.
- */
-
-
-/**
- * G_TYPE_PARAM:
- *
- * The fundamental type from which all #GParamSpec types are derived.
- */
-
-
-/**
- * G_TYPE_PARAM_BOOLEAN:
- *
- * The #GType of #GParamSpecBoolean.
- */
-
-
-/**
- * G_TYPE_PARAM_BOXED:
- *
- * The #GType of #GParamSpecBoxed.
- */
-
-
-/**
- * G_TYPE_PARAM_CHAR:
- *
- * The #GType of #GParamSpecChar.
- */
-
-
-/**
- * G_TYPE_PARAM_DOUBLE:
- *
- * The #GType of #GParamSpecDouble.
- */
-
-
-/**
- * G_TYPE_PARAM_ENUM:
- *
- * The #GType of #GParamSpecEnum.
- */
-
-
-/**
- * G_TYPE_PARAM_FLAGS:
- *
- * The #GType of #GParamSpecFlags.
- */
-
-
-/**
- * G_TYPE_PARAM_FLOAT:
- *
- * The #GType of #GParamSpecFloat.
- */
-
-
-/**
- * G_TYPE_PARAM_GTYPE:
- *
- * The #GType of #GParamSpecGType.
- *
- * Since: 2.10
- */
-
-
-/**
- * G_TYPE_PARAM_INT:
- *
- * The #GType of #GParamSpecInt.
- */
-
-
-/**
- * G_TYPE_PARAM_INT64:
- *
- * The #GType of #GParamSpecInt64.
- */
-
-
-/**
- * G_TYPE_PARAM_LONG:
- *
- * The #GType of #GParamSpecLong.
- */
-
-
-/**
- * G_TYPE_PARAM_OBJECT:
- *
- * The #GType of #GParamSpecObject.
- */
-
-
-/**
- * G_TYPE_PARAM_OVERRIDE:
- *
- * The #GType of #GParamSpecOverride.
- *
- * Since: 2.4
- */
-
-
-/**
- * G_TYPE_PARAM_PARAM:
- *
- * The #GType of #GParamSpecParam.
- */
-
-
-/**
- * G_TYPE_PARAM_POINTER:
- *
- * The #GType of #GParamSpecPointer.
- */
-
-
-/**
- * G_TYPE_PARAM_STRING:
- *
- * The #GType of #GParamSpecString.
- */
-
-
-/**
- * G_TYPE_PARAM_UCHAR:
- *
- * The #GType of #GParamSpecUChar.
- */
-
-
-/**
- * G_TYPE_PARAM_UINT:
- *
- * The #GType of #GParamSpecUInt.
- */
-
-
-/**
- * G_TYPE_PARAM_UINT64:
- *
- * The #GType of #GParamSpecUInt64.
- */
-
-
-/**
- * G_TYPE_PARAM_ULONG:
- *
- * The #GType of #GParamSpecULong.
- */
-
-
-/**
- * G_TYPE_PARAM_UNICHAR:
- *
- * The #GType of #GParamSpecUnichar.
- */
-
-
-/**
- * G_TYPE_PARAM_VALUE_ARRAY:
- *
- * The #GType of #GParamSpecValueArray.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_TYPE_PARAM_VARIANT:
- *
- * The #GType of #GParamSpecVariant.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_POINTER:
- *
- * The fundamental type corresponding to #gpointer.
- */
-
-
-/**
- * G_TYPE_PTR_ARRAY:
- *
- * The #GType for a boxed type holding a #GPtrArray reference.
- *
- * Since: 2.22
- */
-
-
-/**
- * G_TYPE_REGEX:
- *
- * The #GType for a boxed type holding a #GRegex reference.
- *
- * Since: 2.14
- */
-
-
-/**
- * G_TYPE_RESERVED_BSE_FIRST:
- *
- * First fundamental type number to create a new fundamental type id with
- * G_TYPE_MAKE_FUNDAMENTAL() reserved for BSE.
- */
-
-
-/**
- * G_TYPE_RESERVED_BSE_LAST:
- *
- * Last fundamental type number reserved for BSE.
- */
-
-
-/**
- * G_TYPE_RESERVED_GLIB_FIRST:
- *
- * First fundamental type number to create a new fundamental type id with
- * G_TYPE_MAKE_FUNDAMENTAL() reserved for GLib.
- */
-
-
-/**
- * G_TYPE_RESERVED_GLIB_LAST:
- *
- * Last fundamental type number reserved for GLib.
- */
-
-
-/**
- * G_TYPE_RESERVED_USER_FIRST:
- *
- * First available fundamental type number to create new fundamental
- * type id with G_TYPE_MAKE_FUNDAMENTAL().
- */
-
-
-/**
- * G_TYPE_SOURCE:
- *
- * The #GType for a boxed type holding a #GSource.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_STRING:
- *
- * The fundamental type corresponding to nul-terminated C strings.
- */
-
-
-/**
- * G_TYPE_STRV:
- *
- * The #GType for a boxed type holding a %NULL-terminated array of strings.
- *
- * The code fragments in the following example show the use of a property of
- * type #G_TYPE_STRV with g_object_class_install_property(), g_object_set()
- * and g_object_get().
- *
- * |[
- * g_object_class_install_property (object_class,
- *                                  PROP_AUTHORS,
- *                                  g_param_spec_boxed ("authors",
- *                                                      _("Authors"),
- *                                                      _("List of authors"),
- *                                                      G_TYPE_STRV,
- *                                                      G_PARAM_READWRITE));
- *
- * gchar *authors[] = { "Owen", "Tim", NULL };
- * g_object_set (obj, "authors", authors, NULL);
- *
- * gchar *writers[];
- * g_object_get (obj, "authors", &writers, NULL);
- * /&ast; do something with writers &ast;/
- * g_strfreev (writers);
- * ]|
- *
- * Since: 2.4
- */
-
-
-/**
- * G_TYPE_UCHAR:
- *
- * The fundamental type corresponding to #guchar.
- */
-
-
-/**
- * G_TYPE_UINT:
- *
- * The fundamental type corresponding to #guint.
- */
-
-
-/**
- * G_TYPE_UINT64:
- *
- * The fundamental type corresponding to #guint64.
- */
-
-
-/**
- * G_TYPE_ULONG:
- *
- * The fundamental type corresponding to #gulong.
- */
-
-
-/**
- * G_TYPE_VALUE:
- *
- * The type ID of the "GValue" type which is a boxed type,
- * used to pass around pointers to GValues.
- */
-
-
-/**
- * G_TYPE_VALUE_ARRAY:
- *
- * The type ID of the "GValueArray" type which is a boxed type,
- * used to pass around pointers to GValueArrays.
- *
- * Deprecated: 2.32: Use #GArray instead of #GValueArray
- */
-
-
-/**
- * G_TYPE_VARIANT:
- *
- * The fundamental type corresponding to #GVariant.
- *
- * All floating #GVariant instances passed through the #GType system are
- * consumed.
- *
- * Note that callbacks in closures, and signal handlers
- * for signals of return type %G_TYPE_VARIANT, must never return floating
- * variants.
- *
- * Note: GLib 2.24 did include a boxed type with this name. It was replaced
- * with this fundamental type in 2.26.
- *
- * Since: 2.26
- */
-
-
-/**
- * G_TYPE_VARIANT_BUILDER:
- *
- * The #GType for a boxed type holding a #GVariantBuilder.
- *
- * Since: 2.30
- */
-
-
-/**
- * G_TYPE_VARIANT_TYPE:
- *
- * The #GType for a boxed type holding a #GVariantType.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_UNICHAR_MAX_DECOMPOSITION_LENGTH:
- *
- * The maximum length (in codepoints) of a compatibility or canonical
- * decomposition of a single Unicode character.
- *
- * This is as defined by Unicode 6.1.
- *
- * Since: 2.32
- */
-
-
-/**
- * G_UNICODE_COMBINING_MARK:
- *
- * Older name for %G_UNICODE_SPACING_MARK.
- *
- * Deprecated: 2.30: Use %G_UNICODE_SPACING_MARK.
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_PATH:
- *
- * Allowed characters in a path. Includes "!$&'()*+,;=:@/".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT:
- *
- * Allowed characters in path elements. Includes "!$&'()*+,;=:@".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO:
- *
- * Allowed characters in userinfo as defined in RFC 3986. Includes "!$&'()*+,;=:".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_GENERIC_DELIMITERS:
- *
- * Generic delimiters characters as defined in RFC 3986. Includes ":/?#[]@".
- */
-
-
-/**
- * G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS:
- *
- * Subcomponent delimiter characters as defined in RFC 3986. Includes "!$&'()*+,;=".
- */
-
-
-/**
- * G_VALUE_COLLECT:
- * @value: a #GValue return location. @value is supposed to be initialized according to the value type to be collected
- * @var_args: the va_list variable; it may be evaluated multiple times
- * @flags: flags which are passed on to the collect_value() function of the #GTypeValueTable of @value.
- * @__error: a #gchar** variable that will be modified to hold a g_new() allocated error messages if something fails
- *
- * Collects a variable argument value from a va_list. We have to
- * implement the varargs collection as a macro, because on some systems
- * va_list variables cannot be passed by reference.
- *
- * Note: If you are creating the @value argument just before calling this macro,
- * you should use the #G_VALUE_COLLECT_INIT variant and pass the unitialized
- * #GValue. That variant is faster than #G_VALUE_COLLECT.
- */
-
-
-/**
- * G_VALUE_COLLECT_FORMAT_MAX_LENGTH:
- *
- * The maximal number of #GTypeCValue<!-- -->s which can be collected for a
- * single #GValue.
- */
-
-
-/**
- * G_VALUE_COLLECT_INIT:
- * @value: a #GValue return location. @value must contain only 0 bytes.
- * @_value_type: the #GType to use for @value.
- * @var_args: the va_list variable; it may be evaluated multiple times
- * @flags: flags which are passed on to the collect_value() function of the #GTypeValueTable of @value.
- * @__error: a #gchar** variable that will be modified to hold a g_new() allocated error messages if something fails
- *
- * Collects a variable argument value from a va_list. We have to
- * implement the varargs collection as a macro, because on some systems
- * va_list variables cannot be passed by reference.
- *
- * Since: 2.24
- */
-
-
-/**
- * G_VALUE_HOLDS:
- * @value: A #GValue structure.
- * @type: A #GType value.
- *
- * Checks if @value holds (or contains) a value of @type.
- * This macro will also check for @value != %NULL and issue a
- * warning if the check fails.
- *
- * Returns: %TRUE if @value holds the @type.
- */
-
-
-/**
- * G_VALUE_HOLDS_BOOLEAN:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_BOOLEAN.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_BOXED:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived
- * from type %G_TYPE_BOXED.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_CHAR:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_CHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_DOUBLE:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_DOUBLE.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_ENUM:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_ENUM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_FLAGS:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_FLAGS.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_FLOAT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_FLOAT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_GTYPE:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_GTYPE.
- *
- * Since: 2.12
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_INT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_INT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_INT64:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_INT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_LONG:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_LONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_OBJECT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_OBJECT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_PARAM:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values derived from type %G_TYPE_PARAM.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_POINTER:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_POINTER.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_STRING:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_STRING.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UCHAR:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UCHAR.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UINT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UINT.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_UINT64:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_UINT64.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_ULONG:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_ULONG.
- *
- * Returns: %TRUE on success.
- */
-
-
-/**
- * G_VALUE_HOLDS_VARIANT:
- * @value: a valid #GValue structure
- *
- * Checks whether the given #GValue can hold values of type %G_TYPE_VARIANT.
- *
- * Returns: %TRUE on success.
- * Since: 2.26
- */
-
-
-/**
- * G_VALUE_INIT:
- *
- * A #GValue must be initialized before it can be used.
- * This macro can be used as initializer instead of an explicit
- * <literal>{ 0 }</literal> when declaring a variable,
- * but it cannot be assigned to a variable.
- *
- * |[
- *   GValue value = G_VALUE_INIT;
- * ]|
- *
- * Since: 2.30
- */
-
-
-/**
- * G_VALUE_LCOPY:
- * @value: a #GValue return location. @value is supposed to be initialized according to the value type to be collected
- * @var_args: the va_list variable; it may be evaluated multiple times
- * @flags: flags which are passed on to the lcopy_value() function of the #GTypeValueTable of @value.
- * @__error: a #gchar** variable that will be modified to hold a g_new() allocated error messages if something fails
- *
- * Collects a value's variable argument locations from a va_list. Usage is
- * analogous to G_VALUE_COLLECT().
- */
-
-
-/**
- * G_VALUE_NOCOPY_CONTENTS:
- *
- * If passed to G_VALUE_COLLECT(), allocated data won't be copied
- * but used verbatim. This does not affect ref-counted types like
- * objects.
- */
-
-
-/**
- * G_VALUE_TYPE:
- * @value: A #GValue structure.
- *
- * Get the type identifier of @value.
- *
- * Returns: the #GType.
- */
-
-
-/**
- * G_VALUE_TYPE_NAME:
- * @value: A #GValue structure.
- *
- * Gets the the type name of @value.
- *
- * Returns: the type name.
- */
-
-
-/**
- * G_VARIANT_TYPE:
- * @type_string: a well-formed #GVariantType type string
- *
- * Converts a string to a const #GVariantType.  Depending on the
- * current debugging level, this function may perform a runtime check
- * to ensure that @string is a valid GVariant type string.
- *
- * It is always a programmer error to use this macro with an invalid
- * type string. If in doubt, use g_variant_type_string_is_valid() to
- * check if the string is valid.
- *
- * Since 2.24
- */
-
-
-/**
- * G_VARIANT_TYPE_ANY:
- *
- * An indefinite type that is a supertype of every type (including
- * itself).
- */
-
-
-/**
- * G_VARIANT_TYPE_ARRAY:
- *
- * An indefinite type that is a supertype of every array type.
- */
-
-
-/**
- * G_VARIANT_TYPE_BASIC:
- *
- * An indefinite type that is a supertype of every basic (ie:
- * non-container) type.
- */
-
-
-/**
- * G_VARIANT_TYPE_BOOLEAN:
- *
- * The type of a value that can be either %TRUE or %FALSE.
- */
-
-
-/**
- * G_VARIANT_TYPE_BYTE:
- *
- * The type of an integer value that can range from 0 to 255.
- */
-
-
-/**
- * G_VARIANT_TYPE_BYTESTRING:
- *
- * The type of an array of bytes.  This type is commonly used to pass
- * around strings that may not be valid utf8.  In that case, the
- * convention is that the nul terminator character should be included as
- * the last character in the array.
- */
-
-
-/**
- * G_VARIANT_TYPE_BYTESTRING_ARRAY:
- *
- * The type of an array of byte strings (an array of arrays of bytes).
- */
-
-
-/**
- * G_VARIANT_TYPE_DICTIONARY:
- *
- * An indefinite type that is a supertype of every dictionary type --
- * that is, any array type that has an element type equal to any
- * dictionary entry type.
- */
-
-
-/**
- * G_VARIANT_TYPE_DICT_ENTRY:
- *
- * An indefinite type that is a supertype of every dictionary entry
- * type.
- */
-
-
-/**
- * G_VARIANT_TYPE_DOUBLE:
- *
- * The type of a double precision IEEE754 floating point number.
- * These guys go up to about 1.80e308 (plus and minus) but miss out on
- * some numbers in between.  In any case, that's far greater than the
- * estimated number of fundamental particles in the observable
- * universe.
- */
-
-
-/**
- * G_VARIANT_TYPE_HANDLE:
- *
- * The type of a 32bit signed integer value, that by convention, is used
- * as an index into an array of file descriptors that are sent alongside
- * a D-Bus message.
- *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.
- */
-
-
-/**
- * G_VARIANT_TYPE_INT16:
- *
- * The type of an integer value that can range from -32768 to 32767.
- */
-
-
-/**
- * G_VARIANT_TYPE_INT32:
- *
- * The type of an integer value that can range from -2147483648 to
- * 2147483647.
- */
-
-
-/**
- * G_VARIANT_TYPE_INT64:
- *
- * The type of an integer value that can range from
- * -9223372036854775808 to 9223372036854775807.
- */
-
-
-/**
- * G_VARIANT_TYPE_MAYBE:
- *
- * An indefinite type that is a supertype of every maybe type.
- */
-
-
-/**
- * G_VARIANT_TYPE_OBJECT_PATH:
- *
- * The type of a D-Bus object reference.  These are strings of a
- * specific format used to identify objects at a given destination on
- * the bus.
- *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.  If you are, then the D-Bus specification contains a
- * precise description of valid object paths.
- */
-
-
-/**
- * G_VARIANT_TYPE_OBJECT_PATH_ARRAY:
- *
- * The type of an array of object paths.
- */
-
-
-/**
- * G_VARIANT_TYPE_SIGNATURE:
- *
- * The type of a D-Bus type signature.  These are strings of a specific
- * format used as type signatures for D-Bus methods and messages.
- *
- * If you are not interacting with D-Bus, then there is no reason to make
- * use of this type.  If you are, then the D-Bus specification contains a
- * precise description of valid signature strings.
- */
-
-
-/**
- * G_VARIANT_TYPE_STRING:
- *
- * The type of a string.  "" is a string.  %NULL is not a string.
- */
-
-
-/**
- * G_VARIANT_TYPE_STRING_ARRAY:
- *
- * The type of an array of strings.
- */
-
-
-/**
- * G_VARIANT_TYPE_TUPLE:
- *
- * An indefinite type that is a supertype of every tuple type,
- * regardless of the number of items in the tuple.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT16:
- *
- * The type of an integer value that can range from 0 to 65535.
- * There were about this many people living in Toronto in the 1870s.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT32:
- *
- * The type of an integer value that can range from 0 to 4294967295.
- * That's one number for everyone who was around in the late 1970s.
- */
-
-
-/**
- * G_VARIANT_TYPE_UINT64:
+ * GParamSpecPool:
  *
- * The type of an integer value that can range from 0 to
- * 18446744073709551616.  That's a really big number, but a Rubik's
- * cube can have a bit more than twice as many possible positions.
+ * A #GParamSpecPool maintains a collection of #GParamSpec<!-- -->s which can be
+ * quickly accessed by owner and name. The implementation of the #GObject property
+ * system uses such a pool to store the #GParamSpecs of the properties all object
+ * types.
  */
 
 
 /**
- * G_VARIANT_TYPE_UNIT:
+ * GWeakRef:
  *
- * The empty tuple type.  Has only one instance.  Known also as "triv"
- * or "void".
- */
-
-
-/**
- * G_VARIANT_TYPE_VARDICT:
+ * A structure containing a weak reference to a #GObject.  It can either
+ * be empty (i.e. point to %NULL), or point to an object for as long as
+ * at least one "strong" reference to that object exists. Before the
+ * object's #GObjectClass.dispose method is called, every #GWeakRef
+ * associated with becomes empty (i.e. points to %NULL).
  *
- * The type of a dictionary mapping strings to variants (the ubiquitous
- * "a{sv}" type).
+ * Like #GValue, #GWeakRef can be statically allocated, stack- or
+ * heap-allocated, or embedded in larger structures.
  *
- * Since: 2.30
- */
-
-
-/**
- * G_VARIANT_TYPE_VARIANT:
+ * Unlike g_object_weak_ref() and g_object_add_weak_pointer(), this weak
+ * reference is thread-safe: converting a weak pointer to a reference is
+ * atomic with respect to invalidation of weak pointers to destroyed
+ * objects.
  *
- * The type of a box that contains any other value (including another
- * variant).
+ * If the object's #GObjectClass.dispose method results in additional
+ * references to the object being held, any #GWeakRef<!-- -->s taken
+ * before it was disposed will continue to point to %NULL.  If
+ * #GWeakRef<!-- -->s are taken after the object is disposed and
+ * re-referenced, they will continue to point to it until its refcount
+ * goes back to zero, at which point they too will be invalidated.
  */
 
 
@@ -6070,58 +710,6 @@
 
 
 /**
- * SECTION:value_collection
- * @Short_description: Converting varargs to generic values
- * @Title: Varargs Value Collection
- *
- * The macros in this section provide the varargs parsing support needed
- * in variadic GObject functions such as g_object_new() or g_object_set().
- * They currently support the collection of integral types, floating point
- * types and pointers.
- */
-
-
-/**
- * g_alloca:
- * @size: number of bytes to allocate.
- *
- * Allocates @size bytes on the stack; these bytes will be freed when the current
- * stack frame is cleaned up. This macro essentially just wraps the alloca()
- * function present on most UNIX variants.
- * Thus it provides the same advantages and pitfalls as alloca():
- * <variablelist>
- *   <varlistentry><term></term><listitem><para>
- *     + alloca() is very fast, as on most systems it's implemented by just adjusting
- *     the stack pointer register.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     + It doesn't cause any memory fragmentation, within its scope, separate alloca()
- *     blocks just build up and are released together at function end.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Allocation sizes have to fit into the current stack frame. For instance in a
- *       threaded environment on Linux, the per-thread stack size is limited to 2 Megabytes,
- *       so be sparse with alloca() uses.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Allocation failure due to insufficient stack space is not indicated with a %NULL
- *       return like e.g. with malloc(). Instead, most systems probably handle it the same
- *       way as out of stack space situations from infinite function recursion, i.e.
- *       with a segmentation fault.
- *   </para></listitem></varlistentry>
- *   <varlistentry><term></term><listitem><para>
- *     - Special care has to be taken when mixing alloca() with GNU C variable sized arrays.
- *       Stack space allocated with alloca() in the same scope as a variable sized array
- *       will be freed together with the variable sized array upon exit of that scope, and
- *       not upon exit of the enclosing function scope.
- *   </para></listitem></varlistentry>
- * </variablelist>
- *
- * Returns: space for @size bytes, allocated on the stack
- */
-
-
-/**
  * g_binding_get_flags:
  * @binding: a #GBinding
  *
@@ -6857,407 +1445,176 @@
  * g_source_set_closure (source, g_cclosure_new (cb_func, cb_data));
  * ]|
  *
- * 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);
- *     }
- * }
- * ]|
- *
- * 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.
- */
-
-
-/**
- * g_closure_unref:
- * @closure: #GClosure to decrement the reference count on
- *
- * 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.
- */
-
-
-/**
- * g_enum_complete_type_info:
- * @g_enum_type: the type identifier of the type being completed
- * @info: the #GTypeInfo struct to be filled in
- * @const_values: An array of #GEnumValue structs for the possible enumeration values. The array is terminated by a struct with all members being 0.
- *
- * This function is meant to be called from the <literal>complete_type_info</literal>
- * 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, "MY_ENUM_FOO", "foo" },
- *     { MY_ENUM_BAR, "MY_ENUM_BAR", "bar" },
- *     { 0, NULL, NULL }
- *   };
- *
- *   g_enum_complete_type_info (type, info, values);
- * }
- * ]|
- */
-
-
-/**
- * g_enum_get_value:
- * @enum_class: a #GEnumClass
- * @value: the value to look up
- *
- * Returns the #GEnumValue for a value.
- *
- * Returns: the #GEnumValue for @value, or %NULL if @value is not a member of the enumeration
- */
-
-
-/**
- * g_enum_get_value_by_name:
- * @enum_class: a #GEnumClass
- * @name: the name to look up
- *
- * Looks up a #GEnumValue by name.
- *
- * Returns: the #GEnumValue with name @name, or %NULL if the enumeration doesn't have a member with that name
- */
-
-
-/**
- * g_enum_get_value_by_nick:
- * @enum_class: a #GEnumClass
- * @nick: the nickname to look up
- *
- * Looks up a #GEnumValue by nickname.
- *
- * Returns: the #GEnumValue with nickname @nick, or %NULL if the enumeration doesn't have a member with that nickname
- */
-
-
-/**
- * g_enum_register_static:
- * @name: A nul-terminated string used as the name of the new type.
- * @const_static_values: 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.
- *
- * Registers a new static enumeration type with the name @name.
- *
- * It is normally more convenient to let <link
- * linkend="glib-mkenums">glib-mkenums</link> generate a
- * my_enum_get_type() function from a usual C enumeration definition
- * than to write one yourself using g_enum_register_static().
- *
- * Returns: The new type identifier.
- */
-
-
-/**
- * g_flags_complete_type_info:
- * @g_flags_type: the type identifier of the type being completed
- * @info: the #GTypeInfo struct to be filled in
- * @const_values: An array of #GFlagsValue structs for the possible enumeration values. The array is terminated by a struct with all members being 0.
- *
- * 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.
- */
-
-
-/**
- * g_flags_get_first_value:
- * @flags_class: a #GFlagsClass
- * @value: the value
- *
- * Returns the first #GFlagsValue which is set in @value.
- *
- * Returns: the first #GFlagsValue which is set in @value, or %NULL if none is set
- */
-
-
-/**
- * g_flags_get_value_by_name:
- * @flags_class: a #GFlagsClass
- * @name: the name to look up
- *
- * Looks up a #GFlagsValue by name.
- *
- * Returns: the #GFlagsValue with name @name, or %NULL if there is no flag with that name
- */
-
-
-/**
- * g_flags_get_value_by_nick:
- * @flags_class: a #GFlagsClass
- * @nick: the nickname to look up
- *
- * Looks up a #GFlagsValue by nickname.
- *
- * Returns: the #GFlagsValue with nickname @nick, or %NULL if there is no flag with that nickname
- */
-
-
-/**
- * g_flags_register_static:
- * @name: A nul-terminated string used as the name of the new type.
- * @const_static_values: 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.
- *
- * Registers a new static flags type with the name @name.
- *
- * It is normally more convenient to let <link
- * linkend="glib-mkenums">glib-mkenums</link> generate a
- * my_flags_get_type() function from a usual C enumeration definition
- * than to write one yourself using g_flags_register_static().
- *
- * Returns: The new type identifier.
- */
-
-
-/**
- * g_main_destroy:
- * @loop: a #GMainLoop
- *
- * Frees the memory allocated for the #GMainLoop.
- *
- * Deprecated: 2.2: Use g_main_loop_unref() instead
- */
-
-
-/**
- * g_main_is_running:
- * @loop: a #GMainLoop
- *
- * Checks if the main loop is running.
- *
- * Returns: %TRUE if the main loop is running
- * Deprecated: 2.2: Use g_main_loop_is_running() instead
- */
-
-
-/**
- * g_main_iteration:
- * @may_block: set to %TRUE if it should block (i.e. wait) until an event source becomes ready. It will return after an event source has been processed. If set to %FALSE it will return immediately if no event source is ready to be processed.
- *
- * Runs a single iteration for the default #GMainContext.
- *
- * Returns: %TRUE if more events are pending.
- * Deprecated: 2.2: Use g_main_context_iteration() instead.
- */
-
-
-/**
- * g_main_new:
- * @is_running: set to %TRUE to indicate that the loop is running. This is not very important since calling g_main_run() will set this to %TRUE anyway.
- *
- * Creates a new #GMainLoop for th default main context.
- *
- * Returns: a new #GMainLoop
- * Deprecated: 2.2: Use g_main_loop_new() instead
- */
-
-
-/**
- * g_main_pending:
- *
- * Checks if any events are pending for the default #GMainContext
- * (i.e. ready to be processed).
- *
- * Returns: %TRUE if any events are pending.  Deprected: 2.2: Use g_main_context_pending() instead.
- */
-
-
-/**
- * g_main_quit:
- * @loop: a #GMainLoop
- *
- * Stops the #GMainLoop.
- * If g_main_run() was called to run the #GMainLoop, it will now return.
- *
- * Deprecated: 2.2: Use g_main_loop_quit() instead
- */
-
-
-/**
- * g_main_run:
- * @loop: a #GMainLoop
- *
- * Runs a main loop until it stops running.
+ * 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);
+ *     }
+ * }
+ * ]|
  *
- * Deprecated: 2.2: Use g_main_loop_run() instead
+ * 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.
  */
 
 
 /**
- * g_main_set_poll_func:
- * @func: the function to call to poll all file descriptors
- *
- * Sets the function to use for the handle polling of file descriptors
- * for the default main context.
+ * g_closure_unref:
+ * @closure: #GClosure to decrement the reference count on
  *
- * Deprecated: 2.2: Use g_main_context_set_poll_func() again
+ * 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.
  */
 
 
 /**
- * g_new:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
+ * g_enum_complete_type_info:
+ * @g_enum_type: the type identifier of the type being completed
+ * @info: the #GTypeInfo struct to be filled in
+ * @const_values: An array of #GEnumValue structs for the possible enumeration values. The array is terminated by a struct with all members being 0.
  *
- * Allocates @n_structs elements of type @struct_type.
- * The returned pointer is cast to a pointer to the given type.
- * If @n_structs is 0 it returns %NULL.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
+ * This function is meant to be called from the <literal>complete_type_info</literal>
+ * function of a #GTypePlugin implementation, as in the following
+ * example:
  *
- * Since the returned pointer is already casted to the right type,
- * it is normally unnecessary to cast it explicitly, and doing
- * so might hide memory allocation errors.
+ * |[
+ * static void
+ * my_enum_complete_type_info (GTypePlugin     *plugin,
+ *                             GType            g_type,
+ *                             GTypeInfo       *info,
+ *                             GTypeValueTable *value_table)
+ * {
+ *   static const GEnumValue values[] = {
+ *     { MY_ENUM_FOO, "MY_ENUM_FOO", "foo" },
+ *     { MY_ENUM_BAR, "MY_ENUM_BAR", "bar" },
+ *     { 0, NULL, NULL }
+ *   };
  *
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
+ *   g_enum_complete_type_info (type, info, values);
+ * }
+ * ]|
  */
 
 
 /**
- * g_new0:
- * @struct_type: the type of the elements to allocate.
- * @n_structs: the number of elements to allocate.
- *
- * Allocates @n_structs elements of type @struct_type, initialized to 0's.
- * The returned pointer is cast to a pointer to the given type.
- * If @n_structs is 0 it returns %NULL.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
+ * g_enum_get_value:
+ * @enum_class: a #GEnumClass
+ * @value: the value to look up
  *
- * Since the returned pointer is already casted to the right type,
- * it is normally unnecessary to cast it explicitly, and doing
- * so might hide memory allocation errors.
+ * Returns the #GEnumValue for a value.
  *
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type.
+ * Returns: the #GEnumValue for @value, or %NULL if @value is not a member of the enumeration
  */
 
 
 /**
- * g_newa:
- * @struct_type: Type of memory chunks to be allocated
- * @n_structs: Number of chunks to be allocated
+ * g_enum_get_value_by_name:
+ * @enum_class: a #GEnumClass
+ * @name: the name to look up
  *
- * Wraps g_alloca() in a more typesafe manner.
+ * Looks up a #GEnumValue by name.
  *
- * Returns: Pointer to stack space for @n_structs chunks of type @struct_type
+ * Returns: the #GEnumValue with name @name, or %NULL if the enumeration doesn't have a member with that name
  */
 
 
 /**
- * g_node_append:
- * @parent: the #GNode to place the new #GNode under
- * @node: the #GNode to insert
+ * g_enum_get_value_by_nick:
+ * @enum_class: a #GEnumClass
+ * @nick: the nickname to look up
  *
- * Inserts a #GNode as the last child of the given parent.
+ * Looks up a #GEnumValue by nickname.
  *
- * Returns: the inserted #GNode
+ * Returns: the #GEnumValue with nickname @nick, or %NULL if the enumeration doesn't have a member with that nickname
  */
 
 
 /**
- * g_node_append_data:
- * @parent: the #GNode to place the new #GNode under
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode as the last child of the given parent.
+ * g_enum_register_static:
+ * @name: A nul-terminated string used as the name of the new type.
+ * @const_static_values: 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.
  *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_first_child:
- * @node: a #GNode
+ * Registers a new static enumeration type with the name @name.
  *
- * Gets the first child of a #GNode.
+ * It is normally more convenient to let <link
+ * linkend="glib-mkenums">glib-mkenums</link> generate a
+ * my_enum_get_type() function from a usual C enumeration definition
+ * than to write one yourself using g_enum_register_static().
  *
- * Returns: the first child of @node, or %NULL if @node is %NULL or has no children
+ * Returns: The new type identifier.
  */
 
 
 /**
- * g_node_insert_data:
- * @parent: the #GNode to place the new #GNode under
- * @position: the position to place the new #GNode at. If position is -1, the new #GNode is inserted as the last child of @parent
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode at the given position.
+ * g_flags_complete_type_info:
+ * @g_flags_type: the type identifier of the type being completed
+ * @info: the #GTypeInfo struct to be filled in
+ * @const_values: An array of #GFlagsValue structs for the possible enumeration values. The array is terminated by a struct with all members being 0.
  *
- * Returns: the new #GNode
+ * 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.
  */
 
 
 /**
- * g_node_insert_data_after:
- * @parent: the #GNode to place the new #GNode under
- * @sibling: the sibling #GNode to place the new #GNode after
- * @data: the data for the new #GNode
+ * g_flags_get_first_value:
+ * @flags_class: a #GFlagsClass
+ * @value: the value
  *
- * Inserts a new #GNode after the given sibling.
+ * Returns the first #GFlagsValue which is set in @value.
  *
- * Returns: the new #GNode
+ * Returns: the first #GFlagsValue which is set in @value, or %NULL if none is set
  */
 
 
 /**
- * g_node_insert_data_before:
- * @parent: the #GNode to place the new #GNode under
- * @sibling: the sibling #GNode to place the new #GNode before
- * @data: the data for the new #GNode
+ * g_flags_get_value_by_name:
+ * @flags_class: a #GFlagsClass
+ * @name: the name to look up
  *
- * Inserts a new #GNode before the given sibling.
+ * Looks up a #GFlagsValue by name.
  *
- * Returns: the new #GNode
+ * Returns: the #GFlagsValue with name @name, or %NULL if there is no flag with that name
  */
 
 
 /**
- * g_node_next_sibling:
- * @node: a #GNode
+ * g_flags_get_value_by_nick:
+ * @flags_class: a #GFlagsClass
+ * @nick: the nickname to look up
  *
- * Gets the next sibling of a #GNode.
+ * Looks up a #GFlagsValue by nickname.
  *
- * Returns: the next sibling of @node, or %NULL if @node is the last node or %NULL
+ * Returns: the #GFlagsValue with nickname @nick, or %NULL if there is no flag with that nickname
  */
 
 
 /**
- * g_node_prepend_data:
- * @parent: the #GNode to place the new #GNode under
- * @data: the data for the new #GNode
- *
- * Inserts a new #GNode as the first child of the given parent.
+ * g_flags_register_static:
+ * @name: A nul-terminated string used as the name of the new type.
+ * @const_static_values: 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.
  *
- * Returns: the new #GNode
- */
-
-
-/**
- * g_node_prev_sibling:
- * @node: a #GNode
+ * Registers a new static flags type with the name @name.
  *
- * Gets the previous sibling of a #GNode.
+ * It is normally more convenient to let <link
+ * linkend="glib-mkenums">glib-mkenums</link> generate a
+ * my_flags_get_type() function from a usual C enumeration definition
+ * than to write one yourself using g_flags_register_static().
  *
- * Returns: the previous sibling of @node, or %NULL if @node is the first node or %NULL
+ * Returns: The new type identifier.
  */
 
 
@@ -8973,21 +3330,6 @@
 
 
 /**
- * g_renew:
- * @struct_type: the type of the elements to allocate
- * @mem: the currently allocated memory
- * @n_structs: the number of elements to allocate
- *
- * Reallocates the memory pointed to by @mem, so that it now has space for
- * @n_structs elements of type @struct_type. It returns the new address of
- * the memory, which may have been moved.
- * Care is taken to avoid overflow when calculating the size of the allocated block.
- *
- * Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_signal_accumulator_first_wins:
  * @ihint: standard #GSignalAccumulator parameter
  * @return_accu: standard #GSignalAccumulator parameter
@@ -9073,36 +3415,6 @@
 
 
 /**
- * g_signal_connect:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The handler will be called before the default handler of the signal.
- *
- * Returns: the handler id
- */
-
-
-/**
- * g_signal_connect_after:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The handler will be called after the default handler of the signal.
- *
- * Returns: the handler id
- */
-
-
-/**
  * g_signal_connect_closure:
  * @instance: the instance to connect to.
  * @detailed_signal: a string of the form "signal-name::detail".
@@ -9184,22 +3496,6 @@
 
 
 /**
- * g_signal_connect_swapped:
- * @instance: the instance to connect to.
- * @detailed_signal: a string of the form "signal-name::detail".
- * @c_handler: the #GCallback to connect.
- * @data: data to pass to @c_handler calls.
- *
- * Connects a #GCallback function to a signal for a particular object.
- *
- * The instance on which the signal is emitted and @data will be swapped when
- * calling the handler.
- *
- * Returns: the handler id
- */
-
-
-/**
  * g_signal_emit:
  * @instance: the instance the signal is being emitted on.
  * @signal_id: the signal id
@@ -9347,18 +3643,6 @@
 
 
 /**
- * g_signal_handlers_block_by_func:
- * @instance: The instance to block handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Blocks all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
  * g_signal_handlers_block_matched:
  * @instance: The instance to block handlers from.
  * @mask: Mask indicating which of @signal_id, @detail, @closure, @func and/or @data the handlers have to match.
@@ -9381,30 +3665,6 @@
 
 
 /**
- * g_signal_handlers_disconnect_by_data:
- * @instance: The instance to remove handlers from
- * @data: the closure data of the handlers' closures
- *
- * Disconnects all handlers on an instance that match @data.
- *
- * Returns: The number of handlers that matched.
- * Since: 2.32
- */
-
-
-/**
- * g_signal_handlers_disconnect_by_func:
- * @instance: The instance to remove handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Disconnects all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
  * g_signal_handlers_disconnect_matched:
  * @instance: The instance to remove handlers from.
  * @mask: Mask indicating which of @signal_id, @detail, @closure, @func and/or @data the handlers have to match.
@@ -9428,18 +3688,6 @@
 
 
 /**
- * g_signal_handlers_unblock_by_func:
- * @instance: The instance to unblock handlers from.
- * @func: The C closure callback of the handlers (useless for non-C closures).
- * @data: The closure data of the handlers' closures.
- *
- * Unblocks all handlers on an instance that match @func and @data.
- *
- * Returns: The number of handlers that matched.
- */
-
-
-/**
  * g_signal_handlers_unblock_matched:
  * @instance: The instance to unblock handlers from.
  * @mask: Mask indicating which of @signal_id, @detail, @closure, @func and/or @data the handlers have to match.
@@ -9799,54 +4047,6 @@
 
 
 /**
- * g_try_new:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Attempts to allocate @n_structs elements of type @struct_type, and returns
- * %NULL on failure. Contrast with g_new(), which aborts the program on failure.
- * The returned pointer is cast to a pointer to the given type.
- * The function returns %NULL when @n_structs is 0 of if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_try_new0:
- * @struct_type: the type of the elements to allocate
- * @n_structs: the number of elements to allocate
- *
- * Attempts to allocate @n_structs elements of type @struct_type, initialized
- * to 0's, and returns %NULL on failure. Contrast with g_new0(), which aborts
- * the program on failure.
- * The returned pointer is cast to a pointer to the given type.
- * The function returns %NULL when @n_structs is 0 of if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
- * g_try_renew:
- * @struct_type: the type of the elements to allocate
- * @mem: the currently allocated memory
- * @n_structs: the number of elements to allocate
- *
- * Attempts to reallocate the memory pointed to by @mem, so that it now has
- * space for @n_structs elements of type @struct_type, and returns %NULL on
- * failure. Contrast with g_renew(), which aborts the program on failure.
- * It returns the new address of the memory, which may have been moved.
- * The function returns %NULL if an overflow occurs.
- *
- * Since: 2.8
- * Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type
- */
-
-
-/**
  * g_type_add_class_cache_func: (skip)
  * @cache_data: data to be passed to @cache_func
  * @cache_func: a #GTypeClassCacheFunc
@@ -10710,19 +4910,6 @@
 
 
 /**
- * g_utf8_next_char:
- * @p: Pointer to the start of a valid UTF-8 character
- *
- * Skips to the next character in a UTF-8 string. The string must be
- * valid; this macro is as fast as possible, and has no error-checking.
- * You would use this macro to iterate over a string character by
- * character. The macro returns the start of the next UTF-8 character.
- * Before using this macro, use g_utf8_validate() to validate strings
- * that may contain invalid UTF-8.
- */
-
-
-/**
  * g_value_array_append:
  * @value_array: #GValueArray to add an element to
  * @value: (allow-none): #GValue to copy into #GValueArray, or %NULL
@@ -11614,25 +5801,6 @@
 
 
 /**
- * g_warn_if_fail:
- * @expr: the expression to check
- *
- * Logs a warning if the expression is not true.
- *
- * Since: 2.16
- */
-
-
-/**
- * g_warn_if_reached:
- *
- * Logs a critical warning.
- *
- * Since: 2.16
- */
-
-
-/**
  * g_weak_ref_clear: (skip)
  * @weak_ref: (inout): location of a weak reference, which may be empty
  *
@@ -11699,60 +5867,6 @@
  */
 
 
-/**
- * gchararray:
- *
- * A C representable type name for #G_TYPE_STRING.
- */
-
-
-/**
- * gunichar:
- *
- * A type which can hold any UTF-32 or UCS-4 character code,
- * also known as a Unicode code point.
- *
- * If you want to produce the UTF-8 representation of a #gunichar,
- * use g_ucs4_to_utf8(). See also g_utf8_to_ucs4() for the reverse
- * process.
- *
- * To print/scan values of this type as integer, use
- * %G_GINT32_MODIFIER and/or %G_GUINT32_FORMAT.
- *
- * The notation to express a Unicode code point in running text is
- * as a hexadecimal number with four to six digits and uppercase
- * letters, prefixed by the string "U+". Leading zeros are omitted,
- * unless the code point would have fewer than four hexadecimal digits.
- * For example, "U+0041 LATIN CAPITAL LETTER A". To print a code point
- * in the U+-notation, use the format string "U+\%04"G_GINT32_FORMAT"X".
- * To scan, use the format string "U+\%06"G_GINT32_FORMAT"X".
- *
- * |[
- * gunichar c;
- * sscanf ("U+0041", "U+%06"G_GINT32_FORMAT"X", &amp;c)
- * g_print ("Read U+%04"G_GINT32_FORMAT"X", c);
- * ]|
- */
-
-
-/**
- * gunichar2:
- *
- * A type which can hold any UTF-16 code
- * point<footnote id="utf16_surrogate_pairs">UTF-16 also has so called
- * <firstterm>surrogate pairs</firstterm> to encode characters beyond
- * the BMP as pairs of 16bit numbers. Surrogate pairs cannot be stored
- * in a single gunichar2 field, but all GLib functions accepting gunichar2
- * arrays will correctly interpret surrogate pairs.</footnote>.
- *
- * To print/scan values of this type to/from text you need to convert
- * to/from UTF-8, using g_utf16_to_utf8()/g_utf8_to_utf16().
- *
- * To print/scan values of this type as integer, use
- * %G_GINT16_MODIFIER and/or %G_GUINT16_FORMAT.
- */
-
-
 
 /************************************************************/
 /* THIS FILE IS GENERATED DO NOT EDIT */



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