[glibmm/mkolny/use-mmgirgenerator] Generate functions for GLib module



commit 6c1dbd4c3bf624e876d5a1e59f711fe010c69f80
Author: Marcin Kolny <marcin kolny gmail com>
Date:   Sat Nov 5 19:04:35 2016 +0100

    Generate functions for GLib module

 gio/src/gio_signals.defs                  |  200 +-
 gio/src/gio_signals.defs.patch            |   17 +-
 gio/src/gio_vfuncs.defs                   | 1996 ++--
 gio/src/gio_vfuncs.defs.patch             |   24 +-
 glib/src/glib_functions.defs              |21293 ++++++++++++++++-------------
 glib/src/glib_functions.defs.patch        |   95 +-
 glib/src/glib_signals.defs                |    2 +-
 glib/src/glib_vfuncs.defs                 |   26 +-
 glib/src/iochannel.hg                     |    6 +-
 glib/src/variant.hg                       |    3 -
 glib/src/varianttype.hg                   |    4 -
 tools/gen_scripts/glibmm_generate_defs.sh |    6 +
 12 files changed, 12867 insertions(+), 10805 deletions(-)
---
diff --git a/gio/src/gio_signals.defs b/gio/src/gio_signals.defs
index f79bfb9..77084e8 100644
--- a/gio/src/gio_signals.defs
+++ b/gio/src/gio_signals.defs
@@ -9,7 +9,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "startup_notify_id")
+    '("gchar*" "startup_notify_id")
   )
 )
 
@@ -18,8 +18,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GAppInfo*" "info")
-   '("GVariant*" "platform_data")
+    '("GAppInfo*" "info")
+    '("GVariant*" "platform_data")
   )
 )
 
@@ -34,7 +34,7 @@
   (return-type "gint")
   (when "last")
   (parameters
-   '("GApplicationCommandLine*" "command_line")
+    '("GApplicationCommandLine*" "command_line")
   )
 )
 
@@ -43,7 +43,7 @@
   (return-type "gint")
   (when "last")
   (parameters
-   '("GVariantDict*" "options")
+    '("GVariantDict*" "options")
   )
 )
 
@@ -52,9 +52,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("gpointer" "files")
-   '("gint" "n_files")
-   '("const-gchar*" "hint")
+    '("gpointer" "files")
+    '("gint" "n_files")
+    '("gchar*" "hint")
   )
 )
 
@@ -81,7 +81,7 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("const-gchar*" "mechanism")
+    '("const-gchar*" "mechanism")
   )
 )
 
@@ -90,8 +90,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GIOStream*" "stream")
-   '("GCredentials*" "credentials")
+    '("GIOStream*" "stream")
+    '("GCredentials*" "credentials")
   )
 )
 
@@ -100,8 +100,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("gboolean" "remote_peer_vanished")
-   '("GError*" "error")
+    '("gboolean" "remote_peer_vanished")
+    '("GError*" "error")
   )
 )
 
@@ -110,7 +110,7 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GDBusMethodInvocation*" "invocation")
+    '("GDBusMethodInvocation*" "invocation")
   )
 )
 
@@ -119,10 +119,10 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusObjectProxy*" "object_proxy")
-   '("GDBusProxy*" "interface_proxy")
-   '("GVariant*" "changed_properties")
-   '("gchar**" "invalidated_properties")
+    '("GDBusObjectProxy*" "object_proxy")
+    '("GDBusProxy*" "interface_proxy")
+    '("GVariant*" "changed_properties")
+    '("gchar**" "invalidated_properties")
   )
 )
 
@@ -131,11 +131,11 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusObjectProxy*" "object_proxy")
-   '("GDBusProxy*" "interface_proxy")
-   '("const-gchar*" "sender_name")
-   '("const-gchar*" "signal_name")
-   '("GVariant*" "parameters")
+    '("GDBusObjectProxy*" "object_proxy")
+    '("GDBusProxy*" "interface_proxy")
+    '("gchar*" "sender_name")
+    '("gchar*" "signal_name")
+    '("GVariant*" "parameters")
   )
 )
 
@@ -144,8 +144,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GDBusInterfaceSkeleton*" "interface")
-   '("GDBusMethodInvocation*" "invocation")
+    '("GDBusInterfaceSkeleton*" "interface")
+    '("GDBusMethodInvocation*" "invocation")
   )
 )
 
@@ -154,8 +154,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GVariant*" "changed_properties")
-   '("gchar**" "invalidated_properties")
+    '("GVariant*" "changed_properties")
+    '("gchar**" "invalidated_properties")
   )
 )
 
@@ -164,9 +164,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "sender_name")
-   '("const-gchar*" "signal_name")
-   '("GVariant*" "parameters")
+    '("gchar*" "sender_name")
+    '("gchar*" "signal_name")
+    '("GVariant*" "parameters")
   )
 )
 
@@ -175,7 +175,7 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GDBusConnection*" "connection")
+    '("GDBusConnection*" "connection")
   )
 )
 
@@ -184,9 +184,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GFile*" "file")
-   '("GFile*" "other_file")
-   '("GFileMonitorEvent" "event_type")
+    '("GFile*" "file")
+    '("GFile*" "other_file")
+    '("GFileMonitorEvent" "event_type")
   )
 )
 
@@ -201,9 +201,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("gint" "position")
-   '("gint" "removed")
-   '("gint" "added")
+    '("gint" "position")
+    '("gint" "removed")
+    '("gint" "added")
   )
 )
 
@@ -218,10 +218,10 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "message")
-   '("const-gchar*" "default_user")
-   '("const-gchar*" "default_domain")
-   '("GAskPasswordFlags" "flags")
+    '("gchar*" "message")
+    '("gchar*" "default_user")
+    '("gchar*" "default_domain")
+    '("GAskPasswordFlags" "flags")
   )
 )
 
@@ -230,8 +230,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "message")
-   '("const-gchar**" "choices")
+    '("gchar*" "message")
+    '("gchar**" "choices")
   )
 )
 
@@ -240,7 +240,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GMountOperationResult" "result")
+    '("GMountOperationResult" "result")
   )
 )
 
@@ -249,9 +249,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "message")
-   '("GArray*" "processes")
-   '("const-gchar**" "choices")
+    '("gchar*" "message")
+    '("GArray*" "processes")
+    '("gchar**" "choices")
   )
 )
 
@@ -260,9 +260,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "message")
-   '("gint64" "time_left")
-   '("gint64" "bytes_left")
+    '("gchar*" "message")
+    '("gint64" "time_left")
+    '("gint64" "bytes_left")
   )
 )
 
@@ -277,8 +277,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("gpointer" "keys")
-   '("gint" "n_keys")
+    '("gpointer" "keys")
+    '("gint" "n_keys")
   )
 )
 
@@ -287,7 +287,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "key")
+    '("gchar*" "key")
   )
 )
 
@@ -296,7 +296,7 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("guint" "key")
+    '("guint" "key")
   )
 )
 
@@ -305,7 +305,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "key")
+    '("gchar*" "key")
   )
 )
 
@@ -314,7 +314,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GVariant*" "parameter")
+    '("GVariant*" "parameter")
   )
 )
 
@@ -323,7 +323,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GVariant*" "value")
+    '("GVariant*" "value")
   )
 )
 
@@ -332,9 +332,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GSocketClientEvent" "event")
-   '("GSocketConnectable*" "connectable")
-   '("GIOStream*" "connection")
+    '("GSocketClientEvent" "event")
+    '("GSocketConnectable*" "connectable")
+    '("GIOStream*" "connection")
   )
 )
 
@@ -343,8 +343,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GSocketListenerEvent" "event")
-   '("GSocket*" "socket")
+    '("GSocketListenerEvent" "event")
+    '("GSocket*" "socket")
   )
 )
 
@@ -353,8 +353,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GSocketConnection*" "connection")
-   '("GObject*" "source_object")
+    '("GSocketConnection*" "connection")
+    '("GObject*" "source_object")
   )
 )
 
@@ -363,8 +363,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GSocketConnection*" "connection")
-   '("GObject*" "source_object")
+    '("GSocketConnection*" "connection")
+    '("GObject*" "source_object")
   )
 )
 
@@ -373,8 +373,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GTlsCertificate*" "peer_cert")
-   '("GTlsCertificateFlags" "errors")
+    '("GTlsCertificate*" "peer_cert")
+    '("GTlsCertificateFlags" "errors")
   )
 )
 
@@ -395,7 +395,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -404,7 +404,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -413,7 +413,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -422,7 +422,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -431,7 +431,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -440,7 +440,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -449,7 +449,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -458,7 +458,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -467,7 +467,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -476,7 +476,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GVolume*" "volume")
+    '("GVolume*" "volume")
   )
 )
 
@@ -485,7 +485,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GVolume*" "volume")
+    '("GVolume*" "volume")
   )
 )
 
@@ -494,7 +494,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GVolume*" "volume")
+    '("GVolume*" "volume")
   )
 )
 
@@ -503,7 +503,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "action_name")
+    '("gchar*" "action_name")
   )
 )
 
@@ -512,8 +512,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "action_name")
-   '("gboolean" "enabled")
+    '("gchar*" "action_name")
+    '("gboolean" "enabled")
   )
 )
 
@@ -522,7 +522,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "action_name")
+    '("gchar*" "action_name")
   )
 )
 
@@ -531,8 +531,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("const-gchar*" "action_name")
-   '("GVariant*" "value")
+    '("gchar*" "action_name")
+    '("GVariant*" "value")
   )
 )
 
@@ -541,7 +541,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusInterface*" "interface")
+    '("GDBusInterface*" "interface")
   )
 )
 
@@ -550,7 +550,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusInterface*" "interface")
+    '("GDBusInterface*" "interface")
   )
 )
 
@@ -559,8 +559,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusObject*" "object")
-   '("GDBusInterface*" "interface")
+    '("GDBusObject*" "object")
+    '("GDBusInterface*" "interface")
   )
 )
 
@@ -569,8 +569,8 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusObject*" "object")
-   '("GDBusInterface*" "interface")
+    '("GDBusObject*" "object")
+    '("GDBusInterface*" "interface")
   )
 )
 
@@ -579,7 +579,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusObject*" "object")
+    '("GDBusObject*" "object")
   )
 )
 
@@ -588,7 +588,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("GDBusObject*" "object")
+    '("GDBusObject*" "object")
   )
 )
 
@@ -621,8 +621,8 @@
   (return-type "gboolean")
   (when "last")
   (parameters
-   '("GTlsCertificate*" "peer_cert")
-   '("GTlsCertificateFlags" "errors")
+    '("GTlsCertificate*" "peer_cert")
+    '("GTlsCertificateFlags" "errors")
   )
 )
 
@@ -631,9 +631,9 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("guint" "position")
-   '("guint" "removed")
-   '("guint" "added")
+    '("guint" "position")
+    '("guint" "removed")
+    '("guint" "added")
   )
 )
 
@@ -660,7 +660,7 @@
   (return-type "void")
   (when "last")
   (parameters
-   '("gboolean" "available")
+    '("gboolean" "available")
   )
 )
 
diff --git a/gio/src/gio_signals.defs.patch b/gio/src/gio_signals.defs.patch
index c0e410d..72a8809 100644
--- a/gio/src/gio_signals.defs.patch
+++ b/gio/src/gio_signals.defs.patch
@@ -1,19 +1,10 @@
 --- gio_signals.defs
 +++ gio_signals.defs
-@@ -231,7 +231,7 @@
+@@ -81,7 +81,7 @@
+   (return-type "gboolean")
    (when "last")
    (parameters
-    '("const-gchar*" "message")
-+   '("const-gchar**" "choices")
--   '("gchar**" "choices")
-   )
- )
- 
-@@ -251,7 +251,7 @@
-   (parameters
-    '("const-gchar*" "message")
-    '("GArray*" "processes")
-+   '("const-gchar**" "choices")
--   '("gchar**" "choices")
+-    '("gchar*" "mechanism")
++    '("const-gchar*" "mechanism")
    )
  )
diff --git a/gio/src/gio_vfuncs.defs b/gio/src/gio_vfuncs.defs
index f1f1849..13baa7c 100644
--- a/gio/src/gio_vfuncs.defs
+++ b/gio/src/gio_vfuncs.defs
@@ -2,8 +2,8 @@
   (of-object "GAppLaunchContext")
   (return-type "char*")
   (parameters
-   '("GAppInfo*" "info")
-   '("GList*" "files")
+    '("GAppInfo*" "info")
+    '("GList*" "files")
   )
 )
 
@@ -11,8 +11,8 @@
   (of-object "GAppLaunchContext")
   (return-type "char*")
   (parameters
-   '("GAppInfo*" "info")
-   '("GList*" "files")
+    '("GAppInfo*" "info")
+    '("GList*" "files")
   )
 )
 
@@ -20,7 +20,7 @@
   (of-object "GAppLaunchContext")
   (return-type "void")
   (parameters
-   '("const-char*" "startup_notify_id")
+    '("const-char*" "startup_notify_id")
   )
 )
 
@@ -28,8 +28,8 @@
   (of-object "GAppLaunchContext")
   (return-type "void")
   (parameters
-   '("GAppInfo*" "info")
-   '("GVariant*" "platform_data")
+    '("GAppInfo*" "info")
+    '("GVariant*" "platform_data")
   )
 )
 
@@ -42,7 +42,7 @@
   (of-object "GApplication")
   (return-type "void")
   (parameters
-   '("GVariantBuilder*" "builder")
+    '("GVariantBuilder*" "builder")
   )
 )
 
@@ -50,7 +50,7 @@
   (of-object "GApplication")
   (return-type "void")
   (parameters
-   '("GVariant*" "platform_data")
+    '("GVariant*" "platform_data")
   )
 )
 
@@ -58,7 +58,7 @@
   (of-object "GApplication")
   (return-type "void")
   (parameters
-   '("GVariant*" "platform_data")
+    '("GVariant*" "platform_data")
   )
 )
 
@@ -66,7 +66,7 @@
   (of-object "GApplication")
   (return-type "int")
   (parameters
-   '("GApplicationCommandLine*" "command_line")
+    '("GApplicationCommandLine*" "command_line")
   )
 )
 
@@ -74,9 +74,9 @@
   (of-object "GApplication")
   (return-type "gboolean")
   (parameters
-   '("GDBusConnection*" "connection")
-   '("const-gchar*" "object_path")
-   '("GError**" "error")
+    '("GDBusConnection*" "connection")
+    '("const-gchar*" "object_path")
+    '("GError**" "error")
   )
 )
 
@@ -84,8 +84,8 @@
   (of-object "GApplication")
   (return-type "void")
   (parameters
-   '("GDBusConnection*" "connection")
-   '("const-gchar*" "object_path")
+    '("GDBusConnection*" "connection")
+    '("const-gchar*" "object_path")
   )
 )
 
@@ -93,7 +93,7 @@
   (of-object "GApplication")
   (return-type "gint")
   (parameters
-   '("GVariantDict*" "options")
+    '("GVariantDict*" "options")
   )
 )
 
@@ -101,8 +101,8 @@
   (of-object "GApplication")
   (return-type "gboolean")
   (parameters
-   '("gchar***" "arguments")
-   '("int*" "exit_status")
+    '("gchar***" "arguments")
+    '("int*" "exit_status")
   )
 )
 
@@ -110,9 +110,9 @@
   (of-object "GApplication")
   (return-type "void")
   (parameters
-   '("GFile**" "files")
-   '("gint" "n_files")
-   '("const-gchar*" "hint")
+    '("GFile**" "files")
+    '("gint" "n_files")
+    '("const-gchar*" "hint")
   )
 )
 
@@ -145,7 +145,7 @@
   (of-object "GApplicationCommandLine")
   (return-type "void")
   (parameters
-   '("const-gchar*" "message")
+    '("const-gchar*" "message")
   )
 )
 
@@ -153,7 +153,7 @@
   (of-object "GApplicationCommandLine")
   (return-type "void")
   (parameters
-   '("const-gchar*" "message")
+    '("const-gchar*" "message")
   )
 )
 
@@ -161,9 +161,9 @@
   (of-object "GBufferedInputStream")
   (return-type "gssize")
   (parameters
-   '("gssize" "count")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("gssize" "count")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -171,11 +171,11 @@
   (of-object "GBufferedInputStream")
   (return-type "void")
   (parameters
-   '("gssize" "count")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("gssize" "count")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -183,8 +183,8 @@
   (of-object "GBufferedInputStream")
   (return-type "gssize")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -202,7 +202,7 @@
   (of-object "GDBusInterfaceSkeleton")
   (return-type "gboolean")
   (parameters
-   '("GDBusMethodInvocation*" "invocation")
+    '("GDBusMethodInvocation*" "invocation")
   )
 )
 
@@ -225,10 +225,10 @@
   (of-object "GDBusObjectManagerClient")
   (return-type "void")
   (parameters
-   '("GDBusObjectProxy*" "object_proxy")
-   '("GDBusProxy*" "interface_proxy")
-   '("GVariant*" "changed_properties")
-   '("const-gchar*const*" "invalidated_properties")
+    '("GDBusObjectProxy*" "object_proxy")
+    '("GDBusProxy*" "interface_proxy")
+    '("GVariant*" "changed_properties")
+    '("const-gchar*const*" "invalidated_properties")
   )
 )
 
@@ -236,11 +236,11 @@
   (of-object "GDBusObjectManagerClient")
   (return-type "void")
   (parameters
-   '("GDBusObjectProxy*" "object_proxy")
-   '("GDBusProxy*" "interface_proxy")
-   '("const-gchar*" "sender_name")
-   '("const-gchar*" "signal_name")
-   '("GVariant*" "parameters")
+    '("GDBusObjectProxy*" "object_proxy")
+    '("GDBusProxy*" "interface_proxy")
+    '("const-gchar*" "sender_name")
+    '("const-gchar*" "signal_name")
+    '("GVariant*" "parameters")
   )
 )
 
@@ -248,8 +248,8 @@
   (of-object "GDBusObjectSkeleton")
   (return-type "gboolean")
   (parameters
-   '("GDBusInterfaceSkeleton*" "interface_")
-   '("GDBusMethodInvocation*" "invocation")
+    '("GDBusInterfaceSkeleton*" "interface_")
+    '("GDBusMethodInvocation*" "invocation")
   )
 )
 
@@ -257,8 +257,8 @@
   (of-object "GDBusProxy")
   (return-type "void")
   (parameters
-   '("GVariant*" "changed_properties")
-   '("const-gchar*const*" "invalidated_properties")
+    '("GVariant*" "changed_properties")
+    '("const-gchar*const*" "invalidated_properties")
   )
 )
 
@@ -266,9 +266,9 @@
   (of-object "GDBusProxy")
   (return-type "void")
   (parameters
-   '("const-gchar*" "sender_name")
-   '("const-gchar*" "signal_name")
-   '("GVariant*" "parameters")
+    '("const-gchar*" "sender_name")
+    '("const-gchar*" "signal_name")
+    '("GVariant*" "parameters")
   )
 )
 
@@ -276,10 +276,10 @@
   (of-object "GFileEnumerator")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -287,8 +287,8 @@
   (of-object "GFileEnumerator")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -296,8 +296,8 @@
   (of-object "GFileEnumerator")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -305,8 +305,8 @@
   (of-object "GFileEnumerator")
   (return-type "GFileInfo*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -314,11 +314,11 @@
   (of-object "GFileEnumerator")
   (return-type "void")
   (parameters
-   '("int" "num_files")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "num_files")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -326,8 +326,8 @@
   (of-object "GFileEnumerator")
   (return-type "GList*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -350,9 +350,9 @@
   (of-object "GFileIOStream")
   (return-type "GFileInfo*")
   (parameters
-   '("const-char*" "attributes")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attributes")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -360,11 +360,11 @@
   (of-object "GFileIOStream")
   (return-type "void")
   (parameters
-   '("const-char*" "attributes")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "attributes")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -372,8 +372,8 @@
   (of-object "GFileIOStream")
   (return-type "GFileInfo*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -381,10 +381,10 @@
   (of-object "GFileIOStream")
   (return-type "gboolean")
   (parameters
-   '("goffset" "offset")
-   '("GSeekType" "type")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "offset")
+    '("GSeekType" "type")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -397,9 +397,9 @@
   (of-object "GFileIOStream")
   (return-type "gboolean")
   (parameters
-   '("goffset" "size")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "size")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -412,9 +412,9 @@
   (of-object "GFileInputStream")
   (return-type "GFileInfo*")
   (parameters
-   '("const-char*" "attributes")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attributes")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -422,11 +422,11 @@
   (of-object "GFileInputStream")
   (return-type "void")
   (parameters
-   '("const-char*" "attributes")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "attributes")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -434,8 +434,8 @@
   (of-object "GFileInputStream")
   (return-type "GFileInfo*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -443,10 +443,10 @@
   (of-object "GFileInputStream")
   (return-type "gboolean")
   (parameters
-   '("goffset" "offset")
-   '("GSeekType" "type")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "offset")
+    '("GSeekType" "type")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -464,9 +464,9 @@
   (of-object "GFileMonitor")
   (return-type "void")
   (parameters
-   '("GFile*" "file")
-   '("GFile*" "other_file")
-   '("GFileMonitorEvent" "event_type")
+    '("GFile*" "file")
+    '("GFile*" "other_file")
+    '("GFileMonitorEvent" "event_type")
   )
 )
 
@@ -489,9 +489,9 @@
   (of-object "GFileOutputStream")
   (return-type "GFileInfo*")
   (parameters
-   '("const-char*" "attributes")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attributes")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -499,11 +499,11 @@
   (of-object "GFileOutputStream")
   (return-type "void")
   (parameters
-   '("const-char*" "attributes")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "attributes")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -511,8 +511,8 @@
   (of-object "GFileOutputStream")
   (return-type "GFileInfo*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -520,10 +520,10 @@
   (of-object "GFileOutputStream")
   (return-type "gboolean")
   (parameters
-   '("goffset" "offset")
-   '("GSeekType" "type")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "offset")
+    '("GSeekType" "type")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -536,9 +536,9 @@
   (of-object "GFileOutputStream")
   (return-type "gboolean")
   (parameters
-   '("goffset" "size")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "size")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -551,10 +551,10 @@
   (of-object "GIOStream")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -562,8 +562,8 @@
   (of-object "GIOStream")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -571,8 +571,8 @@
   (of-object "GIOStream")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -600,10 +600,10 @@
   (of-object "GInputStream")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -611,8 +611,8 @@
   (of-object "GInputStream")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -620,8 +620,8 @@
   (of-object "GInputStream")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -629,12 +629,12 @@
   (of-object "GInputStream")
   (return-type "void")
   (parameters
-   '("void*" "buffer")
-   '("gsize" "count")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("void*" "buffer")
+    '("gsize" "count")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -642,8 +642,8 @@
   (of-object "GInputStream")
   (return-type "gssize")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -651,10 +651,10 @@
   (of-object "GInputStream")
   (return-type "gssize")
   (parameters
-   '("void*" "buffer")
-   '("gsize" "count")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("void*" "buffer")
+    '("gsize" "count")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -662,9 +662,9 @@
   (of-object "GInputStream")
   (return-type "gssize")
   (parameters
-   '("gsize" "count")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("gsize" "count")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -672,11 +672,11 @@
   (of-object "GInputStream")
   (return-type "void")
   (parameters
-   '("gsize" "count")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("gsize" "count")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -684,8 +684,8 @@
   (of-object "GInputStream")
   (return-type "gssize")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -693,8 +693,8 @@
   (of-object "GMenuAttributeIter")
   (return-type "gboolean")
   (parameters
-   '("const-gchar**" "out_name")
-   '("GVariant**" "value")
+    '("const-gchar**" "out_name")
+    '("GVariant**" "value")
   )
 )
 
@@ -702,8 +702,8 @@
   (of-object "GMenuLinkIter")
   (return-type "gboolean")
   (parameters
-   '("const-gchar**" "out_link")
-   '("GMenuModel**" "value")
+    '("const-gchar**" "out_link")
+    '("GMenuModel**" "value")
   )
 )
 
@@ -711,9 +711,9 @@
   (of-object "GMenuModel")
   (return-type "GVariant*")
   (parameters
-   '("gint" "item_index")
-   '("const-gchar*" "attribute")
-   '("const-GVariantType*" "expected_type")
+    '("gint" "item_index")
+    '("const-gchar*" "attribute")
+    '("const-GVariantType*" "expected_type")
   )
 )
 
@@ -721,8 +721,8 @@
   (of-object "GMenuModel")
   (return-type "void")
   (parameters
-   '("gint" "item_index")
-   '("GHashTable**" "attributes")
+    '("gint" "item_index")
+    '("GHashTable**" "attributes")
   )
 )
 
@@ -730,8 +730,8 @@
   (of-object "GMenuModel")
   (return-type "GMenuModel*")
   (parameters
-   '("gint" "item_index")
-   '("const-gchar*" "link")
+    '("gint" "item_index")
+    '("const-gchar*" "link")
   )
 )
 
@@ -739,8 +739,8 @@
   (of-object "GMenuModel")
   (return-type "void")
   (parameters
-   '("gint" "item_index")
-   '("GHashTable**" "links")
+    '("gint" "item_index")
+    '("GHashTable**" "links")
   )
 )
 
@@ -758,7 +758,7 @@
   (of-object "GMenuModel")
   (return-type "GMenuAttributeIter*")
   (parameters
-   '("gint" "item_index")
+    '("gint" "item_index")
   )
 )
 
@@ -766,7 +766,7 @@
   (of-object "GMenuModel")
   (return-type "GMenuLinkIter*")
   (parameters
-   '("gint" "item_index")
+    '("gint" "item_index")
   )
 )
 
@@ -779,10 +779,10 @@
   (of-object "GMountOperation")
   (return-type "void")
   (parameters
-   '("const-char*" "message")
-   '("const-char*" "default_user")
-   '("const-char*" "default_domain")
-   '("GAskPasswordFlags" "flags")
+    '("const-char*" "message")
+    '("const-char*" "default_user")
+    '("const-char*" "default_domain")
+    '("GAskPasswordFlags" "flags")
   )
 )
 
@@ -790,8 +790,8 @@
   (of-object "GMountOperation")
   (return-type "void")
   (parameters
-   '("const-char*" "message")
-   '("const-gchar**" "choices")
+    '("const-char*" "message")
+    '("const-gchar**" "choices")
   )
 )
 
@@ -799,7 +799,7 @@
   (of-object "GMountOperation")
   (return-type "void")
   (parameters
-   '("GMountOperationResult" "result")
+    '("GMountOperationResult" "result")
   )
 )
 
@@ -807,9 +807,9 @@
   (of-object "GMountOperation")
   (return-type "void")
   (parameters
-   '("const-gchar*" "message")
-   '("GArray*" "processes")
-   '("const-gchar*" "choices")
+    '("const-gchar*" "message")
+    '("GArray*" "processes")
+    '("const-gchar*" "choices")
   )
 )
 
@@ -817,9 +817,9 @@
   (of-object "GMountOperation")
   (return-type "void")
   (parameters
-   '("const-gchar*" "message")
-   '("gint64" "time_left")
-   '("gint64" "bytes_left")
+    '("const-gchar*" "message")
+    '("gint64" "time_left")
+    '("gint64" "bytes_left")
   )
 )
 
@@ -827,10 +827,10 @@
   (of-object "GOutputStream")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -838,8 +838,8 @@
   (of-object "GOutputStream")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -847,8 +847,8 @@
   (of-object "GOutputStream")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -856,8 +856,8 @@
   (of-object "GOutputStream")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -865,10 +865,10 @@
   (of-object "GOutputStream")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -876,8 +876,8 @@
   (of-object "GOutputStream")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -885,10 +885,10 @@
   (of-object "GOutputStream")
   (return-type "gssize")
   (parameters
-   '("GInputStream*" "source")
-   '("GOutputStreamSpliceFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GInputStream*" "source")
+    '("GOutputStreamSpliceFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -896,12 +896,12 @@
   (of-object "GOutputStream")
   (return-type "void")
   (parameters
-   '("GInputStream*" "source")
-   '("GOutputStreamSpliceFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GInputStream*" "source")
+    '("GOutputStreamSpliceFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -909,8 +909,8 @@
   (of-object "GOutputStream")
   (return-type "gssize")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -918,12 +918,12 @@
   (of-object "GOutputStream")
   (return-type "void")
   (parameters
-   '("void*" "buffer")
-   '("gsize" "count")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("void*" "buffer")
+    '("gsize" "count")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -931,8 +931,8 @@
   (of-object "GOutputStream")
   (return-type "gssize")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -940,10 +940,10 @@
   (of-object "GOutputStream")
   (return-type "gssize")
   (parameters
-   '("void*" "buffer")
-   '("gsize" "count")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("void*" "buffer")
+    '("gsize" "count")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -951,8 +951,8 @@
   (of-object "GPermission")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -960,9 +960,9 @@
   (of-object "GPermission")
   (return-type "void")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -970,8 +970,8 @@
   (of-object "GPermission")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -979,8 +979,8 @@
   (of-object "GPermission")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -988,9 +988,9 @@
   (of-object "GPermission")
   (return-type "void")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -998,8 +998,8 @@
   (of-object "GPermission")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1007,9 +1007,9 @@
   (of-object "GResolver")
   (return-type "gchar*")
   (parameters
-   '("GInetAddress*" "address")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GInetAddress*" "address")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1017,10 +1017,10 @@
   (of-object "GResolver")
   (return-type "void")
   (parameters
-   '("GInetAddress*" "address")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GInetAddress*" "address")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1028,8 +1028,8 @@
   (of-object "GResolver")
   (return-type "gchar*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1037,9 +1037,9 @@
   (of-object "GResolver")
   (return-type "GList*")
   (parameters
-   '("const-gchar*" "hostname")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-gchar*" "hostname")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1047,10 +1047,10 @@
   (of-object "GResolver")
   (return-type "void")
   (parameters
-   '("const-gchar*" "hostname")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-gchar*" "hostname")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1058,8 +1058,8 @@
   (of-object "GResolver")
   (return-type "GList*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1067,10 +1067,10 @@
   (of-object "GResolver")
   (return-type "GList*")
   (parameters
-   '("const-gchar*" "rrname")
-   '("GResolverRecordType" "record_type")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-gchar*" "rrname")
+    '("GResolverRecordType" "record_type")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1078,11 +1078,11 @@
   (of-object "GResolver")
   (return-type "void")
   (parameters
-   '("const-gchar*" "rrname")
-   '("GResolverRecordType" "record_type")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-gchar*" "rrname")
+    '("GResolverRecordType" "record_type")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1090,8 +1090,8 @@
   (of-object "GResolver")
   (return-type "GList*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1099,9 +1099,9 @@
   (of-object "GResolver")
   (return-type "GList*")
   (parameters
-   '("const-gchar*" "rrname")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-gchar*" "rrname")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1109,10 +1109,10 @@
   (of-object "GResolver")
   (return-type "void")
   (parameters
-   '("const-gchar*" "rrname")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-gchar*" "rrname")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1120,8 +1120,8 @@
   (of-object "GResolver")
   (return-type "GList*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1134,8 +1134,8 @@
   (of-object "GSettings")
   (return-type "gboolean")
   (parameters
-   '("const-GQuark*" "keys")
-   '("gint" "n_keys")
+    '("const-GQuark*" "keys")
+    '("gint" "n_keys")
   )
 )
 
@@ -1143,7 +1143,7 @@
   (of-object "GSettings")
   (return-type "void")
   (parameters
-   '("const-gchar*" "key")
+    '("const-gchar*" "key")
   )
 )
 
@@ -1151,7 +1151,7 @@
   (of-object "GSettings")
   (return-type "gboolean")
   (parameters
-   '("GQuark" "key")
+    '("GQuark" "key")
   )
 )
 
@@ -1159,7 +1159,7 @@
   (of-object "GSettings")
   (return-type "void")
   (parameters
-   '("const-gchar*" "key")
+    '("const-gchar*" "key")
   )
 )
 
@@ -1177,9 +1177,9 @@
   (of-object "GSocketAddress")
   (return-type "gboolean")
   (parameters
-   '("gpointer" "dest")
-   '("gsize" "destlen")
-   '("GError**" "error")
+    '("gpointer" "dest")
+    '("gsize" "destlen")
+    '("GError**" "error")
   )
 )
 
@@ -1187,8 +1187,8 @@
   (of-object "GSocketAddressEnumerator")
   (return-type "GSocketAddress*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1196,9 +1196,9 @@
   (of-object "GSocketAddressEnumerator")
   (return-type "void")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1206,8 +1206,8 @@
   (of-object "GSocketAddressEnumerator")
   (return-type "GSocketAddress*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1215,9 +1215,9 @@
   (of-object "GSocketClient")
   (return-type "void")
   (parameters
-   '("GSocketClientEvent" "event")
-   '("GSocketConnectable*" "connectable")
-   '("GIOStream*" "connection")
+    '("GSocketClientEvent" "event")
+    '("GSocketConnectable*" "connectable")
+    '("GIOStream*" "connection")
   )
 )
 
@@ -1240,7 +1240,7 @@
   (of-object "GSocketControlMessage")
   (return-type "void")
   (parameters
-   '("gpointer" "data")
+    '("gpointer" "data")
   )
 )
 
@@ -1253,8 +1253,8 @@
   (of-object "GSocketListener")
   (return-type "void")
   (parameters
-   '("GSocketListenerEvent*" "event")
-   '("GSocket*" "socket")
+    '("GSocketListenerEvent*" "event")
+    '("GSocket*" "socket")
   )
 )
 
@@ -1262,8 +1262,8 @@
   (of-object "GSocketService")
   (return-type "gboolean")
   (parameters
-   '("GSocketConnection*" "connection")
-   '("GObject*" "source_object")
+    '("GSocketConnection*" "connection")
+    '("GObject*" "source_object")
   )
 )
 
@@ -1271,8 +1271,8 @@
   (of-object "GThreadedSocketService")
   (return-type "gboolean")
   (parameters
-   '("GSocketConnection*" "connection")
-   '("GObject*" "source_object")
+    '("GSocketConnection*" "connection")
+    '("GObject*" "source_object")
   )
 )
 
@@ -1280,8 +1280,8 @@
   (of-object "GTlsCertificate")
   (return-type "GTlsCertificateFlags")
   (parameters
-   '("GSocketConnectable*" "identity")
-   '("GTlsCertificate*" "trusted_ca")
+    '("GSocketConnectable*" "identity")
+    '("GTlsCertificate*" "trusted_ca")
   )
 )
 
@@ -1289,8 +1289,8 @@
   (of-object "GTlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GTlsCertificate*" "peer_cert")
-   '("GTlsCertificateFlags" "errors")
+    '("GTlsCertificate*" "peer_cert")
+    '("GTlsCertificateFlags" "errors")
   )
 )
 
@@ -1298,8 +1298,8 @@
   (of-object "GTlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1307,10 +1307,10 @@
   (of-object "GTlsConnection")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1318,8 +1318,8 @@
   (of-object "GTlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1327,7 +1327,7 @@
   (of-object "GTlsDatabase")
   (return-type "gchar*")
   (parameters
-   '("GTlsCertificate*" "certificate")
+    '("GTlsCertificate*" "certificate")
   )
 )
 
@@ -1335,11 +1335,11 @@
   (of-object "GTlsDatabase")
   (return-type "GTlsCertificate*")
   (parameters
-   '("const-gchar*" "handle")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseLookupFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-gchar*" "handle")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1347,12 +1347,12 @@
   (of-object "GTlsDatabase")
   (return-type "void")
   (parameters
-   '("const-gchar*" "handle")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseLookupFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-gchar*" "handle")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1360,8 +1360,8 @@
   (of-object "GTlsDatabase")
   (return-type "GTlsCertificate*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1369,11 +1369,11 @@
   (of-object "GTlsDatabase")
   (return-type "GTlsCertificate*")
   (parameters
-   '("GTlsCertificate*" "certificate")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseLookupFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GTlsCertificate*" "certificate")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1381,12 +1381,12 @@
   (of-object "GTlsDatabase")
   (return-type "void")
   (parameters
-   '("GTlsCertificate*" "certificate")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseLookupFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GTlsCertificate*" "certificate")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1394,8 +1394,8 @@
   (of-object "GTlsDatabase")
   (return-type "GTlsCertificate*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1403,11 +1403,11 @@
   (of-object "GTlsDatabase")
   (return-type "GList*")
   (parameters
-   '("GByteArray*" "issuer_raw_dn")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseLookupFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GByteArray*" "issuer_raw_dn")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1415,12 +1415,12 @@
   (of-object "GTlsDatabase")
   (return-type "void")
   (parameters
-   '("GByteArray*" "issuer_raw_dn")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseLookupFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GByteArray*" "issuer_raw_dn")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1428,8 +1428,8 @@
   (of-object "GTlsDatabase")
   (return-type "GList*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1437,13 +1437,13 @@
   (of-object "GTlsDatabase")
   (return-type "GTlsCertificateFlags")
   (parameters
-   '("GTlsCertificate*" "chain")
-   '("const-gchar*" "purpose")
-   '("GSocketConnectable*" "identity")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseVerifyFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GTlsCertificate*" "chain")
+    '("const-gchar*" "purpose")
+    '("GSocketConnectable*" "identity")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseVerifyFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1451,14 +1451,14 @@
   (of-object "GTlsDatabase")
   (return-type "void")
   (parameters
-   '("GTlsCertificate*" "chain")
-   '("const-gchar*" "purpose")
-   '("GSocketConnectable*" "identity")
-   '("GTlsInteraction*" "interaction")
-   '("GTlsDatabaseVerifyFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GTlsCertificate*" "chain")
+    '("const-gchar*" "purpose")
+    '("GSocketConnectable*" "identity")
+    '("GTlsInteraction*" "interaction")
+    '("GTlsDatabaseVerifyFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1466,8 +1466,8 @@
   (of-object "GTlsDatabase")
   (return-type "GTlsCertificateFlags")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1475,9 +1475,9 @@
   (of-object "GTlsInteraction")
   (return-type "GTlsInteractionResult")
   (parameters
-   '("GTlsPassword*" "password")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GTlsPassword*" "password")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1485,10 +1485,10 @@
   (of-object "GTlsInteraction")
   (return-type "void")
   (parameters
-   '("GTlsPassword*" "password")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GTlsPassword*" "password")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1496,8 +1496,8 @@
   (of-object "GTlsInteraction")
   (return-type "GTlsInteractionResult")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1505,10 +1505,10 @@
   (of-object "GTlsInteraction")
   (return-type "GTlsInteractionResult")
   (parameters
-   '("GTlsConnection*" "connection")
-   '("GTlsCertificateRequestFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GTlsConnection*" "connection")
+    '("GTlsCertificateRequestFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1516,11 +1516,11 @@
   (of-object "GTlsInteraction")
   (return-type "void")
   (parameters
-   '("GTlsConnection*" "connection")
-   '("GTlsCertificateRequestFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GTlsConnection*" "connection")
+    '("GTlsCertificateRequestFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -1528,8 +1528,8 @@
   (of-object "GTlsInteraction")
   (return-type "GTlsInteractionResult")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -1542,7 +1542,7 @@
   (of-object "GTlsPassword")
   (return-type "const-guchar*")
   (parameters
-   '("gsize*" "length")
+    '("gsize*" "length")
   )
 )
 
@@ -1550,9 +1550,9 @@
   (of-object "GTlsPassword")
   (return-type "void")
   (parameters
-   '("guchar*" "value")
-   '("gssize" "length")
-   '("GDestroyNotify" "destroy")
+    '("guchar*" "value")
+    '("gssize" "length")
+    '("GDestroyNotify" "destroy")
   )
 )
 
@@ -1560,7 +1560,7 @@
   (of-object "GVfs")
   (return-type "void")
   (parameters
-   '("GFileAttributeInfoList*" "list")
+    '("GFileAttributeInfoList*" "list")
   )
 )
 
@@ -1568,7 +1568,7 @@
   (of-object "GVfs")
   (return-type "GIcon*")
   (parameters
-   '("GVariant*" "value")
+    '("GVariant*" "value")
   )
 )
 
@@ -1576,7 +1576,7 @@
   (of-object "GVfs")
   (return-type "GFile*")
   (parameters
-   '("const-char*" "path")
+    '("const-char*" "path")
   )
 )
 
@@ -1584,7 +1584,7 @@
   (of-object "GVfs")
   (return-type "GFile*")
   (parameters
-   '("const-char*" "uri")
+    '("const-char*" "uri")
   )
 )
 
@@ -1602,13 +1602,13 @@
   (of-object "GVfs")
   (return-type "void")
   (parameters
-   '("const-char*" "filename")
-   '("guint64" "device")
-   '("GFileAttributeMatcher*" "attribute_matcher")
-   '("GFileInfo*" "info")
-   '("GCancellable*" "cancellable")
-   '("gpointer*" "extra_data")
-   '("GDestroyNotify*" "free_extra_data")
+    '("const-char*" "filename")
+    '("guint64" "device")
+    '("GFileAttributeMatcher*" "attribute_matcher")
+    '("GFileInfo*" "info")
+    '("GCancellable*" "cancellable")
+    '("gpointer*" "extra_data")
+    '("GDestroyNotify*" "free_extra_data")
   )
 )
 
@@ -1616,8 +1616,8 @@
   (of-object "GVfs")
   (return-type "void")
   (parameters
-   '("const-char*" "source")
-   '("const-char*" "dest")
+    '("const-char*" "source")
+    '("const-char*" "dest")
   )
 )
 
@@ -1625,7 +1625,7 @@
   (of-object "GVfs")
   (return-type "void")
   (parameters
-   '("const-char*" "filename")
+    '("const-char*" "filename")
   )
 )
 
@@ -1633,11 +1633,11 @@
   (of-object "GVfs")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "filename")
-   '("GFileInfo*" "info")
-   '("GFileQueryInfoFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "filename")
+    '("GFileInfo*" "info")
+    '("GFileQueryInfoFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -1645,7 +1645,7 @@
   (of-object "GVfs")
   (return-type "GFile*")
   (parameters
-   '("const-char*" "parse_name")
+    '("const-char*" "parse_name")
   )
 )
 
@@ -1653,7 +1653,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -1661,7 +1661,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -1669,7 +1669,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -1677,7 +1677,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -1685,7 +1685,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GDrive*" "drive")
+    '("GDrive*" "drive")
   )
 )
 
@@ -1698,7 +1698,7 @@
   (of-object "GVolumeMonitor")
   (return-type "GMount*")
   (parameters
-   '("const-char*" "uuid")
+    '("const-char*" "uuid")
   )
 )
 
@@ -1711,7 +1711,7 @@
   (of-object "GVolumeMonitor")
   (return-type "GVolume*")
   (parameters
-   '("const-char*" "uuid")
+    '("const-char*" "uuid")
   )
 )
 
@@ -1724,7 +1724,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -1732,7 +1732,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -1740,7 +1740,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -1748,7 +1748,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GMount*" "mount")
+    '("GMount*" "mount")
   )
 )
 
@@ -1756,7 +1756,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GVolume*" "volume")
+    '("GVolume*" "volume")
   )
 )
 
@@ -1764,7 +1764,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GVolume*" "volume")
+    '("GVolume*" "volume")
   )
 )
 
@@ -1772,7 +1772,7 @@
   (of-object "GVolumeMonitor")
   (return-type "void")
   (parameters
-   '("GVolume*" "volume")
+    '("GVolume*" "volume")
   )
 )
 
@@ -1780,7 +1780,7 @@
   (of-object "GAction")
   (return-type "void")
   (parameters
-   '("GVariant*" "parameter")
+    '("GVariant*" "parameter")
   )
 )
 
@@ -1788,7 +1788,7 @@
   (of-object "GAction")
   (return-type "void")
   (parameters
-   '("GVariant*" "value")
+    '("GVariant*" "value")
   )
 )
 
@@ -1826,7 +1826,7 @@
   (of-object "GActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1834,8 +1834,8 @@
   (of-object "GActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
-   '("gboolean" "enabled")
+    '("const-gchar*" "action_name")
+    '("gboolean" "enabled")
   )
 )
 
@@ -1843,7 +1843,7 @@
   (of-object "GActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1851,8 +1851,8 @@
   (of-object "GActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
-   '("GVariant*" "state")
+    '("const-gchar*" "action_name")
+    '("GVariant*" "state")
   )
 )
 
@@ -1860,8 +1860,8 @@
   (of-object "GActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
-   '("GVariant*" "parameter")
+    '("const-gchar*" "action_name")
+    '("GVariant*" "parameter")
   )
 )
 
@@ -1869,8 +1869,8 @@
   (of-object "GActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
-   '("GVariant*" "value")
+    '("const-gchar*" "action_name")
+    '("GVariant*" "value")
   )
 )
 
@@ -1878,7 +1878,7 @@
   (of-object "GActionGroup")
   (return-type "gboolean")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1886,7 +1886,7 @@
   (of-object "GActionGroup")
   (return-type "const-GVariantType*")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1894,7 +1894,7 @@
   (of-object "GActionGroup")
   (return-type "GVariant*")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1902,7 +1902,7 @@
   (of-object "GActionGroup")
   (return-type "GVariant*")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1910,7 +1910,7 @@
   (of-object "GActionGroup")
   (return-type "const-GVariantType*")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1918,7 +1918,7 @@
   (of-object "GActionGroup")
   (return-type "gboolean")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1931,12 +1931,12 @@
   (of-object "GActionGroup")
   (return-type "gboolean")
   (parameters
-   '("const-gchar*" "action_name")
-   '("gboolean*" "enabled")
-   '("const-GVariantType**" "parameter_type")
-   '("const-GVariantType**" "state_type")
-   '("GVariant**" "state_hint")
-   '("GVariant**" "state")
+    '("const-gchar*" "action_name")
+    '("gboolean*" "enabled")
+    '("const-GVariantType**" "parameter_type")
+    '("const-GVariantType**" "state_type")
+    '("GVariant**" "state_hint")
+    '("GVariant**" "state")
   )
 )
 
@@ -1944,7 +1944,7 @@
   (of-object "GActionMap")
   (return-type "void")
   (parameters
-   '("GAction*" "action")
+    '("GAction*" "action")
   )
 )
 
@@ -1952,7 +1952,7 @@
   (of-object "GActionMap")
   (return-type "GAction*")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1960,7 +1960,7 @@
   (of-object "GActionMap")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
+    '("const-gchar*" "action_name")
   )
 )
 
@@ -1968,8 +1968,8 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "content_type")
-   '("GError**" "error")
+    '("const-char*" "content_type")
+    '("GError**" "error")
   )
 )
 
@@ -1997,7 +1997,7 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("GAppInfo*" "appinfo2")
+    '("GAppInfo*" "appinfo2")
   )
 )
 
@@ -2045,9 +2045,9 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("GList*" "files")
-   '("GAppLaunchContext*" "launch_context")
-   '("GError**" "error")
+    '("GList*" "files")
+    '("GAppLaunchContext*" "launch_context")
+    '("GError**" "error")
   )
 )
 
@@ -2055,9 +2055,9 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("GList*" "uris")
-   '("GAppLaunchContext*" "launch_context")
-   '("GError**" "error")
+    '("GList*" "uris")
+    '("GAppLaunchContext*" "launch_context")
+    '("GError**" "error")
   )
 )
 
@@ -2065,8 +2065,8 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "content_type")
-   '("GError**" "error")
+    '("const-char*" "content_type")
+    '("GError**" "error")
   )
 )
 
@@ -2074,8 +2074,8 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("char*" "extension")
-   '("GError**" "error")
+    '("char*" "extension")
+    '("GError**" "error")
   )
 )
 
@@ -2083,8 +2083,8 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "content_type")
-   '("GError**" "error")
+    '("const-char*" "content_type")
+    '("GError**" "error")
   )
 )
 
@@ -2092,8 +2092,8 @@
   (of-object "GAppInfo")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "content_type")
-   '("GError**" "error")
+    '("const-char*" "content_type")
+    '("GError**" "error")
   )
 )
 
@@ -2116,10 +2116,10 @@
   (of-object "GAsyncInitable")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2127,8 +2127,8 @@
   (of-object "GAsyncInitable")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2146,7 +2146,7 @@
   (of-object "GAsyncResult")
   (return-type "gboolean")
   (parameters
-   '("gpointer" "source_tag")
+    '("gpointer" "source_tag")
   )
 )
 
@@ -2154,14 +2154,14 @@
   (of-object "GConverter")
   (return-type "GConverterResult")
   (parameters
-   '("const-void*" "inbuf")
-   '("gsize" "inbuf_size")
-   '("void*" "outbuf")
-   '("gsize" "outbuf_size")
-   '("GConverterFlags" "flags")
-   '("gsize*" "bytes_read")
-   '("gsize*" "bytes_written")
-   '("GError**" "error")
+    '("const-void*" "inbuf")
+    '("gsize" "inbuf_size")
+    '("void*" "outbuf")
+    '("gsize" "outbuf_size")
+    '("GConverterFlags" "flags")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
@@ -2189,7 +2189,7 @@
   (of-object "GDBusInterface")
   (return-type "void")
   (parameters
-   '("GDBusObject*" "object")
+    '("GDBusObject*" "object")
   )
 )
 
@@ -2197,7 +2197,7 @@
   (of-object "GDBusObject")
   (return-type "GDBusInterface*")
   (parameters
-   '("const-gchar*" "interface_name")
+    '("const-gchar*" "interface_name")
   )
 )
 
@@ -2215,7 +2215,7 @@
   (of-object "GDBusObject")
   (return-type "void")
   (parameters
-   '("GDBusInterface*" "interface_")
+    '("GDBusInterface*" "interface_")
   )
 )
 
@@ -2223,7 +2223,7 @@
   (of-object "GDBusObject")
   (return-type "void")
   (parameters
-   '("GDBusInterface*" "interface_")
+    '("GDBusInterface*" "interface_")
   )
 )
 
@@ -2231,8 +2231,8 @@
   (of-object "GDBusObjectManager")
   (return-type "GDBusInterface*")
   (parameters
-   '("const-gchar*" "object_path")
-   '("const-gchar*" "interface_name")
+    '("const-gchar*" "object_path")
+    '("const-gchar*" "interface_name")
   )
 )
 
@@ -2240,7 +2240,7 @@
   (of-object "GDBusObjectManager")
   (return-type "GDBusObject*")
   (parameters
-   '("const-gchar*" "object_path")
+    '("const-gchar*" "object_path")
   )
 )
 
@@ -2258,8 +2258,8 @@
   (of-object "GDBusObjectManager")
   (return-type "void")
   (parameters
-   '("GDBusObject*" "object")
-   '("GDBusInterface*" "interface_")
+    '("GDBusObject*" "object")
+    '("GDBusInterface*" "interface_")
   )
 )
 
@@ -2267,8 +2267,8 @@
   (of-object "GDBusObjectManager")
   (return-type "void")
   (parameters
-   '("GDBusObject*" "object")
-   '("GDBusInterface*" "interface_")
+    '("GDBusObject*" "object")
+    '("GDBusInterface*" "interface_")
   )
 )
 
@@ -2276,7 +2276,7 @@
   (of-object "GDBusObjectManager")
   (return-type "void")
   (parameters
-   '("GDBusObject*" "object")
+    '("GDBusObject*" "object")
   )
 )
 
@@ -2284,7 +2284,7 @@
   (of-object "GDBusObjectManager")
   (return-type "void")
   (parameters
-   '("GDBusObject*" "object")
+    '("GDBusObject*" "object")
   )
 )
 
@@ -2292,7 +2292,7 @@
   (of-object "GDatagramBased")
   (return-type "GIOCondition")
   (parameters
-   '("GIOCondition" "condition")
+    '("GIOCondition" "condition")
   )
 )
 
@@ -2300,10 +2300,10 @@
   (of-object "GDatagramBased")
   (return-type "gboolean")
   (parameters
-   '("GIOCondition" "condition")
-   '("gint64" "timeout")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GIOCondition" "condition")
+    '("gint64" "timeout")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2311,8 +2311,8 @@
   (of-object "GDatagramBased")
   (return-type "GSource*")
   (parameters
-   '("GIOCondition" "condition")
-   '("GCancellable*" "cancellable")
+    '("GIOCondition" "condition")
+    '("GCancellable*" "cancellable")
   )
 )
 
@@ -2320,12 +2320,12 @@
   (of-object "GDatagramBased")
   (return-type "gint")
   (parameters
-   '("GInputMessage*" "messages")
-   '("guint" "num_messages")
-   '("gint" "flags")
-   '("gint64" "timeout")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GInputMessage*" "messages")
+    '("guint" "num_messages")
+    '("gint" "flags")
+    '("gint64" "timeout")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2333,12 +2333,12 @@
   (of-object "GDatagramBased")
   (return-type "gint")
   (parameters
-   '("GOutputMessage*" "messages")
-   '("guint" "num_messages")
-   '("gint" "flags")
-   '("gint64" "timeout")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GOutputMessage*" "messages")
+    '("guint" "num_messages")
+    '("gint" "flags")
+    '("gint64" "timeout")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2346,7 +2346,7 @@
   (of-object "GDesktopAppInfoLookup")
   (return-type "GAppInfo*")
   (parameters
-   '("const-char*" "uri_scheme")
+    '("const-char*" "uri_scheme")
   )
 )
 
@@ -2389,10 +2389,10 @@
   (of-object "GDrive")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2405,8 +2405,8 @@
   (of-object "GDrive")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2414,11 +2414,11 @@
   (of-object "GDrive")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2426,8 +2426,8 @@
   (of-object "GDrive")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2445,7 +2445,7 @@
   (of-object "GDrive")
   (return-type "char*")
   (parameters
-   '("const-char*" "kind")
+    '("const-char*" "kind")
   )
 )
 
@@ -2503,9 +2503,9 @@
   (of-object "GDrive")
   (return-type "void")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2513,8 +2513,8 @@
   (of-object "GDrive")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2522,11 +2522,11 @@
   (of-object "GDrive")
   (return-type "void")
   (parameters
-   '("GDriveStartFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GDriveStartFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2534,8 +2534,8 @@
   (of-object "GDrive")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2543,11 +2543,11 @@
   (of-object "GDrive")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2560,8 +2560,8 @@
   (of-object "GDrive")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2569,8 +2569,8 @@
   (of-object "GDtlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GTlsCertificate*" "peer_cert")
-   '("GTlsCertificateFlags" "errors")
+    '("GTlsCertificate*" "peer_cert")
+    '("GTlsCertificateFlags" "errors")
   )
 )
 
@@ -2578,8 +2578,8 @@
   (of-object "GDtlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2587,10 +2587,10 @@
   (of-object "GDtlsConnection")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2598,8 +2598,8 @@
   (of-object "GDtlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2607,10 +2607,10 @@
   (of-object "GDtlsConnection")
   (return-type "gboolean")
   (parameters
-   '("gboolean" "shutdown_read")
-   '("gboolean" "shutdown_write")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("gboolean" "shutdown_read")
+    '("gboolean" "shutdown_write")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2618,12 +2618,12 @@
   (of-object "GDtlsConnection")
   (return-type "void")
   (parameters
-   '("gboolean" "shutdown_read")
-   '("gboolean" "shutdown_write")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("gboolean" "shutdown_read")
+    '("gboolean" "shutdown_write")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2631,8 +2631,8 @@
   (of-object "GDtlsConnection")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2640,9 +2640,9 @@
   (of-object "GFile")
   (return-type "GFileOutputStream*")
   (parameters
-   '("GFileCreateFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GFileCreateFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2650,11 +2650,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GFileCreateFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GFileCreateFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2662,8 +2662,8 @@
   (of-object "GFile")
   (return-type "GFileOutputStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2671,12 +2671,12 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GFile*" "destination")
-   '("GFileCopyFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GFileProgressCallback" "progress_callback")
-   '("gpointer" "progress_callback_data")
-   '("GError**" "error")
+    '("GFile*" "destination")
+    '("GFileCopyFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GFileProgressCallback" "progress_callback")
+    '("gpointer" "progress_callback_data")
+    '("GError**" "error")
   )
 )
 
@@ -2684,14 +2684,14 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GFile*" "destination")
-   '("GFileCopyFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GFileProgressCallback" "progress_callback")
-   '("gpointer" "progress_callback_data")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GFile*" "destination")
+    '("GFileCopyFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GFileProgressCallback" "progress_callback")
+    '("gpointer" "progress_callback_data")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2699,8 +2699,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2708,9 +2708,9 @@
   (of-object "GFile")
   (return-type "GFileOutputStream*")
   (parameters
-   '("GFileCreateFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GFileCreateFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2718,11 +2718,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GFileCreateFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GFileCreateFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2730,8 +2730,8 @@
   (of-object "GFile")
   (return-type "GFileOutputStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2739,9 +2739,9 @@
   (of-object "GFile")
   (return-type "GFileIOStream*")
   (parameters
-   '("GFileCreateFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GFileCreateFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2749,11 +2749,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GFileCreateFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GFileCreateFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2761,8 +2761,8 @@
   (of-object "GFile")
   (return-type "GFileIOStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2770,8 +2770,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2779,10 +2779,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2790,8 +2790,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2804,10 +2804,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2815,8 +2815,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2824,11 +2824,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2836,8 +2836,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -2845,10 +2845,10 @@
   (of-object "GFile")
   (return-type "GFileEnumerator*")
   (parameters
-   '("const-char*" "attributes")
-   '("GFileQueryInfoFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attributes")
+    '("GFileQueryInfoFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2856,12 +2856,12 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("const-char*" "attributes")
-   '("GFileQueryInfoFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "attributes")
+    '("GFileQueryInfoFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2869,8 +2869,8 @@
   (of-object "GFile")
   (return-type "GFileEnumerator*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2878,7 +2878,7 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GFile*" "file2")
+    '("GFile*" "file2")
   )
 )
 
@@ -2886,8 +2886,8 @@
   (of-object "GFile")
   (return-type "GMount*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2895,10 +2895,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -2906,8 +2906,8 @@
   (of-object "GFile")
   (return-type "GMount*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -2920,8 +2920,8 @@
   (of-object "GFile")
   (return-type "GFile*")
   (parameters
-   '("const-char*" "display_name")
-   '("GError**" "error")
+    '("const-char*" "display_name")
+    '("GError**" "error")
   )
 )
 
@@ -2944,7 +2944,7 @@
   (of-object "GFile")
   (return-type "char*")
   (parameters
-   '("GFile*" "descendant")
+    '("GFile*" "descendant")
   )
 )
 
@@ -2962,7 +2962,7 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "uri_scheme")
+    '("const-char*" "uri_scheme")
   )
 )
 
@@ -2980,8 +2980,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -2989,10 +2989,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3000,8 +3000,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3009,9 +3009,9 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("char*" "symlink_value")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("char*" "symlink_value")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3019,14 +3019,14 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GFileMeasureFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GFileMeasureProgressCallback" "progress_callback")
-   '("gpointer" "progress_data")
-   '("guint64*" "disk_usage")
-   '("guint64*" "num_dirs")
-   '("guint64*" "num_files")
-   '("GError**" "error")
+    '("GFileMeasureFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GFileMeasureProgressCallback" "progress_callback")
+    '("gpointer" "progress_data")
+    '("guint64*" "disk_usage")
+    '("guint64*" "num_dirs")
+    '("guint64*" "num_files")
+    '("GError**" "error")
   )
 )
 
@@ -3034,13 +3034,13 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GFileMeasureFlags" "flags")
-   '("gint" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GFileMeasureProgressCallback" "progress_callback")
-   '("gpointer" "progress_data")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GFileMeasureFlags" "flags")
+    '("gint" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GFileMeasureProgressCallback" "progress_callback")
+    '("gpointer" "progress_data")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3048,11 +3048,11 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("guint64*" "disk_usage")
-   '("guint64*" "num_dirs")
-   '("guint64*" "num_files")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("guint64*" "disk_usage")
+    '("guint64*" "num_dirs")
+    '("guint64*" "num_files")
+    '("GError**" "error")
   )
 )
 
@@ -3060,9 +3060,9 @@
   (of-object "GFile")
   (return-type "GFileMonitor*")
   (parameters
-   '("GFileMonitorFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GFileMonitorFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3070,9 +3070,9 @@
   (of-object "GFile")
   (return-type "GFileMonitor*")
   (parameters
-   '("GFileMonitorFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GFileMonitorFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3080,11 +3080,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountMountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountMountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3092,8 +3092,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3101,11 +3101,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountMountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountMountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3113,8 +3113,8 @@
   (of-object "GFile")
   (return-type "GFile*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3122,12 +3122,12 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GFile*" "destination")
-   '("GFileCopyFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GFileProgressCallback" "progress_callback")
-   '("gpointer" "progress_callback_data")
-   '("GError**" "error")
+    '("GFile*" "destination")
+    '("GFileCopyFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GFileProgressCallback" "progress_callback")
+    '("gpointer" "progress_callback_data")
+    '("GError**" "error")
   )
 )
 
@@ -3135,8 +3135,8 @@
   (of-object "GFile")
   (return-type "GFileIOStream*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3144,10 +3144,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3155,8 +3155,8 @@
   (of-object "GFile")
   (return-type "GFileIOStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3164,9 +3164,9 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3174,8 +3174,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3183,7 +3183,7 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GFile*" "file")
+    '("GFile*" "file")
   )
 )
 
@@ -3191,9 +3191,9 @@
   (of-object "GFile")
   (return-type "GFileInfo*")
   (parameters
-   '("const-char*" "attributes")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attributes")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3201,11 +3201,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("const-char*" "attributes")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "attributes")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3213,8 +3213,8 @@
   (of-object "GFile")
   (return-type "GFileInfo*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3222,10 +3222,10 @@
   (of-object "GFile")
   (return-type "GFileInfo*")
   (parameters
-   '("const-char*" "attributes")
-   '("GFileQueryInfoFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attributes")
+    '("GFileQueryInfoFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3233,12 +3233,12 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("const-char*" "attributes")
-   '("GFileQueryInfoFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "attributes")
+    '("GFileQueryInfoFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3246,8 +3246,8 @@
   (of-object "GFile")
   (return-type "GFileInfo*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3255,8 +3255,8 @@
   (of-object "GFile")
   (return-type "GFileAttributeInfoList*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3264,8 +3264,8 @@
   (of-object "GFile")
   (return-type "GFileAttributeInfoList*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3273,10 +3273,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3284,8 +3284,8 @@
   (of-object "GFile")
   (return-type "GFileInputStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3293,8 +3293,8 @@
   (of-object "GFile")
   (return-type "GFileInputStream*")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3302,11 +3302,11 @@
   (of-object "GFile")
   (return-type "GFileOutputStream*")
   (parameters
-   '("const-char*" "etag")
-   '("gboolean" "make_backup")
-   '("GFileCreateFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "etag")
+    '("gboolean" "make_backup")
+    '("GFileCreateFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3314,13 +3314,13 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("const-char*" "etag")
-   '("gboolean" "make_backup")
-   '("GFileCreateFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "etag")
+    '("gboolean" "make_backup")
+    '("GFileCreateFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3328,8 +3328,8 @@
   (of-object "GFile")
   (return-type "GFileOutputStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3337,11 +3337,11 @@
   (of-object "GFile")
   (return-type "GFileIOStream*")
   (parameters
-   '("const-char*" "etag")
-   '("gboolean" "make_backup")
-   '("GFileCreateFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "etag")
+    '("gboolean" "make_backup")
+    '("GFileCreateFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3349,13 +3349,13 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("const-char*" "etag")
-   '("gboolean" "make_backup")
-   '("GFileCreateFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "etag")
+    '("gboolean" "make_backup")
+    '("GFileCreateFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3363,8 +3363,8 @@
   (of-object "GFile")
   (return-type "GFileIOStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3372,7 +3372,7 @@
   (of-object "GFile")
   (return-type "GFile*")
   (parameters
-   '("char*" "relative_path")
+    '("char*" "relative_path")
   )
 )
 
@@ -3380,12 +3380,12 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("const-char*" "attribute")
-   '("GFileAttributeType" "type")
-   '("gpointer" "value_p")
-   '("GFileQueryInfoFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "attribute")
+    '("GFileAttributeType" "type")
+    '("gpointer" "value_p")
+    '("GFileQueryInfoFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3393,12 +3393,12 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GFileInfo*" "info")
-   '("GFileQueryInfoFlags" "flags")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GFileInfo*" "info")
+    '("GFileQueryInfoFlags" "flags")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3406,9 +3406,9 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GFileInfo**" "info")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GFileInfo**" "info")
+    '("GError**" "error")
   )
 )
 
@@ -3416,10 +3416,10 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GFileInfo*" "info")
-   '("GFileQueryInfoFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GFileInfo*" "info")
+    '("GFileQueryInfoFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3427,9 +3427,9 @@
   (of-object "GFile")
   (return-type "GFile*")
   (parameters
-   '("const-char*" "display_name")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-char*" "display_name")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3437,11 +3437,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("const-char*" "display_name")
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-char*" "display_name")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3449,8 +3449,8 @@
   (of-object "GFile")
   (return-type "GFile*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("GError**" "error")
   )
 )
 
@@ -3458,11 +3458,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GDriveStartFlags" "flags")
-   '("GMountOperation*" "start_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GDriveStartFlags" "flags")
+    '("GMountOperation*" "start_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3470,8 +3470,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3479,11 +3479,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3491,8 +3491,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3500,8 +3500,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3509,10 +3509,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("int" "io_priority")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3520,8 +3520,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3529,10 +3529,10 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3540,8 +3540,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3549,11 +3549,11 @@
   (of-object "GFile")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3561,8 +3561,8 @@
   (of-object "GFile")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3575,7 +3575,7 @@
   (of-object "GIcon")
   (return-type "gboolean")
   (parameters
-   '("GIcon*" "icon2")
+    '("GIcon*" "icon2")
   )
 )
 
@@ -3593,8 +3593,8 @@
   (of-object "GIcon")
   (return-type "gboolean")
   (parameters
-   '("GPtrArray*" "tokens")
-   '("gint*" "out_version")
+    '("GPtrArray*" "tokens")
+    '("gint*" "out_version")
   )
 )
 
@@ -3602,8 +3602,8 @@
   (of-object "GInitable")
   (return-type "gboolean")
   (parameters
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3611,7 +3611,7 @@
   (of-object "GListModel")
   (return-type "gpointer")
   (parameters
-   '("guint" "position")
+    '("guint" "position")
   )
 )
 
@@ -3629,10 +3629,10 @@
   (of-object "GLoadableIcon")
   (return-type "GInputStream*")
   (parameters
-   '("int" "size")
-   '("char**" "type")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("int" "size")
+    '("char**" "type")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3640,10 +3640,10 @@
   (of-object "GLoadableIcon")
   (return-type "void")
   (parameters
-   '("int" "size")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("int" "size")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3651,9 +3651,9 @@
   (of-object "GLoadableIcon")
   (return-type "GInputStream*")
   (parameters
-   '("GAsyncResult*" "res")
-   '("char**" "type")
-   '("GError**" "error")
+    '("GAsyncResult*" "res")
+    '("char**" "type")
+    '("GError**" "error")
   )
 )
 
@@ -3676,10 +3676,10 @@
   (of-object "GMount")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3687,8 +3687,8 @@
   (of-object "GMount")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3696,11 +3696,11 @@
   (of-object "GMount")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3708,8 +3708,8 @@
   (of-object "GMount")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3762,10 +3762,10 @@
   (of-object "GMount")
   (return-type "void")
   (parameters
-   '("gboolean" "force_rescan")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("gboolean" "force_rescan")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3773,8 +3773,8 @@
   (of-object "GMount")
   (return-type "gchar**")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3782,9 +3782,9 @@
   (of-object "GMount")
   (return-type "gchar**")
   (parameters
-   '("gboolean" "force_rescan")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("gboolean" "force_rescan")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3797,11 +3797,11 @@
   (of-object "GMount")
   (return-type "void")
   (parameters
-   '("GMountMountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountMountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3809,8 +3809,8 @@
   (of-object "GMount")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3818,10 +3818,10 @@
   (of-object "GMount")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3829,8 +3829,8 @@
   (of-object "GMount")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3838,11 +3838,11 @@
   (of-object "GMount")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3850,8 +3850,8 @@
   (of-object "GMount")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3864,9 +3864,9 @@
   (of-object "GNetworkMonitor")
   (return-type "gboolean")
   (parameters
-   '("GSocketConnectable*" "connectable")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GSocketConnectable*" "connectable")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3874,10 +3874,10 @@
   (of-object "GNetworkMonitor")
   (return-type "void")
   (parameters
-   '("GSocketConnectable*" "connectable")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GSocketConnectable*" "connectable")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3885,8 +3885,8 @@
   (of-object "GNetworkMonitor")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -3894,7 +3894,7 @@
   (of-object "GNetworkMonitor")
   (return-type "void")
   (parameters
-   '("gboolean" "available")
+    '("gboolean" "available")
   )
 )
 
@@ -3907,7 +3907,7 @@
   (of-object "GPollableInputStream")
   (return-type "GSource*")
   (parameters
-   '("GCancellable*" "cancellable")
+    '("GCancellable*" "cancellable")
   )
 )
 
@@ -3920,9 +3920,9 @@
   (of-object "GPollableInputStream")
   (return-type "gssize")
   (parameters
-   '("void*" "buffer")
-   '("gsize" "count")
-   '("GError**" "error")
+    '("void*" "buffer")
+    '("gsize" "count")
+    '("GError**" "error")
   )
 )
 
@@ -3935,7 +3935,7 @@
   (of-object "GPollableOutputStream")
   (return-type "GSource*")
   (parameters
-   '("GCancellable*" "cancellable")
+    '("GCancellable*" "cancellable")
   )
 )
 
@@ -3948,9 +3948,9 @@
   (of-object "GPollableOutputStream")
   (return-type "gssize")
   (parameters
-   '("const-void*" "buffer")
-   '("gsize" "count")
-   '("GError**" "error")
+    '("const-void*" "buffer")
+    '("gsize" "count")
+    '("GError**" "error")
   )
 )
 
@@ -3958,10 +3958,10 @@
   (of-object "GProxy")
   (return-type "GIOStream*")
   (parameters
-   '("GIOStream*" "connection")
-   '("GProxyAddress*" "proxy_address")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("GIOStream*" "connection")
+    '("GProxyAddress*" "proxy_address")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -3969,11 +3969,11 @@
   (of-object "GProxy")
   (return-type "void")
   (parameters
-   '("GIOStream*" "connection")
-   '("GProxyAddress*" "proxy_address")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GIOStream*" "connection")
+    '("GProxyAddress*" "proxy_address")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -3981,8 +3981,8 @@
   (of-object "GProxy")
   (return-type "GIOStream*")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -4000,9 +4000,9 @@
   (of-object "GProxyResolver")
   (return-type "gchar**")
   (parameters
-   '("const-gchar*" "uri")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("const-gchar*" "uri")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -4010,10 +4010,10 @@
   (of-object "GProxyResolver")
   (return-type "void")
   (parameters
-   '("const-gchar*" "uri")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("const-gchar*" "uri")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -4021,8 +4021,8 @@
   (of-object "GProxyResolver")
   (return-type "gchar**")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -4030,9 +4030,9 @@
   (of-object "GRemoteActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
-   '("GVariant*" "parameter")
-   '("GVariant*" "platform_data")
+    '("const-gchar*" "action_name")
+    '("GVariant*" "parameter")
+    '("GVariant*" "platform_data")
   )
 )
 
@@ -4040,9 +4040,9 @@
   (of-object "GRemoteActionGroup")
   (return-type "void")
   (parameters
-   '("const-gchar*" "action_name")
-   '("GVariant*" "value")
-   '("GVariant*" "platform_data")
+    '("const-gchar*" "action_name")
+    '("GVariant*" "value")
+    '("GVariant*" "platform_data")
   )
 )
 
@@ -4060,10 +4060,10 @@
   (of-object "GSeekable")
   (return-type "gboolean")
   (parameters
-   '("goffset" "offset")
-   '("GSeekType" "type")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "offset")
+    '("GSeekType" "type")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -4076,9 +4076,9 @@
   (of-object "GSeekable")
   (return-type "gboolean")
   (parameters
-   '("goffset" "offset")
-   '("GCancellable*" "cancellable")
-   '("GError**" "error")
+    '("goffset" "offset")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
   )
 )
 
@@ -4116,7 +4116,7 @@
   (of-object "GTlsClientConnection")
   (return-type "void")
   (parameters
-   '("GTlsClientConnection*" "source")
+    '("GTlsClientConnection*" "source")
   )
 )
 
@@ -4139,10 +4139,10 @@
   (of-object "GVolume")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -4150,8 +4150,8 @@
   (of-object "GVolume")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -4159,11 +4159,11 @@
   (of-object "GVolume")
   (return-type "void")
   (parameters
-   '("GMountUnmountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountUnmountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
@@ -4171,8 +4171,8 @@
   (of-object "GVolume")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -4200,7 +4200,7 @@
   (of-object "GVolume")
   (return-type "char*")
   (parameters
-   '("const-char*" "kind")
+    '("const-char*" "kind")
   )
 )
 
@@ -4233,8 +4233,8 @@
   (of-object "GVolume")
   (return-type "gboolean")
   (parameters
-   '("GAsyncResult*" "result")
-   '("GError**" "error")
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
   )
 )
 
@@ -4242,11 +4242,11 @@
   (of-object "GVolume")
   (return-type "void")
   (parameters
-   '("GMountMountFlags" "flags")
-   '("GMountOperation*" "mount_operation")
-   '("GCancellable*" "cancellable")
-   '("GAsyncReadyCallback" "callback")
-   '("gpointer" "user_data")
+    '("GMountMountFlags" "flags")
+    '("GMountOperation*" "mount_operation")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
   )
 )
 
diff --git a/gio/src/gio_vfuncs.defs.patch b/gio/src/gio_vfuncs.defs.patch
index c853884..c67b10e 100644
--- a/gio/src/gio_vfuncs.defs.patch
+++ b/gio/src/gio_vfuncs.defs.patch
@@ -3,9 +3,9 @@
 @@ -791,7 +791,7 @@
    (return-type "void")
    (parameters
-    '("const-char*" "message")
-+   '("const-gchar**" "choices")
--   '("const-char*" "choices")
+     '("const-char*" "message")
++    '("const-gchar**" "choices")
+-    '("const-char*" "choices")
    )
  )
 
@@ -13,18 +13,18 @@
    (of-object "GConverter")
    (return-type "GConverterResult")
    (parameters
-+   '("const-void*" "inbuf")
--   '("void*" "inbuf")
-    '("gsize" "inbuf_size")
-    '("void*" "outbuf")
-    '("gsize" "outbuf_size")
++    '("const-void*" "inbuf")
+-    '("void*" "inbuf")
+     '("gsize" "inbuf_size")
+     '("void*" "outbuf")
+     '("gsize" "outbuf_size")
 
 @@ -3948,7 +3948,7 @@
    (of-object "GPollableOutputStream")
    (return-type "gssize")
    (parameters
-+   '("const-void*" "buffer")
--   '("void*" "buffer")
-    '("gsize" "count")
-    '("GError**" "error")
++    '("const-void*" "buffer")
+-    '("void*" "buffer")
+     '("gsize" "count")
+     '("GError**" "error")
    )
diff --git a/glib/src/glib_functions.defs b/glib/src/glib_functions.defs
index 0667836..a49fad3 100644
--- a/glib/src/glib_functions.defs
+++ b/glib/src/glib_functions.defs
@@ -1,8068 +1,9065 @@
-;; -*- scheme -*-
-; object definitions ...
-;; Enumerations and flags ...
-
-(define-enum FileError
-  (in-module "GBookmark")
-  (c-name "GBookmarkFileError")
-  (gtype-id "G_TYPE_BOOKMARK_FILE_ERROR")
-  (values
-    '("invalid-uri" "G_BOOKMARK_FILE_ERROR_INVALID_URI")
-    '("invalid-value" "G_BOOKMARK_FILE_ERROR_INVALID_VALUE")
-    '("app-not-registered" "G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED")
-    '("uri-not-found" "G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND")
-    '("read" "G_BOOKMARK_FILE_ERROR_READ")
-    '("unknown-encoding" "G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING")
-    '("write" "G_BOOKMARK_FILE_ERROR_WRITE")
-    '("file-not-found" "G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND")
-  )
-)
-
-(define-flags ArrayFlags
-  (in-module "GBSearch")
-  (c-name "GBSearchArrayFlags")
-  (gtype-id "G_TYPE_B_SEARCH_ARRAY_FLAGS")
-  (values
-    '("align-power2" "G_BSEARCH_ARRAY_ALIGN_POWER2")
-    '("auto-shrink" "G_BSEARCH_ARRAY_AUTO_SHRINK")
-  )
-)
-
-(define-enum Type
-  (in-module "GChecksum")
-  (c-name "GChecksumType")
-  (gtype-id "G_TYPE_CHECKSUM_TYPE")
-  (values
-    '("md5" "G_CHECKSUM_MD5")
-    '("sha1" "G_CHECKSUM_SHA1")
-    '("sha256" "G_CHECKSUM_SHA256")
-    '("sha512" "G_CHECKSUM_SHA512")
-  )
-)
-
-(define-enum Error
-  (in-module "GConvert")
-  (c-name "GConvertError")
-  (gtype-id "G_TYPE_CONVERT_ERROR")
-  (values
-    '("no-conversion" "G_CONVERT_ERROR_NO_CONVERSION")
-    '("illegal-sequence" "G_CONVERT_ERROR_ILLEGAL_SEQUENCE")
-    '("failed" "G_CONVERT_ERROR_FAILED")
-    '("partial-input" "G_CONVERT_ERROR_PARTIAL_INPUT")
-    '("bad-uri" "G_CONVERT_ERROR_BAD_URI")
-    '("not-absolute-path" "G_CONVERT_ERROR_NOT_ABSOLUTE_PATH")
-    '("no-memory" "G_CONVERT_ERROR_NO_MEMORY")
-  )
-)
-
-(define-enum DMY
-  (in-module "GDate")
-  (c-name "GDateDMY")
-  (gtype-id "G_TYPE_DATE_DMY")
-  (values
-    '("day" "G_DATE_DAY")
-    '("month" "G_DATE_MONTH")
-    '("year" "G_DATE_YEAR")
-  )
-)
-
-(define-enum Weekday
-  (in-module "GDate")
-  (c-name "GDateWeekday")
-  (gtype-id "G_TYPE_DATE_WEEKDAY")
-  (values
-    '("bad-weekday" "G_DATE_BAD_WEEKDAY")
-    '("monday" "G_DATE_MONDAY")
-    '("tuesday" "G_DATE_TUESDAY")
-    '("wednesday" "G_DATE_WEDNESDAY")
-    '("thursday" "G_DATE_THURSDAY")
-    '("friday" "G_DATE_FRIDAY")
-    '("saturday" "G_DATE_SATURDAY")
-    '("sunday" "G_DATE_SUNDAY")
-  )
-)
-
-(define-enum Month
-  (in-module "GDate")
-  (c-name "GDateMonth")
-  (gtype-id "G_TYPE_DATE_MONTH")
-  (values
-    '("bad-month" "G_DATE_BAD_MONTH")
-    '("january" "G_DATE_JANUARY")
-    '("february" "G_DATE_FEBRUARY")
-    '("march" "G_DATE_MARCH")
-    '("april" "G_DATE_APRIL")
-    '("may" "G_DATE_MAY")
-    '("june" "G_DATE_JUNE")
-    '("july" "G_DATE_JULY")
-    '("august" "G_DATE_AUGUST")
-    '("september" "G_DATE_SEPTEMBER")
-    '("october" "G_DATE_OCTOBER")
-    '("november" "G_DATE_NOVEMBER")
-    '("december" "G_DATE_DECEMBER")
-  )
-)
-
-(define-enum Error
-  (in-module "GFile")
-  (c-name "GFileError")
-  (gtype-id "G_TYPE_FILE_ERROR")
-  (values
-    '("exist" "G_FILE_ERROR_EXIST")
-    '("isdir" "G_FILE_ERROR_ISDIR")
-    '("acces" "G_FILE_ERROR_ACCES")
-    '("nametoolong" "G_FILE_ERROR_NAMETOOLONG")
-    '("noent" "G_FILE_ERROR_NOENT")
-    '("notdir" "G_FILE_ERROR_NOTDIR")
-    '("nxio" "G_FILE_ERROR_NXIO")
-    '("nodev" "G_FILE_ERROR_NODEV")
-    '("rofs" "G_FILE_ERROR_ROFS")
-    '("txtbsy" "G_FILE_ERROR_TXTBSY")
-    '("fault" "G_FILE_ERROR_FAULT")
-    '("loop" "G_FILE_ERROR_LOOP")
-    '("nospc" "G_FILE_ERROR_NOSPC")
-    '("nomem" "G_FILE_ERROR_NOMEM")
-    '("mfile" "G_FILE_ERROR_MFILE")
-    '("nfile" "G_FILE_ERROR_NFILE")
-    '("badf" "G_FILE_ERROR_BADF")
-    '("inval" "G_FILE_ERROR_INVAL")
-    '("pipe" "G_FILE_ERROR_PIPE")
-    '("again" "G_FILE_ERROR_AGAIN")
-    '("intr" "G_FILE_ERROR_INTR")
-    '("io" "G_FILE_ERROR_IO")
-    '("perm" "G_FILE_ERROR_PERM")
-    '("nosys" "G_FILE_ERROR_NOSYS")
-    '("failed" "G_FILE_ERROR_FAILED")
-  )
-)
-
-(define-flags Test
-  (in-module "GFile")
-  (c-name "GFileTest")
-  (gtype-id "G_TYPE_FILE_TEST")
-  (values
-    '("is-regular" "G_FILE_TEST_IS_REGULAR")
-    '("is-symlink" "G_FILE_TEST_IS_SYMLINK")
-    '("is-dir" "G_FILE_TEST_IS_DIR")
-    '("is-executable" "G_FILE_TEST_IS_EXECUTABLE")
-    '("exists" "G_FILE_TEST_EXISTS")
-  )
-)
-
-(define-flags FlagMask
-  (in-module "GHook")
-  (c-name "GHookFlagMask")
-  (gtype-id "G_TYPE_HOOK_FLAG_MASK")
-  (values
-    '("active" "G_HOOK_FLAG_ACTIVE")
-    '("in-call" "G_HOOK_FLAG_IN_CALL")
-    '("mask" "G_HOOK_FLAG_MASK")
-  )
-)
-
-(define-enum r
-  (in-module "GIOErro")
-  (c-name "GIOError")
-  (gtype-id "G_TYPE_IO_ERROR")
-  (values
-    '("none" "G_IO_ERROR_NONE")
-    '("again" "G_IO_ERROR_AGAIN")
-    '("inval" "G_IO_ERROR_INVAL")
-    '("unknown" "G_IO_ERROR_UNKNOWN")
-  )
-)
-
-(define-enum Error
-  (in-module "GIOChannel")
-  (c-name "GIOChannelError")
-  (gtype-id "G_TYPE_IO_CHANNEL_ERROR")
-  (values
-    '("fbig" "G_IO_CHANNEL_ERROR_FBIG")
-    '("inval" "G_IO_CHANNEL_ERROR_INVAL")
-    '("io" "G_IO_CHANNEL_ERROR_IO")
-    '("isdir" "G_IO_CHANNEL_ERROR_ISDIR")
-    '("nospc" "G_IO_CHANNEL_ERROR_NOSPC")
-    '("nxio" "G_IO_CHANNEL_ERROR_NXIO")
-    '("overflow" "G_IO_CHANNEL_ERROR_OVERFLOW")
-    '("pipe" "G_IO_CHANNEL_ERROR_PIPE")
-    '("failed" "G_IO_CHANNEL_ERROR_FAILED")
-  )
-)
-
-(define-enum s
-  (in-module "GIOStatu")
-  (c-name "GIOStatus")
-  (gtype-id "G_TYPE_IO_STATUS")
-  (values
-    '("error" "G_IO_STATUS_ERROR")
-    '("normal" "G_IO_STATUS_NORMAL")
-    '("eof" "G_IO_STATUS_EOF")
-    '("again" "G_IO_STATUS_AGAIN")
-  )
-)
-
-(define-enum Type
-  (in-module "GSeek")
-  (c-name "GSeekType")
-  (gtype-id "G_TYPE_SEEK_TYPE")
-  (values
-    '("cur" "G_SEEK_CUR")
-    '("set" "G_SEEK_SET")
-    '("end" "G_SEEK_END")
-  )
-)
-
-(define-flags s
-  (in-module "GIOFlag")
-  (c-name "GIOFlags")
-  (gtype-id "G_TYPE_IO_FLAGS")
-  (values
-    '("append" "G_IO_FLAG_APPEND")
-    '("nonblock" "G_IO_FLAG_NONBLOCK")
-    '("is-readable" "G_IO_FLAG_IS_READABLE")
-    '("is-writable" "G_IO_FLAG_IS_WRITABLE")
-    '("is-writeable" "G_IO_FLAG_IS_WRITEABLE")
-    '("is-seekable" "G_IO_FLAG_IS_SEEKABLE")
-    '("mask" "G_IO_FLAG_MASK")
-    '("get-mask" "G_IO_FLAG_GET_MASK")
-    '("set-mask" "G_IO_FLAG_SET_MASK")
-  )
-)
-
-(define-enum FileError
-  (in-module "GKey")
-  (c-name "GKeyFileError")
-  (gtype-id "G_TYPE_KEY_FILE_ERROR")
-  (values
-    '("unknown-encoding" "G_KEY_FILE_ERROR_UNKNOWN_ENCODING")
-    '("parse" "G_KEY_FILE_ERROR_PARSE")
-    '("not-found" "G_KEY_FILE_ERROR_NOT_FOUND")
-    '("key-not-found" "G_KEY_FILE_ERROR_KEY_NOT_FOUND")
-    '("group-not-found" "G_KEY_FILE_ERROR_GROUP_NOT_FOUND")
-    '("invalid-value" "G_KEY_FILE_ERROR_INVALID_VALUE")
-  )
-)
-
-(define-flags FileFlags
-  (in-module "GKey")
-  (c-name "GKeyFileFlags")
-  (gtype-id "G_TYPE_KEY_FILE_FLAGS")
-  (values
-    '("none" "G_KEY_FILE_NONE")
-    '("keep-comments" "G_KEY_FILE_KEEP_COMMENTS")
-    '("keep-translations" "G_KEY_FILE_KEEP_TRANSLATIONS")
-  )
-)
-
-(define-enum n
-  (in-module "GIOConditio")
-  (c-name "GIOCondition")
-  (gtype-id "G_TYPE_IO_CONDITION")
-  (values
-    '("in" "G_IO_IN")
-    '("out" "G_IO_OUT")
-    '("pri" "G_IO_PRI")
-    '("err" "G_IO_ERR")
-    '("hup" "G_IO_HUP")
-    '("nval" "G_IO_NVAL")
-  )
-)
-
-(define-enum Error
-  (in-module "GMarkup")
-  (c-name "GMarkupError")
-  (gtype-id "G_TYPE_MARKUP_ERROR")
-  (values
-    '("bad-utf8" "G_MARKUP_ERROR_BAD_UTF8")
-    '("empty" "G_MARKUP_ERROR_EMPTY")
-    '("parse" "G_MARKUP_ERROR_PARSE")
-    '("unknown-element" "G_MARKUP_ERROR_UNKNOWN_ELEMENT")
-    '("unknown-attribute" "G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE")
-    '("invalid-content" "G_MARKUP_ERROR_INVALID_CONTENT")
-    '("missing-attribute" "G_MARKUP_ERROR_MISSING_ATTRIBUTE")
-  )
-)
-
-(define-flags ParseFlags
-  (in-module "GMarkup")
-  (c-name "GMarkupParseFlags")
-  (gtype-id "G_TYPE_MARKUP_PARSE_FLAGS")
-  (values
-    '("do-not-use-this-unsupported-flag" "G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG")
-    '("treat-cdata-as-text" "G_MARKUP_TREAT_CDATA_AS_TEXT")
-    '("prefix-error-position" "G_MARKUP_PREFIX_ERROR_POSITION")
-    '("ignore-qualified" "G_MARKUP_IGNORE_QUALIFIED")
-  )
-)
-
-(define-flags CollectType
-  (in-module "GMarkup")
-  (c-name "GMarkupCollectType")
-  (gtype-id "G_TYPE_MARKUP_COLLECT_TYPE")
-  (values
-    '("invalid" "G_MARKUP_COLLECT_INVALID")
-    '("string" "G_MARKUP_COLLECT_STRING")
-    '("strdup" "G_MARKUP_COLLECT_STRDUP")
-    '("boolean" "G_MARKUP_COLLECT_BOOLEAN")
-    '("tristate" "G_MARKUP_COLLECT_TRISTATE")
-    '("optional" "G_MARKUP_COLLECT_OPTIONAL")
-  )
-)
-
-(define-flags LevelFlags
-  (in-module "GLog")
-  (c-name "GLogLevelFlags")
-  (gtype-id "G_TYPE_LOG_LEVEL_FLAGS")
-  (values
-    '("flag-recursion" "G_LOG_FLAG_RECURSION")
-    '("flag-fatal" "G_LOG_FLAG_FATAL")
-    '("level-error" "G_LOG_LEVEL_ERROR")
-    '("level-critical" "G_LOG_LEVEL_CRITICAL")
-    '("level-warning" "G_LOG_LEVEL_WARNING")
-    '("level-message" "G_LOG_LEVEL_MESSAGE")
-    '("level-info" "G_LOG_LEVEL_INFO")
-    '("level-debug" "G_LOG_LEVEL_DEBUG")
-    '("level-mask" "G_LOG_LEVEL_MASK")
-  )
-)
-
-(define-enum WriterOutput
-  (in-module "GLog")
-  (c-name "GLogWriterOutput")
-  (gtype-id "G_TYPE_LOG_WRITER_OUTPUT")
-  (values
-    '("handled" "G_LOG_WRITER_HANDLED")
-    '("unhandled" "G_LOG_WRITER_UNHANDLED")
-  )
-)
-
-(define-flags Flags
-  (in-module "GTraverse")
-  (c-name "GTraverseFlags")
-  (gtype-id "G_TYPE_TRAVERSE_FLAGS")
-  (values
-    '("leaves" "G_TRAVERSE_LEAVES")
-    '("non-leaves" "G_TRAVERSE_NON_LEAVES")
-    '("all" "G_TRAVERSE_ALL")
-    '("mask" "G_TRAVERSE_MASK")
-    '("leafs" "G_TRAVERSE_LEAFS")
-    '("non-leafs" "G_TRAVERSE_NON_LEAFS")
-  )
-)
-
-(define-enum Type
-  (in-module "GTraverse")
-  (c-name "GTraverseType")
-  (gtype-id "G_TYPE_TRAVERSE_TYPE")
-  (values
-    '("in-order" "G_IN_ORDER")
-    '("pre-order" "G_PRE_ORDER")
-    '("post-order" "G_POST_ORDER")
-    '("level-order" "G_LEVEL_ORDER")
-  )
-)
-
-(define-flags Flags
-  (in-module "GOption")
-  (c-name "GOptionFlags")
-  (gtype-id "G_TYPE_OPTION_FLAGS")
-  (values
-    '("none" "G_OPTION_FLAG_NONE")
-    '("hidden" "G_OPTION_FLAG_HIDDEN")
-    '("in-main" "G_OPTION_FLAG_IN_MAIN")
-    '("reverse" "G_OPTION_FLAG_REVERSE")
-    '("no-arg" "G_OPTION_FLAG_NO_ARG")
-    '("filename" "G_OPTION_FLAG_FILENAME")
-    '("optional-arg" "G_OPTION_FLAG_OPTIONAL_ARG")
-    '("noalias" "G_OPTION_FLAG_NOALIAS")
-  )
-)
-
-(define-enum Arg
-  (in-module "GOption")
-  (c-name "GOptionArg")
-  (gtype-id "G_TYPE_OPTION_ARG")
-  (values
-    '("none" "G_OPTION_ARG_NONE")
-    '("string" "G_OPTION_ARG_STRING")
-    '("int" "G_OPTION_ARG_INT")
-    '("callback" "G_OPTION_ARG_CALLBACK")
-    '("filename" "G_OPTION_ARG_FILENAME")
-    '("string-array" "G_OPTION_ARG_STRING_ARRAY")
-    '("filename-array" "G_OPTION_ARG_FILENAME_ARRAY")
-    '("double" "G_OPTION_ARG_DOUBLE")
-    '("int64" "G_OPTION_ARG_INT64")
-  )
-)
-
-(define-enum Error
-  (in-module "GOption")
-  (c-name "GOptionError")
-  (gtype-id "G_TYPE_OPTION_ERROR")
-  (values
-    '("unknown-option" "G_OPTION_ERROR_UNKNOWN_OPTION")
-    '("bad-value" "G_OPTION_ERROR_BAD_VALUE")
-    '("failed" "G_OPTION_ERROR_FAILED")
-  )
-)
-
-(define-enum Error
-  (in-module "GRegex")
-  (c-name "GRegexError")
-  (gtype-id "G_TYPE_REGEX_ERROR")
-  (values
-    '("compile" "G_REGEX_ERROR_COMPILE")
-    '("optimize" "G_REGEX_ERROR_OPTIMIZE")
-    '("replace" "G_REGEX_ERROR_REPLACE")
-    '("match" "G_REGEX_ERROR_MATCH")
-    '("internal" "G_REGEX_ERROR_INTERNAL")
-    '("stray-backslash" "G_REGEX_ERROR_STRAY_BACKSLASH")
-    '("missing-control-char" "G_REGEX_ERROR_MISSING_CONTROL_CHAR")
-    '("unrecognized-escape" "G_REGEX_ERROR_UNRECOGNIZED_ESCAPE")
-    '("quantifiers-out-of-order" "G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER")
-    '("quantifier-too-big" "G_REGEX_ERROR_QUANTIFIER_TOO_BIG")
-    '("unterminated-character-class" "G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS")
-    '("invalid-escape-in-character-class" "G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS")
-    '("range-out-of-order" "G_REGEX_ERROR_RANGE_OUT_OF_ORDER")
-    '("nothing-to-repeat" "G_REGEX_ERROR_NOTHING_TO_REPEAT")
-    '("unrecognized-character" "G_REGEX_ERROR_UNRECOGNIZED_CHARACTER")
-    '("posix-named-class-outside-class" "G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS")
-    '("unmatched-parenthesis" "G_REGEX_ERROR_UNMATCHED_PARENTHESIS")
-    '("inexistent-subpattern-reference" "G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE")
-    '("unterminated-comment" "G_REGEX_ERROR_UNTERMINATED_COMMENT")
-    '("expression-too-large" "G_REGEX_ERROR_EXPRESSION_TOO_LARGE")
-    '("memory-error" "G_REGEX_ERROR_MEMORY_ERROR")
-    '("variable-length-lookbehind" "G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND")
-    '("malformed-condition" "G_REGEX_ERROR_MALFORMED_CONDITION")
-    '("too-many-conditional-branches" "G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES")
-    '("assertion-expected" "G_REGEX_ERROR_ASSERTION_EXPECTED")
-    '("unknown-posix-class-name" "G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME")
-    '("posix-collating-elements-not-supported" "G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED")
-    '("hex-code-too-large" "G_REGEX_ERROR_HEX_CODE_TOO_LARGE")
-    '("invalid-condition" "G_REGEX_ERROR_INVALID_CONDITION")
-    '("single-byte-match-in-lookbehind" "G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND")
-    '("infinite-loop" "G_REGEX_ERROR_INFINITE_LOOP")
-    '("missing-subpattern-name-terminator" "G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR")
-    '("duplicate-subpattern-name" "G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME")
-    '("malformed-property" "G_REGEX_ERROR_MALFORMED_PROPERTY")
-    '("unknown-property" "G_REGEX_ERROR_UNKNOWN_PROPERTY")
-    '("subpattern-name-too-long" "G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG")
-    '("too-many-subpatterns" "G_REGEX_ERROR_TOO_MANY_SUBPATTERNS")
-    '("invalid-octal-value" "G_REGEX_ERROR_INVALID_OCTAL_VALUE")
-    '("too-many-branches-in-define" "G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE")
-    '("define-repetion" "G_REGEX_ERROR_DEFINE_REPETION")
-    '("inconsistent-newline-options" "G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS")
-    '("missing-back-reference" "G_REGEX_ERROR_MISSING_BACK_REFERENCE")
-    '("invalid-relative-reference" "G_REGEX_ERROR_INVALID_RELATIVE_REFERENCE")
-    '("backtracking-control-verb-argument-forbidden" 
"G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_FORBIDDEN")
-    '("unknown-backtracking-control-verb" "G_REGEX_ERROR_UNKNOWN_BACKTRACKING_CONTROL_VERB")
-    '("number-too-big" "G_REGEX_ERROR_NUMBER_TOO_BIG")
-    '("missing-subpattern-name" "G_REGEX_ERROR_MISSING_SUBPATTERN_NAME")
-    '("missing-digit" "G_REGEX_ERROR_MISSING_DIGIT")
-    '("invalid-data-character" "G_REGEX_ERROR_INVALID_DATA_CHARACTER")
-    '("extra-subpattern-name" "G_REGEX_ERROR_EXTRA_SUBPATTERN_NAME")
-    '("backtracking-control-verb-argument-required" 
"G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_REQUIRED")
-    '("invalid-control-char" "G_REGEX_ERROR_INVALID_CONTROL_CHAR")
-    '("missing-name" "G_REGEX_ERROR_MISSING_NAME")
-    '("not-supported-in-class" "G_REGEX_ERROR_NOT_SUPPORTED_IN_CLASS")
-    '("too-many-forward-references" "G_REGEX_ERROR_TOO_MANY_FORWARD_REFERENCES")
-    '("name-too-long" "G_REGEX_ERROR_NAME_TOO_LONG")
-    '("character-value-too-large" "G_REGEX_ERROR_CHARACTER_VALUE_TOO_LARGE")
-  )
-)
-
-(define-flags CompileFlags
-  (in-module "GRegex")
-  (c-name "GRegexCompileFlags")
-  (gtype-id "G_TYPE_REGEX_COMPILE_FLAGS")
-  (values
-    '("caseless" "G_REGEX_CASELESS")
-    '("multiline" "G_REGEX_MULTILINE")
-    '("dotall" "G_REGEX_DOTALL")
-    '("extended" "G_REGEX_EXTENDED")
-    '("anchored" "G_REGEX_ANCHORED")
-    '("dollar-endonly" "G_REGEX_DOLLAR_ENDONLY")
-    '("ungreedy" "G_REGEX_UNGREEDY")
-    '("raw" "G_REGEX_RAW")
-    '("no-auto-capture" "G_REGEX_NO_AUTO_CAPTURE")
-    '("optimize" "G_REGEX_OPTIMIZE")
-    '("firstline" "G_REGEX_FIRSTLINE")
-    '("dupnames" "G_REGEX_DUPNAMES")
-    '("newline-cr" "G_REGEX_NEWLINE_CR")
-    '("newline-lf" "G_REGEX_NEWLINE_LF")
-    '("newline-crlf" "G_REGEX_NEWLINE_CRLF")
-    '("newline-anycrlf" "G_REGEX_NEWLINE_ANYCRLF")
-    '("bsr-anycrlf" "G_REGEX_BSR_ANYCRLF")
-    '("javascript-compat" "G_REGEX_JAVASCRIPT_COMPAT")
-  )
-)
-
-(define-flags MatchFlags
-  (in-module "GRegex")
-  (c-name "GRegexMatchFlags")
-  (gtype-id "G_TYPE_REGEX_MATCH_FLAGS")
-  (values
-    '("anchored" "G_REGEX_MATCH_ANCHORED")
-    '("notbol" "G_REGEX_MATCH_NOTBOL")
-    '("noteol" "G_REGEX_MATCH_NOTEOL")
-    '("notempty" "G_REGEX_MATCH_NOTEMPTY")
-    '("partial" "G_REGEX_MATCH_PARTIAL")
-    '("newline-cr" "G_REGEX_MATCH_NEWLINE_CR")
-    '("newline-lf" "G_REGEX_MATCH_NEWLINE_LF")
-    '("newline-crlf" "G_REGEX_MATCH_NEWLINE_CRLF")
-    '("newline-any" "G_REGEX_MATCH_NEWLINE_ANY")
-    '("newline-anycrlf" "G_REGEX_MATCH_NEWLINE_ANYCRLF")
-    '("bsr-anycrlf" "G_REGEX_MATCH_BSR_ANYCRLF")
-    '("bsr-any" "G_REGEX_MATCH_BSR_ANY")
-    '("partial-soft" "G_REGEX_MATCH_PARTIAL_SOFT")
-    '("partial-hard" "G_REGEX_MATCH_PARTIAL_HARD")
-    '("notempty-atstart" "G_REGEX_MATCH_NOTEMPTY_ATSTART")
-  )
-)
-
-(define-enum Type
-  (in-module "GError")
-  (c-name "GErrorType")
-  (gtype-id "G_TYPE_ERROR_TYPE")
-  (values
-    '("unknown" "G_ERR_UNKNOWN")
-    '("unexp-eof" "G_ERR_UNEXP_EOF")
-    '("unexp-eof-in-string" "G_ERR_UNEXP_EOF_IN_STRING")
-    '("unexp-eof-in-comment" "G_ERR_UNEXP_EOF_IN_COMMENT")
-    '("non-digit-in-const" "G_ERR_NON_DIGIT_IN_CONST")
-    '("digit-radix" "G_ERR_DIGIT_RADIX")
-    '("float-radix" "G_ERR_FLOAT_RADIX")
-    '("float-malformed" "G_ERR_FLOAT_MALFORMED")
-  )
-)
-
-(define-enum Error
-  (in-module "GShell")
-  (c-name "GShellError")
-  (gtype-id "G_TYPE_SHELL_ERROR")
-  (values
-    '("bad-quoting" "G_SHELL_ERROR_BAD_QUOTING")
-    '("empty-string" "G_SHELL_ERROR_EMPTY_STRING")
-    '("failed" "G_SHELL_ERROR_FAILED")
-  )
-)
-
-(define-enum Config
-  (in-module "GSlice")
-  (c-name "GSliceConfig")
-  (gtype-id "G_TYPE_SLICE_CONFIG")
-  (values
-    '("always-malloc" "G_SLICE_CONFIG_ALWAYS_MALLOC")
-    '("bypass-magazines" "G_SLICE_CONFIG_BYPASS_MAGAZINES")
-    '("working-set-msecs" "G_SLICE_CONFIG_WORKING_SET_MSECS")
-    '("color-increment" "G_SLICE_CONFIG_COLOR_INCREMENT")
-    '("chunk-sizes" "G_SLICE_CONFIG_CHUNK_SIZES")
-    '("contention-counter" "G_SLICE_CONFIG_CONTENTION_COUNTER")
-  )
-)
-
-(define-enum Error
-  (in-module "GSpawn")
-  (c-name "GSpawnError")
-  (gtype-id "G_TYPE_SPAWN_ERROR")
-  (values
-    '("fork" "G_SPAWN_ERROR_FORK")
-    '("read" "G_SPAWN_ERROR_READ")
-    '("chdir" "G_SPAWN_ERROR_CHDIR")
-    '("acces" "G_SPAWN_ERROR_ACCES")
-    '("perm" "G_SPAWN_ERROR_PERM")
-    '("too-big" "G_SPAWN_ERROR_TOO_BIG")
-    '("2big" "G_SPAWN_ERROR_2BIG")
-    '("noexec" "G_SPAWN_ERROR_NOEXEC")
-    '("nametoolong" "G_SPAWN_ERROR_NAMETOOLONG")
-    '("noent" "G_SPAWN_ERROR_NOENT")
-    '("nomem" "G_SPAWN_ERROR_NOMEM")
-    '("notdir" "G_SPAWN_ERROR_NOTDIR")
-    '("loop" "G_SPAWN_ERROR_LOOP")
-    '("txtbusy" "G_SPAWN_ERROR_TXTBUSY")
-    '("io" "G_SPAWN_ERROR_IO")
-    '("nfile" "G_SPAWN_ERROR_NFILE")
-    '("mfile" "G_SPAWN_ERROR_MFILE")
-    '("inval" "G_SPAWN_ERROR_INVAL")
-    '("isdir" "G_SPAWN_ERROR_ISDIR")
-    '("libbad" "G_SPAWN_ERROR_LIBBAD")
-    '("failed" "G_SPAWN_ERROR_FAILED")
-  )
-)
-
-(define-flags Flags
-  (in-module "GSpawn")
-  (c-name "GSpawnFlags")
-  (gtype-id "G_TYPE_SPAWN_FLAGS")
-  (values
-    '("default" "G_SPAWN_DEFAULT")
-    '("leave-descriptors-open" "G_SPAWN_LEAVE_DESCRIPTORS_OPEN")
-    '("do-not-reap-child" "G_SPAWN_DO_NOT_REAP_CHILD")
-    '("search-path" "G_SPAWN_SEARCH_PATH")
-    '("stdout-to-dev-null" "G_SPAWN_STDOUT_TO_DEV_NULL")
-    '("stderr-to-dev-null" "G_SPAWN_STDERR_TO_DEV_NULL")
-    '("child-inherits-stdin" "G_SPAWN_CHILD_INHERITS_STDIN")
-    '("file-and-argv-zero" "G_SPAWN_FILE_AND_ARGV_ZERO")
-    '("search-path-from-envp" "G_SPAWN_SEARCH_PATH_FROM_ENVP")
-    '("cloexec-pipes" "G_SPAWN_CLOEXEC_PIPES")
-  )
-)
-
-(define-flags Type
-  (in-module "GAscii")
-  (c-name "GAsciiType")
-  (gtype-id "G_TYPE_ASCII_TYPE")
-  (values
-    '("alnum" "G_ASCII_ALNUM")
-    '("alpha" "G_ASCII_ALPHA")
-    '("cntrl" "G_ASCII_CNTRL")
-    '("digit" "G_ASCII_DIGIT")
-    '("graph" "G_ASCII_GRAPH")
-    '("lower" "G_ASCII_LOWER")
-    '("print" "G_ASCII_PRINT")
-    '("punct" "G_ASCII_PUNCT")
-    '("space" "G_ASCII_SPACE")
-    '("upper" "G_ASCII_UPPER")
-    '("xdigit" "G_ASCII_XDIGIT")
-  )
-)
-
-(define-flags TrapFlags
-  (in-module "GTest")
-  (c-name "GTestTrapFlags")
-  (gtype-id "G_TYPE_TEST_TRAP_FLAGS")
-  (values
-    '("silence-stdout" "G_TEST_TRAP_SILENCE_STDOUT")
-    '("silence-stderr" "G_TEST_TRAP_SILENCE_STDERR")
-    '("inherit-stdin" "G_TEST_TRAP_INHERIT_STDIN")
-  )
-)
-
-(define-flags SubprocessFlags
-  (in-module "GTest")
-  (c-name "GTestSubprocessFlags")
-  (gtype-id "G_TYPE_TEST_SUBPROCESS_FLAGS")
-  (values
-    '("stdin" "G_TEST_SUBPROCESS_INHERIT_STDIN")
-    '("stdout" "G_TEST_SUBPROCESS_INHERIT_STDOUT")
-    '("stderr" "G_TEST_SUBPROCESS_INHERIT_STDERR")
-  )
-)
-
-(define-enum LogType
-  (in-module "GTest")
-  (c-name "GTestLogType")
-  (gtype-id "G_TYPE_TEST_LOG_TYPE")
-  (values
-    '("none" "G_TEST_LOG_NONE")
-    '("error" "G_TEST_LOG_ERROR")
-    '("start-binary" "G_TEST_LOG_START_BINARY")
-    '("list-case" "G_TEST_LOG_LIST_CASE")
-    '("skip-case" "G_TEST_LOG_SKIP_CASE")
-    '("start-case" "G_TEST_LOG_START_CASE")
-    '("stop-case" "G_TEST_LOG_STOP_CASE")
-    '("min-result" "G_TEST_LOG_MIN_RESULT")
-    '("max-result" "G_TEST_LOG_MAX_RESULT")
-    '("message" "G_TEST_LOG_MESSAGE")
-    '("start-suite" "G_TEST_LOG_START_SUITE")
-    '("stop-suite" "G_TEST_LOG_STOP_SUITE")
-  )
-)
-
-(define-enum FileType
-  (in-module "GTest")
-  (c-name "GTestFileType")
-  (gtype-id "G_TYPE_TEST_FILE_TYPE")
-  (values
-    '("dist" "G_TEST_DIST")
-    '("built" "G_TEST_BUILT")
-  )
-)
-
-(define-enum Error
-  (in-module "GThread")
-  (c-name "GThreadError")
-  (gtype-id "G_TYPE_THREAD_ERROR")
-  (values
-    '("again" "G_THREAD_ERROR_AGAIN")
-  )
-)
-
-(define-enum Status
-  (in-module "GOnce")
-  (c-name "GOnceStatus")
-  (gtype-id "G_TYPE_ONCE_STATUS")
-  (values
-    '("notcalled" "G_ONCE_STATUS_NOTCALLED")
-    '("progress" "G_ONCE_STATUS_PROGRESS")
-    '("ready" "G_ONCE_STATUS_READY")
-  )
-)
-
-(define-enum Type
-  (in-module "GTime")
-  (c-name "GTimeType")
-  (gtype-id "G_TYPE_TIME_TYPE")
-  (values
-    '("standard" "G_TIME_TYPE_STANDARD")
-    '("daylight" "G_TIME_TYPE_DAYLIGHT")
-    '("universal" "G_TIME_TYPE_UNIVERSAL")
-  )
-)
-
-(define-enum Type
-  (in-module "GUnicode")
-  (c-name "GUnicodeType")
-  (gtype-id "G_TYPE_UNICODE_TYPE")
-  (values
-    '("control" "G_UNICODE_CONTROL")
-    '("format" "G_UNICODE_FORMAT")
-    '("unassigned" "G_UNICODE_UNASSIGNED")
-    '("private-use" "G_UNICODE_PRIVATE_USE")
-    '("surrogate" "G_UNICODE_SURROGATE")
-    '("lowercase-letter" "G_UNICODE_LOWERCASE_LETTER")
-    '("modifier-letter" "G_UNICODE_MODIFIER_LETTER")
-    '("other-letter" "G_UNICODE_OTHER_LETTER")
-    '("titlecase-letter" "G_UNICODE_TITLECASE_LETTER")
-    '("uppercase-letter" "G_UNICODE_UPPERCASE_LETTER")
-    '("spacing-mark" "G_UNICODE_SPACING_MARK")
-    '("enclosing-mark" "G_UNICODE_ENCLOSING_MARK")
-    '("non-spacing-mark" "G_UNICODE_NON_SPACING_MARK")
-    '("decimal-number" "G_UNICODE_DECIMAL_NUMBER")
-    '("letter-number" "G_UNICODE_LETTER_NUMBER")
-    '("other-number" "G_UNICODE_OTHER_NUMBER")
-    '("connect-punctuation" "G_UNICODE_CONNECT_PUNCTUATION")
-    '("dash-punctuation" "G_UNICODE_DASH_PUNCTUATION")
-    '("close-punctuation" "G_UNICODE_CLOSE_PUNCTUATION")
-    '("final-punctuation" "G_UNICODE_FINAL_PUNCTUATION")
-    '("initial-punctuation" "G_UNICODE_INITIAL_PUNCTUATION")
-    '("other-punctuation" "G_UNICODE_OTHER_PUNCTUATION")
-    '("open-punctuation" "G_UNICODE_OPEN_PUNCTUATION")
-    '("currency-symbol" "G_UNICODE_CURRENCY_SYMBOL")
-    '("modifier-symbol" "G_UNICODE_MODIFIER_SYMBOL")
-    '("math-symbol" "G_UNICODE_MATH_SYMBOL")
-    '("other-symbol" "G_UNICODE_OTHER_SYMBOL")
-    '("line-separator" "G_UNICODE_LINE_SEPARATOR")
-    '("paragraph-separator" "G_UNICODE_PARAGRAPH_SEPARATOR")
-    '("space-separator" "G_UNICODE_SPACE_SEPARATOR")
-  )
-)
-
-(define-enum BreakType
-  (in-module "GUnicode")
-  (c-name "GUnicodeBreakType")
-  (gtype-id "G_TYPE_UNICODE_BREAK_TYPE")
-  (values
-    '("mandatory" "G_UNICODE_BREAK_MANDATORY")
-    '("carriage-return" "G_UNICODE_BREAK_CARRIAGE_RETURN")
-    '("line-feed" "G_UNICODE_BREAK_LINE_FEED")
-    '("combining-mark" "G_UNICODE_BREAK_COMBINING_MARK")
-    '("surrogate" "G_UNICODE_BREAK_SURROGATE")
-    '("zero-width-space" "G_UNICODE_BREAK_ZERO_WIDTH_SPACE")
-    '("inseparable" "G_UNICODE_BREAK_INSEPARABLE")
-    '("non-breaking-glue" "G_UNICODE_BREAK_NON_BREAKING_GLUE")
-    '("contingent" "G_UNICODE_BREAK_CONTINGENT")
-    '("space" "G_UNICODE_BREAK_SPACE")
-    '("after" "G_UNICODE_BREAK_AFTER")
-    '("before" "G_UNICODE_BREAK_BEFORE")
-    '("before-and-after" "G_UNICODE_BREAK_BEFORE_AND_AFTER")
-    '("hyphen" "G_UNICODE_BREAK_HYPHEN")
-    '("non-starter" "G_UNICODE_BREAK_NON_STARTER")
-    '("open-punctuation" "G_UNICODE_BREAK_OPEN_PUNCTUATION")
-    '("close-punctuation" "G_UNICODE_BREAK_CLOSE_PUNCTUATION")
-    '("quotation" "G_UNICODE_BREAK_QUOTATION")
-    '("exclamation" "G_UNICODE_BREAK_EXCLAMATION")
-    '("ideographic" "G_UNICODE_BREAK_IDEOGRAPHIC")
-    '("numeric" "G_UNICODE_BREAK_NUMERIC")
-    '("infix-separator" "G_UNICODE_BREAK_INFIX_SEPARATOR")
-    '("symbol" "G_UNICODE_BREAK_SYMBOL")
-    '("alphabetic" "G_UNICODE_BREAK_ALPHABETIC")
-    '("prefix" "G_UNICODE_BREAK_PREFIX")
-    '("postfix" "G_UNICODE_BREAK_POSTFIX")
-    '("complex-context" "G_UNICODE_BREAK_COMPLEX_CONTEXT")
-    '("ambiguous" "G_UNICODE_BREAK_AMBIGUOUS")
-    '("unknown" "G_UNICODE_BREAK_UNKNOWN")
-    '("next-line" "G_UNICODE_BREAK_NEXT_LINE")
-    '("word-joiner" "G_UNICODE_BREAK_WORD_JOINER")
-    '("hangul-l-jamo" "G_UNICODE_BREAK_HANGUL_L_JAMO")
-    '("hangul-v-jamo" "G_UNICODE_BREAK_HANGUL_V_JAMO")
-    '("hangul-t-jamo" "G_UNICODE_BREAK_HANGUL_T_JAMO")
-    '("hangul-lv-syllable" "G_UNICODE_BREAK_HANGUL_LV_SYLLABLE")
-    '("hangul-lvt-syllable" "G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE")
-    '("close-paranthesis" "G_UNICODE_BREAK_CLOSE_PARANTHESIS")
-    '("conditional-japanese-starter" "G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER")
-    '("hebrew-letter" "G_UNICODE_BREAK_HEBREW_LETTER")
-    '("regional-indicator" "G_UNICODE_BREAK_REGIONAL_INDICATOR")
-  )
-)
-
-(define-enum Script
-  (in-module "GUnicode")
-  (c-name "GUnicodeScript")
-  (gtype-id "G_TYPE_UNICODE_SCRIPT")
-  (values
-    '("invalid-code" "G_UNICODE_SCRIPT_INVALID_CODE")
-    '("common" "G_UNICODE_SCRIPT_COMMON")
-    '("inherited" "G_UNICODE_SCRIPT_INHERITED")
-    '("arabic" "G_UNICODE_SCRIPT_ARABIC")
-    '("armenian" "G_UNICODE_SCRIPT_ARMENIAN")
-    '("bengali" "G_UNICODE_SCRIPT_BENGALI")
-    '("bopomofo" "G_UNICODE_SCRIPT_BOPOMOFO")
-    '("cherokee" "G_UNICODE_SCRIPT_CHEROKEE")
-    '("coptic" "G_UNICODE_SCRIPT_COPTIC")
-    '("cyrillic" "G_UNICODE_SCRIPT_CYRILLIC")
-    '("deseret" "G_UNICODE_SCRIPT_DESERET")
-    '("devanagari" "G_UNICODE_SCRIPT_DEVANAGARI")
-    '("ethiopic" "G_UNICODE_SCRIPT_ETHIOPIC")
-    '("georgian" "G_UNICODE_SCRIPT_GEORGIAN")
-    '("gothic" "G_UNICODE_SCRIPT_GOTHIC")
-    '("greek" "G_UNICODE_SCRIPT_GREEK")
-    '("gujarati" "G_UNICODE_SCRIPT_GUJARATI")
-    '("gurmukhi" "G_UNICODE_SCRIPT_GURMUKHI")
-    '("han" "G_UNICODE_SCRIPT_HAN")
-    '("hangul" "G_UNICODE_SCRIPT_HANGUL")
-    '("hebrew" "G_UNICODE_SCRIPT_HEBREW")
-    '("hiragana" "G_UNICODE_SCRIPT_HIRAGANA")
-    '("kannada" "G_UNICODE_SCRIPT_KANNADA")
-    '("katakana" "G_UNICODE_SCRIPT_KATAKANA")
-    '("khmer" "G_UNICODE_SCRIPT_KHMER")
-    '("lao" "G_UNICODE_SCRIPT_LAO")
-    '("latin" "G_UNICODE_SCRIPT_LATIN")
-    '("malayalam" "G_UNICODE_SCRIPT_MALAYALAM")
-    '("mongolian" "G_UNICODE_SCRIPT_MONGOLIAN")
-    '("myanmar" "G_UNICODE_SCRIPT_MYANMAR")
-    '("ogham" "G_UNICODE_SCRIPT_OGHAM")
-    '("old-italic" "G_UNICODE_SCRIPT_OLD_ITALIC")
-    '("oriya" "G_UNICODE_SCRIPT_ORIYA")
-    '("runic" "G_UNICODE_SCRIPT_RUNIC")
-    '("sinhala" "G_UNICODE_SCRIPT_SINHALA")
-    '("syriac" "G_UNICODE_SCRIPT_SYRIAC")
-    '("tamil" "G_UNICODE_SCRIPT_TAMIL")
-    '("telugu" "G_UNICODE_SCRIPT_TELUGU")
-    '("thaana" "G_UNICODE_SCRIPT_THAANA")
-    '("thai" "G_UNICODE_SCRIPT_THAI")
-    '("tibetan" "G_UNICODE_SCRIPT_TIBETAN")
-    '("canadian-aboriginal" "G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL")
-    '("yi" "G_UNICODE_SCRIPT_YI")
-    '("tagalog" "G_UNICODE_SCRIPT_TAGALOG")
-    '("hanunoo" "G_UNICODE_SCRIPT_HANUNOO")
-    '("buhid" "G_UNICODE_SCRIPT_BUHID")
-    '("tagbanwa" "G_UNICODE_SCRIPT_TAGBANWA")
-    '("braille" "G_UNICODE_SCRIPT_BRAILLE")
-    '("cypriot" "G_UNICODE_SCRIPT_CYPRIOT")
-    '("limbu" "G_UNICODE_SCRIPT_LIMBU")
-    '("osmanya" "G_UNICODE_SCRIPT_OSMANYA")
-    '("shavian" "G_UNICODE_SCRIPT_SHAVIAN")
-    '("linear-b" "G_UNICODE_SCRIPT_LINEAR_B")
-    '("tai-le" "G_UNICODE_SCRIPT_TAI_LE")
-    '("ugaritic" "G_UNICODE_SCRIPT_UGARITIC")
-    '("new-tai-lue" "G_UNICODE_SCRIPT_NEW_TAI_LUE")
-    '("buginese" "G_UNICODE_SCRIPT_BUGINESE")
-    '("glagolitic" "G_UNICODE_SCRIPT_GLAGOLITIC")
-    '("tifinagh" "G_UNICODE_SCRIPT_TIFINAGH")
-    '("syloti-nagri" "G_UNICODE_SCRIPT_SYLOTI_NAGRI")
-    '("old-persian" "G_UNICODE_SCRIPT_OLD_PERSIAN")
-    '("kharoshthi" "G_UNICODE_SCRIPT_KHAROSHTHI")
-    '("unknown" "G_UNICODE_SCRIPT_UNKNOWN")
-    '("balinese" "G_UNICODE_SCRIPT_BALINESE")
-    '("cuneiform" "G_UNICODE_SCRIPT_CUNEIFORM")
-    '("phoenician" "G_UNICODE_SCRIPT_PHOENICIAN")
-    '("phags-pa" "G_UNICODE_SCRIPT_PHAGS_PA")
-    '("nko" "G_UNICODE_SCRIPT_NKO")
-    '("kayah-li" "G_UNICODE_SCRIPT_KAYAH_LI")
-    '("lepcha" "G_UNICODE_SCRIPT_LEPCHA")
-    '("rejang" "G_UNICODE_SCRIPT_REJANG")
-    '("sundanese" "G_UNICODE_SCRIPT_SUNDANESE")
-    '("saurashtra" "G_UNICODE_SCRIPT_SAURASHTRA")
-    '("cham" "G_UNICODE_SCRIPT_CHAM")
-    '("ol-chiki" "G_UNICODE_SCRIPT_OL_CHIKI")
-    '("vai" "G_UNICODE_SCRIPT_VAI")
-    '("carian" "G_UNICODE_SCRIPT_CARIAN")
-    '("lycian" "G_UNICODE_SCRIPT_LYCIAN")
-    '("lydian" "G_UNICODE_SCRIPT_LYDIAN")
-    '("avestan" "G_UNICODE_SCRIPT_AVESTAN")
-    '("bamum" "G_UNICODE_SCRIPT_BAMUM")
-    '("egyptian-hieroglyphs" "G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS")
-    '("imperial-aramaic" "G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC")
-    '("inscriptional-pahlavi" "G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI")
-    '("inscriptional-parthian" "G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN")
-    '("javanese" "G_UNICODE_SCRIPT_JAVANESE")
-    '("kaithi" "G_UNICODE_SCRIPT_KAITHI")
-    '("lisu" "G_UNICODE_SCRIPT_LISU")
-    '("meetei-mayek" "G_UNICODE_SCRIPT_MEETEI_MAYEK")
-    '("old-south-arabian" "G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN")
-    '("old-turkic" "G_UNICODE_SCRIPT_OLD_TURKIC")
-    '("samaritan" "G_UNICODE_SCRIPT_SAMARITAN")
-    '("tai-tham" "G_UNICODE_SCRIPT_TAI_THAM")
-    '("tai-viet" "G_UNICODE_SCRIPT_TAI_VIET")
-    '("batak" "G_UNICODE_SCRIPT_BATAK")
-    '("brahmi" "G_UNICODE_SCRIPT_BRAHMI")
-    '("mandaic" "G_UNICODE_SCRIPT_MANDAIC")
-    '("chakma" "G_UNICODE_SCRIPT_CHAKMA")
-    '("meroitic-cursive" "G_UNICODE_SCRIPT_MEROITIC_CURSIVE")
-    '("meroitic-hieroglyphs" "G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS")
-    '("miao" "G_UNICODE_SCRIPT_MIAO")
-    '("sharada" "G_UNICODE_SCRIPT_SHARADA")
-    '("sora-sompeng" "G_UNICODE_SCRIPT_SORA_SOMPENG")
-    '("takri" "G_UNICODE_SCRIPT_TAKRI")
-    '("bassa-vah" "G_UNICODE_SCRIPT_BASSA_VAH")
-    '("caucasian-albanian" "G_UNICODE_SCRIPT_CAUCASIAN_ALBANIAN")
-    '("duployan" "G_UNICODE_SCRIPT_DUPLOYAN")
-    '("elbasan" "G_UNICODE_SCRIPT_ELBASAN")
-    '("grantha" "G_UNICODE_SCRIPT_GRANTHA")
-    '("khojki" "G_UNICODE_SCRIPT_KHOJKI")
-    '("khudawadi" "G_UNICODE_SCRIPT_KHUDAWADI")
-    '("linear-a" "G_UNICODE_SCRIPT_LINEAR_A")
-    '("mahajani" "G_UNICODE_SCRIPT_MAHAJANI")
-    '("manichaean" "G_UNICODE_SCRIPT_MANICHAEAN")
-    '("mende-kikakui" "G_UNICODE_SCRIPT_MENDE_KIKAKUI")
-    '("modi" "G_UNICODE_SCRIPT_MODI")
-    '("mro" "G_UNICODE_SCRIPT_MRO")
-    '("nabataean" "G_UNICODE_SCRIPT_NABATAEAN")
-    '("old-north-arabian" "G_UNICODE_SCRIPT_OLD_NORTH_ARABIAN")
-    '("old-permic" "G_UNICODE_SCRIPT_OLD_PERMIC")
-    '("pahawh-hmong" "G_UNICODE_SCRIPT_PAHAWH_HMONG")
-    '("palmyrene" "G_UNICODE_SCRIPT_PALMYRENE")
-    '("pau-cin-hau" "G_UNICODE_SCRIPT_PAU_CIN_HAU")
-    '("psalter-pahlavi" "G_UNICODE_SCRIPT_PSALTER_PAHLAVI")
-    '("siddham" "G_UNICODE_SCRIPT_SIDDHAM")
-    '("tirhuta" "G_UNICODE_SCRIPT_TIRHUTA")
-    '("warang-citi" "G_UNICODE_SCRIPT_WARANG_CITI")
-    '("ahom" "G_UNICODE_SCRIPT_AHOM")
-    '("anatolian-hieroglyphs" "G_UNICODE_SCRIPT_ANATOLIAN_HIEROGLYPHS")
-    '("hatran" "G_UNICODE_SCRIPT_HATRAN")
-    '("multani" "G_UNICODE_SCRIPT_MULTANI")
-    '("old-hungarian" "G_UNICODE_SCRIPT_OLD_HUNGARIAN")
-    '("signwriting" "G_UNICODE_SCRIPT_SIGNWRITING")
-  )
-)
-
-(define-enum Mode
-  (in-module "GNormalize")
-  (c-name "GNormalizeMode")
-  (gtype-id "G_TYPE_NORMALIZE_MODE")
-  (values
-    '("default" "G_NORMALIZE_DEFAULT")
-    '("nfd" "G_NORMALIZE_NFD")
-    '("default-compose" "G_NORMALIZE_DEFAULT_COMPOSE")
-    '("nfc" "G_NORMALIZE_NFC")
-    '("all" "G_NORMALIZE_ALL")
-    '("nfkd" "G_NORMALIZE_NFKD")
-    '("all-compose" "G_NORMALIZE_ALL_COMPOSE")
-    '("nfkc" "G_NORMALIZE_NFKC")
-  )
-)
-
-(define-enum Directory
-  (in-module "GUser")
-  (c-name "GUserDirectory")
-  (gtype-id "G_TYPE_USER_DIRECTORY")
-  (values
-    '("directory-desktop" "G_USER_DIRECTORY_DESKTOP")
-    '("directory-documents" "G_USER_DIRECTORY_DOCUMENTS")
-    '("directory-download" "G_USER_DIRECTORY_DOWNLOAD")
-    '("directory-music" "G_USER_DIRECTORY_MUSIC")
-    '("directory-pictures" "G_USER_DIRECTORY_PICTURES")
-    '("directory-public-share" "G_USER_DIRECTORY_PUBLIC_SHARE")
-    '("directory-templates" "G_USER_DIRECTORY_TEMPLATES")
-    '("directory-videos" "G_USER_DIRECTORY_VIDEOS")
-    '("n-directories" "G_USER_N_DIRECTORIES")
-  )
-)
-
-(define-flags SizeFlags
-  (in-module "GFormat")
-  (c-name "GFormatSizeFlags")
-  (gtype-id "G_TYPE_FORMAT_SIZE_FLAGS")
-  (values
-    '("default" "G_FORMAT_SIZE_DEFAULT")
-    '("long-format" "G_FORMAT_SIZE_LONG_FORMAT")
-    '("iec-units" "G_FORMAT_SIZE_IEC_UNITS")
-  )
-)
-
-(define-enum Class
-  (in-module "GVariant")
-  (c-name "GVariantClass")
-  (gtype-id "G_TYPE_VARIANT_CLASS")
-  (values
-    '("boolean" "G_VARIANT_CLASS_BOOLEAN")
-    '("byte" "G_VARIANT_CLASS_BYTE")
-    '("int16" "G_VARIANT_CLASS_INT16")
-    '("uint16" "G_VARIANT_CLASS_UINT16")
-    '("int32" "G_VARIANT_CLASS_INT32")
-    '("uint32" "G_VARIANT_CLASS_UINT32")
-    '("int64" "G_VARIANT_CLASS_INT64")
-    '("uint64" "G_VARIANT_CLASS_UINT64")
-    '("handle" "G_VARIANT_CLASS_HANDLE")
-    '("double" "G_VARIANT_CLASS_DOUBLE")
-    '("string" "G_VARIANT_CLASS_STRING")
-    '("object-path" "G_VARIANT_CLASS_OBJECT_PATH")
-    '("signature" "G_VARIANT_CLASS_SIGNATURE")
-    '("variant" "G_VARIANT_CLASS_VARIANT")
-    '("maybe" "G_VARIANT_CLASS_MAYBE")
-    '("array" "G_VARIANT_CLASS_ARRAY")
-    '("tuple" "G_VARIANT_CLASS_TUPLE")
-    '("dict-entry" "G_VARIANT_CLASS_DICT_ENTRY")
-  )
-)
-
-(define-enum ParseError
-  (in-module "GVariant")
-  (c-name "GVariantParseError")
-  (gtype-id "G_TYPE_VARIANT_PARSE_ERROR")
-  (values
-    '("failed" "G_VARIANT_PARSE_ERROR_FAILED")
-    '("basic-type-expected" "G_VARIANT_PARSE_ERROR_BASIC_TYPE_EXPECTED")
-    '("cannot-infer-type" "G_VARIANT_PARSE_ERROR_CANNOT_INFER_TYPE")
-    '("definite-type-expected" "G_VARIANT_PARSE_ERROR_DEFINITE_TYPE_EXPECTED")
-    '("input-not-at-end" "G_VARIANT_PARSE_ERROR_INPUT_NOT_AT_END")
-    '("invalid-character" "G_VARIANT_PARSE_ERROR_INVALID_CHARACTER")
-    '("invalid-format-string" "G_VARIANT_PARSE_ERROR_INVALID_FORMAT_STRING")
-    '("invalid-object-path" "G_VARIANT_PARSE_ERROR_INVALID_OBJECT_PATH")
-    '("invalid-signature" "G_VARIANT_PARSE_ERROR_INVALID_SIGNATURE")
-    '("invalid-type-string" "G_VARIANT_PARSE_ERROR_INVALID_TYPE_STRING")
-    '("no-common-type" "G_VARIANT_PARSE_ERROR_NO_COMMON_TYPE")
-    '("number-out-of-range" "G_VARIANT_PARSE_ERROR_NUMBER_OUT_OF_RANGE")
-    '("number-too-big" "G_VARIANT_PARSE_ERROR_NUMBER_TOO_BIG")
-    '("type-error" "G_VARIANT_PARSE_ERROR_TYPE_ERROR")
-    '("unexpected-token" "G_VARIANT_PARSE_ERROR_UNEXPECTED_TOKEN")
-    '("unknown-keyword" "G_VARIANT_PARSE_ERROR_UNKNOWN_KEYWORD")
-    '("unterminated-string-constant" "G_VARIANT_PARSE_ERROR_UNTERMINATED_STRING_CONSTANT")
-    '("value-expected" "G_VARIANT_PARSE_ERROR_VALUE_EXPECTED")
-  )
-)
-
-(define-enum Priority
-  (in-module "GThread")
-  (c-name "GThreadPriority")
-  (gtype-id "G_TYPE_THREAD_PRIORITY")
-  (values
-    '("low" "G_THREAD_PRIORITY_LOW")
-    '("normal" "G_THREAD_PRIORITY_NORMAL")
-    '("high" "G_THREAD_PRIORITY_HIGH")
-    '("urgent" "G_THREAD_PRIORITY_URGENT")
-  )
-)
-
-
-;; From galloca.h
-
-(define-function alloca
-  (c-name "alloca")
-  (return-type "char*")
+(define-function g_access
+  (c-name "g_access")
+  (return-type "int")
   (parameters
+    '("gchar*" "filename")
+    '("int" "mode")
   )
 )
 
-
-
-;; From garray.h
-
-(define-function g_array_new
-  (c-name "g_array_new")
-  (is-constructor-of "GArray")
-  (return-type "GArray*")
+(define-function g_ascii_digit_value
+  (c-name "g_ascii_digit_value")
+  (return-type "gint")
   (parameters
-    '("gboolean" "zero_terminated")
-    '("gboolean" "clear_")
-    '("guint" "element_size")
+    '("gchar" "c")
   )
 )
 
-(define-function g_array_sized_new
-  (c-name "g_array_sized_new")
-  (is-constructor-of "GArraySized")
-  (return-type "GArray*")
+(define-function g_ascii_dtostr
+  (c-name "g_ascii_dtostr")
+  (return-type "gchar*")
   (parameters
-    '("gboolean" "zero_terminated")
-    '("gboolean" "clear_")
-    '("guint" "element_size")
-    '("guint" "reserved_size")
+    '("gchar*" "buffer")
+    '("gint" "buf_len")
+    '("gdouble" "d")
   )
 )
 
-(define-method free
-  (of-object "GArray")
-  (c-name "g_array_free")
+(define-function g_ascii_formatd
+  (c-name "g_ascii_formatd")
   (return-type "gchar*")
   (parameters
-    '("gboolean" "free_segment")
+    '("gchar*" "buffer")
+    '("gint" "buf_len")
+    '("const-gchar*" "format")
+    '("gdouble" "d")
   )
 )
 
-(define-method ref
-  (of-object "GArray")
-  (c-name "g_array_ref")
-  (return-type "GArray*")
+(define-function g_ascii_strcasecmp
+  (c-name "g_ascii_strcasecmp")
+  (return-type "gint")
+  (parameters
+    '("const-gchar*" "s1")
+    '("const-gchar*" "s2")
+  )
 )
 
-(define-method unref
-  (of-object "GArray")
-  (c-name "g_array_unref")
-  (return-type "none")
+(define-function g_ascii_strdown
+  (c-name "g_ascii_strdown")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "str")
+    '("gssize" "len")
+  )
 )
 
-(define-method get_element_size
-  (of-object "GArray")
-  (c-name "g_array_get_element_size")
-  (return-type "guint")
+(define-function g_ascii_strncasecmp
+  (c-name "g_ascii_strncasecmp")
+  (return-type "gint")
+  (parameters
+    '("const-gchar*" "s1")
+    '("const-gchar*" "s2")
+    '("gsize" "n")
+  )
 )
 
-(define-method append_vals
-  (of-object "GArray")
-  (c-name "g_array_append_vals")
-  (return-type "GArray*")
+(define-function g_ascii_strtod
+  (c-name "g_ascii_strtod")
+  (return-type "gdouble")
   (parameters
-    '("gconstpointer" "data")
-    '("guint" "len")
+    '("const-gchar*" "nptr")
+    '("gchar**" "endptr")
   )
 )
 
-(define-method prepend_vals
-  (of-object "GArray")
-  (c-name "g_array_prepend_vals")
-  (return-type "GArray*")
+(define-function g_ascii_strtoll
+  (c-name "g_ascii_strtoll")
+  (return-type "gint64")
   (parameters
-    '("gconstpointer" "data")
-    '("guint" "len")
+    '("const-gchar*" "nptr")
+    '("gchar**" "endptr")
+    '("guint" "base")
   )
 )
 
-(define-method insert_vals
-  (of-object "GArray")
-  (c-name "g_array_insert_vals")
-  (return-type "GArray*")
+(define-function g_ascii_strtoull
+  (c-name "g_ascii_strtoull")
+  (return-type "guint64")
   (parameters
-    '("guint" "index_")
-    '("gconstpointer" "data")
-    '("guint" "len")
+    '("const-gchar*" "nptr")
+    '("gchar**" "endptr")
+    '("guint" "base")
   )
 )
 
-(define-method set_size
-  (of-object "GArray")
-  (c-name "g_array_set_size")
-  (return-type "GArray*")
+(define-function g_ascii_strup
+  (c-name "g_ascii_strup")
+  (return-type "gchar*")
   (parameters
-    '("guint" "length")
+    '("const-gchar*" "str")
+    '("gssize" "len")
   )
 )
 
-(define-method remove_index
-  (of-object "GArray")
-  (c-name "g_array_remove_index")
-  (return-type "GArray*")
+(define-function g_ascii_tolower
+  (c-name "g_ascii_tolower")
+  (return-type "gchar")
   (parameters
-    '("guint" "index_")
+    '("gchar" "c")
   )
 )
 
-(define-method remove_index_fast
-  (of-object "GArray")
-  (c-name "g_array_remove_index_fast")
-  (return-type "GArray*")
+(define-function g_ascii_toupper
+  (c-name "g_ascii_toupper")
+  (return-type "gchar")
   (parameters
-    '("guint" "index_")
+    '("gchar" "c")
   )
 )
 
-(define-method remove_range
-  (of-object "GArray")
-  (c-name "g_array_remove_range")
-  (return-type "GArray*")
+(define-function g_ascii_xdigit_value
+  (c-name "g_ascii_xdigit_value")
+  (return-type "gint")
   (parameters
-    '("guint" "index_")
-    '("guint" "length")
+    '("gchar" "c")
   )
 )
 
-(define-method sort
-  (of-object "GArray")
-  (c-name "g_array_sort")
-  (return-type "none")
+(define-function g_assert_warning
+  (c-name "g_assert_warning")
+  (return-type "void")
   (parameters
-    '("GCompareFunc" "compare_func")
+    '("const-char*" "log_domain")
+    '("const-char*" "file")
+    '("const-int" "line")
+    '("const-char*" "pretty_function")
+    '("const-char*" "expression")
   )
 )
 
-(define-method sort_with_data
-  (of-object "GArray")
-  (c-name "g_array_sort_with_data")
-  (return-type "none")
+(define-function g_assertion_message
+  (c-name "g_assertion_message")
+  (return-type "void")
   (parameters
-    '("GCompareDataFunc" "compare_func")
-    '("gpointer" "user_data")
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("const-char*" "message")
   )
 )
 
-(define-method set_clear_func
-  (of-object "GArray")
-  (c-name "g_array_set_clear_func")
-  (return-type "none")
+(define-function g_assertion_message_cmpnum
+  (c-name "g_assertion_message_cmpnum")
+  (return-type "void")
   (parameters
-    '("GDestroyNotify" "clear_func")
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("const-char*" "expr")
+    '("longdouble" "arg1")
+    '("const-char*" "cmp")
+    '("longdouble" "arg2")
+    '("char" "numtype")
   )
 )
 
-(define-function g_ptr_array_new
-  (c-name "g_ptr_array_new")
-  (is-constructor-of "GPtrArray")
-  (return-type "GPtrArray*")
+(define-function g_assertion_message_cmpstr
+  (c-name "g_assertion_message_cmpstr")
+  (return-type "void")
+  (parameters
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("const-char*" "expr")
+    '("const-char*" "arg1")
+    '("const-char*" "cmp")
+    '("const-char*" "arg2")
+  )
 )
 
-(define-function g_ptr_array_new_with_free_func
-  (c-name "g_ptr_array_new_with_free_func")
-  (return-type "GPtrArray*")
+(define-function g_assertion_message_error
+  (c-name "g_assertion_message_error")
+  (return-type "void")
   (parameters
-    '("GDestroyNotify" "element_free_func")
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("const-char*" "expr")
+    '("const-GError*" "error")
+    '("GQuark" "error_domain")
+    '("int" "error_code")
   )
 )
 
-(define-function g_ptr_array_sized_new
-  (c-name "g_ptr_array_sized_new")
-  (is-constructor-of "GPtrArraySized")
-  (return-type "GPtrArray*")
+(define-function g_assertion_message_expr
+  (c-name "g_assertion_message_expr")
+  (return-type "void")
   (parameters
-    '("guint" "reserved_size")
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("const-char*" "expr")
   )
 )
 
-(define-function g_ptr_array_new_full
-  (c-name "g_ptr_array_new_full")
-  (return-type "GPtrArray*")
+(define-function g_atexit
+  (c-name "g_atexit")
+  (return-type "void")
   (parameters
-    '("guint" "reserved_size")
-    '("GDestroyNotify" "element_free_func")
+    '("GVoidFunc" "func")
   )
 )
 
-(define-method free
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_free")
-  (return-type "gpointer*")
+(define-function g_atomic_int_add
+  (c-name "g_atomic_int_add")
+  (return-type "gint")
   (parameters
-    '("gboolean" "free_seg")
+    '("volatilegint*" "atomic")
+    '("gint" "val")
   )
 )
 
-(define-method ref
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_ref")
-  (return-type "GPtrArray*")
+(define-function g_atomic_int_and
+  (c-name "g_atomic_int_and")
+  (return-type "guint")
+  (parameters
+    '("volatileguint*" "atomic")
+    '("guint" "val")
+  )
 )
 
-(define-method unref
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_unref")
-  (return-type "none")
+(define-function g_atomic_int_compare_and_exchange
+  (c-name "g_atomic_int_compare_and_exchange")
+  (return-type "gboolean")
+  (parameters
+    '("volatilegint*" "atomic")
+    '("gint" "oldval")
+    '("gint" "newval")
+  )
 )
 
-(define-method set_free_func
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_set_free_func")
-  (return-type "none")
+(define-function g_atomic_int_dec_and_test
+  (c-name "g_atomic_int_dec_and_test")
+  (return-type "gboolean")
   (parameters
-    '("GDestroyNotify" "element_free_func")
+    '("volatilegint*" "atomic")
   )
 )
 
-(define-method set_size
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_set_size")
-  (return-type "none")
+(define-function g_atomic_int_exchange_and_add
+  (c-name "g_atomic_int_exchange_and_add")
+  (return-type "gint")
   (parameters
-    '("gint" "length")
+    '("volatilegint*" "atomic")
+    '("gint" "val")
   )
 )
 
-(define-method remove_index
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_remove_index")
-  (return-type "gpointer")
+(define-function g_atomic_int_get
+  (c-name "g_atomic_int_get")
+  (return-type "gint")
   (parameters
-    '("guint" "index_")
+    '("volatileconst-gint*" "atomic")
   )
 )
 
-(define-method remove_index_fast
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_remove_index_fast")
-  (return-type "gpointer")
+(define-function g_atomic_int_inc
+  (c-name "g_atomic_int_inc")
+  (return-type "void")
   (parameters
-    '("guint" "index_")
+    '("volatilegint*" "atomic")
   )
 )
 
-(define-method remove
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_remove")
-  (return-type "gboolean")
+(define-function g_atomic_int_or
+  (c-name "g_atomic_int_or")
+  (return-type "guint")
   (parameters
-    '("gpointer" "data")
+    '("volatileguint*" "atomic")
+    '("guint" "val")
   )
 )
 
-(define-method remove_fast
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_remove_fast")
-  (return-type "gboolean")
+(define-function g_atomic_int_set
+  (c-name "g_atomic_int_set")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
+    '("volatilegint*" "atomic")
+    '("gint" "newval")
   )
 )
 
-(define-method remove_range
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_remove_range")
-  (return-type "GPtrArray*")
+(define-function g_atomic_int_xor
+  (c-name "g_atomic_int_xor")
+  (return-type "guint")
   (parameters
-    '("guint" "index_")
-    '("guint" "length")
+    '("volatileguint*" "atomic")
+    '("guint" "val")
   )
 )
 
-(define-method add
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_add")
-  (return-type "none")
+(define-function g_atomic_pointer_add
+  (c-name "g_atomic_pointer_add")
+  (return-type "gssize")
   (parameters
-    '("gpointer" "data")
+    '("void*" "atomic")
+    '("gssize" "val")
   )
 )
 
-(define-method insert
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_insert")
-  (return-type "none")
+(define-function g_atomic_pointer_and
+  (c-name "g_atomic_pointer_and")
+  (return-type "gsize")
   (parameters
-    '("gint" "index_")
-    '("gpointer" "data")
+    '("void*" "atomic")
+    '("gsize" "val")
   )
 )
 
-(define-method sort
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_sort")
-  (return-type "none")
+(define-function g_atomic_pointer_compare_and_exchange
+  (c-name "g_atomic_pointer_compare_and_exchange")
+  (return-type "gboolean")
   (parameters
-    '("GCompareFunc" "compare_func")
+    '("void*" "atomic")
+    '("gpointer" "oldval")
+    '("gpointer" "newval")
   )
 )
 
-(define-method sort_with_data
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_sort_with_data")
-  (return-type "none")
+(define-function g_atomic_pointer_get
+  (c-name "g_atomic_pointer_get")
+  (return-type "gpointer")
   (parameters
-    '("GCompareDataFunc" "compare_func")
-    '("gpointer" "user_data")
+    '("void*" "atomic")
   )
 )
 
-(define-method foreach
-  (of-object "GPtrArray")
-  (c-name "g_ptr_array_foreach")
-  (return-type "none")
+(define-function g_atomic_pointer_or
+  (c-name "g_atomic_pointer_or")
+  (return-type "gsize")
   (parameters
-    '("GFunc" "func")
-    '("gpointer" "user_data")
+    '("void*" "atomic")
+    '("gsize" "val")
   )
 )
 
-(define-function g_byte_array_new
-  (c-name "g_byte_array_new")
-  (is-constructor-of "GByteArray")
-  (return-type "GByteArray*")
+(define-function g_atomic_pointer_set
+  (c-name "g_atomic_pointer_set")
+  (return-type "void")
+  (parameters
+    '("void*" "atomic")
+    '("gpointer" "newval")
+  )
 )
 
-(define-function g_byte_array_new_take
-  (c-name "g_byte_array_new_take")
-  (return-type "GByteArray*")
+(define-function g_atomic_pointer_xor
+  (c-name "g_atomic_pointer_xor")
+  (return-type "gsize")
   (parameters
-    '("guint8*" "data")
-    '("gsize" "len")
+    '("void*" "atomic")
+    '("gsize" "val")
   )
 )
 
-(define-function g_byte_array_sized_new
-  (c-name "g_byte_array_sized_new")
-  (is-constructor-of "GByteArraySized")
-  (return-type "GByteArray*")
+(define-function g_base64_decode
+  (c-name "g_base64_decode")
+  (return-type "guchar*")
   (parameters
-    '("guint" "reserved_size")
+    '("const-gchar*" "text")
+    '("gsize*" "out_len")
   )
 )
 
-(define-method free
-  (of-object "GByteArray")
-  (c-name "g_byte_array_free")
-  (return-type "guint8*")
+(define-function g_base64_decode_inplace
+  (c-name "g_base64_decode_inplace")
+  (return-type "guchar*")
   (parameters
-    '("gboolean" "free_segment")
+    '("gchar*" "text")
+    '("gsize*" "out_len")
   )
 )
 
-(define-method free_to_bytes
-  (of-object "GByteArray")
-  (c-name "g_byte_array_free_to_bytes")
-  (return-type "GBytes*")
+(define-function g_base64_decode_step
+  (c-name "g_base64_decode_step")
+  (return-type "gsize")
+  (parameters
+    '("gchar*" "in")
+    '("gsize" "len")
+    '("guchar*" "out")
+    '("gint*" "state")
+    '("guint*" "save")
+  )
 )
 
-(define-method ref
-  (of-object "GByteArray")
-  (c-name "g_byte_array_ref")
-  (return-type "GByteArray*")
+(define-function g_base64_encode
+  (c-name "g_base64_encode")
+  (return-type "gchar*")
+  (parameters
+    '("guchar*" "data")
+    '("gsize" "len")
+  )
 )
 
-(define-method unref
-  (of-object "GByteArray")
-  (c-name "g_byte_array_unref")
-  (return-type "none")
+(define-function g_base64_encode_close
+  (c-name "g_base64_encode_close")
+  (return-type "gsize")
+  (parameters
+    '("gboolean" "break_lines")
+    '("gchar*" "out")
+    '("gint*" "state")
+    '("gint*" "save")
+  )
 )
 
-(define-method append
-  (of-object "GByteArray")
-  (c-name "g_byte_array_append")
-  (return-type "GByteArray*")
+(define-function g_base64_encode_step
+  (c-name "g_base64_encode_step")
+  (return-type "gsize")
   (parameters
-    '("const-guint8*" "data")
-    '("guint" "len")
+    '("guchar*" "in")
+    '("gsize" "len")
+    '("gboolean" "break_lines")
+    '("gchar*" "out")
+    '("gint*" "state")
+    '("gint*" "save")
   )
 )
 
-(define-method prepend
-  (of-object "GByteArray")
-  (c-name "g_byte_array_prepend")
-  (return-type "GByteArray*")
+(define-function g_basename
+  (c-name "g_basename")
+  (return-type "gchar*")
   (parameters
-    '("const-guint8*" "data")
-    '("guint" "len")
+    '("gchar*" "file_name")
   )
 )
 
-(define-method set_size
-  (of-object "GByteArray")
-  (c-name "g_byte_array_set_size")
-  (return-type "GByteArray*")
+(define-function g_bit_lock
+  (c-name "g_bit_lock")
+  (return-type "void")
   (parameters
-    '("guint" "length")
+    '("volatilegint*" "address")
+    '("gint" "lock_bit")
   )
 )
 
-(define-method remove_index
-  (of-object "GByteArray")
-  (c-name "g_byte_array_remove_index")
-  (return-type "GByteArray*")
+(define-function g_bit_nth_lsf
+  (c-name "g_bit_nth_lsf")
+  (return-type "gint")
   (parameters
-    '("guint" "index_")
+    '("gulong" "mask")
+    '("gint" "nth_bit")
   )
 )
 
-(define-method remove_index_fast
-  (of-object "GByteArray")
-  (c-name "g_byte_array_remove_index_fast")
-  (return-type "GByteArray*")
+(define-function g_bit_nth_msf
+  (c-name "g_bit_nth_msf")
+  (return-type "gint")
   (parameters
-    '("guint" "index_")
+    '("gulong" "mask")
+    '("gint" "nth_bit")
   )
 )
 
-(define-method remove_range
-  (of-object "GByteArray")
-  (c-name "g_byte_array_remove_range")
-  (return-type "GByteArray*")
+(define-function g_bit_storage
+  (c-name "g_bit_storage")
+  (return-type "guint")
   (parameters
-    '("guint" "index_")
-    '("guint" "length")
+    '("gulong" "number")
   )
 )
 
-(define-method sort
-  (of-object "GByteArray")
-  (c-name "g_byte_array_sort")
-  (return-type "none")
+(define-function g_bit_trylock
+  (c-name "g_bit_trylock")
+  (return-type "gboolean")
   (parameters
-    '("GCompareFunc" "compare_func")
+    '("volatilegint*" "address")
+    '("gint" "lock_bit")
   )
 )
 
-(define-method sort_with_data
-  (of-object "GByteArray")
-  (c-name "g_byte_array_sort_with_data")
-  (return-type "none")
+(define-function g_bit_unlock
+  (c-name "g_bit_unlock")
+  (return-type "void")
   (parameters
-    '("GCompareDataFunc" "compare_func")
-    '("gpointer" "user_data")
+    '("volatilegint*" "address")
+    '("gint" "lock_bit")
   )
 )
 
+(define-function g_bookmark_file_error_quark
+  (c-name "g_bookmark_file_error_quark")
+  (return-type "GQuark")
+)
 
+(define-function g_build_filename
+  (c-name "g_build_filename")
+  (return-type "gchar*")
+  (parameters
+    '("gchar*" "first_element")
+    '("..." "...")
+  )
+)
 
-;; From gasyncqueue.h
+(define-function g_build_filenamev
+  (c-name "g_build_filenamev")
+  (return-type "gchar*")
+  (parameters
+    '("gchar**" "args")
+  )
+)
 
-(define-function g_async_queue_new
-  (c-name "g_async_queue_new")
-  (is-constructor-of "GAsyncQueue")
-  (return-type "GAsyncQueue*")
+(define-function g_build_path
+  (c-name "g_build_path")
+  (return-type "gchar*")
+  (parameters
+    '("gchar*" "separator")
+    '("gchar*" "first_element")
+    '("..." "...")
+  )
 )
 
-(define-function g_async_queue_new_full
-  (c-name "g_async_queue_new_full")
-  (return-type "GAsyncQueue*")
+(define-function g_build_pathv
+  (c-name "g_build_pathv")
+  (return-type "gchar*")
   (parameters
-    '("GDestroyNotify" "item_free_func")
+    '("const-gchar*" "separator")
+    '("gchar**" "args")
   )
 )
 
-(define-method lock
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_lock")
-  (return-type "none")
+(define-function g_byte_array_free
+  (c-name "g_byte_array_free")
+  (return-type "guint8*")
+  (parameters
+    '("GByteArray*" "array")
+    '("gboolean" "free_segment")
+  )
 )
 
-(define-method unlock
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_unlock")
-  (return-type "none")
+(define-function g_byte_array_free_to_bytes
+  (c-name "g_byte_array_free_to_bytes")
+  (return-type "GBytes*")
+  (parameters
+    '("GByteArray*" "array")
+  )
 )
 
-(define-method ref
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_ref")
-  (return-type "GAsyncQueue*")
+(define-function g_byte_array_new
+  (c-name "g_byte_array_new")
+  (return-type "GByteArray*")
 )
 
-(define-method unref
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_unref")
-  (return-type "none")
+(define-function g_byte_array_new_take
+  (c-name "g_byte_array_new_take")
+  (return-type "GByteArray*")
+  (parameters
+    '("guint8*" "data")
+    '("gsize" "len")
+  )
 )
 
-(define-method ref_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_ref_unlocked")
-  (return-type "none")
+(define-function g_byte_array_unref
+  (c-name "g_byte_array_unref")
+  (return-type "void")
+  (parameters
+    '("GByteArray*" "array")
+  )
 )
 
-(define-method unref_and_unlock
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_unref_and_unlock")
-  (return-type "none")
+(define-function g_chdir
+  (c-name "g_chdir")
+  (return-type "int")
+  (parameters
+    '("gchar*" "path")
+  )
 )
 
-(define-method push
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_push")
-  (return-type "none")
+(define-function glib_check_version
+  (c-name "glib_check_version")
+  (return-type "const-gchar*")
   (parameters
-    '("gpointer" "data")
+    '("guint" "required_major")
+    '("guint" "required_minor")
+    '("guint" "required_micro")
   )
 )
 
-(define-method push_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_push_unlocked")
-  (return-type "none")
+(define-function g_checksum_type_get_length
+  (c-name "g_checksum_type_get_length")
+  (return-type "gssize")
   (parameters
-    '("gpointer" "data")
+    '("GChecksumType" "checksum_type")
   )
 )
 
-(define-method push_sorted
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_push_sorted")
-  (return-type "none")
+(define-function g_child_watch_add
+  (c-name "g_child_watch_add")
+  (return-type "guint")
   (parameters
+    '("GPid" "pid")
+    '("GChildWatchFunc" "function")
     '("gpointer" "data")
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
   )
 )
 
-(define-method push_sorted_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_push_sorted_unlocked")
-  (return-type "none")
+(define-function g_child_watch_add_full
+  (c-name "g_child_watch_add_full")
+  (return-type "guint")
   (parameters
+    '("gint" "priority")
+    '("GPid" "pid")
+    '("GChildWatchFunc" "function")
     '("gpointer" "data")
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-method pop
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_pop")
-  (return-type "gpointer")
+(define-function g_child_watch_source_new
+  (c-name "g_child_watch_source_new")
+  (return-type "GSource*")
+  (parameters
+    '("GPid" "pid")
+  )
 )
 
-(define-method pop_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_pop_unlocked")
-  (return-type "gpointer")
+(define-function g_clear_error
+  (c-name "g_clear_error")
+  (return-type "void")
+  (parameters
+    '("GError**" "error")
+  )
 )
 
-(define-method try_pop
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_try_pop")
-  (return-type "gpointer")
+(define-function g_clear_pointer
+  (c-name "g_clear_pointer")
+  (return-type "void")
+  (parameters
+    '("gpointer*" "pp")
+    '("GDestroyNotify" "destroy")
+  )
 )
 
-(define-method try_pop_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_try_pop_unlocked")
-  (return-type "gpointer")
+(define-function g_close
+  (c-name "g_close")
+  (return-type "gboolean")
+  (parameters
+    '("gint" "fd")
+    '("GError**" "error")
+  )
 )
 
-(define-method timeout_pop
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_timeout_pop")
-  (return-type "gpointer")
+(define-function g_compute_checksum_for_bytes
+  (c-name "g_compute_checksum_for_bytes")
+  (return-type "gchar*")
   (parameters
-    '("guint64" "timeout")
+    '("GChecksumType" "checksum_type")
+    '("GBytes*" "data")
   )
 )
 
-(define-method timeout_pop_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_timeout_pop_unlocked")
-  (return-type "gpointer")
+(define-function g_compute_checksum_for_data
+  (c-name "g_compute_checksum_for_data")
+  (return-type "gchar*")
   (parameters
-    '("guint64" "timeout")
+    '("GChecksumType" "checksum_type")
+    '("guchar*" "data")
+    '("gsize" "length")
   )
 )
 
-(define-method length
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_length")
-  (return-type "gint")
+(define-function g_compute_checksum_for_string
+  (c-name "g_compute_checksum_for_string")
+  (return-type "gchar*")
+  (parameters
+    '("GChecksumType" "checksum_type")
+    '("const-gchar*" "str")
+    '("gssize" "length")
+  )
 )
 
-(define-method length_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_length_unlocked")
-  (return-type "gint")
+(define-function g_compute_hmac_for_bytes
+  (c-name "g_compute_hmac_for_bytes")
+  (return-type "gchar*")
+  (parameters
+    '("GChecksumType" "digest_type")
+    '("GBytes*" "key")
+    '("GBytes*" "data")
+  )
 )
 
-(define-method sort
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_sort")
-  (return-type "none")
+(define-function g_compute_hmac_for_data
+  (c-name "g_compute_hmac_for_data")
+  (return-type "gchar*")
   (parameters
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
+    '("GChecksumType" "digest_type")
+    '("guchar*" "key")
+    '("gsize" "key_len")
+    '("guchar*" "data")
+    '("gsize" "length")
   )
 )
 
-(define-method sort_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_sort_unlocked")
-  (return-type "none")
+(define-function g_compute_hmac_for_string
+  (c-name "g_compute_hmac_for_string")
+  (return-type "gchar*")
   (parameters
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
+    '("GChecksumType" "digest_type")
+    '("guchar*" "key")
+    '("gsize" "key_len")
+    '("const-gchar*" "str")
+    '("gssize" "length")
   )
 )
 
-(define-method remove
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_remove")
-  (return-type "gboolean")
+(define-function g_convert
+  (c-name "g_convert")
+  (return-type "gchar*")
   (parameters
-    '("gpointer" "item")
+    '("const-gchar*" "str")
+    '("gssize" "len")
+    '("const-gchar*" "to_codeset")
+    '("const-gchar*" "from_codeset")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
-(define-method remove_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_remove_unlocked")
-  (return-type "gboolean")
+(define-function g_convert_error_quark
+  (c-name "g_convert_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_convert_with_fallback
+  (c-name "g_convert_with_fallback")
+  (return-type "gchar*")
   (parameters
-    '("gpointer" "item")
+    '("const-gchar*" "str")
+    '("gssize" "len")
+    '("const-gchar*" "to_codeset")
+    '("const-gchar*" "from_codeset")
+    '("const-gchar*" "fallback")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
-(define-method push_front
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_push_front")
-  (return-type "none")
+(define-function g_convert_with_iconv
+  (c-name "g_convert_with_iconv")
+  (return-type "gchar*")
   (parameters
-    '("gpointer" "item")
+    '("const-gchar*" "str")
+    '("gssize" "len")
+    '("GIConv" "converter")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
-(define-method push_front_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_push_front_unlocked")
-  (return-type "none")
+(define-function g_datalist_clear
+  (c-name "g_datalist_clear")
+  (return-type "void")
   (parameters
-    '("gpointer" "item")
+    '("GData**" "datalist")
   )
 )
 
-(define-method timed_pop
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_timed_pop")
-  (return-type "gpointer")
+(define-function g_datalist_foreach
+  (c-name "g_datalist_foreach")
+  (return-type "void")
   (parameters
-    '("GTimeVal*" "end_time")
+    '("GData**" "datalist")
+    '("GDataForeachFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method timed_pop_unlocked
-  (of-object "GAsyncQueue")
-  (c-name "g_async_queue_timed_pop_unlocked")
+(define-function g_datalist_get_data
+  (c-name "g_datalist_get_data")
   (return-type "gpointer")
   (parameters
-    '("GTimeVal*" "end_time")
+    '("GData**" "datalist")
+    '("const-gchar*" "key")
   )
 )
 
+(define-function g_datalist_get_flags
+  (c-name "g_datalist_get_flags")
+  (return-type "guint")
+  (parameters
+    '("GData**" "datalist")
+  )
+)
 
+(define-function g_datalist_id_dup_data
+  (c-name "g_datalist_id_dup_data")
+  (return-type "gpointer")
+  (parameters
+    '("GData**" "datalist")
+    '("GQuark" "key_id")
+    '("GDuplicateFunc" "dup_func")
+    '("gpointer" "user_data")
+  )
+)
 
-;; From gatomic.h
+(define-function g_datalist_id_get_data
+  (c-name "g_datalist_id_get_data")
+  (return-type "gpointer")
+  (parameters
+    '("GData**" "datalist")
+    '("GQuark" "key_id")
+  )
+)
 
-(define-function g_atomic_int_get
-  (c-name "g_atomic_int_get")
-  (return-type "gint")
+(define-function g_datalist_id_remove_no_notify
+  (c-name "g_datalist_id_remove_no_notify")
+  (return-type "gpointer")
   (parameters
-    '("const-volatile-gint*" "atomic")
+    '("GData**" "datalist")
+    '("GQuark" "key_id")
   )
 )
 
-(define-function g_atomic_int_set
-  (c-name "g_atomic_int_set")
-  (return-type "none")
+(define-function g_datalist_id_replace_data
+  (c-name "g_datalist_id_replace_data")
+  (return-type "gboolean")
   (parameters
-    '("volatile-gint*" "atomic")
-    '("gint" "newval")
+    '("GData**" "datalist")
+    '("GQuark" "key_id")
+    '("gpointer" "oldval")
+    '("gpointer" "newval")
+    '("GDestroyNotify" "destroy")
+    '("GDestroyNotify*" "old_destroy")
   )
 )
 
-(define-function g_atomic_int_inc
-  (c-name "g_atomic_int_inc")
-  (return-type "none")
+(define-function g_datalist_id_set_data_full
+  (c-name "g_datalist_id_set_data_full")
+  (return-type "void")
   (parameters
-    '("volatile-gint*" "atomic")
+    '("GData**" "datalist")
+    '("GQuark" "key_id")
+    '("gpointer" "data")
+    '("GDestroyNotify" "destroy_func")
   )
 )
 
-(define-function g_atomic_int_dec_and_test
-  (c-name "g_atomic_int_dec_and_test")
-  (return-type "gboolean")
+(define-function g_datalist_init
+  (c-name "g_datalist_init")
+  (return-type "void")
   (parameters
-    '("volatile-gint*" "atomic")
+    '("GData**" "datalist")
   )
 )
 
-(define-function g_atomic_int_compare_and_exchange
-  (c-name "g_atomic_int_compare_and_exchange")
-  (return-type "gboolean")
+(define-function g_datalist_set_flags
+  (c-name "g_datalist_set_flags")
+  (return-type "void")
   (parameters
-    '("volatile-gint*" "atomic")
-    '("gint" "oldval")
-    '("gint" "newval")
+    '("GData**" "datalist")
+    '("guint" "flags")
   )
 )
 
-(define-function g_atomic_int_add
-  (c-name "g_atomic_int_add")
-  (return-type "gint")
+(define-function g_datalist_unset_flags
+  (c-name "g_datalist_unset_flags")
+  (return-type "void")
   (parameters
-    '("volatile-gint*" "atomic")
-    '("gint" "val")
+    '("GData**" "datalist")
+    '("guint" "flags")
   )
 )
 
-(define-function g_atomic_int_and
-  (c-name "g_atomic_int_and")
-  (return-type "guint")
+(define-function g_dataset_destroy
+  (c-name "g_dataset_destroy")
+  (return-type "void")
   (parameters
-    '("volatile-guint*" "atomic")
-    '("guint" "val")
+    '("gconstpointer" "dataset_location")
   )
 )
 
-(define-function g_atomic_int_or
-  (c-name "g_atomic_int_or")
-  (return-type "guint")
+(define-function g_dataset_foreach
+  (c-name "g_dataset_foreach")
+  (return-type "void")
   (parameters
-    '("volatile-guint*" "atomic")
-    '("guint" "val")
+    '("gconstpointer" "dataset_location")
+    '("GDataForeachFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_atomic_int_xor
-  (c-name "g_atomic_int_xor")
-  (return-type "guint")
+(define-function g_dataset_id_get_data
+  (c-name "g_dataset_id_get_data")
+  (return-type "gpointer")
   (parameters
-    '("volatile-guint*" "atomic")
-    '("guint" "val")
+    '("gconstpointer" "dataset_location")
+    '("GQuark" "key_id")
   )
 )
 
-(define-function g_atomic_pointer_get
-  (c-name "g_atomic_pointer_get")
+(define-function g_dataset_id_remove_no_notify
+  (c-name "g_dataset_id_remove_no_notify")
   (return-type "gpointer")
   (parameters
-    '("const-volatile-void*" "atomic")
+    '("gconstpointer" "dataset_location")
+    '("GQuark" "key_id")
   )
 )
 
-(define-function g_atomic_pointer_set
-  (c-name "g_atomic_pointer_set")
-  (return-type "none")
+(define-function g_dataset_id_set_data_full
+  (c-name "g_dataset_id_set_data_full")
+  (return-type "void")
   (parameters
-    '("volatile-void*" "atomic")
-    '("gpointer" "newval")
+    '("gconstpointer" "dataset_location")
+    '("GQuark" "key_id")
+    '("gpointer" "data")
+    '("GDestroyNotify" "destroy_func")
   )
 )
 
-(define-function g_atomic_pointer_compare_and_exchange
-  (c-name "g_atomic_pointer_compare_and_exchange")
-  (return-type "gboolean")
+(define-function g_date_get_days_in_month
+  (c-name "g_date_get_days_in_month")
+  (return-type "guint8")
   (parameters
-    '("volatile-void*" "atomic")
-    '("gpointer" "oldval")
-    '("gpointer" "newval")
+    '("GDateMonth" "month")
+    '("GDateYear" "year")
   )
 )
 
-(define-function g_atomic_pointer_add
-  (c-name "g_atomic_pointer_add")
-  (return-type "gssize")
+(define-function g_date_get_monday_weeks_in_year
+  (c-name "g_date_get_monday_weeks_in_year")
+  (return-type "guint8")
   (parameters
-    '("volatile-void*" "atomic")
-    '("gssize" "val")
+    '("GDateYear" "year")
   )
 )
 
-(define-function g_atomic_pointer_and
-  (c-name "g_atomic_pointer_and")
-  (return-type "gsize")
+(define-function g_date_get_sunday_weeks_in_year
+  (c-name "g_date_get_sunday_weeks_in_year")
+  (return-type "guint8")
   (parameters
-    '("volatile-void*" "atomic")
-    '("gsize" "val")
+    '("GDateYear" "year")
   )
 )
 
-(define-function g_atomic_pointer_or
-  (c-name "g_atomic_pointer_or")
-  (return-type "gsize")
+(define-function g_date_is_leap_year
+  (c-name "g_date_is_leap_year")
+  (return-type "gboolean")
   (parameters
-    '("volatile-void*" "atomic")
-    '("gsize" "val")
+    '("GDateYear" "year")
   )
 )
 
-(define-function g_atomic_pointer_xor
-  (c-name "g_atomic_pointer_xor")
+(define-function g_date_strftime
+  (c-name "g_date_strftime")
   (return-type "gsize")
   (parameters
-    '("volatile-void*" "atomic")
-    '("gsize" "val")
+    '("gchar*" "s")
+    '("gsize" "slen")
+    '("const-gchar*" "format")
+    '("const-GDate*" "date")
   )
 )
 
-(define-function g_atomic_int_exchange_and_add
-  (c-name "g_atomic_int_exchange_and_add")
+(define-function g_date_time_compare
+  (c-name "g_date_time_compare")
   (return-type "gint")
   (parameters
-    '("volatile-gint*" "atomic")
-    '("gint" "val")
+    '("gconstpointer" "dt1")
+    '("gconstpointer" "dt2")
   )
 )
 
-
-
-;; From gbacktrace.h
-
-(define-function g_on_error_query
-  (c-name "g_on_error_query")
-  (return-type "none")
+(define-function g_date_time_equal
+  (c-name "g_date_time_equal")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "prg_name")
+    '("gconstpointer" "dt1")
+    '("gconstpointer" "dt2")
   )
 )
 
-(define-function g_on_error_stack_trace
-  (c-name "g_on_error_stack_trace")
-  (return-type "none")
+(define-function g_date_time_hash
+  (c-name "g_date_time_hash")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "prg_name")
+    '("gconstpointer" "datetime")
   )
 )
 
-
-
-;; From gbase64.h
-
-(define-function g_base64_encode_step
-  (c-name "g_base64_encode_step")
-  (return-type "gsize")
+(define-function g_date_valid_day
+  (c-name "g_date_valid_day")
+  (return-type "gboolean")
   (parameters
-    '("const-guchar*" "in")
-    '("gsize" "len")
-    '("gboolean" "break_lines")
-    '("gchar*" "out")
-    '("gint*" "state")
-    '("gint*" "save")
+    '("GDateDay" "day")
   )
 )
 
-(define-function g_base64_encode_close
-  (c-name "g_base64_encode_close")
-  (return-type "gsize")
+(define-function g_date_valid_dmy
+  (c-name "g_date_valid_dmy")
+  (return-type "gboolean")
   (parameters
-    '("gboolean" "break_lines")
-    '("gchar*" "out")
-    '("gint*" "state")
-    '("gint*" "save")
+    '("GDateDay" "day")
+    '("GDateMonth" "month")
+    '("GDateYear" "year")
   )
 )
 
-(define-function g_base64_encode
-  (c-name "g_base64_encode")
-  (return-type "gchar*")
+(define-function g_date_valid_julian
+  (c-name "g_date_valid_julian")
+  (return-type "gboolean")
   (parameters
-    '("const-guchar*" "data")
-    '("gsize" "len")
+    '("guint32" "julian_date")
   )
 )
 
-(define-function g_base64_decode_step
-  (c-name "g_base64_decode_step")
-  (return-type "gsize")
+(define-function g_date_valid_month
+  (c-name "g_date_valid_month")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "in")
-    '("gsize" "len")
-    '("guchar*" "out")
-    '("gint*" "state")
-    '("guint*" "save")
+    '("GDateMonth" "month")
   )
 )
 
-(define-function g_base64_decode
-  (c-name "g_base64_decode")
-  (return-type "guchar*")
+(define-function g_date_valid_weekday
+  (c-name "g_date_valid_weekday")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "text")
-    '("gsize*" "out_len")
+    '("GDateWeekday" "weekday")
   )
 )
 
-(define-function g_base64_decode_inplace
-  (c-name "g_base64_decode_inplace")
-  (return-type "guchar*")
+(define-function g_date_valid_year
+  (c-name "g_date_valid_year")
+  (return-type "gboolean")
   (parameters
-    '("gchar*" "text")
-    '("gsize*" "out_len")
+    '("GDateYear" "year")
   )
 )
 
+(define-function g_dcgettext
+  (c-name "g_dcgettext")
+  (return-type "const-gchar*")
+  (parameters
+    '("const-gchar*" "domain")
+    '("const-gchar*" "msgid")
+    '("gint" "category")
+  )
+)
 
+(define-function g_dgettext
+  (c-name "g_dgettext")
+  (return-type "const-gchar*")
+  (parameters
+    '("const-gchar*" "domain")
+    '("const-gchar*" "msgid")
+  )
+)
 
-;; From gbitlock.h
-
-(define-function g_bit_lock
-  (c-name "g_bit_lock")
-  (return-type "none")
+(define-function g_dir_make_tmp
+  (c-name "g_dir_make_tmp")
+  (return-type "gchar*")
   (parameters
-    '("volatile-gint*" "address")
-    '("gint" "lock_bit")
+    '("gchar*" "tmpl")
+    '("GError**" "error")
   )
 )
 
-(define-function g_bit_trylock
-  (c-name "g_bit_trylock")
+(define-function g_direct_equal
+  (c-name "g_direct_equal")
   (return-type "gboolean")
   (parameters
-    '("volatile-gint*" "address")
-    '("gint" "lock_bit")
+    '("gconstpointer" "v1")
+    '("gconstpointer" "v2")
   )
 )
 
-(define-function g_bit_unlock
-  (c-name "g_bit_unlock")
-  (return-type "none")
+(define-function g_direct_hash
+  (c-name "g_direct_hash")
+  (return-type "guint")
   (parameters
-    '("volatile-gint*" "address")
-    '("gint" "lock_bit")
+    '("gconstpointer" "v")
   )
 )
 
-(define-function g_pointer_bit_lock
-  (c-name "g_pointer_bit_lock")
-  (return-type "none")
+(define-function g_dngettext
+  (c-name "g_dngettext")
+  (return-type "const-gchar*")
   (parameters
-    '("volatile-void*" "address")
-    '("gint" "lock_bit")
+    '("const-gchar*" "domain")
+    '("const-gchar*" "msgid")
+    '("const-gchar*" "msgid_plural")
+    '("gulong" "n")
   )
 )
 
-(define-function g_pointer_bit_trylock
-  (c-name "g_pointer_bit_trylock")
+(define-function g_double_equal
+  (c-name "g_double_equal")
   (return-type "gboolean")
   (parameters
-    '("volatile-void*" "address")
-    '("gint" "lock_bit")
+    '("gconstpointer" "v1")
+    '("gconstpointer" "v2")
   )
 )
 
-(define-function g_pointer_bit_unlock
-  (c-name "g_pointer_bit_unlock")
-  (return-type "none")
+(define-function g_double_hash
+  (c-name "g_double_hash")
+  (return-type "guint")
   (parameters
-    '("volatile-void*" "address")
-    '("gint" "lock_bit")
+    '("gconstpointer" "v")
   )
 )
 
+(define-function g_dpgettext
+  (c-name "g_dpgettext")
+  (return-type "const-gchar*")
+  (parameters
+    '("const-gchar*" "domain")
+    '("const-gchar*" "msgctxtid")
+    '("gsize" "msgidoffset")
+  )
+)
 
+(define-function g_dpgettext2
+  (c-name "g_dpgettext2")
+  (return-type "const-gchar*")
+  (parameters
+    '("const-gchar*" "domain")
+    '("const-gchar*" "context")
+    '("const-gchar*" "msgid")
+  )
+)
 
-;; From gbookmarkfile.h
-
-(define-function g_bookmark_file_error_quark
-  (c-name "g_bookmark_file_error_quark")
-  (return-type "GQuark")
+(define-function g_environ_getenv
+  (c-name "g_environ_getenv")
+  (return-type "const-gchar*")
+  (parameters
+    '("gchar**" "envp")
+    '("const-gchar*" "variable")
+  )
 )
 
-(define-function g_bookmark_file_new
-  (c-name "g_bookmark_file_new")
-  (is-constructor-of "GBookmarkFile")
-  (return-type "GBookmarkFile*")
+(define-function g_environ_setenv
+  (c-name "g_environ_setenv")
+  (return-type "gchar**")
+  (parameters
+    '("gchar**" "envp")
+    '("const-gchar*" "variable")
+    '("const-gchar*" "value")
+    '("gboolean" "overwrite")
+  )
 )
 
-(define-method free
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_free")
-  (return-type "none")
+(define-function g_environ_unsetenv
+  (c-name "g_environ_unsetenv")
+  (return-type "gchar**")
+  (parameters
+    '("gchar**" "envp")
+    '("const-gchar*" "variable")
+  )
 )
 
-(define-method load_from_file
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_load_from_file")
-  (return-type "gboolean")
+(define-function g_file_error_from_errno
+  (c-name "g_file_error_from_errno")
+  (return-type "GFileError")
   (parameters
-    '("const-gchar*" "filename")
-    '("GError**" "error")
+    '("gint" "err_no")
   )
 )
 
-(define-method load_from_data
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_load_from_data")
+(define-function g_file_error_quark
+  (c-name "g_file_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_file_get_contents
+  (c-name "g_file_get_contents")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "data")
-    '("gsize" "length")
+    '("gchar*" "filename")
+    '("gchar**" "contents")
+    '("gsize*" "length")
     '("GError**" "error")
   )
 )
 
-(define-method load_from_data_dirs
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_load_from_data_dirs")
-  (return-type "gboolean")
+(define-function g_file_open_tmp
+  (c-name "g_file_open_tmp")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "file")
-    '("gchar**" "full_path")
+    '("gchar*" "tmpl")
+    '("gchar**" "name_used")
     '("GError**" "error")
   )
 )
 
-(define-method to_data
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_to_data")
+(define-function g_file_read_link
+  (c-name "g_file_read_link")
   (return-type "gchar*")
   (parameters
-    '("gsize*" "length")
+    '("gchar*" "filename")
     '("GError**" "error")
   )
 )
 
-(define-method to_file
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_to_file")
+(define-function g_file_set_contents
+  (c-name "g_file_set_contents")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "filename")
+    '("gchar*" "filename")
+    '("gchar*" "contents")
+    '("gssize" "length")
     '("GError**" "error")
   )
 )
 
-(define-method set_title
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_title")
-  (return-type "none")
+(define-function g_file_test
+  (c-name "g_file_test")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "title")
+    '("gchar*" "filename")
+    '("GFileTest" "test")
   )
 )
 
-(define-method get_title
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_title")
+(define-function g_filename_display_basename
+  (c-name "g_filename_display_basename")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("GError**" "error")
+    '("gchar*" "filename")
   )
 )
 
-(define-method set_description
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_description")
-  (return-type "none")
+(define-function g_filename_display_name
+  (c-name "g_filename_display_name")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "description")
+    '("gchar*" "filename")
   )
 )
 
-(define-method get_description
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_description")
+(define-function g_filename_from_uri
+  (c-name "g_filename_from_uri")
   (return-type "gchar*")
   (parameters
     '("const-gchar*" "uri")
+    '("gchar**" "hostname")
     '("GError**" "error")
   )
 )
 
-(define-method set_mime_type
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_mime_type")
-  (return-type "none")
+(define-function g_filename_from_utf8
+  (c-name "g_filename_from_utf8")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "mime_type")
+    '("const-gchar*" "utf8string")
+    '("gssize" "len")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
-(define-method get_mime_type
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_mime_type")
+(define-function g_filename_to_uri
+  (c-name "g_filename_to_uri")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
+    '("gchar*" "filename")
+    '("const-gchar*" "hostname")
     '("GError**" "error")
   )
 )
 
-(define-method set_groups
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_groups")
-  (return-type "none")
+(define-function g_filename_to_utf8
+  (c-name "g_filename_to_utf8")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar**" "groups")
-    '("gsize" "length")
+    '("gchar*" "opsysstring")
+    '("gssize" "len")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
-(define-method add_group
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_add_group")
-  (return-type "none")
+(define-function g_find_program_in_path
+  (c-name "g_find_program_in_path")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "group")
+    '("gchar*" "program")
   )
 )
 
-(define-method has_group
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_has_group")
-  (return-type "gboolean")
+(define-function g_format_size
+  (c-name "g_format_size")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "group")
-    '("GError**" "error")
+    '("guint64" "size")
   )
 )
 
-(define-method get_groups
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_groups")
-  (return-type "gchar**")
+(define-function g_format_size_for_display
+  (c-name "g_format_size_for_display")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("goffset" "size")
   )
 )
 
-(define-method add_application
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_add_application")
-  (return-type "none")
+(define-function g_format_size_full
+  (c-name "g_format_size_full")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "name")
-    '("const-gchar*" "exec")
+    '("guint64" "size")
+    '("GFormatSizeFlags" "flags")
   )
 )
 
-(define-method has_application
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_has_application")
-  (return-type "gboolean")
+(define-function g_fprintf
+  (c-name "g_fprintf")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "name")
-    '("GError**" "error")
+    '("FILE*" "file")
+    '("gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-method get_applications
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_applications")
-  (return-type "gchar**")
+(define-function g_free
+  (c-name "g_free")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "uri")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("gpointer" "mem")
   )
 )
 
-(define-method set_app_info
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_app_info")
-  (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "name")
-    '("const-gchar*" "exec")
-    '("gint" "count")
-    '("time_t" "stamp")
-    '("GError**" "error")
-  )
+(define-function g_get_application_name
+  (c-name "g_get_application_name")
+  (return-type "const-gchar*")
 )
 
-(define-method get_app_info
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_app_info")
+(define-function g_get_charset
+  (c-name "g_get_charset")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "name")
-    '("gchar**" "exec")
-    '("guint*" "count")
-    '("time_t*" "stamp")
-    '("GError**" "error")
+    '("const-char**" "charset")
   )
 )
 
-(define-method set_is_private
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_is_private")
-  (return-type "none")
+(define-function g_get_codeset
+  (c-name "g_get_codeset")
+  (return-type "gchar*")
+)
+
+(define-function g_get_current_dir
+  (c-name "g_get_current_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_current_time
+  (c-name "g_get_current_time")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "uri")
-    '("gboolean" "is_private")
+    '("GTimeVal*" "result")
   )
 )
 
-(define-method get_is_private
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_is_private")
+(define-function g_get_environ
+  (c-name "g_get_environ")
+  (return-type "gchar**")
+)
+
+(define-function g_get_filename_charsets
+  (c-name "g_get_filename_charsets")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("GError**" "error")
+    '("const-gchar***" "charsets")
   )
 )
 
-(define-method set_icon
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_icon")
-  (return-type "none")
+(define-function g_get_home_dir
+  (c-name "g_get_home_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_host_name
+  (c-name "g_get_host_name")
+  (return-type "const-gchar*")
+)
+
+(define-function g_get_language_names
+  (c-name "g_get_language_names")
+  (return-type "gchar**")
+)
+
+(define-function g_get_locale_variants
+  (c-name "g_get_locale_variants")
+  (return-type "gchar**")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "href")
-    '("const-gchar*" "mime_type")
+    '("const-gchar*" "locale")
   )
 )
 
-(define-method get_icon
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_icon")
-  (return-type "gboolean")
+(define-function g_get_monotonic_time
+  (c-name "g_get_monotonic_time")
+  (return-type "gint64")
+)
+
+(define-function g_get_num_processors
+  (c-name "g_get_num_processors")
+  (return-type "guint")
+)
+
+(define-function g_get_prgname
+  (c-name "g_get_prgname")
+  (return-type "const-gchar*")
+)
+
+(define-function g_get_real_name
+  (c-name "g_get_real_name")
+  (return-type "gchar*")
+)
+
+(define-function g_get_real_time
+  (c-name "g_get_real_time")
+  (return-type "gint64")
+)
+
+(define-function g_get_system_config_dirs
+  (c-name "g_get_system_config_dirs")
+  (return-type "gchar**")
+)
+
+(define-function g_get_system_data_dirs
+  (c-name "g_get_system_data_dirs")
+  (return-type "gchar**")
+)
+
+(define-function g_get_tmp_dir
+  (c-name "g_get_tmp_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_user_cache_dir
+  (c-name "g_get_user_cache_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_user_config_dir
+  (c-name "g_get_user_config_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_user_data_dir
+  (c-name "g_get_user_data_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_user_name
+  (c-name "g_get_user_name")
+  (return-type "gchar*")
+)
+
+(define-function g_get_user_runtime_dir
+  (c-name "g_get_user_runtime_dir")
+  (return-type "gchar*")
+)
+
+(define-function g_get_user_special_dir
+  (c-name "g_get_user_special_dir")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("gchar**" "href")
-    '("gchar**" "mime_type")
-    '("GError**" "error")
+    '("GUserDirectory" "directory")
   )
 )
 
-(define-method set_added
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_added")
-  (return-type "none")
+(define-function g_getenv
+  (c-name "g_getenv")
+  (return-type "const-gchar*")
   (parameters
-    '("const-gchar*" "uri")
-    '("time_t" "added")
+    '("const-gchar*" "variable")
   )
 )
 
-(define-method get_added
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_added")
-  (return-type "time_t")
+(define-function g_hash_table_add
+  (c-name "g_hash_table_add")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
+    '("gpointer" "key")
   )
 )
 
-(define-method set_modified
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_modified")
-  (return-type "none")
+(define-function g_hash_table_contains
+  (c-name "g_hash_table_contains")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("time_t" "modified")
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
   )
 )
 
-(define-method get_modified
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_modified")
-  (return-type "time_t")
+(define-function g_hash_table_destroy
+  (c-name "g_hash_table_destroy")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "uri")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method set_visited
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_set_visited")
-  (return-type "none")
+(define-function g_hash_table_insert
+  (c-name "g_hash_table_insert")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("time_t" "visited")
+    '("GHashTable*" "hash_table")
+    '("gpointer" "key")
+    '("gpointer" "value")
   )
 )
 
-(define-method get_visited
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_visited")
-  (return-type "time_t")
+(define-function g_hash_table_lookup
+  (c-name "g_hash_table_lookup")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "uri")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
   )
 )
 
-(define-method has_item
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_has_item")
+(define-function g_hash_table_lookup_extended
+  (c-name "g_hash_table_lookup_extended")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "lookup_key")
+    '("gpointer*" "orig_key")
+    '("gpointer*" "value")
   )
 )
 
-(define-method get_size
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_size")
-  (return-type "gint")
+(define-function g_hash_table_remove
+  (c-name "g_hash_table_remove")
+  (return-type "gboolean")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
+  )
 )
 
-(define-method get_uris
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_get_uris")
-  (return-type "gchar**")
+(define-function g_hash_table_remove_all
+  (c-name "g_hash_table_remove_all")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method remove_group
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_remove_group")
+(define-function g_hash_table_replace
+  (c-name "g_hash_table_replace")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "group")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
+    '("gpointer" "key")
+    '("gpointer" "value")
   )
 )
 
-(define-method remove_application
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_remove_application")
-  (return-type "gboolean")
+(define-function g_hash_table_size
+  (c-name "g_hash_table_size")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "uri")
-    '("const-gchar*" "name")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method remove_item
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_remove_item")
+(define-function g_hash_table_steal
+  (c-name "g_hash_table_steal")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
   )
 )
 
-(define-method move_item
-  (of-object "GBookmarkFile")
-  (c-name "g_bookmark_file_move_item")
-  (return-type "gboolean")
+(define-function g_hash_table_steal_all
+  (c-name "g_hash_table_steal_all")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "old_uri")
-    '("const-gchar*" "new_uri")
-    '("GError**" "error")
+    '("GHashTable*" "hash_table")
   )
 )
 
-
-
-;; From gbsearcharray.h
-
-(define-function g_bsearch_array_create
-  (c-name "g_bsearch_array_create")
-  (return-type "GBSearchArray*")
+(define-function g_hash_table_unref
+  (c-name "g_hash_table_unref")
+  (return-type "void")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method get_nth
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_get_nth")
-  (return-type "gpointer")
+(define-function g_hook_destroy
+  (c-name "g_hook_destroy")
+  (return-type "gboolean")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("guint" "nth")
+    '("GHookList*" "hook_list")
+    '("gulong" "hook_id")
   )
 )
 
-(define-method get_index
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_get_index")
-  (return-type "guint")
+(define-function g_hook_destroy_link
+  (c-name "g_hook_destroy_link")
+  (return-type "void")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("gconstpointer" "node_in_array")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method remove
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_remove")
-  (return-type "GBSearchArray*")
+(define-function g_hook_free
+  (c-name "g_hook_free")
+  (return-type "void")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("guint" "index_")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method grow
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_grow")
-  (return-type "GBSearchArray*")
+(define-function g_hook_insert_before
+  (c-name "g_hook_insert_before")
+  (return-type "void")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("guint" "index")
+    '("GHookList*" "hook_list")
+    '("GHook*" "sibling")
+    '("GHook*" "hook")
   )
 )
 
-(define-method insert
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_insert")
-  (return-type "GBSearchArray*")
+(define-function g_hook_prepend
+  (c-name "g_hook_prepend")
+  (return-type "void")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("gconstpointer" "key_node")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method replace
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_replace")
-  (return-type "GBSearchArray*")
+(define-function g_hook_unref
+  (c-name "g_hook_unref")
+  (return-type "void")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("gconstpointer" "key_node")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method free
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_free")
-  (return-type "none")
+(define-function g_hostname_is_ascii_encoded
+  (c-name "g_hostname_is_ascii_encoded")
+  (return-type "gboolean")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
+    '("const-gchar*" "hostname")
   )
 )
 
-(define-method lookup_fuzzy
-  (of-object "GBSearchArray")
-  (c-name "g_bsearch_array_lookup_fuzzy")
-  (return-type "gpointer")
+(define-function g_hostname_is_ip_address
+  (c-name "g_hostname_is_ip_address")
+  (return-type "gboolean")
   (parameters
-    '("const-GBSearchConfig*" "bconfig")
-    '("gconstpointer" "key_node")
-    '("const-guint" "sibling_or_after")
+    '("const-gchar*" "hostname")
   )
 )
 
+(define-function g_hostname_is_non_ascii
+  (c-name "g_hostname_is_non_ascii")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "hostname")
+  )
+)
 
+(define-function g_hostname_to_ascii
+  (c-name "g_hostname_to_ascii")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "hostname")
+  )
+)
 
-;; From gbytes.h
+(define-function g_hostname_to_unicode
+  (c-name "g_hostname_to_unicode")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "hostname")
+  )
+)
 
-(define-function g_bytes_new
-  (c-name "g_bytes_new")
-  (is-constructor-of "GBytes")
-  (return-type "GBytes*")
+(define-function g_iconv
+  (c-name "g_iconv")
+  (return-type "gsize")
   (parameters
-    '("gconstpointer" "data")
-    '("gsize" "size")
+    '("GIConv" "converter")
+    '("gchar**" "inbuf")
+    '("gsize*" "inbytes_left")
+    '("gchar**" "outbuf")
+    '("gsize*" "outbytes_left")
   )
 )
 
-(define-function g_bytes_new_take
-  (c-name "g_bytes_new_take")
-  (return-type "GBytes*")
+(define-function g_idle_add
+  (c-name "g_idle_add")
+  (return-type "guint")
   (parameters
+    '("GSourceFunc" "function")
     '("gpointer" "data")
-    '("gsize" "size")
   )
 )
 
-(define-function g_bytes_new_static
-  (c-name "g_bytes_new_static")
-  (return-type "GBytes*")
+(define-function g_idle_add_full
+  (c-name "g_idle_add_full")
+  (return-type "guint")
   (parameters
-    '("gconstpointer" "data")
-    '("gsize" "size")
+    '("gint" "priority")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_bytes_new_with_free_func
-  (c-name "g_bytes_new_with_free_func")
-  (return-type "GBytes*")
+(define-function g_idle_remove_by_data
+  (c-name "g_idle_remove_by_data")
+  (return-type "gboolean")
   (parameters
-    '("gconstpointer" "data")
-    '("gsize" "size")
-    '("GDestroyNotify" "free_func")
-    '("gpointer" "user_data")
+    '("gpointer" "data")
   )
 )
 
-(define-method new_from_bytes
-  (of-object "GBytes")
-  (c-name "g_bytes_new_from_bytes")
-  (return-type "GBytes*")
+(define-function g_idle_source_new
+  (c-name "g_idle_source_new")
+  (return-type "GSource*")
+)
+
+(define-function g_int64_equal
+  (c-name "g_int64_equal")
+  (return-type "gboolean")
   (parameters
-    '("gsize" "offset")
-    '("gsize" "length")
+    '("gconstpointer" "v1")
+    '("gconstpointer" "v2")
   )
 )
 
-(define-method get_data
-  (of-object "GBytes")
-  (c-name "g_bytes_get_data")
-  (return-type "gconstpointer")
+(define-function g_int64_hash
+  (c-name "g_int64_hash")
+  (return-type "guint")
   (parameters
-    '("gsize*" "size")
+    '("gconstpointer" "v")
   )
 )
 
-(define-method get_size
-  (of-object "GBytes")
-  (c-name "g_bytes_get_size")
-  (return-type "gsize")
+(define-function g_int_equal
+  (c-name "g_int_equal")
+  (return-type "gboolean")
+  (parameters
+    '("gconstpointer" "v1")
+    '("gconstpointer" "v2")
+  )
 )
 
-(define-method ref
-  (of-object "GBytes")
-  (c-name "g_bytes_ref")
-  (return-type "GBytes*")
+(define-function g_int_hash
+  (c-name "g_int_hash")
+  (return-type "guint")
+  (parameters
+    '("gconstpointer" "v")
+  )
 )
 
-(define-method unref
-  (of-object "GBytes")
-  (c-name "g_bytes_unref")
-  (return-type "none")
+(define-function g_intern_static_string
+  (c-name "g_intern_static_string")
+  (return-type "const-gchar*")
+  (parameters
+    '("const-gchar*" "string")
+  )
 )
 
-(define-method unref_to_data
-  (of-object "GBytes")
-  (c-name "g_bytes_unref_to_data")
-  (return-type "gpointer")
+(define-function g_intern_string
+  (c-name "g_intern_string")
+  (return-type "const-gchar*")
   (parameters
-    '("gsize*" "size")
+    '("const-gchar*" "string")
   )
 )
 
-(define-method unref_to_array
-  (of-object "GBytes")
-  (c-name "g_bytes_unref_to_array")
-  (return-type "GByteArray*")
+(define-function g_io_add_watch
+  (c-name "g_io_add_watch")
+  (return-type "guint")
+  (parameters
+    '("GIOChannel*" "channel")
+    '("GIOCondition" "condition")
+    '("GIOFunc" "func")
+    '("gpointer" "user_data")
+  )
 )
 
-(define-function g_bytes_hash
-  (c-name "g_bytes_hash")
+(define-function g_io_add_watch_full
+  (c-name "g_io_add_watch_full")
   (return-type "guint")
   (parameters
-    '("gconstpointer" "bytes")
+    '("GIOChannel*" "channel")
+    '("gint" "priority")
+    '("GIOCondition" "condition")
+    '("GIOFunc" "func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_bytes_equal
-  (c-name "g_bytes_equal")
-  (return-type "gboolean")
+(define-function g_io_channel_error_from_errno
+  (c-name "g_io_channel_error_from_errno")
+  (return-type "GIOChannelError")
   (parameters
-    '("gconstpointer" "bytes1")
-    '("gconstpointer" "bytes2")
+    '("gint" "en")
   )
 )
 
-(define-function g_bytes_compare
-  (c-name "g_bytes_compare")
-  (return-type "gint")
+(define-function g_io_channel_error_quark
+  (c-name "g_io_channel_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_io_create_watch
+  (c-name "g_io_create_watch")
+  (return-type "GSource*")
   (parameters
-    '("gconstpointer" "bytes1")
-    '("gconstpointer" "bytes2")
+    '("GIOChannel*" "channel")
+    '("GIOCondition" "condition")
   )
 )
 
+(define-function g_key_file_error_quark
+  (c-name "g_key_file_error_quark")
+  (return-type "GQuark")
+)
 
+(define-function g_listenv
+  (c-name "g_listenv")
+  (return-type "gchar**")
+)
 
-;; From gcharset.h
-
-(define-function g_get_charset
-  (c-name "g_get_charset")
-  (return-type "gboolean")
+(define-function g_locale_from_utf8
+  (c-name "g_locale_from_utf8")
+  (return-type "gchar*")
   (parameters
-    '("const-char**" "charset")
+    '("const-gchar*" "utf8string")
+    '("gssize" "len")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
   )
 )
 
-(define-function g_get_codeset
-  (c-name "g_get_codeset")
+(define-function g_locale_to_utf8
+  (c-name "g_locale_to_utf8")
   (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "opsysstring")
+    '("gssize" "len")
+    '("gsize*" "bytes_read")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
+  )
 )
 
-(define-function g_get_language_names
-  (c-name "g_get_language_names")
-  (return-type "const-gchar*-const*")
+(define-function g_log
+  (c-name "g_log")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_level")
+    '("const-gchar*" "format")
+    '("..." "...")
+  )
 )
 
-(define-function g_get_locale_variants
-  (c-name "g_get_locale_variants")
-  (return-type "gchar**")
+(define-function g_log_default_handler
+  (c-name "g_log_default_handler")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "locale")
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_level")
+    '("const-gchar*" "message")
+    '("gpointer" "unused_data")
   )
 )
 
+(define-function g_log_remove_handler
+  (c-name "g_log_remove_handler")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("guint" "handler_id")
+  )
+)
 
+(define-function g_log_set_always_fatal
+  (c-name "g_log_set_always_fatal")
+  (return-type "GLogLevelFlags")
+  (parameters
+    '("GLogLevelFlags" "fatal_mask")
+  )
+)
 
-;; From gchecksum.h
+(define-function g_log_set_default_handler
+  (c-name "g_log_set_default_handler")
+  (return-type "GLogFunc")
+  (parameters
+    '("GLogFunc" "log_func")
+    '("gpointer" "user_data")
+  )
+)
 
-(define-method get_length
-  (of-object "GChecksumType")
-  (c-name "g_checksum_type_get_length")
-  (return-type "gssize")
+(define-function g_log_set_fatal_mask
+  (c-name "g_log_set_fatal_mask")
+  (return-type "GLogLevelFlags")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "fatal_mask")
+  )
 )
 
-(define-function g_checksum_new
-  (c-name "g_checksum_new")
-  (is-constructor-of "GChecksum")
-  (return-type "GChecksum*")
+(define-function g_log_set_handler
+  (c-name "g_log_set_handler")
+  (return-type "guint")
   (parameters
-    '("GChecksumType" "checksum_type")
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_levels")
+    '("GLogFunc" "log_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method reset
-  (of-object "GChecksum")
-  (c-name "g_checksum_reset")
-  (return-type "none")
+(define-function g_log_set_handler_full
+  (c-name "g_log_set_handler_full")
+  (return-type "guint")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_levels")
+    '("GLogFunc" "log_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "destroy")
+  )
 )
 
-(define-method copy
-  (of-object "GChecksum")
-  (c-name "g_checksum_copy")
-  (return-type "GChecksum*")
+(define-function g_log_set_writer_func
+  (c-name "g_log_set_writer_func")
+  (return-type "void")
+  (parameters
+    '("GLogWriterFunc" "func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_data_free")
+  )
 )
 
-(define-method free
-  (of-object "GChecksum")
-  (c-name "g_checksum_free")
-  (return-type "none")
+(define-function g_log_structured
+  (c-name "g_log_structured")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_level")
+    '("..." "...")
+  )
 )
 
-(define-method update
-  (of-object "GChecksum")
-  (c-name "g_checksum_update")
-  (return-type "none")
+(define-function g_log_structured_array
+  (c-name "g_log_structured_array")
+  (return-type "void")
   (parameters
-    '("const-guchar*" "data")
-    '("gssize" "length")
+    '("GLogLevelFlags" "log_level")
+    '("GLogField*" "fields")
+    '("gsize" "n_fields")
   )
 )
 
-(define-method get_string
-  (of-object "GChecksum")
-  (c-name "g_checksum_get_string")
-  (return-type "const-gchar*")
+(define-function g_log_variant
+  (c-name "g_log_variant")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_level")
+    '("GVariant*" "fields")
+  )
 )
 
-(define-method get_digest
-  (of-object "GChecksum")
-  (c-name "g_checksum_get_digest")
-  (return-type "none")
+(define-function g_log_writer_default
+  (c-name "g_log_writer_default")
+  (return-type "GLogWriterOutput")
   (parameters
-    '("guint8*" "buffer")
-    '("gsize*" "digest_len")
+    '("GLogLevelFlags" "log_level")
+    '("GLogField*" "fields")
+    '("gsize" "n_fields")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_compute_checksum_for_data
-  (c-name "g_compute_checksum_for_data")
+(define-function g_log_writer_format_fields
+  (c-name "g_log_writer_format_fields")
   (return-type "gchar*")
   (parameters
-    '("GChecksumType" "checksum_type")
-    '("const-guchar*" "data")
-    '("gsize" "length")
+    '("GLogLevelFlags" "log_level")
+    '("GLogField*" "fields")
+    '("gsize" "n_fields")
+    '("gboolean" "use_color")
   )
 )
 
-(define-function g_compute_checksum_for_string
-  (c-name "g_compute_checksum_for_string")
-  (return-type "gchar*")
+(define-function g_log_writer_is_journald
+  (c-name "g_log_writer_is_journald")
+  (return-type "gboolean")
   (parameters
-    '("GChecksumType" "checksum_type")
-    '("const-gchar*" "str")
-    '("gssize" "length")
+    '("gint" "output_fd")
   )
 )
 
-(define-function g_compute_checksum_for_bytes
-  (c-name "g_compute_checksum_for_bytes")
-  (return-type "gchar*")
+(define-function g_log_writer_journald
+  (c-name "g_log_writer_journald")
+  (return-type "GLogWriterOutput")
   (parameters
-    '("GChecksumType" "checksum_type")
-    '("GBytes*" "data")
+    '("GLogLevelFlags" "log_level")
+    '("GLogField*" "fields")
+    '("gsize" "n_fields")
+    '("gpointer" "user_data")
   )
 )
 
+(define-function g_log_writer_standard_streams
+  (c-name "g_log_writer_standard_streams")
+  (return-type "GLogWriterOutput")
+  (parameters
+    '("GLogLevelFlags" "log_level")
+    '("GLogField*" "fields")
+    '("gsize" "n_fields")
+    '("gpointer" "user_data")
+  )
+)
 
+(define-function g_log_writer_supports_color
+  (c-name "g_log_writer_supports_color")
+  (return-type "gboolean")
+  (parameters
+    '("gint" "output_fd")
+  )
+)
 
-;; From gconstructor.h
+(define-function g_logv
+  (c-name "g_logv")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_level")
+    '("const-gchar*" "format")
+    '("va_list" "args")
+  )
+)
 
+(define-function g_main_context_default
+  (c-name "g_main_context_default")
+  (return-type "GMainContext*")
+)
 
+(define-function g_main_context_get_thread_default
+  (c-name "g_main_context_get_thread_default")
+  (return-type "GMainContext*")
+)
 
-;; From gconvert.h
+(define-function g_main_context_ref_thread_default
+  (c-name "g_main_context_ref_thread_default")
+  (return-type "GMainContext*")
+)
 
-(define-function g_convert_error_quark
-  (c-name "g_convert_error_quark")
-  (return-type "GQuark")
+(define-function g_main_current_source
+  (c-name "g_main_current_source")
+  (return-type "GSource*")
 )
 
-(define-function g_iconv_open
-  (c-name "g_iconv_open")
-  (return-type "GIConv")
+(define-function g_main_depth
+  (c-name "g_main_depth")
+  (return-type "gint")
+)
+
+(define-function g_malloc
+  (c-name "g_malloc")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "to_codeset")
-    '("const-gchar*" "from_codeset")
+    '("gsize" "n_bytes")
   )
 )
 
-(define-method iconv
-  (of-object "GIConv")
-  (c-name "g_iconv")
-  (return-type "gsize")
+(define-function g_malloc0
+  (c-name "g_malloc0")
+  (return-type "gpointer")
   (parameters
-    '("gchar**" "inbuf")
-    '("gsize*" "inbytes_left")
-    '("gchar**" "outbuf")
-    '("gsize*" "outbytes_left")
+    '("gsize" "n_bytes")
   )
 )
 
-(define-method close
-  (of-object "GIConv")
-  (c-name "g_iconv_close")
-  (return-type "gint")
+(define-function g_malloc0_n
+  (c-name "g_malloc0_n")
+  (return-type "gpointer")
+  (parameters
+    '("gsize" "n_blocks")
+    '("gsize" "n_block_bytes")
+  )
 )
 
-(define-function g_convert
-  (c-name "g_convert")
-  (return-type "gchar*")
+(define-function g_malloc_n
+  (c-name "g_malloc_n")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
-    '("const-gchar*" "to_codeset")
-    '("const-gchar*" "from_codeset")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("gsize" "n_blocks")
+    '("gsize" "n_block_bytes")
   )
 )
 
-(define-function g_convert_with_iconv
-  (c-name "g_convert_with_iconv")
-  (return-type "gchar*")
+(define-function g_markup_collect_attributes
+  (c-name "g_markup_collect_attributes")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
-    '("GIConv" "converter")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
+    '("const-gchar*" "element_name")
+    '("const-gchar**" "attribute_names")
+    '("const-gchar**" "attribute_values")
     '("GError**" "error")
+    '("GMarkupCollectType" "first_type")
+    '("const-gchar*" "first_attr")
+    '("..." "...")
   )
 )
 
-(define-function g_convert_with_fallback
-  (c-name "g_convert_with_fallback")
+(define-function g_markup_error_quark
+  (c-name "g_markup_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_markup_escape_text
+  (c-name "g_markup_escape_text")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
-    '("const-gchar*" "to_codeset")
-    '("const-gchar*" "from_codeset")
-    '("const-gchar*" "fallback")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("const-gchar*" "text")
+    '("gssize" "length")
   )
 )
 
-(define-function g_locale_to_utf8
-  (c-name "g_locale_to_utf8")
+(define-function g_markup_printf_escaped
+  (c-name "g_markup_printf_escaped")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "opsysstring")
-    '("gssize" "len")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("const-char*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_locale_from_utf8
-  (c-name "g_locale_from_utf8")
+(define-function g_markup_vprintf_escaped
+  (c-name "g_markup_vprintf_escaped")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "utf8string")
-    '("gssize" "len")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("const-char*" "format")
+    '("va_list" "args")
   )
 )
 
-(define-function g_filename_to_utf8
-  (c-name "g_filename_to_utf8")
-  (return-type "gchar*")
+(define-function g_mem_is_system_malloc
+  (c-name "g_mem_is_system_malloc")
+  (return-type "gboolean")
+)
+
+(define-function g_mem_profile
+  (c-name "g_mem_profile")
+  (return-type "void")
+)
+
+(define-function g_mem_set_vtable
+  (c-name "g_mem_set_vtable")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "opsysstring")
-    '("gssize" "len")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("GMemVTable*" "vtable")
   )
 )
 
-(define-function g_filename_from_utf8
-  (c-name "g_filename_from_utf8")
-  (return-type "gchar*")
+(define-function g_memdup
+  (c-name "g_memdup")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "utf8string")
-    '("gssize" "len")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("gconstpointer" "mem")
+    '("guint" "byte_size")
   )
 )
 
-(define-function g_filename_from_uri
-  (c-name "g_filename_from_uri")
-  (return-type "gchar*")
+(define-function g_mkdir_with_parents
+  (c-name "g_mkdir_with_parents")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "uri")
-    '("gchar**" "hostname")
-    '("GError**" "error")
+    '("gchar*" "pathname")
+    '("gint" "mode")
   )
 )
 
-(define-function g_filename_to_uri
-  (c-name "g_filename_to_uri")
+(define-function g_mkdtemp
+  (c-name "g_mkdtemp")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "hostname")
-    '("GError**" "error")
+    '("gchar*" "tmpl")
   )
 )
 
-(define-function g_filename_display_name
-  (c-name "g_filename_display_name")
+(define-function g_mkdtemp_full
+  (c-name "g_mkdtemp_full")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "filename")
+    '("gchar*" "tmpl")
+    '("gint" "mode")
   )
 )
 
-(define-function g_get_filename_charsets
-  (c-name "g_get_filename_charsets")
-  (return-type "gboolean")
+(define-function g_mkstemp
+  (c-name "g_mkstemp")
+  (return-type "gint")
   (parameters
-    '("const-gchar***" "charsets")
+    '("gchar*" "tmpl")
   )
 )
 
-(define-function g_filename_display_basename
-  (c-name "g_filename_display_basename")
-  (return-type "gchar*")
+(define-function g_mkstemp_full
+  (c-name "g_mkstemp_full")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "filename")
+    '("gchar*" "tmpl")
+    '("gint" "flags")
+    '("gint" "mode")
   )
 )
 
-(define-function g_uri_list_extract_uris
-  (c-name "g_uri_list_extract_uris")
-  (return-type "gchar**")
+(define-function g_nullify_pointer
+  (c-name "g_nullify_pointer")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "uri_list")
+    '("gpointer*" "nullify_location")
   )
 )
 
-(define-function g_filename_to_utf8_utf8
-  (c-name "g_filename_to_utf8_utf8")
-  (return-type "gchar*")
+(define-function g_on_error_query
+  (c-name "g_on_error_query")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "opsysstring")
-    '("gssize" "len")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("const-gchar*" "prg_name")
   )
 )
 
-(define-function g_filename_from_utf8_utf8
-  (c-name "g_filename_from_utf8_utf8")
-  (return-type "gchar*")
+(define-function g_on_error_stack_trace
+  (c-name "g_on_error_stack_trace")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "utf8string")
-    '("gssize" "len")
-    '("gsize*" "bytes_read")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("const-gchar*" "prg_name")
   )
 )
 
-(define-function g_filename_from_uri_utf8
-  (c-name "g_filename_from_uri_utf8")
-  (return-type "gchar*")
+(define-function g_once_init_enter
+  (c-name "g_once_init_enter")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "uri")
-    '("gchar**" "hostname")
-    '("GError**" "error")
+    '("void*" "location")
   )
 )
 
-(define-function g_filename_to_uri_utf8
-  (c-name "g_filename_to_uri_utf8")
-  (return-type "gchar*")
+(define-function g_once_init_leave
+  (c-name "g_once_init_leave")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "hostname")
-    '("GError**" "error")
+    '("void*" "location")
+    '("gsize" "result")
   )
 )
 
+(define-function g_option_error_quark
+  (c-name "g_option_error_quark")
+  (return-type "GQuark")
+)
 
+(define-function g_parse_debug_string
+  (c-name "g_parse_debug_string")
+  (return-type "guint")
+  (parameters
+    '("const-gchar*" "string")
+    '("GDebugKey*" "keys")
+    '("guint" "nkeys")
+  )
+)
 
-;; From gdataset.h
-
-(define-function g_datalist_init
-  (c-name "g_datalist_init")
-  (return-type "none")
+(define-function g_path_get_basename
+  (c-name "g_path_get_basename")
+  (return-type "gchar*")
   (parameters
-    '("GData**" "datalist")
+    '("gchar*" "file_name")
   )
 )
 
-(define-function g_datalist_clear
-  (c-name "g_datalist_clear")
-  (return-type "none")
+(define-function g_path_get_dirname
+  (c-name "g_path_get_dirname")
+  (return-type "gchar*")
   (parameters
-    '("GData**" "datalist")
+    '("gchar*" "file_name")
   )
 )
 
-(define-function g_datalist_id_get_data
-  (c-name "g_datalist_id_get_data")
-  (return-type "gpointer")
+(define-function g_path_is_absolute
+  (c-name "g_path_is_absolute")
+  (return-type "gboolean")
   (parameters
-    '("GData**" "datalist")
-    '("GQuark" "key_id")
+    '("gchar*" "file_name")
   )
 )
 
-(define-function g_datalist_id_set_data_full
-  (c-name "g_datalist_id_set_data_full")
-  (return-type "none")
+(define-function g_path_skip_root
+  (c-name "g_path_skip_root")
+  (return-type "gchar*")
   (parameters
-    '("GData**" "datalist")
-    '("GQuark" "key_id")
-    '("gpointer" "data")
-    '("GDestroyNotify" "destroy_func")
+    '("gchar*" "file_name")
   )
 )
 
-(define-function g_datalist_id_dup_data
-  (c-name "g_datalist_id_dup_data")
-  (return-type "gpointer")
+(define-function g_pattern_match
+  (c-name "g_pattern_match")
+  (return-type "gboolean")
   (parameters
-    '("GData**" "datalist")
-    '("GQuark" "key_id")
-    '("GDuplicateFunc" "dup_func")
-    '("gpointer" "user_data")
+    '("GPatternSpec*" "pspec")
+    '("guint" "string_length")
+    '("const-gchar*" "string")
+    '("const-gchar*" "string_reversed")
   )
 )
 
-(define-function g_datalist_id_replace_data
-  (c-name "g_datalist_id_replace_data")
+(define-function g_pattern_match_simple
+  (c-name "g_pattern_match_simple")
   (return-type "gboolean")
   (parameters
-    '("GData**" "datalist")
-    '("GQuark" "key_id")
-    '("gpointer" "oldval")
-    '("gpointer" "newval")
-    '("GDestroyNotify" "destroy")
-    '("GDestroyNotify*" "old_destroy")
+    '("const-gchar*" "pattern")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_datalist_id_remove_no_notify
-  (c-name "g_datalist_id_remove_no_notify")
-  (return-type "gpointer")
+(define-function g_pattern_match_string
+  (c-name "g_pattern_match_string")
+  (return-type "gboolean")
   (parameters
-    '("GData**" "datalist")
-    '("GQuark" "key_id")
+    '("GPatternSpec*" "pspec")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_datalist_foreach
-  (c-name "g_datalist_foreach")
-  (return-type "none")
+(define-function g_pointer_bit_lock
+  (c-name "g_pointer_bit_lock")
+  (return-type "void")
   (parameters
-    '("GData**" "datalist")
-    '("GDataForeachFunc" "func")
-    '("gpointer" "user_data")
+    '("void*" "address")
+    '("gint" "lock_bit")
   )
 )
 
-(define-function g_datalist_set_flags
-  (c-name "g_datalist_set_flags")
-  (return-type "none")
+(define-function g_pointer_bit_trylock
+  (c-name "g_pointer_bit_trylock")
+  (return-type "gboolean")
   (parameters
-    '("GData**" "datalist")
-    '("guint" "flags")
+    '("void*" "address")
+    '("gint" "lock_bit")
   )
 )
 
-(define-function g_datalist_unset_flags
-  (c-name "g_datalist_unset_flags")
-  (return-type "none")
+(define-function g_pointer_bit_unlock
+  (c-name "g_pointer_bit_unlock")
+  (return-type "void")
   (parameters
-    '("GData**" "datalist")
-    '("guint" "flags")
+    '("void*" "address")
+    '("gint" "lock_bit")
   )
 )
 
-(define-function g_datalist_get_flags
-  (c-name "g_datalist_get_flags")
-  (return-type "guint")
+(define-function g_poll
+  (c-name "g_poll")
+  (return-type "gint")
   (parameters
-    '("GData**" "datalist")
+    '("GPollFD*" "fds")
+    '("guint" "nfds")
+    '("gint" "timeout")
   )
 )
 
-(define-function g_dataset_destroy
-  (c-name "g_dataset_destroy")
-  (return-type "none")
+(define-function g_prefix_error
+  (c-name "g_prefix_error")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "dataset_location")
+    '("GError**" "err")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_dataset_id_get_data
-  (c-name "g_dataset_id_get_data")
-  (return-type "gpointer")
+(define-function g_print
+  (c-name "g_print")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "dataset_location")
-    '("GQuark" "key_id")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_datalist_get_data
-  (c-name "g_datalist_get_data")
-  (return-type "gpointer")
+(define-function g_printerr
+  (c-name "g_printerr")
+  (return-type "void")
   (parameters
-    '("GData**" "datalist")
-    '("const-gchar*" "key")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_dataset_id_set_data_full
-  (c-name "g_dataset_id_set_data_full")
-  (return-type "none")
+(define-function g_printf
+  (c-name "g_printf")
+  (return-type "gint")
   (parameters
-    '("gconstpointer" "dataset_location")
-    '("GQuark" "key_id")
-    '("gpointer" "data")
-    '("GDestroyNotify" "destroy_func")
+    '("gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_dataset_id_remove_no_notify
-  (c-name "g_dataset_id_remove_no_notify")
-  (return-type "gpointer")
+(define-function g_printf_string_upper_bound
+  (c-name "g_printf_string_upper_bound")
+  (return-type "gsize")
   (parameters
-    '("gconstpointer" "dataset_location")
-    '("GQuark" "key_id")
+    '("const-gchar*" "format")
+    '("va_list" "args")
   )
 )
 
-(define-function g_dataset_foreach
-  (c-name "g_dataset_foreach")
-  (return-type "none")
+(define-function g_propagate_error
+  (c-name "g_propagate_error")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "dataset_location")
-    '("GDataForeachFunc" "func")
-    '("gpointer" "user_data")
+    '("GError**" "dest")
+    '("GError*" "src")
   )
 )
 
+(define-function g_propagate_prefixed_error
+  (c-name "g_propagate_prefixed_error")
+  (return-type "void")
+  (parameters
+    '("GError**" "dest")
+    '("GError*" "src")
+    '("const-gchar*" "format")
+    '("..." "...")
+  )
+)
 
+(define-function g_qsort_with_data
+  (c-name "g_qsort_with_data")
+  (return-type "void")
+  (parameters
+    '("gconstpointer" "pbase")
+    '("gint" "total_elems")
+    '("gsize" "size")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
+  )
+)
 
-;; From gdate.h
+(define-function g_quark_from_static_string
+  (c-name "g_quark_from_static_string")
+  (return-type "GQuark")
+  (parameters
+    '("const-gchar*" "string")
+  )
+)
 
-(define-function g_date_new
-  (c-name "g_date_new")
-  (is-constructor-of "GDate")
-  (return-type "GDate*")
+(define-function g_quark_from_string
+  (c-name "g_quark_from_string")
+  (return-type "GQuark")
+  (parameters
+    '("const-gchar*" "string")
+  )
 )
 
-(define-function g_date_new_dmy
-  (c-name "g_date_new_dmy")
-  (return-type "GDate*")
+(define-function g_quark_to_string
+  (c-name "g_quark_to_string")
+  (return-type "const-gchar*")
   (parameters
-    '("GDateDay" "day")
-    '("GDateMonth" "month")
-    '("GDateYear" "year")
+    '("GQuark" "quark")
   )
 )
 
-(define-function g_date_new_julian
-  (c-name "g_date_new_julian")
-  (return-type "GDate*")
+(define-function g_quark_try_string
+  (c-name "g_quark_try_string")
+  (return-type "GQuark")
   (parameters
-    '("guint32" "julian_day")
+    '("const-gchar*" "string")
   )
 )
 
-(define-method free
-  (of-object "GDate")
-  (c-name "g_date_free")
-  (return-type "none")
+(define-function g_random_double
+  (c-name "g_random_double")
+  (return-type "gdouble")
 )
 
-(define-method valid
-  (of-object "GDate")
-  (c-name "g_date_valid")
-  (return-type "gboolean")
+(define-function g_random_double_range
+  (c-name "g_random_double_range")
+  (return-type "gdouble")
+  (parameters
+    '("gdouble" "begin")
+    '("gdouble" "end")
+  )
 )
 
-(define-function g_date_valid_day
-  (c-name "g_date_valid_day")
-  (return-type "gboolean")
+(define-function g_random_int
+  (c-name "g_random_int")
+  (return-type "guint32")
+)
+
+(define-function g_random_int_range
+  (c-name "g_random_int_range")
+  (return-type "gint32")
   (parameters
-    '("GDateDay" "day")
+    '("gint32" "begin")
+    '("gint32" "end")
   )
 )
 
-(define-function g_date_valid_month
-  (c-name "g_date_valid_month")
-  (return-type "gboolean")
+(define-function g_random_set_seed
+  (c-name "g_random_set_seed")
+  (return-type "void")
   (parameters
-    '("GDateMonth" "month")
+    '("guint32" "seed")
   )
 )
 
-(define-function g_date_valid_year
-  (c-name "g_date_valid_year")
-  (return-type "gboolean")
+(define-function g_realloc
+  (c-name "g_realloc")
+  (return-type "gpointer")
   (parameters
-    '("GDateYear" "year")
+    '("gpointer" "mem")
+    '("gsize" "n_bytes")
   )
 )
 
-(define-function g_date_valid_weekday
-  (c-name "g_date_valid_weekday")
-  (return-type "gboolean")
+(define-function g_realloc_n
+  (c-name "g_realloc_n")
+  (return-type "gpointer")
   (parameters
-    '("GDateWeekday" "weekday")
+    '("gpointer" "mem")
+    '("gsize" "n_blocks")
+    '("gsize" "n_block_bytes")
   )
 )
 
-(define-function g_date_valid_julian
-  (c-name "g_date_valid_julian")
+(define-function g_regex_check_replacement
+  (c-name "g_regex_check_replacement")
   (return-type "gboolean")
   (parameters
-    '("guint32" "julian_date")
+    '("const-gchar*" "replacement")
+    '("gboolean*" "has_references")
+    '("GError**" "error")
   )
 )
 
-(define-function g_date_valid_dmy
-  (c-name "g_date_valid_dmy")
-  (return-type "gboolean")
+(define-function g_regex_error_quark
+  (c-name "g_regex_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_regex_escape_nul
+  (c-name "g_regex_escape_nul")
+  (return-type "gchar*")
   (parameters
-    '("GDateDay" "day")
-    '("GDateMonth" "month")
-    '("GDateYear" "year")
+    '("const-gchar*" "string")
+    '("gint" "length")
   )
 )
 
-(define-method get_weekday
-  (of-object "GDate")
-  (c-name "g_date_get_weekday")
-  (return-type "GDateWeekday")
+(define-function g_regex_escape_string
+  (c-name "g_regex_escape_string")
+  (return-type "gchar*")
+  (parameters
+    '("gchar*" "string")
+    '("gint" "length")
+  )
 )
 
-(define-method get_month
-  (of-object "GDate")
-  (c-name "g_date_get_month")
-  (return-type "GDateMonth")
+(define-function g_regex_match_simple
+  (c-name "g_regex_match_simple")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "pattern")
+    '("const-gchar*" "string")
+    '("GRegexCompileFlags" "compile_options")
+    '("GRegexMatchFlags" "match_options")
+  )
 )
 
-(define-method get_year
-  (of-object "GDate")
-  (c-name "g_date_get_year")
-  (return-type "GDateYear")
+(define-function g_regex_split_simple
+  (c-name "g_regex_split_simple")
+  (return-type "gchar**")
+  (parameters
+    '("const-gchar*" "pattern")
+    '("const-gchar*" "string")
+    '("GRegexCompileFlags" "compile_options")
+    '("GRegexMatchFlags" "match_options")
+  )
 )
 
-(define-method get_day
-  (of-object "GDate")
-  (c-name "g_date_get_day")
-  (return-type "GDateDay")
+(define-function g_reload_user_special_dirs_cache
+  (c-name "g_reload_user_special_dirs_cache")
+  (return-type "void")
 )
 
-(define-method get_julian
-  (of-object "GDate")
-  (c-name "g_date_get_julian")
-  (return-type "guint32")
+(define-function g_return_if_fail_warning
+  (c-name "g_return_if_fail_warning")
+  (return-type "void")
+  (parameters
+    '("const-char*" "log_domain")
+    '("const-char*" "pretty_function")
+    '("const-char*" "expression")
+  )
 )
 
-(define-method get_day_of_year
-  (of-object "GDate")
-  (c-name "g_date_get_day_of_year")
-  (return-type "guint")
+(define-function g_rmdir
+  (c-name "g_rmdir")
+  (return-type "int")
+  (parameters
+    '("gchar*" "filename")
+  )
 )
 
-(define-method get_monday_week_of_year
-  (of-object "GDate")
-  (c-name "g_date_get_monday_week_of_year")
-  (return-type "guint")
+(define-function g_sequence_get
+  (c-name "g_sequence_get")
+  (return-type "gpointer")
+  (parameters
+    '("GSequenceIter*" "iter")
+  )
 )
 
-(define-method get_sunday_week_of_year
-  (of-object "GDate")
-  (c-name "g_date_get_sunday_week_of_year")
-  (return-type "guint")
+(define-function g_sequence_move
+  (c-name "g_sequence_move")
+  (return-type "void")
+  (parameters
+    '("GSequenceIter*" "src")
+    '("GSequenceIter*" "dest")
+  )
 )
 
-(define-method get_iso8601_week_of_year
-  (of-object "GDate")
-  (c-name "g_date_get_iso8601_week_of_year")
-  (return-type "guint")
+(define-function g_sequence_move_range
+  (c-name "g_sequence_move_range")
+  (return-type "void")
+  (parameters
+    '("GSequenceIter*" "dest")
+    '("GSequenceIter*" "begin")
+    '("GSequenceIter*" "end")
+  )
 )
 
-(define-method clear
-  (of-object "GDate")
-  (c-name "g_date_clear")
-  (return-type "none")
+(define-function g_sequence_remove
+  (c-name "g_sequence_remove")
+  (return-type "void")
   (parameters
-    '("guint" "n_dates")
+    '("GSequenceIter*" "iter")
   )
 )
 
-(define-method set_parse
-  (of-object "GDate")
-  (c-name "g_date_set_parse")
-  (return-type "none")
+(define-function g_sequence_remove_range
+  (c-name "g_sequence_remove_range")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
+    '("GSequenceIter*" "begin")
+    '("GSequenceIter*" "end")
   )
 )
 
-(define-method set_time_t
-  (of-object "GDate")
-  (c-name "g_date_set_time_t")
-  (return-type "none")
+(define-function g_sequence_set
+  (c-name "g_sequence_set")
+  (return-type "void")
   (parameters
-    '("time_t" "timet")
+    '("GSequenceIter*" "iter")
+    '("gpointer" "data")
   )
 )
 
-(define-method set_time_val
-  (of-object "GDate")
-  (c-name "g_date_set_time_val")
-  (return-type "none")
+(define-function g_sequence_swap
+  (c-name "g_sequence_swap")
+  (return-type "void")
   (parameters
-    '("GTimeVal*" "timeval")
+    '("GSequenceIter*" "a")
+    '("GSequenceIter*" "b")
   )
 )
 
-(define-method set_time
-  (of-object "GDate")
-  (c-name "g_date_set_time")
-  (return-type "none")
+(define-function g_set_application_name
+  (c-name "g_set_application_name")
+  (return-type "void")
   (parameters
-    '("GTime" "time_")
+    '("const-gchar*" "application_name")
   )
 )
 
-(define-method set_month
-  (of-object "GDate")
-  (c-name "g_date_set_month")
-  (return-type "none")
+(define-function g_set_error
+  (c-name "g_set_error")
+  (return-type "void")
   (parameters
-    '("GDateMonth" "month")
+    '("GError**" "err")
+    '("GQuark" "domain")
+    '("gint" "code")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-method set_day
-  (of-object "GDate")
-  (c-name "g_date_set_day")
-  (return-type "none")
+(define-function g_set_error_literal
+  (c-name "g_set_error_literal")
+  (return-type "void")
   (parameters
-    '("GDateDay" "day")
+    '("GError**" "err")
+    '("GQuark" "domain")
+    '("gint" "code")
+    '("const-gchar*" "message")
   )
 )
 
-(define-method set_year
-  (of-object "GDate")
-  (c-name "g_date_set_year")
-  (return-type "none")
+(define-function g_set_prgname
+  (c-name "g_set_prgname")
+  (return-type "void")
   (parameters
-    '("GDateYear" "year")
+    '("const-gchar*" "prgname")
   )
 )
 
-(define-method set_dmy
-  (of-object "GDate")
-  (c-name "g_date_set_dmy")
-  (return-type "none")
+(define-function g_set_print_handler
+  (c-name "g_set_print_handler")
+  (return-type "GPrintFunc")
   (parameters
-    '("GDateDay" "day")
-    '("GDateMonth" "month")
-    '("GDateYear" "y")
+    '("GPrintFunc" "func")
   )
 )
 
-(define-method set_julian
-  (of-object "GDate")
-  (c-name "g_date_set_julian")
-  (return-type "none")
+(define-function g_set_printerr_handler
+  (c-name "g_set_printerr_handler")
+  (return-type "GPrintFunc")
   (parameters
-    '("guint32" "julian_date")
+    '("GPrintFunc" "func")
   )
 )
 
-(define-method is_first_of_month
-  (of-object "GDate")
-  (c-name "g_date_is_first_of_month")
+(define-function g_setenv
+  (c-name "g_setenv")
   (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "variable")
+    '("const-gchar*" "value")
+    '("gboolean" "overwrite")
+  )
 )
 
-(define-method is_last_of_month
-  (of-object "GDate")
-  (c-name "g_date_is_last_of_month")
+(define-function g_shell_error_quark
+  (c-name "g_shell_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_shell_parse_argv
+  (c-name "g_shell_parse_argv")
   (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "command_line")
+    '("gint*" "argcp")
+    '("gchar***" "argvp")
+    '("GError**" "error")
+  )
 )
 
-(define-method add_days
-  (of-object "GDate")
-  (c-name "g_date_add_days")
-  (return-type "none")
+(define-function g_shell_quote
+  (c-name "g_shell_quote")
+  (return-type "gchar*")
   (parameters
-    '("guint" "n_days")
+    '("const-gchar*" "unquoted_string")
   )
 )
 
-(define-method subtract_days
-  (of-object "GDate")
-  (c-name "g_date_subtract_days")
-  (return-type "none")
+(define-function g_shell_unquote
+  (c-name "g_shell_unquote")
+  (return-type "gchar*")
   (parameters
-    '("guint" "n_days")
+    '("const-gchar*" "quoted_string")
+    '("GError**" "error")
   )
 )
 
-(define-method add_months
-  (of-object "GDate")
-  (c-name "g_date_add_months")
-  (return-type "none")
+(define-function g_slice_alloc
+  (c-name "g_slice_alloc")
+  (return-type "gpointer")
   (parameters
-    '("guint" "n_months")
+    '("gsize" "block_size")
   )
 )
 
-(define-method subtract_months
-  (of-object "GDate")
-  (c-name "g_date_subtract_months")
-  (return-type "none")
+(define-function g_slice_alloc0
+  (c-name "g_slice_alloc0")
+  (return-type "gpointer")
   (parameters
-    '("guint" "n_months")
+    '("gsize" "block_size")
   )
 )
 
-(define-method add_years
-  (of-object "GDate")
-  (c-name "g_date_add_years")
-  (return-type "none")
+(define-function g_slice_copy
+  (c-name "g_slice_copy")
+  (return-type "gpointer")
   (parameters
-    '("guint" "n_years")
+    '("gsize" "block_size")
+    '("gconstpointer" "mem_block")
   )
 )
 
-(define-method subtract_years
-  (of-object "GDate")
-  (c-name "g_date_subtract_years")
-  (return-type "none")
+(define-function g_slice_free1
+  (c-name "g_slice_free1")
+  (return-type "void")
   (parameters
-    '("guint" "n_years")
+    '("gsize" "block_size")
+    '("gpointer" "mem_block")
   )
 )
 
-(define-function g_date_is_leap_year
-  (c-name "g_date_is_leap_year")
-  (return-type "gboolean")
+(define-function g_slice_free_chain_with_offset
+  (c-name "g_slice_free_chain_with_offset")
+  (return-type "void")
   (parameters
-    '("GDateYear" "year")
+    '("gsize" "block_size")
+    '("gpointer" "mem_chain")
+    '("gsize" "next_offset")
   )
 )
 
-(define-function g_date_get_days_in_month
-  (c-name "g_date_get_days_in_month")
-  (return-type "guint8")
+(define-function g_slice_get_config
+  (c-name "g_slice_get_config")
+  (return-type "gint64")
   (parameters
-    '("GDateMonth" "month")
-    '("GDateYear" "year")
+    '("GSliceConfig" "ckey")
   )
 )
 
-(define-function g_date_get_monday_weeks_in_year
-  (c-name "g_date_get_monday_weeks_in_year")
-  (return-type "guint8")
+(define-function g_slice_get_config_state
+  (c-name "g_slice_get_config_state")
+  (return-type "gint64*")
   (parameters
-    '("GDateYear" "year")
+    '("GSliceConfig" "ckey")
+    '("gint64" "address")
+    '("guint*" "n_values")
   )
 )
 
-(define-function g_date_get_sunday_weeks_in_year
-  (c-name "g_date_get_sunday_weeks_in_year")
-  (return-type "guint8")
+(define-function g_slice_set_config
+  (c-name "g_slice_set_config")
+  (return-type "void")
   (parameters
-    '("GDateYear" "year")
+    '("GSliceConfig" "ckey")
+    '("gint64" "value")
   )
 )
 
-(define-method days_between
-  (of-object "GDate")
-  (c-name "g_date_days_between")
+(define-function g_snprintf
+  (c-name "g_snprintf")
   (return-type "gint")
   (parameters
-    '("const-GDate*" "date2")
+    '("gchar*" "string")
+    '("gulong" "n")
+    '("gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-method compare
-  (of-object "GDate")
-  (c-name "g_date_compare")
-  (return-type "gint")
+(define-function g_source_remove
+  (c-name "g_source_remove")
+  (return-type "gboolean")
   (parameters
-    '("const-GDate*" "rhs")
+    '("guint" "tag")
   )
 )
 
-(define-method to_struct_tm
-  (of-object "GDate")
-  (c-name "g_date_to_struct_tm")
-  (return-type "none")
+(define-function g_source_remove_by_funcs_user_data
+  (c-name "g_source_remove_by_funcs_user_data")
+  (return-type "gboolean")
   (parameters
-    '("struct-tm*" "tm")
+    '("GSourceFuncs*" "funcs")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method clamp
-  (of-object "GDate")
-  (c-name "g_date_clamp")
-  (return-type "none")
+(define-function g_source_remove_by_user_data
+  (c-name "g_source_remove_by_user_data")
+  (return-type "gboolean")
   (parameters
-    '("const-GDate*" "min_date")
-    '("const-GDate*" "max_date")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method order
-  (of-object "GDate")
-  (c-name "g_date_order")
-  (return-type "none")
+(define-function g_source_set_name_by_id
+  (c-name "g_source_set_name_by_id")
+  (return-type "void")
   (parameters
-    '("GDate*" "date2")
+    '("guint" "tag")
+    '("const-char*" "name")
   )
 )
 
-(define-function g_date_strftime
-  (c-name "g_date_strftime")
-  (return-type "gsize")
+(define-function g_spaced_primes_closest
+  (c-name "g_spaced_primes_closest")
+  (return-type "guint")
   (parameters
-    '("gchar*" "s")
-    '("gsize" "slen")
-    '("const-gchar*" "format")
-    '("const-GDate*" "date")
+    '("guint" "num")
   )
 )
 
+(define-function g_spawn_async
+  (c-name "g_spawn_async")
+  (return-type "gboolean")
+  (parameters
+    '("gchar*" "working_directory")
+    '("gchar**" "argv")
+    '("gchar**" "envp")
+    '("GSpawnFlags" "flags")
+    '("GSpawnChildSetupFunc" "child_setup")
+    '("gpointer" "user_data")
+    '("GPid*" "child_pid")
+    '("GError**" "error")
+  )
+)
 
+(define-function g_spawn_async_with_pipes
+  (c-name "g_spawn_async_with_pipes")
+  (return-type "gboolean")
+  (parameters
+    '("gchar*" "working_directory")
+    '("gchar**" "argv")
+    '("gchar**" "envp")
+    '("GSpawnFlags" "flags")
+    '("GSpawnChildSetupFunc" "child_setup")
+    '("gpointer" "user_data")
+    '("GPid*" "child_pid")
+    '("gint*" "standard_input")
+    '("gint*" "standard_output")
+    '("gint*" "standard_error")
+    '("GError**" "error")
+  )
+)
 
-;; From gdatetime.h
+(define-function g_spawn_check_exit_status
+  (c-name "g_spawn_check_exit_status")
+  (return-type "gboolean")
+  (parameters
+    '("gint" "exit_status")
+    '("GError**" "error")
+  )
+)
 
-(define-method unref
-  (of-object "GDateTime")
-  (c-name "g_date_time_unref")
-  (return-type "none")
+(define-function g_spawn_close_pid
+  (c-name "g_spawn_close_pid")
+  (return-type "void")
+  (parameters
+    '("GPid" "pid")
+  )
 )
 
-(define-method ref
-  (of-object "GDateTime")
-  (c-name "g_date_time_ref")
-  (return-type "GDateTime*")
+(define-function g_spawn_command_line_async
+  (c-name "g_spawn_command_line_async")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "command_line")
+    '("GError**" "error")
+  )
 )
 
-(define-function g_date_time_new_now
-  (c-name "g_date_time_new_now")
-  (return-type "GDateTime*")
+(define-function g_spawn_command_line_sync
+  (c-name "g_spawn_command_line_sync")
+  (return-type "gboolean")
   (parameters
-    '("GTimeZone*" "tz")
+    '("const-gchar*" "command_line")
+    '("gchar**" "standard_output")
+    '("gchar**" "standard_error")
+    '("gint*" "exit_status")
+    '("GError**" "error")
   )
 )
 
-(define-function g_date_time_new_now_local
-  (c-name "g_date_time_new_now_local")
-  (return-type "GDateTime*")
+(define-function g_spawn_error_quark
+  (c-name "g_spawn_error_quark")
+  (return-type "GQuark")
 )
 
-(define-function g_date_time_new_now_utc
-  (c-name "g_date_time_new_now_utc")
-  (return-type "GDateTime*")
+(define-function g_spawn_exit_error_quark
+  (c-name "g_spawn_exit_error_quark")
+  (return-type "GQuark")
 )
 
-(define-function g_date_time_new_from_unix_local
-  (c-name "g_date_time_new_from_unix_local")
-  (return-type "GDateTime*")
+(define-function g_spawn_sync
+  (c-name "g_spawn_sync")
+  (return-type "gboolean")
   (parameters
-    '("gint64" "t")
+    '("gchar*" "working_directory")
+    '("gchar**" "argv")
+    '("gchar**" "envp")
+    '("GSpawnFlags" "flags")
+    '("GSpawnChildSetupFunc" "child_setup")
+    '("gpointer" "user_data")
+    '("gchar**" "standard_output")
+    '("gchar**" "standard_error")
+    '("gint*" "exit_status")
+    '("GError**" "error")
   )
 )
 
-(define-function g_date_time_new_from_unix_utc
-  (c-name "g_date_time_new_from_unix_utc")
-  (return-type "GDateTime*")
+(define-function g_sprintf
+  (c-name "g_sprintf")
+  (return-type "gint")
   (parameters
-    '("gint64" "t")
+    '("gchar*" "string")
+    '("gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_date_time_new_from_timeval_local
-  (c-name "g_date_time_new_from_timeval_local")
-  (return-type "GDateTime*")
+(define-function g_stpcpy
+  (c-name "g_stpcpy")
+  (return-type "gchar*")
   (parameters
-    '("const-GTimeVal*" "tv")
+    '("gchar*" "dest")
+    '("const-char*" "src")
   )
 )
 
-(define-function g_date_time_new_from_timeval_utc
-  (c-name "g_date_time_new_from_timeval_utc")
-  (return-type "GDateTime*")
+(define-function g_str_equal
+  (c-name "g_str_equal")
+  (return-type "gboolean")
   (parameters
-    '("const-GTimeVal*" "tv")
+    '("gconstpointer" "v1")
+    '("gconstpointer" "v2")
   )
 )
 
-(define-function g_date_time_new
-  (c-name "g_date_time_new")
-  (is-constructor-of "GDateTime")
-  (return-type "GDateTime*")
+(define-function g_str_has_prefix
+  (c-name "g_str_has_prefix")
+  (return-type "gboolean")
   (parameters
-    '("GTimeZone*" "tz")
-    '("gint" "year")
-    '("gint" "month")
-    '("gint" "day")
-    '("gint" "hour")
-    '("gint" "minute")
-    '("gdouble" "seconds")
+    '("const-gchar*" "str")
+    '("const-gchar*" "prefix")
   )
 )
 
-(define-function g_date_time_new_local
-  (c-name "g_date_time_new_local")
-  (return-type "GDateTime*")
+(define-function g_str_has_suffix
+  (c-name "g_str_has_suffix")
+  (return-type "gboolean")
   (parameters
-    '("gint" "year")
-    '("gint" "month")
-    '("gint" "day")
-    '("gint" "hour")
-    '("gint" "minute")
-    '("gdouble" "seconds")
+    '("const-gchar*" "str")
+    '("const-gchar*" "suffix")
   )
 )
 
-(define-function g_date_time_new_utc
-  (c-name "g_date_time_new_utc")
-  (return-type "GDateTime*")
+(define-function g_str_hash
+  (c-name "g_str_hash")
+  (return-type "guint")
   (parameters
-    '("gint" "year")
-    '("gint" "month")
-    '("gint" "day")
-    '("gint" "hour")
-    '("gint" "minute")
-    '("gdouble" "seconds")
+    '("gconstpointer" "v")
   )
 )
 
-(define-method add
-  (of-object "GDateTime")
-  (c-name "g_date_time_add")
-  (return-type "GDateTime*")
+(define-function g_str_is_ascii
+  (c-name "g_str_is_ascii")
+  (return-type "gboolean")
   (parameters
-    '("GTimeSpan" "timespan")
+    '("const-gchar*" "str")
   )
 )
 
-(define-method add_years
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_years")
-  (return-type "GDateTime*")
+(define-function g_str_match_string
+  (c-name "g_str_match_string")
+  (return-type "gboolean")
   (parameters
-    '("gint" "years")
+    '("const-gchar*" "search_term")
+    '("const-gchar*" "potential_hit")
+    '("gboolean" "accept_alternates")
   )
 )
 
-(define-method add_months
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_months")
-  (return-type "GDateTime*")
+(define-function g_str_to_ascii
+  (c-name "g_str_to_ascii")
+  (return-type "gchar*")
   (parameters
-    '("gint" "months")
+    '("const-gchar*" "str")
+    '("const-gchar*" "from_locale")
   )
 )
 
-(define-method add_weeks
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_weeks")
-  (return-type "GDateTime*")
+(define-function g_str_tokenize_and_fold
+  (c-name "g_str_tokenize_and_fold")
+  (return-type "gchar**")
   (parameters
-    '("gint" "weeks")
+    '("const-gchar*" "string")
+    '("const-gchar*" "translit_locale")
+    '("gchar***" "ascii_alternates")
   )
 )
 
-(define-method add_days
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_days")
-  (return-type "GDateTime*")
+(define-function g_strcanon
+  (c-name "g_strcanon")
+  (return-type "gchar*")
   (parameters
-    '("gint" "days")
+    '("gchar*" "string")
+    '("const-gchar*" "valid_chars")
+    '("gchar" "substitutor")
   )
 )
 
-(define-method add_hours
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_hours")
-  (return-type "GDateTime*")
+(define-function g_strcasecmp
+  (c-name "g_strcasecmp")
+  (return-type "gint")
   (parameters
-    '("gint" "hours")
+    '("const-gchar*" "s1")
+    '("const-gchar*" "s2")
   )
 )
 
-(define-method add_minutes
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_minutes")
-  (return-type "GDateTime*")
+(define-function g_strchomp
+  (c-name "g_strchomp")
+  (return-type "gchar*")
   (parameters
-    '("gint" "minutes")
+    '("gchar*" "string")
   )
 )
 
-(define-method add_seconds
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_seconds")
-  (return-type "GDateTime*")
+(define-function g_strchug
+  (c-name "g_strchug")
+  (return-type "gchar*")
   (parameters
-    '("gdouble" "seconds")
+    '("gchar*" "string")
   )
 )
 
-(define-method add_full
-  (of-object "GDateTime")
-  (c-name "g_date_time_add_full")
-  (return-type "GDateTime*")
+(define-function g_strcmp0
+  (c-name "g_strcmp0")
+  (return-type "int")
   (parameters
-    '("gint" "years")
-    '("gint" "months")
-    '("gint" "days")
-    '("gint" "hours")
-    '("gint" "minutes")
-    '("gdouble" "seconds")
+    '("const-char*" "str1")
+    '("const-char*" "str2")
   )
 )
 
-(define-function g_date_time_compare
-  (c-name "g_date_time_compare")
-  (return-type "gint")
+(define-function g_strcompress
+  (c-name "g_strcompress")
+  (return-type "gchar*")
   (parameters
-    '("gconstpointer" "dt1")
-    '("gconstpointer" "dt2")
+    '("const-gchar*" "source")
   )
 )
 
-(define-method difference
-  (of-object "GDateTime")
-  (c-name "g_date_time_difference")
-  (return-type "GTimeSpan")
+(define-function g_strconcat
+  (c-name "g_strconcat")
+  (return-type "gchar*")
   (parameters
-    '("GDateTime*" "begin")
+    '("const-gchar*" "string1")
+    '("..." "...")
   )
 )
 
-(define-function g_date_time_hash
-  (c-name "g_date_time_hash")
-  (return-type "guint")
+(define-function g_strdelimit
+  (c-name "g_strdelimit")
+  (return-type "gchar*")
   (parameters
-    '("gconstpointer" "datetime")
+    '("gchar*" "string")
+    '("const-gchar*" "delimiters")
+    '("gchar" "new_delimiter")
   )
 )
 
-(define-function g_date_time_equal
-  (c-name "g_date_time_equal")
-  (return-type "gboolean")
+(define-function g_strdown
+  (c-name "g_strdown")
+  (return-type "gchar*")
   (parameters
-    '("gconstpointer" "dt1")
-    '("gconstpointer" "dt2")
+    '("gchar*" "string")
   )
 )
 
-(define-method get_ymd
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_ymd")
-  (return-type "none")
+(define-function g_strdup
+  (c-name "g_strdup")
+  (return-type "gchar*")
   (parameters
-    '("gint*" "year")
-    '("gint*" "month")
-    '("gint*" "day")
+    '("const-gchar*" "str")
   )
 )
 
-(define-method get_year
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_year")
-  (return-type "gint")
-)
-
-(define-method get_month
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_month")
-  (return-type "gint")
+(define-function g_strdup_printf
+  (c-name "g_strdup_printf")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "format")
+    '("..." "...")
+  )
 )
 
-(define-method get_day_of_month
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_day_of_month")
-  (return-type "gint")
+(define-function g_strdup_vprintf
+  (c-name "g_strdup_vprintf")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "format")
+    '("va_list" "args")
+  )
 )
 
-(define-method get_week_numbering_year
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_week_numbering_year")
-  (return-type "gint")
+(define-function g_strdupv
+  (c-name "g_strdupv")
+  (return-type "gchar**")
+  (parameters
+    '("gchar**" "str_array")
+  )
 )
 
-(define-method get_week_of_year
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_week_of_year")
-  (return-type "gint")
+(define-function g_strerror
+  (c-name "g_strerror")
+  (return-type "const-gchar*")
+  (parameters
+    '("gint" "errnum")
+  )
 )
 
-(define-method get_day_of_week
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_day_of_week")
-  (return-type "gint")
+(define-function g_strescape
+  (c-name "g_strescape")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "source")
+    '("const-gchar*" "exceptions")
+  )
 )
 
-(define-method get_day_of_year
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_day_of_year")
-  (return-type "gint")
+(define-function g_strfreev
+  (c-name "g_strfreev")
+  (return-type "void")
+  (parameters
+    '("gchar**" "str_array")
+  )
 )
 
-(define-method get_hour
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_hour")
-  (return-type "gint")
+(define-function g_string_new
+  (c-name "g_string_new")
+  (return-type "GString*")
+  (parameters
+    '("const-gchar*" "init")
+  )
 )
 
-(define-method get_minute
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_minute")
-  (return-type "gint")
+(define-function g_string_new_len
+  (c-name "g_string_new_len")
+  (return-type "GString*")
+  (parameters
+    '("const-gchar*" "init")
+    '("gssize" "len")
+  )
 )
 
-(define-method get_second
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_second")
-  (return-type "gint")
+(define-function g_string_sized_new
+  (c-name "g_string_sized_new")
+  (return-type "GString*")
+  (parameters
+    '("gsize" "dfl_size")
+  )
 )
 
-(define-method get_microsecond
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_microsecond")
-  (return-type "gint")
+(define-function g_strip_context
+  (c-name "g_strip_context")
+  (return-type "const-gchar*")
+  (parameters
+    '("const-gchar*" "msgid")
+    '("const-gchar*" "msgval")
+  )
 )
 
-(define-method get_seconds
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_seconds")
-  (return-type "gdouble")
+(define-function g_strjoin
+  (c-name "g_strjoin")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "separator")
+    '("..." "...")
+  )
 )
 
-(define-method to_unix
-  (of-object "GDateTime")
-  (c-name "g_date_time_to_unix")
-  (return-type "gint64")
+(define-function g_strjoinv
+  (c-name "g_strjoinv")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "separator")
+    '("gchar**" "str_array")
+  )
 )
 
-(define-method to_timeval
-  (of-object "GDateTime")
-  (c-name "g_date_time_to_timeval")
-  (return-type "gboolean")
+(define-function g_strlcat
+  (c-name "g_strlcat")
+  (return-type "gsize")
   (parameters
-    '("GTimeVal*" "tv")
+    '("gchar*" "dest")
+    '("const-gchar*" "src")
+    '("gsize" "dest_size")
   )
 )
 
-(define-method get_utc_offset
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_utc_offset")
-  (return-type "GTimeSpan")
+(define-function g_strlcpy
+  (c-name "g_strlcpy")
+  (return-type "gsize")
+  (parameters
+    '("gchar*" "dest")
+    '("const-gchar*" "src")
+    '("gsize" "dest_size")
+  )
 )
 
-(define-method get_timezone_abbreviation
-  (of-object "GDateTime")
-  (c-name "g_date_time_get_timezone_abbreviation")
-  (return-type "const-gchar*")
+(define-function g_strncasecmp
+  (c-name "g_strncasecmp")
+  (return-type "gint")
+  (parameters
+    '("const-gchar*" "s1")
+    '("const-gchar*" "s2")
+    '("guint" "n")
+  )
 )
 
-(define-method is_daylight_savings
-  (of-object "GDateTime")
-  (c-name "g_date_time_is_daylight_savings")
-  (return-type "gboolean")
+(define-function g_strndup
+  (c-name "g_strndup")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "str")
+    '("gsize" "n")
+  )
 )
 
-(define-method to_timezone
-  (of-object "GDateTime")
-  (c-name "g_date_time_to_timezone")
-  (return-type "GDateTime*")
+(define-function g_strnfill
+  (c-name "g_strnfill")
+  (return-type "gchar*")
   (parameters
-    '("GTimeZone*" "tz")
+    '("gsize" "length")
+    '("gchar" "fill_char")
   )
 )
 
-(define-method to_local
-  (of-object "GDateTime")
-  (c-name "g_date_time_to_local")
-  (return-type "GDateTime*")
+(define-function g_strreverse
+  (c-name "g_strreverse")
+  (return-type "gchar*")
+  (parameters
+    '("gchar*" "string")
+  )
 )
 
-(define-method to_utc
-  (of-object "GDateTime")
-  (c-name "g_date_time_to_utc")
-  (return-type "GDateTime*")
+(define-function g_strrstr
+  (c-name "g_strrstr")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "haystack")
+    '("const-gchar*" "needle")
+  )
 )
 
-(define-method format
-  (of-object "GDateTime")
-  (c-name "g_date_time_format")
+(define-function g_strrstr_len
+  (c-name "g_strrstr_len")
   (return-type "gchar*")
   (parameters
-    '("const-gchar*" "format")
+    '("const-gchar*" "haystack")
+    '("gssize" "haystack_len")
+    '("const-gchar*" "needle")
   )
 )
 
+(define-function g_strsignal
+  (c-name "g_strsignal")
+  (return-type "const-gchar*")
+  (parameters
+    '("gint" "signum")
+  )
+)
 
+(define-function g_strsplit
+  (c-name "g_strsplit")
+  (return-type "gchar**")
+  (parameters
+    '("const-gchar*" "string")
+    '("const-gchar*" "delimiter")
+    '("gint" "max_tokens")
+  )
+)
 
-;; From gdir.h
-
-(define-function g_dir_open
-  (c-name "g_dir_open")
-  (return-type "GDir*")
+(define-function g_strsplit_set
+  (c-name "g_strsplit_set")
+  (return-type "gchar**")
   (parameters
-    '("const-gchar*" "path")
-    '("guint" "flags")
-    '("GError**" "error")
+    '("const-gchar*" "string")
+    '("const-gchar*" "delimiters")
+    '("gint" "max_tokens")
   )
 )
 
-(define-method read_name
-  (of-object "GDir")
-  (c-name "g_dir_read_name")
-  (return-type "const-gchar*")
+(define-function g_strstr_len
+  (c-name "g_strstr_len")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "haystack")
+    '("gssize" "haystack_len")
+    '("const-gchar*" "needle")
+  )
 )
 
-(define-method rewind
-  (of-object "GDir")
-  (c-name "g_dir_rewind")
-  (return-type "none")
+(define-function g_strtod
+  (c-name "g_strtod")
+  (return-type "gdouble")
+  (parameters
+    '("const-gchar*" "nptr")
+    '("gchar**" "endptr")
+  )
 )
 
-(define-method close
-  (of-object "GDir")
-  (c-name "g_dir_close")
-  (return-type "none")
+(define-function g_strup
+  (c-name "g_strup")
+  (return-type "gchar*")
+  (parameters
+    '("gchar*" "string")
+  )
 )
 
-(define-function g_dir_open_utf8
-  (c-name "g_dir_open_utf8")
-  (return-type "GDir*")
+(define-function g_strv_contains
+  (c-name "g_strv_contains")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "path")
-    '("guint" "flags")
-    '("GError**" "error")
+    '("const-gchar*const*" "strv")
+    '("const-gchar*" "str")
   )
 )
 
-(define-method read_name_utf8
-  (of-object "GDir")
-  (c-name "g_dir_read_name_utf8")
-  (return-type "const-gchar*")
+(define-function g_strv_get_type
+  (c-name "g_strv_get_type")
+  (return-type "GType")
 )
 
+(define-function g_strv_length
+  (c-name "g_strv_length")
+  (return-type "guint")
+  (parameters
+    '("gchar**" "str_array")
+  )
+)
 
+(define-function g_test_add_data_func
+  (c-name "g_test_add_data_func")
+  (return-type "void")
+  (parameters
+    '("const-char*" "testpath")
+    '("gconstpointer" "test_data")
+    '("GTestDataFunc" "test_func")
+  )
+)
 
-;; From genviron.h
+(define-function g_test_add_data_func_full
+  (c-name "g_test_add_data_func_full")
+  (return-type "void")
+  (parameters
+    '("const-char*" "testpath")
+    '("gpointer" "test_data")
+    '("GTestDataFunc" "test_func")
+    '("GDestroyNotify" "data_free_func")
+  )
+)
 
-(define-function g_getenv
-  (c-name "g_getenv")
-  (return-type "const-gchar*")
+(define-function g_test_add_func
+  (c-name "g_test_add_func")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "variable")
+    '("const-char*" "testpath")
+    '("GTestFunc" "test_func")
   )
 )
 
-(define-function g_setenv
-  (c-name "g_setenv")
-  (return-type "gboolean")
+(define-function g_test_add_vtable
+  (c-name "g_test_add_vtable")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "variable")
-    '("const-gchar*" "value")
-    '("gboolean" "overwrite")
+    '("const-char*" "testpath")
+    '("gsize" "data_size")
+    '("gconstpointer" "test_data")
+    '("GTestFixtureFunc" "data_setup")
+    '("GTestFixtureFunc" "data_test")
+    '("GTestFixtureFunc" "data_teardown")
   )
 )
 
-(define-function g_unsetenv
-  (c-name "g_unsetenv")
-  (return-type "none")
+(define-function g_test_assert_expected_messages_internal
+  (c-name "g_test_assert_expected_messages_internal")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "variable")
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
   )
 )
 
-(define-function g_listenv
-  (c-name "g_listenv")
-  (return-type "gchar**")
+(define-function g_test_bug
+  (c-name "g_test_bug")
+  (return-type "void")
+  (parameters
+    '("const-char*" "bug_uri_snippet")
+  )
 )
 
-(define-function g_get_environ
-  (c-name "g_get_environ")
-  (return-type "gchar**")
+(define-function g_test_bug_base
+  (c-name "g_test_bug_base")
+  (return-type "void")
+  (parameters
+    '("const-char*" "uri_pattern")
+  )
 )
 
-(define-function g_environ_getenv
-  (c-name "g_environ_getenv")
-  (return-type "const-gchar*")
+(define-function g_test_build_filename
+  (c-name "g_test_build_filename")
+  (return-type "gchar*")
   (parameters
-    '("gchar**" "envp")
-    '("const-gchar*" "variable")
+    '("GTestFileType" "file_type")
+    '("const-gchar*" "first_path")
+    '("..." "...")
   )
 )
 
-(define-function g_environ_setenv
-  (c-name "g_environ_setenv")
-  (return-type "gchar**")
+(define-function g_test_create_case
+  (c-name "g_test_create_case")
+  (return-type "GTestCase*")
   (parameters
-    '("gchar**" "envp")
-    '("const-gchar*" "variable")
-    '("const-gchar*" "value")
-    '("gboolean" "overwrite")
+    '("const-char*" "test_name")
+    '("gsize" "data_size")
+    '("gconstpointer" "test_data")
+    '("GTestFixtureFunc" "data_setup")
+    '("GTestFixtureFunc" "data_test")
+    '("GTestFixtureFunc" "data_teardown")
   )
 )
 
-(define-function g_environ_unsetenv
-  (c-name "g_environ_unsetenv")
-  (return-type "gchar**")
+(define-function g_test_create_suite
+  (c-name "g_test_create_suite")
+  (return-type "GTestSuite*")
   (parameters
-    '("gchar**" "envp")
-    '("const-gchar*" "variable")
+    '("const-char*" "suite_name")
   )
 )
 
-(define-function g_getenv_utf8
-  (c-name "g_getenv_utf8")
-  (return-type "const-gchar*")
+(define-function g_test_expect_message
+  (c-name "g_test_expect_message")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "variable")
+    '("const-gchar*" "log_domain")
+    '("GLogLevelFlags" "log_level")
+    '("const-gchar*" "pattern")
   )
 )
 
-(define-function g_setenv_utf8
-  (c-name "g_setenv_utf8")
+(define-function g_test_fail
+  (c-name "g_test_fail")
+  (return-type "void")
+)
+
+(define-function g_test_failed
+  (c-name "g_test_failed")
   (return-type "gboolean")
+)
+
+(define-function g_test_get_dir
+  (c-name "g_test_get_dir")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "variable")
-    '("const-gchar*" "value")
-    '("gboolean" "overwrite")
+    '("GTestFileType" "file_type")
   )
 )
 
-(define-function g_unsetenv_utf8
-  (c-name "g_unsetenv_utf8")
-  (return-type "none")
+(define-function g_test_get_filename
+  (c-name "g_test_get_filename")
+  (return-type "const-gchar*")
   (parameters
-    '("const-gchar*" "variable")
+    '("GTestFileType" "file_type")
+    '("const-gchar*" "first_path")
+    '("..." "...")
   )
 )
 
+(define-function g_test_get_root
+  (c-name "g_test_get_root")
+  (return-type "GTestSuite*")
+)
 
+(define-function g_test_incomplete
+  (c-name "g_test_incomplete")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "msg")
+  )
+)
 
-;; From gerror.h
-
-(define-function g_error_new
-  (c-name "g_error_new")
-  (is-constructor-of "GError")
-  (return-type "GError*")
+(define-function g_test_init
+  (c-name "g_test_init")
+  (return-type "void")
   (parameters
-    '("GQuark" "domain")
-    '("gint" "code")
-    '("const-gchar*" "format")
+    '("int*" "argc")
+    '("char***" "argv")
+    '("..." "...")
   )
-  (varargs #t)
 )
 
-(define-function g_error_new_literal
-  (c-name "g_error_new_literal")
-  (return-type "GError*")
+(define-function g_test_log_set_fatal_handler
+  (c-name "g_test_log_set_fatal_handler")
+  (return-type "void")
   (parameters
-    '("GQuark" "domain")
-    '("gint" "code")
-    '("const-gchar*" "message")
+    '("GTestLogFatalFunc" "log_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_error_new_valist
-  (c-name "g_error_new_valist")
-  (return-type "GError*")
+(define-function g_test_log_type_name
+  (c-name "g_test_log_type_name")
+  (return-type "const-char*")
   (parameters
-    '("GQuark" "domain")
-    '("gint" "code")
-    '("const-gchar*" "format")
-    '("va_list" "args")
+    '("GTestLogType" "log_type")
   )
 )
 
-(define-method free
-  (of-object "GError")
-  (c-name "g_error_free")
-  (return-type "none")
+(define-function g_test_maximized_result
+  (c-name "g_test_maximized_result")
+  (return-type "void")
+  (parameters
+    '("double" "maximized_quantity")
+    '("const-char*" "format")
+    '("..." "...")
+  )
 )
 
-(define-method copy
-  (of-object "GError")
-  (c-name "g_error_copy")
-  (return-type "GError*")
+(define-function g_test_message
+  (c-name "g_test_message")
+  (return-type "void")
+  (parameters
+    '("const-char*" "format")
+    '("..." "...")
+  )
 )
 
-(define-method matches
-  (of-object "GError")
-  (c-name "g_error_matches")
-  (return-type "gboolean")
+(define-function g_test_minimized_result
+  (c-name "g_test_minimized_result")
+  (return-type "void")
   (parameters
-    '("GQuark" "domain")
-    '("gint" "code")
+    '("double" "minimized_quantity")
+    '("const-char*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_set_error
-  (c-name "g_set_error")
-  (return-type "none")
+(define-function g_test_queue_destroy
+  (c-name "g_test_queue_destroy")
+  (return-type "void")
   (parameters
-    '("GError**" "err")
-    '("GQuark" "domain")
-    '("gint" "code")
-    '("const-gchar*" "format")
+    '("GDestroyNotify" "destroy_func")
+    '("gpointer" "destroy_data")
   )
-  (varargs #t)
 )
 
-(define-function g_set_error_literal
-  (c-name "g_set_error_literal")
-  (return-type "none")
+(define-function g_test_queue_free
+  (c-name "g_test_queue_free")
+  (return-type "void")
   (parameters
-    '("GError**" "err")
-    '("GQuark" "domain")
-    '("gint" "code")
-    '("const-gchar*" "message")
+    '("gpointer" "gfree_pointer")
   )
 )
 
-(define-function g_propagate_error
-  (c-name "g_propagate_error")
-  (return-type "none")
+(define-function g_test_rand_double
+  (c-name "g_test_rand_double")
+  (return-type "double")
+)
+
+(define-function g_test_rand_double_range
+  (c-name "g_test_rand_double_range")
+  (return-type "double")
   (parameters
-    '("GError**" "dest")
-    '("GError*" "src")
+    '("double" "range_start")
+    '("double" "range_end")
   )
 )
 
-(define-function g_clear_error
-  (c-name "g_clear_error")
-  (return-type "none")
+(define-function g_test_rand_int
+  (c-name "g_test_rand_int")
+  (return-type "gint32")
+)
+
+(define-function g_test_rand_int_range
+  (c-name "g_test_rand_int_range")
+  (return-type "gint32")
   (parameters
-    '("GError**" "err")
+    '("gint32" "begin")
+    '("gint32" "end")
   )
 )
 
-(define-function g_prefix_error
-  (c-name "g_prefix_error")
-  (return-type "none")
+(define-function g_test_run
+  (c-name "g_test_run")
+  (return-type "int")
+)
+
+(define-function g_test_run_suite
+  (c-name "g_test_run_suite")
+  (return-type "int")
   (parameters
-    '("GError**" "err")
-    '("const-gchar*" "format")
+    '("GTestSuite*" "suite")
   )
-  (varargs #t)
 )
 
-(define-function g_propagate_prefixed_error
-  (c-name "g_propagate_prefixed_error")
-  (return-type "none")
+(define-function g_test_set_nonfatal_assertions
+  (c-name "g_test_set_nonfatal_assertions")
+  (return-type "void")
+)
+
+(define-function g_test_skip
+  (c-name "g_test_skip")
+  (return-type "void")
   (parameters
-    '("GError**" "dest")
-    '("GError*" "src")
-    '("const-gchar*" "format")
+    '("const-gchar*" "msg")
   )
-  (varargs #t)
 )
 
+(define-function g_test_subprocess
+  (c-name "g_test_subprocess")
+  (return-type "gboolean")
+)
 
+(define-function g_test_timer_elapsed
+  (c-name "g_test_timer_elapsed")
+  (return-type "double")
+)
 
-;; From gfileutils.h
+(define-function g_test_timer_last
+  (c-name "g_test_timer_last")
+  (return-type "double")
+)
 
-(define-function g_file_error_quark
-  (c-name "g_file_error_quark")
-  (return-type "GQuark")
+(define-function g_test_timer_start
+  (c-name "g_test_timer_start")
+  (return-type "void")
 )
 
-(define-function g_file_error_from_errno
-  (c-name "g_file_error_from_errno")
-  (return-type "GFileError")
+(define-function g_test_trap_assertions
+  (c-name "g_test_trap_assertions")
+  (return-type "void")
   (parameters
-    '("gint" "err_no")
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("guint64" "assertion_flags")
+    '("const-char*" "pattern")
   )
 )
 
-(define-function g_file_test
-  (c-name "g_file_test")
+(define-function g_test_trap_fork
+  (c-name "g_test_trap_fork")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "filename")
-    '("GFileTest" "test")
+    '("guint64" "usec_timeout")
+    '("GTestTrapFlags" "test_trap_flags")
   )
 )
 
-(define-function g_file_get_contents
-  (c-name "g_file_get_contents")
+(define-function g_test_trap_has_passed
+  (c-name "g_test_trap_has_passed")
   (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "filename")
-    '("gchar**" "contents")
-    '("gsize*" "length")
-    '("GError**" "error")
-  )
 )
 
-(define-function g_file_set_contents
-  (c-name "g_file_set_contents")
+(define-function g_test_trap_reached_timeout
+  (c-name "g_test_trap_reached_timeout")
   (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "contents")
-    '("gssize" "length")
-    '("GError**" "error")
-  )
 )
 
-(define-function g_file_read_link
-  (c-name "g_file_read_link")
-  (return-type "gchar*")
+(define-function g_test_trap_subprocess
+  (c-name "g_test_trap_subprocess")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "filename")
-    '("GError**" "error")
+    '("const-char*" "test_path")
+    '("guint64" "usec_timeout")
+    '("GTestSubprocessFlags" "test_flags")
   )
 )
 
-(define-function g_mkdtemp
-  (c-name "g_mkdtemp")
-  (return-type "gchar*")
+(define-function g_thread_error_quark
+  (c-name "g_thread_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_thread_exit
+  (c-name "g_thread_exit")
+  (return-type "void")
   (parameters
-    '("gchar*" "tmpl")
+    '("gpointer" "retval")
   )
 )
 
-(define-function g_mkdtemp_full
-  (c-name "g_mkdtemp_full")
-  (return-type "gchar*")
+(define-function g_thread_pool_get_max_idle_time
+  (c-name "g_thread_pool_get_max_idle_time")
+  (return-type "guint")
+)
+
+(define-function g_thread_pool_get_max_unused_threads
+  (c-name "g_thread_pool_get_max_unused_threads")
+  (return-type "gint")
+)
+
+(define-function g_thread_pool_get_num_unused_threads
+  (c-name "g_thread_pool_get_num_unused_threads")
+  (return-type "guint")
+)
+
+(define-function g_thread_pool_set_max_idle_time
+  (c-name "g_thread_pool_set_max_idle_time")
+  (return-type "void")
   (parameters
-    '("gchar*" "tmpl")
-    '("gint" "mode")
+    '("guint" "interval")
   )
 )
 
-(define-function g_mkstemp
-  (c-name "g_mkstemp")
-  (return-type "gint")
+(define-function g_thread_pool_set_max_unused_threads
+  (c-name "g_thread_pool_set_max_unused_threads")
+  (return-type "void")
   (parameters
-    '("gchar*" "tmpl")
+    '("gint" "max_threads")
   )
 )
 
-(define-function g_mkstemp_full
-  (c-name "g_mkstemp_full")
-  (return-type "gint")
+(define-function g_thread_pool_stop_unused_threads
+  (c-name "g_thread_pool_stop_unused_threads")
+  (return-type "void")
+)
+
+(define-function g_thread_self
+  (c-name "g_thread_self")
+  (return-type "GThread*")
+)
+
+(define-function g_thread_yield
+  (c-name "g_thread_yield")
+  (return-type "void")
+)
+
+(define-function g_time_val_from_iso8601
+  (c-name "g_time_val_from_iso8601")
+  (return-type "gboolean")
   (parameters
-    '("gchar*" "tmpl")
-    '("gint" "flags")
-    '("gint" "mode")
+    '("const-gchar*" "iso_date")
+    '("GTimeVal*" "time_")
   )
 )
 
-(define-function g_file_open_tmp
-  (c-name "g_file_open_tmp")
-  (return-type "gint")
+(define-function g_timeout_add
+  (c-name "g_timeout_add")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "tmpl")
-    '("gchar**" "name_used")
-    '("GError**" "error")
+    '("guint" "interval")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_dir_make_tmp
-  (c-name "g_dir_make_tmp")
-  (return-type "gchar*")
+(define-function g_timeout_add_full
+  (c-name "g_timeout_add_full")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "tmpl")
-    '("GError**" "error")
+    '("gint" "priority")
+    '("guint" "interval")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_build_path
-  (c-name "g_build_path")
-  (return-type "gchar*")
+(define-function g_timeout_add_seconds
+  (c-name "g_timeout_add_seconds")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "separator")
-    '("const-gchar*" "first_element")
+    '("guint" "interval")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
   )
-  (varargs #t)
 )
 
-(define-function g_build_pathv
-  (c-name "g_build_pathv")
-  (return-type "gchar*")
+(define-function g_timeout_add_seconds_full
+  (c-name "g_timeout_add_seconds_full")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "separator")
-    '("gchar**" "args")
+    '("gint" "priority")
+    '("guint" "interval")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_build_filename
-  (c-name "g_build_filename")
-  (return-type "gchar*")
+(define-function g_timeout_source_new
+  (c-name "g_timeout_source_new")
+  (return-type "GSource*")
   (parameters
-    '("const-gchar*" "first_element")
+    '("guint" "interval")
   )
-  (varargs #t)
 )
 
-(define-function g_build_filenamev
-  (c-name "g_build_filenamev")
-  (return-type "gchar*")
+(define-function g_timeout_source_new_seconds
+  (c-name "g_timeout_source_new_seconds")
+  (return-type "GSource*")
   (parameters
-    '("gchar**" "args")
+    '("guint" "interval")
   )
 )
 
-(define-function g_mkdir_with_parents
-  (c-name "g_mkdir_with_parents")
-  (return-type "gint")
+(define-function g_trash_stack_height
+  (c-name "g_trash_stack_height")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "pathname")
-    '("gint" "mode")
+    '("GTrashStack**" "stack_p")
   )
 )
 
-(define-function g_path_is_absolute
-  (c-name "g_path_is_absolute")
-  (return-type "gboolean")
+(define-function g_trash_stack_peek
+  (c-name "g_trash_stack_peek")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "file_name")
+    '("GTrashStack**" "stack_p")
   )
 )
 
-(define-function g_path_skip_root
-  (c-name "g_path_skip_root")
-  (return-type "const-gchar*")
+(define-function g_trash_stack_pop
+  (c-name "g_trash_stack_pop")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "file_name")
+    '("GTrashStack**" "stack_p")
   )
 )
 
-(define-function g_basename
-  (c-name "g_basename")
-  (return-type "const-gchar*")
+(define-function g_trash_stack_push
+  (c-name "g_trash_stack_push")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "file_name")
+    '("GTrashStack**" "stack_p")
+    '("gpointer" "data_p")
   )
 )
 
-(define-function g_get_current_dir
-  (c-name "g_get_current_dir")
-  (return-type "gchar*")
+(define-function g_try_malloc
+  (c-name "g_try_malloc")
+  (return-type "gpointer")
+  (parameters
+    '("gsize" "n_bytes")
+  )
 )
 
-(define-function g_path_get_basename
-  (c-name "g_path_get_basename")
-  (return-type "gchar*")
+(define-function g_try_malloc0
+  (c-name "g_try_malloc0")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "file_name")
+    '("gsize" "n_bytes")
   )
 )
 
-(define-function g_path_get_dirname
-  (c-name "g_path_get_dirname")
-  (return-type "gchar*")
+(define-function g_try_malloc0_n
+  (c-name "g_try_malloc0_n")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "file_name")
+    '("gsize" "n_blocks")
+    '("gsize" "n_block_bytes")
   )
 )
 
-(define-function g_file_test_utf8
-  (c-name "g_file_test_utf8")
-  (return-type "gboolean")
+(define-function g_try_malloc_n
+  (c-name "g_try_malloc_n")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "filename")
-    '("GFileTest" "test")
+    '("gsize" "n_blocks")
+    '("gsize" "n_block_bytes")
   )
 )
 
-(define-function g_file_get_contents_utf8
-  (c-name "g_file_get_contents_utf8")
-  (return-type "gboolean")
+(define-function g_try_realloc
+  (c-name "g_try_realloc")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "filename")
-    '("gchar**" "contents")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("gpointer" "mem")
+    '("gsize" "n_bytes")
   )
 )
 
-(define-function g_mkstemp_utf8
-  (c-name "g_mkstemp_utf8")
-  (return-type "gint")
+(define-function g_try_realloc_n
+  (c-name "g_try_realloc_n")
+  (return-type "gpointer")
   (parameters
-    '("gchar*" "tmpl")
+    '("gpointer" "mem")
+    '("gsize" "n_blocks")
+    '("gsize" "n_block_bytes")
   )
 )
 
-(define-function g_file_open_tmp_utf8
-  (c-name "g_file_open_tmp_utf8")
-  (return-type "gint")
+(define-function g_ucs4_to_utf16
+  (c-name "g_ucs4_to_utf16")
+  (return-type "gunichar2*")
   (parameters
-    '("const-gchar*" "tmpl")
-    '("gchar**" "name_used")
+    '("const-gunichar*" "str")
+    '("glong" "len")
+    '("glong*" "items_read")
+    '("glong*" "items_written")
     '("GError**" "error")
   )
 )
 
-(define-function g_get_current_dir_utf8
-  (c-name "g_get_current_dir_utf8")
+(define-function g_ucs4_to_utf8
+  (c-name "g_ucs4_to_utf8")
   (return-type "gchar*")
+  (parameters
+    '("const-gunichar*" "str")
+    '("glong" "len")
+    '("glong*" "items_read")
+    '("glong*" "items_written")
+    '("GError**" "error")
+  )
 )
 
-
-
-;; From ggettext.h
-
-(define-function g_strip_context
-  (c-name "g_strip_context")
-  (return-type "const-gchar*")
+(define-function g_unichar_break_type
+  (c-name "g_unichar_break_type")
+  (return-type "GUnicodeBreakType")
   (parameters
-    '("const-gchar*" "msgid")
-    '("const-gchar*" "msgval")
+    '("gunichar" "c")
   )
 )
 
-(define-function g_dgettext
-  (c-name "g_dgettext")
-  (return-type "const-gchar*")
+(define-function g_unichar_combining_class
+  (c-name "g_unichar_combining_class")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "domain")
-    '("const-gchar*" "msgid")
+    '("gunichar" "uc")
   )
 )
 
-(define-function g_dcgettext
-  (c-name "g_dcgettext")
-  (return-type "const-gchar*")
+(define-function g_unichar_compose
+  (c-name "g_unichar_compose")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "domain")
-    '("const-gchar*" "msgid")
-    '("gint" "category")
+    '("gunichar" "a")
+    '("gunichar" "b")
+    '("gunichar*" "ch")
   )
 )
 
-(define-function g_dngettext
-  (c-name "g_dngettext")
-  (return-type "const-gchar*")
+(define-function g_unichar_decompose
+  (c-name "g_unichar_decompose")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "domain")
-    '("const-gchar*" "msgid")
-    '("const-gchar*" "msgid_plural")
-    '("gulong" "n")
+    '("gunichar" "ch")
+    '("gunichar*" "a")
+    '("gunichar*" "b")
   )
 )
 
-(define-function g_dpgettext
-  (c-name "g_dpgettext")
-  (return-type "const-gchar*")
+(define-function g_unichar_digit_value
+  (c-name "g_unichar_digit_value")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "domain")
-    '("const-gchar*" "msgctxtid")
-    '("gsize" "msgidoffset")
+    '("gunichar" "c")
   )
 )
 
-(define-function g_dpgettext2
-  (c-name "g_dpgettext2")
-  (return-type "const-gchar*")
+(define-function g_unichar_fully_decompose
+  (c-name "g_unichar_fully_decompose")
+  (return-type "gsize")
   (parameters
-    '("const-gchar*" "domain")
-    '("const-gchar*" "context")
-    '("const-gchar*" "msgid")
+    '("gunichar" "ch")
+    '("gboolean" "compat")
+    '("gunichar*" "result")
+    '("gsize" "result_len")
   )
 )
 
+(define-function g_unichar_get_mirror_char
+  (c-name "g_unichar_get_mirror_char")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar" "ch")
+    '("gunichar*" "mirrored_ch")
+  )
+)
 
+(define-function g_unichar_get_script
+  (c-name "g_unichar_get_script")
+  (return-type "GUnicodeScript")
+  (parameters
+    '("gunichar" "ch")
+  )
+)
 
-;; From ghash.h
-
-(define-function g_hash_table_new
-  (c-name "g_hash_table_new")
-  (is-constructor-of "GHashTable")
-  (return-type "GHashTable*")
+(define-function g_unichar_isalnum
+  (c-name "g_unichar_isalnum")
+  (return-type "gboolean")
   (parameters
-    '("GHashFunc" "hash_func")
-    '("GEqualFunc" "key_equal_func")
+    '("gunichar" "c")
   )
 )
 
-(define-function g_hash_table_new_full
-  (c-name "g_hash_table_new_full")
-  (return-type "GHashTable*")
+(define-function g_unichar_isalpha
+  (c-name "g_unichar_isalpha")
+  (return-type "gboolean")
   (parameters
-    '("GHashFunc" "hash_func")
-    '("GEqualFunc" "key_equal_func")
-    '("GDestroyNotify" "key_destroy_func")
-    '("GDestroyNotify" "value_destroy_func")
+    '("gunichar" "c")
   )
 )
 
-(define-method destroy
-  (of-object "GHashTable")
-  (c-name "g_hash_table_destroy")
-  (return-type "none")
+(define-function g_unichar_iscntrl
+  (c-name "g_unichar_iscntrl")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar" "c")
+  )
 )
 
-(define-method insert
-  (of-object "GHashTable")
-  (c-name "g_hash_table_insert")
+(define-function g_unichar_isdefined
+  (c-name "g_unichar_isdefined")
   (return-type "gboolean")
   (parameters
-    '("gpointer" "key")
-    '("gpointer" "value")
+    '("gunichar" "c")
   )
 )
 
-(define-method replace
-  (of-object "GHashTable")
-  (c-name "g_hash_table_replace")
+(define-function g_unichar_isdigit
+  (c-name "g_unichar_isdigit")
   (return-type "gboolean")
   (parameters
-    '("gpointer" "key")
-    '("gpointer" "value")
+    '("gunichar" "c")
   )
 )
 
-(define-method add
-  (of-object "GHashTable")
-  (c-name "g_hash_table_add")
+(define-function g_unichar_isgraph
+  (c-name "g_unichar_isgraph")
   (return-type "gboolean")
   (parameters
-    '("gpointer" "key")
+    '("gunichar" "c")
   )
 )
 
-(define-method remove
-  (of-object "GHashTable")
-  (c-name "g_hash_table_remove")
+(define-function g_unichar_islower
+  (c-name "g_unichar_islower")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "key")
+    '("gunichar" "c")
   )
 )
 
-(define-method remove_all
-  (of-object "GHashTable")
-  (c-name "g_hash_table_remove_all")
-  (return-type "none")
+(define-function g_unichar_ismark
+  (c-name "g_unichar_ismark")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar" "c")
+  )
 )
 
-(define-method steal
-  (of-object "GHashTable")
-  (c-name "g_hash_table_steal")
+(define-function g_unichar_isprint
+  (c-name "g_unichar_isprint")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "key")
+    '("gunichar" "c")
   )
 )
 
-(define-method steal_all
-  (of-object "GHashTable")
-  (c-name "g_hash_table_steal_all")
-  (return-type "none")
+(define-function g_unichar_ispunct
+  (c-name "g_unichar_ispunct")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar" "c")
+  )
 )
 
-(define-method lookup
-  (of-object "GHashTable")
-  (c-name "g_hash_table_lookup")
-  (return-type "gpointer")
+(define-function g_unichar_isspace
+  (c-name "g_unichar_isspace")
+  (return-type "gboolean")
   (parameters
-    '("gconstpointer" "key")
+    '("gunichar" "c")
   )
 )
 
-(define-method contains
-  (of-object "GHashTable")
-  (c-name "g_hash_table_contains")
+(define-function g_unichar_istitle
+  (c-name "g_unichar_istitle")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "key")
+    '("gunichar" "c")
   )
 )
 
-(define-method lookup_extended
-  (of-object "GHashTable")
-  (c-name "g_hash_table_lookup_extended")
+(define-function g_unichar_isupper
+  (c-name "g_unichar_isupper")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "lookup_key")
-    '("gpointer*" "orig_key")
-    '("gpointer*" "value")
+    '("gunichar" "c")
   )
 )
 
-(define-method foreach
-  (of-object "GHashTable")
-  (c-name "g_hash_table_foreach")
-  (return-type "none")
+(define-function g_unichar_iswide
+  (c-name "g_unichar_iswide")
+  (return-type "gboolean")
   (parameters
-    '("GHFunc" "func")
-    '("gpointer" "user_data")
+    '("gunichar" "c")
   )
 )
 
-(define-method find
-  (of-object "GHashTable")
-  (c-name "g_hash_table_find")
-  (return-type "gpointer")
+(define-function g_unichar_iswide_cjk
+  (c-name "g_unichar_iswide_cjk")
+  (return-type "gboolean")
   (parameters
-    '("GHRFunc" "predicate")
-    '("gpointer" "user_data")
+    '("gunichar" "c")
   )
 )
 
-(define-method foreach_remove
-  (of-object "GHashTable")
-  (c-name "g_hash_table_foreach_remove")
-  (return-type "guint")
+(define-function g_unichar_isxdigit
+  (c-name "g_unichar_isxdigit")
+  (return-type "gboolean")
   (parameters
-    '("GHRFunc" "func")
-    '("gpointer" "user_data")
+    '("gunichar" "c")
   )
 )
 
-(define-method foreach_steal
-  (of-object "GHashTable")
-  (c-name "g_hash_table_foreach_steal")
-  (return-type "guint")
+(define-function g_unichar_iszerowidth
+  (c-name "g_unichar_iszerowidth")
+  (return-type "gboolean")
   (parameters
-    '("GHRFunc" "func")
-    '("gpointer" "user_data")
+    '("gunichar" "c")
   )
 )
 
-(define-method size
-  (of-object "GHashTable")
-  (c-name "g_hash_table_size")
-  (return-type "guint")
+(define-function g_unichar_to_utf8
+  (c-name "g_unichar_to_utf8")
+  (return-type "gint")
+  (parameters
+    '("gunichar" "c")
+    '("gchar*" "outbuf")
+  )
 )
 
-(define-method get_keys
-  (of-object "GHashTable")
-  (c-name "g_hash_table_get_keys")
-  (return-type "GList*")
+(define-function g_unichar_tolower
+  (c-name "g_unichar_tolower")
+  (return-type "gunichar")
+  (parameters
+    '("gunichar" "c")
+  )
 )
 
-(define-method get_values
-  (of-object "GHashTable")
-  (c-name "g_hash_table_get_values")
-  (return-type "GList*")
+(define-function g_unichar_totitle
+  (c-name "g_unichar_totitle")
+  (return-type "gunichar")
+  (parameters
+    '("gunichar" "c")
+  )
 )
 
-(define-method get_keys_as_array
-  (of-object "GHashTable")
-  (c-name "g_hash_table_get_keys_as_array")
-  (return-type "gpointer*")
+(define-function g_unichar_toupper
+  (c-name "g_unichar_toupper")
+  (return-type "gunichar")
   (parameters
-    '("guint*" "length")
+    '("gunichar" "c")
   )
 )
 
-(define-method init
-  (of-object "GHashTableIter")
-  (c-name "g_hash_table_iter_init")
-  (return-type "none")
+(define-function g_unichar_type
+  (c-name "g_unichar_type")
+  (return-type "GUnicodeType")
   (parameters
-    '("GHashTable*" "hash_table")
+    '("gunichar" "c")
   )
 )
 
-(define-method next
-  (of-object "GHashTableIter")
-  (c-name "g_hash_table_iter_next")
+(define-function g_unichar_validate
+  (c-name "g_unichar_validate")
   (return-type "gboolean")
   (parameters
-    '("gpointer*" "key")
-    '("gpointer*" "value")
+    '("gunichar" "ch")
   )
 )
 
-(define-method get_hash_table
-  (of-object "GHashTableIter")
-  (c-name "g_hash_table_iter_get_hash_table")
-  (return-type "GHashTable*")
+(define-function g_unichar_xdigit_value
+  (c-name "g_unichar_xdigit_value")
+  (return-type "gint")
+  (parameters
+    '("gunichar" "c")
+  )
 )
 
-(define-method remove
-  (of-object "GHashTableIter")
-  (c-name "g_hash_table_iter_remove")
-  (return-type "none")
+(define-function g_unicode_canonical_decomposition
+  (c-name "g_unicode_canonical_decomposition")
+  (return-type "gunichar*")
+  (parameters
+    '("gunichar" "ch")
+    '("gsize*" "result_len")
+  )
 )
 
-(define-method replace
-  (of-object "GHashTableIter")
-  (c-name "g_hash_table_iter_replace")
-  (return-type "none")
+(define-function g_unicode_canonical_ordering
+  (c-name "g_unicode_canonical_ordering")
+  (return-type "void")
   (parameters
-    '("gpointer" "value")
+    '("gunichar*" "string")
+    '("gsize" "len")
   )
 )
 
-(define-method steal
-  (of-object "GHashTableIter")
-  (c-name "g_hash_table_iter_steal")
-  (return-type "none")
+(define-function g_unicode_script_from_iso15924
+  (c-name "g_unicode_script_from_iso15924")
+  (return-type "GUnicodeScript")
+  (parameters
+    '("guint32" "iso15924")
+  )
 )
 
-(define-method ref
-  (of-object "GHashTable")
-  (c-name "g_hash_table_ref")
-  (return-type "GHashTable*")
+(define-function g_unicode_script_to_iso15924
+  (c-name "g_unicode_script_to_iso15924")
+  (return-type "guint32")
+  (parameters
+    '("GUnicodeScript" "script")
+  )
 )
 
-(define-method unref
-  (of-object "GHashTable")
-  (c-name "g_hash_table_unref")
-  (return-type "none")
+(define-function g_unix_error_quark
+  (c-name "g_unix_error_quark")
+  (return-type "GQuark")
 )
 
-(define-function g_str_equal
-  (c-name "g_str_equal")
-  (return-type "gboolean")
+(define-function g_unix_fd_add
+  (c-name "g_unix_fd_add")
+  (return-type "guint")
   (parameters
-    '("gconstpointer" "v1")
-    '("gconstpointer" "v2")
+    '("gint" "fd")
+    '("GIOCondition" "condition")
+    '("GUnixFDSourceFunc" "function")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_str_hash
-  (c-name "g_str_hash")
+(define-function g_unix_fd_add_full
+  (c-name "g_unix_fd_add_full")
   (return-type "guint")
   (parameters
-    '("gconstpointer" "v")
+    '("gint" "priority")
+    '("gint" "fd")
+    '("GIOCondition" "condition")
+    '("GUnixFDSourceFunc" "function")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_int_equal
-  (c-name "g_int_equal")
-  (return-type "gboolean")
+(define-function g_unix_fd_source_new
+  (c-name "g_unix_fd_source_new")
+  (return-type "GSource*")
   (parameters
-    '("gconstpointer" "v1")
-    '("gconstpointer" "v2")
+    '("gint" "fd")
+    '("GIOCondition" "condition")
   )
 )
 
-(define-function g_int_hash
-  (c-name "g_int_hash")
-  (return-type "guint")
+(define-function g_unix_open_pipe
+  (c-name "g_unix_open_pipe")
+  (return-type "gboolean")
   (parameters
-    '("gconstpointer" "v")
+    '("gint*" "fds")
+    '("gint" "flags")
+    '("GError**" "error")
   )
 )
 
-(define-function g_int64_equal
-  (c-name "g_int64_equal")
+(define-function g_unix_set_fd_nonblocking
+  (c-name "g_unix_set_fd_nonblocking")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "v1")
-    '("gconstpointer" "v2")
+    '("gint" "fd")
+    '("gboolean" "nonblock")
+    '("GError**" "error")
   )
 )
 
-(define-function g_int64_hash
-  (c-name "g_int64_hash")
+(define-function g_unix_signal_add
+  (c-name "g_unix_signal_add")
   (return-type "guint")
   (parameters
-    '("gconstpointer" "v")
+    '("gint" "signum")
+    '("GSourceFunc" "handler")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_double_equal
-  (c-name "g_double_equal")
-  (return-type "gboolean")
+(define-function g_unix_signal_add_full
+  (c-name "g_unix_signal_add_full")
+  (return-type "guint")
   (parameters
-    '("gconstpointer" "v1")
-    '("gconstpointer" "v2")
+    '("gint" "priority")
+    '("gint" "signum")
+    '("GSourceFunc" "handler")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_double_hash
-  (c-name "g_double_hash")
-  (return-type "guint")
+(define-function g_unix_signal_source_new
+  (c-name "g_unix_signal_source_new")
+  (return-type "GSource*")
   (parameters
-    '("gconstpointer" "v")
+    '("gint" "signum")
   )
 )
 
-(define-function g_direct_hash
-  (c-name "g_direct_hash")
-  (return-type "guint")
+(define-function g_unlink
+  (c-name "g_unlink")
+  (return-type "int")
   (parameters
-    '("gconstpointer" "v")
+    '("gchar*" "filename")
   )
 )
 
-(define-function g_direct_equal
-  (c-name "g_direct_equal")
-  (return-type "gboolean")
+(define-function g_unsetenv
+  (c-name "g_unsetenv")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "v1")
-    '("gconstpointer" "v2")
+    '("const-gchar*" "variable")
   )
 )
 
+(define-function g_uri_escape_string
+  (c-name "g_uri_escape_string")
+  (return-type "char*")
+  (parameters
+    '("const-char*" "unescaped")
+    '("const-char*" "reserved_chars_allowed")
+    '("gboolean" "allow_utf8")
+  )
+)
 
+(define-function g_uri_list_extract_uris
+  (c-name "g_uri_list_extract_uris")
+  (return-type "gchar**")
+  (parameters
+    '("const-gchar*" "uri_list")
+  )
+)
 
-;; From ghmac.h
+(define-function g_uri_parse_scheme
+  (c-name "g_uri_parse_scheme")
+  (return-type "char*")
+  (parameters
+    '("const-char*" "uri")
+  )
+)
 
-(define-function g_hmac_new
-  (c-name "g_hmac_new")
-  (is-constructor-of "GHmac")
-  (return-type "GHmac*")
+(define-function g_uri_unescape_segment
+  (c-name "g_uri_unescape_segment")
+  (return-type "char*")
   (parameters
-    '("GChecksumType" "digest_type")
-    '("const-guchar*" "key")
-    '("gsize" "key_len")
+    '("const-char*" "escaped_string")
+    '("const-char*" "escaped_string_end")
+    '("const-char*" "illegal_characters")
   )
 )
 
-(define-method copy
-  (of-object "GHmac")
-  (c-name "g_hmac_copy")
-  (return-type "GHmac*")
+(define-function g_uri_unescape_string
+  (c-name "g_uri_unescape_string")
+  (return-type "char*")
+  (parameters
+    '("const-char*" "escaped_string")
+    '("const-char*" "illegal_characters")
+  )
 )
 
-(define-method ref
-  (of-object "GHmac")
-  (c-name "g_hmac_ref")
-  (return-type "GHmac*")
+(define-function g_usleep
+  (c-name "g_usleep")
+  (return-type "void")
+  (parameters
+    '("gulong" "microseconds")
+  )
 )
 
-(define-method unref
-  (of-object "GHmac")
-  (c-name "g_hmac_unref")
-  (return-type "none")
+(define-function g_utf16_to_ucs4
+  (c-name "g_utf16_to_ucs4")
+  (return-type "gunichar*")
+  (parameters
+    '("const-gunichar2*" "str")
+    '("glong" "len")
+    '("glong*" "items_read")
+    '("glong*" "items_written")
+    '("GError**" "error")
+  )
 )
 
-(define-method update
-  (of-object "GHmac")
-  (c-name "g_hmac_update")
-  (return-type "none")
+(define-function g_utf16_to_utf8
+  (c-name "g_utf16_to_utf8")
+  (return-type "gchar*")
   (parameters
-    '("const-guchar*" "data")
-    '("gssize" "length")
+    '("const-gunichar2*" "str")
+    '("glong" "len")
+    '("glong*" "items_read")
+    '("glong*" "items_written")
+    '("GError**" "error")
   )
 )
 
-(define-method get_string
-  (of-object "GHmac")
-  (c-name "g_hmac_get_string")
-  (return-type "const-gchar*")
+(define-function g_utf8_casefold
+  (c-name "g_utf8_casefold")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "str")
+    '("gssize" "len")
+  )
 )
 
-(define-method get_digest
-  (of-object "GHmac")
-  (c-name "g_hmac_get_digest")
-  (return-type "none")
+(define-function g_utf8_collate
+  (c-name "g_utf8_collate")
+  (return-type "gint")
   (parameters
-    '("guint8*" "buffer")
-    '("gsize*" "digest_len")
+    '("const-gchar*" "str1")
+    '("const-gchar*" "str2")
   )
 )
 
-(define-function g_compute_hmac_for_data
-  (c-name "g_compute_hmac_for_data")
+(define-function g_utf8_collate_key
+  (c-name "g_utf8_collate_key")
   (return-type "gchar*")
   (parameters
-    '("GChecksumType" "digest_type")
-    '("const-guchar*" "key")
-    '("gsize" "key_len")
-    '("const-guchar*" "data")
-    '("gsize" "length")
+    '("const-gchar*" "str")
+    '("gssize" "len")
   )
 )
 
-(define-function g_compute_hmac_for_string
-  (c-name "g_compute_hmac_for_string")
+(define-function g_utf8_collate_key_for_filename
+  (c-name "g_utf8_collate_key_for_filename")
   (return-type "gchar*")
   (parameters
-    '("GChecksumType" "digest_type")
-    '("const-guchar*" "key")
-    '("gsize" "key_len")
     '("const-gchar*" "str")
-    '("gssize" "length")
+    '("gssize" "len")
   )
 )
 
-(define-function g_compute_hmac_for_bytes
-  (c-name "g_compute_hmac_for_bytes")
+(define-function g_utf8_find_next_char
+  (c-name "g_utf8_find_next_char")
   (return-type "gchar*")
   (parameters
-    '("GChecksumType" "digest_type")
-    '("GBytes*" "key")
-    '("GBytes*" "data")
+    '("const-gchar*" "p")
+    '("const-gchar*" "end")
   )
 )
 
-
-
-;; From ghook.h
-
-(define-method init
-  (of-object "GHookList")
-  (c-name "g_hook_list_init")
-  (return-type "none")
+(define-function g_utf8_find_prev_char
+  (c-name "g_utf8_find_prev_char")
+  (return-type "gchar*")
   (parameters
-    '("guint" "hook_size")
+    '("const-gchar*" "str")
+    '("const-gchar*" "p")
   )
 )
 
-(define-method clear
-  (of-object "GHookList")
-  (c-name "g_hook_list_clear")
-  (return-type "none")
+(define-function g_utf8_get_char
+  (c-name "g_utf8_get_char")
+  (return-type "gunichar")
+  (parameters
+    '("const-gchar*" "p")
+  )
 )
 
-(define-function g_hook_alloc
-  (c-name "g_hook_alloc")
-  (return-type "GHook*")
+(define-function g_utf8_get_char_validated
+  (c-name "g_utf8_get_char_validated")
+  (return-type "gunichar")
   (parameters
-    '("GHookList*" "hook_list")
+    '("const-gchar*" "p")
+    '("gssize" "max_len")
   )
 )
 
-(define-function g_hook_free
-  (c-name "g_hook_free")
-  (return-type "none")
+(define-function g_utf8_normalize
+  (c-name "g_utf8_normalize")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
+    '("const-gchar*" "str")
+    '("gssize" "len")
+    '("GNormalizeMode" "mode")
   )
 )
 
-(define-function g_hook_ref
-  (c-name "g_hook_ref")
-  (return-type "GHook*")
+(define-function g_utf8_offset_to_pointer
+  (c-name "g_utf8_offset_to_pointer")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
+    '("const-gchar*" "str")
+    '("glong" "offset")
   )
 )
 
-(define-function g_hook_unref
-  (c-name "g_hook_unref")
-  (return-type "none")
+(define-function g_utf8_pointer_to_offset
+  (c-name "g_utf8_pointer_to_offset")
+  (return-type "glong")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
+    '("const-gchar*" "str")
+    '("const-gchar*" "pos")
   )
 )
 
-(define-function g_hook_destroy
-  (c-name "g_hook_destroy")
-  (return-type "gboolean")
+(define-function g_utf8_prev_char
+  (c-name "g_utf8_prev_char")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gulong" "hook_id")
+    '("const-gchar*" "p")
   )
 )
 
-(define-function g_hook_destroy_link
-  (c-name "g_hook_destroy_link")
-  (return-type "none")
+(define-function g_utf8_strchr
+  (c-name "g_utf8_strchr")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
+    '("const-gchar*" "p")
+    '("gssize" "len")
+    '("gunichar" "c")
   )
 )
 
-(define-function g_hook_prepend
-  (c-name "g_hook_prepend")
-  (return-type "none")
+(define-function g_utf8_strdown
+  (c-name "g_utf8_strdown")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
+    '("const-gchar*" "str")
+    '("gssize" "len")
   )
 )
 
-(define-function g_hook_insert_before
-  (c-name "g_hook_insert_before")
-  (return-type "none")
+(define-function g_utf8_strlen
+  (c-name "g_utf8_strlen")
+  (return-type "glong")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "sibling")
-    '("GHook*" "hook")
+    '("const-gchar*" "p")
+    '("gssize" "max")
   )
 )
 
-(define-function g_hook_insert_sorted
-  (c-name "g_hook_insert_sorted")
-  (return-type "none")
+(define-function g_utf8_strncpy
+  (c-name "g_utf8_strncpy")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
-    '("GHookCompareFunc" "func")
+    '("gchar*" "dest")
+    '("const-gchar*" "src")
+    '("gsize" "n")
   )
 )
 
-(define-function g_hook_get
-  (c-name "g_hook_get")
-  (return-type "GHook*")
+(define-function g_utf8_strrchr
+  (c-name "g_utf8_strrchr")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gulong" "hook_id")
+    '("const-gchar*" "p")
+    '("gssize" "len")
+    '("gunichar" "c")
   )
 )
 
-(define-function g_hook_find
-  (c-name "g_hook_find")
-  (return-type "GHook*")
+(define-function g_utf8_strreverse
+  (c-name "g_utf8_strreverse")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gboolean" "need_valids")
-    '("GHookFindFunc" "func")
-    '("gpointer" "data")
+    '("const-gchar*" "str")
+    '("gssize" "len")
   )
 )
 
-(define-function g_hook_find_data
-  (c-name "g_hook_find_data")
-  (return-type "GHook*")
+(define-function g_utf8_strup
+  (c-name "g_utf8_strup")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gboolean" "need_valids")
-    '("gpointer" "data")
+    '("const-gchar*" "str")
+    '("gssize" "len")
   )
 )
 
-(define-function g_hook_find_func
-  (c-name "g_hook_find_func")
-  (return-type "GHook*")
+(define-function g_utf8_substring
+  (c-name "g_utf8_substring")
+  (return-type "gchar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gboolean" "need_valids")
-    '("gpointer" "func")
+    '("const-gchar*" "str")
+    '("glong" "start_pos")
+    '("glong" "end_pos")
   )
 )
 
-(define-function g_hook_find_func_data
-  (c-name "g_hook_find_func_data")
-  (return-type "GHook*")
+(define-function g_utf8_to_ucs4
+  (c-name "g_utf8_to_ucs4")
+  (return-type "gunichar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gboolean" "need_valids")
-    '("gpointer" "func")
-    '("gpointer" "data")
+    '("const-gchar*" "str")
+    '("glong" "len")
+    '("glong*" "items_read")
+    '("glong*" "items_written")
+    '("GError**" "error")
   )
 )
 
-(define-function g_hook_first_valid
-  (c-name "g_hook_first_valid")
-  (return-type "GHook*")
+(define-function g_utf8_to_ucs4_fast
+  (c-name "g_utf8_to_ucs4_fast")
+  (return-type "gunichar*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("gboolean" "may_be_in_call")
+    '("const-gchar*" "str")
+    '("glong" "len")
+    '("glong*" "items_written")
   )
 )
 
-(define-function g_hook_next_valid
-  (c-name "g_hook_next_valid")
-  (return-type "GHook*")
+(define-function g_utf8_to_utf16
+  (c-name "g_utf8_to_utf16")
+  (return-type "gunichar2*")
   (parameters
-    '("GHookList*" "hook_list")
-    '("GHook*" "hook")
-    '("gboolean" "may_be_in_call")
+    '("const-gchar*" "str")
+    '("glong" "len")
+    '("glong*" "items_read")
+    '("glong*" "items_written")
+    '("GError**" "error")
   )
 )
 
-(define-method compare_ids
-  (of-object "GHook")
-  (c-name "g_hook_compare_ids")
-  (return-type "gint")
+(define-function g_utf8_validate
+  (c-name "g_utf8_validate")
+  (return-type "gboolean")
   (parameters
-    '("GHook*" "sibling")
+    '("gchar*" "str")
+    '("gssize" "max_len")
+    '("const-gchar**" "end")
   )
 )
 
-(define-method invoke
-  (of-object "GHookList")
-  (c-name "g_hook_list_invoke")
-  (return-type "none")
+(define-function g_variant_get_gtype
+  (c-name "g_variant_get_gtype")
+  (return-type "GType")
+)
+
+(define-function g_variant_is_object_path
+  (c-name "g_variant_is_object_path")
+  (return-type "gboolean")
   (parameters
-    '("gboolean" "may_recurse")
+    '("const-gchar*" "string")
   )
 )
 
-(define-method invoke_check
-  (of-object "GHookList")
-  (c-name "g_hook_list_invoke_check")
-  (return-type "none")
+(define-function g_variant_is_signature
+  (c-name "g_variant_is_signature")
+  (return-type "gboolean")
   (parameters
-    '("gboolean" "may_recurse")
+    '("const-gchar*" "string")
   )
 )
 
-(define-method marshal
-  (of-object "GHookList")
-  (c-name "g_hook_list_marshal")
-  (return-type "none")
+(define-function g_variant_parse
+  (c-name "g_variant_parse")
+  (return-type "GVariant*")
   (parameters
-    '("gboolean" "may_recurse")
-    '("GHookMarshaller" "marshaller")
-    '("gpointer" "marshal_data")
+    '("const-GVariantType*" "type")
+    '("const-gchar*" "text")
+    '("const-gchar*" "limit")
+    '("const-gchar**" "endptr")
+    '("GError**" "error")
   )
 )
 
-(define-method marshal_check
-  (of-object "GHookList")
-  (c-name "g_hook_list_marshal_check")
-  (return-type "none")
+(define-function g_variant_parse_error_print_context
+  (c-name "g_variant_parse_error_print_context")
+  (return-type "gchar*")
   (parameters
-    '("gboolean" "may_recurse")
-    '("GHookCheckMarshaller" "marshaller")
-    '("gpointer" "marshal_data")
+    '("GError*" "error")
+    '("const-gchar*" "source_str")
   )
 )
 
+(define-function g_variant_parse_error_quark
+  (c-name "g_variant_parse_error_quark")
+  (return-type "GQuark")
+)
 
+(define-function g_variant_parser_get_error_quark
+  (c-name "g_variant_parser_get_error_quark")
+  (return-type "GQuark")
+)
 
-;; From ghostutils.h
-
-(define-function g_hostname_is_non_ascii
-  (c-name "g_hostname_is_non_ascii")
-  (return-type "gboolean")
+(define-function g_variant_type_checked_
+  (c-name "g_variant_type_checked_")
+  (return-type "const-GVariantType*")
   (parameters
-    '("const-gchar*" "hostname")
+    '("const-gchar*" "arg0")
   )
 )
 
-(define-function g_hostname_is_ascii_encoded
-  (c-name "g_hostname_is_ascii_encoded")
+(define-function g_variant_type_string_is_valid
+  (c-name "g_variant_type_string_is_valid")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "hostname")
+    '("const-gchar*" "type_string")
   )
 )
 
-(define-function g_hostname_is_ip_address
-  (c-name "g_hostname_is_ip_address")
+(define-function g_variant_type_string_scan
+  (c-name "g_variant_type_string_scan")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "hostname")
+    '("const-gchar*" "string")
+    '("const-gchar*" "limit")
+    '("const-gchar**" "endptr")
   )
 )
 
-(define-function g_hostname_to_ascii
-  (c-name "g_hostname_to_ascii")
-  (return-type "gchar*")
+(define-function g_vasprintf
+  (c-name "g_vasprintf")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "hostname")
+    '("gchar**" "string")
+    '("gchar*" "format")
+    '("va_list" "args")
   )
 )
 
-(define-function g_hostname_to_unicode
-  (c-name "g_hostname_to_unicode")
-  (return-type "gchar*")
+(define-function g_vfprintf
+  (c-name "g_vfprintf")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "hostname")
+    '("FILE*" "file")
+    '("gchar*" "format")
+    '("va_list" "args")
   )
 )
 
+(define-function g_vprintf
+  (c-name "g_vprintf")
+  (return-type "gint")
+  (parameters
+    '("gchar*" "format")
+    '("va_list" "args")
+  )
+)
 
-
-;; From gi18n.h
-
-
-
-;; From gi18n-lib.h
-
-
-
-;; From giochannel.h
-
-(define-method init
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_init")
-  (return-type "none")
+(define-function g_vsnprintf
+  (c-name "g_vsnprintf")
+  (return-type "gint")
+  (parameters
+    '("gchar*" "string")
+    '("gulong" "n")
+    '("gchar*" "format")
+    '("va_list" "args")
+  )
 )
 
-(define-method ref
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_ref")
-  (return-type "GIOChannel*")
+(define-function g_vsprintf
+  (c-name "g_vsprintf")
+  (return-type "gint")
+  (parameters
+    '("gchar*" "string")
+    '("gchar*" "format")
+    '("va_list" "args")
+  )
 )
 
-(define-method unref
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_unref")
-  (return-type "none")
+(define-function g_warn_message
+  (c-name "g_warn_message")
+  (return-type "void")
+  (parameters
+    '("const-char*" "domain")
+    '("const-char*" "file")
+    '("int" "line")
+    '("const-char*" "func")
+    '("const-char*" "warnexpr")
+  )
 )
 
-(define-method read
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_read")
-  (return-type "GIOError")
+(define-function g_array_append_vals
+  (c-name "g_array_append_vals")
+  (return-type "GArray*")
   (parameters
-    '("gchar*" "buf")
-    '("gsize" "count")
-    '("gsize*" "bytes_read")
+    '("GArray*" "array")
+    '("gconstpointer" "data")
+    '("guint" "len")
   )
 )
 
-(define-method write
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_write")
-  (return-type "GIOError")
+(define-function g_array_free
+  (c-name "g_array_free")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "buf")
-    '("gsize" "count")
-    '("gsize*" "bytes_written")
+    '("GArray*" "array")
+    '("gboolean" "free_segment")
   )
 )
 
-(define-method seek
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_seek")
-  (return-type "GIOError")
+(define-function g_array_get_element_size
+  (c-name "g_array_get_element_size")
+  (return-type "guint")
   (parameters
-    '("gint64" "offset")
-    '("GSeekType" "type")
+    '("GArray*" "array")
   )
 )
 
-(define-method close
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_close")
-  (return-type "none")
+(define-function g_array_insert_vals
+  (c-name "g_array_insert_vals")
+  (return-type "GArray*")
+  (parameters
+    '("GArray*" "array")
+    '("guint" "index_")
+    '("gconstpointer" "data")
+    '("guint" "len")
+  )
 )
 
-(define-method shutdown
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_shutdown")
-  (return-type "GIOStatus")
+(define-function g_array_new
+  (c-name "g_array_new")
+  (return-type "GArray*")
   (parameters
-    '("gboolean" "flush")
-    '("GError**" "err")
+    '("gboolean" "zero_terminated")
+    '("gboolean" "clear_")
+    '("guint" "element_size")
   )
 )
 
-(define-function g_io_add_watch_full
-  (c-name "g_io_add_watch_full")
-  (return-type "guint")
+(define-function g_array_prepend_vals
+  (c-name "g_array_prepend_vals")
+  (return-type "GArray*")
   (parameters
-    '("GIOChannel*" "channel")
-    '("gint" "priority")
-    '("GIOCondition" "condition")
-    '("GIOFunc" "func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "notify")
+    '("GArray*" "array")
+    '("gconstpointer" "data")
+    '("guint" "len")
   )
 )
 
-(define-function g_io_create_watch
-  (c-name "g_io_create_watch")
-  (return-type "GSource*")
+(define-function g_array_ref
+  (c-name "g_array_ref")
+  (return-type "GArray*")
   (parameters
-    '("GIOChannel*" "channel")
-    '("GIOCondition" "condition")
+    '("GArray*" "array")
   )
 )
 
-(define-function g_io_add_watch
-  (c-name "g_io_add_watch")
-  (return-type "guint")
+(define-function g_array_remove_index
+  (c-name "g_array_remove_index")
+  (return-type "GArray*")
   (parameters
-    '("GIOChannel*" "channel")
-    '("GIOCondition" "condition")
-    '("GIOFunc" "func")
-    '("gpointer" "user_data")
+    '("GArray*" "array")
+    '("guint" "index_")
   )
 )
 
-(define-method set_buffer_size
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_set_buffer_size")
-  (return-type "none")
+(define-function g_array_remove_index_fast
+  (c-name "g_array_remove_index_fast")
+  (return-type "GArray*")
   (parameters
-    '("gsize" "size")
+    '("GArray*" "array")
+    '("guint" "index_")
   )
 )
 
-(define-method get_buffer_size
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_buffer_size")
-  (return-type "gsize")
+(define-function g_array_remove_range
+  (c-name "g_array_remove_range")
+  (return-type "GArray*")
+  (parameters
+    '("GArray*" "array")
+    '("guint" "index_")
+    '("guint" "length")
+  )
 )
 
-(define-method get_buffer_condition
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_buffer_condition")
-  (return-type "GIOCondition")
+(define-function g_array_set_clear_func
+  (c-name "g_array_set_clear_func")
+  (return-type "void")
+  (parameters
+    '("GArray*" "array")
+    '("GDestroyNotify" "clear_func")
+  )
 )
 
-(define-method set_flags
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_set_flags")
-  (return-type "GIOStatus")
+(define-function g_array_set_size
+  (c-name "g_array_set_size")
+  (return-type "GArray*")
   (parameters
-    '("GIOFlags" "flags")
-    '("GError**" "error")
+    '("GArray*" "array")
+    '("guint" "length")
   )
 )
 
-(define-method get_flags
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_flags")
-  (return-type "GIOFlags")
+(define-function g_array_sized_new
+  (c-name "g_array_sized_new")
+  (return-type "GArray*")
+  (parameters
+    '("gboolean" "zero_terminated")
+    '("gboolean" "clear_")
+    '("guint" "element_size")
+    '("guint" "reserved_size")
+  )
 )
 
-(define-method set_line_term
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_set_line_term")
-  (return-type "none")
+(define-function g_array_sort
+  (c-name "g_array_sort")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "line_term")
-    '("gint" "length")
+    '("GArray*" "array")
+    '("GCompareFunc" "compare_func")
   )
 )
 
-(define-method get_line_term
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_line_term")
-  (return-type "const-gchar*")
+(define-function g_array_sort_with_data
+  (c-name "g_array_sort_with_data")
+  (return-type "void")
   (parameters
-    '("gint*" "length")
+    '("GArray*" "array")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method set_buffered
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_set_buffered")
-  (return-type "none")
+(define-function g_array_unref
+  (c-name "g_array_unref")
+  (return-type "void")
   (parameters
-    '("gboolean" "buffered")
+    '("GArray*" "array")
   )
 )
 
-(define-method get_buffered
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_buffered")
-  (return-type "gboolean")
+(define-method length
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_length")
+  (return-type "gint")
 )
 
-(define-method set_encoding
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_set_encoding")
-  (return-type "GIOStatus")
+(define-method length_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_length_unlocked")
+  (return-type "gint")
+)
+
+(define-method lock
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_lock")
+  (return-type "void")
+)
+
+(define-method pop
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_pop")
+  (return-type "gpointer")
+)
+
+(define-method pop_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_pop_unlocked")
+  (return-type "gpointer")
+)
+
+(define-method push
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_push")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "encoding")
-    '("GError**" "error")
+    '("gpointer" "data")
   )
 )
 
-(define-method get_encoding
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_encoding")
-  (return-type "const-gchar*")
+(define-method push_front
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_push_front")
+  (return-type "void")
+  (parameters
+    '("gpointer" "item")
+  )
 )
 
-(define-method set_close_on_unref
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_set_close_on_unref")
-  (return-type "none")
+(define-method push_front_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_push_front_unlocked")
+  (return-type "void")
   (parameters
-    '("gboolean" "do_close")
+    '("gpointer" "item")
   )
 )
 
-(define-method get_close_on_unref
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_get_close_on_unref")
-  (return-type "gboolean")
+(define-method push_sorted
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_push_sorted")
+  (return-type "void")
+  (parameters
+    '("gpointer" "data")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
+  )
 )
 
-(define-method flush
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_flush")
-  (return-type "GIOStatus")
+(define-method push_sorted_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_push_sorted_unlocked")
+  (return-type "void")
   (parameters
-    '("GError**" "error")
+    '("gpointer" "data")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method read_line
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_read_line")
-  (return-type "GIOStatus")
+(define-method push_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_push_unlocked")
+  (return-type "void")
   (parameters
-    '("gchar**" "str_return")
-    '("gsize*" "length")
-    '("gsize*" "terminator_pos")
-    '("GError**" "error")
+    '("gpointer" "data")
   )
 )
 
-(define-method read_line_string
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_read_line_string")
-  (return-type "GIOStatus")
+(define-method ref
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_ref")
+  (return-type "GAsyncQueue*")
+)
+
+(define-method ref_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_ref_unlocked")
+  (return-type "void")
+)
+
+(define-method remove
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_remove")
+  (return-type "gboolean")
   (parameters
-    '("GString*" "buffer")
-    '("gsize*" "terminator_pos")
-    '("GError**" "error")
+    '("gpointer" "item")
   )
 )
 
-(define-method read_to_end
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_read_to_end")
-  (return-type "GIOStatus")
+(define-method remove_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_remove_unlocked")
+  (return-type "gboolean")
   (parameters
-    '("gchar**" "str_return")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("gpointer" "item")
   )
 )
 
-(define-method read_chars
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_read_chars")
-  (return-type "GIOStatus")
+(define-method sort
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_sort")
+  (return-type "void")
   (parameters
-    '("gchar*" "buf")
-    '("gsize" "count")
-    '("gsize*" "bytes_read")
-    '("GError**" "error")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method read_unichar
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_read_unichar")
-  (return-type "GIOStatus")
+(define-method sort_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_sort_unlocked")
+  (return-type "void")
   (parameters
-    '("gunichar*" "thechar")
-    '("GError**" "error")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method write_chars
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_write_chars")
-  (return-type "GIOStatus")
+(define-method timed_pop
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_timed_pop")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "buf")
-    '("gssize" "count")
-    '("gsize*" "bytes_written")
-    '("GError**" "error")
+    '("GTimeVal*" "end_time")
   )
 )
 
-(define-method write_unichar
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_write_unichar")
-  (return-type "GIOStatus")
+(define-method timed_pop_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_timed_pop_unlocked")
+  (return-type "gpointer")
   (parameters
-    '("gunichar" "thechar")
-    '("GError**" "error")
+    '("GTimeVal*" "end_time")
   )
 )
 
-(define-method seek_position
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_seek_position")
-  (return-type "GIOStatus")
+(define-method timeout_pop
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_timeout_pop")
+  (return-type "gpointer")
   (parameters
-    '("gint64" "offset")
-    '("GSeekType" "type")
-    '("GError**" "error")
+    '("guint64" "timeout")
   )
 )
 
-(define-function g_io_channel_new_file
-  (c-name "g_io_channel_new_file")
-  (return-type "GIOChannel*")
+(define-method timeout_pop_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_timeout_pop_unlocked")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "mode")
-    '("GError**" "error")
+    '("guint64" "timeout")
   )
 )
 
-(define-function g_io_channel_error_quark
-  (c-name "g_io_channel_error_quark")
-  (return-type "GQuark")
+(define-method try_pop
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_try_pop")
+  (return-type "gpointer")
 )
 
-(define-function g_io_channel_error_from_errno
-  (c-name "g_io_channel_error_from_errno")
-  (return-type "GIOChannelError")
+(define-method try_pop_unlocked
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_try_pop_unlocked")
+  (return-type "gpointer")
+)
+
+(define-method unlock
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_unlock")
+  (return-type "void")
+)
+
+(define-method unref
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_unref")
+  (return-type "void")
+)
+
+(define-method unref_and_unlock
+  (of-object "GAsyncQueue")
+  (c-name "g_async_queue_unref_and_unlock")
+  (return-type "void")
+)
+
+(define-function g_async_queue_new
+  (c-name "g_async_queue_new")
+  (return-type "GAsyncQueue*")
+)
+
+(define-function g_async_queue_new_full
+  (c-name "g_async_queue_new_full")
+  (return-type "GAsyncQueue*")
   (parameters
-    '("gint" "en")
+    '("GDestroyNotify" "item_free_func")
   )
 )
 
-(define-function g_io_channel_unix_new
-  (c-name "g_io_channel_unix_new")
-  (is-constructor-of "GIoChannelUnix")
-  (return-type "GIOChannel*")
+(define-method add_application
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_add_application")
+  (return-type "void")
   (parameters
-    '("int" "fd")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "name")
+    '("const-gchar*" "exec")
   )
 )
 
-(define-method unix_get_fd
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_unix_get_fd")
-  (return-type "gint")
+(define-method add_group
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_add_group")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "uri")
+    '("const-gchar*" "group")
+  )
 )
 
-(define-method win32_make_pollfd
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_win32_make_pollfd")
-  (return-type "none")
+(define-method free
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_free")
+  (return-type "void")
+)
+
+(define-method get_added
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_added")
+  (return-type "time_t")
   (parameters
-    '("GIOCondition" "condition")
-    '("GPollFD*" "fd")
+    '("const-gchar*" "uri")
+    '("GError**" "error")
   )
 )
 
-(define-function g_io_channel_win32_poll
-  (c-name "g_io_channel_win32_poll")
-  (return-type "gint")
+(define-method get_app_info
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_app_info")
+  (return-type "gboolean")
   (parameters
-    '("GPollFD*" "fds")
-    '("gint" "n_fds")
-    '("gint" "timeout_")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "name")
+    '("gchar**" "exec")
+    '("guint*" "count")
+    '("time_t*" "stamp")
+    '("GError**" "error")
   )
 )
 
-(define-function g_io_channel_win32_new_messages
-  (c-name "g_io_channel_win32_new_messages")
-  (return-type "GIOChannel*")
+(define-method get_applications
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_applications")
+  (return-type "gchar**")
   (parameters
-    '("gsize" "hwnd")
+    '("const-gchar*" "uri")
+    '("gsize*" "length")
+    '("GError**" "error")
   )
 )
 
-(define-function g_io_channel_win32_new_fd
-  (c-name "g_io_channel_win32_new_fd")
-  (return-type "GIOChannel*")
+(define-method get_description
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_description")
+  (return-type "gchar*")
   (parameters
-    '("gint" "fd")
+    '("const-gchar*" "uri")
+    '("GError**" "error")
   )
 )
 
-(define-method win32_get_fd
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_win32_get_fd")
-  (return-type "gint")
+(define-method get_groups
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_groups")
+  (return-type "gchar**")
+  (parameters
+    '("const-gchar*" "uri")
+    '("gsize*" "length")
+    '("GError**" "error")
+  )
 )
 
-(define-function g_io_channel_win32_new_socket
-  (c-name "g_io_channel_win32_new_socket")
-  (return-type "GIOChannel*")
+(define-method get_icon
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_icon")
+  (return-type "gboolean")
   (parameters
-    '("gint" "socket")
+    '("const-gchar*" "uri")
+    '("gchar**" "href")
+    '("gchar**" "mime_type")
+    '("GError**" "error")
   )
 )
 
-(define-function g_io_channel_win32_new_stream_socket
-  (c-name "g_io_channel_win32_new_stream_socket")
-  (return-type "GIOChannel*")
+(define-method get_is_private
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_is_private")
+  (return-type "gboolean")
   (parameters
-    '("gint" "socket")
+    '("const-gchar*" "uri")
+    '("GError**" "error")
   )
 )
 
-(define-method win32_set_debug
-  (of-object "GIOChannel")
-  (c-name "g_io_channel_win32_set_debug")
-  (return-type "none")
+(define-method get_mime_type
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_mime_type")
+  (return-type "gchar*")
   (parameters
-    '("gboolean" "flag")
+    '("const-gchar*" "uri")
+    '("GError**" "error")
   )
 )
 
-(define-function g_io_channel_new_file_utf8
-  (c-name "g_io_channel_new_file_utf8")
-  (return-type "GIOChannel*")
+(define-method get_modified
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_modified")
+  (return-type "time_t")
   (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "mode")
+    '("const-gchar*" "uri")
     '("GError**" "error")
   )
 )
 
-
-
-;; From gkeyfile.h
-
-(define-function g_key_file_error_quark
-  (c-name "g_key_file_error_quark")
-  (return-type "GQuark")
+(define-method get_size
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_size")
+  (return-type "gint")
 )
 
-(define-function g_key_file_new
-  (c-name "g_key_file_new")
-  (is-constructor-of "GKeyFile")
-  (return-type "GKeyFile*")
+(define-method get_title
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_title")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "uri")
+    '("GError**" "error")
+  )
 )
 
-(define-method ref
-  (of-object "GKeyFile")
-  (c-name "g_key_file_ref")
-  (return-type "GKeyFile*")
+(define-method get_uris
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_uris")
+  (return-type "gchar**")
+  (parameters
+    '("gsize*" "length")
+  )
 )
 
-(define-method unref
-  (of-object "GKeyFile")
-  (c-name "g_key_file_unref")
-  (return-type "none")
+(define-method get_visited
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_get_visited")
+  (return-type "time_t")
+  (parameters
+    '("const-gchar*" "uri")
+    '("GError**" "error")
+  )
 )
 
-(define-method free
-  (of-object "GKeyFile")
-  (c-name "g_key_file_free")
-  (return-type "none")
+(define-method has_application
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_has_application")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "uri")
+    '("const-gchar*" "name")
+    '("GError**" "error")
+  )
 )
 
-(define-method set_list_separator
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_list_separator")
-  (return-type "none")
+(define-method has_group
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_has_group")
+  (return-type "gboolean")
   (parameters
-    '("gchar" "separator")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "group")
+    '("GError**" "error")
   )
 )
 
-(define-method load_from_file
-  (of-object "GKeyFile")
-  (c-name "g_key_file_load_from_file")
+(define-method has_item
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_has_item")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "file")
-    '("GKeyFileFlags" "flags")
-    '("GError**" "error")
+    '("const-gchar*" "uri")
   )
 )
 
 (define-method load_from_data
-  (of-object "GKeyFile")
-  (c-name "g_key_file_load_from_data")
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_load_from_data")
   (return-type "gboolean")
   (parameters
     '("const-gchar*" "data")
     '("gsize" "length")
-    '("GKeyFileFlags" "flags")
     '("GError**" "error")
   )
 )
 
-(define-method load_from_bytes
-  (of-object "GKeyFile")
-  (c-name "g_key_file_load_from_bytes")
+(define-method load_from_data_dirs
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_load_from_data_dirs")
   (return-type "gboolean")
   (parameters
-    '("GBytes*" "bytes")
-    '("GKeyFileFlags" "flags")
+    '("gchar*" "file")
+    '("gchar**" "full_path")
     '("GError**" "error")
   )
 )
 
-(define-method load_from_dirs
-  (of-object "GKeyFile")
-  (c-name "g_key_file_load_from_dirs")
+(define-method load_from_file
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_load_from_file")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "file")
-    '("const-gchar**" "search_dirs")
-    '("gchar**" "full_path")
-    '("GKeyFileFlags" "flags")
+    '("gchar*" "filename")
     '("GError**" "error")
   )
 )
 
-(define-method load_from_data_dirs
-  (of-object "GKeyFile")
-  (c-name "g_key_file_load_from_data_dirs")
+(define-method move_item
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_move_item")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "file")
-    '("gchar**" "full_path")
-    '("GKeyFileFlags" "flags")
+    '("const-gchar*" "old_uri")
+    '("const-gchar*" "new_uri")
     '("GError**" "error")
   )
 )
 
-(define-method to_data
-  (of-object "GKeyFile")
-  (c-name "g_key_file_to_data")
-  (return-type "gchar*")
+(define-method remove_application
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_remove_application")
+  (return-type "gboolean")
   (parameters
-    '("gsize*" "length")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "name")
     '("GError**" "error")
   )
 )
 
-(define-method save_to_file
-  (of-object "GKeyFile")
-  (c-name "g_key_file_save_to_file")
+(define-method remove_group
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_remove_group")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "filename")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "group")
     '("GError**" "error")
   )
 )
 
-(define-method get_start_group
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_start_group")
-  (return-type "gchar*")
+(define-method remove_item
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_remove_item")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "uri")
+    '("GError**" "error")
+  )
 )
 
-(define-method get_groups
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_groups")
-  (return-type "gchar**")
+(define-method set_added
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_added")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("const-gchar*" "uri")
+    '("time_t" "added")
   )
 )
 
-(define-method get_keys
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_keys")
-  (return-type "gchar**")
+(define-method set_app_info
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_app_info")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "group_name")
-    '("gsize*" "length")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "name")
+    '("const-gchar*" "exec")
+    '("gint" "count")
+    '("time_t" "stamp")
     '("GError**" "error")
   )
 )
 
-(define-method has_group
-  (of-object "GKeyFile")
-  (c-name "g_key_file_has_group")
-  (return-type "gboolean")
+(define-method set_description
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_description")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "description")
   )
 )
 
-(define-method has_key
-  (of-object "GKeyFile")
-  (c-name "g_key_file_has_key")
-  (return-type "gboolean")
+(define-method set_groups
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_groups")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("const-gchar*" "uri")
+    '("const-gchar**" "groups")
+    '("gsize" "length")
   )
 )
 
-(define-method get_value
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_value")
-  (return-type "gchar*")
+(define-method set_icon
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_icon")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "href")
+    '("const-gchar*" "mime_type")
   )
 )
 
-(define-method set_value
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_value")
-  (return-type "none")
+(define-method set_is_private
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_is_private")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "value")
+    '("const-gchar*" "uri")
+    '("gboolean" "is_private")
   )
 )
 
-(define-method get_string
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_string")
-  (return-type "gchar*")
+(define-method set_mime_type
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_mime_type")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "mime_type")
   )
 )
 
-(define-method set_string
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_string")
-  (return-type "none")
+(define-method set_modified
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_modified")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "string")
+    '("const-gchar*" "uri")
+    '("time_t" "modified")
   )
 )
 
-(define-method get_locale_string
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_locale_string")
-  (return-type "gchar*")
+(define-method set_title
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_title")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "locale")
-    '("GError**" "error")
+    '("const-gchar*" "uri")
+    '("const-gchar*" "title")
   )
 )
 
-(define-method set_locale_string
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_locale_string")
-  (return-type "none")
+(define-method set_visited
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_set_visited")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "locale")
-    '("const-gchar*" "string")
+    '("const-gchar*" "uri")
+    '("time_t" "visited")
   )
 )
 
-(define-method get_boolean
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_boolean")
-  (return-type "gboolean")
+(define-method to_data
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_to_data")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
+    '("gsize*" "length")
     '("GError**" "error")
   )
 )
 
-(define-method set_boolean
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_boolean")
-  (return-type "none")
+(define-method to_file
+  (of-object "GBookmarkFile")
+  (c-name "g_bookmark_file_to_file")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gboolean" "value")
+    '("gchar*" "filename")
+    '("GError**" "error")
   )
 )
 
-(define-method get_integer
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_integer")
-  (return-type "gint")
+(define-function g_bookmark_file_error_quark
+  (c-name "g_bookmark_file_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_bookmark_file_new
+  (c-name "g_bookmark_file_new")
+  (return-type "GBookmarkFile*")
+)
+
+(define-function g_byte_array_append
+  (c-name "g_byte_array_append")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("GByteArray*" "array")
+    '("const-guint8*" "data")
+    '("guint" "len")
   )
 )
 
-(define-method set_integer
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_integer")
-  (return-type "none")
+(define-function g_byte_array_free
+  (c-name "g_byte_array_free")
+  (return-type "guint8*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gint" "value")
+    '("GByteArray*" "array")
+    '("gboolean" "free_segment")
   )
 )
 
-(define-method get_int64
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_int64")
-  (return-type "gint64")
+(define-function g_byte_array_free_to_bytes
+  (c-name "g_byte_array_free_to_bytes")
+  (return-type "GBytes*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("GByteArray*" "array")
   )
 )
 
-(define-method set_int64
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_int64")
-  (return-type "none")
+(define-function g_byte_array_new
+  (c-name "g_byte_array_new")
+  (return-type "GByteArray*")
+)
+
+(define-function g_byte_array_new_take
+  (c-name "g_byte_array_new_take")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gint64" "value")
+    '("guint8*" "data")
+    '("gsize" "len")
   )
 )
 
-(define-method get_uint64
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_uint64")
-  (return-type "guint64")
+(define-function g_byte_array_prepend
+  (c-name "g_byte_array_prepend")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("GByteArray*" "array")
+    '("const-guint8*" "data")
+    '("guint" "len")
   )
 )
 
-(define-method set_uint64
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_uint64")
-  (return-type "none")
+(define-function g_byte_array_ref
+  (c-name "g_byte_array_ref")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("guint64" "value")
+    '("GByteArray*" "array")
   )
 )
 
-(define-method get_double
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_double")
-  (return-type "gdouble")
+(define-function g_byte_array_remove_index
+  (c-name "g_byte_array_remove_index")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("GByteArray*" "array")
+    '("guint" "index_")
   )
 )
 
-(define-method set_double
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_double")
-  (return-type "none")
+(define-function g_byte_array_remove_index_fast
+  (c-name "g_byte_array_remove_index_fast")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gdouble" "value")
+    '("GByteArray*" "array")
+    '("guint" "index_")
   )
 )
 
-(define-method get_string_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_string_list")
-  (return-type "gchar**")
+(define-function g_byte_array_remove_range
+  (c-name "g_byte_array_remove_range")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("GByteArray*" "array")
+    '("guint" "index_")
+    '("guint" "length")
   )
 )
 
-(define-method set_string_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_string_list")
-  (return-type "none")
+(define-function g_byte_array_set_size
+  (c-name "g_byte_array_set_size")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*-const[]" "list")
-    '("gsize" "length")
+    '("GByteArray*" "array")
+    '("guint" "length")
   )
 )
 
-(define-method get_locale_string_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_locale_string_list")
-  (return-type "gchar**")
+(define-function g_byte_array_sized_new
+  (c-name "g_byte_array_sized_new")
+  (return-type "GByteArray*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "locale")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("guint" "reserved_size")
   )
 )
 
-(define-method set_locale_string_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_locale_string_list")
-  (return-type "none")
+(define-function g_byte_array_sort
+  (c-name "g_byte_array_sort")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "locale")
-    '("const-gchar*-const[]" "list")
-    '("gsize" "length")
+    '("GByteArray*" "array")
+    '("GCompareFunc" "compare_func")
   )
 )
 
-(define-method get_boolean_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_boolean_list")
-  (return-type "gboolean*")
+(define-function g_byte_array_sort_with_data
+  (c-name "g_byte_array_sort_with_data")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("GByteArray*" "array")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method set_boolean_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_boolean_list")
-  (return-type "none")
+(define-function g_byte_array_unref
+  (c-name "g_byte_array_unref")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gboolean[]" "list")
-    '("gsize" "length")
+    '("GByteArray*" "array")
   )
 )
 
-(define-method get_integer_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_integer_list")
-  (return-type "gint*")
+(define-function g_bytes_new
+  (c-name "g_bytes_new")
+  (return-type "GBytes*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("gconstpointer" "data")
+    '("gsize" "size")
   )
 )
 
-(define-method set_double_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_double_list")
-  (return-type "none")
+(define-function g_bytes_new_static
+  (c-name "g_bytes_new_static")
+  (return-type "GBytes*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gdouble[]" "list")
-    '("gsize" "length")
+    '("gconstpointer" "data")
+    '("gsize" "size")
   )
 )
 
-(define-method get_double_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_double_list")
-  (return-type "gdouble*")
+(define-function g_bytes_new_take
+  (c-name "g_bytes_new_take")
+  (return-type "GBytes*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gsize*" "length")
-    '("GError**" "error")
+    '("gpointer" "data")
+    '("gsize" "size")
   )
 )
 
-(define-method set_integer_list
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_integer_list")
-  (return-type "none")
+(define-function g_bytes_new_with_free_func
+  (c-name "g_bytes_new_with_free_func")
+  (return-type "GBytes*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("gint[]" "list")
-    '("gsize" "length")
+    '("gconstpointer" "data")
+    '("gsize" "size")
+    '("GDestroyNotify" "free_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method set_comment
-  (of-object "GKeyFile")
-  (c-name "g_key_file_set_comment")
-  (return-type "gboolean")
+(define-function g_bytes_compare
+  (c-name "g_bytes_compare")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("const-gchar*" "comment")
-    '("GError**" "error")
+    '("gconstpointer" "bytes1")
+    '("gconstpointer" "bytes2")
   )
 )
 
-(define-method get_comment
-  (of-object "GKeyFile")
-  (c-name "g_key_file_get_comment")
-  (return-type "gchar*")
+(define-function g_bytes_equal
+  (c-name "g_bytes_equal")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("gconstpointer" "bytes1")
+    '("gconstpointer" "bytes2")
   )
 )
 
-(define-method remove_comment
-  (of-object "GKeyFile")
-  (c-name "g_key_file_remove_comment")
-  (return-type "gboolean")
+(define-method get_data
+  (of-object "GBytes")
+  (c-name "g_bytes_get_data")
+  (return-type "gconstpointer")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("gsize*" "size")
   )
 )
 
-(define-method remove_key
-  (of-object "GKeyFile")
-  (c-name "g_key_file_remove_key")
-  (return-type "gboolean")
+(define-method get_size
+  (of-object "GBytes")
+  (c-name "g_bytes_get_size")
+  (return-type "gsize")
+)
+
+(define-function g_bytes_hash
+  (c-name "g_bytes_hash")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "group_name")
-    '("const-gchar*" "key")
-    '("GError**" "error")
+    '("gconstpointer" "bytes")
   )
 )
 
-(define-method remove_group
-  (of-object "GKeyFile")
-  (c-name "g_key_file_remove_group")
-  (return-type "gboolean")
+(define-method new_from_bytes
+  (of-object "GBytes")
+  (c-name "g_bytes_new_from_bytes")
+  (return-type "GBytes*")
   (parameters
-    '("const-gchar*" "group_name")
-    '("GError**" "error")
+    '("gsize" "offset")
+    '("gsize" "length")
   )
 )
 
+(define-method ref
+  (of-object "GBytes")
+  (c-name "g_bytes_ref")
+  (return-type "GBytes*")
+)
 
+(define-method unref
+  (of-object "GBytes")
+  (c-name "g_bytes_unref")
+  (return-type "void")
+)
 
-;; From glib-autocleanups.h
+(define-method unref_to_array
+  (of-object "GBytes")
+  (c-name "g_bytes_unref_to_array")
+  (return-type "GByteArray*")
+)
 
-(define-function g_autoptr_cleanup_generic_gfree
-  (c-name "g_autoptr_cleanup_generic_gfree")
-  (return-type "none")
+(define-method unref_to_data
+  (of-object "GBytes")
+  (c-name "g_bytes_unref_to_data")
+  (return-type "gpointer")
   (parameters
-    '("void*" "p")
+    '("gsize*" "size")
   )
 )
 
-(define-function g_autoptr_cleanup_gstring_free
-  (c-name "g_autoptr_cleanup_gstring_free")
-  (return-type "none")
+(define-function g_checksum_new
+  (c-name "g_checksum_new")
+  (return-type "GChecksum*")
   (parameters
-    '("GString*" "string")
+    '("GChecksumType" "checksum_type")
   )
 )
 
+(define-method copy
+  (of-object "GChecksum")
+  (c-name "g_checksum_copy")
+  (return-type "GChecksum*")
+)
 
+(define-method free
+  (of-object "GChecksum")
+  (c-name "g_checksum_free")
+  (return-type "void")
+)
 
-;; From glibconfig.h
+(define-method get_digest
+  (of-object "GChecksum")
+  (c-name "g_checksum_get_digest")
+  (return-type "void")
+  (parameters
+    '("guint8*" "buffer")
+    '("gsize*" "digest_len")
+  )
+)
 
+(define-method get_string
+  (of-object "GChecksum")
+  (c-name "g_checksum_get_string")
+  (return-type "const-gchar*")
+)
 
+(define-method reset
+  (of-object "GChecksum")
+  (c-name "g_checksum_reset")
+  (return-type "void")
+)
 
-;; From glib.h
+(define-method update
+  (of-object "GChecksum")
+  (c-name "g_checksum_update")
+  (return-type "void")
+  (parameters
+    '("guchar*" "data")
+    '("gssize" "length")
+  )
+)
 
+(define-function g_checksum_type_get_length
+  (c-name "g_checksum_type_get_length")
+  (return-type "gssize")
+  (parameters
+    '("GChecksumType" "checksum_type")
+  )
+)
 
+(define-method broadcast
+  (of-object "GCond")
+  (c-name "g_cond_broadcast")
+  (return-type "void")
+)
 
-;; From glib-init.h
+(define-method clear
+  (of-object "GCond")
+  (c-name "g_cond_clear")
+  (return-type "void")
+)
 
-(define-function glib_init
-  (c-name "glib_init")
-  (return-type "none")
+(define-method init
+  (of-object "GCond")
+  (c-name "g_cond_init")
+  (return-type "void")
 )
 
-(define-function g_quark_init
-  (c-name "g_quark_init")
-  (return-type "none")
+(define-method signal
+  (of-object "GCond")
+  (c-name "g_cond_signal")
+  (return-type "void")
 )
 
-(define-function g_thread_win32_process_detach
-  (c-name "g_thread_win32_process_detach")
-  (return-type "none")
+(define-method wait
+  (of-object "GCond")
+  (c-name "g_cond_wait")
+  (return-type "void")
+  (parameters
+    '("GMutex*" "mutex")
+  )
 )
 
-(define-function g_thread_win32_thread_detach
-  (c-name "g_thread_win32_thread_detach")
-  (return-type "none")
+(define-method wait_until
+  (of-object "GCond")
+  (c-name "g_cond_wait_until")
+  (return-type "gboolean")
+  (parameters
+    '("GMutex*" "mutex")
+    '("gint64" "end_time")
+  )
 )
 
-(define-function g_thread_win32_init
-  (c-name "g_thread_win32_init")
-  (return-type "none")
+(define-function g_date_new
+  (c-name "g_date_new")
+  (return-type "GDate*")
 )
 
-(define-function g_clock_win32_init
-  (c-name "g_clock_win32_init")
-  (return-type "none")
+(define-function g_date_new_dmy
+  (c-name "g_date_new_dmy")
+  (return-type "GDate*")
+  (parameters
+    '("GDateDay" "day")
+    '("GDateMonth" "month")
+    '("GDateYear" "year")
+  )
 )
 
+(define-function g_date_new_julian
+  (c-name "g_date_new_julian")
+  (return-type "GDate*")
+  (parameters
+    '("guint32" "julian_day")
+  )
+)
 
+(define-method add_days
+  (of-object "GDate")
+  (c-name "g_date_add_days")
+  (return-type "void")
+  (parameters
+    '("guint" "n_days")
+  )
+)
 
-;; From glibintl.h
+(define-method add_months
+  (of-object "GDate")
+  (c-name "g_date_add_months")
+  (return-type "void")
+  (parameters
+    '("guint" "n_months")
+  )
+)
 
-(define-function glib_gettext
-  (c-name "glib_gettext")
-  (return-type "const-gchar*")
+(define-method add_years
+  (of-object "GDate")
+  (c-name "g_date_add_years")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
+    '("guint" "n_years")
   )
 )
 
-(define-function glib_pgettext
-  (c-name "glib_pgettext")
-  (return-type "const-gchar*")
+(define-method clamp
+  (of-object "GDate")
+  (c-name "g_date_clamp")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "msgctxtid")
-    '("gsize" "msgidoffset")
+    '("const-GDate*" "min_date")
+    '("const-GDate*" "max_date")
   )
 )
 
+(define-method clear
+  (of-object "GDate")
+  (c-name "g_date_clear")
+  (return-type "void")
+  (parameters
+    '("guint" "n_dates")
+  )
+)
 
+(define-method compare
+  (of-object "GDate")
+  (c-name "g_date_compare")
+  (return-type "gint")
+  (parameters
+    '("const-GDate*" "rhs")
+  )
+)
 
-;; From glib-object.h
+(define-method days_between
+  (of-object "GDate")
+  (c-name "g_date_days_between")
+  (return-type "gint")
+  (parameters
+    '("const-GDate*" "date2")
+  )
+)
 
+(define-method free
+  (of-object "GDate")
+  (c-name "g_date_free")
+  (return-type "void")
+)
 
+(define-method get_day
+  (of-object "GDate")
+  (c-name "g_date_get_day")
+  (return-type "GDateDay")
+)
 
-;; From glib_probes.h
+(define-method get_day_of_year
+  (of-object "GDate")
+  (c-name "g_date_get_day_of_year")
+  (return-type "guint")
+)
 
+(define-method get_iso8601_week_of_year
+  (of-object "GDate")
+  (c-name "g_date_get_iso8601_week_of_year")
+  (return-type "guint")
+)
 
+(define-method get_julian
+  (of-object "GDate")
+  (c-name "g_date_get_julian")
+  (return-type "guint32")
+)
 
-;; From glib_trace.h
+(define-method get_monday_week_of_year
+  (of-object "GDate")
+  (c-name "g_date_get_monday_week_of_year")
+  (return-type "guint")
+)
 
+(define-method get_month
+  (of-object "GDate")
+  (c-name "g_date_get_month")
+  (return-type "GDateMonth")
+)
 
+(define-method get_sunday_week_of_year
+  (of-object "GDate")
+  (c-name "g_date_get_sunday_week_of_year")
+  (return-type "guint")
+)
 
-;; From glib-unix.h
+(define-method get_weekday
+  (of-object "GDate")
+  (c-name "g_date_get_weekday")
+  (return-type "GDateWeekday")
+)
 
-(define-function g_unix_error_quark
-  (c-name "g_unix_error_quark")
-  (return-type "GQuark")
+(define-method get_year
+  (of-object "GDate")
+  (c-name "g_date_get_year")
+  (return-type "GDateYear")
 )
 
-(define-function g_unix_open_pipe
-  (c-name "g_unix_open_pipe")
+(define-method is_first_of_month
+  (of-object "GDate")
+  (c-name "g_date_is_first_of_month")
+  (return-type "gboolean")
+)
+
+(define-method is_last_of_month
+  (of-object "GDate")
+  (c-name "g_date_is_last_of_month")
   (return-type "gboolean")
+)
+
+(define-method order
+  (of-object "GDate")
+  (c-name "g_date_order")
+  (return-type "void")
   (parameters
-    '("gint*" "fds")
-    '("gint" "flags")
-    '("GError**" "error")
+    '("GDate*" "date2")
   )
 )
 
-(define-function g_unix_set_fd_nonblocking
-  (c-name "g_unix_set_fd_nonblocking")
-  (return-type "gboolean")
+(define-method set_day
+  (of-object "GDate")
+  (c-name "g_date_set_day")
+  (return-type "void")
   (parameters
-    '("gint" "fd")
-    '("gboolean" "nonblock")
-    '("GError**" "error")
+    '("GDateDay" "day")
   )
 )
 
-(define-function g_unix_signal_source_new
-  (c-name "g_unix_signal_source_new")
-  (is-constructor-of "GUnixSignalSource")
-  (return-type "GSource*")
+(define-method set_dmy
+  (of-object "GDate")
+  (c-name "g_date_set_dmy")
+  (return-type "void")
   (parameters
-    '("gint" "signum")
+    '("GDateDay" "day")
+    '("GDateMonth" "month")
+    '("GDateYear" "y")
   )
 )
 
-(define-function g_unix_signal_add_full
-  (c-name "g_unix_signal_add_full")
-  (return-type "guint")
+(define-method set_julian
+  (of-object "GDate")
+  (c-name "g_date_set_julian")
+  (return-type "void")
   (parameters
-    '("gint" "priority")
-    '("gint" "signum")
-    '("GSourceFunc" "handler")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "notify")
+    '("guint32" "julian_date")
   )
 )
 
-(define-function g_unix_signal_add
-  (c-name "g_unix_signal_add")
-  (return-type "guint")
+(define-method set_month
+  (of-object "GDate")
+  (c-name "g_date_set_month")
+  (return-type "void")
   (parameters
-    '("gint" "signum")
-    '("GSourceFunc" "handler")
-    '("gpointer" "user_data")
+    '("GDateMonth" "month")
   )
 )
 
-(define-function g_unix_fd_source_new
-  (c-name "g_unix_fd_source_new")
-  (is-constructor-of "GUnixFdSource")
-  (return-type "GSource*")
+(define-method set_parse
+  (of-object "GDate")
+  (c-name "g_date_set_parse")
+  (return-type "void")
   (parameters
-    '("gint" "fd")
-    '("GIOCondition" "condition")
+    '("const-gchar*" "str")
   )
 )
 
-(define-function g_unix_fd_add_full
-  (c-name "g_unix_fd_add_full")
-  (return-type "guint")
+(define-method set_time
+  (of-object "GDate")
+  (c-name "g_date_set_time")
+  (return-type "void")
   (parameters
-    '("gint" "priority")
-    '("gint" "fd")
-    '("GIOCondition" "condition")
-    '("GUnixFDSourceFunc" "function")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "notify")
+    '("GTime" "time_")
   )
 )
 
-(define-function g_unix_fd_add
-  (c-name "g_unix_fd_add")
-  (return-type "guint")
+(define-method set_time_t
+  (of-object "GDate")
+  (c-name "g_date_set_time_t")
+  (return-type "void")
   (parameters
-    '("gint" "fd")
-    '("GIOCondition" "condition")
-    '("GUnixFDSourceFunc" "function")
-    '("gpointer" "user_data")
+    '("time_t" "timet")
   )
 )
 
+(define-method set_time_val
+  (of-object "GDate")
+  (c-name "g_date_set_time_val")
+  (return-type "void")
+  (parameters
+    '("GTimeVal*" "timeval")
+  )
+)
 
+(define-method set_year
+  (of-object "GDate")
+  (c-name "g_date_set_year")
+  (return-type "void")
+  (parameters
+    '("GDateYear" "year")
+  )
+)
 
-;; From glist.h
+(define-method subtract_days
+  (of-object "GDate")
+  (c-name "g_date_subtract_days")
+  (return-type "void")
+  (parameters
+    '("guint" "n_days")
+  )
+)
 
-(define-function g_list_alloc
-  (c-name "g_list_alloc")
-  (return-type "GList*")
+(define-method subtract_months
+  (of-object "GDate")
+  (c-name "g_date_subtract_months")
+  (return-type "void")
+  (parameters
+    '("guint" "n_months")
+  )
 )
 
-(define-method free
-  (of-object "GList")
-  (c-name "g_list_free")
-  (return-type "none")
+(define-method subtract_years
+  (of-object "GDate")
+  (c-name "g_date_subtract_years")
+  (return-type "void")
+  (parameters
+    '("guint" "n_years")
+  )
 )
 
-(define-method free_1
-  (of-object "GList")
-  (c-name "g_list_free_1")
-  (return-type "none")
+(define-method to_struct_tm
+  (of-object "GDate")
+  (c-name "g_date_to_struct_tm")
+  (return-type "void")
+  (parameters
+    '("tm*" "tm")
+  )
 )
 
-(define-method free_full
-  (of-object "GList")
-  (c-name "g_list_free_full")
-  (return-type "none")
+(define-method valid
+  (of-object "GDate")
+  (c-name "g_date_valid")
+  (return-type "gboolean")
+)
+
+(define-function g_date_get_days_in_month
+  (c-name "g_date_get_days_in_month")
+  (return-type "guint8")
   (parameters
-    '("GDestroyNotify" "free_func")
+    '("GDateMonth" "month")
+    '("GDateYear" "year")
   )
 )
 
-(define-method append
-  (of-object "GList")
-  (c-name "g_list_append")
-  (return-type "GList*")
+(define-function g_date_get_monday_weeks_in_year
+  (c-name "g_date_get_monday_weeks_in_year")
+  (return-type "guint8")
   (parameters
-    '("gpointer" "data")
+    '("GDateYear" "year")
   )
 )
 
-(define-method prepend
-  (of-object "GList")
-  (c-name "g_list_prepend")
-  (return-type "GList*")
+(define-function g_date_get_sunday_weeks_in_year
+  (c-name "g_date_get_sunday_weeks_in_year")
+  (return-type "guint8")
   (parameters
-    '("gpointer" "data")
+    '("GDateYear" "year")
   )
 )
 
-(define-method insert
-  (of-object "GList")
-  (c-name "g_list_insert")
-  (return-type "GList*")
+(define-function g_date_is_leap_year
+  (c-name "g_date_is_leap_year")
+  (return-type "gboolean")
   (parameters
-    '("gpointer" "data")
-    '("gint" "position")
+    '("GDateYear" "year")
   )
 )
 
-(define-method insert_sorted
-  (of-object "GList")
-  (c-name "g_list_insert_sorted")
-  (return-type "GList*")
+(define-function g_date_strftime
+  (c-name "g_date_strftime")
+  (return-type "gsize")
   (parameters
-    '("gpointer" "data")
-    '("GCompareFunc" "func")
+    '("gchar*" "s")
+    '("gsize" "slen")
+    '("const-gchar*" "format")
+    '("const-GDate*" "date")
   )
 )
 
-(define-method insert_sorted_with_data
-  (of-object "GList")
-  (c-name "g_list_insert_sorted_with_data")
-  (return-type "GList*")
+(define-function g_date_valid_day
+  (c-name "g_date_valid_day")
+  (return-type "gboolean")
   (parameters
-    '("gpointer" "data")
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
+    '("GDateDay" "day")
   )
 )
 
-(define-method insert_before
-  (of-object "GList")
-  (c-name "g_list_insert_before")
-  (return-type "GList*")
+(define-function g_date_valid_dmy
+  (c-name "g_date_valid_dmy")
+  (return-type "gboolean")
   (parameters
-    '("GList*" "sibling")
-    '("gpointer" "data")
+    '("GDateDay" "day")
+    '("GDateMonth" "month")
+    '("GDateYear" "year")
   )
 )
 
-(define-method concat
-  (of-object "GList")
-  (c-name "g_list_concat")
-  (return-type "GList*")
+(define-function g_date_valid_julian
+  (c-name "g_date_valid_julian")
+  (return-type "gboolean")
   (parameters
-    '("GList*" "list2")
+    '("guint32" "julian_date")
   )
 )
 
-(define-method remove
-  (of-object "GList")
-  (c-name "g_list_remove")
-  (return-type "GList*")
+(define-function g_date_valid_month
+  (c-name "g_date_valid_month")
+  (return-type "gboolean")
   (parameters
-    '("gconstpointer" "data")
+    '("GDateMonth" "month")
   )
 )
 
-(define-method remove_all
-  (of-object "GList")
-  (c-name "g_list_remove_all")
-  (return-type "GList*")
+(define-function g_date_valid_weekday
+  (c-name "g_date_valid_weekday")
+  (return-type "gboolean")
   (parameters
-    '("gconstpointer" "data")
+    '("GDateWeekday" "weekday")
   )
 )
 
-(define-method remove_link
-  (of-object "GList")
-  (c-name "g_list_remove_link")
-  (return-type "GList*")
+(define-function g_date_valid_year
+  (c-name "g_date_valid_year")
+  (return-type "gboolean")
   (parameters
-    '("GList*" "llink")
+    '("GDateYear" "year")
   )
 )
 
-(define-method delete_link
-  (of-object "GList")
-  (c-name "g_list_delete_link")
-  (return-type "GList*")
+(define-function g_date_time_new
+  (c-name "g_date_time_new")
+  (return-type "GDateTime*")
   (parameters
-    '("GList*" "link_")
+    '("GTimeZone*" "tz")
+    '("gint" "year")
+    '("gint" "month")
+    '("gint" "day")
+    '("gint" "hour")
+    '("gint" "minute")
+    '("gdouble" "seconds")
   )
 )
 
-(define-method reverse
-  (of-object "GList")
-  (c-name "g_list_reverse")
-  (return-type "GList*")
+(define-function g_date_time_new_from_timeval_local
+  (c-name "g_date_time_new_from_timeval_local")
+  (return-type "GDateTime*")
+  (parameters
+    '("const-GTimeVal*" "tv")
+  )
 )
 
-(define-method copy
-  (of-object "GList")
-  (c-name "g_list_copy")
-  (return-type "GList*")
+(define-function g_date_time_new_from_timeval_utc
+  (c-name "g_date_time_new_from_timeval_utc")
+  (return-type "GDateTime*")
+  (parameters
+    '("const-GTimeVal*" "tv")
+  )
 )
 
-(define-method copy_deep
-  (of-object "GList")
-  (c-name "g_list_copy_deep")
-  (return-type "GList*")
+(define-function g_date_time_new_from_unix_local
+  (c-name "g_date_time_new_from_unix_local")
+  (return-type "GDateTime*")
   (parameters
-    '("GCopyFunc" "func")
-    '("gpointer" "user_data")
+    '("gint64" "t")
   )
 )
 
-(define-method nth
-  (of-object "GList")
-  (c-name "g_list_nth")
-  (return-type "GList*")
+(define-function g_date_time_new_from_unix_utc
+  (c-name "g_date_time_new_from_unix_utc")
+  (return-type "GDateTime*")
   (parameters
-    '("guint" "n")
+    '("gint64" "t")
   )
 )
 
-(define-method nth_prev
-  (of-object "GList")
-  (c-name "g_list_nth_prev")
-  (return-type "GList*")
+(define-function g_date_time_new_local
+  (c-name "g_date_time_new_local")
+  (return-type "GDateTime*")
   (parameters
-    '("guint" "n")
+    '("gint" "year")
+    '("gint" "month")
+    '("gint" "day")
+    '("gint" "hour")
+    '("gint" "minute")
+    '("gdouble" "seconds")
   )
 )
 
-(define-method find
-  (of-object "GList")
-  (c-name "g_list_find")
-  (return-type "GList*")
+(define-function g_date_time_new_now
+  (c-name "g_date_time_new_now")
+  (return-type "GDateTime*")
   (parameters
-    '("gconstpointer" "data")
+    '("GTimeZone*" "tz")
   )
 )
 
-(define-method find_custom
-  (of-object "GList")
-  (c-name "g_list_find_custom")
-  (return-type "GList*")
+(define-function g_date_time_new_now_local
+  (c-name "g_date_time_new_now_local")
+  (return-type "GDateTime*")
+)
+
+(define-function g_date_time_new_now_utc
+  (c-name "g_date_time_new_now_utc")
+  (return-type "GDateTime*")
+)
+
+(define-function g_date_time_new_utc
+  (c-name "g_date_time_new_utc")
+  (return-type "GDateTime*")
   (parameters
-    '("gconstpointer" "data")
-    '("GCompareFunc" "func")
+    '("gint" "year")
+    '("gint" "month")
+    '("gint" "day")
+    '("gint" "hour")
+    '("gint" "minute")
+    '("gdouble" "seconds")
   )
 )
 
-(define-method position
-  (of-object "GList")
-  (c-name "g_list_position")
-  (return-type "gint")
+(define-method add
+  (of-object "GDateTime")
+  (c-name "g_date_time_add")
+  (return-type "GDateTime*")
   (parameters
-    '("GList*" "llink")
+    '("GTimeSpan" "timespan")
   )
 )
 
-(define-method index
-  (of-object "GList")
-  (c-name "g_list_index")
-  (return-type "gint")
+(define-method add_days
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_days")
+  (return-type "GDateTime*")
   (parameters
-    '("gconstpointer" "data")
+    '("gint" "days")
   )
 )
 
-(define-method last
-  (of-object "GList")
-  (c-name "g_list_last")
-  (return-type "GList*")
+(define-method add_full
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_full")
+  (return-type "GDateTime*")
+  (parameters
+    '("gint" "years")
+    '("gint" "months")
+    '("gint" "days")
+    '("gint" "hours")
+    '("gint" "minutes")
+    '("gdouble" "seconds")
+  )
 )
 
-(define-method first
-  (of-object "GList")
-  (c-name "g_list_first")
-  (return-type "GList*")
+(define-method add_hours
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_hours")
+  (return-type "GDateTime*")
+  (parameters
+    '("gint" "hours")
+  )
 )
 
-(define-method length
-  (of-object "GList")
-  (c-name "g_list_length")
-  (return-type "guint")
+(define-method add_minutes
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_minutes")
+  (return-type "GDateTime*")
+  (parameters
+    '("gint" "minutes")
+  )
 )
 
-(define-method foreach
-  (of-object "GList")
-  (c-name "g_list_foreach")
-  (return-type "none")
+(define-method add_months
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_months")
+  (return-type "GDateTime*")
   (parameters
-    '("GFunc" "func")
-    '("gpointer" "user_data")
+    '("gint" "months")
   )
 )
 
-(define-method sort
-  (of-object "GList")
-  (c-name "g_list_sort")
-  (return-type "GList*")
+(define-method add_seconds
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_seconds")
+  (return-type "GDateTime*")
   (parameters
-    '("GCompareFunc" "compare_func")
+    '("gdouble" "seconds")
   )
 )
 
-(define-method sort_with_data
-  (of-object "GList")
-  (c-name "g_list_sort_with_data")
-  (return-type "GList*")
+(define-method add_weeks
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_weeks")
+  (return-type "GDateTime*")
   (parameters
-    '("GCompareDataFunc" "compare_func")
-    '("gpointer" "user_data")
+    '("gint" "weeks")
   )
 )
 
-(define-method nth_data
-  (of-object "GList")
-  (c-name "g_list_nth_data")
-  (return-type "gpointer")
+(define-method add_years
+  (of-object "GDateTime")
+  (c-name "g_date_time_add_years")
+  (return-type "GDateTime*")
   (parameters
-    '("guint" "n")
+    '("gint" "years")
   )
 )
 
+(define-method difference
+  (of-object "GDateTime")
+  (c-name "g_date_time_difference")
+  (return-type "GTimeSpan")
+  (parameters
+    '("GDateTime*" "begin")
+  )
+)
 
+(define-method format
+  (of-object "GDateTime")
+  (c-name "g_date_time_format")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "format")
+  )
+)
 
-;; From gmacros.h
+(define-method get_day_of_month
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_day_of_month")
+  (return-type "gint")
+)
 
+(define-method get_day_of_week
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_day_of_week")
+  (return-type "gint")
+)
 
+(define-method get_day_of_year
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_day_of_year")
+  (return-type "gint")
+)
 
-;; From gmain.h
+(define-method get_hour
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_hour")
+  (return-type "gint")
+)
 
-(define-function g_main_context_new
-  (c-name "g_main_context_new")
-  (is-constructor-of "GMainContext")
-  (return-type "GMainContext*")
+(define-method get_microsecond
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_microsecond")
+  (return-type "gint")
+)
+
+(define-method get_minute
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_minute")
+  (return-type "gint")
+)
+
+(define-method get_month
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_month")
+  (return-type "gint")
+)
+
+(define-method get_second
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_second")
+  (return-type "gint")
+)
+
+(define-method get_seconds
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_seconds")
+  (return-type "gdouble")
+)
+
+(define-method get_timezone_abbreviation
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_timezone_abbreviation")
+  (return-type "const-gchar*")
+)
+
+(define-method get_utc_offset
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_utc_offset")
+  (return-type "GTimeSpan")
+)
+
+(define-method get_week_numbering_year
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_week_numbering_year")
+  (return-type "gint")
+)
+
+(define-method get_week_of_year
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_week_of_year")
+  (return-type "gint")
+)
+
+(define-method get_year
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_year")
+  (return-type "gint")
+)
+
+(define-method get_ymd
+  (of-object "GDateTime")
+  (c-name "g_date_time_get_ymd")
+  (return-type "void")
+  (parameters
+    '("gint*" "year")
+    '("gint*" "month")
+    '("gint*" "day")
+  )
+)
+
+(define-method is_daylight_savings
+  (of-object "GDateTime")
+  (c-name "g_date_time_is_daylight_savings")
+  (return-type "gboolean")
 )
 
 (define-method ref
-  (of-object "GMainContext")
-  (c-name "g_main_context_ref")
-  (return-type "GMainContext*")
+  (of-object "GDateTime")
+  (c-name "g_date_time_ref")
+  (return-type "GDateTime*")
+)
+
+(define-method to_local
+  (of-object "GDateTime")
+  (c-name "g_date_time_to_local")
+  (return-type "GDateTime*")
+)
+
+(define-method to_timeval
+  (of-object "GDateTime")
+  (c-name "g_date_time_to_timeval")
+  (return-type "gboolean")
+  (parameters
+    '("GTimeVal*" "tv")
+  )
+)
+
+(define-method to_timezone
+  (of-object "GDateTime")
+  (c-name "g_date_time_to_timezone")
+  (return-type "GDateTime*")
+  (parameters
+    '("GTimeZone*" "tz")
+  )
+)
+
+(define-method to_unix
+  (of-object "GDateTime")
+  (c-name "g_date_time_to_unix")
+  (return-type "gint64")
+)
+
+(define-method to_utc
+  (of-object "GDateTime")
+  (c-name "g_date_time_to_utc")
+  (return-type "GDateTime*")
 )
 
 (define-method unref
-  (of-object "GMainContext")
-  (c-name "g_main_context_unref")
-  (return-type "none")
+  (of-object "GDateTime")
+  (c-name "g_date_time_unref")
+  (return-type "void")
 )
 
-(define-function g_main_context_default
-  (c-name "g_main_context_default")
-  (return-type "GMainContext*")
+(define-function g_date_time_compare
+  (c-name "g_date_time_compare")
+  (return-type "gint")
+  (parameters
+    '("gconstpointer" "dt1")
+    '("gconstpointer" "dt2")
+  )
 )
 
-(define-method iteration
-  (of-object "GMainContext")
-  (c-name "g_main_context_iteration")
+(define-function g_date_time_equal
+  (c-name "g_date_time_equal")
   (return-type "gboolean")
   (parameters
-    '("gboolean" "may_block")
+    '("gconstpointer" "dt1")
+    '("gconstpointer" "dt2")
   )
 )
 
-(define-method pending
-  (of-object "GMainContext")
-  (c-name "g_main_context_pending")
-  (return-type "gboolean")
+(define-function g_date_time_hash
+  (c-name "g_date_time_hash")
+  (return-type "guint")
+  (parameters
+    '("gconstpointer" "datetime")
+  )
 )
 
-(define-method find_source_by_id
-  (of-object "GMainContext")
-  (c-name "g_main_context_find_source_by_id")
-  (return-type "GSource*")
+(define-method close
+  (of-object "GDir")
+  (c-name "g_dir_close")
+  (return-type "void")
+)
+
+(define-method read_name
+  (of-object "GDir")
+  (c-name "g_dir_read_name")
+  (return-type "gchar*")
+)
+
+(define-method rewind
+  (of-object "GDir")
+  (c-name "g_dir_rewind")
+  (return-type "void")
+)
+
+(define-function g_dir_make_tmp
+  (c-name "g_dir_make_tmp")
+  (return-type "gchar*")
   (parameters
-    '("guint" "source_id")
+    '("gchar*" "tmpl")
+    '("GError**" "error")
   )
 )
 
-(define-method find_source_by_user_data
-  (of-object "GMainContext")
-  (c-name "g_main_context_find_source_by_user_data")
-  (return-type "GSource*")
+(define-function g_dir_open
+  (c-name "g_dir_open")
+  (return-type "GDir*")
   (parameters
-    '("gpointer" "user_data")
+    '("const-gchar*" "path")
+    '("guint" "flags")
+    '("GError**" "error")
   )
 )
 
-(define-method find_source_by_funcs_user_data
-  (of-object "GMainContext")
-  (c-name "g_main_context_find_source_by_funcs_user_data")
-  (return-type "GSource*")
+(define-function g_error_new
+  (c-name "g_error_new")
+  (return-type "GError*")
   (parameters
-    '("GSourceFuncs*" "funcs")
-    '("gpointer" "user_data")
+    '("GQuark" "domain")
+    '("gint" "code")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-method wakeup
-  (of-object "GMainContext")
-  (c-name "g_main_context_wakeup")
-  (return-type "none")
+(define-function g_error_new_literal
+  (c-name "g_error_new_literal")
+  (return-type "GError*")
+  (parameters
+    '("GQuark" "domain")
+    '("gint" "code")
+    '("const-gchar*" "message")
+  )
 )
 
-(define-method acquire
-  (of-object "GMainContext")
-  (c-name "g_main_context_acquire")
-  (return-type "gboolean")
+(define-function g_error_new_valist
+  (c-name "g_error_new_valist")
+  (return-type "GError*")
+  (parameters
+    '("GQuark" "domain")
+    '("gint" "code")
+    '("const-gchar*" "format")
+    '("va_list" "args")
+  )
 )
 
-(define-method release
-  (of-object "GMainContext")
-  (c-name "g_main_context_release")
-  (return-type "none")
+(define-method copy
+  (of-object "GError")
+  (c-name "g_error_copy")
+  (return-type "GError*")
 )
 
-(define-method is_owner
-  (of-object "GMainContext")
-  (c-name "g_main_context_is_owner")
+(define-method free
+  (of-object "GError")
+  (c-name "g_error_free")
+  (return-type "void")
+)
+
+(define-method matches
+  (of-object "GError")
+  (c-name "g_error_matches")
   (return-type "gboolean")
+  (parameters
+    '("GQuark" "domain")
+    '("gint" "code")
+  )
 )
 
-(define-method wait
-  (of-object "GMainContext")
-  (c-name "g_main_context_wait")
+(define-function g_hash_table_add
+  (c-name "g_hash_table_add")
   (return-type "gboolean")
   (parameters
-    '("GCond*" "cond")
-    '("GMutex*" "mutex")
+    '("GHashTable*" "hash_table")
+    '("gpointer" "key")
   )
 )
 
-(define-method prepare
-  (of-object "GMainContext")
-  (c-name "g_main_context_prepare")
+(define-function g_hash_table_contains
+  (c-name "g_hash_table_contains")
   (return-type "gboolean")
   (parameters
-    '("gint*" "priority")
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
   )
 )
 
-(define-method query
-  (of-object "GMainContext")
-  (c-name "g_main_context_query")
-  (return-type "gint")
+(define-function g_hash_table_destroy
+  (c-name "g_hash_table_destroy")
+  (return-type "void")
   (parameters
-    '("gint" "max_priority")
-    '("gint*" "timeout_")
-    '("GPollFD*" "fds")
-    '("gint" "n_fds")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method check
-  (of-object "GMainContext")
-  (c-name "g_main_context_check")
-  (return-type "gint")
+(define-function g_hash_table_find
+  (c-name "g_hash_table_find")
+  (return-type "gpointer")
   (parameters
-    '("gint" "max_priority")
-    '("GPollFD*" "fds")
-    '("gint" "n_fds")
+    '("GHashTable*" "hash_table")
+    '("GHRFunc" "predicate")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method dispatch
-  (of-object "GMainContext")
-  (c-name "g_main_context_dispatch")
-  (return-type "none")
+(define-function g_hash_table_foreach
+  (c-name "g_hash_table_foreach")
+  (return-type "void")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("GHFunc" "func")
+    '("gpointer" "user_data")
+  )
 )
 
-(define-method set_poll_func
-  (of-object "GMainContext")
-  (c-name "g_main_context_set_poll_func")
-  (return-type "none")
+(define-function g_hash_table_foreach_remove
+  (c-name "g_hash_table_foreach_remove")
+  (return-type "guint")
   (parameters
-    '("GPollFunc" "func")
+    '("GHashTable*" "hash_table")
+    '("GHRFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method get_poll_func
-  (of-object "GMainContext")
-  (c-name "g_main_context_get_poll_func")
-  (return-type "GPollFunc")
+(define-function g_hash_table_foreach_steal
+  (c-name "g_hash_table_foreach_steal")
+  (return-type "guint")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("GHRFunc" "func")
+    '("gpointer" "user_data")
+  )
 )
 
-(define-method add_poll
-  (of-object "GMainContext")
-  (c-name "g_main_context_add_poll")
-  (return-type "none")
+(define-function g_hash_table_get_keys
+  (c-name "g_hash_table_get_keys")
+  (return-type "GList*")
   (parameters
-    '("GPollFD*" "fd")
-    '("gint" "priority")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method remove_poll
-  (of-object "GMainContext")
-  (c-name "g_main_context_remove_poll")
-  (return-type "none")
+(define-function g_hash_table_get_keys_as_array
+  (c-name "g_hash_table_get_keys_as_array")
+  (return-type "gpointer*")
   (parameters
-    '("GPollFD*" "fd")
+    '("GHashTable*" "hash_table")
+    '("guint*" "length")
   )
 )
 
-(define-function g_main_depth
-  (c-name "g_main_depth")
-  (return-type "gint")
+(define-function g_hash_table_get_values
+  (c-name "g_hash_table_get_values")
+  (return-type "GList*")
+  (parameters
+    '("GHashTable*" "hash_table")
+  )
 )
 
-(define-function g_main_current_source
-  (c-name "g_main_current_source")
-  (return-type "GSource*")
+(define-function g_hash_table_insert
+  (c-name "g_hash_table_insert")
+  (return-type "gboolean")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gpointer" "key")
+    '("gpointer" "value")
+  )
 )
 
-(define-method push_thread_default
-  (of-object "GMainContext")
-  (c-name "g_main_context_push_thread_default")
-  (return-type "none")
+(define-function g_hash_table_lookup
+  (c-name "g_hash_table_lookup")
+  (return-type "gpointer")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
+  )
 )
 
-(define-method pop_thread_default
-  (of-object "GMainContext")
-  (c-name "g_main_context_pop_thread_default")
-  (return-type "none")
+(define-function g_hash_table_lookup_extended
+  (c-name "g_hash_table_lookup_extended")
+  (return-type "gboolean")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "lookup_key")
+    '("gpointer*" "orig_key")
+    '("gpointer*" "value")
+  )
 )
 
-(define-function g_main_context_get_thread_default
-  (c-name "g_main_context_get_thread_default")
-  (return-type "GMainContext*")
+(define-function g_hash_table_new
+  (c-name "g_hash_table_new")
+  (return-type "GHashTable*")
+  (parameters
+    '("GHashFunc" "hash_func")
+    '("GEqualFunc" "key_equal_func")
+  )
 )
 
-(define-function g_main_context_ref_thread_default
-  (c-name "g_main_context_ref_thread_default")
-  (return-type "GMainContext*")
+(define-function g_hash_table_new_full
+  (c-name "g_hash_table_new_full")
+  (return-type "GHashTable*")
+  (parameters
+    '("GHashFunc" "hash_func")
+    '("GEqualFunc" "key_equal_func")
+    '("GDestroyNotify" "key_destroy_func")
+    '("GDestroyNotify" "value_destroy_func")
+  )
 )
 
-(define-function g_main_loop_new
-  (c-name "g_main_loop_new")
-  (is-constructor-of "GMainLoop")
-  (return-type "GMainLoop*")
+(define-function g_hash_table_ref
+  (c-name "g_hash_table_ref")
+  (return-type "GHashTable*")
   (parameters
-    '("GMainContext*" "context")
-    '("gboolean" "is_running")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method run
-  (of-object "GMainLoop")
-  (c-name "g_main_loop_run")
-  (return-type "none")
+(define-function g_hash_table_remove
+  (c-name "g_hash_table_remove")
+  (return-type "gboolean")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
+  )
 )
 
-(define-method quit
-  (of-object "GMainLoop")
-  (c-name "g_main_loop_quit")
-  (return-type "none")
+(define-function g_hash_table_remove_all
+  (c-name "g_hash_table_remove_all")
+  (return-type "void")
+  (parameters
+    '("GHashTable*" "hash_table")
+  )
 )
 
-(define-method ref
-  (of-object "GMainLoop")
-  (c-name "g_main_loop_ref")
-  (return-type "GMainLoop*")
+(define-function g_hash_table_replace
+  (c-name "g_hash_table_replace")
+  (return-type "gboolean")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gpointer" "key")
+    '("gpointer" "value")
+  )
 )
 
-(define-method unref
-  (of-object "GMainLoop")
-  (c-name "g_main_loop_unref")
-  (return-type "none")
+(define-function g_hash_table_size
+  (c-name "g_hash_table_size")
+  (return-type "guint")
+  (parameters
+    '("GHashTable*" "hash_table")
+  )
 )
 
-(define-method is_running
-  (of-object "GMainLoop")
-  (c-name "g_main_loop_is_running")
+(define-function g_hash_table_steal
+  (c-name "g_hash_table_steal")
   (return-type "gboolean")
+  (parameters
+    '("GHashTable*" "hash_table")
+    '("gconstpointer" "key")
+  )
 )
 
-(define-method get_context
-  (of-object "GMainLoop")
-  (c-name "g_main_loop_get_context")
-  (return-type "GMainContext*")
+(define-function g_hash_table_steal_all
+  (c-name "g_hash_table_steal_all")
+  (return-type "void")
+  (parameters
+    '("GHashTable*" "hash_table")
+  )
 )
 
-(define-function g_source_new
-  (c-name "g_source_new")
-  (is-constructor-of "GSource")
-  (return-type "GSource*")
+(define-function g_hash_table_unref
+  (c-name "g_hash_table_unref")
+  (return-type "void")
   (parameters
-    '("GSourceFuncs*" "source_funcs")
-    '("guint" "struct_size")
+    '("GHashTable*" "hash_table")
   )
 )
 
-(define-method ref
-  (of-object "GSource")
-  (c-name "g_source_ref")
-  (return-type "GSource*")
+(define-method get_hash_table
+  (of-object "GHashTableIter")
+  (c-name "g_hash_table_iter_get_hash_table")
+  (return-type "GHashTable*")
 )
 
-(define-method unref
-  (of-object "GSource")
-  (c-name "g_source_unref")
-  (return-type "none")
+(define-method init
+  (of-object "GHashTableIter")
+  (c-name "g_hash_table_iter_init")
+  (return-type "void")
+  (parameters
+    '("GHashTable*" "hash_table")
+  )
 )
 
-(define-method attach
-  (of-object "GSource")
-  (c-name "g_source_attach")
-  (return-type "guint")
+(define-method next
+  (of-object "GHashTableIter")
+  (c-name "g_hash_table_iter_next")
+  (return-type "gboolean")
   (parameters
-    '("GMainContext*" "context")
+    '("gpointer*" "key")
+    '("gpointer*" "value")
   )
 )
 
-(define-method destroy
-  (of-object "GSource")
-  (c-name "g_source_destroy")
-  (return-type "none")
+(define-method remove
+  (of-object "GHashTableIter")
+  (c-name "g_hash_table_iter_remove")
+  (return-type "void")
 )
 
-(define-method set_priority
-  (of-object "GSource")
-  (c-name "g_source_set_priority")
-  (return-type "none")
+(define-method replace
+  (of-object "GHashTableIter")
+  (c-name "g_hash_table_iter_replace")
+  (return-type "void")
   (parameters
-    '("gint" "priority")
+    '("gpointer" "value")
   )
 )
 
-(define-method get_priority
-  (of-object "GSource")
-  (c-name "g_source_get_priority")
-  (return-type "gint")
+(define-method steal
+  (of-object "GHashTableIter")
+  (c-name "g_hash_table_iter_steal")
+  (return-type "void")
 )
 
-(define-method set_can_recurse
-  (of-object "GSource")
-  (c-name "g_source_set_can_recurse")
-  (return-type "none")
+(define-method copy
+  (of-object "GHmac")
+  (c-name "g_hmac_copy")
+  (return-type "GHmac*")
+)
+
+(define-method get_digest
+  (of-object "GHmac")
+  (c-name "g_hmac_get_digest")
+  (return-type "void")
   (parameters
-    '("gboolean" "can_recurse")
+    '("guint8*" "buffer")
+    '("gsize*" "digest_len")
   )
 )
 
-(define-method get_can_recurse
-  (of-object "GSource")
-  (c-name "g_source_get_can_recurse")
-  (return-type "gboolean")
+(define-method get_string
+  (of-object "GHmac")
+  (c-name "g_hmac_get_string")
+  (return-type "const-gchar*")
 )
 
-(define-method get_id
-  (of-object "GSource")
-  (c-name "g_source_get_id")
-  (return-type "guint")
+(define-method ref
+  (of-object "GHmac")
+  (c-name "g_hmac_ref")
+  (return-type "GHmac*")
 )
 
-(define-method get_context
-  (of-object "GSource")
-  (c-name "g_source_get_context")
-  (return-type "GMainContext*")
+(define-method unref
+  (of-object "GHmac")
+  (c-name "g_hmac_unref")
+  (return-type "void")
 )
 
-(define-method set_callback
-  (of-object "GSource")
-  (c-name "g_source_set_callback")
-  (return-type "none")
+(define-method update
+  (of-object "GHmac")
+  (c-name "g_hmac_update")
+  (return-type "void")
   (parameters
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("guchar*" "data")
+    '("gssize" "length")
   )
 )
 
-(define-method set_funcs
-  (of-object "GSource")
-  (c-name "g_source_set_funcs")
-  (return-type "none")
+(define-function g_hmac_new
+  (c-name "g_hmac_new")
+  (return-type "GHmac*")
   (parameters
-    '("GSourceFuncs*" "funcs")
+    '("GChecksumType" "digest_type")
+    '("guchar*" "key")
+    '("gsize" "key_len")
   )
 )
 
-(define-method is_destroyed
-  (of-object "GSource")
-  (c-name "g_source_is_destroyed")
+(define-method compare_ids
+  (of-object "GHook")
+  (c-name "g_hook_compare_ids")
+  (return-type "gint")
+  (parameters
+    '("GHook*" "sibling")
+  )
+)
+
+(define-function g_hook_alloc
+  (c-name "g_hook_alloc")
+  (return-type "GHook*")
+  (parameters
+    '("GHookList*" "hook_list")
+  )
+)
+
+(define-function g_hook_destroy
+  (c-name "g_hook_destroy")
   (return-type "gboolean")
+  (parameters
+    '("GHookList*" "hook_list")
+    '("gulong" "hook_id")
+  )
 )
 
-(define-method set_name
-  (of-object "GSource")
-  (c-name "g_source_set_name")
-  (return-type "none")
+(define-function g_hook_destroy_link
+  (c-name "g_hook_destroy_link")
+  (return-type "void")
   (parameters
-    '("const-char*" "name")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method get_name
-  (of-object "GSource")
-  (c-name "g_source_get_name")
-  (return-type "const-char*")
+(define-function g_hook_find
+  (c-name "g_hook_find")
+  (return-type "GHook*")
+  (parameters
+    '("GHookList*" "hook_list")
+    '("gboolean" "need_valids")
+    '("GHookFindFunc" "func")
+    '("gpointer" "data")
+  )
 )
 
-(define-function g_source_set_name_by_id
-  (c-name "g_source_set_name_by_id")
-  (return-type "none")
+(define-function g_hook_find_data
+  (c-name "g_hook_find_data")
+  (return-type "GHook*")
   (parameters
-    '("guint" "tag")
-    '("const-char*" "name")
+    '("GHookList*" "hook_list")
+    '("gboolean" "need_valids")
+    '("gpointer" "data")
   )
 )
 
-(define-method set_ready_time
-  (of-object "GSource")
-  (c-name "g_source_set_ready_time")
-  (return-type "none")
+(define-function g_hook_find_func
+  (c-name "g_hook_find_func")
+  (return-type "GHook*")
   (parameters
-    '("gint64" "ready_time")
+    '("GHookList*" "hook_list")
+    '("gboolean" "need_valids")
+    '("gpointer" "func")
   )
 )
 
-(define-method get_ready_time
-  (of-object "GSource")
-  (c-name "g_source_get_ready_time")
-  (return-type "gint64")
+(define-function g_hook_find_func_data
+  (c-name "g_hook_find_func_data")
+  (return-type "GHook*")
+  (parameters
+    '("GHookList*" "hook_list")
+    '("gboolean" "need_valids")
+    '("gpointer" "func")
+    '("gpointer" "data")
+  )
 )
 
-(define-method add_unix_fd
-  (of-object "GSource")
-  (c-name "g_source_add_unix_fd")
-  (return-type "gpointer")
+(define-function g_hook_first_valid
+  (c-name "g_hook_first_valid")
+  (return-type "GHook*")
   (parameters
-    '("gint" "fd")
-    '("GIOCondition" "events")
+    '("GHookList*" "hook_list")
+    '("gboolean" "may_be_in_call")
   )
 )
 
-(define-method modify_unix_fd
-  (of-object "GSource")
-  (c-name "g_source_modify_unix_fd")
-  (return-type "none")
+(define-function g_hook_free
+  (c-name "g_hook_free")
+  (return-type "void")
   (parameters
-    '("gpointer" "tag")
-    '("GIOCondition" "new_events")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method remove_unix_fd
-  (of-object "GSource")
-  (c-name "g_source_remove_unix_fd")
-  (return-type "none")
+(define-function g_hook_get
+  (c-name "g_hook_get")
+  (return-type "GHook*")
   (parameters
-    '("gpointer" "tag")
+    '("GHookList*" "hook_list")
+    '("gulong" "hook_id")
   )
 )
 
-(define-method query_unix_fd
-  (of-object "GSource")
-  (c-name "g_source_query_unix_fd")
-  (return-type "GIOCondition")
+(define-function g_hook_insert_before
+  (c-name "g_hook_insert_before")
+  (return-type "void")
   (parameters
-    '("gpointer" "tag")
+    '("GHookList*" "hook_list")
+    '("GHook*" "sibling")
+    '("GHook*" "hook")
   )
 )
 
-(define-method set_callback_indirect
-  (of-object "GSource")
-  (c-name "g_source_set_callback_indirect")
-  (return-type "none")
+(define-function g_hook_insert_sorted
+  (c-name "g_hook_insert_sorted")
+  (return-type "void")
   (parameters
-    '("gpointer" "callback_data")
-    '("GSourceCallbackFuncs*" "callback_funcs")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
+    '("GHookCompareFunc" "func")
   )
 )
 
-(define-method add_poll
-  (of-object "GSource")
-  (c-name "g_source_add_poll")
-  (return-type "none")
+(define-function g_hook_next_valid
+  (c-name "g_hook_next_valid")
+  (return-type "GHook*")
   (parameters
-    '("GPollFD*" "fd")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
+    '("gboolean" "may_be_in_call")
   )
 )
 
-(define-method remove_poll
-  (of-object "GSource")
-  (c-name "g_source_remove_poll")
-  (return-type "none")
+(define-function g_hook_prepend
+  (c-name "g_hook_prepend")
+  (return-type "void")
   (parameters
-    '("GPollFD*" "fd")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method add_child_source
-  (of-object "GSource")
-  (c-name "g_source_add_child_source")
-  (return-type "none")
+(define-function g_hook_ref
+  (c-name "g_hook_ref")
+  (return-type "GHook*")
   (parameters
-    '("GSource*" "child_source")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method remove_child_source
-  (of-object "GSource")
-  (c-name "g_source_remove_child_source")
-  (return-type "none")
+(define-function g_hook_unref
+  (c-name "g_hook_unref")
+  (return-type "void")
   (parameters
-    '("GSource*" "child_source")
+    '("GHookList*" "hook_list")
+    '("GHook*" "hook")
   )
 )
 
-(define-method get_current_time
-  (of-object "GSource")
-  (c-name "g_source_get_current_time")
-  (return-type "none")
+(define-method clear
+  (of-object "GHookList")
+  (c-name "g_hook_list_clear")
+  (return-type "void")
+)
+
+(define-method init
+  (of-object "GHookList")
+  (c-name "g_hook_list_init")
+  (return-type "void")
   (parameters
-    '("GTimeVal*" "timeval")
+    '("guint" "hook_size")
   )
 )
 
-(define-method get_time
-  (of-object "GSource")
-  (c-name "g_source_get_time")
-  (return-type "gint64")
+(define-method invoke
+  (of-object "GHookList")
+  (c-name "g_hook_list_invoke")
+  (return-type "void")
+  (parameters
+    '("gboolean" "may_recurse")
+  )
 )
 
-(define-function g_idle_source_new
-  (c-name "g_idle_source_new")
-  (is-constructor-of "GIdleSource")
-  (return-type "GSource*")
+(define-method invoke_check
+  (of-object "GHookList")
+  (c-name "g_hook_list_invoke_check")
+  (return-type "void")
+  (parameters
+    '("gboolean" "may_recurse")
+  )
 )
 
-(define-function g_child_watch_source_new
-  (c-name "g_child_watch_source_new")
-  (is-constructor-of "GChildWatchSource")
-  (return-type "GSource*")
+(define-method marshal
+  (of-object "GHookList")
+  (c-name "g_hook_list_marshal")
+  (return-type "void")
   (parameters
-    '("GPid" "pid")
+    '("gboolean" "may_recurse")
+    '("GHookMarshaller" "marshaller")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_timeout_source_new
-  (c-name "g_timeout_source_new")
-  (is-constructor-of "GTimeoutSource")
-  (return-type "GSource*")
+(define-method marshal_check
+  (of-object "GHookList")
+  (c-name "g_hook_list_marshal_check")
+  (return-type "void")
   (parameters
-    '("guint" "interval")
+    '("gboolean" "may_recurse")
+    '("GHookCheckMarshaller" "marshaller")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_timeout_source_new_seconds
-  (c-name "g_timeout_source_new_seconds")
-  (return-type "GSource*")
+(define-function g_iconv
+  (c-name "g_iconv")
+  (return-type "gsize")
   (parameters
-    '("guint" "interval")
+    '("GIConv" "converter")
+    '("gchar**" "inbuf")
+    '("gsize*" "inbytes_left")
+    '("gchar**" "outbuf")
+    '("gsize*" "outbytes_left")
   )
 )
 
-(define-function g_get_current_time
-  (c-name "g_get_current_time")
-  (return-type "none")
+(define-function g_iconv_close
+  (c-name "g_iconv_close")
+  (return-type "gint")
   (parameters
-    '("GTimeVal*" "result")
+    '("GIConv" "converter")
   )
 )
 
-(define-function g_get_monotonic_time
-  (c-name "g_get_monotonic_time")
-  (return-type "gint64")
+(define-function g_iconv_open
+  (c-name "g_iconv_open")
+  (return-type "GIConv")
+  (parameters
+    '("const-gchar*" "to_codeset")
+    '("const-gchar*" "from_codeset")
+  )
 )
 
-(define-function g_get_real_time
-  (c-name "g_get_real_time")
-  (return-type "gint64")
+(define-function g_io_channel_new_file
+  (c-name "g_io_channel_new_file")
+  (return-type "GIOChannel*")
+  (parameters
+    '("gchar*" "filename")
+    '("const-gchar*" "mode")
+    '("GError**" "error")
+  )
 )
 
-(define-function g_source_remove
-  (c-name "g_source_remove")
-  (return-type "gboolean")
+(define-function g_io_channel_unix_new
+  (c-name "g_io_channel_unix_new")
+  (return-type "GIOChannel*")
   (parameters
-    '("guint" "tag")
+    '("int" "fd")
   )
 )
 
-(define-function g_source_remove_by_user_data
-  (c-name "g_source_remove_by_user_data")
-  (return-type "gboolean")
+(define-method close
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_close")
+  (return-type "void")
+)
+
+(define-method flush
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_flush")
+  (return-type "GIOStatus")
   (parameters
-    '("gpointer" "user_data")
+    '("GError**" "error")
   )
 )
 
-(define-function g_source_remove_by_funcs_user_data
-  (c-name "g_source_remove_by_funcs_user_data")
+(define-method get_buffer_condition
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_buffer_condition")
+  (return-type "GIOCondition")
+)
+
+(define-method get_buffer_size
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_buffer_size")
+  (return-type "gsize")
+)
+
+(define-method get_buffered
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_buffered")
   (return-type "gboolean")
+)
+
+(define-method get_close_on_unref
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_close_on_unref")
+  (return-type "gboolean")
+)
+
+(define-method get_encoding
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_encoding")
+  (return-type "const-gchar*")
+)
+
+(define-method get_flags
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_flags")
+  (return-type "GIOFlags")
+)
+
+(define-method get_line_term
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_get_line_term")
+  (return-type "const-gchar*")
   (parameters
-    '("GSourceFuncs*" "funcs")
-    '("gpointer" "user_data")
+    '("gint*" "length")
   )
 )
 
-(define-function g_timeout_add_full
-  (c-name "g_timeout_add_full")
-  (return-type "guint")
+(define-method init
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_init")
+  (return-type "void")
+)
+
+(define-method read
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_read")
+  (return-type "GIOError")
   (parameters
-    '("gint" "priority")
-    '("guint" "interval")
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("gchar*" "buf")
+    '("gsize" "count")
+    '("gsize*" "bytes_read")
   )
 )
 
-(define-function g_timeout_add
-  (c-name "g_timeout_add")
-  (return-type "guint")
+(define-method read_chars
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_read_chars")
+  (return-type "GIOStatus")
   (parameters
-    '("guint" "interval")
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
+    '("gchar*" "buf")
+    '("gsize" "count")
+    '("gsize*" "bytes_read")
+    '("GError**" "error")
   )
 )
 
-(define-function g_timeout_add_seconds_full
-  (c-name "g_timeout_add_seconds_full")
-  (return-type "guint")
+(define-method read_line
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_read_line")
+  (return-type "GIOStatus")
   (parameters
-    '("gint" "priority")
-    '("guint" "interval")
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("gchar**" "str_return")
+    '("gsize*" "length")
+    '("gsize*" "terminator_pos")
+    '("GError**" "error")
   )
 )
 
-(define-function g_timeout_add_seconds
-  (c-name "g_timeout_add_seconds")
-  (return-type "guint")
+(define-method read_line_string
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_read_line_string")
+  (return-type "GIOStatus")
   (parameters
-    '("guint" "interval")
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
+    '("GString*" "buffer")
+    '("gsize*" "terminator_pos")
+    '("GError**" "error")
   )
 )
 
-(define-function g_child_watch_add_full
-  (c-name "g_child_watch_add_full")
-  (return-type "guint")
+(define-method read_to_end
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_read_to_end")
+  (return-type "GIOStatus")
   (parameters
-    '("gint" "priority")
-    '("GPid" "pid")
-    '("GChildWatchFunc" "function")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("gchar**" "str_return")
+    '("gsize*" "length")
+    '("GError**" "error")
   )
 )
 
-(define-function g_child_watch_add
-  (c-name "g_child_watch_add")
-  (return-type "guint")
+(define-method read_unichar
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_read_unichar")
+  (return-type "GIOStatus")
   (parameters
-    '("GPid" "pid")
-    '("GChildWatchFunc" "function")
-    '("gpointer" "data")
+    '("gunichar*" "thechar")
+    '("GError**" "error")
   )
 )
 
-(define-function g_idle_add
-  (c-name "g_idle_add")
-  (return-type "guint")
+(define-method ref
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_ref")
+  (return-type "GIOChannel*")
+)
+
+(define-method seek
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_seek")
+  (return-type "GIOError")
   (parameters
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
+    '("gint64" "offset")
+    '("GSeekType" "type")
   )
 )
 
-(define-function g_idle_add_full
-  (c-name "g_idle_add_full")
-  (return-type "guint")
+(define-method seek_position
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_seek_position")
+  (return-type "GIOStatus")
   (parameters
-    '("gint" "priority")
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("gint64" "offset")
+    '("GSeekType" "type")
+    '("GError**" "error")
   )
 )
 
-(define-function g_idle_remove_by_data
-  (c-name "g_idle_remove_by_data")
-  (return-type "gboolean")
+(define-method set_buffer_size
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_set_buffer_size")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
+    '("gsize" "size")
   )
 )
 
-(define-method invoke_full
-  (of-object "GMainContext")
-  (c-name "g_main_context_invoke_full")
-  (return-type "none")
+(define-method set_buffered
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_set_buffered")
+  (return-type "void")
   (parameters
-    '("gint" "priority")
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("gboolean" "buffered")
   )
 )
 
-(define-method invoke
-  (of-object "GMainContext")
-  (c-name "g_main_context_invoke")
-  (return-type "none")
+(define-method set_close_on_unref
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_set_close_on_unref")
+  (return-type "void")
   (parameters
-    '("GSourceFunc" "function")
-    '("gpointer" "data")
+    '("gboolean" "do_close")
+  )
+)
+
+(define-method set_encoding
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_set_encoding")
+  (return-type "GIOStatus")
+  (parameters
+    '("const-gchar*" "encoding")
+    '("GError**" "error")
   )
 )
 
+(define-method set_flags
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_set_flags")
+  (return-type "GIOStatus")
+  (parameters
+    '("GIOFlags" "flags")
+    '("GError**" "error")
+  )
+)
 
+(define-method set_line_term
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_set_line_term")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "line_term")
+    '("gint" "length")
+  )
+)
 
-;; From gmain-internal.h
+(define-method shutdown
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_shutdown")
+  (return-type "GIOStatus")
+  (parameters
+    '("gboolean" "flush")
+    '("GError**" "error")
+  )
+)
 
+(define-method unix_get_fd
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_unix_get_fd")
+  (return-type "gint")
+)
 
+(define-method unref
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_unref")
+  (return-type "void")
+)
 
-;; From gmappedfile.h
+(define-method write
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_write")
+  (return-type "GIOError")
+  (parameters
+    '("const-gchar*" "buf")
+    '("gsize" "count")
+    '("gsize*" "bytes_written")
+  )
+)
 
-(define-function g_mapped_file_new
-  (c-name "g_mapped_file_new")
-  (is-constructor-of "GMappedFile")
-  (return-type "GMappedFile*")
+(define-method write_chars
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_write_chars")
+  (return-type "GIOStatus")
   (parameters
-    '("const-gchar*" "filename")
-    '("gboolean" "writable")
+    '("const-gchar*" "buf")
+    '("gssize" "count")
+    '("gsize*" "bytes_written")
     '("GError**" "error")
   )
 )
 
-(define-function g_mapped_file_new_from_fd
-  (c-name "g_mapped_file_new_from_fd")
-  (return-type "GMappedFile*")
+(define-method write_unichar
+  (of-object "GIOChannel")
+  (c-name "g_io_channel_write_unichar")
+  (return-type "GIOStatus")
   (parameters
-    '("gint" "fd")
-    '("gboolean" "writable")
+    '("gunichar" "thechar")
     '("GError**" "error")
   )
 )
 
-(define-method get_length
-  (of-object "GMappedFile")
-  (c-name "g_mapped_file_get_length")
-  (return-type "gsize")
+(define-function g_io_channel_error_from_errno
+  (c-name "g_io_channel_error_from_errno")
+  (return-type "GIOChannelError")
+  (parameters
+    '("gint" "en")
+  )
 )
 
-(define-method get_contents
-  (of-object "GMappedFile")
-  (c-name "g_mapped_file_get_contents")
+(define-function g_io_channel_error_quark
+  (c-name "g_io_channel_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_key_file_new
+  (c-name "g_key_file_new")
+  (return-type "GKeyFile*")
+)
+
+(define-method free
+  (of-object "GKeyFile")
+  (c-name "g_key_file_free")
+  (return-type "void")
+)
+
+(define-method get_boolean
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_boolean")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_boolean_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_boolean_list")
+  (return-type "gboolean*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gsize*" "length")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_comment
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_comment")
   (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
 )
 
-(define-method get_bytes
-  (of-object "GMappedFile")
-  (c-name "g_mapped_file_get_bytes")
-  (return-type "GBytes*")
+(define-method get_double
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_double")
+  (return-type "gdouble")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
 )
 
-(define-method ref
-  (of-object "GMappedFile")
-  (c-name "g_mapped_file_ref")
-  (return-type "GMappedFile*")
+(define-method get_double_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_double_list")
+  (return-type "gdouble*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gsize*" "length")
+    '("GError**" "error")
+  )
 )
 
-(define-method unref
-  (of-object "GMappedFile")
-  (c-name "g_mapped_file_unref")
-  (return-type "none")
+(define-method get_groups
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_groups")
+  (return-type "gchar**")
+  (parameters
+    '("gsize*" "length")
+  )
 )
 
-(define-method free
-  (of-object "GMappedFile")
-  (c-name "g_mapped_file_free")
-  (return-type "none")
+(define-method get_int64
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_int64")
+  (return-type "gint64")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
 )
 
+(define-method get_integer
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_integer")
+  (return-type "gint")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
+)
 
+(define-method get_integer_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_integer_list")
+  (return-type "gint*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gsize*" "length")
+    '("GError**" "error")
+  )
+)
 
-;; From gmarkup.h
+(define-method get_keys
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_keys")
+  (return-type "gchar**")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("gsize*" "length")
+    '("GError**" "error")
+  )
+)
 
-(define-function g_markup_error_quark
-  (c-name "g_markup_error_quark")
-  (return-type "GQuark")
+(define-method get_locale_string
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_locale_string")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "locale")
+    '("GError**" "error")
+  )
 )
 
-(define-function g_markup_parse_context_new
-  (c-name "g_markup_parse_context_new")
-  (is-constructor-of "GMarkupParseContext")
-  (return-type "GMarkupParseContext*")
+(define-method get_locale_string_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_locale_string_list")
+  (return-type "gchar**")
   (parameters
-    '("const-GMarkupParser*" "parser")
-    '("GMarkupParseFlags" "flags")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "user_data_dnotify")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "locale")
+    '("gsize*" "length")
+    '("GError**" "error")
   )
 )
 
-(define-method ref
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_ref")
-  (return-type "GMarkupParseContext*")
+(define-method get_start_group
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_start_group")
+  (return-type "gchar*")
 )
 
-(define-method unref
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_unref")
-  (return-type "none")
+(define-method get_string
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_string")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
 )
 
-(define-method free
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_free")
-  (return-type "none")
+(define-method get_string_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_string_list")
+  (return-type "gchar**")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gsize*" "length")
+    '("GError**" "error")
+  )
 )
 
-(define-method parse
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_parse")
+(define-method get_uint64
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_uint64")
+  (return-type "guint64")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
+)
+
+(define-method get_value
+  (of-object "GKeyFile")
+  (c-name "g_key_file_get_value")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
+  )
+)
+
+(define-method has_group
+  (of-object "GKeyFile")
+  (c-name "g_key_file_has_group")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "text")
-    '("gssize" "text_len")
+    '("const-gchar*" "group_name")
+  )
+)
+
+(define-method has_key
+  (of-object "GKeyFile")
+  (c-name "g_key_file_has_key")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
     '("GError**" "error")
   )
 )
 
-(define-method push
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_push")
-  (return-type "none")
+(define-method load_from_bytes
+  (of-object "GKeyFile")
+  (c-name "g_key_file_load_from_bytes")
+  (return-type "gboolean")
   (parameters
-    '("const-GMarkupParser*" "parser")
-    '("gpointer" "user_data")
+    '("GBytes*" "bytes")
+    '("GKeyFileFlags" "flags")
+    '("GError**" "error")
   )
 )
 
-(define-method pop
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_pop")
-  (return-type "gpointer")
+(define-method load_from_data
+  (of-object "GKeyFile")
+  (c-name "g_key_file_load_from_data")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "data")
+    '("gsize" "length")
+    '("GKeyFileFlags" "flags")
+    '("GError**" "error")
+  )
 )
 
-(define-method end_parse
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_end_parse")
+(define-method load_from_data_dirs
+  (of-object "GKeyFile")
+  (c-name "g_key_file_load_from_data_dirs")
   (return-type "gboolean")
   (parameters
+    '("gchar*" "file")
+    '("gchar**" "full_path")
+    '("GKeyFileFlags" "flags")
     '("GError**" "error")
   )
 )
 
-(define-method get_element
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_get_element")
-  (return-type "const-gchar*")
+(define-method load_from_dirs
+  (of-object "GKeyFile")
+  (c-name "g_key_file_load_from_dirs")
+  (return-type "gboolean")
+  (parameters
+    '("gchar*" "file")
+    '("const-gchar**" "search_dirs")
+    '("gchar**" "full_path")
+    '("GKeyFileFlags" "flags")
+    '("GError**" "error")
+  )
 )
 
-(define-method get_element_stack
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_get_element_stack")
-  (return-type "const-GSList*")
+(define-method load_from_file
+  (of-object "GKeyFile")
+  (c-name "g_key_file_load_from_file")
+  (return-type "gboolean")
+  (parameters
+    '("gchar*" "file")
+    '("GKeyFileFlags" "flags")
+    '("GError**" "error")
+  )
 )
 
-(define-method get_position
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_get_position")
-  (return-type "none")
+(define-method ref
+  (of-object "GKeyFile")
+  (c-name "g_key_file_ref")
+  (return-type "GKeyFile*")
+)
+
+(define-method remove_comment
+  (of-object "GKeyFile")
+  (c-name "g_key_file_remove_comment")
+  (return-type "gboolean")
   (parameters
-    '("gint*" "line_number")
-    '("gint*" "char_number")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
   )
 )
 
-(define-method get_user_data
-  (of-object "GMarkupParseContext")
-  (c-name "g_markup_parse_context_get_user_data")
-  (return-type "gpointer")
+(define-method remove_group
+  (of-object "GKeyFile")
+  (c-name "g_key_file_remove_group")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("GError**" "error")
+  )
 )
 
-(define-function g_markup_escape_text
-  (c-name "g_markup_escape_text")
-  (return-type "gchar*")
+(define-method remove_key
+  (of-object "GKeyFile")
+  (c-name "g_key_file_remove_key")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "text")
-    '("gssize" "length")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("GError**" "error")
   )
 )
 
-(define-function g_markup_printf_escaped
-  (c-name "g_markup_printf_escaped")
-  (return-type "gchar*")
+(define-method save_to_file
+  (of-object "GKeyFile")
+  (c-name "g_key_file_save_to_file")
+  (return-type "gboolean")
   (parameters
-    '("const-char*" "format")
+    '("const-gchar*" "filename")
+    '("GError**" "error")
   )
-  (varargs #t)
 )
 
-(define-function g_markup_vprintf_escaped
-  (c-name "g_markup_vprintf_escaped")
-  (return-type "gchar*")
+(define-method set_boolean
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_boolean")
+  (return-type "void")
   (parameters
-    '("const-char*" "format")
-    '("va_list" "args")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gboolean" "value")
   )
 )
 
-(define-function g_markup_collect_attributes
-  (c-name "g_markup_collect_attributes")
+(define-method set_boolean_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_boolean_list")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gboolean" "list")
+    '("gsize" "length")
+  )
+)
+
+(define-method set_comment
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_comment")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "element_name")
-    '("const-gchar**" "attribute_names")
-    '("const-gchar**" "attribute_values")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "comment")
     '("GError**" "error")
-    '("GMarkupCollectType" "first_type")
-    '("const-gchar*" "first_attr")
   )
-  (varargs #t)
 )
 
+(define-method set_double
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_double")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gdouble" "value")
+  )
+)
 
+(define-method set_double_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_double_list")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gdouble" "list")
+    '("gsize" "length")
+  )
+)
 
-;; From gmem.h
+(define-method set_int64
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_int64")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gint64" "value")
+  )
+)
 
-(define-function g_free
-  (c-name "g_free")
-  (return-type "none")
+(define-method set_integer
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_integer")
+  (return-type "void")
   (parameters
-    '("gpointer" "mem")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gint" "value")
   )
 )
 
-(define-function g_clear_pointer
-  (c-name "g_clear_pointer")
-  (return-type "none")
+(define-method set_integer_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_integer_list")
+  (return-type "void")
   (parameters
-    '("gpointer*" "pp")
-    '("GDestroyNotify" "destroy")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gint" "list")
+    '("gsize" "length")
   )
 )
 
-(define-function g_malloc
-  (c-name "g_malloc")
-  (return-type "gpointer")
+(define-method set_list_separator
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_list_separator")
+  (return-type "void")
   (parameters
-    '("gsize" "n_bytes")
+    '("gchar" "separator")
   )
 )
 
-(define-function g_malloc0
-  (c-name "g_malloc0")
-  (return-type "gpointer")
+(define-method set_locale_string
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_locale_string")
+  (return-type "void")
   (parameters
-    '("gsize" "n_bytes")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "locale")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_realloc
-  (c-name "g_realloc")
-  (return-type "gpointer")
+(define-method set_locale_string_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_locale_string_list")
+  (return-type "void")
   (parameters
-    '("gpointer" "mem")
-    '("gsize" "n_bytes")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "locale")
+    '("gchar*" "list")
+    '("gsize" "length")
   )
 )
 
-(define-function g_try_malloc
-  (c-name "g_try_malloc")
-  (return-type "gpointer")
+(define-method set_string
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_string")
+  (return-type "void")
   (parameters
-    '("gsize" "n_bytes")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_try_malloc0
-  (c-name "g_try_malloc0")
-  (return-type "gpointer")
+(define-method set_string_list
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_string_list")
+  (return-type "void")
   (parameters
-    '("gsize" "n_bytes")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("gchar*" "list")
+    '("gsize" "length")
   )
 )
 
-(define-function g_try_realloc
-  (c-name "g_try_realloc")
-  (return-type "gpointer")
+(define-method set_uint64
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_uint64")
+  (return-type "void")
   (parameters
-    '("gpointer" "mem")
-    '("gsize" "n_bytes")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("guint64" "value")
   )
 )
 
-(define-function g_malloc_n
-  (c-name "g_malloc_n")
-  (return-type "gpointer")
+(define-method set_value
+  (of-object "GKeyFile")
+  (c-name "g_key_file_set_value")
+  (return-type "void")
   (parameters
-    '("gsize" "n_blocks")
-    '("gsize" "n_block_bytes")
+    '("const-gchar*" "group_name")
+    '("const-gchar*" "key")
+    '("const-gchar*" "value")
   )
 )
 
-(define-function g_malloc0_n
-  (c-name "g_malloc0_n")
-  (return-type "gpointer")
+(define-method to_data
+  (of-object "GKeyFile")
+  (c-name "g_key_file_to_data")
+  (return-type "gchar*")
   (parameters
-    '("gsize" "n_blocks")
-    '("gsize" "n_block_bytes")
+    '("gsize*" "length")
+    '("GError**" "error")
   )
 )
 
-(define-function g_realloc_n
-  (c-name "g_realloc_n")
-  (return-type "gpointer")
+(define-method unref
+  (of-object "GKeyFile")
+  (c-name "g_key_file_unref")
+  (return-type "void")
+)
+
+(define-function g_key_file_error_quark
+  (c-name "g_key_file_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_list_alloc
+  (c-name "g_list_alloc")
+  (return-type "GList*")
+)
+
+(define-function g_list_append
+  (c-name "g_list_append")
+  (return-type "GList*")
   (parameters
-    '("gpointer" "mem")
-    '("gsize" "n_blocks")
-    '("gsize" "n_block_bytes")
+    '("GList*" "list")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_try_malloc_n
-  (c-name "g_try_malloc_n")
-  (return-type "gpointer")
+(define-function g_list_concat
+  (c-name "g_list_concat")
+  (return-type "GList*")
   (parameters
-    '("gsize" "n_blocks")
-    '("gsize" "n_block_bytes")
+    '("GList*" "list1")
+    '("GList*" "list2")
   )
 )
 
-(define-function g_try_malloc0_n
-  (c-name "g_try_malloc0_n")
-  (return-type "gpointer")
+(define-function g_list_copy
+  (c-name "g_list_copy")
+  (return-type "GList*")
   (parameters
-    '("gsize" "n_blocks")
-    '("gsize" "n_block_bytes")
+    '("GList*" "list")
   )
 )
 
-(define-function g_try_realloc_n
-  (c-name "g_try_realloc_n")
-  (return-type "gpointer")
+(define-function g_list_copy_deep
+  (c-name "g_list_copy_deep")
+  (return-type "GList*")
   (parameters
-    '("gpointer" "mem")
-    '("gsize" "n_blocks")
-    '("gsize" "n_block_bytes")
+    '("GList*" "list")
+    '("GCopyFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_steal_pointer
-  (c-name "g_steal_pointer")
-  (return-type "gpointer")
+(define-function g_list_delete_link
+  (c-name "g_list_delete_link")
+  (return-type "GList*")
   (parameters
-    '("gpointer" "pp")
+    '("GList*" "list")
+    '("GList*" "link_")
   )
 )
 
-(define-function g_mem_set_vtable
-  (c-name "g_mem_set_vtable")
-  (return-type "none")
+(define-function g_list_find
+  (c-name "g_list_find")
+  (return-type "GList*")
   (parameters
-    '("GMemVTable*" "vtable")
+    '("GList*" "list")
+    '("gconstpointer" "data")
   )
 )
 
-(define-function g_mem_is_system_malloc
-  (c-name "g_mem_is_system_malloc")
-  (return-type "gboolean")
+(define-function g_list_find_custom
+  (c-name "g_list_find_custom")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+    '("gconstpointer" "data")
+    '("GCompareFunc" "func")
+  )
 )
 
-(define-function g_mem_profile
-  (c-name "g_mem_profile")
-  (return-type "none")
+(define-function g_list_first
+  (c-name "g_list_first")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+  )
 )
 
+(define-function g_list_foreach
+  (c-name "g_list_foreach")
+  (return-type "void")
+  (parameters
+    '("GList*" "list")
+    '("GFunc" "func")
+    '("gpointer" "user_data")
+  )
+)
 
+(define-function g_list_free
+  (c-name "g_list_free")
+  (return-type "void")
+  (parameters
+    '("GList*" "list")
+  )
+)
 
-;; From gmessages.h
+(define-function g_list_free_1
+  (c-name "g_list_free_1")
+  (return-type "void")
+  (parameters
+    '("GList*" "list")
+  )
+)
 
-(define-function g_printf_string_upper_bound
-  (c-name "g_printf_string_upper_bound")
-  (return-type "gsize")
+(define-function g_list_free_full
+  (c-name "g_list_free_full")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format")
-    '("va_list" "args")
+    '("GList*" "list")
+    '("GDestroyNotify" "free_func")
   )
 )
 
-(define-function g_log_set_handler
-  (c-name "g_log_set_handler")
-  (return-type "guint")
+(define-function g_list_index
+  (c-name "g_list_index")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_levels")
-    '("GLogFunc" "log_func")
+    '("GList*" "list")
+    '("gconstpointer" "data")
+  )
+)
+
+(define-function g_list_insert
+  (c-name "g_list_insert")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+    '("gpointer" "data")
+    '("gint" "position")
+  )
+)
+
+(define-function g_list_insert_before
+  (c-name "g_list_insert_before")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+    '("GList*" "sibling")
+    '("gpointer" "data")
+  )
+)
+
+(define-function g_list_insert_sorted
+  (c-name "g_list_insert_sorted")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+    '("gpointer" "data")
+    '("GCompareFunc" "func")
+  )
+)
+
+(define-function g_list_insert_sorted_with_data
+  (c-name "g_list_insert_sorted_with_data")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+    '("gpointer" "data")
+    '("GCompareDataFunc" "func")
     '("gpointer" "user_data")
   )
 )
 
-(define-function g_log_set_handler_full
-  (c-name "g_log_set_handler_full")
+(define-function g_list_last
+  (c-name "g_list_last")
+  (return-type "GList*")
+  (parameters
+    '("GList*" "list")
+  )
+)
+
+(define-function g_list_length
+  (c-name "g_list_length")
   (return-type "guint")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_levels")
-    '("GLogFunc" "log_func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "destroy")
+    '("GList*" "list")
   )
 )
 
-(define-function g_log_remove_handler
-  (c-name "g_log_remove_handler")
-  (return-type "none")
+(define-function g_list_nth
+  (c-name "g_list_nth")
+  (return-type "GList*")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("guint" "handler_id")
+    '("GList*" "list")
+    '("guint" "n")
   )
 )
 
-(define-function g_log_default_handler
-  (c-name "g_log_default_handler")
-  (return-type "none")
+(define-function g_list_nth_data
+  (c-name "g_list_nth_data")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_level")
-    '("const-gchar*" "message")
-    '("gpointer" "unused_data")
+    '("GList*" "list")
+    '("guint" "n")
   )
 )
 
-(define-function g_log_set_default_handler
-  (c-name "g_log_set_default_handler")
-  (return-type "GLogFunc")
+(define-function g_list_nth_prev
+  (c-name "g_list_nth_prev")
+  (return-type "GList*")
   (parameters
-    '("GLogFunc" "log_func")
-    '("gpointer" "user_data")
+    '("GList*" "list")
+    '("guint" "n")
   )
 )
 
-(define-function g_log
-  (c-name "g_log")
-  (return-type "none")
+(define-function g_list_position
+  (c-name "g_list_position")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_level")
-    '("const-gchar*" "format")
+    '("GList*" "list")
+    '("GList*" "llink")
   )
-  (varargs #t)
 )
 
-(define-function g_logv
-  (c-name "g_logv")
-  (return-type "none")
+(define-function g_list_prepend
+  (c-name "g_list_prepend")
+  (return-type "GList*")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_level")
-    '("const-gchar*" "format")
-    '("va_list" "args")
+    '("GList*" "list")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_log_set_fatal_mask
-  (c-name "g_log_set_fatal_mask")
-  (return-type "GLogLevelFlags")
+(define-function g_list_remove
+  (c-name "g_list_remove")
+  (return-type "GList*")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "fatal_mask")
+    '("GList*" "list")
+    '("gconstpointer" "data")
   )
 )
 
-(define-function g_log_set_always_fatal
-  (c-name "g_log_set_always_fatal")
-  (return-type "GLogLevelFlags")
+(define-function g_list_remove_all
+  (c-name "g_list_remove_all")
+  (return-type "GList*")
   (parameters
-    '("GLogLevelFlags" "fatal_mask")
+    '("GList*" "list")
+    '("gconstpointer" "data")
   )
 )
 
-(define-function g_log_structured
-  (c-name "g_log_structured")
-  (return-type "none")
+(define-function g_list_remove_link
+  (c-name "g_list_remove_link")
+  (return-type "GList*")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_level")
+    '("GList*" "list")
+    '("GList*" "llink")
   )
-  (varargs #t)
 )
 
-(define-function g_log_structured_array
-  (c-name "g_log_structured_array")
-  (return-type "none")
+(define-function g_list_reverse
+  (c-name "g_list_reverse")
+  (return-type "GList*")
   (parameters
-    '("GLogLevelFlags" "log_level")
-    '("const-GLogField*" "fields")
-    '("gsize" "n_fields")
+    '("GList*" "list")
   )
 )
 
-(define-function g_log_variant
-  (c-name "g_log_variant")
-  (return-type "none")
+(define-function g_list_sort
+  (c-name "g_list_sort")
+  (return-type "GList*")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_level")
-    '("GVariant*" "fields")
+    '("GList*" "list")
+    '("GCompareFunc" "compare_func")
   )
 )
 
-(define-function g_log_set_writer_func
-  (c-name "g_log_set_writer_func")
-  (return-type "none")
+(define-function g_list_sort_with_data
+  (c-name "g_list_sort_with_data")
+  (return-type "GList*")
   (parameters
-    '("GLogWriterFunc" "func")
+    '("GList*" "list")
+    '("GCompareDataFunc" "compare_func")
     '("gpointer" "user_data")
-    '("GDestroyNotify" "user_data_free")
   )
 )
 
-(define-function g_log_writer_supports_color
-  (c-name "g_log_writer_supports_color")
+(define-function g_main_context_new
+  (c-name "g_main_context_new")
+  (return-type "GMainContext*")
+)
+
+(define-method acquire
+  (of-object "GMainContext")
+  (c-name "g_main_context_acquire")
   (return-type "gboolean")
+)
+
+(define-method add_poll
+  (of-object "GMainContext")
+  (c-name "g_main_context_add_poll")
+  (return-type "void")
   (parameters
-    '("gint" "output_fd")
+    '("GPollFD*" "fd")
+    '("gint" "priority")
   )
 )
 
-(define-function g_log_writer_is_journald
-  (c-name "g_log_writer_is_journald")
-  (return-type "gboolean")
+(define-method check
+  (of-object "GMainContext")
+  (c-name "g_main_context_check")
+  (return-type "gint")
   (parameters
-    '("gint" "output_fd")
+    '("gint" "max_priority")
+    '("GPollFD*" "fds")
+    '("gint" "n_fds")
   )
 )
 
-(define-function g_log_writer_format_fields
-  (c-name "g_log_writer_format_fields")
-  (return-type "gchar*")
+(define-method dispatch
+  (of-object "GMainContext")
+  (c-name "g_main_context_dispatch")
+  (return-type "void")
+)
+
+(define-method find_source_by_funcs_user_data
+  (of-object "GMainContext")
+  (c-name "g_main_context_find_source_by_funcs_user_data")
+  (return-type "GSource*")
   (parameters
-    '("GLogLevelFlags" "log_level")
-    '("const-GLogField*" "fields")
-    '("gsize" "n_fields")
-    '("gboolean" "use_color")
+    '("GSourceFuncs*" "funcs")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_log_writer_journald
-  (c-name "g_log_writer_journald")
-  (return-type "GLogWriterOutput")
+(define-method find_source_by_id
+  (of-object "GMainContext")
+  (c-name "g_main_context_find_source_by_id")
+  (return-type "GSource*")
   (parameters
-    '("GLogLevelFlags" "log_level")
-    '("const-GLogField*" "fields")
-    '("gsize" "n_fields")
-    '("gpointer" "user_data")
+    '("guint" "source_id")
   )
 )
 
-(define-function g_log_writer_standard_streams
-  (c-name "g_log_writer_standard_streams")
-  (return-type "GLogWriterOutput")
+(define-method find_source_by_user_data
+  (of-object "GMainContext")
+  (c-name "g_main_context_find_source_by_user_data")
+  (return-type "GSource*")
   (parameters
-    '("GLogLevelFlags" "log_level")
-    '("const-GLogField*" "fields")
-    '("gsize" "n_fields")
     '("gpointer" "user_data")
   )
 )
 
-(define-function g_log_writer_default
-  (c-name "g_log_writer_default")
-  (return-type "GLogWriterOutput")
+(define-method get_poll_func
+  (of-object "GMainContext")
+  (c-name "g_main_context_get_poll_func")
+  (return-type "GPollFunc")
+)
+
+(define-method invoke
+  (of-object "GMainContext")
+  (c-name "g_main_context_invoke")
+  (return-type "void")
   (parameters
-    '("GLogLevelFlags" "log_level")
-    '("const-GLogField*" "fields")
-    '("gsize" "n_fields")
-    '("gpointer" "user_data")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_return_if_fail_warning
-  (c-name "g_return_if_fail_warning")
-  (return-type "none")
+(define-method invoke_full
+  (of-object "GMainContext")
+  (c-name "g_main_context_invoke_full")
+  (return-type "void")
   (parameters
-    '("const-char*" "log_domain")
-    '("const-char*" "pretty_function")
-    '("const-char*" "expression")
+    '("gint" "priority")
+    '("GSourceFunc" "function")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function g_warn_message
-  (c-name "g_warn_message")
-  (return-type "none")
+(define-method is_owner
+  (of-object "GMainContext")
+  (c-name "g_main_context_is_owner")
+  (return-type "gboolean")
+)
+
+(define-method iteration
+  (of-object "GMainContext")
+  (c-name "g_main_context_iteration")
+  (return-type "gboolean")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("const-char*" "warnexpr")
+    '("gboolean" "may_block")
   )
 )
 
-(define-function g_assert_warning
-  (c-name "g_assert_warning")
-  (return-type "none")
+(define-method pending
+  (of-object "GMainContext")
+  (c-name "g_main_context_pending")
+  (return-type "gboolean")
+)
+
+(define-method pop_thread_default
+  (of-object "GMainContext")
+  (c-name "g_main_context_pop_thread_default")
+  (return-type "void")
+)
+
+(define-method prepare
+  (of-object "GMainContext")
+  (c-name "g_main_context_prepare")
+  (return-type "gboolean")
   (parameters
-    '("const-char*" "log_domain")
-    '("const-char*" "file")
-    '("const-int" "line")
-    '("const-char*" "pretty_function")
-    '("const-char*" "expression")
+    '("gint*" "priority")
   )
 )
 
-(define-function g_error
-  (c-name "g_error")
-  (return-type "none")
+(define-method push_thread_default
+  (of-object "GMainContext")
+  (c-name "g_main_context_push_thread_default")
+  (return-type "void")
+)
+
+(define-method query
+  (of-object "GMainContext")
+  (c-name "g_main_context_query")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "format")
+    '("gint" "max_priority")
+    '("gint*" "timeout_")
+    '("GPollFD*" "fds")
+    '("gint" "n_fds")
   )
-  (varargs #t)
 )
 
-(define-function g_critical
-  (c-name "g_critical")
-  (return-type "none")
+(define-method ref
+  (of-object "GMainContext")
+  (c-name "g_main_context_ref")
+  (return-type "GMainContext*")
+)
+
+(define-method release
+  (of-object "GMainContext")
+  (c-name "g_main_context_release")
+  (return-type "void")
+)
+
+(define-method remove_poll
+  (of-object "GMainContext")
+  (c-name "g_main_context_remove_poll")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format")
+    '("GPollFD*" "fd")
   )
-  (varargs #t)
 )
 
-(define-function g_message
-  (c-name "g_message")
-  (return-type "none")
+(define-method set_poll_func
+  (of-object "GMainContext")
+  (c-name "g_main_context_set_poll_func")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format")
+    '("GPollFunc" "func")
   )
-  (varargs #t)
 )
 
-(define-function g_warning
-  (c-name "g_warning")
-  (return-type "none")
+(define-method unref
+  (of-object "GMainContext")
+  (c-name "g_main_context_unref")
+  (return-type "void")
+)
+
+(define-method wait
+  (of-object "GMainContext")
+  (c-name "g_main_context_wait")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "format")
+    '("GCond*" "cond")
+    '("GMutex*" "mutex")
   )
-  (varargs #t)
 )
 
-(define-function g_info
-  (c-name "g_info")
-  (return-type "none")
+(define-method wakeup
+  (of-object "GMainContext")
+  (c-name "g_main_context_wakeup")
+  (return-type "void")
+)
+
+(define-function g_main_context_default
+  (c-name "g_main_context_default")
+  (return-type "GMainContext*")
+)
+
+(define-function g_main_context_get_thread_default
+  (c-name "g_main_context_get_thread_default")
+  (return-type "GMainContext*")
+)
+
+(define-function g_main_context_ref_thread_default
+  (c-name "g_main_context_ref_thread_default")
+  (return-type "GMainContext*")
+)
+
+(define-function g_main_loop_new
+  (c-name "g_main_loop_new")
+  (return-type "GMainLoop*")
   (parameters
-    '("const-gchar*" "format")
+    '("GMainContext*" "context")
+    '("gboolean" "is_running")
   )
-  (varargs #t)
 )
 
-(define-function g_debug
-  (c-name "g_debug")
-  (return-type "none")
+(define-method get_context
+  (of-object "GMainLoop")
+  (c-name "g_main_loop_get_context")
+  (return-type "GMainContext*")
+)
+
+(define-method is_running
+  (of-object "GMainLoop")
+  (c-name "g_main_loop_is_running")
+  (return-type "gboolean")
+)
+
+(define-method quit
+  (of-object "GMainLoop")
+  (c-name "g_main_loop_quit")
+  (return-type "void")
+)
+
+(define-method ref
+  (of-object "GMainLoop")
+  (c-name "g_main_loop_ref")
+  (return-type "GMainLoop*")
+)
+
+(define-method run
+  (of-object "GMainLoop")
+  (c-name "g_main_loop_run")
+  (return-type "void")
+)
+
+(define-method unref
+  (of-object "GMainLoop")
+  (c-name "g_main_loop_unref")
+  (return-type "void")
+)
+
+(define-function g_mapped_file_new
+  (c-name "g_mapped_file_new")
+  (return-type "GMappedFile*")
   (parameters
-    '("const-gchar*" "format")
+    '("gchar*" "filename")
+    '("gboolean" "writable")
+    '("GError**" "error")
   )
-  (varargs #t)
 )
 
-(define-function g_print
-  (c-name "g_print")
-  (return-type "none")
+(define-function g_mapped_file_new_from_fd
+  (c-name "g_mapped_file_new_from_fd")
+  (return-type "GMappedFile*")
   (parameters
-    '("const-gchar*" "format")
+    '("gint" "fd")
+    '("gboolean" "writable")
+    '("GError**" "error")
   )
-  (varargs #t)
 )
 
-(define-function g_set_print_handler
-  (c-name "g_set_print_handler")
-  (return-type "GPrintFunc")
+(define-method free
+  (of-object "GMappedFile")
+  (c-name "g_mapped_file_free")
+  (return-type "void")
+)
+
+(define-method get_bytes
+  (of-object "GMappedFile")
+  (c-name "g_mapped_file_get_bytes")
+  (return-type "GBytes*")
+)
+
+(define-method get_contents
+  (of-object "GMappedFile")
+  (c-name "g_mapped_file_get_contents")
+  (return-type "gchar*")
+)
+
+(define-method get_length
+  (of-object "GMappedFile")
+  (c-name "g_mapped_file_get_length")
+  (return-type "gsize")
+)
+
+(define-method ref
+  (of-object "GMappedFile")
+  (c-name "g_mapped_file_ref")
+  (return-type "GMappedFile*")
+)
+
+(define-method unref
+  (of-object "GMappedFile")
+  (c-name "g_mapped_file_unref")
+  (return-type "void")
+)
+
+(define-function g_markup_parse_context_new
+  (c-name "g_markup_parse_context_new")
+  (return-type "GMarkupParseContext*")
   (parameters
-    '("GPrintFunc" "func")
+    '("const-GMarkupParser*" "parser")
+    '("GMarkupParseFlags" "flags")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_data_dnotify")
   )
 )
 
-(define-function g_printerr
-  (c-name "g_printerr")
-  (return-type "none")
+(define-method end_parse
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_end_parse")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "format")
+    '("GError**" "error")
   )
-  (varargs #t)
 )
 
-(define-function g_set_printerr_handler
-  (c-name "g_set_printerr_handler")
-  (return-type "GPrintFunc")
+(define-method free
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_free")
+  (return-type "void")
+)
+
+(define-method get_element
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_get_element")
+  (return-type "const-gchar*")
+)
+
+(define-method get_element_stack
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_get_element_stack")
+  (return-type "const-GSList*")
+)
+
+(define-method get_position
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_get_position")
+  (return-type "void")
   (parameters
-    '("GPrintFunc" "func")
+    '("gint*" "line_number")
+    '("gint*" "char_number")
   )
 )
 
+(define-method get_user_data
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_get_user_data")
+  (return-type "gpointer")
+)
 
+(define-method parse
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_parse")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "text")
+    '("gssize" "text_len")
+    '("GError**" "error")
+  )
+)
 
-;; From gmirroringtable.h
+(define-method pop
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_pop")
+  (return-type "gpointer")
+)
 
+(define-method push
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_push")
+  (return-type "void")
+  (parameters
+    '("const-GMarkupParser*" "parser")
+    '("gpointer" "user_data")
+  )
+)
 
+(define-method ref
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_ref")
+  (return-type "GMarkupParseContext*")
+)
 
-;; From gnode.h
+(define-method unref
+  (of-object "GMarkupParseContext")
+  (c-name "g_markup_parse_context_unref")
+  (return-type "void")
+)
 
-(define-function g_node_new
-  (c-name "g_node_new")
-  (is-constructor-of "GNode")
-  (return-type "GNode*")
+(define-method expand_references
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_expand_references")
+  (return-type "gchar*")
   (parameters
-    '("gpointer" "data")
+    '("const-gchar*" "string_to_expand")
+    '("GError**" "error")
   )
 )
 
-(define-method destroy
-  (of-object "GNode")
-  (c-name "g_node_destroy")
-  (return-type "none")
+(define-method fetch
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_fetch")
+  (return-type "gchar*")
+  (parameters
+    '("gint" "match_num")
+  )
 )
 
-(define-method unlink
-  (of-object "GNode")
-  (c-name "g_node_unlink")
-  (return-type "none")
+(define-method fetch_all
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_fetch_all")
+  (return-type "gchar**")
 )
 
-(define-method copy_deep
-  (of-object "GNode")
-  (c-name "g_node_copy_deep")
-  (return-type "GNode*")
+(define-method fetch_named
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_fetch_named")
+  (return-type "gchar*")
   (parameters
-    '("GCopyFunc" "copy_func")
-    '("gpointer" "data")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method copy
-  (of-object "GNode")
-  (c-name "g_node_copy")
-  (return-type "GNode*")
+(define-method fetch_named_pos
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_fetch_named_pos")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "name")
+    '("gint*" "start_pos")
+    '("gint*" "end_pos")
+  )
 )
 
-(define-method insert
-  (of-object "GNode")
-  (c-name "g_node_insert")
-  (return-type "GNode*")
+(define-method fetch_pos
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_fetch_pos")
+  (return-type "gboolean")
   (parameters
-    '("gint" "position")
-    '("GNode*" "node")
+    '("gint" "match_num")
+    '("gint*" "start_pos")
+    '("gint*" "end_pos")
   )
 )
 
-(define-method insert_before
-  (of-object "GNode")
-  (c-name "g_node_insert_before")
-  (return-type "GNode*")
+(define-method free
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_free")
+  (return-type "void")
+)
+
+(define-method get_match_count
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_get_match_count")
+  (return-type "gint")
+)
+
+(define-method get_regex
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_get_regex")
+  (return-type "GRegex*")
+)
+
+(define-method get_string
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_get_string")
+  (return-type "const-gchar*")
+)
+
+(define-method is_partial_match
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_is_partial_match")
+  (return-type "gboolean")
+)
+
+(define-method matches
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_matches")
+  (return-type "gboolean")
+)
+
+(define-method next
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_next")
+  (return-type "gboolean")
   (parameters
-    '("GNode*" "sibling")
-    '("GNode*" "node")
+    '("GError**" "error")
   )
 )
 
-(define-method insert_after
+(define-method ref
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_ref")
+  (return-type "GMatchInfo*")
+)
+
+(define-method unref
+  (of-object "GMatchInfo")
+  (c-name "g_match_info_unref")
+  (return-type "void")
+)
+
+(define-method child_index
   (of-object "GNode")
-  (c-name "g_node_insert_after")
-  (return-type "GNode*")
+  (c-name "g_node_child_index")
+  (return-type "gint")
   (parameters
-    '("GNode*" "sibling")
-    '("GNode*" "node")
+    '("gpointer" "data")
   )
 )
 
-(define-method prepend
+(define-method child_position
   (of-object "GNode")
-  (c-name "g_node_prepend")
-  (return-type "GNode*")
+  (c-name "g_node_child_position")
+  (return-type "gint")
   (parameters
-    '("GNode*" "node")
+    '("GNode*" "child")
   )
 )
 
-(define-method n_nodes
+(define-method children_foreach
   (of-object "GNode")
-  (c-name "g_node_n_nodes")
-  (return-type "guint")
+  (c-name "g_node_children_foreach")
+  (return-type "void")
   (parameters
     '("GTraverseFlags" "flags")
+    '("GNodeForeachFunc" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-method get_root
+(define-method copy
   (of-object "GNode")
-  (c-name "g_node_get_root")
+  (c-name "g_node_copy")
   (return-type "GNode*")
 )
 
-(define-method is_ancestor
+(define-method copy_deep
   (of-object "GNode")
-  (c-name "g_node_is_ancestor")
-  (return-type "gboolean")
+  (c-name "g_node_copy_deep")
+  (return-type "GNode*")
   (parameters
-    '("GNode*" "descendant")
+    '("GCopyFunc" "copy_func")
+    '("gpointer" "data")
   )
 )
 
@@ -8072,6 +9069,12 @@
   (return-type "guint")
 )
 
+(define-method destroy
+  (of-object "GNode")
+  (c-name "g_node_destroy")
+  (return-type "void")
+)
+
 (define-method find
   (of-object "GNode")
   (c-name "g_node_find")
@@ -8083,54 +9086,64 @@
   )
 )
 
-(define-method traverse
+(define-method find_child
   (of-object "GNode")
-  (c-name "g_node_traverse")
-  (return-type "none")
+  (c-name "g_node_find_child")
+  (return-type "GNode*")
   (parameters
-    '("GTraverseType" "order")
     '("GTraverseFlags" "flags")
-    '("gint" "max_depth")
-    '("GNodeTraverseFunc" "func")
     '("gpointer" "data")
   )
 )
 
-(define-method max_height
+(define-method first_sibling
   (of-object "GNode")
-  (c-name "g_node_max_height")
-  (return-type "guint")
+  (c-name "g_node_first_sibling")
+  (return-type "GNode*")
 )
 
-(define-method children_foreach
+(define-method get_root
   (of-object "GNode")
-  (c-name "g_node_children_foreach")
-  (return-type "none")
+  (c-name "g_node_get_root")
+  (return-type "GNode*")
+)
+
+(define-method insert
+  (of-object "GNode")
+  (c-name "g_node_insert")
+  (return-type "GNode*")
   (parameters
-    '("GTraverseFlags" "flags")
-    '("GNodeForeachFunc" "func")
-    '("gpointer" "data")
+    '("gint" "position")
+    '("GNode*" "node")
   )
 )
 
-(define-method reverse_children
+(define-method insert_after
   (of-object "GNode")
-  (c-name "g_node_reverse_children")
-  (return-type "none")
+  (c-name "g_node_insert_after")
+  (return-type "GNode*")
+  (parameters
+    '("GNode*" "sibling")
+    '("GNode*" "node")
+  )
 )
 
-(define-method n_children
+(define-method insert_before
   (of-object "GNode")
-  (c-name "g_node_n_children")
-  (return-type "guint")
+  (c-name "g_node_insert_before")
+  (return-type "GNode*")
+  (parameters
+    '("GNode*" "sibling")
+    '("GNode*" "node")
+  )
 )
 
-(define-method nth_child
+(define-method is_ancestor
   (of-object "GNode")
-  (c-name "g_node_nth_child")
-  (return-type "GNode*")
+  (c-name "g_node_is_ancestor")
+  (return-type "gboolean")
   (parameters
-    '("guint" "n")
+    '("GNode*" "descendant")
   )
 )
 
@@ -8140,106 +9153,149 @@
   (return-type "GNode*")
 )
 
-(define-method find_child
+(define-method last_sibling
   (of-object "GNode")
-  (c-name "g_node_find_child")
+  (c-name "g_node_last_sibling")
   (return-type "GNode*")
+)
+
+(define-method max_height
+  (of-object "GNode")
+  (c-name "g_node_max_height")
+  (return-type "guint")
+)
+
+(define-method n_children
+  (of-object "GNode")
+  (c-name "g_node_n_children")
+  (return-type "guint")
+)
+
+(define-method n_nodes
+  (of-object "GNode")
+  (c-name "g_node_n_nodes")
+  (return-type "guint")
   (parameters
     '("GTraverseFlags" "flags")
-    '("gpointer" "data")
   )
 )
 
-(define-method child_position
+(define-method nth_child
   (of-object "GNode")
-  (c-name "g_node_child_position")
-  (return-type "gint")
+  (c-name "g_node_nth_child")
+  (return-type "GNode*")
   (parameters
-    '("GNode*" "child")
+    '("guint" "n")
   )
 )
 
-(define-method child_index
+(define-method prepend
   (of-object "GNode")
-  (c-name "g_node_child_index")
-  (return-type "gint")
+  (c-name "g_node_prepend")
+  (return-type "GNode*")
   (parameters
-    '("gpointer" "data")
+    '("GNode*" "node")
   )
 )
 
-(define-method first_sibling
+(define-method reverse_children
   (of-object "GNode")
-  (c-name "g_node_first_sibling")
-  (return-type "GNode*")
+  (c-name "g_node_reverse_children")
+  (return-type "void")
 )
 
-(define-method last_sibling
+(define-method traverse
   (of-object "GNode")
-  (c-name "g_node_last_sibling")
-  (return-type "GNode*")
+  (c-name "g_node_traverse")
+  (return-type "void")
+  (parameters
+    '("GTraverseType" "order")
+    '("GTraverseFlags" "flags")
+    '("gint" "max_depth")
+    '("GNodeTraverseFunc" "func")
+    '("gpointer" "data")
+  )
 )
 
+(define-method unlink
+  (of-object "GNode")
+  (c-name "g_node_unlink")
+  (return-type "void")
+)
 
-
-;; From goption.h
-
-(define-function g_option_error_quark
-  (c-name "g_option_error_quark")
-  (return-type "GQuark")
+(define-function g_node_new
+  (c-name "g_node_new")
+  (return-type "GNode*")
+  (parameters
+    '("gpointer" "data")
+  )
 )
 
-(define-function g_option_context_new
-  (c-name "g_option_context_new")
-  (is-constructor-of "GOptionContext")
-  (return-type "GOptionContext*")
+(define-method impl
+  (of-object "GOnce")
+  (c-name "g_once_impl")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "parameter_string")
+    '("GThreadFunc" "func")
+    '("gpointer" "arg")
   )
 )
 
-(define-method set_summary
-  (of-object "GOptionContext")
-  (c-name "g_option_context_set_summary")
-  (return-type "none")
+(define-function g_once_init_enter
+  (c-name "g_once_init_enter")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "summary")
+    '("void*" "location")
   )
 )
 
-(define-method get_summary
-  (of-object "GOptionContext")
-  (c-name "g_option_context_get_summary")
-  (return-type "const-gchar*")
+(define-function g_once_init_leave
+  (c-name "g_once_init_leave")
+  (return-type "void")
+  (parameters
+    '("void*" "location")
+    '("gsize" "result")
+  )
 )
 
-(define-method set_description
+(define-method add_group
   (of-object "GOptionContext")
-  (c-name "g_option_context_set_description")
-  (return-type "none")
+  (c-name "g_option_context_add_group")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "description")
+    '("GOptionGroup*" "group")
   )
 )
 
-(define-method get_description
+(define-method add_main_entries
   (of-object "GOptionContext")
-  (c-name "g_option_context_get_description")
-  (return-type "const-gchar*")
+  (c-name "g_option_context_add_main_entries")
+  (return-type "void")
+  (parameters
+    '("const-GOptionEntry*" "entries")
+    '("const-gchar*" "translation_domain")
+  )
 )
 
 (define-method free
   (of-object "GOptionContext")
   (c-name "g_option_context_free")
-  (return-type "none")
+  (return-type "void")
 )
 
-(define-method set_help_enabled
+(define-method get_description
   (of-object "GOptionContext")
-  (c-name "g_option_context_set_help_enabled")
-  (return-type "none")
+  (c-name "g_option_context_get_description")
+  (return-type "const-gchar*")
+)
+
+(define-method get_help
+  (of-object "GOptionContext")
+  (c-name "g_option_context_get_help")
+  (return-type "gchar*")
   (parameters
-    '("gboolean" "help_enabled")
+    '("gboolean" "main_help")
+    '("GOptionGroup*" "group")
   )
 )
 
@@ -8249,28 +9305,16 @@
   (return-type "gboolean")
 )
 
-(define-method set_ignore_unknown_options
-  (of-object "GOptionContext")
-  (c-name "g_option_context_set_ignore_unknown_options")
-  (return-type "none")
-  (parameters
-    '("gboolean" "ignore_unknown")
-  )
-)
-
 (define-method get_ignore_unknown_options
   (of-object "GOptionContext")
   (c-name "g_option_context_get_ignore_unknown_options")
   (return-type "gboolean")
 )
 
-(define-method set_strict_posix
+(define-method get_main_group
   (of-object "GOptionContext")
-  (c-name "g_option_context_set_strict_posix")
-  (return-type "none")
-  (parameters
-    '("gboolean" "strict_posix")
-  )
+  (c-name "g_option_context_get_main_group")
+  (return-type "GOptionGroup*")
 )
 
 (define-method get_strict_posix
@@ -8279,14 +9323,10 @@
   (return-type "gboolean")
 )
 
-(define-method add_main_entries
+(define-method get_summary
   (of-object "GOptionContext")
-  (c-name "g_option_context_add_main_entries")
-  (return-type "none")
-  (parameters
-    '("const-GOptionEntry*" "entries")
-    '("const-gchar*" "translation_domain")
-  )
+  (c-name "g_option_context_get_summary")
+  (return-type "const-gchar*")
 )
 
 (define-method parse
@@ -8310,63 +9350,90 @@
   )
 )
 
-(define-method set_translate_func
+(define-method set_description
   (of-object "GOptionContext")
-  (c-name "g_option_context_set_translate_func")
-  (return-type "none")
+  (c-name "g_option_context_set_description")
+  (return-type "void")
   (parameters
-    '("GTranslateFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "destroy_notify")
+    '("const-gchar*" "description")
   )
 )
 
-(define-method set_translation_domain
+(define-method set_help_enabled
   (of-object "GOptionContext")
-  (c-name "g_option_context_set_translation_domain")
-  (return-type "none")
+  (c-name "g_option_context_set_help_enabled")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "domain")
+    '("gboolean" "help_enabled")
   )
 )
 
-(define-method add_group
+(define-method set_ignore_unknown_options
   (of-object "GOptionContext")
-  (c-name "g_option_context_add_group")
-  (return-type "none")
+  (c-name "g_option_context_set_ignore_unknown_options")
+  (return-type "void")
   (parameters
-    '("GOptionGroup*" "group")
+    '("gboolean" "ignore_unknown")
   )
 )
 
 (define-method set_main_group
   (of-object "GOptionContext")
   (c-name "g_option_context_set_main_group")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GOptionGroup*" "group")
   )
 )
 
-(define-method get_main_group
+(define-method set_strict_posix
   (of-object "GOptionContext")
-  (c-name "g_option_context_get_main_group")
-  (return-type "GOptionGroup*")
+  (c-name "g_option_context_set_strict_posix")
+  (return-type "void")
+  (parameters
+    '("gboolean" "strict_posix")
+  )
 )
 
-(define-method get_help
+(define-method set_summary
   (of-object "GOptionContext")
-  (c-name "g_option_context_get_help")
-  (return-type "gchar*")
+  (c-name "g_option_context_set_summary")
+  (return-type "void")
   (parameters
-    '("gboolean" "main_help")
-    '("GOptionGroup*" "group")
+    '("const-gchar*" "summary")
+  )
+)
+
+(define-method set_translate_func
+  (of-object "GOptionContext")
+  (c-name "g_option_context_set_translate_func")
+  (return-type "void")
+  (parameters
+    '("GTranslateFunc" "func")
+    '("gpointer" "data")
+    '("GDestroyNotify" "destroy_notify")
+  )
+)
+
+(define-method set_translation_domain
+  (of-object "GOptionContext")
+  (c-name "g_option_context_set_translation_domain")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "domain")
+  )
+)
+
+(define-function g_option_context_new
+  (c-name "g_option_context_new")
+  (return-type "GOptionContext*")
+  (parameters
+    '("const-gchar*" "parameter_string")
   )
 )
 
 (define-function g_option_group_new
   (c-name "g_option_group_new")
-  (is-constructor-of "GOptionGroup")
   (return-type "GOptionGroup*")
   (parameters
     '("const-gchar*" "name")
@@ -8377,29 +9444,19 @@
   )
 )
 
-(define-method set_parse_hooks
-  (of-object "GOptionGroup")
-  (c-name "g_option_group_set_parse_hooks")
-  (return-type "none")
-  (parameters
-    '("GOptionParseFunc" "pre_parse_func")
-    '("GOptionParseFunc" "post_parse_func")
-  )
-)
-
-(define-method set_error_hook
+(define-method add_entries
   (of-object "GOptionGroup")
-  (c-name "g_option_group_set_error_hook")
-  (return-type "none")
+  (c-name "g_option_group_add_entries")
+  (return-type "void")
   (parameters
-    '("GOptionErrorFunc" "error_func")
+    '("const-GOptionEntry*" "entries")
   )
 )
 
 (define-method free
   (of-object "GOptionGroup")
   (c-name "g_option_group_free")
-  (return-type "none")
+  (return-type "void")
 )
 
 (define-method ref
@@ -8408,25 +9465,29 @@
   (return-type "GOptionGroup*")
 )
 
-(define-method unref
+(define-method set_error_hook
   (of-object "GOptionGroup")
-  (c-name "g_option_group_unref")
-  (return-type "none")
+  (c-name "g_option_group_set_error_hook")
+  (return-type "void")
+  (parameters
+    '("GOptionErrorFunc" "error_func")
+  )
 )
 
-(define-method add_entries
+(define-method set_parse_hooks
   (of-object "GOptionGroup")
-  (c-name "g_option_group_add_entries")
-  (return-type "none")
+  (c-name "g_option_group_set_parse_hooks")
+  (return-type "void")
   (parameters
-    '("const-GOptionEntry*" "entries")
+    '("GOptionParseFunc" "pre_parse_func")
+    '("GOptionParseFunc" "post_parse_func")
   )
 )
 
 (define-method set_translate_func
   (of-object "GOptionGroup")
   (c-name "g_option_group_set_translate_func")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GTranslateFunc" "func")
     '("gpointer" "data")
@@ -8437,290 +9498,236 @@
 (define-method set_translation_domain
   (of-object "GOptionGroup")
   (c-name "g_option_group_set_translation_domain")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("const-gchar*" "domain")
   )
 )
 
+(define-method unref
+  (of-object "GOptionGroup")
+  (c-name "g_option_group_unref")
+  (return-type "void")
+)
 
+(define-method equal
+  (of-object "GPatternSpec")
+  (c-name "g_pattern_spec_equal")
+  (return-type "gboolean")
+  (parameters
+    '("GPatternSpec*" "pspec2")
+  )
+)
 
-;; From gpattern.h
+(define-method free
+  (of-object "GPatternSpec")
+  (c-name "g_pattern_spec_free")
+  (return-type "void")
+)
 
 (define-function g_pattern_spec_new
   (c-name "g_pattern_spec_new")
-  (is-constructor-of "GPatternSpec")
   (return-type "GPatternSpec*")
   (parameters
     '("const-gchar*" "pattern")
   )
 )
 
-(define-method free
-  (of-object "GPatternSpec")
-  (c-name "g_pattern_spec_free")
-  (return-type "none")
+(define-method get
+  (of-object "GPrivate")
+  (c-name "g_private_get")
+  (return-type "gpointer")
 )
 
-(define-method equal
-  (of-object "GPatternSpec")
-  (c-name "g_pattern_spec_equal")
-  (return-type "gboolean")
+(define-method replace
+  (of-object "GPrivate")
+  (c-name "g_private_replace")
+  (return-type "void")
   (parameters
-    '("GPatternSpec*" "pspec2")
+    '("gpointer" "value")
   )
 )
 
-(define-function g_pattern_match
-  (c-name "g_pattern_match")
-  (return-type "gboolean")
+(define-method set
+  (of-object "GPrivate")
+  (c-name "g_private_set")
+  (return-type "void")
   (parameters
-    '("GPatternSpec*" "pspec")
-    '("guint" "string_length")
-    '("const-gchar*" "string")
-    '("const-gchar*" "string_reversed")
+    '("gpointer" "value")
   )
 )
 
-(define-function g_pattern_match_string
-  (c-name "g_pattern_match_string")
-  (return-type "gboolean")
+(define-function g_ptr_array_add
+  (c-name "g_ptr_array_add")
+  (return-type "void")
   (parameters
-    '("GPatternSpec*" "pspec")
-    '("const-gchar*" "string")
+    '("GPtrArray*" "array")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_pattern_match_simple
-  (c-name "g_pattern_match_simple")
-  (return-type "gboolean")
+(define-function g_ptr_array_foreach
+  (c-name "g_ptr_array_foreach")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "pattern")
-    '("const-gchar*" "string")
+    '("GPtrArray*" "array")
+    '("GFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-
-
-;; From gpoll.h
-
-(define-function g_poll
-  (c-name "g_poll")
-  (return-type "gint")
+(define-function g_ptr_array_free
+  (c-name "g_ptr_array_free")
+  (return-type "gpointer*")
   (parameters
-    '("GPollFD*" "fds")
-    '("guint" "nfds")
-    '("gint" "timeout")
+    '("GPtrArray*" "array")
+    '("gboolean" "free_seg")
   )
 )
 
-
-
-;; From gprimes.h
-
-(define-function g_spaced_primes_closest
-  (c-name "g_spaced_primes_closest")
-  (return-type "guint")
+(define-function g_ptr_array_insert
+  (c-name "g_ptr_array_insert")
+  (return-type "void")
   (parameters
-    '("guint" "num")
+    '("GPtrArray*" "array")
+    '("gint" "index_")
+    '("gpointer" "data")
   )
 )
 
+(define-function g_ptr_array_new
+  (c-name "g_ptr_array_new")
+  (return-type "GPtrArray*")
+)
 
-
-;; From gprintf.h
-
-(define-function g_printf
-  (c-name "g_printf")
-  (return-type "gint")
+(define-function g_ptr_array_new_full
+  (c-name "g_ptr_array_new_full")
+  (return-type "GPtrArray*")
   (parameters
-    '("gchar-const*" "format")
+    '("guint" "reserved_size")
+    '("GDestroyNotify" "element_free_func")
   )
-  (varargs #t)
 )
 
-(define-function g_fprintf
-  (c-name "g_fprintf")
-  (return-type "gint")
+(define-function g_ptr_array_new_with_free_func
+  (c-name "g_ptr_array_new_with_free_func")
+  (return-type "GPtrArray*")
   (parameters
-    '("FILE*" "file")
-    '("gchar-const*" "format")
+    '("GDestroyNotify" "element_free_func")
   )
-  (varargs #t)
 )
 
-(define-function g_sprintf
-  (c-name "g_sprintf")
-  (return-type "gint")
+(define-function g_ptr_array_ref
+  (c-name "g_ptr_array_ref")
+  (return-type "GPtrArray*")
   (parameters
-    '("gchar*" "string")
-    '("gchar-const*" "format")
+    '("GPtrArray*" "array")
   )
-  (varargs #t)
 )
 
-(define-function g_vprintf
-  (c-name "g_vprintf")
-  (return-type "gint")
+(define-function g_ptr_array_remove
+  (c-name "g_ptr_array_remove")
+  (return-type "gboolean")
   (parameters
-    '("gchar-const*" "format")
-    '("va_list" "args")
+    '("GPtrArray*" "array")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_vfprintf
-  (c-name "g_vfprintf")
-  (return-type "gint")
+(define-function g_ptr_array_remove_fast
+  (c-name "g_ptr_array_remove_fast")
+  (return-type "gboolean")
   (parameters
-    '("FILE*" "file")
-    '("gchar-const*" "format")
-    '("va_list" "args")
+    '("GPtrArray*" "array")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_vsprintf
-  (c-name "g_vsprintf")
-  (return-type "gint")
+(define-function g_ptr_array_remove_index
+  (c-name "g_ptr_array_remove_index")
+  (return-type "gpointer")
   (parameters
-    '("gchar*" "string")
-    '("gchar-const*" "format")
-    '("va_list" "args")
+    '("GPtrArray*" "array")
+    '("guint" "index_")
   )
 )
 
-(define-function g_vasprintf
-  (c-name "g_vasprintf")
-  (return-type "gint")
+(define-function g_ptr_array_remove_index_fast
+  (c-name "g_ptr_array_remove_index_fast")
+  (return-type "gpointer")
   (parameters
-    '("gchar**" "string")
-    '("gchar-const*" "format")
-    '("va_list" "args")
+    '("GPtrArray*" "array")
+    '("guint" "index_")
   )
 )
 
-
-
-;; From gprintfint.h
-
-
-
-;; From gqsort.h
-
-(define-function g_qsort_with_data
-  (c-name "g_qsort_with_data")
-  (return-type "none")
+(define-function g_ptr_array_remove_range
+  (c-name "g_ptr_array_remove_range")
+  (return-type "GPtrArray*")
   (parameters
-    '("gconstpointer" "pbase")
-    '("gint" "total_elems")
-    '("gsize" "size")
-    '("GCompareDataFunc" "compare_func")
-    '("gpointer" "user_data")
+    '("GPtrArray*" "array")
+    '("guint" "index_")
+    '("guint" "length")
   )
 )
 
-
-
-;; From gquark.h
-
-(define-function g_quark_try_string
-  (c-name "g_quark_try_string")
-  (return-type "GQuark")
+(define-function g_ptr_array_set_free_func
+  (c-name "g_ptr_array_set_free_func")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
+    '("GPtrArray*" "array")
+    '("GDestroyNotify" "element_free_func")
   )
 )
 
-(define-function g_quark_from_static_string
-  (c-name "g_quark_from_static_string")
-  (return-type "GQuark")
+(define-function g_ptr_array_set_size
+  (c-name "g_ptr_array_set_size")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
+    '("GPtrArray*" "array")
+    '("gint" "length")
   )
 )
 
-(define-function g_quark_from_string
-  (c-name "g_quark_from_string")
-  (return-type "GQuark")
+(define-function g_ptr_array_sized_new
+  (c-name "g_ptr_array_sized_new")
+  (return-type "GPtrArray*")
   (parameters
-    '("const-gchar*" "string")
+    '("guint" "reserved_size")
   )
 )
 
-(define-method to_string
-  (of-object "GQuark")
-  (c-name "g_quark_to_string")
-  (return-type "const-gchar*")
-)
-
-(define-function g_intern_string
-  (c-name "g_intern_string")
-  (return-type "const-gchar*")
+(define-function g_ptr_array_sort
+  (c-name "g_ptr_array_sort")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
+    '("GPtrArray*" "array")
+    '("GCompareFunc" "compare_func")
   )
 )
 
-(define-function g_intern_static_string
-  (c-name "g_intern_static_string")
-  (return-type "const-gchar*")
+(define-function g_ptr_array_sort_with_data
+  (c-name "g_ptr_array_sort_with_data")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
+    '("GPtrArray*" "array")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
   )
 )
 
-
-
-;; From gqueue.h
-
-(define-function g_queue_new
-  (c-name "g_queue_new")
-  (is-constructor-of "GQueue")
-  (return-type "GQueue*")
-)
-
-(define-method free
-  (of-object "GQueue")
-  (c-name "g_queue_free")
-  (return-type "none")
-)
-
-(define-method free_full
-  (of-object "GQueue")
-  (c-name "g_queue_free_full")
-  (return-type "none")
+(define-function g_ptr_array_unref
+  (c-name "g_ptr_array_unref")
+  (return-type "void")
   (parameters
-    '("GDestroyNotify" "free_func")
+    '("GPtrArray*" "array")
   )
 )
 
-(define-method init
-  (of-object "GQueue")
-  (c-name "g_queue_init")
-  (return-type "none")
-)
-
 (define-method clear
   (of-object "GQueue")
   (c-name "g_queue_clear")
-  (return-type "none")
-)
-
-(define-method is_empty
-  (of-object "GQueue")
-  (c-name "g_queue_is_empty")
-  (return-type "gboolean")
-)
-
-(define-method get_length
-  (of-object "GQueue")
-  (c-name "g_queue_get_length")
-  (return-type "guint")
-)
-
-(define-method reverse
-  (of-object "GQueue")
-  (c-name "g_queue_reverse")
-  (return-type "none")
+  (return-type "void")
 )
 
 (define-method copy
@@ -8729,13 +9736,12 @@
   (return-type "GQueue*")
 )
 
-(define-method foreach
+(define-method delete_link
   (of-object "GQueue")
-  (c-name "g_queue_foreach")
-  (return-type "none")
+  (c-name "g_queue_delete_link")
+  (return-type "void")
   (parameters
-    '("GFunc" "func")
-    '("gpointer" "user_data")
+    '("GList*" "link_")
   )
 )
 
@@ -8758,62 +9764,95 @@
   )
 )
 
-(define-method sort
+(define-method foreach
   (of-object "GQueue")
-  (c-name "g_queue_sort")
-  (return-type "none")
+  (c-name "g_queue_foreach")
+  (return-type "void")
   (parameters
-    '("GCompareDataFunc" "compare_func")
+    '("GFunc" "func")
     '("gpointer" "user_data")
   )
 )
 
-(define-method push_head
+(define-method free
   (of-object "GQueue")
-  (c-name "g_queue_push_head")
-  (return-type "none")
+  (c-name "g_queue_free")
+  (return-type "void")
+)
+
+(define-method free_full
+  (of-object "GQueue")
+  (c-name "g_queue_free_full")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
+    '("GDestroyNotify" "free_func")
   )
 )
 
-(define-method push_tail
+(define-method get_length
   (of-object "GQueue")
-  (c-name "g_queue_push_tail")
-  (return-type "none")
+  (c-name "g_queue_get_length")
+  (return-type "guint")
+)
+
+(define-method index
+  (of-object "GQueue")
+  (c-name "g_queue_index")
+  (return-type "gint")
+  (parameters
+    '("gconstpointer" "data")
+  )
+)
+
+(define-method init
+  (of-object "GQueue")
+  (c-name "g_queue_init")
+  (return-type "void")
+)
+
+(define-method insert_after
+  (of-object "GQueue")
+  (c-name "g_queue_insert_after")
+  (return-type "void")
   (parameters
+    '("GList*" "sibling")
     '("gpointer" "data")
   )
 )
 
-(define-method push_nth
+(define-method insert_before
   (of-object "GQueue")
-  (c-name "g_queue_push_nth")
-  (return-type "none")
+  (c-name "g_queue_insert_before")
+  (return-type "void")
   (parameters
+    '("GList*" "sibling")
     '("gpointer" "data")
-    '("gint" "n")
   )
 )
 
-(define-method pop_head
+(define-method insert_sorted
   (of-object "GQueue")
-  (c-name "g_queue_pop_head")
-  (return-type "gpointer")
+  (c-name "g_queue_insert_sorted")
+  (return-type "void")
+  (parameters
+    '("gpointer" "data")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
+  )
 )
 
-(define-method pop_tail
+(define-method is_empty
   (of-object "GQueue")
-  (c-name "g_queue_pop_tail")
-  (return-type "gpointer")
+  (c-name "g_queue_is_empty")
+  (return-type "gboolean")
 )
 
-(define-method pop_nth
+(define-method link_index
   (of-object "GQueue")
-  (c-name "g_queue_pop_nth")
-  (return-type "gpointer")
+  (c-name "g_queue_link_index")
+  (return-type "gint")
   (parameters
-    '("guint" "n")
+    '("GList*" "link_")
   )
 )
 
@@ -8823,10 +9862,10 @@
   (return-type "gpointer")
 )
 
-(define-method peek_tail
+(define-method peek_head_link
   (of-object "GQueue")
-  (c-name "g_queue_peek_tail")
-  (return-type "gpointer")
+  (c-name "g_queue_peek_head_link")
+  (return-type "GList*")
 )
 
 (define-method peek_nth
@@ -8838,192 +9877,219 @@
   )
 )
 
-(define-method index
+(define-method peek_nth_link
   (of-object "GQueue")
-  (c-name "g_queue_index")
-  (return-type "gint")
+  (c-name "g_queue_peek_nth_link")
+  (return-type "GList*")
   (parameters
-    '("gconstpointer" "data")
+    '("guint" "n")
   )
 )
 
-(define-method remove
+(define-method peek_tail
   (of-object "GQueue")
-  (c-name "g_queue_remove")
-  (return-type "gboolean")
-  (parameters
-    '("gconstpointer" "data")
-  )
+  (c-name "g_queue_peek_tail")
+  (return-type "gpointer")
 )
 
-(define-method remove_all
+(define-method peek_tail_link
   (of-object "GQueue")
-  (c-name "g_queue_remove_all")
-  (return-type "guint")
-  (parameters
-    '("gconstpointer" "data")
-  )
+  (c-name "g_queue_peek_tail_link")
+  (return-type "GList*")
 )
 
-(define-method insert_before
+(define-method pop_head
   (of-object "GQueue")
-  (c-name "g_queue_insert_before")
-  (return-type "none")
+  (c-name "g_queue_pop_head")
+  (return-type "gpointer")
+)
+
+(define-method pop_head_link
+  (of-object "GQueue")
+  (c-name "g_queue_pop_head_link")
+  (return-type "GList*")
+)
+
+(define-method pop_nth
+  (of-object "GQueue")
+  (c-name "g_queue_pop_nth")
+  (return-type "gpointer")
   (parameters
-    '("GList*" "sibling")
-    '("gpointer" "data")
+    '("guint" "n")
   )
 )
 
-(define-method insert_after
+(define-method pop_nth_link
   (of-object "GQueue")
-  (c-name "g_queue_insert_after")
-  (return-type "none")
+  (c-name "g_queue_pop_nth_link")
+  (return-type "GList*")
   (parameters
-    '("GList*" "sibling")
-    '("gpointer" "data")
+    '("guint" "n")
   )
 )
 
-(define-method insert_sorted
+(define-method pop_tail
   (of-object "GQueue")
-  (c-name "g_queue_insert_sorted")
-  (return-type "none")
+  (c-name "g_queue_pop_tail")
+  (return-type "gpointer")
+)
+
+(define-method pop_tail_link
+  (of-object "GQueue")
+  (c-name "g_queue_pop_tail_link")
+  (return-type "GList*")
+)
+
+(define-method push_head
+  (of-object "GQueue")
+  (c-name "g_queue_push_head")
+  (return-type "void")
   (parameters
     '("gpointer" "data")
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
   )
 )
 
 (define-method push_head_link
   (of-object "GQueue")
   (c-name "g_queue_push_head_link")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GList*" "link_")
   )
 )
 
-(define-method push_tail_link
+(define-method push_nth
   (of-object "GQueue")
-  (c-name "g_queue_push_tail_link")
-  (return-type "none")
+  (c-name "g_queue_push_nth")
+  (return-type "void")
   (parameters
-    '("GList*" "link_")
+    '("gpointer" "data")
+    '("gint" "n")
   )
 )
 
 (define-method push_nth_link
   (of-object "GQueue")
   (c-name "g_queue_push_nth_link")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("gint" "n")
     '("GList*" "link_")
   )
 )
 
-(define-method pop_head_link
-  (of-object "GQueue")
-  (c-name "g_queue_pop_head_link")
-  (return-type "GList*")
-)
-
-(define-method pop_tail_link
+(define-method push_tail
   (of-object "GQueue")
-  (c-name "g_queue_pop_tail_link")
-  (return-type "GList*")
+  (c-name "g_queue_push_tail")
+  (return-type "void")
+  (parameters
+    '("gpointer" "data")
+  )
 )
 
-(define-method pop_nth_link
+(define-method push_tail_link
   (of-object "GQueue")
-  (c-name "g_queue_pop_nth_link")
-  (return-type "GList*")
+  (c-name "g_queue_push_tail_link")
+  (return-type "void")
   (parameters
-    '("guint" "n")
+    '("GList*" "link_")
   )
 )
 
-(define-method peek_head_link
+(define-method remove
   (of-object "GQueue")
-  (c-name "g_queue_peek_head_link")
-  (return-type "GList*")
+  (c-name "g_queue_remove")
+  (return-type "gboolean")
+  (parameters
+    '("gconstpointer" "data")
+  )
 )
 
-(define-method peek_tail_link
+(define-method remove_all
   (of-object "GQueue")
-  (c-name "g_queue_peek_tail_link")
-  (return-type "GList*")
+  (c-name "g_queue_remove_all")
+  (return-type "guint")
+  (parameters
+    '("gconstpointer" "data")
+  )
 )
 
-(define-method peek_nth_link
+(define-method reverse
   (of-object "GQueue")
-  (c-name "g_queue_peek_nth_link")
-  (return-type "GList*")
-  (parameters
-    '("guint" "n")
-  )
+  (c-name "g_queue_reverse")
+  (return-type "void")
 )
 
-(define-method link_index
+(define-method sort
   (of-object "GQueue")
-  (c-name "g_queue_link_index")
-  (return-type "gint")
+  (c-name "g_queue_sort")
+  (return-type "void")
   (parameters
-    '("GList*" "link_")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
   )
 )
 
 (define-method unlink
   (of-object "GQueue")
   (c-name "g_queue_unlink")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GList*" "link_")
   )
 )
 
-(define-method delete_link
-  (of-object "GQueue")
-  (c-name "g_queue_delete_link")
-  (return-type "none")
-  (parameters
-    '("GList*" "link_")
-  )
+(define-function g_queue_new
+  (c-name "g_queue_new")
+  (return-type "GQueue*")
 )
 
+(define-method clear
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_clear")
+  (return-type "void")
+)
 
+(define-method init
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_init")
+  (return-type "void")
+)
 
-;; From grand.h
+(define-method reader_lock
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_reader_lock")
+  (return-type "void")
+)
 
-(define-function g_rand_new_with_seed
-  (c-name "g_rand_new_with_seed")
-  (return-type "GRand*")
-  (parameters
-    '("guint32" "seed")
-  )
+(define-method reader_trylock
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_reader_trylock")
+  (return-type "gboolean")
 )
 
-(define-function g_rand_new_with_seed_array
-  (c-name "g_rand_new_with_seed_array")
-  (return-type "GRand*")
-  (parameters
-    '("const-guint32*" "seed")
-    '("guint" "seed_length")
-  )
+(define-method reader_unlock
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_reader_unlock")
+  (return-type "void")
 )
 
-(define-function g_rand_new
-  (c-name "g_rand_new")
-  (is-constructor-of "GRand")
-  (return-type "GRand*")
+(define-method writer_lock
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_writer_lock")
+  (return-type "void")
 )
 
-(define-method free
-  (of-object "GRand")
-  (c-name "g_rand_free")
-  (return-type "none")
+(define-method writer_trylock
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_writer_trylock")
+  (return-type "gboolean")
+)
+
+(define-method writer_unlock
+  (of-object "GRWLock")
+  (c-name "g_rw_lock_writer_unlock")
+  (return-type "void")
 )
 
 (define-method copy
@@ -9032,25 +10098,28 @@
   (return-type "GRand*")
 )
 
-(define-method set_seed
+(define-method double
   (of-object "GRand")
-  (c-name "g_rand_set_seed")
-  (return-type "none")
-  (parameters
-    '("guint32" "seed")
-  )
+  (c-name "g_rand_double")
+  (return-type "gdouble")
 )
 
-(define-method set_seed_array
+(define-method double_range
   (of-object "GRand")
-  (c-name "g_rand_set_seed_array")
-  (return-type "none")
+  (c-name "g_rand_double_range")
+  (return-type "gdouble")
   (parameters
-    '("const-guint32*" "seed")
-    '("guint" "seed_length")
+    '("gdouble" "begin")
+    '("gdouble" "end")
   )
 )
 
+(define-method free
+  (of-object "GRand")
+  (c-name "g_rand_free")
+  (return-type "void")
+)
+
 (define-method int
   (of-object "GRand")
   (c-name "g_rand_int")
@@ -9067,70 +10136,79 @@
   )
 )
 
-(define-method double
+(define-method set_seed
   (of-object "GRand")
-  (c-name "g_rand_double")
-  (return-type "gdouble")
+  (c-name "g_rand_set_seed")
+  (return-type "void")
+  (parameters
+    '("guint32" "seed")
+  )
 )
 
-(define-method double_range
+(define-method set_seed_array
   (of-object "GRand")
-  (c-name "g_rand_double_range")
-  (return-type "gdouble")
+  (c-name "g_rand_set_seed_array")
+  (return-type "void")
   (parameters
-    '("gdouble" "begin")
-    '("gdouble" "end")
+    '("const-guint32*" "seed")
+    '("guint" "seed_length")
   )
 )
 
-(define-function g_random_set_seed
-  (c-name "g_random_set_seed")
-  (return-type "none")
+(define-function g_rand_new
+  (c-name "g_rand_new")
+  (return-type "GRand*")
+)
+
+(define-function g_rand_new_with_seed
+  (c-name "g_rand_new_with_seed")
+  (return-type "GRand*")
   (parameters
     '("guint32" "seed")
   )
 )
 
-(define-function g_random_int
-  (c-name "g_random_int")
-  (return-type "guint32")
-)
-
-(define-function g_random_int_range
-  (c-name "g_random_int_range")
-  (return-type "gint32")
+(define-function g_rand_new_with_seed_array
+  (c-name "g_rand_new_with_seed_array")
+  (return-type "GRand*")
   (parameters
-    '("gint32" "begin")
-    '("gint32" "end")
+    '("const-guint32*" "seed")
+    '("guint" "seed_length")
   )
 )
 
-(define-function g_random_double
-  (c-name "g_random_double")
-  (return-type "gdouble")
+(define-method clear
+  (of-object "GRecMutex")
+  (c-name "g_rec_mutex_clear")
+  (return-type "void")
 )
 
-(define-function g_random_double_range
-  (c-name "g_random_double_range")
-  (return-type "gdouble")
-  (parameters
-    '("gdouble" "begin")
-    '("gdouble" "end")
-  )
+(define-method init
+  (of-object "GRecMutex")
+  (c-name "g_rec_mutex_init")
+  (return-type "void")
 )
 
+(define-method lock
+  (of-object "GRecMutex")
+  (c-name "g_rec_mutex_lock")
+  (return-type "void")
+)
 
+(define-method trylock
+  (of-object "GRecMutex")
+  (c-name "g_rec_mutex_trylock")
+  (return-type "gboolean")
+)
 
-;; From gregex.h
-
-(define-function g_regex_error_quark
-  (c-name "g_regex_error_quark")
-  (return-type "GQuark")
+(define-method unlock
+  (of-object "GRecMutex")
+  (c-name "g_rec_mutex_unlock")
+  (return-type "void")
 )
 
 (define-function g_regex_new
   (c-name "g_regex_new")
-  (is-constructor-of "GRegex")
   (return-type "GRegex*")
   (parameters
     '("const-gchar*" "pattern")
@@ -9140,48 +10218,48 @@
   )
 )
 
-(define-method ref
+(define-method get_capture_count
   (of-object "GRegex")
-  (c-name "g_regex_ref")
-  (return-type "GRegex*")
+  (c-name "g_regex_get_capture_count")
+  (return-type "gint")
 )
 
-(define-method unref
+(define-method get_compile_flags
   (of-object "GRegex")
-  (c-name "g_regex_unref")
-  (return-type "none")
+  (c-name "g_regex_get_compile_flags")
+  (return-type "GRegexCompileFlags")
 )
 
-(define-method get_pattern
+(define-method get_has_cr_or_lf
   (of-object "GRegex")
-  (c-name "g_regex_get_pattern")
-  (return-type "const-gchar*")
+  (c-name "g_regex_get_has_cr_or_lf")
+  (return-type "gboolean")
 )
 
-(define-method get_max_backref
+(define-method get_match_flags
   (of-object "GRegex")
-  (c-name "g_regex_get_max_backref")
-  (return-type "gint")
+  (c-name "g_regex_get_match_flags")
+  (return-type "GRegexMatchFlags")
 )
 
-(define-method get_capture_count
+(define-method get_max_backref
   (of-object "GRegex")
-  (c-name "g_regex_get_capture_count")
+  (c-name "g_regex_get_max_backref")
   (return-type "gint")
 )
 
-(define-method get_has_cr_or_lf
-  (of-object "GRegex")
-  (c-name "g_regex_get_has_cr_or_lf")
-  (return-type "gboolean")
-)
-
 (define-method get_max_lookbehind
   (of-object "GRegex")
   (c-name "g_regex_get_max_lookbehind")
   (return-type "gint")
 )
 
+(define-method get_pattern
+  (of-object "GRegex")
+  (c-name "g_regex_get_pattern")
+  (return-type "const-gchar*")
+)
+
 (define-method get_string_number
   (of-object "GRegex")
   (c-name "g_regex_get_string_number")
@@ -9191,55 +10269,39 @@
   )
 )
 
-(define-function g_regex_escape_string
-  (c-name "g_regex_escape_string")
-  (return-type "gchar*")
-  (parameters
-    '("const-gchar*" "string")
-    '("gint" "length")
-  )
-)
-
-(define-function g_regex_escape_nul
-  (c-name "g_regex_escape_nul")
-  (return-type "gchar*")
+(define-method match
+  (of-object "GRegex")
+  (c-name "g_regex_match")
+  (return-type "gboolean")
   (parameters
     '("const-gchar*" "string")
-    '("gint" "length")
+    '("GRegexMatchFlags" "match_options")
+    '("GMatchInfo**" "match_info")
   )
 )
 
-(define-method get_compile_flags
-  (of-object "GRegex")
-  (c-name "g_regex_get_compile_flags")
-  (return-type "GRegexCompileFlags")
-)
-
-(define-method get_match_flags
+(define-method match_all
   (of-object "GRegex")
-  (c-name "g_regex_get_match_flags")
-  (return-type "GRegexMatchFlags")
-)
-
-(define-function g_regex_match_simple
-  (c-name "g_regex_match_simple")
+  (c-name "g_regex_match_all")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "pattern")
     '("const-gchar*" "string")
-    '("GRegexCompileFlags" "compile_options")
     '("GRegexMatchFlags" "match_options")
+    '("GMatchInfo**" "match_info")
   )
 )
 
-(define-method match
+(define-method match_all_full
   (of-object "GRegex")
-  (c-name "g_regex_match")
+  (c-name "g_regex_match_all_full")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "string")
+    '("gchar*" "string")
+    '("gssize" "string_len")
+    '("gint" "start_position")
     '("GRegexMatchFlags" "match_options")
     '("GMatchInfo**" "match_info")
+    '("GError**" "error")
   )
 )
 
@@ -9248,7 +10310,7 @@
   (c-name "g_regex_match_full")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "string")
+    '("gchar*" "string")
     '("gssize" "string_len")
     '("gint" "start_position")
     '("GRegexMatchFlags" "match_options")
@@ -9257,39 +10319,52 @@
   )
 )
 
-(define-method match_all
+(define-method ref
   (of-object "GRegex")
-  (c-name "g_regex_match_all")
-  (return-type "gboolean")
+  (c-name "g_regex_ref")
+  (return-type "GRegex*")
+)
+
+(define-method replace
+  (of-object "GRegex")
+  (c-name "g_regex_replace")
+  (return-type "gchar*")
   (parameters
     '("const-gchar*" "string")
+    '("gssize" "string_len")
+    '("gint" "start_position")
+    '("const-gchar*" "replacement")
     '("GRegexMatchFlags" "match_options")
-    '("GMatchInfo**" "match_info")
+    '("GError**" "error")
   )
 )
 
-(define-method match_all_full
+(define-method replace_eval
   (of-object "GRegex")
-  (c-name "g_regex_match_all_full")
-  (return-type "gboolean")
+  (c-name "g_regex_replace_eval")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "string")
+    '("gchar*" "string")
     '("gssize" "string_len")
     '("gint" "start_position")
     '("GRegexMatchFlags" "match_options")
-    '("GMatchInfo**" "match_info")
+    '("GRegexEvalCallback" "eval")
+    '("gpointer" "user_data")
     '("GError**" "error")
   )
 )
 
-(define-function g_regex_split_simple
-  (c-name "g_regex_split_simple")
-  (return-type "gchar**")
+(define-method replace_literal
+  (of-object "GRegex")
+  (c-name "g_regex_replace_literal")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "pattern")
     '("const-gchar*" "string")
-    '("GRegexCompileFlags" "compile_options")
+    '("gssize" "string_len")
+    '("gint" "start_position")
+    '("const-gchar*" "replacement")
     '("GRegexMatchFlags" "match_options")
+    '("GError**" "error")
   )
 )
 
@@ -9317,226 +10392,337 @@
   )
 )
 
-(define-method replace
+(define-method unref
   (of-object "GRegex")
-  (c-name "g_regex_replace")
-  (return-type "gchar*")
+  (c-name "g_regex_unref")
+  (return-type "void")
+)
+
+(define-function g_regex_check_replacement
+  (c-name "g_regex_check_replacement")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "string")
-    '("gssize" "string_len")
-    '("gint" "start_position")
     '("const-gchar*" "replacement")
-    '("GRegexMatchFlags" "match_options")
+    '("gboolean*" "has_references")
     '("GError**" "error")
   )
 )
 
-(define-method replace_literal
-  (of-object "GRegex")
-  (c-name "g_regex_replace_literal")
+(define-function g_regex_error_quark
+  (c-name "g_regex_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_regex_escape_nul
+  (c-name "g_regex_escape_nul")
   (return-type "gchar*")
   (parameters
     '("const-gchar*" "string")
-    '("gssize" "string_len")
-    '("gint" "start_position")
-    '("const-gchar*" "replacement")
-    '("GRegexMatchFlags" "match_options")
-    '("GError**" "error")
+    '("gint" "length")
   )
 )
 
-(define-method replace_eval
-  (of-object "GRegex")
-  (c-name "g_regex_replace_eval")
+(define-function g_regex_escape_string
+  (c-name "g_regex_escape_string")
   (return-type "gchar*")
   (parameters
+    '("gchar*" "string")
+    '("gint" "length")
+  )
+)
+
+(define-function g_regex_match_simple
+  (c-name "g_regex_match_simple")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "pattern")
     '("const-gchar*" "string")
-    '("gssize" "string_len")
-    '("gint" "start_position")
+    '("GRegexCompileFlags" "compile_options")
     '("GRegexMatchFlags" "match_options")
-    '("GRegexEvalCallback" "eval")
-    '("gpointer" "user_data")
-    '("GError**" "error")
   )
 )
 
-(define-function g_regex_check_replacement
-  (c-name "g_regex_check_replacement")
-  (return-type "gboolean")
+(define-function g_regex_split_simple
+  (c-name "g_regex_split_simple")
+  (return-type "gchar**")
   (parameters
-    '("const-gchar*" "replacement")
-    '("gboolean*" "has_references")
-    '("GError**" "error")
+    '("const-gchar*" "pattern")
+    '("const-gchar*" "string")
+    '("GRegexCompileFlags" "compile_options")
+    '("GRegexMatchFlags" "match_options")
   )
 )
 
-(define-method get_regex
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_get_regex")
-  (return-type "GRegex*")
+(define-function g_slist_alloc
+  (c-name "g_slist_alloc")
+  (return-type "GSList*")
 )
 
-(define-method get_string
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_get_string")
-  (return-type "const-gchar*")
+(define-function g_slist_append
+  (c-name "g_slist_append")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("gpointer" "data")
+  )
 )
 
-(define-method ref
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_ref")
-  (return-type "GMatchInfo*")
+(define-function g_slist_concat
+  (c-name "g_slist_concat")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list1")
+    '("GSList*" "list2")
+  )
 )
 
-(define-method unref
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_unref")
-  (return-type "none")
+(define-function g_slist_copy
+  (c-name "g_slist_copy")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+  )
 )
 
-(define-method free
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_free")
-  (return-type "none")
+(define-function g_slist_copy_deep
+  (c-name "g_slist_copy_deep")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("GCopyFunc" "func")
+    '("gpointer" "user_data")
+  )
 )
 
-(define-method next
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_next")
-  (return-type "gboolean")
+(define-function g_slist_delete_link
+  (c-name "g_slist_delete_link")
+  (return-type "GSList*")
   (parameters
-    '("GError**" "error")
+    '("GSList*" "list")
+    '("GSList*" "link_")
   )
 )
 
-(define-method matches
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_matches")
-  (return-type "gboolean")
+(define-function g_slist_find
+  (c-name "g_slist_find")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("gconstpointer" "data")
+  )
 )
 
-(define-method get_match_count
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_get_match_count")
+(define-function g_slist_find_custom
+  (c-name "g_slist_find_custom")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("gconstpointer" "data")
+    '("GCompareFunc" "func")
+  )
+)
+
+(define-function g_slist_foreach
+  (c-name "g_slist_foreach")
+  (return-type "void")
+  (parameters
+    '("GSList*" "list")
+    '("GFunc" "func")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-function g_slist_free
+  (c-name "g_slist_free")
+  (return-type "void")
+  (parameters
+    '("GSList*" "list")
+  )
+)
+
+(define-function g_slist_free_1
+  (c-name "g_slist_free_1")
+  (return-type "void")
+  (parameters
+    '("GSList*" "list")
+  )
+)
+
+(define-function g_slist_free_full
+  (c-name "g_slist_free_full")
+  (return-type "void")
+  (parameters
+    '("GSList*" "list")
+    '("GDestroyNotify" "free_func")
+  )
+)
+
+(define-function g_slist_index
+  (c-name "g_slist_index")
   (return-type "gint")
+  (parameters
+    '("GSList*" "list")
+    '("gconstpointer" "data")
+  )
 )
 
-(define-method is_partial_match
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_is_partial_match")
-  (return-type "gboolean")
+(define-function g_slist_insert
+  (c-name "g_slist_insert")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("gpointer" "data")
+    '("gint" "position")
+  )
 )
 
-(define-method expand_references
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_expand_references")
-  (return-type "gchar*")
+(define-function g_slist_insert_before
+  (c-name "g_slist_insert_before")
+  (return-type "GSList*")
   (parameters
-    '("const-gchar*" "string_to_expand")
-    '("GError**" "error")
+    '("GSList*" "slist")
+    '("GSList*" "sibling")
+    '("gpointer" "data")
   )
 )
 
-(define-method fetch
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_fetch")
-  (return-type "gchar*")
+(define-function g_slist_insert_sorted
+  (c-name "g_slist_insert_sorted")
+  (return-type "GSList*")
   (parameters
-    '("gint" "match_num")
+    '("GSList*" "list")
+    '("gpointer" "data")
+    '("GCompareFunc" "func")
   )
 )
 
-(define-method fetch_pos
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_fetch_pos")
-  (return-type "gboolean")
+(define-function g_slist_insert_sorted_with_data
+  (c-name "g_slist_insert_sorted_with_data")
+  (return-type "GSList*")
   (parameters
-    '("gint" "match_num")
-    '("gint*" "start_pos")
-    '("gint*" "end_pos")
+    '("GSList*" "list")
+    '("gpointer" "data")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method fetch_named
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_fetch_named")
-  (return-type "gchar*")
+(define-function g_slist_last
+  (c-name "g_slist_last")
+  (return-type "GSList*")
   (parameters
-    '("const-gchar*" "name")
+    '("GSList*" "list")
   )
 )
 
-(define-method fetch_named_pos
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_fetch_named_pos")
-  (return-type "gboolean")
+(define-function g_slist_length
+  (c-name "g_slist_length")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "name")
-    '("gint*" "start_pos")
-    '("gint*" "end_pos")
+    '("GSList*" "list")
   )
 )
 
-(define-method fetch_all
-  (of-object "GMatchInfo")
-  (c-name "g_match_info_fetch_all")
-  (return-type "gchar**")
+(define-function g_slist_nth
+  (c-name "g_slist_nth")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("guint" "n")
+  )
 )
 
+(define-function g_slist_nth_data
+  (c-name "g_slist_nth_data")
+  (return-type "gpointer")
+  (parameters
+    '("GSList*" "list")
+    '("guint" "n")
+  )
+)
 
+(define-function g_slist_position
+  (c-name "g_slist_position")
+  (return-type "gint")
+  (parameters
+    '("GSList*" "list")
+    '("GSList*" "llink")
+  )
+)
 
-;; From gscanner.h
+(define-function g_slist_prepend
+  (c-name "g_slist_prepend")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("gpointer" "data")
+  )
+)
 
-(define-function g_scanner_new
-  (c-name "g_scanner_new")
-  (is-constructor-of "GScanner")
-  (return-type "GScanner*")
+(define-function g_slist_remove
+  (c-name "g_slist_remove")
+  (return-type "GSList*")
   (parameters
-    '("const-GScannerConfig*" "config_templ")
+    '("GSList*" "list")
+    '("gconstpointer" "data")
   )
 )
 
-(define-method destroy
-  (of-object "GScanner")
-  (c-name "g_scanner_destroy")
-  (return-type "none")
+(define-function g_slist_remove_all
+  (c-name "g_slist_remove_all")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("gconstpointer" "data")
+  )
 )
 
-(define-method input_file
-  (of-object "GScanner")
-  (c-name "g_scanner_input_file")
-  (return-type "none")
+(define-function g_slist_remove_link
+  (c-name "g_slist_remove_link")
+  (return-type "GSList*")
   (parameters
-    '("gint" "input_fd")
+    '("GSList*" "list")
+    '("GSList*" "link_")
   )
 )
 
-(define-method sync_file_offset
-  (of-object "GScanner")
-  (c-name "g_scanner_sync_file_offset")
-  (return-type "none")
+(define-function g_slist_reverse
+  (c-name "g_slist_reverse")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+  )
 )
 
-(define-method input_text
-  (of-object "GScanner")
-  (c-name "g_scanner_input_text")
-  (return-type "none")
+(define-function g_slist_sort
+  (c-name "g_slist_sort")
+  (return-type "GSList*")
   (parameters
-    '("const-gchar*" "text")
-    '("guint" "text_len")
+    '("GSList*" "list")
+    '("GCompareFunc" "compare_func")
   )
 )
 
-(define-method get_next_token
+(define-function g_slist_sort_with_data
+  (c-name "g_slist_sort_with_data")
+  (return-type "GSList*")
+  (parameters
+    '("GSList*" "list")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-method cur_line
   (of-object "GScanner")
-  (c-name "g_scanner_get_next_token")
-  (return-type "GTokenType")
+  (c-name "g_scanner_cur_line")
+  (return-type "guint")
 )
 
-(define-method peek_next_token
+(define-method cur_position
   (of-object "GScanner")
-  (c-name "g_scanner_peek_next_token")
-  (return-type "GTokenType")
+  (c-name "g_scanner_cur_position")
+  (return-type "guint")
 )
 
 (define-method cur_token
@@ -9551,16 +10737,10 @@
   (return-type "GTokenValue")
 )
 
-(define-method cur_line
-  (of-object "GScanner")
-  (c-name "g_scanner_cur_line")
-  (return-type "guint")
-)
-
-(define-method cur_position
+(define-method destroy
   (of-object "GScanner")
-  (c-name "g_scanner_cur_position")
-  (return-type "guint")
+  (c-name "g_scanner_destroy")
+  (return-type "void")
 )
 
 (define-method eof
@@ -9569,19 +10749,60 @@
   (return-type "gboolean")
 )
 
-(define-method set_scope
+(define-method error
   (of-object "GScanner")
-  (c-name "g_scanner_set_scope")
-  (return-type "guint")
+  (c-name "g_scanner_error")
+  (return-type "void")
   (parameters
-    '("guint" "scope_id")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
+(define-method get_next_token
+  (of-object "GScanner")
+  (c-name "g_scanner_get_next_token")
+  (return-type "GTokenType")
+)
+
+(define-method input_file
+  (of-object "GScanner")
+  (c-name "g_scanner_input_file")
+  (return-type "void")
+  (parameters
+    '("gint" "input_fd")
+  )
+)
+
+(define-method input_text
+  (of-object "GScanner")
+  (c-name "g_scanner_input_text")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "text")
+    '("guint" "text_len")
+  )
+)
+
+(define-method lookup_symbol
+  (of-object "GScanner")
+  (c-name "g_scanner_lookup_symbol")
+  (return-type "gpointer")
+  (parameters
+    '("const-gchar*" "symbol")
+  )
+)
+
+(define-method peek_next_token
+  (of-object "GScanner")
+  (c-name "g_scanner_peek_next_token")
+  (return-type "GTokenType")
+)
+
 (define-method scope_add_symbol
   (of-object "GScanner")
   (c-name "g_scanner_scope_add_symbol")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("guint" "scope_id")
     '("const-gchar*" "symbol")
@@ -9589,13 +10810,14 @@
   )
 )
 
-(define-method scope_remove_symbol
+(define-method scope_foreach_symbol
   (of-object "GScanner")
-  (c-name "g_scanner_scope_remove_symbol")
-  (return-type "none")
+  (c-name "g_scanner_scope_foreach_symbol")
+  (return-type "void")
   (parameters
     '("guint" "scope_id")
-    '("const-gchar*" "symbol")
+    '("GHFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
@@ -9609,30 +10831,35 @@
   )
 )
 
-(define-method scope_foreach_symbol
+(define-method scope_remove_symbol
   (of-object "GScanner")
-  (c-name "g_scanner_scope_foreach_symbol")
-  (return-type "none")
+  (c-name "g_scanner_scope_remove_symbol")
+  (return-type "void")
   (parameters
     '("guint" "scope_id")
-    '("GHFunc" "func")
-    '("gpointer" "user_data")
+    '("const-gchar*" "symbol")
   )
 )
 
-(define-method lookup_symbol
+(define-method set_scope
   (of-object "GScanner")
-  (c-name "g_scanner_lookup_symbol")
-  (return-type "gpointer")
+  (c-name "g_scanner_set_scope")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "symbol")
+    '("guint" "scope_id")
   )
 )
 
+(define-method sync_file_offset
+  (of-object "GScanner")
+  (c-name "g_scanner_sync_file_offset")
+  (return-type "void")
+)
+
 (define-method unexp_token
   (of-object "GScanner")
   (c-name "g_scanner_unexp_token")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GTokenType" "expected_token")
     '("const-gchar*" "identifier_spec")
@@ -9643,100 +10870,47 @@
   )
 )
 
-(define-method error
-  (of-object "GScanner")
-  (c-name "g_scanner_error")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "format")
-  )
-  (varargs #t)
-)
-
 (define-method warn
   (of-object "GScanner")
   (c-name "g_scanner_warn")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("const-gchar*" "format")
+    '("..." "...")
   )
-  (varargs #t)
 )
 
-
-
-;; From gscripttable.h
-
-
-
-;; From gsequence.h
-
-(define-function g_sequence_new
-  (c-name "g_sequence_new")
-  (is-constructor-of "GSequence")
-  (return-type "GSequence*")
+(define-function g_scanner_new
+  (c-name "g_scanner_new")
+  (return-type "GScanner*")
   (parameters
-    '("GDestroyNotify" "data_destroy")
+    '("const-GScannerConfig*" "config_templ")
   )
 )
 
-(define-method free
-  (of-object "GSequence")
-  (c-name "g_sequence_free")
-  (return-type "none")
-)
-
-(define-method get_length
+(define-method append
   (of-object "GSequence")
-  (c-name "g_sequence_get_length")
-  (return-type "gint")
+  (c-name "g_sequence_append")
+  (return-type "GSequenceIter*")
+  (parameters
+    '("gpointer" "data")
+  )
 )
 
 (define-method foreach
   (of-object "GSequence")
   (c-name "g_sequence_foreach")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GFunc" "func")
     '("gpointer" "user_data")
   )
 )
 
-(define-function g_sequence_foreach_range
-  (c-name "g_sequence_foreach_range")
-  (return-type "none")
-  (parameters
-    '("GSequenceIter*" "begin")
-    '("GSequenceIter*" "end")
-    '("GFunc" "func")
-    '("gpointer" "user_data")
-  )
-)
-
-(define-method sort
-  (of-object "GSequence")
-  (c-name "g_sequence_sort")
-  (return-type "none")
-  (parameters
-    '("GCompareDataFunc" "cmp_func")
-    '("gpointer" "cmp_data")
-  )
-)
-
-(define-method sort_iter
-  (of-object "GSequence")
-  (c-name "g_sequence_sort_iter")
-  (return-type "none")
-  (parameters
-    '("GSequenceIterCompareFunc" "cmp_func")
-    '("gpointer" "cmp_data")
-  )
-)
-
-(define-method is_empty
+(define-method free
   (of-object "GSequence")
-  (c-name "g_sequence_is_empty")
-  (return-type "gboolean")
+  (c-name "g_sequence_free")
+  (return-type "void")
 )
 
 (define-method get_begin_iter
@@ -9760,54 +10934,74 @@
   )
 )
 
-(define-method append
+(define-method get_length
   (of-object "GSequence")
-  (c-name "g_sequence_append")
+  (c-name "g_sequence_get_length")
+  (return-type "gint")
+)
+
+(define-method insert_sorted
+  (of-object "GSequence")
+  (c-name "g_sequence_insert_sorted")
   (return-type "GSequenceIter*")
   (parameters
     '("gpointer" "data")
+    '("GCompareDataFunc" "cmp_func")
+    '("gpointer" "cmp_data")
   )
 )
 
-(define-method prepend
+(define-method insert_sorted_iter
   (of-object "GSequence")
-  (c-name "g_sequence_prepend")
+  (c-name "g_sequence_insert_sorted_iter")
   (return-type "GSequenceIter*")
   (parameters
     '("gpointer" "data")
+    '("GSequenceIterCompareFunc" "iter_cmp")
+    '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_insert_before
-  (c-name "g_sequence_insert_before")
+(define-method is_empty
+  (of-object "GSequence")
+  (c-name "g_sequence_is_empty")
+  (return-type "gboolean")
+)
+
+(define-method lookup
+  (of-object "GSequence")
+  (c-name "g_sequence_lookup")
   (return-type "GSequenceIter*")
   (parameters
-    '("GSequenceIter*" "iter")
     '("gpointer" "data")
+    '("GCompareDataFunc" "cmp_func")
+    '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_move
-  (c-name "g_sequence_move")
-  (return-type "none")
+(define-method lookup_iter
+  (of-object "GSequence")
+  (c-name "g_sequence_lookup_iter")
+  (return-type "GSequenceIter*")
   (parameters
-    '("GSequenceIter*" "src")
-    '("GSequenceIter*" "dest")
+    '("gpointer" "data")
+    '("GSequenceIterCompareFunc" "iter_cmp")
+    '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_swap
-  (c-name "g_sequence_swap")
-  (return-type "none")
+(define-method prepend
+  (of-object "GSequence")
+  (c-name "g_sequence_prepend")
+  (return-type "GSequenceIter*")
   (parameters
-    '("GSequenceIter*" "a")
-    '("GSequenceIter*" "b")
+    '("gpointer" "data")
   )
 )
 
-(define-method insert_sorted
+(define-method search
   (of-object "GSequence")
-  (c-name "g_sequence_insert_sorted")
+  (c-name "g_sequence_search")
   (return-type "GSequenceIter*")
   (parameters
     '("gpointer" "data")
@@ -9816,9 +11010,9 @@
   )
 )
 
-(define-method insert_sorted_iter
+(define-method search_iter
   (of-object "GSequence")
-  (c-name "g_sequence_insert_sorted_iter")
+  (c-name "g_sequence_search_iter")
   (return-type "GSequenceIter*")
   (parameters
     '("gpointer" "data")
@@ -9827,46 +11021,66 @@
   )
 )
 
-(define-function g_sequence_sort_changed
-  (c-name "g_sequence_sort_changed")
-  (return-type "none")
+(define-method sort
+  (of-object "GSequence")
+  (c-name "g_sequence_sort")
+  (return-type "void")
   (parameters
-    '("GSequenceIter*" "iter")
     '("GCompareDataFunc" "cmp_func")
     '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_sort_changed_iter
-  (c-name "g_sequence_sort_changed_iter")
-  (return-type "none")
+(define-method sort_iter
+  (of-object "GSequence")
+  (c-name "g_sequence_sort_iter")
+  (return-type "void")
   (parameters
-    '("GSequenceIter*" "iter")
-    '("GSequenceIterCompareFunc" "iter_cmp")
+    '("GSequenceIterCompareFunc" "cmp_func")
     '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_remove
-  (c-name "g_sequence_remove")
-  (return-type "none")
+(define-function g_sequence_foreach_range
+  (c-name "g_sequence_foreach_range")
+  (return-type "void")
+  (parameters
+    '("GSequenceIter*" "begin")
+    '("GSequenceIter*" "end")
+    '("GFunc" "func")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-function g_sequence_get
+  (c-name "g_sequence_get")
+  (return-type "gpointer")
   (parameters
     '("GSequenceIter*" "iter")
   )
 )
 
-(define-function g_sequence_remove_range
-  (c-name "g_sequence_remove_range")
-  (return-type "none")
+(define-function g_sequence_insert_before
+  (c-name "g_sequence_insert_before")
+  (return-type "GSequenceIter*")
   (parameters
-    '("GSequenceIter*" "begin")
-    '("GSequenceIter*" "end")
+    '("GSequenceIter*" "iter")
+    '("gpointer" "data")
+  )
+)
+
+(define-function g_sequence_move
+  (c-name "g_sequence_move")
+  (return-type "void")
+  (parameters
+    '("GSequenceIter*" "src")
+    '("GSequenceIter*" "dest")
   )
 )
 
 (define-function g_sequence_move_range
   (c-name "g_sequence_move_range")
-  (return-type "none")
+  (return-type "void")
   (parameters
     '("GSequenceIter*" "dest")
     '("GSequenceIter*" "begin")
@@ -9874,95 +11088,109 @@
   )
 )
 
-(define-method search
-  (of-object "GSequence")
-  (c-name "g_sequence_search")
-  (return-type "GSequenceIter*")
+(define-function g_sequence_new
+  (c-name "g_sequence_new")
+  (return-type "GSequence*")
   (parameters
-    '("gpointer" "data")
-    '("GCompareDataFunc" "cmp_func")
-    '("gpointer" "cmp_data")
+    '("GDestroyNotify" "data_destroy")
   )
 )
 
-(define-method search_iter
-  (of-object "GSequence")
-  (c-name "g_sequence_search_iter")
+(define-function g_sequence_range_get_midpoint
+  (c-name "g_sequence_range_get_midpoint")
   (return-type "GSequenceIter*")
   (parameters
-    '("gpointer" "data")
-    '("GSequenceIterCompareFunc" "iter_cmp")
-    '("gpointer" "cmp_data")
+    '("GSequenceIter*" "begin")
+    '("GSequenceIter*" "end")
   )
 )
 
-(define-method lookup
-  (of-object "GSequence")
-  (c-name "g_sequence_lookup")
-  (return-type "GSequenceIter*")
+(define-function g_sequence_remove
+  (c-name "g_sequence_remove")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
-    '("GCompareDataFunc" "cmp_func")
-    '("gpointer" "cmp_data")
+    '("GSequenceIter*" "iter")
   )
 )
 
-(define-method lookup_iter
-  (of-object "GSequence")
-  (c-name "g_sequence_lookup_iter")
-  (return-type "GSequenceIter*")
+(define-function g_sequence_remove_range
+  (c-name "g_sequence_remove_range")
+  (return-type "void")
+  (parameters
+    '("GSequenceIter*" "begin")
+    '("GSequenceIter*" "end")
+  )
+)
+
+(define-function g_sequence_set
+  (c-name "g_sequence_set")
+  (return-type "void")
   (parameters
+    '("GSequenceIter*" "iter")
     '("gpointer" "data")
-    '("GSequenceIterCompareFunc" "iter_cmp")
-    '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_get
-  (c-name "g_sequence_get")
-  (return-type "gpointer")
+(define-function g_sequence_sort_changed
+  (c-name "g_sequence_sort_changed")
+  (return-type "void")
   (parameters
     '("GSequenceIter*" "iter")
+    '("GCompareDataFunc" "cmp_func")
+    '("gpointer" "cmp_data")
   )
 )
 
-(define-function g_sequence_set
-  (c-name "g_sequence_set")
-  (return-type "none")
+(define-function g_sequence_sort_changed_iter
+  (c-name "g_sequence_sort_changed_iter")
+  (return-type "void")
   (parameters
     '("GSequenceIter*" "iter")
-    '("gpointer" "data")
+    '("GSequenceIterCompareFunc" "iter_cmp")
+    '("gpointer" "cmp_data")
   )
 )
 
-(define-method is_begin
+(define-function g_sequence_swap
+  (c-name "g_sequence_swap")
+  (return-type "void")
+  (parameters
+    '("GSequenceIter*" "a")
+    '("GSequenceIter*" "b")
+  )
+)
+
+(define-method compare
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_is_begin")
-  (return-type "gboolean")
+  (c-name "g_sequence_iter_compare")
+  (return-type "gint")
+  (parameters
+    '("GSequenceIter*" "b")
+  )
 )
 
-(define-method is_end
+(define-method get_position
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_is_end")
-  (return-type "gboolean")
+  (c-name "g_sequence_iter_get_position")
+  (return-type "gint")
 )
 
-(define-method next
+(define-method get_sequence
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_next")
-  (return-type "GSequenceIter*")
+  (c-name "g_sequence_iter_get_sequence")
+  (return-type "GSequence*")
 )
 
-(define-method prev
+(define-method is_begin
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_prev")
-  (return-type "GSequenceIter*")
+  (c-name "g_sequence_iter_is_begin")
+  (return-type "gboolean")
 )
 
-(define-method get_position
+(define-method is_end
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_get_position")
-  (return-type "gint")
+  (c-name "g_sequence_iter_is_end")
+  (return-type "gboolean")
 )
 
 (define-method move
@@ -9974,5794 +11202,6633 @@
   )
 )
 
-(define-method get_sequence
+(define-method next
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_get_sequence")
-  (return-type "GSequence*")
+  (c-name "g_sequence_iter_next")
+  (return-type "GSequenceIter*")
 )
 
-(define-method compare
+(define-method prev
   (of-object "GSequenceIter")
-  (c-name "g_sequence_iter_compare")
-  (return-type "gint")
-  (parameters
-    '("GSequenceIter*" "b")
-  )
-)
-
-(define-function g_sequence_range_get_midpoint
-  (c-name "g_sequence_range_get_midpoint")
+  (c-name "g_sequence_iter_prev")
   (return-type "GSequenceIter*")
-  (parameters
-    '("GSequenceIter*" "begin")
-    '("GSequenceIter*" "end")
-  )
 )
 
-
-
-;; From gshell.h
-
-(define-function g_shell_error_quark
-  (c-name "g_shell_error_quark")
-  (return-type "GQuark")
-)
-
-(define-function g_shell_quote
-  (c-name "g_shell_quote")
-  (return-type "gchar*")
+(define-function g_source_new
+  (c-name "g_source_new")
+  (return-type "GSource*")
   (parameters
-    '("const-gchar*" "unquoted_string")
+    '("GSourceFuncs*" "source_funcs")
+    '("guint" "struct_size")
   )
 )
 
-(define-function g_shell_unquote
-  (c-name "g_shell_unquote")
-  (return-type "gchar*")
+(define-method add_child_source
+  (of-object "GSource")
+  (c-name "g_source_add_child_source")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "quoted_string")
-    '("GError**" "error")
+    '("GSource*" "child_source")
   )
 )
 
-(define-function g_shell_parse_argv
-  (c-name "g_shell_parse_argv")
-  (return-type "gboolean")
+(define-method add_poll
+  (of-object "GSource")
+  (c-name "g_source_add_poll")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "command_line")
-    '("gint*" "argcp")
-    '("gchar***" "argvp")
-    '("GError**" "error")
+    '("GPollFD*" "fd")
   )
 )
 
-
-
-;; From gslice.h
-
-(define-function g_slice_alloc
-  (c-name "g_slice_alloc")
+(define-method add_unix_fd
+  (of-object "GSource")
+  (c-name "g_source_add_unix_fd")
   (return-type "gpointer")
   (parameters
-    '("gsize" "block_size")
+    '("gint" "fd")
+    '("GIOCondition" "events")
   )
 )
 
-(define-function g_slice_alloc0
-  (c-name "g_slice_alloc0")
-  (return-type "gpointer")
+(define-method attach
+  (of-object "GSource")
+  (c-name "g_source_attach")
+  (return-type "guint")
   (parameters
-    '("gsize" "block_size")
+    '("GMainContext*" "context")
   )
 )
 
-(define-function g_slice_copy
-  (c-name "g_slice_copy")
-  (return-type "gpointer")
-  (parameters
-    '("gsize" "block_size")
-    '("gconstpointer" "mem_block")
-  )
+(define-method destroy
+  (of-object "GSource")
+  (c-name "g_source_destroy")
+  (return-type "void")
 )
 
-(define-function g_slice_free1
-  (c-name "g_slice_free1")
-  (return-type "none")
-  (parameters
-    '("gsize" "block_size")
-    '("gpointer" "mem_block")
-  )
+(define-method get_can_recurse
+  (of-object "GSource")
+  (c-name "g_source_get_can_recurse")
+  (return-type "gboolean")
 )
 
-(define-function g_slice_free_chain_with_offset
-  (c-name "g_slice_free_chain_with_offset")
-  (return-type "none")
-  (parameters
-    '("gsize" "block_size")
-    '("gpointer" "mem_chain")
-    '("gsize" "next_offset")
-  )
+(define-method get_context
+  (of-object "GSource")
+  (c-name "g_source_get_context")
+  (return-type "GMainContext*")
 )
 
-(define-function g_slice_set_config
-  (c-name "g_slice_set_config")
-  (return-type "none")
+(define-method get_current_time
+  (of-object "GSource")
+  (c-name "g_source_get_current_time")
+  (return-type "void")
   (parameters
-    '("GSliceConfig" "ckey")
-    '("gint64" "value")
+    '("GTimeVal*" "timeval")
   )
 )
 
-(define-function g_slice_get_config
-  (c-name "g_slice_get_config")
-  (return-type "gint64")
-  (parameters
-    '("GSliceConfig" "ckey")
-  )
+(define-method get_id
+  (of-object "GSource")
+  (c-name "g_source_get_id")
+  (return-type "guint")
 )
 
-(define-function g_slice_get_config_state
-  (c-name "g_slice_get_config_state")
-  (return-type "gint64*")
-  (parameters
-    '("GSliceConfig" "ckey")
-    '("gint64" "address")
-    '("guint*" "n_values")
-  )
+(define-method get_name
+  (of-object "GSource")
+  (c-name "g_source_get_name")
+  (return-type "const-char*")
 )
 
-(define-function g_slice_debug_tree_statistics
-  (c-name "g_slice_debug_tree_statistics")
-  (return-type "none")
+(define-method get_priority
+  (of-object "GSource")
+  (c-name "g_source_get_priority")
+  (return-type "gint")
 )
 
-
-
-;; From gslist.h
-
-(define-function g_slist_alloc
-  (c-name "g_slist_alloc")
-  (return-type "GSList*")
+(define-method get_ready_time
+  (of-object "GSource")
+  (c-name "g_source_get_ready_time")
+  (return-type "gint64")
 )
 
-(define-method free
-  (of-object "GSList")
-  (c-name "g_slist_free")
-  (return-type "none")
+(define-method get_time
+  (of-object "GSource")
+  (c-name "g_source_get_time")
+  (return-type "gint64")
 )
 
-(define-method free_1
-  (of-object "GSList")
-  (c-name "g_slist_free_1")
-  (return-type "none")
+(define-method is_destroyed
+  (of-object "GSource")
+  (c-name "g_source_is_destroyed")
+  (return-type "gboolean")
 )
 
-(define-method free_full
-  (of-object "GSList")
-  (c-name "g_slist_free_full")
-  (return-type "none")
+(define-method modify_unix_fd
+  (of-object "GSource")
+  (c-name "g_source_modify_unix_fd")
+  (return-type "void")
   (parameters
-    '("GDestroyNotify" "free_func")
+    '("gpointer" "tag")
+    '("GIOCondition" "new_events")
   )
 )
 
-(define-method append
-  (of-object "GSList")
-  (c-name "g_slist_append")
-  (return-type "GSList*")
+(define-method query_unix_fd
+  (of-object "GSource")
+  (c-name "g_source_query_unix_fd")
+  (return-type "GIOCondition")
   (parameters
-    '("gpointer" "data")
+    '("gpointer" "tag")
   )
 )
 
-(define-method prepend
-  (of-object "GSList")
-  (c-name "g_slist_prepend")
-  (return-type "GSList*")
+(define-method ref
+  (of-object "GSource")
+  (c-name "g_source_ref")
+  (return-type "GSource*")
+)
+
+(define-method remove_child_source
+  (of-object "GSource")
+  (c-name "g_source_remove_child_source")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
+    '("GSource*" "child_source")
   )
 )
 
-(define-method insert
-  (of-object "GSList")
-  (c-name "g_slist_insert")
-  (return-type "GSList*")
+(define-method remove_poll
+  (of-object "GSource")
+  (c-name "g_source_remove_poll")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
-    '("gint" "position")
+    '("GPollFD*" "fd")
   )
 )
 
-(define-method insert_sorted
-  (of-object "GSList")
-  (c-name "g_slist_insert_sorted")
-  (return-type "GSList*")
+(define-method remove_unix_fd
+  (of-object "GSource")
+  (c-name "g_source_remove_unix_fd")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
-    '("GCompareFunc" "func")
+    '("gpointer" "tag")
   )
 )
 
-(define-method insert_sorted_with_data
-  (of-object "GSList")
-  (c-name "g_slist_insert_sorted_with_data")
-  (return-type "GSList*")
+(define-method set_callback
+  (of-object "GSource")
+  (c-name "g_source_set_callback")
+  (return-type "void")
   (parameters
+    '("GSourceFunc" "func")
     '("gpointer" "data")
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-method insert_before
-  (of-object "GSList")
-  (c-name "g_slist_insert_before")
-  (return-type "GSList*")
+(define-method set_callback_indirect
+  (of-object "GSource")
+  (c-name "g_source_set_callback_indirect")
+  (return-type "void")
   (parameters
-    '("GSList*" "sibling")
-    '("gpointer" "data")
+    '("gpointer" "callback_data")
+    '("GSourceCallbackFuncs*" "callback_funcs")
   )
 )
 
-(define-method concat
-  (of-object "GSList")
-  (c-name "g_slist_concat")
-  (return-type "GSList*")
+(define-method set_can_recurse
+  (of-object "GSource")
+  (c-name "g_source_set_can_recurse")
+  (return-type "void")
   (parameters
-    '("GSList*" "list2")
+    '("gboolean" "can_recurse")
   )
 )
 
-(define-method remove
-  (of-object "GSList")
-  (c-name "g_slist_remove")
-  (return-type "GSList*")
+(define-method set_funcs
+  (of-object "GSource")
+  (c-name "g_source_set_funcs")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "data")
+    '("GSourceFuncs*" "funcs")
   )
 )
 
-(define-method remove_all
-  (of-object "GSList")
-  (c-name "g_slist_remove_all")
-  (return-type "GSList*")
+(define-method set_name
+  (of-object "GSource")
+  (c-name "g_source_set_name")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "data")
+    '("const-char*" "name")
   )
 )
 
-(define-method remove_link
-  (of-object "GSList")
-  (c-name "g_slist_remove_link")
-  (return-type "GSList*")
+(define-method set_priority
+  (of-object "GSource")
+  (c-name "g_source_set_priority")
+  (return-type "void")
   (parameters
-    '("GSList*" "link_")
+    '("gint" "priority")
   )
 )
 
-(define-method delete_link
-  (of-object "GSList")
-  (c-name "g_slist_delete_link")
-  (return-type "GSList*")
+(define-method set_ready_time
+  (of-object "GSource")
+  (c-name "g_source_set_ready_time")
+  (return-type "void")
   (parameters
-    '("GSList*" "link_")
+    '("gint64" "ready_time")
   )
 )
 
-(define-method reverse
-  (of-object "GSList")
-  (c-name "g_slist_reverse")
-  (return-type "GSList*")
+(define-method unref
+  (of-object "GSource")
+  (c-name "g_source_unref")
+  (return-type "void")
 )
 
-(define-method copy
-  (of-object "GSList")
-  (c-name "g_slist_copy")
-  (return-type "GSList*")
+(define-function g_source_remove
+  (c-name "g_source_remove")
+  (return-type "gboolean")
+  (parameters
+    '("guint" "tag")
+  )
 )
 
-(define-method copy_deep
-  (of-object "GSList")
-  (c-name "g_slist_copy_deep")
-  (return-type "GSList*")
+(define-function g_source_remove_by_funcs_user_data
+  (c-name "g_source_remove_by_funcs_user_data")
+  (return-type "gboolean")
   (parameters
-    '("GCopyFunc" "func")
+    '("GSourceFuncs*" "funcs")
     '("gpointer" "user_data")
   )
 )
 
-(define-method nth
-  (of-object "GSList")
-  (c-name "g_slist_nth")
-  (return-type "GSList*")
+(define-function g_source_remove_by_user_data
+  (c-name "g_source_remove_by_user_data")
+  (return-type "gboolean")
   (parameters
-    '("guint" "n")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method find
-  (of-object "GSList")
-  (c-name "g_slist_find")
-  (return-type "GSList*")
+(define-function g_source_set_name_by_id
+  (c-name "g_source_set_name_by_id")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "data")
+    '("guint" "tag")
+    '("const-char*" "name")
   )
 )
 
-(define-method find_custom
-  (of-object "GSList")
-  (c-name "g_slist_find_custom")
-  (return-type "GSList*")
+(define-method append
+  (of-object "GString")
+  (c-name "g_string_append")
+  (return-type "GString*")
   (parameters
-    '("gconstpointer" "data")
-    '("GCompareFunc" "func")
+    '("const-gchar*" "val")
   )
 )
 
-(define-method position
-  (of-object "GSList")
-  (c-name "g_slist_position")
-  (return-type "gint")
+(define-method append_c
+  (of-object "GString")
+  (c-name "g_string_append_c")
+  (return-type "GString*")
   (parameters
-    '("GSList*" "llink")
+    '("gchar" "c")
   )
 )
 
-(define-method index
-  (of-object "GSList")
-  (c-name "g_slist_index")
-  (return-type "gint")
+(define-method append_len
+  (of-object "GString")
+  (c-name "g_string_append_len")
+  (return-type "GString*")
   (parameters
-    '("gconstpointer" "data")
+    '("const-gchar*" "val")
+    '("gssize" "len")
   )
 )
 
-(define-method last
-  (of-object "GSList")
-  (c-name "g_slist_last")
-  (return-type "GSList*")
-)
-
-(define-method length
-  (of-object "GSList")
-  (c-name "g_slist_length")
-  (return-type "guint")
-)
-
-(define-method foreach
-  (of-object "GSList")
-  (c-name "g_slist_foreach")
-  (return-type "none")
+(define-method append_printf
+  (of-object "GString")
+  (c-name "g_string_append_printf")
+  (return-type "void")
   (parameters
-    '("GFunc" "func")
-    '("gpointer" "user_data")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-method sort
-  (of-object "GSList")
-  (c-name "g_slist_sort")
-  (return-type "GSList*")
+(define-method append_unichar
+  (of-object "GString")
+  (c-name "g_string_append_unichar")
+  (return-type "GString*")
   (parameters
-    '("GCompareFunc" "compare_func")
+    '("gunichar" "wc")
   )
 )
 
-(define-method sort_with_data
-  (of-object "GSList")
-  (c-name "g_slist_sort_with_data")
-  (return-type "GSList*")
+(define-method append_uri_escaped
+  (of-object "GString")
+  (c-name "g_string_append_uri_escaped")
+  (return-type "GString*")
   (parameters
-    '("GCompareDataFunc" "compare_func")
-    '("gpointer" "user_data")
+    '("const-gchar*" "unescaped")
+    '("const-gchar*" "reserved_chars_allowed")
+    '("gboolean" "allow_utf8")
   )
 )
 
-(define-method nth_data
-  (of-object "GSList")
-  (c-name "g_slist_nth_data")
-  (return-type "gpointer")
+(define-method append_vprintf
+  (of-object "GString")
+  (c-name "g_string_append_vprintf")
+  (return-type "void")
   (parameters
-    '("guint" "n")
+    '("const-gchar*" "format")
+    '("va_list" "args")
   )
 )
 
-
-
-;; From gspawn.h
-
-(define-function g_spawn_error_quark
-  (c-name "g_spawn_error_quark")
-  (return-type "GQuark")
+(define-method ascii_down
+  (of-object "GString")
+  (c-name "g_string_ascii_down")
+  (return-type "GString*")
 )
 
-(define-function g_spawn_exit_error_quark
-  (c-name "g_spawn_exit_error_quark")
-  (return-type "GQuark")
+(define-method ascii_up
+  (of-object "GString")
+  (c-name "g_string_ascii_up")
+  (return-type "GString*")
 )
 
-(define-function g_spawn_async
-  (c-name "g_spawn_async")
-  (return-type "gboolean")
+(define-method assign
+  (of-object "GString")
+  (c-name "g_string_assign")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "working_directory")
-    '("gchar**" "argv")
-    '("gchar**" "envp")
-    '("GSpawnFlags" "flags")
-    '("GSpawnChildSetupFunc" "child_setup")
-    '("gpointer" "user_data")
-    '("GPid*" "child_pid")
-    '("GError**" "error")
+    '("const-gchar*" "rval")
   )
 )
 
-(define-function g_spawn_async_with_pipes
-  (c-name "g_spawn_async_with_pipes")
-  (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "working_directory")
-    '("gchar**" "argv")
-    '("gchar**" "envp")
-    '("GSpawnFlags" "flags")
-    '("GSpawnChildSetupFunc" "child_setup")
-    '("gpointer" "user_data")
-    '("GPid*" "child_pid")
-    '("gint*" "standard_input")
-    '("gint*" "standard_output")
-    '("gint*" "standard_error")
-    '("GError**" "error")
-  )
+(define-method down
+  (of-object "GString")
+  (c-name "g_string_down")
+  (return-type "GString*")
 )
 
-(define-function g_spawn_sync
-  (c-name "g_spawn_sync")
+(define-method equal
+  (of-object "GString")
+  (c-name "g_string_equal")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "working_directory")
-    '("gchar**" "argv")
-    '("gchar**" "envp")
-    '("GSpawnFlags" "flags")
-    '("GSpawnChildSetupFunc" "child_setup")
-    '("gpointer" "user_data")
-    '("gchar**" "standard_output")
-    '("gchar**" "standard_error")
-    '("gint*" "exit_status")
-    '("GError**" "error")
+    '("const-GString*" "v2")
   )
 )
 
-(define-function g_spawn_command_line_sync
-  (c-name "g_spawn_command_line_sync")
-  (return-type "gboolean")
+(define-method erase
+  (of-object "GString")
+  (c-name "g_string_erase")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "command_line")
-    '("gchar**" "standard_output")
-    '("gchar**" "standard_error")
-    '("gint*" "exit_status")
-    '("GError**" "error")
+    '("gssize" "pos")
+    '("gssize" "len")
   )
 )
 
-(define-function g_spawn_command_line_async
-  (c-name "g_spawn_command_line_async")
-  (return-type "gboolean")
+(define-method free
+  (of-object "GString")
+  (c-name "g_string_free")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "command_line")
-    '("GError**" "error")
+    '("gboolean" "free_segment")
   )
 )
 
-(define-function g_spawn_check_exit_status
-  (c-name "g_spawn_check_exit_status")
-  (return-type "gboolean")
-  (parameters
-    '("gint" "exit_status")
-    '("GError**" "error")
-  )
+(define-method free_to_bytes
+  (of-object "GString")
+  (c-name "g_string_free_to_bytes")
+  (return-type "GBytes*")
 )
 
-(define-function g_spawn_close_pid
-  (c-name "g_spawn_close_pid")
-  (return-type "none")
-  (parameters
-    '("GPid" "pid")
-  )
+(define-method hash
+  (of-object "GString")
+  (c-name "g_string_hash")
+  (return-type "guint")
 )
 
-(define-function g_spawn_async_utf8
-  (c-name "g_spawn_async_utf8")
-  (return-type "gboolean")
+(define-method insert
+  (of-object "GString")
+  (c-name "g_string_insert")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "working_directory")
-    '("gchar**" "argv")
-    '("gchar**" "envp")
-    '("GSpawnFlags" "flags")
-    '("GSpawnChildSetupFunc" "child_setup")
-    '("gpointer" "user_data")
-    '("GPid*" "child_pid")
-    '("GError**" "error")
+    '("gssize" "pos")
+    '("const-gchar*" "val")
   )
 )
 
-(define-function g_spawn_async_with_pipes_utf8
-  (c-name "g_spawn_async_with_pipes_utf8")
-  (return-type "gboolean")
+(define-method insert_c
+  (of-object "GString")
+  (c-name "g_string_insert_c")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "working_directory")
-    '("gchar**" "argv")
-    '("gchar**" "envp")
-    '("GSpawnFlags" "flags")
-    '("GSpawnChildSetupFunc" "child_setup")
-    '("gpointer" "user_data")
-    '("GPid*" "child_pid")
-    '("gint*" "standard_input")
-    '("gint*" "standard_output")
-    '("gint*" "standard_error")
-    '("GError**" "error")
+    '("gssize" "pos")
+    '("gchar" "c")
   )
 )
 
-(define-function g_spawn_sync_utf8
-  (c-name "g_spawn_sync_utf8")
-  (return-type "gboolean")
+(define-method insert_len
+  (of-object "GString")
+  (c-name "g_string_insert_len")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "working_directory")
-    '("gchar**" "argv")
-    '("gchar**" "envp")
-    '("GSpawnFlags" "flags")
-    '("GSpawnChildSetupFunc" "child_setup")
-    '("gpointer" "user_data")
-    '("gchar**" "standard_output")
-    '("gchar**" "standard_error")
-    '("gint*" "exit_status")
-    '("GError**" "error")
+    '("gssize" "pos")
+    '("const-gchar*" "val")
+    '("gssize" "len")
   )
 )
 
-(define-function g_spawn_command_line_sync_utf8
-  (c-name "g_spawn_command_line_sync_utf8")
-  (return-type "gboolean")
+(define-method insert_unichar
+  (of-object "GString")
+  (c-name "g_string_insert_unichar")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "command_line")
-    '("gchar**" "standard_output")
-    '("gchar**" "standard_error")
-    '("gint*" "exit_status")
-    '("GError**" "error")
+    '("gssize" "pos")
+    '("gunichar" "wc")
   )
 )
 
-(define-function g_spawn_command_line_async_utf8
-  (c-name "g_spawn_command_line_async_utf8")
-  (return-type "gboolean")
+(define-method overwrite
+  (of-object "GString")
+  (c-name "g_string_overwrite")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "command_line")
-    '("GError**" "error")
+    '("gsize" "pos")
+    '("const-gchar*" "val")
   )
 )
 
-
-
-;; From gstdio.h
-
-(define-function g_access
-  (c-name "g_access")
-  (return-type "int")
+(define-method overwrite_len
+  (of-object "GString")
+  (c-name "g_string_overwrite_len")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "filename")
-    '("int" "mode")
+    '("gsize" "pos")
+    '("const-gchar*" "val")
+    '("gssize" "len")
   )
 )
 
-(define-function g_chdir
-  (c-name "g_chdir")
-  (return-type "int")
+(define-method prepend
+  (of-object "GString")
+  (c-name "g_string_prepend")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "path")
+    '("const-gchar*" "val")
   )
 )
 
-(define-function g_unlink
-  (c-name "g_unlink")
-  (return-type "int")
+(define-method prepend_c
+  (of-object "GString")
+  (c-name "g_string_prepend_c")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "filename")
+    '("gchar" "c")
   )
 )
 
-(define-function g_rmdir
-  (c-name "g_rmdir")
-  (return-type "int")
+(define-method prepend_len
+  (of-object "GString")
+  (c-name "g_string_prepend_len")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "filename")
+    '("const-gchar*" "val")
+    '("gssize" "len")
   )
 )
 
-(define-function g_chmod
-  (c-name "g_chmod")
-  (return-type "int")
+(define-method prepend_unichar
+  (of-object "GString")
+  (c-name "g_string_prepend_unichar")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "filename")
-    '("int" "mode")
+    '("gunichar" "wc")
   )
 )
 
-(define-function g_open
-  (c-name "g_open")
-  (return-type "int")
+(define-method printf
+  (of-object "GString")
+  (c-name "g_string_printf")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "filename")
-    '("int" "flags")
-    '("int" "mode")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_creat
-  (c-name "g_creat")
-  (return-type "int")
+(define-method set_size
+  (of-object "GString")
+  (c-name "g_string_set_size")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "filename")
-    '("int" "mode")
+    '("gsize" "len")
   )
 )
 
-(define-function g_rename
-  (c-name "g_rename")
-  (return-type "int")
+(define-method truncate
+  (of-object "GString")
+  (c-name "g_string_truncate")
+  (return-type "GString*")
   (parameters
-    '("const-gchar*" "oldfilename")
-    '("const-gchar*" "newfilename")
+    '("gsize" "len")
   )
 )
 
-(define-function g_mkdir
-  (c-name "g_mkdir")
-  (return-type "int")
-  (parameters
-    '("const-gchar*" "filename")
-    '("int" "mode")
-  )
+(define-method up
+  (of-object "GString")
+  (c-name "g_string_up")
+  (return-type "GString*")
 )
 
-(define-function g_stat
-  (c-name "g_stat")
-  (return-type "int")
+(define-method vprintf
+  (of-object "GString")
+  (c-name "g_string_vprintf")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "filename")
-    '("GStatBuf*" "buf")
+    '("const-gchar*" "format")
+    '("va_list" "args")
   )
 )
 
-(define-function g_lstat
-  (c-name "g_lstat")
-  (return-type "int")
-  (parameters
-    '("const-gchar*" "filename")
-    '("GStatBuf*" "buf")
-  )
+(define-method clear
+  (of-object "GStringChunk")
+  (c-name "g_string_chunk_clear")
+  (return-type "void")
 )
 
-(define-function g_remove
-  (c-name "g_remove")
-  (return-type "int")
-  (parameters
-    '("const-gchar*" "filename")
-  )
+(define-method free
+  (of-object "GStringChunk")
+  (c-name "g_string_chunk_free")
+  (return-type "void")
 )
 
-(define-function g_fopen
-  (c-name "g_fopen")
-  (return-type "FILE*")
+(define-method insert
+  (of-object "GStringChunk")
+  (c-name "g_string_chunk_insert")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "mode")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_freopen
-  (c-name "g_freopen")
-  (return-type "FILE*")
+(define-method insert_const
+  (of-object "GStringChunk")
+  (c-name "g_string_chunk_insert_const")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "filename")
-    '("const-gchar*" "mode")
-    '("FILE*" "stream")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_utime
-  (c-name "g_utime")
-  (return-type "int")
+(define-method insert_len
+  (of-object "GStringChunk")
+  (c-name "g_string_chunk_insert_len")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "filename")
-    '("struct-utimbuf*" "utb")
+    '("const-gchar*" "string")
+    '("gssize" "len")
   )
 )
 
-(define-function g_close
-  (c-name "g_close")
-  (return-type "gboolean")
+(define-function g_string_chunk_new
+  (c-name "g_string_chunk_new")
+  (return-type "GStringChunk*")
   (parameters
-    '("gint" "fd")
-    '("GError**" "error")
+    '("gsize" "size")
   )
 )
 
+(define-method free
+  (of-object "GTestLogBuffer")
+  (c-name "g_test_log_buffer_free")
+  (return-type "void")
+)
 
+(define-method pop
+  (of-object "GTestLogBuffer")
+  (c-name "g_test_log_buffer_pop")
+  (return-type "GTestLogMsg*")
+)
 
-;; From gstrfuncs.h
-
-(define-function g_ascii_tolower
-  (c-name "g_ascii_tolower")
-  (return-type "gchar")
+(define-method push
+  (of-object "GTestLogBuffer")
+  (c-name "g_test_log_buffer_push")
+  (return-type "void")
   (parameters
-    '("gchar" "c")
+    '("guint" "n_bytes")
+    '("const-guint8*" "bytes")
   )
 )
 
-(define-function g_ascii_toupper
-  (c-name "g_ascii_toupper")
-  (return-type "gchar")
-  (parameters
-    '("gchar" "c")
-  )
+(define-function g_test_log_buffer_new
+  (c-name "g_test_log_buffer_new")
+  (return-type "GTestLogBuffer*")
 )
 
-(define-function g_ascii_digit_value
-  (c-name "g_ascii_digit_value")
-  (return-type "gint")
-  (parameters
-    '("gchar" "c")
-  )
+(define-method free
+  (of-object "GTestLogMsg")
+  (c-name "g_test_log_msg_free")
+  (return-type "void")
 )
 
-(define-function g_ascii_xdigit_value
-  (c-name "g_ascii_xdigit_value")
-  (return-type "gint")
+(define-method add
+  (of-object "GTestSuite")
+  (c-name "g_test_suite_add")
+  (return-type "void")
   (parameters
-    '("gchar" "c")
+    '("GTestCase*" "test_case")
   )
 )
 
-(define-function g_strdelimit
-  (c-name "g_strdelimit")
-  (return-type "gchar*")
+(define-method add_suite
+  (of-object "GTestSuite")
+  (c-name "g_test_suite_add_suite")
+  (return-type "void")
   (parameters
-    '("gchar*" "string")
-    '("const-gchar*" "delimiters")
-    '("gchar" "new_delimiter")
+    '("GTestSuite*" "nestedsuite")
   )
 )
 
-(define-function g_strcanon
-  (c-name "g_strcanon")
-  (return-type "gchar*")
+(define-function g_thread_new
+  (c-name "g_thread_new")
+  (return-type "GThread*")
   (parameters
-    '("gchar*" "string")
-    '("const-gchar*" "valid_chars")
-    '("gchar" "substitutor")
+    '("const-gchar*" "name")
+    '("GThreadFunc" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_strerror
-  (c-name "g_strerror")
-  (return-type "const-gchar*")
+(define-function g_thread_try_new
+  (c-name "g_thread_try_new")
+  (return-type "GThread*")
   (parameters
-    '("gint" "errnum")
+    '("const-gchar*" "name")
+    '("GThreadFunc" "func")
+    '("gpointer" "data")
+    '("GError**" "error")
   )
 )
 
-(define-function g_strsignal
-  (c-name "g_strsignal")
-  (return-type "const-gchar*")
-  (parameters
-    '("gint" "signum")
-  )
+(define-method join
+  (of-object "GThread")
+  (c-name "g_thread_join")
+  (return-type "gpointer")
 )
 
-(define-function g_strreverse
-  (c-name "g_strreverse")
-  (return-type "gchar*")
-  (parameters
-    '("gchar*" "string")
-  )
+(define-method ref
+  (of-object "GThread")
+  (c-name "g_thread_ref")
+  (return-type "GThread*")
 )
 
-(define-function g_strlcpy
-  (c-name "g_strlcpy")
-  (return-type "gsize")
-  (parameters
-    '("gchar*" "dest")
-    '("const-gchar*" "src")
-    '("gsize" "dest_size")
-  )
+(define-method unref
+  (of-object "GThread")
+  (c-name "g_thread_unref")
+  (return-type "void")
 )
 
-(define-function g_strlcat
-  (c-name "g_strlcat")
-  (return-type "gsize")
-  (parameters
-    '("gchar*" "dest")
-    '("const-gchar*" "src")
-    '("gsize" "dest_size")
-  )
+(define-function g_thread_error_quark
+  (c-name "g_thread_error_quark")
+  (return-type "GQuark")
 )
 
-(define-function g_strstr_len
-  (c-name "g_strstr_len")
-  (return-type "gchar*")
+(define-function g_thread_exit
+  (c-name "g_thread_exit")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "haystack")
-    '("gssize" "haystack_len")
-    '("const-gchar*" "needle")
+    '("gpointer" "retval")
   )
 )
 
-(define-function g_strrstr
-  (c-name "g_strrstr")
-  (return-type "gchar*")
-  (parameters
-    '("const-gchar*" "haystack")
-    '("const-gchar*" "needle")
-  )
+(define-function g_thread_self
+  (c-name "g_thread_self")
+  (return-type "GThread*")
 )
 
-(define-function g_strrstr_len
-  (c-name "g_strrstr_len")
-  (return-type "gchar*")
+(define-function g_thread_yield
+  (c-name "g_thread_yield")
+  (return-type "void")
+)
+
+(define-method free
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_free")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "haystack")
-    '("gssize" "haystack_len")
-    '("const-gchar*" "needle")
+    '("gboolean" "immediate")
+    '("gboolean" "wait_")
   )
 )
 
-(define-function g_str_has_suffix
-  (c-name "g_str_has_suffix")
+(define-method get_max_threads
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_get_max_threads")
+  (return-type "gint")
+)
+
+(define-method get_num_threads
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_get_num_threads")
+  (return-type "guint")
+)
+
+(define-method move_to_front
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_move_to_front")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "str")
-    '("const-gchar*" "suffix")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_str_has_prefix
-  (c-name "g_str_has_prefix")
+(define-method push
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_push")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "str")
-    '("const-gchar*" "prefix")
+    '("gpointer" "data")
+    '("GError**" "error")
   )
 )
 
-(define-function g_strtod
-  (c-name "g_strtod")
-  (return-type "gdouble")
+(define-method set_max_threads
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_set_max_threads")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "nptr")
-    '("gchar**" "endptr")
+    '("gint" "max_threads")
+    '("GError**" "error")
   )
 )
 
-(define-function g_ascii_strtod
-  (c-name "g_ascii_strtod")
-  (return-type "gdouble")
+(define-method set_sort_function
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_set_sort_function")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "nptr")
-    '("gchar**" "endptr")
+    '("GCompareDataFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_ascii_strtoull
-  (c-name "g_ascii_strtoull")
-  (return-type "guint64")
+(define-method unprocessed
+  (of-object "GThreadPool")
+  (c-name "g_thread_pool_unprocessed")
+  (return-type "guint")
+)
+
+(define-function g_thread_pool_get_max_idle_time
+  (c-name "g_thread_pool_get_max_idle_time")
+  (return-type "guint")
+)
+
+(define-function g_thread_pool_get_max_unused_threads
+  (c-name "g_thread_pool_get_max_unused_threads")
+  (return-type "gint")
+)
+
+(define-function g_thread_pool_get_num_unused_threads
+  (c-name "g_thread_pool_get_num_unused_threads")
+  (return-type "guint")
+)
+
+(define-function g_thread_pool_new
+  (c-name "g_thread_pool_new")
+  (return-type "GThreadPool*")
   (parameters
-    '("const-gchar*" "nptr")
-    '("gchar**" "endptr")
-    '("guint" "base")
+    '("GFunc" "func")
+    '("gpointer" "user_data")
+    '("gint" "max_threads")
+    '("gboolean" "exclusive")
+    '("GError**" "error")
   )
 )
 
-(define-function g_ascii_strtoll
-  (c-name "g_ascii_strtoll")
-  (return-type "gint64")
+(define-function g_thread_pool_set_max_idle_time
+  (c-name "g_thread_pool_set_max_idle_time")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "nptr")
-    '("gchar**" "endptr")
-    '("guint" "base")
+    '("guint" "interval")
   )
 )
 
-(define-function g_ascii_dtostr
-  (c-name "g_ascii_dtostr")
-  (return-type "gchar*")
+(define-function g_thread_pool_set_max_unused_threads
+  (c-name "g_thread_pool_set_max_unused_threads")
+  (return-type "void")
   (parameters
-    '("gchar*" "buffer")
-    '("gint" "buf_len")
-    '("gdouble" "d")
+    '("gint" "max_threads")
   )
 )
 
-(define-function g_ascii_formatd
-  (c-name "g_ascii_formatd")
-  (return-type "gchar*")
+(define-function g_thread_pool_stop_unused_threads
+  (c-name "g_thread_pool_stop_unused_threads")
+  (return-type "void")
+)
+
+(define-method add
+  (of-object "GTimeVal")
+  (c-name "g_time_val_add")
+  (return-type "void")
   (parameters
-    '("gchar*" "buffer")
-    '("gint" "buf_len")
-    '("const-gchar*" "format")
-    '("gdouble" "d")
+    '("glong" "microseconds")
   )
 )
 
-(define-function g_strchug
-  (c-name "g_strchug")
+(define-method to_iso8601
+  (of-object "GTimeVal")
+  (c-name "g_time_val_to_iso8601")
   (return-type "gchar*")
+)
+
+(define-function g_time_val_from_iso8601
+  (c-name "g_time_val_from_iso8601")
+  (return-type "gboolean")
   (parameters
-    '("gchar*" "string")
+    '("const-gchar*" "iso_date")
+    '("GTimeVal*" "time_")
   )
 )
 
-(define-function g_strchomp
-  (c-name "g_strchomp")
-  (return-type "gchar*")
+(define-function g_time_zone_new
+  (c-name "g_time_zone_new")
+  (return-type "GTimeZone*")
   (parameters
-    '("gchar*" "string")
+    '("const-gchar*" "identifier")
   )
 )
 
-(define-function g_ascii_strcasecmp
-  (c-name "g_ascii_strcasecmp")
+(define-function g_time_zone_new_local
+  (c-name "g_time_zone_new_local")
+  (return-type "GTimeZone*")
+)
+
+(define-function g_time_zone_new_utc
+  (c-name "g_time_zone_new_utc")
+  (return-type "GTimeZone*")
+)
+
+(define-method adjust_time
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_adjust_time")
   (return-type "gint")
   (parameters
-    '("const-gchar*" "s1")
-    '("const-gchar*" "s2")
+    '("GTimeType" "type")
+    '("gint64*" "time_")
   )
 )
 
-(define-function g_ascii_strncasecmp
-  (c-name "g_ascii_strncasecmp")
+(define-method find_interval
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_find_interval")
   (return-type "gint")
   (parameters
-    '("const-gchar*" "s1")
-    '("const-gchar*" "s2")
-    '("gsize" "n")
+    '("GTimeType" "type")
+    '("gint64" "time_")
   )
 )
 
-(define-function g_ascii_strdown
-  (c-name "g_ascii_strdown")
-  (return-type "gchar*")
+(define-method get_abbreviation
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_get_abbreviation")
+  (return-type "const-gchar*")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("gint" "interval")
   )
 )
 
-(define-function g_ascii_strup
-  (c-name "g_ascii_strup")
-  (return-type "gchar*")
+(define-method get_offset
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_get_offset")
+  (return-type "gint32")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("gint" "interval")
   )
 )
 
-(define-function g_str_is_ascii
-  (c-name "g_str_is_ascii")
+(define-method is_dst
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_is_dst")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "str")
+    '("gint" "interval")
   )
 )
 
-(define-function g_strcasecmp
-  (c-name "g_strcasecmp")
-  (return-type "gint")
-  (parameters
-    '("const-gchar*" "s1")
-    '("const-gchar*" "s2")
-  )
+(define-method ref
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_ref")
+  (return-type "GTimeZone*")
 )
 
-(define-function g_strncasecmp
-  (c-name "g_strncasecmp")
-  (return-type "gint")
-  (parameters
-    '("const-gchar*" "s1")
-    '("const-gchar*" "s2")
-    '("guint" "n")
-  )
+(define-method unref
+  (of-object "GTimeZone")
+  (c-name "g_time_zone_unref")
+  (return-type "void")
 )
 
-(define-function g_strdown
-  (c-name "g_strdown")
-  (return-type "gchar*")
-  (parameters
-    '("gchar*" "string")
-  )
+(define-method continue
+  (of-object "GTimer")
+  (c-name "g_timer_continue")
+  (return-type "void")
 )
 
-(define-function g_strup
-  (c-name "g_strup")
-  (return-type "gchar*")
-  (parameters
-    '("gchar*" "string")
-  )
+(define-method destroy
+  (of-object "GTimer")
+  (c-name "g_timer_destroy")
+  (return-type "void")
 )
 
-(define-function g_strdup
-  (c-name "g_strdup")
-  (return-type "gchar*")
+(define-method elapsed
+  (of-object "GTimer")
+  (c-name "g_timer_elapsed")
+  (return-type "gdouble")
   (parameters
-    '("const-gchar*" "str")
+    '("gulong*" "microseconds")
   )
 )
 
-(define-function g_strdup_printf
-  (c-name "g_strdup_printf")
-  (return-type "gchar*")
-  (parameters
-    '("const-gchar*" "format")
-  )
-  (varargs #t)
+(define-method reset
+  (of-object "GTimer")
+  (c-name "g_timer_reset")
+  (return-type "void")
 )
 
-(define-function g_strdup_vprintf
-  (c-name "g_strdup_vprintf")
-  (return-type "gchar*")
-  (parameters
-    '("const-gchar*" "format")
-    '("va_list" "args")
-  )
+(define-method start
+  (of-object "GTimer")
+  (c-name "g_timer_start")
+  (return-type "void")
 )
 
-(define-function g_strndup
-  (c-name "g_strndup")
-  (return-type "gchar*")
+(define-method stop
+  (of-object "GTimer")
+  (c-name "g_timer_stop")
+  (return-type "void")
+)
+
+(define-function g_timer_new
+  (c-name "g_timer_new")
+  (return-type "GTimer*")
+)
+
+(define-function g_trash_stack_height
+  (c-name "g_trash_stack_height")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("gsize" "n")
+    '("GTrashStack**" "stack_p")
   )
 )
 
-(define-function g_strnfill
-  (c-name "g_strnfill")
-  (return-type "gchar*")
+(define-function g_trash_stack_peek
+  (c-name "g_trash_stack_peek")
+  (return-type "gpointer")
   (parameters
-    '("gsize" "length")
-    '("gchar" "fill_char")
+    '("GTrashStack**" "stack_p")
   )
 )
 
-(define-function g_strconcat
-  (c-name "g_strconcat")
-  (return-type "gchar*")
+(define-function g_trash_stack_pop
+  (c-name "g_trash_stack_pop")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "string1")
+    '("GTrashStack**" "stack_p")
   )
-  (varargs #t)
 )
 
-(define-function g_strjoin
-  (c-name "g_strjoin")
-  (return-type "gchar*")
+(define-function g_trash_stack_push
+  (c-name "g_trash_stack_push")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "separator")
+    '("GTrashStack**" "stack_p")
+    '("gpointer" "data_p")
   )
-  (varargs #t)
 )
 
-(define-function g_strcompress
-  (c-name "g_strcompress")
-  (return-type "gchar*")
+(define-method destroy
+  (of-object "GTree")
+  (c-name "g_tree_destroy")
+  (return-type "void")
+)
+
+(define-method foreach
+  (of-object "GTree")
+  (c-name "g_tree_foreach")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "source")
+    '("GTraverseFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_strescape
-  (c-name "g_strescape")
-  (return-type "gchar*")
+(define-method height
+  (of-object "GTree")
+  (c-name "g_tree_height")
+  (return-type "gint")
+)
+
+(define-method insert
+  (of-object "GTree")
+  (c-name "g_tree_insert")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "source")
-    '("const-gchar*" "exceptions")
+    '("gpointer" "key")
+    '("gpointer" "value")
   )
 )
 
-(define-function g_memdup
-  (c-name "g_memdup")
+(define-method lookup
+  (of-object "GTree")
+  (c-name "g_tree_lookup")
   (return-type "gpointer")
   (parameters
-    '("gconstpointer" "mem")
-    '("guint" "byte_size")
+    '("gconstpointer" "key")
   )
 )
 
-(define-function g_strsplit
-  (c-name "g_strsplit")
-  (return-type "gchar**")
+(define-method lookup_extended
+  (of-object "GTree")
+  (c-name "g_tree_lookup_extended")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "string")
-    '("const-gchar*" "delimiter")
-    '("gint" "max_tokens")
+    '("gconstpointer" "lookup_key")
+    '("gpointer*" "orig_key")
+    '("gpointer*" "value")
   )
 )
 
-(define-function g_strsplit_set
-  (c-name "g_strsplit_set")
-  (return-type "gchar**")
+(define-method nnodes
+  (of-object "GTree")
+  (c-name "g_tree_nnodes")
+  (return-type "gint")
+)
+
+(define-method ref
+  (of-object "GTree")
+  (c-name "g_tree_ref")
+  (return-type "GTree*")
+)
+
+(define-method remove
+  (of-object "GTree")
+  (c-name "g_tree_remove")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "string")
-    '("const-gchar*" "delimiters")
-    '("gint" "max_tokens")
+    '("gconstpointer" "key")
   )
 )
 
-(define-function g_strjoinv
-  (c-name "g_strjoinv")
-  (return-type "gchar*")
+(define-method replace
+  (of-object "GTree")
+  (c-name "g_tree_replace")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "separator")
-    '("gchar**" "str_array")
+    '("gpointer" "key")
+    '("gpointer" "value")
   )
 )
 
-(define-function g_strfreev
-  (c-name "g_strfreev")
-  (return-type "none")
+(define-method search
+  (of-object "GTree")
+  (c-name "g_tree_search")
+  (return-type "gpointer")
   (parameters
-    '("gchar**" "str_array")
+    '("GCompareFunc" "search_func")
+    '("gconstpointer" "user_data")
   )
 )
 
-(define-function g_strdupv
-  (c-name "g_strdupv")
-  (return-type "gchar**")
+(define-method steal
+  (of-object "GTree")
+  (c-name "g_tree_steal")
+  (return-type "gboolean")
   (parameters
-    '("gchar**" "str_array")
+    '("gconstpointer" "key")
   )
 )
 
-(define-function g_strv_length
-  (c-name "g_strv_length")
-  (return-type "guint")
+(define-method traverse
+  (of-object "GTree")
+  (c-name "g_tree_traverse")
+  (return-type "void")
   (parameters
-    '("gchar**" "str_array")
+    '("GTraverseFunc" "traverse_func")
+    '("GTraverseType" "traverse_type")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_stpcpy
-  (c-name "g_stpcpy")
-  (return-type "gchar*")
+(define-method unref
+  (of-object "GTree")
+  (c-name "g_tree_unref")
+  (return-type "void")
+)
+
+(define-function g_tree_new
+  (c-name "g_tree_new")
+  (return-type "GTree*")
   (parameters
-    '("gchar*" "dest")
-    '("const-char*" "src")
+    '("GCompareFunc" "key_compare_func")
   )
 )
 
-(define-function g_str_to_ascii
-  (c-name "g_str_to_ascii")
-  (return-type "gchar*")
+(define-function g_tree_new_full
+  (c-name "g_tree_new_full")
+  (return-type "GTree*")
   (parameters
-    '("const-gchar*" "str")
-    '("const-gchar*" "from_locale")
+    '("GCompareDataFunc" "key_compare_func")
+    '("gpointer" "key_compare_data")
+    '("GDestroyNotify" "key_destroy_func")
+    '("GDestroyNotify" "value_destroy_func")
   )
 )
 
-(define-function g_str_tokenize_and_fold
-  (c-name "g_str_tokenize_and_fold")
-  (return-type "gchar**")
+(define-function g_tree_new_with_data
+  (c-name "g_tree_new_with_data")
+  (return-type "GTree*")
   (parameters
-    '("const-gchar*" "string")
-    '("const-gchar*" "translit_locale")
-    '("gchar***" "ascii_alternates")
+    '("GCompareDataFunc" "key_compare_func")
+    '("gpointer" "key_compare_data")
   )
 )
 
-(define-function g_str_match_string
-  (c-name "g_str_match_string")
-  (return-type "gboolean")
+(define-function g_variant_new
+  (c-name "g_variant_new")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "search_term")
-    '("const-gchar*" "potential_hit")
-    '("gboolean" "accept_alternates")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
 )
 
-(define-function g_strv_contains
-  (c-name "g_strv_contains")
-  (return-type "gboolean")
+(define-function g_variant_new_array
+  (c-name "g_variant_new_array")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*-const*" "strv")
-    '("const-gchar*" "str")
+    '("const-GVariantType*" "child_type")
+    '("GVariant**" "children")
+    '("gsize" "n_children")
   )
 )
 
-
-
-;; From gstringchunk.h
-
-(define-function g_string_chunk_new
-  (c-name "g_string_chunk_new")
-  (is-constructor-of "GStringChunk")
-  (return-type "GStringChunk*")
+(define-function g_variant_new_boolean
+  (c-name "g_variant_new_boolean")
+  (return-type "GVariant*")
   (parameters
-    '("gsize" "size")
+    '("gboolean" "value")
   )
 )
 
-(define-method free
-  (of-object "GStringChunk")
-  (c-name "g_string_chunk_free")
-  (return-type "none")
+(define-function g_variant_new_byte
+  (c-name "g_variant_new_byte")
+  (return-type "GVariant*")
+  (parameters
+    '("guchar" "value")
+  )
 )
 
-(define-method clear
-  (of-object "GStringChunk")
-  (c-name "g_string_chunk_clear")
-  (return-type "none")
+(define-function g_variant_new_bytestring
+  (c-name "g_variant_new_bytestring")
+  (return-type "GVariant*")
+  (parameters
+    '("gchar*" "string")
+  )
 )
 
-(define-method insert
-  (of-object "GStringChunk")
-  (c-name "g_string_chunk_insert")
-  (return-type "gchar*")
+(define-function g_variant_new_bytestring_array
+  (c-name "g_variant_new_bytestring_array")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "string")
+    '("gchar**" "strv")
+    '("gssize" "length")
   )
 )
 
-(define-method insert_len
-  (of-object "GStringChunk")
-  (c-name "g_string_chunk_insert_len")
-  (return-type "gchar*")
+(define-function g_variant_new_dict_entry
+  (c-name "g_variant_new_dict_entry")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "string")
-    '("gssize" "len")
+    '("GVariant*" "key")
+    '("GVariant*" "value")
   )
 )
 
-
-
-;; From gstring.h
-
-(define-function g_string_new
-  (c-name "g_string_new")
-  (is-constructor-of "GString")
-  (return-type "GString*")
+(define-function g_variant_new_double
+  (c-name "g_variant_new_double")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "init")
+    '("gdouble" "value")
   )
 )
 
-(define-function g_string_new_len
-  (c-name "g_string_new_len")
-  (return-type "GString*")
+(define-function g_variant_new_fixed_array
+  (c-name "g_variant_new_fixed_array")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "init")
-    '("gssize" "len")
+    '("const-GVariantType*" "element_type")
+    '("gconstpointer" "elements")
+    '("gsize" "n_elements")
+    '("gsize" "element_size")
   )
 )
 
-(define-function g_string_sized_new
-  (c-name "g_string_sized_new")
-  (is-constructor-of "GStringSized")
-  (return-type "GString*")
+(define-function g_variant_new_from_bytes
+  (c-name "g_variant_new_from_bytes")
+  (return-type "GVariant*")
   (parameters
-    '("gsize" "dfl_size")
+    '("const-GVariantType*" "type")
+    '("GBytes*" "bytes")
+    '("gboolean" "trusted")
   )
 )
 
-(define-method free
-  (of-object "GString")
-  (c-name "g_string_free")
-  (return-type "gchar*")
+(define-function g_variant_new_from_data
+  (c-name "g_variant_new_from_data")
+  (return-type "GVariant*")
   (parameters
-    '("gboolean" "free_segment")
+    '("const-GVariantType*" "type")
+    '("gconstpointer" "data")
+    '("gsize" "size")
+    '("gboolean" "trusted")
+    '("GDestroyNotify" "notify")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method free_to_bytes
-  (of-object "GString")
-  (c-name "g_string_free_to_bytes")
-  (return-type "GBytes*")
+(define-function g_variant_new_handle
+  (c-name "g_variant_new_handle")
+  (return-type "GVariant*")
+  (parameters
+    '("gint32" "value")
+  )
 )
 
-(define-method equal
-  (of-object "GString")
-  (c-name "g_string_equal")
-  (return-type "gboolean")
+(define-function g_variant_new_int16
+  (c-name "g_variant_new_int16")
+  (return-type "GVariant*")
   (parameters
-    '("const-GString*" "v2")
+    '("gint16" "value")
   )
 )
 
-(define-method hash
-  (of-object "GString")
-  (c-name "g_string_hash")
-  (return-type "guint")
+(define-function g_variant_new_int32
+  (c-name "g_variant_new_int32")
+  (return-type "GVariant*")
+  (parameters
+    '("gint32" "value")
+  )
 )
 
-(define-method assign
-  (of-object "GString")
-  (c-name "g_string_assign")
-  (return-type "GString*")
+(define-function g_variant_new_int64
+  (c-name "g_variant_new_int64")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "rval")
+    '("gint64" "value")
   )
 )
 
-(define-method truncate
-  (of-object "GString")
-  (c-name "g_string_truncate")
-  (return-type "GString*")
+(define-function g_variant_new_maybe
+  (c-name "g_variant_new_maybe")
+  (return-type "GVariant*")
   (parameters
-    '("gsize" "len")
+    '("const-GVariantType*" "child_type")
+    '("GVariant*" "child")
   )
 )
 
-(define-method set_size
-  (of-object "GString")
-  (c-name "g_string_set_size")
-  (return-type "GString*")
+(define-function g_variant_new_object_path
+  (c-name "g_variant_new_object_path")
+  (return-type "GVariant*")
   (parameters
-    '("gsize" "len")
+    '("const-gchar*" "object_path")
   )
 )
 
-(define-method insert_len
-  (of-object "GString")
-  (c-name "g_string_insert_len")
-  (return-type "GString*")
+(define-function g_variant_new_objv
+  (c-name "g_variant_new_objv")
+  (return-type "GVariant*")
   (parameters
-    '("gssize" "pos")
-    '("const-gchar*" "val")
-    '("gssize" "len")
+    '("gchar**" "strv")
+    '("gssize" "length")
   )
 )
 
-(define-method append
-  (of-object "GString")
-  (c-name "g_string_append")
-  (return-type "GString*")
+(define-function g_variant_new_parsed
+  (c-name "g_variant_new_parsed")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "val")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-method append_len
-  (of-object "GString")
-  (c-name "g_string_append_len")
-  (return-type "GString*")
+(define-function g_variant_new_parsed_va
+  (c-name "g_variant_new_parsed_va")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "val")
-    '("gssize" "len")
+    '("const-gchar*" "format")
+    '("va_list*" "app")
   )
 )
 
-(define-method append_c
-  (of-object "GString")
-  (c-name "g_string_append_c")
-  (return-type "GString*")
+(define-function g_variant_new_printf
+  (c-name "g_variant_new_printf")
+  (return-type "GVariant*")
   (parameters
-    '("gchar" "c")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
 )
 
-(define-method append_unichar
-  (of-object "GString")
-  (c-name "g_string_append_unichar")
-  (return-type "GString*")
+(define-function g_variant_new_signature
+  (c-name "g_variant_new_signature")
+  (return-type "GVariant*")
   (parameters
-    '("gunichar" "wc")
+    '("const-gchar*" "signature")
   )
 )
 
-(define-method prepend
-  (of-object "GString")
-  (c-name "g_string_prepend")
-  (return-type "GString*")
+(define-function g_variant_new_string
+  (c-name "g_variant_new_string")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "val")
+    '("const-gchar*" "string")
   )
 )
 
-(define-method prepend_c
-  (of-object "GString")
-  (c-name "g_string_prepend_c")
-  (return-type "GString*")
+(define-function g_variant_new_strv
+  (c-name "g_variant_new_strv")
+  (return-type "GVariant*")
   (parameters
-    '("gchar" "c")
+    '("gchar**" "strv")
+    '("gssize" "length")
   )
 )
 
-(define-method prepend_unichar
-  (of-object "GString")
-  (c-name "g_string_prepend_unichar")
-  (return-type "GString*")
+(define-function g_variant_new_take_string
+  (c-name "g_variant_new_take_string")
+  (return-type "GVariant*")
   (parameters
-    '("gunichar" "wc")
+    '("gchar*" "string")
   )
 )
 
-(define-method prepend_len
-  (of-object "GString")
-  (c-name "g_string_prepend_len")
-  (return-type "GString*")
+(define-function g_variant_new_tuple
+  (c-name "g_variant_new_tuple")
+  (return-type "GVariant*")
   (parameters
-    '("const-gchar*" "val")
-    '("gssize" "len")
+    '("GVariant**" "children")
+    '("gsize" "n_children")
   )
 )
 
-(define-method insert
-  (of-object "GString")
-  (c-name "g_string_insert")
-  (return-type "GString*")
+(define-function g_variant_new_uint16
+  (c-name "g_variant_new_uint16")
+  (return-type "GVariant*")
   (parameters
-    '("gssize" "pos")
-    '("const-gchar*" "val")
+    '("guint16" "value")
   )
 )
 
-(define-method insert_c
-  (of-object "GString")
-  (c-name "g_string_insert_c")
-  (return-type "GString*")
+(define-function g_variant_new_uint32
+  (c-name "g_variant_new_uint32")
+  (return-type "GVariant*")
   (parameters
-    '("gssize" "pos")
-    '("gchar" "c")
+    '("guint32" "value")
   )
 )
 
-(define-method insert_unichar
-  (of-object "GString")
-  (c-name "g_string_insert_unichar")
-  (return-type "GString*")
+(define-function g_variant_new_uint64
+  (c-name "g_variant_new_uint64")
+  (return-type "GVariant*")
   (parameters
-    '("gssize" "pos")
-    '("gunichar" "wc")
+    '("guint64" "value")
   )
 )
 
-(define-method overwrite
-  (of-object "GString")
-  (c-name "g_string_overwrite")
-  (return-type "GString*")
+(define-function g_variant_new_va
+  (c-name "g_variant_new_va")
+  (return-type "GVariant*")
   (parameters
-    '("gsize" "pos")
-    '("const-gchar*" "val")
+    '("const-gchar*" "format_string")
+    '("const-gchar**" "endptr")
+    '("va_list*" "app")
   )
 )
 
-(define-method overwrite_len
-  (of-object "GString")
-  (c-name "g_string_overwrite_len")
-  (return-type "GString*")
+(define-function g_variant_new_variant
+  (c-name "g_variant_new_variant")
+  (return-type "GVariant*")
   (parameters
-    '("gsize" "pos")
-    '("const-gchar*" "val")
-    '("gssize" "len")
+    '("GVariant*" "value")
   )
 )
 
-(define-method erase
-  (of-object "GString")
-  (c-name "g_string_erase")
-  (return-type "GString*")
+(define-method byteswap
+  (of-object "GVariant")
+  (c-name "g_variant_byteswap")
+  (return-type "GVariant*")
+)
+
+(define-method check_format_string
+  (of-object "GVariant")
+  (c-name "g_variant_check_format_string")
+  (return-type "gboolean")
   (parameters
-    '("gssize" "pos")
-    '("gssize" "len")
+    '("const-gchar*" "format_string")
+    '("gboolean" "copy_only")
   )
 )
 
-(define-method ascii_down
-  (of-object "GString")
-  (c-name "g_string_ascii_down")
-  (return-type "GString*")
+(define-method classify
+  (of-object "GVariant")
+  (c-name "g_variant_classify")
+  (return-type "GVariantClass")
 )
 
-(define-method ascii_up
-  (of-object "GString")
-  (c-name "g_string_ascii_up")
-  (return-type "GString*")
+(define-function g_variant_compare
+  (c-name "g_variant_compare")
+  (return-type "gint")
+  (parameters
+    '("gconstpointer" "one")
+    '("gconstpointer" "two")
+  )
 )
 
-(define-method vprintf
-  (of-object "GString")
-  (c-name "g_string_vprintf")
-  (return-type "none")
+(define-method dup_bytestring
+  (of-object "GVariant")
+  (c-name "g_variant_dup_bytestring")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "format")
-    '("va_list" "args")
+    '("gsize*" "length")
   )
 )
 
-(define-method printf
-  (of-object "GString")
-  (c-name "g_string_printf")
-  (return-type "none")
+(define-method dup_bytestring_array
+  (of-object "GVariant")
+  (c-name "g_variant_dup_bytestring_array")
+  (return-type "gchar**")
   (parameters
-    '("const-gchar*" "format")
+    '("gsize*" "length")
   )
-  (varargs #t)
 )
 
-(define-method append_vprintf
-  (of-object "GString")
-  (c-name "g_string_append_vprintf")
-  (return-type "none")
+(define-method dup_objv
+  (of-object "GVariant")
+  (c-name "g_variant_dup_objv")
+  (return-type "gchar**")
   (parameters
-    '("const-gchar*" "format")
-    '("va_list" "args")
+    '("gsize*" "length")
   )
 )
 
-(define-method append_printf
-  (of-object "GString")
-  (c-name "g_string_append_printf")
-  (return-type "none")
+(define-method dup_string
+  (of-object "GVariant")
+  (c-name "g_variant_dup_string")
+  (return-type "gchar*")
   (parameters
-    '("const-gchar*" "format")
+    '("gsize*" "length")
   )
-  (varargs #t)
 )
 
-(define-method append_uri_escaped
-  (of-object "GString")
-  (c-name "g_string_append_uri_escaped")
-  (return-type "GString*")
+(define-method dup_strv
+  (of-object "GVariant")
+  (c-name "g_variant_dup_strv")
+  (return-type "gchar**")
   (parameters
-    '("const-gchar*" "unescaped")
-    '("const-gchar*" "reserved_chars_allowed")
-    '("gboolean" "allow_utf8")
+    '("gsize*" "length")
   )
 )
 
-(define-method append_c_inline
-  (of-object "GString")
-  (c-name "g_string_append_c_inline")
-  (return-type "GString*")
+(define-function g_variant_equal
+  (c-name "g_variant_equal")
+  (return-type "gboolean")
   (parameters
-    '("gchar" "c")
+    '("gconstpointer" "one")
+    '("gconstpointer" "two")
   )
 )
 
-(define-method down
-  (of-object "GString")
-  (c-name "g_string_down")
-  (return-type "GString*")
+(define-method get
+  (of-object "GVariant")
+  (c-name "g_variant_get")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "format_string")
+    '("..." "...")
+  )
 )
 
-(define-method up
-  (of-object "GString")
-  (c-name "g_string_up")
-  (return-type "GString*")
+(define-method get_boolean
+  (of-object "GVariant")
+  (c-name "g_variant_get_boolean")
+  (return-type "gboolean")
 )
 
+(define-method get_byte
+  (of-object "GVariant")
+  (c-name "g_variant_get_byte")
+  (return-type "guchar")
+)
 
-
-;; From gtestutils.h
-
-(define-function g_strcmp0
-  (c-name "g_strcmp0")
-  (return-type "int")
-  (parameters
-    '("const-char*" "str1")
-    '("const-char*" "str2")
-  )
+(define-method get_bytestring
+  (of-object "GVariant")
+  (c-name "g_variant_get_bytestring")
+  (return-type "gchar*")
 )
 
-(define-function g_test_minimized_result
-  (c-name "g_test_minimized_result")
-  (return-type "none")
+(define-method get_bytestring_array
+  (of-object "GVariant")
+  (c-name "g_variant_get_bytestring_array")
+  (return-type "gchar**")
   (parameters
-    '("double" "minimized_quantity")
-    '("const-char*" "format")
+    '("gsize*" "length")
   )
-  (varargs #t)
 )
 
-(define-function g_test_maximized_result
-  (c-name "g_test_maximized_result")
-  (return-type "none")
+(define-method get_child
+  (of-object "GVariant")
+  (c-name "g_variant_get_child")
+  (return-type "void")
   (parameters
-    '("double" "maximized_quantity")
-    '("const-char*" "format")
+    '("gsize" "index_")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
-  (varargs #t)
 )
 
-(define-function g_test_init
-  (c-name "g_test_init")
-  (return-type "none")
+(define-method get_child_value
+  (of-object "GVariant")
+  (c-name "g_variant_get_child_value")
+  (return-type "GVariant*")
   (parameters
-    '("int*" "argc")
-    '("char***" "argv")
+    '("gsize" "index_")
   )
-  (varargs #t)
 )
 
-(define-function g_test_subprocess
-  (c-name "g_test_subprocess")
-  (return-type "gboolean")
+(define-method get_data
+  (of-object "GVariant")
+  (c-name "g_variant_get_data")
+  (return-type "gconstpointer")
 )
 
-(define-function g_test_run
-  (c-name "g_test_run")
-  (return-type "int")
+(define-method get_data_as_bytes
+  (of-object "GVariant")
+  (c-name "g_variant_get_data_as_bytes")
+  (return-type "GBytes*")
 )
 
-(define-function g_test_add_func
-  (c-name "g_test_add_func")
-  (return-type "none")
-  (parameters
-    '("const-char*" "testpath")
-    '("GTestFunc" "test_func")
-  )
+(define-method get_double
+  (of-object "GVariant")
+  (c-name "g_variant_get_double")
+  (return-type "gdouble")
 )
 
-(define-function g_test_add_data_func
-  (c-name "g_test_add_data_func")
-  (return-type "none")
+(define-method get_fixed_array
+  (of-object "GVariant")
+  (c-name "g_variant_get_fixed_array")
+  (return-type "gconstpointer")
   (parameters
-    '("const-char*" "testpath")
-    '("gconstpointer" "test_data")
-    '("GTestDataFunc" "test_func")
+    '("gsize*" "n_elements")
+    '("gsize" "element_size")
   )
 )
 
-(define-function g_test_add_data_func_full
-  (c-name "g_test_add_data_func_full")
-  (return-type "none")
-  (parameters
-    '("const-char*" "testpath")
-    '("gpointer" "test_data")
-    '("GTestDataFunc" "test_func")
-    '("GDestroyNotify" "data_free_func")
-  )
+(define-method get_handle
+  (of-object "GVariant")
+  (c-name "g_variant_get_handle")
+  (return-type "gint32")
 )
 
-(define-function g_test_fail
-  (c-name "g_test_fail")
-  (return-type "none")
+(define-method get_int16
+  (of-object "GVariant")
+  (c-name "g_variant_get_int16")
+  (return-type "gint16")
 )
 
-(define-function g_test_incomplete
-  (c-name "g_test_incomplete")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "msg")
-  )
+(define-method get_int32
+  (of-object "GVariant")
+  (c-name "g_variant_get_int32")
+  (return-type "gint32")
 )
 
-(define-function g_test_skip
-  (c-name "g_test_skip")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "msg")
-  )
+(define-method get_int64
+  (of-object "GVariant")
+  (c-name "g_variant_get_int64")
+  (return-type "gint64")
 )
 
-(define-function g_test_failed
-  (c-name "g_test_failed")
-  (return-type "gboolean")
+(define-method get_maybe
+  (of-object "GVariant")
+  (c-name "g_variant_get_maybe")
+  (return-type "GVariant*")
 )
 
-(define-function g_test_set_nonfatal_assertions
-  (c-name "g_test_set_nonfatal_assertions")
-  (return-type "none")
+(define-method get_normal_form
+  (of-object "GVariant")
+  (c-name "g_variant_get_normal_form")
+  (return-type "GVariant*")
 )
 
-(define-function g_test_message
-  (c-name "g_test_message")
-  (return-type "none")
+(define-method get_objv
+  (of-object "GVariant")
+  (c-name "g_variant_get_objv")
+  (return-type "gchar**")
   (parameters
-    '("const-char*" "format")
+    '("gsize*" "length")
   )
-  (varargs #t)
 )
 
-(define-function g_test_bug_base
-  (c-name "g_test_bug_base")
-  (return-type "none")
+(define-method get_size
+  (of-object "GVariant")
+  (c-name "g_variant_get_size")
+  (return-type "gsize")
+)
+
+(define-method get_string
+  (of-object "GVariant")
+  (c-name "g_variant_get_string")
+  (return-type "const-gchar*")
   (parameters
-    '("const-char*" "uri_pattern")
+    '("gsize*" "length")
   )
 )
 
-(define-function g_test_bug
-  (c-name "g_test_bug")
-  (return-type "none")
+(define-method get_strv
+  (of-object "GVariant")
+  (c-name "g_variant_get_strv")
+  (return-type "gchar**")
   (parameters
-    '("const-char*" "bug_uri_snippet")
+    '("gsize*" "length")
   )
 )
 
-(define-function g_test_timer_start
-  (c-name "g_test_timer_start")
-  (return-type "none")
+(define-method get_type
+  (of-object "GVariant")
+  (c-name "g_variant_get_type")
+  (return-type "const-GVariantType*")
 )
 
-(define-function g_test_timer_elapsed
-  (c-name "g_test_timer_elapsed")
-  (return-type "double")
+(define-method get_type_string
+  (of-object "GVariant")
+  (c-name "g_variant_get_type_string")
+  (return-type "const-gchar*")
 )
 
-(define-function g_test_timer_last
-  (c-name "g_test_timer_last")
-  (return-type "double")
+(define-method get_uint16
+  (of-object "GVariant")
+  (c-name "g_variant_get_uint16")
+  (return-type "guint16")
 )
 
-(define-function g_test_queue_free
-  (c-name "g_test_queue_free")
-  (return-type "none")
-  (parameters
-    '("gpointer" "gfree_pointer")
-  )
+(define-method get_uint32
+  (of-object "GVariant")
+  (c-name "g_variant_get_uint32")
+  (return-type "guint32")
 )
 
-(define-function g_test_queue_destroy
-  (c-name "g_test_queue_destroy")
-  (return-type "none")
-  (parameters
-    '("GDestroyNotify" "destroy_func")
-    '("gpointer" "destroy_data")
-  )
+(define-method get_uint64
+  (of-object "GVariant")
+  (c-name "g_variant_get_uint64")
+  (return-type "guint64")
 )
 
-(define-function g_test_trap_fork
-  (c-name "g_test_trap_fork")
-  (return-type "gboolean")
+(define-method get_va
+  (of-object "GVariant")
+  (c-name "g_variant_get_va")
+  (return-type "void")
   (parameters
-    '("guint64" "usec_timeout")
-    '("GTestTrapFlags" "test_trap_flags")
+    '("const-gchar*" "format_string")
+    '("const-gchar**" "endptr")
+    '("va_list*" "app")
   )
 )
 
-(define-function g_test_trap_subprocess
-  (c-name "g_test_trap_subprocess")
-  (return-type "none")
+(define-method get_variant
+  (of-object "GVariant")
+  (c-name "g_variant_get_variant")
+  (return-type "GVariant*")
+)
+
+(define-function g_variant_hash
+  (c-name "g_variant_hash")
+  (return-type "guint")
   (parameters
-    '("const-char*" "test_path")
-    '("guint64" "usec_timeout")
-    '("GTestSubprocessFlags" "test_flags")
+    '("gconstpointer" "value")
   )
 )
 
-(define-function g_test_trap_has_passed
-  (c-name "g_test_trap_has_passed")
+(define-method is_container
+  (of-object "GVariant")
+  (c-name "g_variant_is_container")
   (return-type "gboolean")
 )
 
-(define-function g_test_trap_reached_timeout
-  (c-name "g_test_trap_reached_timeout")
+(define-method is_floating
+  (of-object "GVariant")
+  (c-name "g_variant_is_floating")
   (return-type "gboolean")
 )
 
-(define-function g_test_rand_int
-  (c-name "g_test_rand_int")
-  (return-type "gint32")
+(define-method is_normal_form
+  (of-object "GVariant")
+  (c-name "g_variant_is_normal_form")
+  (return-type "gboolean")
 )
 
-(define-function g_test_rand_int_range
-  (c-name "g_test_rand_int_range")
-  (return-type "gint32")
+(define-method is_of_type
+  (of-object "GVariant")
+  (c-name "g_variant_is_of_type")
+  (return-type "gboolean")
   (parameters
-    '("gint32" "begin")
-    '("gint32" "end")
+    '("const-GVariantType*" "type")
   )
 )
 
-(define-function g_test_rand_double
-  (c-name "g_test_rand_double")
-  (return-type "double")
+(define-method iter_new
+  (of-object "GVariant")
+  (c-name "g_variant_iter_new")
+  (return-type "GVariantIter*")
 )
 
-(define-function g_test_rand_double_range
-  (c-name "g_test_rand_double_range")
-  (return-type "double")
+(define-method lookup
+  (of-object "GVariant")
+  (c-name "g_variant_lookup")
+  (return-type "gboolean")
   (parameters
-    '("double" "range_start")
-    '("double" "range_end")
+    '("const-gchar*" "key")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
 )
 
-(define-function g_test_create_case
-  (c-name "g_test_create_case")
-  (return-type "GTestCase*")
+(define-method lookup_value
+  (of-object "GVariant")
+  (c-name "g_variant_lookup_value")
+  (return-type "GVariant*")
   (parameters
-    '("const-char*" "test_name")
-    '("gsize" "data_size")
-    '("gconstpointer" "test_data")
-    '("GTestFixtureFunc" "data_setup")
-    '("GTestFixtureFunc" "data_test")
-    '("GTestFixtureFunc" "data_teardown")
+    '("const-gchar*" "key")
+    '("const-GVariantType*" "expected_type")
   )
 )
 
-(define-function g_test_create_suite
-  (c-name "g_test_create_suite")
-  (return-type "GTestSuite*")
-  (parameters
-    '("const-char*" "suite_name")
-  )
+(define-method n_children
+  (of-object "GVariant")
+  (c-name "g_variant_n_children")
+  (return-type "gsize")
 )
 
-(define-function g_test_get_root
-  (c-name "g_test_get_root")
-  (return-type "GTestSuite*")
+(define-method print
+  (of-object "GVariant")
+  (c-name "g_variant_print")
+  (return-type "gchar*")
+  (parameters
+    '("gboolean" "type_annotate")
+  )
 )
 
-(define-method add
-  (of-object "GTestSuite")
-  (c-name "g_test_suite_add")
-  (return-type "none")
+(define-method print_string
+  (of-object "GVariant")
+  (c-name "g_variant_print_string")
+  (return-type "GString*")
   (parameters
-    '("GTestCase*" "test_case")
+    '("GString*" "string")
+    '("gboolean" "type_annotate")
   )
 )
 
-(define-method add_suite
-  (of-object "GTestSuite")
-  (c-name "g_test_suite_add_suite")
-  (return-type "none")
+(define-method ref
+  (of-object "GVariant")
+  (c-name "g_variant_ref")
+  (return-type "GVariant*")
+)
+
+(define-method ref_sink
+  (of-object "GVariant")
+  (c-name "g_variant_ref_sink")
+  (return-type "GVariant*")
+)
+
+(define-method store
+  (of-object "GVariant")
+  (c-name "g_variant_store")
+  (return-type "void")
   (parameters
-    '("GTestSuite*" "nestedsuite")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_test_run_suite
-  (c-name "g_test_run_suite")
-  (return-type "int")
+(define-method take_ref
+  (of-object "GVariant")
+  (c-name "g_variant_take_ref")
+  (return-type "GVariant*")
+)
+
+(define-method unref
+  (of-object "GVariant")
+  (c-name "g_variant_unref")
+  (return-type "void")
+)
+
+(define-function g_variant_is_object_path
+  (c-name "g_variant_is_object_path")
+  (return-type "gboolean")
   (parameters
-    '("GTestSuite*" "suite")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_test_trap_assertions
-  (c-name "g_test_trap_assertions")
-  (return-type "none")
+(define-function g_variant_is_signature
+  (c-name "g_variant_is_signature")
+  (return-type "gboolean")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("guint64" "assertion_flags")
-    '("const-char*" "pattern")
+    '("const-gchar*" "string")
   )
 )
 
-(define-function g_assertion_message
-  (c-name "g_assertion_message")
-  (return-type "none")
+(define-function g_variant_parse
+  (c-name "g_variant_parse")
+  (return-type "GVariant*")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("const-char*" "message")
+    '("const-GVariantType*" "type")
+    '("const-gchar*" "text")
+    '("const-gchar*" "limit")
+    '("const-gchar**" "endptr")
+    '("GError**" "error")
   )
 )
 
-(define-function g_assertion_message_expr
-  (c-name "g_assertion_message_expr")
-  (return-type "none")
+(define-function g_variant_parse_error_print_context
+  (c-name "g_variant_parse_error_print_context")
+  (return-type "gchar*")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("const-char*" "expr")
+    '("GError*" "error")
+    '("const-gchar*" "source_str")
   )
 )
 
-(define-function g_assertion_message_cmpstr
-  (c-name "g_assertion_message_cmpstr")
-  (return-type "none")
+(define-function g_variant_parse_error_quark
+  (c-name "g_variant_parse_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_variant_parser_get_error_quark
+  (c-name "g_variant_parser_get_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function g_variant_builder_new
+  (c-name "g_variant_builder_new")
+  (return-type "GVariantBuilder*")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("const-char*" "expr")
-    '("const-char*" "arg1")
-    '("const-char*" "cmp")
-    '("const-char*" "arg2")
+    '("const-GVariantType*" "type")
   )
 )
 
-(define-function g_assertion_message_cmpnum
-  (c-name "g_assertion_message_cmpnum")
-  (return-type "none")
+(define-method add
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_add")
+  (return-type "void")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("const-char*" "expr")
-    '("long-double" "arg1")
-    '("const-char*" "cmp")
-    '("long-double" "arg2")
-    '("char" "numtype")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
 )
 
-(define-function g_assertion_message_error
-  (c-name "g_assertion_message_error")
-  (return-type "none")
+(define-method add_parsed
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_add_parsed")
+  (return-type "void")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
-    '("const-char*" "expr")
-    '("const-GError*" "error")
-    '("GQuark" "error_domain")
-    '("int" "error_code")
+    '("const-gchar*" "format")
+    '("..." "...")
   )
 )
 
-(define-function g_test_add_vtable
-  (c-name "g_test_add_vtable")
-  (return-type "none")
+(define-method add_value
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_add_value")
+  (return-type "void")
   (parameters
-    '("const-char*" "testpath")
-    '("gsize" "data_size")
-    '("gconstpointer" "test_data")
-    '("GTestFixtureFunc" "data_setup")
-    '("GTestFixtureFunc" "data_test")
-    '("GTestFixtureFunc" "data_teardown")
+    '("GVariant*" "value")
   )
 )
 
-(define-method name
-  (of-object "GTestLogType")
-  (c-name "g_test_log_type_name")
-  (return-type "const-char*")
+(define-method clear
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_clear")
+  (return-type "void")
 )
 
-(define-function g_test_log_buffer_new
-  (c-name "g_test_log_buffer_new")
-  (is-constructor-of "GTestLogBuffer")
-  (return-type "GTestLogBuffer*")
+(define-method close
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_close")
+  (return-type "void")
 )
 
-(define-method free
-  (of-object "GTestLogBuffer")
-  (c-name "g_test_log_buffer_free")
-  (return-type "none")
+(define-method end
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_end")
+  (return-type "GVariant*")
 )
 
-(define-method push
-  (of-object "GTestLogBuffer")
-  (c-name "g_test_log_buffer_push")
-  (return-type "none")
+(define-method init
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_init")
+  (return-type "void")
   (parameters
-    '("guint" "n_bytes")
-    '("const-guint8*" "bytes")
+    '("const-GVariantType*" "type")
   )
 )
 
-(define-method pop
-  (of-object "GTestLogBuffer")
-  (c-name "g_test_log_buffer_pop")
-  (return-type "GTestLogMsg*")
+(define-method open
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_open")
+  (return-type "void")
+  (parameters
+    '("const-GVariantType*" "type")
+  )
 )
 
-(define-method free
-  (of-object "GTestLogMsg")
-  (c-name "g_test_log_msg_free")
-  (return-type "none")
+(define-method ref
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_ref")
+  (return-type "GVariantBuilder*")
 )
 
-(define-function g_test_log_set_fatal_handler
-  (c-name "g_test_log_set_fatal_handler")
-  (return-type "none")
+(define-method unref
+  (of-object "GVariantBuilder")
+  (c-name "g_variant_builder_unref")
+  (return-type "void")
+)
+
+(define-function g_variant_dict_new
+  (c-name "g_variant_dict_new")
+  (return-type "GVariantDict*")
   (parameters
-    '("GTestLogFatalFunc" "log_func")
-    '("gpointer" "user_data")
+    '("GVariant*" "from_asv")
   )
 )
 
-(define-function g_test_expect_message
-  (c-name "g_test_expect_message")
-  (return-type "none")
+(define-method clear
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_clear")
+  (return-type "void")
+)
+
+(define-method contains
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_contains")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "log_domain")
-    '("GLogLevelFlags" "log_level")
-    '("const-gchar*" "pattern")
+    '("const-gchar*" "key")
   )
 )
 
-(define-function g_test_assert_expected_messages_internal
-  (c-name "g_test_assert_expected_messages_internal")
-  (return-type "none")
+(define-method end
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_end")
+  (return-type "GVariant*")
+)
+
+(define-method init
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_init")
+  (return-type "void")
   (parameters
-    '("const-char*" "domain")
-    '("const-char*" "file")
-    '("int" "line")
-    '("const-char*" "func")
+    '("GVariant*" "from_asv")
   )
 )
 
-(define-function g_test_build_filename
-  (c-name "g_test_build_filename")
-  (return-type "gchar*")
+(define-method insert
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_insert")
+  (return-type "void")
   (parameters
-    '("GTestFileType" "file_type")
-    '("const-gchar*" "first_path")
+    '("const-gchar*" "key")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
-  (varargs #t)
 )
 
-(define-function g_test_get_dir
-  (c-name "g_test_get_dir")
-  (return-type "const-gchar*")
+(define-method insert_value
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_insert_value")
+  (return-type "void")
   (parameters
-    '("GTestFileType" "file_type")
+    '("const-gchar*" "key")
+    '("GVariant*" "value")
   )
 )
 
-(define-function g_test_get_filename
-  (c-name "g_test_get_filename")
-  (return-type "const-gchar*")
+(define-method lookup
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_lookup")
+  (return-type "gboolean")
   (parameters
-    '("GTestFileType" "file_type")
-    '("const-gchar*" "first_path")
+    '("const-gchar*" "key")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
-  (varargs #t)
 )
 
+(define-method lookup_value
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_lookup_value")
+  (return-type "GVariant*")
+  (parameters
+    '("const-gchar*" "key")
+    '("const-GVariantType*" "expected_type")
+  )
+)
 
+(define-method ref
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_ref")
+  (return-type "GVariantDict*")
+)
 
-;; From gthread.h
+(define-method remove
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_remove")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "key")
+  )
+)
 
-(define-function g_thread_error_quark
-  (c-name "g_thread_error_quark")
-  (return-type "GQuark")
+(define-method unref
+  (of-object "GVariantDict")
+  (c-name "g_variant_dict_unref")
+  (return-type "void")
 )
 
-(define-method ref
-  (of-object "GThread")
-  (c-name "g_thread_ref")
-  (return-type "GThread*")
+(define-method copy
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_copy")
+  (return-type "GVariantIter*")
 )
 
-(define-method unref
-  (of-object "GThread")
-  (c-name "g_thread_unref")
-  (return-type "none")
+(define-method free
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_free")
+  (return-type "void")
 )
 
-(define-function g_thread_new
-  (c-name "g_thread_new")
-  (is-constructor-of "GThread")
-  (return-type "GThread*")
+(define-method init
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_init")
+  (return-type "gsize")
   (parameters
-    '("const-gchar*" "name")
-    '("GThreadFunc" "func")
-    '("gpointer" "data")
+    '("GVariant*" "value")
   )
 )
 
-(define-function g_thread_try_new
-  (c-name "g_thread_try_new")
-  (is-constructor-of "GThreadTry")
-  (return-type "GThread*")
+(define-method loop
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_loop")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "name")
-    '("GThreadFunc" "func")
-    '("gpointer" "data")
-    '("GError**" "error")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
 )
 
-(define-function g_thread_self
-  (c-name "g_thread_self")
-  (return-type "GThread*")
+(define-method n_children
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_n_children")
+  (return-type "gsize")
 )
 
-(define-function g_thread_exit
-  (c-name "g_thread_exit")
-  (return-type "none")
+(define-method next
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_next")
+  (return-type "gboolean")
   (parameters
-    '("gpointer" "retval")
+    '("const-gchar*" "format_string")
+    '("..." "...")
   )
 )
 
-(define-method join
-  (of-object "GThread")
-  (c-name "g_thread_join")
-  (return-type "gpointer")
+(define-method next_value
+  (of-object "GVariantIter")
+  (c-name "g_variant_iter_next_value")
+  (return-type "GVariant*")
 )
 
-(define-function g_thread_yield
-  (c-name "g_thread_yield")
-  (return-type "none")
+(define-function g_variant_type_new
+  (c-name "g_variant_type_new")
+  (return-type "GVariantType*")
+  (parameters
+    '("const-gchar*" "type_string")
+  )
 )
 
-(define-method init
-  (of-object "GMutex")
-  (c-name "g_mutex_init")
-  (return-type "none")
+(define-function g_variant_type_new_array
+  (c-name "g_variant_type_new_array")
+  (return-type "GVariantType*")
+  (parameters
+    '("const-GVariantType*" "element")
+  )
 )
 
-(define-method clear
-  (of-object "GMutex")
-  (c-name "g_mutex_clear")
-  (return-type "none")
+(define-function g_variant_type_new_dict_entry
+  (c-name "g_variant_type_new_dict_entry")
+  (return-type "GVariantType*")
+  (parameters
+    '("const-GVariantType*" "key")
+    '("const-GVariantType*" "value")
+  )
 )
 
-(define-method lock
-  (of-object "GMutex")
-  (c-name "g_mutex_lock")
-  (return-type "none")
+(define-function g_variant_type_new_maybe
+  (c-name "g_variant_type_new_maybe")
+  (return-type "GVariantType*")
+  (parameters
+    '("const-GVariantType*" "element")
+  )
 )
 
-(define-method trylock
-  (of-object "GMutex")
-  (c-name "g_mutex_trylock")
-  (return-type "gboolean")
+(define-function g_variant_type_new_tuple
+  (c-name "g_variant_type_new_tuple")
+  (return-type "GVariantType*")
+  (parameters
+    '("GVariantType**" "items")
+    '("gint" "length")
+  )
 )
 
-(define-method unlock
-  (of-object "GMutex")
-  (c-name "g_mutex_unlock")
-  (return-type "none")
+(define-method copy
+  (of-object "GVariantType")
+  (c-name "g_variant_type_copy")
+  (return-type "GVariantType*")
 )
 
-(define-method init
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_init")
-  (return-type "none")
+(define-method dup_string
+  (of-object "GVariantType")
+  (c-name "g_variant_type_dup_string")
+  (return-type "gchar*")
 )
 
-(define-method clear
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_clear")
-  (return-type "none")
+(define-method element
+  (of-object "GVariantType")
+  (c-name "g_variant_type_element")
+  (return-type "const-GVariantType*")
 )
 
-(define-method writer_lock
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_writer_lock")
-  (return-type "none")
+(define-function g_variant_type_equal
+  (c-name "g_variant_type_equal")
+  (return-type "gboolean")
+  (parameters
+    '("gconstpointer" "type1")
+    '("gconstpointer" "type2")
+  )
 )
 
-(define-method writer_trylock
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_writer_trylock")
-  (return-type "gboolean")
+(define-method first
+  (of-object "GVariantType")
+  (c-name "g_variant_type_first")
+  (return-type "const-GVariantType*")
 )
 
-(define-method writer_unlock
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_writer_unlock")
-  (return-type "none")
+(define-method free
+  (of-object "GVariantType")
+  (c-name "g_variant_type_free")
+  (return-type "void")
 )
 
-(define-method reader_lock
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_reader_lock")
-  (return-type "none")
+(define-method get_string_length
+  (of-object "GVariantType")
+  (c-name "g_variant_type_get_string_length")
+  (return-type "gsize")
 )
 
-(define-method reader_trylock
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_reader_trylock")
-  (return-type "gboolean")
+(define-function g_variant_type_hash
+  (c-name "g_variant_type_hash")
+  (return-type "guint")
+  (parameters
+    '("gconstpointer" "type")
+  )
 )
 
-(define-method reader_unlock
-  (of-object "GRWLock")
-  (c-name "g_rw_lock_reader_unlock")
-  (return-type "none")
+(define-method is_array
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_array")
+  (return-type "gboolean")
 )
 
-(define-method init
-  (of-object "GRecMutex")
-  (c-name "g_rec_mutex_init")
-  (return-type "none")
+(define-method is_basic
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_basic")
+  (return-type "gboolean")
 )
 
-(define-method clear
-  (of-object "GRecMutex")
-  (c-name "g_rec_mutex_clear")
-  (return-type "none")
+(define-method is_container
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_container")
+  (return-type "gboolean")
 )
 
-(define-method lock
-  (of-object "GRecMutex")
-  (c-name "g_rec_mutex_lock")
-  (return-type "none")
+(define-method is_definite
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_definite")
+  (return-type "gboolean")
 )
 
-(define-method trylock
-  (of-object "GRecMutex")
-  (c-name "g_rec_mutex_trylock")
+(define-method is_dict_entry
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_dict_entry")
   (return-type "gboolean")
 )
 
-(define-method unlock
-  (of-object "GRecMutex")
-  (c-name "g_rec_mutex_unlock")
-  (return-type "none")
+(define-method is_maybe
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_maybe")
+  (return-type "gboolean")
 )
 
-(define-method init
-  (of-object "GCond")
-  (c-name "g_cond_init")
-  (return-type "none")
+(define-method is_subtype_of
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_subtype_of")
+  (return-type "gboolean")
+  (parameters
+    '("const-GVariantType*" "supertype")
+  )
 )
 
-(define-method clear
-  (of-object "GCond")
-  (c-name "g_cond_clear")
-  (return-type "none")
+(define-method is_tuple
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_tuple")
+  (return-type "gboolean")
 )
 
-(define-method wait
-  (of-object "GCond")
-  (c-name "g_cond_wait")
-  (return-type "none")
-  (parameters
-    '("GMutex*" "mutex")
-  )
+(define-method is_variant
+  (of-object "GVariantType")
+  (c-name "g_variant_type_is_variant")
+  (return-type "gboolean")
 )
 
-(define-method signal
-  (of-object "GCond")
-  (c-name "g_cond_signal")
-  (return-type "none")
+(define-method key
+  (of-object "GVariantType")
+  (c-name "g_variant_type_key")
+  (return-type "const-GVariantType*")
 )
 
-(define-method broadcast
-  (of-object "GCond")
-  (c-name "g_cond_broadcast")
-  (return-type "none")
+(define-method n_items
+  (of-object "GVariantType")
+  (c-name "g_variant_type_n_items")
+  (return-type "gsize")
 )
 
-(define-method wait_until
-  (of-object "GCond")
-  (c-name "g_cond_wait_until")
-  (return-type "gboolean")
-  (parameters
-    '("GMutex*" "mutex")
-    '("gint64" "end_time")
-  )
+(define-method next
+  (of-object "GVariantType")
+  (c-name "g_variant_type_next")
+  (return-type "const-GVariantType*")
 )
 
-(define-method get
-  (of-object "GPrivate")
-  (c-name "g_private_get")
-  (return-type "gpointer")
+(define-method peek_string
+  (of-object "GVariantType")
+  (c-name "g_variant_type_peek_string")
+  (return-type "const-gchar*")
 )
 
-(define-method set
-  (of-object "GPrivate")
-  (c-name "g_private_set")
-  (return-type "none")
-  (parameters
-    '("gpointer" "value")
-  )
+(define-method value
+  (of-object "GVariantType")
+  (c-name "g_variant_type_value")
+  (return-type "const-GVariantType*")
 )
 
-(define-method replace
-  (of-object "GPrivate")
-  (c-name "g_private_replace")
-  (return-type "none")
+(define-function g_variant_type_checked_
+  (c-name "g_variant_type_checked_")
+  (return-type "const-GVariantType*")
   (parameters
-    '("gpointer" "value")
+    '("const-gchar*" "arg0")
   )
 )
 
-(define-method impl
-  (of-object "GOnce")
-  (c-name "g_once_impl")
-  (return-type "gpointer")
+(define-function g_variant_type_string_is_valid
+  (c-name "g_variant_type_string_is_valid")
+  (return-type "gboolean")
   (parameters
-    '("GThreadFunc" "func")
-    '("gpointer" "arg")
+    '("const-gchar*" "type_string")
   )
 )
 
-(define-function g_once_init_enter
-  (c-name "g_once_init_enter")
+(define-function g_variant_type_string_scan
+  (c-name "g_variant_type_string_scan")
   (return-type "gboolean")
   (parameters
-    '("volatile-void*" "location")
+    '("const-gchar*" "string")
+    '("const-gchar*" "limit")
+    '("const-gchar**" "endptr")
   )
 )
 
-(define-function g_once_init_leave
-  (c-name "g_once_init_leave")
-  (return-type "none")
+(define-function g_module_build_path
+  (c-name "g_module_build_path")
+  (return-type "gchar*")
   (parameters
-    '("volatile-void*" "location")
-    '("gsize" "result")
+    '("const-gchar*" "directory")
+    '("const-gchar*" "module_name")
   )
 )
 
-(define-function g_get_num_processors
-  (c-name "g_get_num_processors")
-  (return-type "guint")
+(define-function g_module_error
+  (c-name "g_module_error")
+  (return-type "const-gchar*")
 )
 
-(define-method locker_new
-  (of-object "GMutex")
-  (c-name "g_mutex_locker_new")
-  (return-type "GMutexLocker*")
+(define-function g_module_supported
+  (c-name "g_module_supported")
+  (return-type "gboolean")
 )
 
-(define-method free
-  (of-object "GMutexLocker")
-  (c-name "g_mutex_locker_free")
-  (return-type "none")
+(define-method close
+  (of-object "GModule")
+  (c-name "g_module_close")
+  (return-type "gboolean")
 )
 
+(define-method make_resident
+  (of-object "GModule")
+  (c-name "g_module_make_resident")
+  (return-type "void")
+)
 
+(define-method name
+  (of-object "GModule")
+  (c-name "g_module_name")
+  (return-type "const-gchar*")
+)
 
-;; From gthreadpool.h
-
-(define-function g_thread_pool_new
-  (c-name "g_thread_pool_new")
-  (is-constructor-of "GThreadPool")
-  (return-type "GThreadPool*")
+(define-method symbol
+  (of-object "GModule")
+  (c-name "g_module_symbol")
+  (return-type "gboolean")
   (parameters
-    '("GFunc" "func")
-    '("gpointer" "user_data")
-    '("gint" "max_threads")
-    '("gboolean" "exclusive")
-    '("GError**" "error")
+    '("const-gchar*" "symbol_name")
+    '("gpointer*" "symbol")
   )
 )
 
-(define-method free
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_free")
-  (return-type "none")
+(define-function g_module_build_path
+  (c-name "g_module_build_path")
+  (return-type "gchar*")
   (parameters
-    '("gboolean" "immediate")
-    '("gboolean" "wait_")
+    '("const-gchar*" "directory")
+    '("const-gchar*" "module_name")
   )
 )
 
-(define-method push
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_push")
-  (return-type "gboolean")
+(define-function g_module_error
+  (c-name "g_module_error")
+  (return-type "const-gchar*")
+)
+
+(define-function g_module_open
+  (c-name "g_module_open")
+  (return-type "GModule*")
   (parameters
-    '("gpointer" "data")
-    '("GError**" "error")
+    '("const-gchar*" "file_name")
+    '("GModuleFlags" "flags")
   )
 )
 
-(define-method unprocessed
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_unprocessed")
-  (return-type "guint")
+(define-function g_module_supported
+  (c-name "g_module_supported")
+  (return-type "gboolean")
 )
 
-(define-method set_sort_function
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_set_sort_function")
-  (return-type "none")
+(define-function g_boxed_copy
+  (c-name "g_boxed_copy")
+  (return-type "gpointer")
   (parameters
-    '("GCompareDataFunc" "func")
-    '("gpointer" "user_data")
+    '("GType" "boxed_type")
+    '("gconstpointer" "src_boxed")
   )
 )
 
-(define-method move_to_front
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_move_to_front")
-  (return-type "gboolean")
+(define-function g_boxed_free
+  (c-name "g_boxed_free")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
+    '("GType" "boxed_type")
+    '("gpointer" "boxed")
   )
 )
 
-(define-method set_max_threads
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_set_max_threads")
-  (return-type "gboolean")
+(define-function g_boxed_type_register_static
+  (c-name "g_boxed_type_register_static")
+  (return-type "GType")
   (parameters
-    '("gint" "max_threads")
-    '("GError**" "error")
+    '("const-gchar*" "name")
+    '("GBoxedCopyFunc" "boxed_copy")
+    '("GBoxedFreeFunc" "boxed_free")
   )
 )
 
-(define-method get_max_threads
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_get_max_threads")
-  (return-type "gint")
+(define-function g_cclosure_marshal_BOOLEAN__BOXED_BOXED
+  (c-name "g_cclosure_marshal_BOOLEAN__BOXED_BOXED")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method get_num_threads
-  (of-object "GThreadPool")
-  (c-name "g_thread_pool_get_num_threads")
-  (return-type "guint")
+(define-function g_cclosure_marshal_BOOLEAN__FLAGS
+  (c-name "g_cclosure_marshal_BOOLEAN__FLAGS")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-function g_thread_pool_set_max_unused_threads
-  (c-name "g_thread_pool_set_max_unused_threads")
-  (return-type "none")
+(define-function g_cclosure_marshal_STRING__OBJECT_POINTER
+  (c-name "g_cclosure_marshal_STRING__OBJECT_POINTER")
+  (return-type "void")
   (parameters
-    '("gint" "max_threads")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_thread_pool_get_max_unused_threads
-  (c-name "g_thread_pool_get_max_unused_threads")
-  (return-type "gint")
+(define-function g_cclosure_marshal_VOID__BOOLEAN
+  (c-name "g_cclosure_marshal_VOID__BOOLEAN")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-function g_thread_pool_get_num_unused_threads
-  (c-name "g_thread_pool_get_num_unused_threads")
-  (return-type "guint")
+(define-function g_cclosure_marshal_VOID__BOXED
+  (c-name "g_cclosure_marshal_VOID__BOXED")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-function g_thread_pool_stop_unused_threads
-  (c-name "g_thread_pool_stop_unused_threads")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__CHAR
+  (c-name "g_cclosure_marshal_VOID__CHAR")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-function g_thread_pool_set_max_idle_time
-  (c-name "g_thread_pool_set_max_idle_time")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__DOUBLE
+  (c-name "g_cclosure_marshal_VOID__DOUBLE")
+  (return-type "void")
   (parameters
-    '("guint" "interval")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_thread_pool_get_max_idle_time
-  (c-name "g_thread_pool_get_max_idle_time")
-  (return-type "guint")
+(define-function g_cclosure_marshal_VOID__ENUM
+  (c-name "g_cclosure_marshal_VOID__ENUM")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-
-
-;; From gtimer.h
-
-(define-function g_timer_new
-  (c-name "g_timer_new")
-  (is-constructor-of "GTimer")
-  (return-type "GTimer*")
+(define-function g_cclosure_marshal_VOID__FLAGS
+  (c-name "g_cclosure_marshal_VOID__FLAGS")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method destroy
-  (of-object "GTimer")
-  (c-name "g_timer_destroy")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__FLOAT
+  (c-name "g_cclosure_marshal_VOID__FLOAT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method start
-  (of-object "GTimer")
-  (c-name "g_timer_start")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__INT
+  (c-name "g_cclosure_marshal_VOID__INT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method stop
-  (of-object "GTimer")
-  (c-name "g_timer_stop")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__LONG
+  (c-name "g_cclosure_marshal_VOID__LONG")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method reset
-  (of-object "GTimer")
-  (c-name "g_timer_reset")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__OBJECT
+  (c-name "g_cclosure_marshal_VOID__OBJECT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method continue
-  (of-object "GTimer")
-  (c-name "g_timer_continue")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__PARAM
+  (c-name "g_cclosure_marshal_VOID__PARAM")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method elapsed
-  (of-object "GTimer")
-  (c-name "g_timer_elapsed")
-  (return-type "gdouble")
+(define-function g_cclosure_marshal_VOID__POINTER
+  (c-name "g_cclosure_marshal_VOID__POINTER")
+  (return-type "void")
   (parameters
-    '("gulong*" "microseconds")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_usleep
-  (c-name "g_usleep")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__STRING
+  (c-name "g_cclosure_marshal_VOID__STRING")
+  (return-type "void")
   (parameters
-    '("gulong" "microseconds")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method add
-  (of-object "GTimeVal")
-  (c-name "g_time_val_add")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__UCHAR
+  (c-name "g_cclosure_marshal_VOID__UCHAR")
+  (return-type "void")
   (parameters
-    '("glong" "microseconds")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_time_val_from_iso8601
-  (c-name "g_time_val_from_iso8601")
-  (return-type "gboolean")
+(define-function g_cclosure_marshal_VOID__UINT
+  (c-name "g_cclosure_marshal_VOID__UINT")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "iso_date")
-    '("GTimeVal*" "time_")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method to_iso8601
-  (of-object "GTimeVal")
-  (c-name "g_time_val_to_iso8601")
-  (return-type "gchar*")
+(define-function g_cclosure_marshal_VOID__UINT_POINTER
+  (c-name "g_cclosure_marshal_VOID__UINT_POINTER")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-
-
-;; From gtimezone.h
-
-(define-function g_time_zone_new
-  (c-name "g_time_zone_new")
-  (is-constructor-of "GTimeZone")
-  (return-type "GTimeZone*")
+(define-function g_cclosure_marshal_VOID__ULONG
+  (c-name "g_cclosure_marshal_VOID__ULONG")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "identifier")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_time_zone_new_utc
-  (c-name "g_time_zone_new_utc")
-  (return-type "GTimeZone*")
+(define-function g_cclosure_marshal_VOID__VARIANT
+  (c-name "g_cclosure_marshal_VOID__VARIANT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-function g_time_zone_new_local
-  (c-name "g_time_zone_new_local")
-  (return-type "GTimeZone*")
+(define-function g_cclosure_marshal_VOID__VOID
+  (c-name "g_cclosure_marshal_VOID__VOID")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method ref
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_ref")
-  (return-type "GTimeZone*")
+(define-function g_cclosure_marshal_generic
+  (c-name "g_cclosure_marshal_generic")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_gvalue")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method unref
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_unref")
-  (return-type "none")
+(define-function g_cclosure_new
+  (c-name "g_cclosure_new")
+  (return-type "GClosure*")
+  (parameters
+    '("GCallback" "callback_func")
+    '("gpointer" "user_data")
+    '("GClosureNotify" "destroy_data")
+  )
 )
 
-(define-method find_interval
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_find_interval")
-  (return-type "gint")
+(define-function g_cclosure_new_object
+  (c-name "g_cclosure_new_object")
+  (return-type "GClosure*")
   (parameters
-    '("GTimeType" "type")
-    '("gint64" "time_")
+    '("GCallback" "callback_func")
+    '("GObject*" "object")
   )
 )
 
-(define-method adjust_time
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_adjust_time")
-  (return-type "gint")
+(define-function g_cclosure_new_object_swap
+  (c-name "g_cclosure_new_object_swap")
+  (return-type "GClosure*")
   (parameters
-    '("GTimeType" "type")
-    '("gint64*" "time_")
+    '("GCallback" "callback_func")
+    '("GObject*" "object")
   )
 )
 
-(define-method get_abbreviation
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_get_abbreviation")
-  (return-type "const-gchar*")
+(define-function g_cclosure_new_swap
+  (c-name "g_cclosure_new_swap")
+  (return-type "GClosure*")
   (parameters
-    '("gint" "interval")
+    '("GCallback" "callback_func")
+    '("gpointer" "user_data")
+    '("GClosureNotify" "destroy_data")
   )
 )
 
-(define-method get_offset
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_get_offset")
-  (return-type "gint32")
+(define-function g_clear_object
+  (c-name "g_clear_object")
+  (return-type "void")
   (parameters
-    '("gint" "interval")
+    '("volatileGObject**" "object_ptr")
   )
 )
 
-(define-method is_dst
-  (of-object "GTimeZone")
-  (c-name "g_time_zone_is_dst")
-  (return-type "gboolean")
+(define-function g_enum_complete_type_info
+  (c-name "g_enum_complete_type_info")
+  (return-type "void")
   (parameters
-    '("gint" "interval")
+    '("GType" "g_enum_type")
+    '("GTypeInfo*" "info")
+    '("const-GEnumValue*" "const_values")
   )
 )
 
-
-
-;; From gtranslit-data.h
-
-
-
-;; From gtrashstack.h
-
-(define-function g_trash_stack_push
-  (c-name "g_trash_stack_push")
-  (return-type "none")
+(define-function g_enum_get_value
+  (c-name "g_enum_get_value")
+  (return-type "GEnumValue*")
   (parameters
-    '("GTrashStack**" "stack_p")
-    '("gpointer" "data_p")
+    '("GEnumClass*" "enum_class")
+    '("gint" "value")
   )
 )
 
-(define-function g_trash_stack_pop
-  (c-name "g_trash_stack_pop")
-  (return-type "gpointer")
+(define-function g_enum_get_value_by_name
+  (c-name "g_enum_get_value_by_name")
+  (return-type "GEnumValue*")
   (parameters
-    '("GTrashStack**" "stack_p")
+    '("GEnumClass*" "enum_class")
+    '("const-gchar*" "name")
   )
 )
 
-(define-function g_trash_stack_peek
-  (c-name "g_trash_stack_peek")
-  (return-type "gpointer")
+(define-function g_enum_get_value_by_nick
+  (c-name "g_enum_get_value_by_nick")
+  (return-type "GEnumValue*")
   (parameters
-    '("GTrashStack**" "stack_p")
+    '("GEnumClass*" "enum_class")
+    '("const-gchar*" "nick")
   )
 )
 
-(define-function g_trash_stack_height
-  (c-name "g_trash_stack_height")
-  (return-type "guint")
+(define-function g_enum_register_static
+  (c-name "g_enum_register_static")
+  (return-type "GType")
   (parameters
-    '("GTrashStack**" "stack_p")
+    '("const-gchar*" "name")
+    '("const-GEnumValue*" "const_static_values")
   )
 )
 
-
-
-;; From gtree.h
-
-(define-function g_tree_new
-  (c-name "g_tree_new")
-  (is-constructor-of "GTree")
-  (return-type "GTree*")
+(define-function g_flags_complete_type_info
+  (c-name "g_flags_complete_type_info")
+  (return-type "void")
   (parameters
-    '("GCompareFunc" "key_compare_func")
+    '("GType" "g_flags_type")
+    '("GTypeInfo*" "info")
+    '("const-GFlagsValue*" "const_values")
   )
 )
 
-(define-function g_tree_new_with_data
-  (c-name "g_tree_new_with_data")
-  (return-type "GTree*")
+(define-function g_flags_get_first_value
+  (c-name "g_flags_get_first_value")
+  (return-type "GFlagsValue*")
   (parameters
-    '("GCompareDataFunc" "key_compare_func")
-    '("gpointer" "key_compare_data")
+    '("GFlagsClass*" "flags_class")
+    '("guint" "value")
   )
 )
 
-(define-function g_tree_new_full
-  (c-name "g_tree_new_full")
-  (return-type "GTree*")
+(define-function g_flags_get_value_by_name
+  (c-name "g_flags_get_value_by_name")
+  (return-type "GFlagsValue*")
   (parameters
-    '("GCompareDataFunc" "key_compare_func")
-    '("gpointer" "key_compare_data")
-    '("GDestroyNotify" "key_destroy_func")
-    '("GDestroyNotify" "value_destroy_func")
+    '("GFlagsClass*" "flags_class")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method ref
-  (of-object "GTree")
-  (c-name "g_tree_ref")
-  (return-type "GTree*")
+(define-function g_flags_get_value_by_nick
+  (c-name "g_flags_get_value_by_nick")
+  (return-type "GFlagsValue*")
+  (parameters
+    '("GFlagsClass*" "flags_class")
+    '("const-gchar*" "nick")
+  )
 )
 
-(define-method unref
-  (of-object "GTree")
-  (c-name "g_tree_unref")
-  (return-type "none")
+(define-function g_flags_register_static
+  (c-name "g_flags_register_static")
+  (return-type "GType")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-GFlagsValue*" "const_static_values")
+  )
 )
 
-(define-method destroy
-  (of-object "GTree")
-  (c-name "g_tree_destroy")
-  (return-type "none")
+(define-function g_gtype_get_type
+  (c-name "g_gtype_get_type")
+  (return-type "GType")
 )
 
-(define-method insert
-  (of-object "GTree")
-  (c-name "g_tree_insert")
-  (return-type "none")
+(define-function g_param_spec_boolean
+  (c-name "g_param_spec_boolean")
+  (return-type "GParamSpec*")
   (parameters
-    '("gpointer" "key")
-    '("gpointer" "value")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gboolean" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method replace
-  (of-object "GTree")
-  (c-name "g_tree_replace")
-  (return-type "none")
+(define-function g_param_spec_boxed
+  (c-name "g_param_spec_boxed")
+  (return-type "GParamSpec*")
   (parameters
-    '("gpointer" "key")
-    '("gpointer" "value")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GType" "boxed_type")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method remove
-  (of-object "GTree")
-  (c-name "g_tree_remove")
-  (return-type "gboolean")
+(define-function g_param_spec_char
+  (c-name "g_param_spec_char")
+  (return-type "GParamSpec*")
   (parameters
-    '("gconstpointer" "key")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gint8" "minimum")
+    '("gint8" "maximum")
+    '("gint8" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method steal
-  (of-object "GTree")
-  (c-name "g_tree_steal")
-  (return-type "gboolean")
+(define-function g_param_spec_double
+  (c-name "g_param_spec_double")
+  (return-type "GParamSpec*")
   (parameters
-    '("gconstpointer" "key")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gdouble" "minimum")
+    '("gdouble" "maximum")
+    '("gdouble" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method lookup
-  (of-object "GTree")
-  (c-name "g_tree_lookup")
-  (return-type "gpointer")
+(define-function g_param_spec_enum
+  (c-name "g_param_spec_enum")
+  (return-type "GParamSpec*")
   (parameters
-    '("gconstpointer" "key")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GType" "enum_type")
+    '("gint" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method lookup_extended
-  (of-object "GTree")
-  (c-name "g_tree_lookup_extended")
-  (return-type "gboolean")
+(define-function g_param_spec_flags
+  (c-name "g_param_spec_flags")
+  (return-type "GParamSpec*")
   (parameters
-    '("gconstpointer" "lookup_key")
-    '("gpointer*" "orig_key")
-    '("gpointer*" "value")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GType" "flags_type")
+    '("guint" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method foreach
-  (of-object "GTree")
-  (c-name "g_tree_foreach")
-  (return-type "none")
+(define-function g_param_spec_float
+  (c-name "g_param_spec_float")
+  (return-type "GParamSpec*")
   (parameters
-    '("GTraverseFunc" "func")
-    '("gpointer" "user_data")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gfloat" "minimum")
+    '("gfloat" "maximum")
+    '("gfloat" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method traverse
-  (of-object "GTree")
-  (c-name "g_tree_traverse")
-  (return-type "none")
+(define-function g_param_spec_gtype
+  (c-name "g_param_spec_gtype")
+  (return-type "GParamSpec*")
   (parameters
-    '("GTraverseFunc" "traverse_func")
-    '("GTraverseType" "traverse_type")
-    '("gpointer" "user_data")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GType" "is_a_type")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method search
-  (of-object "GTree")
-  (c-name "g_tree_search")
-  (return-type "gpointer")
+(define-function g_param_spec_int
+  (c-name "g_param_spec_int")
+  (return-type "GParamSpec*")
   (parameters
-    '("GCompareFunc" "search_func")
-    '("gconstpointer" "user_data")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gint" "minimum")
+    '("gint" "maximum")
+    '("gint" "default_value")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method height
-  (of-object "GTree")
-  (c-name "g_tree_height")
-  (return-type "gint")
-)
-
-(define-method nnodes
-  (of-object "GTree")
-  (c-name "g_tree_nnodes")
-  (return-type "gint")
+(define-function g_param_spec_int64
+  (c-name "g_param_spec_int64")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gint64" "minimum")
+    '("gint64" "maximum")
+    '("gint64" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-
-
-;; From gtypes.h
-
-
-
-;; From gunibreak.h
-
-
-
-;; From gunichartables.h
-
-
-
-;; From gunicode.h
-
-(define-method to_iso15924
-  (of-object "GUnicodeScript")
-  (c-name "g_unicode_script_to_iso15924")
-  (return-type "guint32")
+(define-function g_param_spec_long
+  (c-name "g_param_spec_long")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("glong" "minimum")
+    '("glong" "maximum")
+    '("glong" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-function g_unicode_script_from_iso15924
-  (c-name "g_unicode_script_from_iso15924")
-  (return-type "GUnicodeScript")
+(define-function g_param_spec_object
+  (c-name "g_param_spec_object")
+  (return-type "GParamSpec*")
   (parameters
-    '("guint32" "iso15924")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GType" "object_type")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method isalnum
-  (of-object "gunichar")
-  (c-name "g_unichar_isalnum")
-  (return-type "gboolean")
+(define-function g_param_spec_override
+  (c-name "g_param_spec_override")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("GParamSpec*" "overridden")
+  )
 )
 
-(define-method isalpha
-  (of-object "gunichar")
-  (c-name "g_unichar_isalpha")
-  (return-type "gboolean")
+(define-function g_param_spec_param
+  (c-name "g_param_spec_param")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GType" "param_type")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method iscntrl
-  (of-object "gunichar")
-  (c-name "g_unichar_iscntrl")
-  (return-type "gboolean")
+(define-function g_param_spec_pointer
+  (c-name "g_param_spec_pointer")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method isdigit
-  (of-object "gunichar")
-  (c-name "g_unichar_isdigit")
-  (return-type "gboolean")
+(define-function g_param_spec_pool_new
+  (c-name "g_param_spec_pool_new")
+  (return-type "GParamSpecPool*")
+  (parameters
+    '("gboolean" "type_prefixing")
+  )
 )
 
-(define-method isgraph
-  (of-object "gunichar")
-  (c-name "g_unichar_isgraph")
-  (return-type "gboolean")
+(define-function g_param_spec_string
+  (c-name "g_param_spec_string")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("const-gchar*" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method islower
-  (of-object "gunichar")
-  (c-name "g_unichar_islower")
-  (return-type "gboolean")
+(define-function g_param_spec_uchar
+  (c-name "g_param_spec_uchar")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("guint8" "minimum")
+    '("guint8" "maximum")
+    '("guint8" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method isprint
-  (of-object "gunichar")
-  (c-name "g_unichar_isprint")
-  (return-type "gboolean")
+(define-function g_param_spec_uint
+  (c-name "g_param_spec_uint")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("guint" "minimum")
+    '("guint" "maximum")
+    '("guint" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method ispunct
-  (of-object "gunichar")
-  (c-name "g_unichar_ispunct")
-  (return-type "gboolean")
+(define-function g_param_spec_uint64
+  (c-name "g_param_spec_uint64")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("guint64" "minimum")
+    '("guint64" "maximum")
+    '("guint64" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method isspace
-  (of-object "gunichar")
-  (c-name "g_unichar_isspace")
-  (return-type "gboolean")
+(define-function g_param_spec_ulong
+  (c-name "g_param_spec_ulong")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gulong" "minimum")
+    '("gulong" "maximum")
+    '("gulong" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method isupper
-  (of-object "gunichar")
-  (c-name "g_unichar_isupper")
-  (return-type "gboolean")
+(define-function g_param_spec_unichar
+  (c-name "g_param_spec_unichar")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("gunichar" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method isxdigit
-  (of-object "gunichar")
-  (c-name "g_unichar_isxdigit")
-  (return-type "gboolean")
+(define-function g_param_spec_value_array
+  (c-name "g_param_spec_value_array")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GParamSpec*" "element_spec")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method istitle
-  (of-object "gunichar")
-  (c-name "g_unichar_istitle")
-  (return-type "gboolean")
+(define-function g_param_spec_variant
+  (c-name "g_param_spec_variant")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("const-GVariantType*" "type")
+    '("GVariant*" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
-(define-method isdefined
-  (of-object "gunichar")
-  (c-name "g_unichar_isdefined")
-  (return-type "gboolean")
+(define-function g_param_type_register_static
+  (c-name "g_param_type_register_static")
+  (return-type "GType")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-GParamSpecTypeInfo*" "pspec_info")
+  )
 )
 
-(define-method iswide
-  (of-object "gunichar")
-  (c-name "g_unichar_iswide")
+(define-function g_param_value_convert
+  (c-name "g_param_value_convert")
   (return-type "gboolean")
+  (parameters
+    '("GParamSpec*" "pspec")
+    '("const-GValue*" "src_value")
+    '("GValue*" "dest_value")
+    '("gboolean" "strict_validation")
+  )
 )
 
-(define-method iswide_cjk
-  (of-object "gunichar")
-  (c-name "g_unichar_iswide_cjk")
+(define-function g_param_value_defaults
+  (c-name "g_param_value_defaults")
   (return-type "gboolean")
+  (parameters
+    '("GParamSpec*" "pspec")
+    '("GValue*" "value")
+  )
 )
 
-(define-method iszerowidth
-  (of-object "gunichar")
-  (c-name "g_unichar_iszerowidth")
-  (return-type "gboolean")
+(define-function g_param_value_set_default
+  (c-name "g_param_value_set_default")
+  (return-type "void")
+  (parameters
+    '("GParamSpec*" "pspec")
+    '("GValue*" "value")
+  )
 )
 
-(define-method ismark
-  (of-object "gunichar")
-  (c-name "g_unichar_ismark")
+(define-function g_param_value_validate
+  (c-name "g_param_value_validate")
   (return-type "gboolean")
+  (parameters
+    '("GParamSpec*" "pspec")
+    '("GValue*" "value")
+  )
 )
 
-(define-method toupper
-  (of-object "gunichar")
-  (c-name "g_unichar_toupper")
-  (return-type "gunichar")
-)
-
-(define-method tolower
-  (of-object "gunichar")
-  (c-name "g_unichar_tolower")
-  (return-type "gunichar")
-)
-
-(define-method totitle
-  (of-object "gunichar")
-  (c-name "g_unichar_totitle")
-  (return-type "gunichar")
-)
-
-(define-method digit_value
-  (of-object "gunichar")
-  (c-name "g_unichar_digit_value")
-  (return-type "gint")
-)
-
-(define-method xdigit_value
-  (of-object "gunichar")
-  (c-name "g_unichar_xdigit_value")
-  (return-type "gint")
-)
-
-(define-method type
-  (of-object "gunichar")
-  (c-name "g_unichar_type")
-  (return-type "GUnicodeType")
-)
-
-(define-method break_type
-  (of-object "gunichar")
-  (c-name "g_unichar_break_type")
-  (return-type "GUnicodeBreakType")
-)
-
-(define-method combining_class
-  (of-object "gunichar")
-  (c-name "g_unichar_combining_class")
+(define-function g_param_values_cmp
+  (c-name "g_param_values_cmp")
   (return-type "gint")
-)
-
-(define-method get_mirror_char
-  (of-object "gunichar")
-  (c-name "g_unichar_get_mirror_char")
-  (return-type "gboolean")
   (parameters
-    '("gunichar*" "mirrored_ch")
+    '("GParamSpec*" "pspec")
+    '("const-GValue*" "value1")
+    '("const-GValue*" "value2")
   )
 )
 
-(define-method get_script
-  (of-object "gunichar")
-  (c-name "g_unichar_get_script")
-  (return-type "GUnicodeScript")
+(define-function g_pointer_type_register_static
+  (c-name "g_pointer_type_register_static")
+  (return-type "GType")
+  (parameters
+    '("const-gchar*" "name")
+  )
 )
 
-(define-method validate
-  (of-object "gunichar")
-  (c-name "g_unichar_validate")
+(define-function g_signal_accumulator_first_wins
+  (c-name "g_signal_accumulator_first_wins")
   (return-type "gboolean")
+  (parameters
+    '("GSignalInvocationHint*" "ihint")
+    '("GValue*" "return_accu")
+    '("const-GValue*" "handler_return")
+    '("gpointer" "dummy")
+  )
 )
 
-(define-method compose
-  (of-object "gunichar")
-  (c-name "g_unichar_compose")
+(define-function g_signal_accumulator_true_handled
+  (c-name "g_signal_accumulator_true_handled")
   (return-type "gboolean")
   (parameters
-    '("gunichar" "b")
-    '("gunichar*" "ch")
+    '("GSignalInvocationHint*" "ihint")
+    '("GValue*" "return_accu")
+    '("const-GValue*" "handler_return")
+    '("gpointer" "dummy")
   )
 )
 
-(define-method decompose
-  (of-object "gunichar")
-  (c-name "g_unichar_decompose")
-  (return-type "gboolean")
+(define-function g_signal_add_emission_hook
+  (c-name "g_signal_add_emission_hook")
+  (return-type "gulong")
   (parameters
-    '("gunichar*" "a")
-    '("gunichar*" "b")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GSignalEmissionHook" "hook_func")
+    '("gpointer" "hook_data")
+    '("GDestroyNotify" "data_destroy")
   )
 )
 
-(define-method fully_decompose
-  (of-object "gunichar")
-  (c-name "g_unichar_fully_decompose")
-  (return-type "gsize")
+(define-function g_signal_chain_from_overridden
+  (c-name "g_signal_chain_from_overridden")
+  (return-type "void")
   (parameters
-    '("gboolean" "compat")
-    '("gunichar*" "result")
-    '("gsize" "result_len")
+    '("GValue*" "instance_and_params")
+    '("GValue*" "return_value")
   )
 )
 
-(define-function g_unicode_canonical_ordering
-  (c-name "g_unicode_canonical_ordering")
-  (return-type "none")
+(define-function g_signal_chain_from_overridden_handler
+  (c-name "g_signal_chain_from_overridden_handler")
+  (return-type "void")
   (parameters
-    '("gunichar*" "string")
-    '("gsize" "len")
+    '("gpointer" "instance")
+    '("..." "...")
   )
 )
 
-(define-function g_unicode_canonical_decomposition
-  (c-name "g_unicode_canonical_decomposition")
-  (return-type "gunichar*")
+(define-function g_signal_connect_closure
+  (c-name "g_signal_connect_closure")
+  (return-type "gulong")
   (parameters
-    '("gunichar" "ch")
-    '("gsize*" "result_len")
+    '("gpointer" "instance")
+    '("const-gchar*" "detailed_signal")
+    '("GClosure*" "closure")
+    '("gboolean" "after")
   )
 )
 
-(define-function g_utf8_get_char
-  (c-name "g_utf8_get_char")
-  (return-type "gunichar")
+(define-function g_signal_connect_closure_by_id
+  (c-name "g_signal_connect_closure_by_id")
+  (return-type "gulong")
   (parameters
-    '("const-gchar*" "p")
+    '("gpointer" "instance")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GClosure*" "closure")
+    '("gboolean" "after")
   )
 )
 
-(define-function g_utf8_get_char_validated
-  (c-name "g_utf8_get_char_validated")
-  (return-type "gunichar")
+(define-function g_signal_connect_data
+  (c-name "g_signal_connect_data")
+  (return-type "gulong")
   (parameters
-    '("const-gchar*" "p")
-    '("gssize" "max_len")
+    '("gpointer" "instance")
+    '("const-gchar*" "detailed_signal")
+    '("GCallback" "c_handler")
+    '("gpointer" "data")
+    '("GClosureNotify" "destroy_data")
+    '("GConnectFlags" "connect_flags")
   )
 )
 
-(define-function g_utf8_offset_to_pointer
-  (c-name "g_utf8_offset_to_pointer")
-  (return-type "gchar*")
+(define-function g_signal_connect_object
+  (c-name "g_signal_connect_object")
+  (return-type "gulong")
   (parameters
-    '("const-gchar*" "str")
-    '("glong" "offset")
+    '("gpointer" "instance")
+    '("const-gchar*" "detailed_signal")
+    '("GCallback" "c_handler")
+    '("gpointer" "gobject")
+    '("GConnectFlags" "connect_flags")
   )
 )
 
-(define-function g_utf8_pointer_to_offset
-  (c-name "g_utf8_pointer_to_offset")
-  (return-type "glong")
+(define-function g_signal_emit
+  (c-name "g_signal_emit")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("const-gchar*" "pos")
+    '("gpointer" "instance")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("..." "...")
   )
 )
 
-(define-function g_utf8_prev_char
-  (c-name "g_utf8_prev_char")
-  (return-type "gchar*")
+(define-function g_signal_emit_by_name
+  (c-name "g_signal_emit_by_name")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "p")
+    '("gpointer" "instance")
+    '("const-gchar*" "detailed_signal")
+    '("..." "...")
   )
 )
 
-(define-function g_utf8_find_next_char
-  (c-name "g_utf8_find_next_char")
-  (return-type "gchar*")
+(define-function g_signal_emit_valist
+  (c-name "g_signal_emit_valist")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "p")
-    '("const-gchar*" "end")
+    '("gpointer" "instance")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("va_list" "var_args")
   )
 )
 
-(define-function g_utf8_find_prev_char
-  (c-name "g_utf8_find_prev_char")
-  (return-type "gchar*")
+(define-function g_signal_emitv
+  (c-name "g_signal_emitv")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("const-gchar*" "p")
+    '("GValue*" "instance_and_params")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GValue*" "return_value")
   )
 )
 
-(define-function g_utf8_strlen
-  (c-name "g_utf8_strlen")
-  (return-type "glong")
+(define-function g_signal_get_invocation_hint
+  (c-name "g_signal_get_invocation_hint")
+  (return-type "GSignalInvocationHint*")
   (parameters
-    '("const-gchar*" "p")
-    '("gssize" "max")
+    '("gpointer" "instance")
   )
 )
 
-(define-function g_utf8_substring
-  (c-name "g_utf8_substring")
-  (return-type "gchar*")
+(define-function g_signal_handler_block
+  (c-name "g_signal_handler_block")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("glong" "start_pos")
-    '("glong" "end_pos")
+    '("gpointer" "instance")
+    '("gulong" "handler_id")
   )
 )
 
-(define-function g_utf8_strncpy
-  (c-name "g_utf8_strncpy")
-  (return-type "gchar*")
+(define-function g_signal_handler_disconnect
+  (c-name "g_signal_handler_disconnect")
+  (return-type "void")
   (parameters
-    '("gchar*" "dest")
-    '("const-gchar*" "src")
-    '("gsize" "n")
+    '("gpointer" "instance")
+    '("gulong" "handler_id")
   )
 )
 
-(define-function g_utf8_strchr
-  (c-name "g_utf8_strchr")
-  (return-type "gchar*")
+(define-function g_signal_handler_find
+  (c-name "g_signal_handler_find")
+  (return-type "gulong")
   (parameters
-    '("const-gchar*" "p")
-    '("gssize" "len")
-    '("gunichar" "c")
+    '("gpointer" "instance")
+    '("GSignalMatchType" "mask")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GClosure*" "closure")
+    '("gpointer" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_utf8_strrchr
-  (c-name "g_utf8_strrchr")
-  (return-type "gchar*")
+(define-function g_signal_handler_is_connected
+  (c-name "g_signal_handler_is_connected")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "p")
-    '("gssize" "len")
-    '("gunichar" "c")
+    '("gpointer" "instance")
+    '("gulong" "handler_id")
   )
 )
 
-(define-function g_utf8_strreverse
-  (c-name "g_utf8_strreverse")
-  (return-type "gchar*")
+(define-function g_signal_handler_unblock
+  (c-name "g_signal_handler_unblock")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("gpointer" "instance")
+    '("gulong" "handler_id")
   )
 )
 
-(define-function g_utf8_to_utf16
-  (c-name "g_utf8_to_utf16")
-  (return-type "gunichar2*")
+(define-function g_signal_handlers_block_matched
+  (c-name "g_signal_handlers_block_matched")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("glong" "len")
-    '("glong*" "items_read")
-    '("glong*" "items_written")
-    '("GError**" "error")
+    '("gpointer" "instance")
+    '("GSignalMatchType" "mask")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GClosure*" "closure")
+    '("gpointer" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_utf8_to_ucs4
-  (c-name "g_utf8_to_ucs4")
-  (return-type "gunichar*")
+(define-function g_signal_handlers_destroy
+  (c-name "g_signal_handlers_destroy")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("glong" "len")
-    '("glong*" "items_read")
-    '("glong*" "items_written")
-    '("GError**" "error")
+    '("gpointer" "instance")
   )
 )
 
-(define-function g_utf8_to_ucs4_fast
-  (c-name "g_utf8_to_ucs4_fast")
-  (return-type "gunichar*")
+(define-function g_signal_handlers_disconnect_matched
+  (c-name "g_signal_handlers_disconnect_matched")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("glong" "len")
-    '("glong*" "items_written")
+    '("gpointer" "instance")
+    '("GSignalMatchType" "mask")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GClosure*" "closure")
+    '("gpointer" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_utf16_to_ucs4
-  (c-name "g_utf16_to_ucs4")
-  (return-type "gunichar*")
+(define-function g_signal_handlers_unblock_matched
+  (c-name "g_signal_handlers_unblock_matched")
+  (return-type "guint")
   (parameters
-    '("const-gunichar2*" "str")
-    '("glong" "len")
-    '("glong*" "items_read")
-    '("glong*" "items_written")
-    '("GError**" "error")
+    '("gpointer" "instance")
+    '("GSignalMatchType" "mask")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("GClosure*" "closure")
+    '("gpointer" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_utf16_to_utf8
-  (c-name "g_utf16_to_utf8")
-  (return-type "gchar*")
+(define-function g_signal_has_handler_pending
+  (c-name "g_signal_has_handler_pending")
+  (return-type "gboolean")
   (parameters
-    '("const-gunichar2*" "str")
-    '("glong" "len")
-    '("glong*" "items_read")
-    '("glong*" "items_written")
-    '("GError**" "error")
+    '("gpointer" "instance")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
+    '("gboolean" "may_be_blocked")
   )
 )
 
-(define-function g_ucs4_to_utf16
-  (c-name "g_ucs4_to_utf16")
-  (return-type "gunichar2*")
+(define-function g_signal_list_ids
+  (c-name "g_signal_list_ids")
+  (return-type "guint*")
   (parameters
-    '("const-gunichar*" "str")
-    '("glong" "len")
-    '("glong*" "items_read")
-    '("glong*" "items_written")
-    '("GError**" "error")
+    '("GType" "itype")
+    '("guint*" "n_ids")
   )
 )
 
-(define-function g_ucs4_to_utf8
-  (c-name "g_ucs4_to_utf8")
-  (return-type "gchar*")
+(define-function g_signal_lookup
+  (c-name "g_signal_lookup")
+  (return-type "guint")
   (parameters
-    '("const-gunichar*" "str")
-    '("glong" "len")
-    '("glong*" "items_read")
-    '("glong*" "items_written")
-    '("GError**" "error")
+    '("const-gchar*" "name")
+    '("GType" "itype")
   )
 )
 
-(define-method to_utf8
-  (of-object "gunichar")
-  (c-name "g_unichar_to_utf8")
-  (return-type "gint")
+(define-function g_signal_name
+  (c-name "g_signal_name")
+  (return-type "const-gchar*")
   (parameters
-    '("gchar*" "outbuf")
+    '("guint" "signal_id")
   )
 )
 
-(define-function g_utf8_validate
-  (c-name "g_utf8_validate")
-  (return-type "gboolean")
+(define-function g_signal_new
+  (c-name "g_signal_new")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "max_len")
-    '("const-gchar**" "end")
+    '("const-gchar*" "signal_name")
+    '("GType" "itype")
+    '("GSignalFlags" "signal_flags")
+    '("guint" "class_offset")
+    '("GSignalAccumulator" "accumulator")
+    '("gpointer" "accu_data")
+    '("GSignalCMarshaller" "c_marshaller")
+    '("GType" "return_type")
+    '("guint" "n_params")
+    '("..." "...")
   )
 )
 
-(define-function g_utf8_strup
-  (c-name "g_utf8_strup")
-  (return-type "gchar*")
+(define-function g_signal_new_class_handler
+  (c-name "g_signal_new_class_handler")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("const-gchar*" "signal_name")
+    '("GType" "itype")
+    '("GSignalFlags" "signal_flags")
+    '("GCallback" "class_handler")
+    '("GSignalAccumulator" "accumulator")
+    '("gpointer" "accu_data")
+    '("GSignalCMarshaller" "c_marshaller")
+    '("GType" "return_type")
+    '("guint" "n_params")
+    '("..." "...")
   )
 )
 
-(define-function g_utf8_strdown
-  (c-name "g_utf8_strdown")
-  (return-type "gchar*")
+(define-function g_signal_new_valist
+  (c-name "g_signal_new_valist")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("const-gchar*" "signal_name")
+    '("GType" "itype")
+    '("GSignalFlags" "signal_flags")
+    '("GClosure*" "class_closure")
+    '("GSignalAccumulator" "accumulator")
+    '("gpointer" "accu_data")
+    '("GSignalCMarshaller" "c_marshaller")
+    '("GType" "return_type")
+    '("guint" "n_params")
+    '("va_list" "args")
   )
 )
 
-(define-function g_utf8_casefold
-  (c-name "g_utf8_casefold")
-  (return-type "gchar*")
+(define-function g_signal_newv
+  (c-name "g_signal_newv")
+  (return-type "guint")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("const-gchar*" "signal_name")
+    '("GType" "itype")
+    '("GSignalFlags" "signal_flags")
+    '("GClosure*" "class_closure")
+    '("GSignalAccumulator" "accumulator")
+    '("gpointer" "accu_data")
+    '("GSignalCMarshaller" "c_marshaller")
+    '("GType" "return_type")
+    '("guint" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-function g_utf8_normalize
-  (c-name "g_utf8_normalize")
-  (return-type "gchar*")
+(define-function g_signal_override_class_closure
+  (c-name "g_signal_override_class_closure")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
-    '("GNormalizeMode" "mode")
+    '("guint" "signal_id")
+    '("GType" "instance_type")
+    '("GClosure*" "class_closure")
   )
 )
 
-(define-function g_utf8_collate
-  (c-name "g_utf8_collate")
-  (return-type "gint")
+(define-function g_signal_override_class_handler
+  (c-name "g_signal_override_class_handler")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str1")
-    '("const-gchar*" "str2")
+    '("const-gchar*" "signal_name")
+    '("GType" "instance_type")
+    '("GCallback" "class_handler")
   )
 )
 
-(define-function g_utf8_collate_key
-  (c-name "g_utf8_collate_key")
-  (return-type "gchar*")
+(define-function g_signal_parse_name
+  (c-name "g_signal_parse_name")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("const-gchar*" "detailed_signal")
+    '("GType" "itype")
+    '("guint*" "signal_id_p")
+    '("GQuark*" "detail_p")
+    '("gboolean" "force_detail_quark")
   )
 )
 
-(define-function g_utf8_collate_key_for_filename
-  (c-name "g_utf8_collate_key_for_filename")
-  (return-type "gchar*")
+(define-function g_signal_query
+  (c-name "g_signal_query")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "str")
-    '("gssize" "len")
+    '("guint" "signal_id")
+    '("GSignalQuery*" "query")
   )
 )
 
-
-
-;; From gunicomp.h
-
-
-
-;; From gunidecomp.h
-
-
-
-;; From gurifuncs.h
-
-(define-function g_uri_unescape_string
-  (c-name "g_uri_unescape_string")
-  (return-type "char*")
+(define-function g_signal_remove_emission_hook
+  (c-name "g_signal_remove_emission_hook")
+  (return-type "void")
   (parameters
-    '("const-char*" "escaped_string")
-    '("const-char*" "illegal_characters")
+    '("guint" "signal_id")
+    '("gulong" "hook_id")
   )
 )
 
-(define-function g_uri_unescape_segment
-  (c-name "g_uri_unescape_segment")
-  (return-type "char*")
+(define-function g_signal_set_va_marshaller
+  (c-name "g_signal_set_va_marshaller")
+  (return-type "void")
   (parameters
-    '("const-char*" "escaped_string")
-    '("const-char*" "escaped_string_end")
-    '("const-char*" "illegal_characters")
+    '("guint" "signal_id")
+    '("GType" "instance_type")
+    '("GSignalCVaMarshaller" "va_marshaller")
   )
 )
 
-(define-function g_uri_parse_scheme
-  (c-name "g_uri_parse_scheme")
-  (return-type "char*")
+(define-function g_signal_stop_emission
+  (c-name "g_signal_stop_emission")
+  (return-type "void")
   (parameters
-    '("const-char*" "uri")
+    '("gpointer" "instance")
+    '("guint" "signal_id")
+    '("GQuark" "detail")
   )
 )
 
-(define-function g_uri_escape_string
-  (c-name "g_uri_escape_string")
-  (return-type "char*")
+(define-function g_signal_stop_emission_by_name
+  (c-name "g_signal_stop_emission_by_name")
+  (return-type "void")
   (parameters
-    '("const-char*" "unescaped")
-    '("const-char*" "reserved_chars_allowed")
-    '("gboolean" "allow_utf8")
+    '("gpointer" "instance")
+    '("const-gchar*" "detailed_signal")
   )
 )
 
-
-
-;; From gutils.h
-
-(define-function g_get_user_name
-  (c-name "g_get_user_name")
-  (return-type "const-gchar*")
+(define-function g_signal_type_cclosure_new
+  (c-name "g_signal_type_cclosure_new")
+  (return-type "GClosure*")
+  (parameters
+    '("GType" "itype")
+    '("guint" "struct_offset")
+  )
 )
 
-(define-function g_get_real_name
-  (c-name "g_get_real_name")
-  (return-type "const-gchar*")
+(define-function g_source_set_closure
+  (c-name "g_source_set_closure")
+  (return-type "void")
+  (parameters
+    '("GSource*" "source")
+    '("GClosure*" "closure")
+  )
 )
 
-(define-function g_get_home_dir
-  (c-name "g_get_home_dir")
-  (return-type "const-gchar*")
+(define-function g_source_set_dummy_callback
+  (c-name "g_source_set_dummy_callback")
+  (return-type "void")
+  (parameters
+    '("GSource*" "source")
+  )
 )
 
-(define-function g_get_tmp_dir
-  (c-name "g_get_tmp_dir")
-  (return-type "const-gchar*")
+(define-function g_strdup_value_contents
+  (c-name "g_strdup_value_contents")
+  (return-type "gchar*")
+  (parameters
+    '("const-GValue*" "value")
+  )
 )
 
-(define-function g_get_host_name
-  (c-name "g_get_host_name")
-  (return-type "const-gchar*")
+(define-function g_type_add_class_cache_func
+  (c-name "g_type_add_class_cache_func")
+  (return-type "void")
+  (parameters
+    '("gpointer" "cache_data")
+    '("GTypeClassCacheFunc" "cache_func")
+  )
 )
 
-(define-function g_get_prgname
-  (c-name "g_get_prgname")
-  (return-type "const-gchar*")
+(define-function g_type_add_class_private
+  (c-name "g_type_add_class_private")
+  (return-type "void")
+  (parameters
+    '("GType" "class_type")
+    '("gsize" "private_size")
+  )
 )
 
-(define-function g_set_prgname
-  (c-name "g_set_prgname")
-  (return-type "none")
+(define-function g_type_add_instance_private
+  (c-name "g_type_add_instance_private")
+  (return-type "gint")
   (parameters
-    '("const-gchar*" "prgname")
+    '("GType" "class_type")
+    '("gsize" "private_size")
   )
 )
 
-(define-function g_get_application_name
-  (c-name "g_get_application_name")
-  (return-type "const-gchar*")
+(define-function g_type_add_interface_check
+  (c-name "g_type_add_interface_check")
+  (return-type "void")
+  (parameters
+    '("gpointer" "check_data")
+    '("GTypeInterfaceCheckFunc" "check_func")
+  )
 )
 
-(define-function g_set_application_name
-  (c-name "g_set_application_name")
-  (return-type "none")
+(define-function g_type_add_interface_dynamic
+  (c-name "g_type_add_interface_dynamic")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "application_name")
+    '("GType" "instance_type")
+    '("GType" "interface_type")
+    '("GTypePlugin*" "plugin")
   )
 )
 
-(define-function g_reload_user_special_dirs_cache
-  (c-name "g_reload_user_special_dirs_cache")
-  (return-type "none")
+(define-function g_type_add_interface_static
+  (c-name "g_type_add_interface_static")
+  (return-type "void")
+  (parameters
+    '("GType" "instance_type")
+    '("GType" "interface_type")
+    '("const-GInterfaceInfo*" "info")
+  )
 )
 
-(define-function g_get_user_data_dir
-  (c-name "g_get_user_data_dir")
-  (return-type "const-gchar*")
+(define-function g_type_check_class_cast
+  (c-name "g_type_check_class_cast")
+  (return-type "GTypeClass*")
+  (parameters
+    '("GTypeClass*" "g_class")
+    '("GType" "is_a_type")
+  )
 )
 
-(define-function g_get_user_config_dir
-  (c-name "g_get_user_config_dir")
-  (return-type "const-gchar*")
+(define-function g_type_check_class_is_a
+  (c-name "g_type_check_class_is_a")
+  (return-type "gboolean")
+  (parameters
+    '("GTypeClass*" "g_class")
+    '("GType" "is_a_type")
+  )
 )
 
-(define-function g_get_user_cache_dir
-  (c-name "g_get_user_cache_dir")
-  (return-type "const-gchar*")
+(define-function g_type_check_instance
+  (c-name "g_type_check_instance")
+  (return-type "gboolean")
+  (parameters
+    '("GTypeInstance*" "instance")
+  )
 )
 
-(define-function g_get_system_data_dirs
-  (c-name "g_get_system_data_dirs")
-  (return-type "const-gchar*-const*")
+(define-function g_type_check_instance_cast
+  (c-name "g_type_check_instance_cast")
+  (return-type "GTypeInstance*")
+  (parameters
+    '("GTypeInstance*" "instance")
+    '("GType" "iface_type")
+  )
 )
 
-;; the g_win32_get_system_data_dirs_for_module() function is removed because it
-;; has a function pointer parameter and that is not handled correctly by
-;; h2def.py.
-
-(define-function g_get_system_config_dirs
-  (c-name "g_get_system_config_dirs")
-  (return-type "const-gchar*-const*")
+(define-function g_type_check_instance_is_a
+  (c-name "g_type_check_instance_is_a")
+  (return-type "gboolean")
+  (parameters
+    '("GTypeInstance*" "instance")
+    '("GType" "iface_type")
+  )
 )
 
-(define-function g_get_user_runtime_dir
-  (c-name "g_get_user_runtime_dir")
-  (return-type "const-gchar*")
+(define-function g_type_check_instance_is_fundamentally_a
+  (c-name "g_type_check_instance_is_fundamentally_a")
+  (return-type "gboolean")
+  (parameters
+    '("GTypeInstance*" "instance")
+    '("GType" "fundamental_type")
+  )
 )
 
-(define-function g_get_user_special_dir
-  (c-name "g_get_user_special_dir")
-  (return-type "const-gchar*")
+(define-function g_type_check_is_value_type
+  (c-name "g_type_check_is_value_type")
+  (return-type "gboolean")
   (parameters
-    '("GUserDirectory" "directory")
+    '("GType" "type")
   )
 )
 
-(define-function g_parse_debug_string
-  (c-name "g_parse_debug_string")
-  (return-type "guint")
+(define-function g_type_check_value
+  (c-name "g_type_check_value")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "string")
-    '("const-GDebugKey*" "keys")
-    '("guint" "nkeys")
+    '("GValue*" "value")
   )
 )
 
-(define-function g_snprintf
-  (c-name "g_snprintf")
-  (return-type "gint")
+(define-function g_type_check_value_holds
+  (c-name "g_type_check_value_holds")
+  (return-type "gboolean")
   (parameters
-    '("gchar*" "string")
-    '("gulong" "n")
-    '("gchar-const*" "format")
+    '("GValue*" "value")
+    '("GType" "type")
   )
-  (varargs #t)
 )
 
-(define-function g_vsnprintf
-  (c-name "g_vsnprintf")
-  (return-type "gint")
+(define-function g_type_children
+  (c-name "g_type_children")
+  (return-type "GType*")
   (parameters
-    '("gchar*" "string")
-    '("gulong" "n")
-    '("gchar-const*" "format")
-    '("va_list" "args")
+    '("GType" "type")
+    '("guint*" "n_children")
   )
 )
 
-(define-function g_nullify_pointer
-  (c-name "g_nullify_pointer")
-  (return-type "none")
+(define-function g_type_class_adjust_private_offset
+  (c-name "g_type_class_adjust_private_offset")
+  (return-type "void")
   (parameters
-    '("gpointer*" "nullify_location")
+    '("gpointer" "g_class")
+    '("gint*" "private_size_or_offset")
   )
 )
 
-(define-function g_format_size_full
-  (c-name "g_format_size_full")
-  (return-type "gchar*")
+(define-function g_type_class_peek
+  (c-name "g_type_class_peek")
+  (return-type "gpointer")
   (parameters
-    '("guint64" "size")
-    '("GFormatSizeFlags" "flags")
+    '("GType" "type")
   )
 )
 
-(define-function g_format_size
-  (c-name "g_format_size")
-  (return-type "gchar*")
+(define-function g_type_class_peek_static
+  (c-name "g_type_class_peek_static")
+  (return-type "gpointer")
   (parameters
-    '("guint64" "size")
+    '("GType" "type")
   )
 )
 
-(define-function g_format_size_for_display
-  (c-name "g_format_size_for_display")
-  (return-type "gchar*")
+(define-function g_type_class_ref
+  (c-name "g_type_class_ref")
+  (return-type "gpointer")
   (parameters
-    '("goffset" "size")
+    '("GType" "type")
   )
 )
 
-(define-function g_atexit
-  (c-name "g_atexit")
-  (return-type "none")
+(define-function g_type_create_instance
+  (c-name "g_type_create_instance")
+  (return-type "GTypeInstance*")
   (parameters
-    '("GVoidFunc" "func")
+    '("GType" "type")
   )
 )
 
-;; the atexit() function is removed because it has a function pointer parameter
-;; and that is not handled correctly by h2def.py.
-
-(define-function g_find_program_in_path
-  (c-name "g_find_program_in_path")
-  (return-type "gchar*")
+(define-function g_type_default_interface_peek
+  (c-name "g_type_default_interface_peek")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "program")
+    '("GType" "g_type")
   )
 )
 
-(define-function g_bit_nth_lsf_impl
-  (c-name "g_bit_nth_lsf_impl")
-  (return-type "gint")
+(define-function g_type_default_interface_ref
+  (c-name "g_type_default_interface_ref")
+  (return-type "gpointer")
   (parameters
-    '("gulong" "mask")
-    '("gint" "nth_bit")
+    '("GType" "g_type")
   )
 )
 
-(define-function g_bit_nth_msf_impl
-  (c-name "g_bit_nth_msf_impl")
-  (return-type "gint")
+(define-function g_type_default_interface_unref
+  (c-name "g_type_default_interface_unref")
+  (return-type "void")
   (parameters
-    '("gulong" "mask")
-    '("gint" "nth_bit")
+    '("gpointer" "g_iface")
   )
 )
 
-(define-function g_bit_storage_impl
-  (c-name "g_bit_storage_impl")
+(define-function g_type_depth
+  (c-name "g_type_depth")
   (return-type "guint")
   (parameters
-    '("gulong" "number")
+    '("GType" "type")
   )
 )
 
-(define-function g_abort
-  (c-name "g_abort")
-  (return-type "none")
+(define-function g_type_ensure
+  (c-name "g_type_ensure")
+  (return-type "void")
+  (parameters
+    '("GType" "type")
+  )
 )
 
-
-
-;; From gvariant-core.h
-
-(define-function g_variant_new_from_children
-  (c-name "g_variant_new_from_children")
-  (return-type "GVariant*")
+(define-function g_type_free_instance
+  (c-name "g_type_free_instance")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "type")
-    '("GVariant**" "children")
-    '("gsize" "n_children")
-    '("gboolean" "trusted")
+    '("GTypeInstance*" "instance")
   )
 )
 
-(define-method is_trusted
-  (of-object "GVariant")
-  (c-name "g_variant_is_trusted")
-  (return-type "gboolean")
+(define-function g_type_from_name
+  (c-name "g_type_from_name")
+  (return-type "GType")
+  (parameters
+    '("const-gchar*" "name")
+  )
 )
 
-(define-method get_type_info
-  (of-object "GVariant")
-  (c-name "g_variant_get_type_info")
-  (return-type "GVariantTypeInfo*")
+(define-function g_type_fundamental
+  (c-name "g_type_fundamental")
+  (return-type "GType")
+  (parameters
+    '("GType" "type_id")
+  )
 )
 
-
-
-;; From gvariant.h
-
-(define-method unref
-  (of-object "GVariant")
-  (c-name "g_variant_unref")
-  (return-type "none")
+(define-function g_type_fundamental_next
+  (c-name "g_type_fundamental_next")
+  (return-type "GType")
 )
 
-(define-method ref
-  (of-object "GVariant")
-  (c-name "g_variant_ref")
-  (return-type "GVariant*")
-)
-
-(define-method ref_sink
-  (of-object "GVariant")
-  (c-name "g_variant_ref_sink")
-  (return-type "GVariant*")
+(define-function g_type_get_instance_count
+  (c-name "g_type_get_instance_count")
+  (return-type "int")
+  (parameters
+    '("GType" "type")
+  )
 )
 
-(define-method is_floating
-  (of-object "GVariant")
-  (c-name "g_variant_is_floating")
-  (return-type "gboolean")
+(define-function g_type_get_plugin
+  (c-name "g_type_get_plugin")
+  (return-type "GTypePlugin*")
+  (parameters
+    '("GType" "type")
+  )
 )
 
-(define-method take_ref
-  (of-object "GVariant")
-  (c-name "g_variant_take_ref")
-  (return-type "GVariant*")
+(define-function g_type_get_qdata
+  (c-name "g_type_get_qdata")
+  (return-type "gpointer")
+  (parameters
+    '("GType" "type")
+    '("GQuark" "quark")
+  )
 )
 
-(define-method get_type
-  (of-object "GVariant")
-  (c-name "g_variant_get_type")
-  (return-type "const-GVariantType*")
+(define-function g_type_get_type_registration_serial
+  (c-name "g_type_get_type_registration_serial")
+  (return-type "guint")
 )
 
-(define-method get_type_string
-  (of-object "GVariant")
-  (c-name "g_variant_get_type_string")
-  (return-type "const-gchar*")
+(define-function g_type_init
+  (c-name "g_type_init")
+  (return-type "void")
 )
 
-(define-method is_of_type
-  (of-object "GVariant")
-  (c-name "g_variant_is_of_type")
-  (return-type "gboolean")
+(define-function g_type_init_with_debug_flags
+  (c-name "g_type_init_with_debug_flags")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "type")
+    '("GTypeDebugFlags" "debug_flags")
   )
 )
 
-(define-method is_container
-  (of-object "GVariant")
-  (c-name "g_variant_is_container")
-  (return-type "gboolean")
-)
-
-(define-method classify
-  (of-object "GVariant")
-  (c-name "g_variant_classify")
-  (return-type "GVariantClass")
+(define-function g_type_interface_add_prerequisite
+  (c-name "g_type_interface_add_prerequisite")
+  (return-type "void")
+  (parameters
+    '("GType" "interface_type")
+    '("GType" "prerequisite_type")
+  )
 )
 
-(define-function g_variant_new_boolean
-  (c-name "g_variant_new_boolean")
-  (return-type "GVariant*")
+(define-function g_type_interface_get_plugin
+  (c-name "g_type_interface_get_plugin")
+  (return-type "GTypePlugin*")
   (parameters
-    '("gboolean" "value")
+    '("GType" "instance_type")
+    '("GType" "interface_type")
   )
 )
 
-(define-function g_variant_new_byte
-  (c-name "g_variant_new_byte")
-  (return-type "GVariant*")
+(define-function g_type_interface_peek
+  (c-name "g_type_interface_peek")
+  (return-type "gpointer")
   (parameters
-    '("guchar" "value")
+    '("gpointer" "instance_class")
+    '("GType" "iface_type")
   )
 )
 
-(define-function g_variant_new_int16
-  (c-name "g_variant_new_int16")
-  (return-type "GVariant*")
+(define-function g_type_interface_prerequisites
+  (c-name "g_type_interface_prerequisites")
+  (return-type "GType*")
   (parameters
-    '("gint16" "value")
+    '("GType" "interface_type")
+    '("guint*" "n_prerequisites")
   )
 )
 
-(define-function g_variant_new_uint16
-  (c-name "g_variant_new_uint16")
-  (return-type "GVariant*")
+(define-function g_type_interfaces
+  (c-name "g_type_interfaces")
+  (return-type "GType*")
   (parameters
-    '("guint16" "value")
+    '("GType" "type")
+    '("guint*" "n_interfaces")
   )
 )
 
-(define-function g_variant_new_int32
-  (c-name "g_variant_new_int32")
-  (return-type "GVariant*")
+(define-function g_type_is_a
+  (c-name "g_type_is_a")
+  (return-type "gboolean")
   (parameters
-    '("gint32" "value")
+    '("GType" "type")
+    '("GType" "is_a_type")
   )
 )
 
-(define-function g_variant_new_uint32
-  (c-name "g_variant_new_uint32")
-  (return-type "GVariant*")
+(define-function g_type_name
+  (c-name "g_type_name")
+  (return-type "const-gchar*")
   (parameters
-    '("guint32" "value")
+    '("GType" "type")
   )
 )
 
-(define-function g_variant_new_int64
-  (c-name "g_variant_new_int64")
-  (return-type "GVariant*")
+(define-function g_type_name_from_class
+  (c-name "g_type_name_from_class")
+  (return-type "const-gchar*")
   (parameters
-    '("gint64" "value")
+    '("GTypeClass*" "g_class")
   )
 )
 
-(define-function g_variant_new_uint64
-  (c-name "g_variant_new_uint64")
-  (return-type "GVariant*")
+(define-function g_type_name_from_instance
+  (c-name "g_type_name_from_instance")
+  (return-type "const-gchar*")
   (parameters
-    '("guint64" "value")
+    '("GTypeInstance*" "instance")
   )
 )
 
-(define-function g_variant_new_handle
-  (c-name "g_variant_new_handle")
-  (return-type "GVariant*")
+(define-function g_type_next_base
+  (c-name "g_type_next_base")
+  (return-type "GType")
   (parameters
-    '("gint32" "value")
+    '("GType" "leaf_type")
+    '("GType" "root_type")
   )
 )
 
-(define-function g_variant_new_double
-  (c-name "g_variant_new_double")
-  (return-type "GVariant*")
+(define-function g_type_parent
+  (c-name "g_type_parent")
+  (return-type "GType")
   (parameters
-    '("gdouble" "value")
+    '("GType" "type")
   )
 )
 
-(define-function g_variant_new_string
-  (c-name "g_variant_new_string")
-  (return-type "GVariant*")
+(define-function g_type_qname
+  (c-name "g_type_qname")
+  (return-type "GQuark")
   (parameters
-    '("const-gchar*" "string")
+    '("GType" "type")
   )
 )
 
-(define-function g_variant_new_take_string
-  (c-name "g_variant_new_take_string")
-  (return-type "GVariant*")
+(define-function g_type_query
+  (c-name "g_type_query")
+  (return-type "void")
   (parameters
-    '("gchar*" "string")
+    '("GType" "type")
+    '("GTypeQuery*" "query")
   )
 )
 
-(define-function g_variant_new_printf
-  (c-name "g_variant_new_printf")
-  (return-type "GVariant*")
+(define-function g_type_register_dynamic
+  (c-name "g_type_register_dynamic")
+  (return-type "GType")
   (parameters
-    '("const-gchar*" "format_string")
+    '("GType" "parent_type")
+    '("const-gchar*" "type_name")
+    '("GTypePlugin*" "plugin")
+    '("GTypeFlags" "flags")
   )
-  (varargs #t)
 )
 
-(define-function g_variant_new_object_path
-  (c-name "g_variant_new_object_path")
-  (return-type "GVariant*")
+(define-function g_type_register_fundamental
+  (c-name "g_type_register_fundamental")
+  (return-type "GType")
   (parameters
-    '("const-gchar*" "object_path")
+    '("GType" "type_id")
+    '("const-gchar*" "type_name")
+    '("const-GTypeInfo*" "info")
+    '("const-GTypeFundamentalInfo*" "finfo")
+    '("GTypeFlags" "flags")
   )
 )
 
-(define-function g_variant_is_object_path
-  (c-name "g_variant_is_object_path")
-  (return-type "gboolean")
+(define-function g_type_register_static
+  (c-name "g_type_register_static")
+  (return-type "GType")
   (parameters
-    '("const-gchar*" "string")
+    '("GType" "parent_type")
+    '("const-gchar*" "type_name")
+    '("const-GTypeInfo*" "info")
+    '("GTypeFlags" "flags")
   )
 )
 
-(define-function g_variant_new_signature
-  (c-name "g_variant_new_signature")
-  (return-type "GVariant*")
+(define-function g_type_register_static_simple
+  (c-name "g_type_register_static_simple")
+  (return-type "GType")
   (parameters
-    '("const-gchar*" "signature")
+    '("GType" "parent_type")
+    '("const-gchar*" "type_name")
+    '("guint" "class_size")
+    '("GClassInitFunc" "class_init")
+    '("guint" "instance_size")
+    '("GInstanceInitFunc" "instance_init")
+    '("GTypeFlags" "flags")
   )
 )
 
-(define-function g_variant_is_signature
-  (c-name "g_variant_is_signature")
-  (return-type "gboolean")
+(define-function g_type_remove_class_cache_func
+  (c-name "g_type_remove_class_cache_func")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
+    '("gpointer" "cache_data")
+    '("GTypeClassCacheFunc" "cache_func")
   )
 )
 
-(define-method new_variant
-  (of-object "GVariant")
-  (c-name "g_variant_new_variant")
-  (return-type "GVariant*")
+(define-function g_type_remove_interface_check
+  (c-name "g_type_remove_interface_check")
+  (return-type "void")
+  (parameters
+    '("gpointer" "check_data")
+    '("GTypeInterfaceCheckFunc" "check_func")
+  )
 )
 
-(define-function g_variant_new_strv
-  (c-name "g_variant_new_strv")
-  (return-type "GVariant*")
+(define-function g_type_set_qdata
+  (c-name "g_type_set_qdata")
+  (return-type "void")
   (parameters
-    '("const-gchar*-const*" "strv")
-    '("gssize" "length")
+    '("GType" "type")
+    '("GQuark" "quark")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_variant_new_objv
-  (c-name "g_variant_new_objv")
-  (return-type "GVariant*")
+(define-function g_type_test_flags
+  (c-name "g_type_test_flags")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*-const*" "strv")
-    '("gssize" "length")
+    '("GType" "type")
+    '("guint" "flags")
   )
 )
 
-(define-function g_variant_new_bytestring
-  (c-name "g_variant_new_bytestring")
-  (return-type "GVariant*")
+(define-function g_type_value_table_peek
+  (c-name "g_type_value_table_peek")
+  (return-type "GTypeValueTable*")
   (parameters
-    '("const-gchar*" "string")
+    '("GType" "type")
   )
 )
 
-(define-function g_variant_new_bytestring_array
-  (c-name "g_variant_new_bytestring_array")
-  (return-type "GVariant*")
+(define-function g_value_register_transform_func
+  (c-name "g_value_register_transform_func")
+  (return-type "void")
   (parameters
-    '("const-gchar*-const*" "strv")
-    '("gssize" "length")
+    '("GType" "src_type")
+    '("GType" "dest_type")
+    '("GValueTransform" "transform_func")
   )
 )
 
-(define-function g_variant_new_fixed_array
-  (c-name "g_variant_new_fixed_array")
-  (return-type "GVariant*")
+(define-function g_value_type_compatible
+  (c-name "g_value_type_compatible")
+  (return-type "gboolean")
   (parameters
-    '("const-GVariantType*" "element_type")
-    '("gconstpointer" "elements")
-    '("gsize" "n_elements")
-    '("gsize" "element_size")
+    '("GType" "src_type")
+    '("GType" "dest_type")
   )
 )
 
-(define-method get_boolean
-  (of-object "GVariant")
-  (c-name "g_variant_get_boolean")
+(define-function g_value_type_transformable
+  (c-name "g_value_type_transformable")
   (return-type "gboolean")
+  (parameters
+    '("GType" "src_type")
+    '("GType" "dest_type")
+  )
 )
 
-(define-method get_byte
-  (of-object "GVariant")
-  (c-name "g_variant_get_byte")
-  (return-type "guchar")
+(define-method get_flags
+  (of-object "GBinding")
+  (c-name "g_binding_get_flags")
+  (return-type "GBindingFlags")
 )
 
-(define-method get_int16
-  (of-object "GVariant")
-  (c-name "g_variant_get_int16")
-  (return-type "gint16")
+(define-method get_source
+  (of-object "GBinding")
+  (c-name "g_binding_get_source")
+  (return-type "GObject*")
 )
 
-(define-method get_uint16
-  (of-object "GVariant")
-  (c-name "g_variant_get_uint16")
-  (return-type "guint16")
+(define-method get_source_property
+  (of-object "GBinding")
+  (c-name "g_binding_get_source_property")
+  (return-type "const-gchar*")
 )
 
-(define-method get_int32
-  (of-object "GVariant")
-  (c-name "g_variant_get_int32")
-  (return-type "gint32")
+(define-method get_target
+  (of-object "GBinding")
+  (c-name "g_binding_get_target")
+  (return-type "GObject*")
 )
 
-(define-method get_uint32
-  (of-object "GVariant")
-  (c-name "g_variant_get_uint32")
-  (return-type "guint32")
+(define-method get_target_property
+  (of-object "GBinding")
+  (c-name "g_binding_get_target_property")
+  (return-type "const-gchar*")
 )
 
-(define-method get_int64
-  (of-object "GVariant")
-  (c-name "g_variant_get_int64")
-  (return-type "gint64")
+(define-method unbind
+  (of-object "GBinding")
+  (c-name "g_binding_unbind")
+  (return-type "void")
 )
 
-(define-method get_uint64
-  (of-object "GVariant")
-  (c-name "g_variant_get_uint64")
-  (return-type "guint64")
+(define-function g_cclosure_marshal_BOOLEAN__BOXED_BOXED
+  (c-name "g_cclosure_marshal_BOOLEAN__BOXED_BOXED")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method get_handle
-  (of-object "GVariant")
-  (c-name "g_variant_get_handle")
-  (return-type "gint32")
+(define-function g_cclosure_marshal_BOOLEAN__BOXED_BOXEDv
+  (c-name "g_cclosure_marshal_BOOLEAN__BOXED_BOXEDv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method get_double
-  (of-object "GVariant")
-  (c-name "g_variant_get_double")
-  (return-type "gdouble")
+(define-function g_cclosure_marshal_BOOLEAN__FLAGS
+  (c-name "g_cclosure_marshal_BOOLEAN__FLAGS")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method get_variant
-  (of-object "GVariant")
-  (c-name "g_variant_get_variant")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_BOOLEAN__FLAGSv
+  (c-name "g_cclosure_marshal_BOOLEAN__FLAGSv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method get_string
-  (of-object "GVariant")
-  (c-name "g_variant_get_string")
-  (return-type "const-gchar*")
+(define-function g_cclosure_marshal_STRING__OBJECT_POINTER
+  (c-name "g_cclosure_marshal_STRING__OBJECT_POINTER")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method dup_string
-  (of-object "GVariant")
-  (c-name "g_variant_dup_string")
-  (return-type "gchar*")
+(define-function g_cclosure_marshal_STRING__OBJECT_POINTERv
+  (c-name "g_cclosure_marshal_STRING__OBJECT_POINTERv")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method get_strv
-  (of-object "GVariant")
-  (c-name "g_variant_get_strv")
-  (return-type "const-gchar**")
+(define-function g_cclosure_marshal_VOID__BOOLEAN
+  (c-name "g_cclosure_marshal_VOID__BOOLEAN")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method dup_strv
-  (of-object "GVariant")
-  (c-name "g_variant_dup_strv")
-  (return-type "gchar**")
+(define-function g_cclosure_marshal_VOID__BOOLEANv
+  (c-name "g_cclosure_marshal_VOID__BOOLEANv")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method get_objv
-  (of-object "GVariant")
-  (c-name "g_variant_get_objv")
-  (return-type "const-gchar**")
+(define-function g_cclosure_marshal_VOID__BOXED
+  (c-name "g_cclosure_marshal_VOID__BOXED")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method dup_objv
-  (of-object "GVariant")
-  (c-name "g_variant_dup_objv")
-  (return-type "gchar**")
+(define-function g_cclosure_marshal_VOID__BOXEDv
+  (c-name "g_cclosure_marshal_VOID__BOXEDv")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method get_bytestring
-  (of-object "GVariant")
-  (c-name "g_variant_get_bytestring")
-  (return-type "const-gchar*")
+(define-function g_cclosure_marshal_VOID__CHAR
+  (c-name "g_cclosure_marshal_VOID__CHAR")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method dup_bytestring
-  (of-object "GVariant")
-  (c-name "g_variant_dup_bytestring")
-  (return-type "gchar*")
+(define-function g_cclosure_marshal_VOID__CHARv
+  (c-name "g_cclosure_marshal_VOID__CHARv")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method get_bytestring_array
-  (of-object "GVariant")
-  (c-name "g_variant_get_bytestring_array")
-  (return-type "const-gchar**")
+(define-function g_cclosure_marshal_VOID__DOUBLE
+  (c-name "g_cclosure_marshal_VOID__DOUBLE")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method dup_bytestring_array
-  (of-object "GVariant")
-  (c-name "g_variant_dup_bytestring_array")
-  (return-type "gchar**")
+(define-function g_cclosure_marshal_VOID__DOUBLEv
+  (c-name "g_cclosure_marshal_VOID__DOUBLEv")
+  (return-type "void")
   (parameters
-    '("gsize*" "length")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-function g_variant_new_maybe
-  (c-name "g_variant_new_maybe")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__ENUM
+  (c-name "g_cclosure_marshal_VOID__ENUM")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "child_type")
-    '("GVariant*" "child")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_variant_new_array
-  (c-name "g_variant_new_array")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__ENUMv
+  (c-name "g_cclosure_marshal_VOID__ENUMv")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "child_type")
-    '("GVariant*-const*" "children")
-    '("gsize" "n_children")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-function g_variant_new_tuple
-  (c-name "g_variant_new_tuple")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__FLAGS
+  (c-name "g_cclosure_marshal_VOID__FLAGS")
+  (return-type "void")
   (parameters
-    '("GVariant*-const*" "children")
-    '("gsize" "n_children")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method new_dict_entry
-  (of-object "GVariant")
-  (c-name "g_variant_new_dict_entry")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__FLAGSv
+  (c-name "g_cclosure_marshal_VOID__FLAGSv")
+  (return-type "void")
   (parameters
-    '("GVariant*" "value")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method get_maybe
-  (of-object "GVariant")
-  (c-name "g_variant_get_maybe")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__FLOAT
+  (c-name "g_cclosure_marshal_VOID__FLOAT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method n_children
-  (of-object "GVariant")
-  (c-name "g_variant_n_children")
-  (return-type "gsize")
+(define-function g_cclosure_marshal_VOID__FLOATv
+  (c-name "g_cclosure_marshal_VOID__FLOATv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method get_child
-  (of-object "GVariant")
-  (c-name "g_variant_get_child")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__INT
+  (c-name "g_cclosure_marshal_VOID__INT")
+  (return-type "void")
   (parameters
-    '("gsize" "index_")
-    '("const-gchar*" "format_string")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
-  (varargs #t)
 )
 
-(define-method get_child_value
-  (of-object "GVariant")
-  (c-name "g_variant_get_child_value")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__INTv
+  (c-name "g_cclosure_marshal_VOID__INTv")
+  (return-type "void")
   (parameters
-    '("gsize" "index_")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method lookup
-  (of-object "GVariant")
-  (c-name "g_variant_lookup")
-  (return-type "gboolean")
+(define-function g_cclosure_marshal_VOID__LONG
+  (c-name "g_cclosure_marshal_VOID__LONG")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "key")
-    '("const-gchar*" "format_string")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
-  (varargs #t)
 )
 
-(define-method lookup_value
-  (of-object "GVariant")
-  (c-name "g_variant_lookup_value")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__LONGv
+  (c-name "g_cclosure_marshal_VOID__LONGv")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "key")
-    '("const-GVariantType*" "expected_type")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method get_fixed_array
-  (of-object "GVariant")
-  (c-name "g_variant_get_fixed_array")
-  (return-type "gconstpointer")
+(define-function g_cclosure_marshal_VOID__OBJECT
+  (c-name "g_cclosure_marshal_VOID__OBJECT")
+  (return-type "void")
   (parameters
-    '("gsize*" "n_elements")
-    '("gsize" "element_size")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method get_size
-  (of-object "GVariant")
-  (c-name "g_variant_get_size")
-  (return-type "gsize")
+(define-function g_cclosure_marshal_VOID__OBJECTv
+  (c-name "g_cclosure_marshal_VOID__OBJECTv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method get_data
-  (of-object "GVariant")
-  (c-name "g_variant_get_data")
-  (return-type "gconstpointer")
+(define-function g_cclosure_marshal_VOID__PARAM
+  (c-name "g_cclosure_marshal_VOID__PARAM")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method get_data_as_bytes
-  (of-object "GVariant")
-  (c-name "g_variant_get_data_as_bytes")
-  (return-type "GBytes*")
+(define-function g_cclosure_marshal_VOID__PARAMv
+  (c-name "g_cclosure_marshal_VOID__PARAMv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method store
-  (of-object "GVariant")
-  (c-name "g_variant_store")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__POINTER
+  (c-name "g_cclosure_marshal_VOID__POINTER")
+  (return-type "void")
   (parameters
-    '("gpointer" "data")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method print
-  (of-object "GVariant")
-  (c-name "g_variant_print")
-  (return-type "gchar*")
+(define-function g_cclosure_marshal_VOID__POINTERv
+  (c-name "g_cclosure_marshal_VOID__POINTERv")
+  (return-type "void")
   (parameters
-    '("gboolean" "type_annotate")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method print_string
-  (of-object "GVariant")
-  (c-name "g_variant_print_string")
-  (return-type "GString*")
+(define-function g_cclosure_marshal_VOID__STRING
+  (c-name "g_cclosure_marshal_VOID__STRING")
+  (return-type "void")
   (parameters
-    '("GString*" "string")
-    '("gboolean" "type_annotate")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-function g_variant_hash
-  (c-name "g_variant_hash")
-  (return-type "guint")
+(define-function g_cclosure_marshal_VOID__STRINGv
+  (c-name "g_cclosure_marshal_VOID__STRINGv")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "value")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-function g_variant_equal
-  (c-name "g_variant_equal")
-  (return-type "gboolean")
+(define-function g_cclosure_marshal_VOID__UCHAR
+  (c-name "g_cclosure_marshal_VOID__UCHAR")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "one")
-    '("gconstpointer" "two")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
 )
 
-(define-method get_normal_form
-  (of-object "GVariant")
-  (c-name "g_variant_get_normal_form")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__UCHARv
+  (c-name "g_cclosure_marshal_VOID__UCHARv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method is_normal_form
-  (of-object "GVariant")
-  (c-name "g_variant_is_normal_form")
-  (return-type "gboolean")
+(define-function g_cclosure_marshal_VOID__UINT
+  (c-name "g_cclosure_marshal_VOID__UINT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method byteswap
-  (of-object "GVariant")
-  (c-name "g_variant_byteswap")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__UINT_POINTER
+  (c-name "g_cclosure_marshal_VOID__UINT_POINTER")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-function g_variant_new_from_bytes
-  (c-name "g_variant_new_from_bytes")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__UINT_POINTERv
+  (c-name "g_cclosure_marshal_VOID__UINT_POINTERv")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "type")
-    '("GBytes*" "bytes")
-    '("gboolean" "trusted")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-function g_variant_new_from_data
-  (c-name "g_variant_new_from_data")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__UINTv
+  (c-name "g_cclosure_marshal_VOID__UINTv")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "type")
-    '("gconstpointer" "data")
-    '("gsize" "size")
-    '("gboolean" "trusted")
-    '("GDestroyNotify" "notify")
-    '("gpointer" "user_data")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method iter_new
-  (of-object "GVariant")
-  (c-name "g_variant_iter_new")
-  (return-type "GVariantIter*")
+(define-function g_cclosure_marshal_VOID__ULONG
+  (c-name "g_cclosure_marshal_VOID__ULONG")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method init
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_init")
-  (return-type "gsize")
+(define-function g_cclosure_marshal_VOID__ULONGv
+  (c-name "g_cclosure_marshal_VOID__ULONGv")
+  (return-type "void")
   (parameters
-    '("GVariant*" "value")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
 )
 
-(define-method copy
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_copy")
-  (return-type "GVariantIter*")
+(define-function g_cclosure_marshal_VOID__VARIANT
+  (c-name "g_cclosure_marshal_VOID__VARIANT")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method n_children
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_n_children")
-  (return-type "gsize")
+(define-function g_cclosure_marshal_VOID__VARIANTv
+  (c-name "g_cclosure_marshal_VOID__VARIANTv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method free
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_free")
-  (return-type "none")
+(define-function g_cclosure_marshal_VOID__VOID
+  (c-name "g_cclosure_marshal_VOID__VOID")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
+  )
 )
 
-(define-method next_value
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_next_value")
-  (return-type "GVariant*")
+(define-function g_cclosure_marshal_VOID__VOIDv
+  (c-name "g_cclosure_marshal_VOID__VOIDv")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
+  )
 )
 
-(define-method next
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_next")
-  (return-type "gboolean")
+(define-function g_cclosure_marshal_generic
+  (c-name "g_cclosure_marshal_generic")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format_string")
+    '("GClosure*" "closure")
+    '("GValue*" "return_gvalue")
+    '("guint" "n_param_values")
+    '("const-GValue*" "param_values")
+    '("gpointer" "invocation_hint")
+    '("gpointer" "marshal_data")
   )
-  (varargs #t)
 )
 
-(define-method loop
-  (of-object "GVariantIter")
-  (c-name "g_variant_iter_loop")
-  (return-type "gboolean")
+(define-function g_cclosure_marshal_generic_va
+  (c-name "g_cclosure_marshal_generic_va")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format_string")
+    '("GClosure*" "closure")
+    '("GValue*" "return_value")
+    '("gpointer" "instance")
+    '("va_list" "args_list")
+    '("gpointer" "marshal_data")
+    '("int" "n_params")
+    '("GType*" "param_types")
   )
-  (varargs #t)
 )
 
-(define-function g_variant_parser_get_error_quark
-  (c-name "g_variant_parser_get_error_quark")
-  (return-type "GQuark")
+(define-function g_cclosure_new
+  (c-name "g_cclosure_new")
+  (return-type "GClosure*")
+  (parameters
+    '("GCallback" "callback_func")
+    '("gpointer" "user_data")
+    '("GClosureNotify" "destroy_data")
+  )
 )
 
-(define-function g_variant_parse_error_quark
-  (c-name "g_variant_parse_error_quark")
-  (return-type "GQuark")
+(define-function g_cclosure_new_object
+  (c-name "g_cclosure_new_object")
+  (return-type "GClosure*")
+  (parameters
+    '("GCallback" "callback_func")
+    '("GObject*" "object")
+  )
 )
 
-(define-function g_variant_builder_new
-  (c-name "g_variant_builder_new")
-  (is-constructor-of "GVariantBuilder")
-  (return-type "GVariantBuilder*")
+(define-function g_cclosure_new_object_swap
+  (c-name "g_cclosure_new_object_swap")
+  (return-type "GClosure*")
   (parameters
-    '("const-GVariantType*" "type")
+    '("GCallback" "callback_func")
+    '("GObject*" "object")
   )
 )
 
-(define-method unref
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_unref")
-  (return-type "none")
+(define-function g_cclosure_new_swap
+  (c-name "g_cclosure_new_swap")
+  (return-type "GClosure*")
+  (parameters
+    '("GCallback" "callback_func")
+    '("gpointer" "user_data")
+    '("GClosureNotify" "destroy_data")
+  )
 )
 
-(define-method ref
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_ref")
-  (return-type "GVariantBuilder*")
+(define-function g_closure_new_object
+  (c-name "g_closure_new_object")
+  (return-type "GClosure*")
+  (parameters
+    '("guint" "sizeof_closure")
+    '("GObject*" "object")
+  )
 )
 
-(define-method init
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_init")
-  (return-type "none")
+(define-function g_closure_new_simple
+  (c-name "g_closure_new_simple")
+  (return-type "GClosure*")
   (parameters
-    '("const-GVariantType*" "type")
+    '("guint" "sizeof_closure")
+    '("gpointer" "data")
   )
 )
 
-(define-method end
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_end")
-  (return-type "GVariant*")
+(define-method add_finalize_notifier
+  (of-object "GClosure")
+  (c-name "g_closure_add_finalize_notifier")
+  (return-type "void")
+  (parameters
+    '("gpointer" "notify_data")
+    '("GClosureNotify" "notify_func")
+  )
 )
 
-(define-method clear
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_clear")
-  (return-type "none")
+(define-method add_invalidate_notifier
+  (of-object "GClosure")
+  (c-name "g_closure_add_invalidate_notifier")
+  (return-type "void")
+  (parameters
+    '("gpointer" "notify_data")
+    '("GClosureNotify" "notify_func")
+  )
 )
 
-(define-method open
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_open")
-  (return-type "none")
+(define-method add_marshal_guards
+  (of-object "GClosure")
+  (c-name "g_closure_add_marshal_guards")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "type")
+    '("gpointer" "pre_marshal_data")
+    '("GClosureNotify" "pre_marshal_notify")
+    '("gpointer" "post_marshal_data")
+    '("GClosureNotify" "post_marshal_notify")
   )
 )
 
-(define-method close
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_close")
-  (return-type "none")
+(define-method invalidate
+  (of-object "GClosure")
+  (c-name "g_closure_invalidate")
+  (return-type "void")
 )
 
-(define-method add_value
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_add_value")
-  (return-type "none")
+(define-method invoke
+  (of-object "GClosure")
+  (c-name "g_closure_invoke")
+  (return-type "void")
   (parameters
-    '("GVariant*" "value")
+    '("GValue*" "return_value")
+    '("guint" "n_param_values")
+    '("GValue*" "param_values")
+    '("gpointer" "invocation_hint")
   )
 )
 
-(define-method add
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_add")
-  (return-type "none")
+(define-method ref
+  (of-object "GClosure")
+  (c-name "g_closure_ref")
+  (return-type "GClosure*")
+)
+
+(define-method remove_finalize_notifier
+  (of-object "GClosure")
+  (c-name "g_closure_remove_finalize_notifier")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format_string")
+    '("gpointer" "notify_data")
+    '("GClosureNotify" "notify_func")
   )
-  (varargs #t)
 )
 
-(define-method add_parsed
-  (of-object "GVariantBuilder")
-  (c-name "g_variant_builder_add_parsed")
-  (return-type "none")
+(define-method remove_invalidate_notifier
+  (of-object "GClosure")
+  (c-name "g_closure_remove_invalidate_notifier")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format")
+    '("gpointer" "notify_data")
+    '("GClosureNotify" "notify_func")
   )
-  (varargs #t)
 )
 
-(define-function g_variant_new
-  (c-name "g_variant_new")
-  (is-constructor-of "GVariant")
-  (return-type "GVariant*")
+(define-method set_marshal
+  (of-object "GClosure")
+  (c-name "g_closure_set_marshal")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format_string")
+    '("GClosureMarshal" "marshal")
   )
-  (varargs #t)
 )
 
-(define-method get
-  (of-object "GVariant")
-  (c-name "g_variant_get")
-  (return-type "none")
+(define-method set_meta_marshal
+  (of-object "GClosure")
+  (c-name "g_closure_set_meta_marshal")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format_string")
+    '("gpointer" "marshal_data")
+    '("GClosureMarshal" "meta_marshal")
   )
-  (varargs #t)
 )
 
-(define-function g_variant_new_va
-  (c-name "g_variant_new_va")
-  (return-type "GVariant*")
+(define-method sink
+  (of-object "GClosure")
+  (c-name "g_closure_sink")
+  (return-type "void")
+)
+
+(define-method unref
+  (of-object "GClosure")
+  (c-name "g_closure_unref")
+  (return-type "void")
+)
+
+(define-function g_object_new
+  (c-name "g_object_new")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "format_string")
-    '("const-gchar**" "endptr")
-    '("va_list*" "app")
+    '("GType" "object_type")
+    '("const-gchar*" "first_property_name")
+    '("..." "...")
   )
 )
 
-(define-method get_va
-  (of-object "GVariant")
-  (c-name "g_variant_get_va")
-  (return-type "none")
+(define-function g_object_new_valist
+  (c-name "g_object_new_valist")
+  (return-type "GObject*")
   (parameters
-    '("const-gchar*" "format_string")
-    '("const-gchar**" "endptr")
-    '("va_list*" "app")
+    '("GType" "object_type")
+    '("const-gchar*" "first_property_name")
+    '("va_list" "var_args")
   )
 )
 
-(define-method check_format_string
-  (of-object "GVariant")
-  (c-name "g_variant_check_format_string")
-  (return-type "gboolean")
+(define-function g_object_newv
+  (c-name "g_object_newv")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "format_string")
-    '("gboolean" "copy_only")
+    '("GType" "object_type")
+    '("guint" "n_parameters")
+    '("GParameter*" "parameters")
   )
 )
 
-(define-function g_variant_parse
-  (c-name "g_variant_parse")
-  (return-type "GVariant*")
+(define-function g_object_compat_control
+  (c-name "g_object_compat_control")
+  (return-type "gsize")
   (parameters
-    '("const-GVariantType*" "type")
-    '("const-gchar*" "text")
-    '("const-gchar*" "limit")
-    '("const-gchar**" "endptr")
-    '("GError**" "error")
+    '("gsize" "what")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_variant_new_parsed
-  (c-name "g_variant_new_parsed")
-  (return-type "GVariant*")
+(define-function g_object_interface_find_property
+  (c-name "g_object_interface_find_property")
+  (return-type "GParamSpec*")
   (parameters
-    '("const-gchar*" "format")
+    '("gpointer" "g_iface")
+    '("const-gchar*" "property_name")
   )
-  (varargs #t)
 )
 
-(define-function g_variant_new_parsed_va
-  (c-name "g_variant_new_parsed_va")
-  (return-type "GVariant*")
+(define-function g_object_interface_install_property
+  (c-name "g_object_interface_install_property")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "format")
-    '("va_list*" "app")
+    '("gpointer" "g_iface")
+    '("GParamSpec*" "pspec")
   )
 )
 
-(define-function g_variant_parse_error_print_context
-  (c-name "g_variant_parse_error_print_context")
-  (return-type "gchar*")
+(define-function g_object_interface_list_properties
+  (c-name "g_object_interface_list_properties")
+  (return-type "GParamSpec**")
   (parameters
-    '("GError*" "error")
-    '("const-gchar*" "source_str")
+    '("gpointer" "g_iface")
+    '("guint*" "n_properties_p")
   )
 )
 
-(define-function g_variant_compare
-  (c-name "g_variant_compare")
-  (return-type "gint")
+(define-method add_toggle_ref
+  (of-object "GObject")
+  (c-name "g_object_add_toggle_ref")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "one")
-    '("gconstpointer" "two")
+    '("GToggleNotify" "notify")
+    '("gpointer" "data")
   )
 )
 
-(define-method dict_new
-  (of-object "GVariant")
-  (c-name "g_variant_dict_new")
-  (return-type "GVariantDict*")
+(define-method add_weak_pointer
+  (of-object "GObject")
+  (c-name "g_object_add_weak_pointer")
+  (return-type "void")
+  (parameters
+    '("gpointer*" "weak_pointer_location")
+  )
 )
 
-(define-method init
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_init")
-  (return-type "none")
+(define-function g_object_bind_property
+  (c-name "g_object_bind_property")
+  (return-type "GBinding*")
   (parameters
-    '("GVariant*" "from_asv")
+    '("gpointer" "source")
+    '("const-gchar*" "source_property")
+    '("gpointer" "target")
+    '("const-gchar*" "target_property")
+    '("GBindingFlags" "flags")
   )
 )
 
-(define-method lookup
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_lookup")
-  (return-type "gboolean")
+(define-function g_object_bind_property_full
+  (c-name "g_object_bind_property_full")
+  (return-type "GBinding*")
   (parameters
-    '("const-gchar*" "key")
-    '("const-gchar*" "format_string")
+    '("gpointer" "source")
+    '("const-gchar*" "source_property")
+    '("gpointer" "target")
+    '("const-gchar*" "target_property")
+    '("GBindingFlags" "flags")
+    '("GBindingTransformFunc" "transform_to")
+    '("GBindingTransformFunc" "transform_from")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
-  (varargs #t)
 )
 
-(define-method lookup_value
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_lookup_value")
-  (return-type "GVariant*")
+(define-function g_object_bind_property_with_closures
+  (c-name "g_object_bind_property_with_closures")
+  (return-type "GBinding*")
   (parameters
-    '("const-gchar*" "key")
-    '("const-GVariantType*" "expected_type")
+    '("gpointer" "source")
+    '("const-gchar*" "source_property")
+    '("gpointer" "target")
+    '("const-gchar*" "target_property")
+    '("GBindingFlags" "flags")
+    '("GClosure*" "transform_to")
+    '("GClosure*" "transform_from")
   )
 )
 
-(define-method contains
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_contains")
-  (return-type "gboolean")
+(define-function g_object_connect
+  (c-name "g_object_connect")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "key")
+    '("gpointer" "object")
+    '("const-gchar*" "signal_spec")
+    '("..." "...")
   )
 )
 
-(define-method insert
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_insert")
-  (return-type "none")
+(define-function g_object_disconnect
+  (c-name "g_object_disconnect")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "key")
-    '("const-gchar*" "format_string")
+    '("gpointer" "object")
+    '("const-gchar*" "signal_spec")
+    '("..." "...")
   )
-  (varargs #t)
 )
 
-(define-method insert_value
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_insert_value")
-  (return-type "none")
+(define-method dup_data
+  (of-object "GObject")
+  (c-name "g_object_dup_data")
+  (return-type "gpointer")
   (parameters
     '("const-gchar*" "key")
-    '("GVariant*" "value")
+    '("GDuplicateFunc" "dup_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method remove
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_remove")
-  (return-type "gboolean")
+(define-method dup_qdata
+  (of-object "GObject")
+  (c-name "g_object_dup_qdata")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "key")
+    '("GQuark" "quark")
+    '("GDuplicateFunc" "dup_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-method clear
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_clear")
-  (return-type "none")
+(define-method force_floating
+  (of-object "GObject")
+  (c-name "g_object_force_floating")
+  (return-type "void")
 )
 
-(define-method end
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_end")
-  (return-type "GVariant*")
+(define-method freeze_notify
+  (of-object "GObject")
+  (c-name "g_object_freeze_notify")
+  (return-type "void")
 )
 
-(define-method ref
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_ref")
-  (return-type "GVariantDict*")
+(define-function g_object_get
+  (c-name "g_object_get")
+  (return-type "void")
+  (parameters
+    '("gpointer" "object")
+    '("const-gchar*" "first_property_name")
+    '("..." "...")
+  )
 )
 
-(define-method unref
-  (of-object "GVariantDict")
-  (c-name "g_variant_dict_unref")
-  (return-type "none")
+(define-method get_data
+  (of-object "GObject")
+  (c-name "g_object_get_data")
+  (return-type "gpointer")
+  (parameters
+    '("const-gchar*" "key")
+  )
 )
 
-
-
-;; From gvariant-internal.h
-
-(define-function g_variant_format_string_scan
-  (c-name "g_variant_format_string_scan")
-  (return-type "gboolean")
+(define-method get_property
+  (of-object "GObject")
+  (c-name "g_object_get_property")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
-    '("const-gchar*" "limit")
-    '("const-gchar**" "endptr")
+    '("const-gchar*" "property_name")
+    '("GValue*" "value")
   )
 )
 
-(define-function g_variant_format_string_scan_type
-  (c-name "g_variant_format_string_scan_type")
-  (return-type "GVariantType*")
+(define-method get_qdata
+  (of-object "GObject")
+  (c-name "g_object_get_qdata")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "string")
-    '("const-gchar*" "limit")
-    '("const-gchar**" "endptr")
+    '("GQuark" "quark")
   )
 )
 
+(define-method get_valist
+  (of-object "GObject")
+  (c-name "g_object_get_valist")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "first_property_name")
+    '("va_list" "var_args")
+  )
+)
 
-
-;; From gvariant-serialiser.h
-
-(define-method n_children
-  (of-object "GVariantSerialised")
-  (c-name "g_variant_serialised_n_children")
-  (return-type "gsize")
+(define-function g_object_is_floating
+  (c-name "g_object_is_floating")
+  (return-type "gboolean")
+  (parameters
+    '("gpointer" "object")
+  )
 )
 
-(define-method get_child
-  (of-object "GVariantSerialised")
-  (c-name "g_variant_serialised_get_child")
-  (return-type "GVariantSerialised")
+(define-method notify
+  (of-object "GObject")
+  (c-name "g_object_notify")
+  (return-type "void")
   (parameters
-    '("gsize" "index")
+    '("const-gchar*" "property_name")
   )
 )
 
-(define-function g_variant_serialiser_needed_size
-  (c-name "g_variant_serialiser_needed_size")
-  (return-type "gsize")
+(define-method notify_by_pspec
+  (of-object "GObject")
+  (c-name "g_object_notify_by_pspec")
+  (return-type "void")
   (parameters
-    '("GVariantTypeInfo*" "info")
-    '("GVariantSerialisedFiller" "gsv_filler")
-    '("const-gpointer*" "children")
-    '("gsize" "n_children")
+    '("GParamSpec*" "pspec")
   )
 )
 
-(define-function g_variant_serialiser_serialise
-  (c-name "g_variant_serialiser_serialise")
-  (return-type "none")
+(define-function g_object_ref
+  (c-name "g_object_ref")
+  (return-type "gpointer")
   (parameters
-    '("GVariantSerialised" "container")
-    '("GVariantSerialisedFiller" "gsv_filler")
-    '("const-gpointer*" "children")
-    '("gsize" "n_children")
+    '("gpointer" "object")
   )
 )
 
-(define-method is_normal
-  (of-object "GVariantSerialised")
-  (c-name "g_variant_serialised_is_normal")
-  (return-type "gboolean")
+(define-function g_object_ref_sink
+  (c-name "g_object_ref_sink")
+  (return-type "gpointer")
+  (parameters
+    '("gpointer" "object")
+  )
 )
 
-(define-method byteswap
-  (of-object "GVariantSerialised")
-  (c-name "g_variant_serialised_byteswap")
-  (return-type "none")
+(define-method remove_toggle_ref
+  (of-object "GObject")
+  (c-name "g_object_remove_toggle_ref")
+  (return-type "void")
+  (parameters
+    '("GToggleNotify" "notify")
+    '("gpointer" "data")
+  )
 )
 
-(define-function g_variant_serialiser_is_string
-  (c-name "g_variant_serialiser_is_string")
-  (return-type "gboolean")
+(define-method remove_weak_pointer
+  (of-object "GObject")
+  (c-name "g_object_remove_weak_pointer")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "data")
-    '("gsize" "size")
+    '("gpointer*" "weak_pointer_location")
   )
 )
 
-(define-function g_variant_serialiser_is_object_path
-  (c-name "g_variant_serialiser_is_object_path")
+(define-method replace_data
+  (of-object "GObject")
+  (c-name "g_object_replace_data")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "data")
-    '("gsize" "size")
+    '("const-gchar*" "key")
+    '("gpointer" "oldval")
+    '("gpointer" "newval")
+    '("GDestroyNotify" "destroy")
+    '("GDestroyNotify*" "old_destroy")
   )
 )
 
-(define-function g_variant_serialiser_is_signature
-  (c-name "g_variant_serialiser_is_signature")
+(define-method replace_qdata
+  (of-object "GObject")
+  (c-name "g_object_replace_qdata")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "data")
-    '("gsize" "size")
+    '("GQuark" "quark")
+    '("gpointer" "oldval")
+    '("gpointer" "newval")
+    '("GDestroyNotify" "destroy")
+    '("GDestroyNotify*" "old_destroy")
   )
 )
 
+(define-method run_dispose
+  (of-object "GObject")
+  (c-name "g_object_run_dispose")
+  (return-type "void")
+)
 
+(define-function g_object_set
+  (c-name "g_object_set")
+  (return-type "void")
+  (parameters
+    '("gpointer" "object")
+    '("const-gchar*" "first_property_name")
+    '("..." "...")
+  )
+)
 
-;; From gvarianttype.h
-
-(define-function g_variant_type_string_is_valid
-  (c-name "g_variant_type_string_is_valid")
-  (return-type "gboolean")
+(define-method set_data
+  (of-object "GObject")
+  (c-name "g_object_set_data")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "type_string")
+    '("const-gchar*" "key")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_variant_type_string_scan
-  (c-name "g_variant_type_string_scan")
-  (return-type "gboolean")
+(define-method set_data_full
+  (of-object "GObject")
+  (c-name "g_object_set_data_full")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "string")
-    '("const-gchar*" "limit")
-    '("const-gchar**" "endptr")
+    '("const-gchar*" "key")
+    '("gpointer" "data")
+    '("GDestroyNotify" "destroy")
   )
 )
 
-(define-method free
-  (of-object "GVariantType")
-  (c-name "g_variant_type_free")
-  (return-type "none")
+(define-method set_property
+  (of-object "GObject")
+  (c-name "g_object_set_property")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "property_name")
+    '("const-GValue*" "value")
+  )
 )
 
-(define-method copy
-  (of-object "GVariantType")
-  (c-name "g_variant_type_copy")
-  (return-type "GVariantType*")
+(define-method set_qdata
+  (of-object "GObject")
+  (c-name "g_object_set_qdata")
+  (return-type "void")
+  (parameters
+    '("GQuark" "quark")
+    '("gpointer" "data")
+  )
 )
 
-(define-function g_variant_type_new
-  (c-name "g_variant_type_new")
-  (is-constructor-of "GVariantType")
-  (return-type "GVariantType*")
+(define-method set_qdata_full
+  (of-object "GObject")
+  (c-name "g_object_set_qdata_full")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "type_string")
+    '("GQuark" "quark")
+    '("gpointer" "data")
+    '("GDestroyNotify" "destroy")
   )
 )
 
-(define-method get_string_length
-  (of-object "GVariantType")
-  (c-name "g_variant_type_get_string_length")
-  (return-type "gsize")
+(define-method set_valist
+  (of-object "GObject")
+  (c-name "g_object_set_valist")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "first_property_name")
+    '("va_list" "var_args")
+  )
 )
 
-(define-method peek_string
-  (of-object "GVariantType")
-  (c-name "g_variant_type_peek_string")
-  (return-type "const-gchar*")
+(define-method steal_data
+  (of-object "GObject")
+  (c-name "g_object_steal_data")
+  (return-type "gpointer")
+  (parameters
+    '("const-gchar*" "key")
+  )
 )
 
-(define-method dup_string
-  (of-object "GVariantType")
-  (c-name "g_variant_type_dup_string")
-  (return-type "gchar*")
+(define-method steal_qdata
+  (of-object "GObject")
+  (c-name "g_object_steal_qdata")
+  (return-type "gpointer")
+  (parameters
+    '("GQuark" "quark")
+  )
 )
 
-(define-method is_definite
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_definite")
-  (return-type "gboolean")
+(define-method thaw_notify
+  (of-object "GObject")
+  (c-name "g_object_thaw_notify")
+  (return-type "void")
 )
 
-(define-method is_container
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_container")
-  (return-type "gboolean")
+(define-function g_object_unref
+  (c-name "g_object_unref")
+  (return-type "void")
+  (parameters
+    '("gpointer" "object")
+  )
 )
 
-(define-method is_basic
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_basic")
-  (return-type "gboolean")
+(define-method watch_closure
+  (of-object "GObject")
+  (c-name "g_object_watch_closure")
+  (return-type "void")
+  (parameters
+    '("GClosure*" "closure")
+  )
 )
 
-(define-method is_maybe
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_maybe")
-  (return-type "gboolean")
+(define-method weak_ref
+  (of-object "GObject")
+  (c-name "g_object_weak_ref")
+  (return-type "void")
+  (parameters
+    '("GWeakNotify" "notify")
+    '("gpointer" "data")
+  )
 )
 
-(define-method is_array
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_array")
-  (return-type "gboolean")
+(define-method weak_unref
+  (of-object "GObject")
+  (c-name "g_object_weak_unref")
+  (return-type "void")
+  (parameters
+    '("GWeakNotify" "notify")
+    '("gpointer" "data")
+  )
 )
 
-(define-method is_tuple
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_tuple")
-  (return-type "gboolean")
+(define-method find_property
+  (of-object "GObjectClass")
+  (c-name "g_object_class_find_property")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "property_name")
+  )
 )
 
-(define-method is_dict_entry
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_dict_entry")
-  (return-type "gboolean")
+(define-method install_properties
+  (of-object "GObjectClass")
+  (c-name "g_object_class_install_properties")
+  (return-type "void")
+  (parameters
+    '("guint" "n_pspecs")
+    '("GParamSpec**" "pspecs")
+  )
 )
 
-(define-method is_variant
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_variant")
-  (return-type "gboolean")
+(define-method install_property
+  (of-object "GObjectClass")
+  (c-name "g_object_class_install_property")
+  (return-type "void")
+  (parameters
+    '("guint" "property_id")
+    '("GParamSpec*" "pspec")
+  )
 )
 
-(define-function g_variant_type_hash
-  (c-name "g_variant_type_hash")
-  (return-type "guint")
+(define-method list_properties
+  (of-object "GObjectClass")
+  (c-name "g_object_class_list_properties")
+  (return-type "GParamSpec**")
   (parameters
-    '("gconstpointer" "type")
+    '("guint*" "n_properties")
   )
 )
 
-(define-function g_variant_type_equal
-  (c-name "g_variant_type_equal")
-  (return-type "gboolean")
+(define-method override_property
+  (of-object "GObjectClass")
+  (c-name "g_object_class_override_property")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "type1")
-    '("gconstpointer" "type2")
+    '("guint" "property_id")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method is_subtype_of
-  (of-object "GVariantType")
-  (c-name "g_variant_type_is_subtype_of")
-  (return-type "gboolean")
+(define-function g_param_spec_internal
+  (c-name "g_param_spec_internal")
+  (return-type "gpointer")
   (parameters
-    '("const-GVariantType*" "supertype")
+    '("GType" "param_type")
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("GParamFlags" "flags")
   )
 )
 
-(define-method element
-  (of-object "GVariantType")
-  (c-name "g_variant_type_element")
-  (return-type "const-GVariantType*")
+(define-method get_blurb
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_blurb")
+  (return-type "const-gchar*")
 )
 
-(define-method first
-  (of-object "GVariantType")
-  (c-name "g_variant_type_first")
-  (return-type "const-GVariantType*")
+(define-method get_default_value
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_default_value")
+  (return-type "const-GValue*")
 )
 
-(define-method next
-  (of-object "GVariantType")
-  (c-name "g_variant_type_next")
-  (return-type "const-GVariantType*")
+(define-method get_name
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_name")
+  (return-type "const-gchar*")
 )
 
-(define-method n_items
-  (of-object "GVariantType")
-  (c-name "g_variant_type_n_items")
-  (return-type "gsize")
+(define-method get_name_quark
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_name_quark")
+  (return-type "GQuark")
 )
 
-(define-method key
-  (of-object "GVariantType")
-  (c-name "g_variant_type_key")
-  (return-type "const-GVariantType*")
+(define-method get_nick
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_nick")
+  (return-type "const-gchar*")
 )
 
-(define-method value
-  (of-object "GVariantType")
-  (c-name "g_variant_type_value")
-  (return-type "const-GVariantType*")
+(define-method get_qdata
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_qdata")
+  (return-type "gpointer")
+  (parameters
+    '("GQuark" "quark")
+  )
 )
 
-(define-method new_array
-  (of-object "GVariantType")
-  (c-name "g_variant_type_new_array")
-  (return-type "GVariantType*")
+(define-method get_redirect_target
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_get_redirect_target")
+  (return-type "GParamSpec*")
 )
 
-(define-method new_maybe
-  (of-object "GVariantType")
-  (c-name "g_variant_type_new_maybe")
-  (return-type "GVariantType*")
+(define-method ref
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_ref")
+  (return-type "GParamSpec*")
 )
 
-(define-function g_variant_type_new_tuple
-  (c-name "g_variant_type_new_tuple")
-  (return-type "GVariantType*")
-  (parameters
-    '("const-GVariantType*-const*" "items")
-    '("gint" "length")
-  )
+(define-method ref_sink
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_ref_sink")
+  (return-type "GParamSpec*")
 )
 
-(define-method new_dict_entry
-  (of-object "GVariantType")
-  (c-name "g_variant_type_new_dict_entry")
-  (return-type "GVariantType*")
+(define-method set_qdata
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_set_qdata")
+  (return-type "void")
   (parameters
-    '("const-GVariantType*" "value")
+    '("GQuark" "quark")
+    '("gpointer" "data")
   )
 )
 
-(define-function g_variant_type_checked_
-  (c-name "g_variant_type_checked_")
-  (return-type "const-GVariantType*")
+(define-method set_qdata_full
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_set_qdata_full")
+  (return-type "void")
   (parameters
-    '("const-gchar" "*")
+    '("GQuark" "quark")
+    '("gpointer" "data")
+    '("GDestroyNotify" "destroy")
   )
 )
 
-
-
-;; From gvarianttypeinfo.h
-
-(define-method get_type_string
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_get_type_string")
-  (return-type "const-gchar*")
+(define-method sink
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_sink")
+  (return-type "void")
 )
 
-(define-method query
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_query")
-  (return-type "none")
+(define-method steal_qdata
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_steal_qdata")
+  (return-type "gpointer")
   (parameters
-    '("guint*" "alignment")
-    '("gsize*" "size")
+    '("GQuark" "quark")
   )
 )
 
-(define-method element
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_element")
-  (return-type "GVariantTypeInfo*")
+(define-method unref
+  (of-object "GParamSpec")
+  (c-name "g_param_spec_unref")
+  (return-type "void")
 )
 
-(define-method query_element
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_query_element")
-  (return-type "none")
+(define-method insert
+  (of-object "GParamSpecPool")
+  (c-name "g_param_spec_pool_insert")
+  (return-type "void")
   (parameters
-    '("guint*" "alignment")
-    '("gsize*" "size")
+    '("GParamSpec*" "pspec")
+    '("GType" "owner_type")
   )
 )
 
-(define-method n_members
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_n_members")
-  (return-type "gsize")
+(define-method list
+  (of-object "GParamSpecPool")
+  (c-name "g_param_spec_pool_list")
+  (return-type "GParamSpec**")
+  (parameters
+    '("GType" "owner_type")
+    '("guint*" "n_pspecs_p")
+  )
 )
 
-(define-method member_info
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_member_info")
-  (return-type "const-GVariantMemberInfo*")
+(define-method list_owned
+  (of-object "GParamSpecPool")
+  (c-name "g_param_spec_pool_list_owned")
+  (return-type "GList*")
   (parameters
-    '("gsize" "index")
+    '("GType" "owner_type")
   )
 )
 
-(define-method info_get
-  (of-object "GVariantType")
-  (c-name "g_variant_type_info_get")
-  (return-type "GVariantTypeInfo*")
+(define-method lookup
+  (of-object "GParamSpecPool")
+  (c-name "g_param_spec_pool_lookup")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "param_name")
+    '("GType" "owner_type")
+    '("gboolean" "walk_ancestors")
+  )
 )
 
-(define-method ref
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_ref")
-  (return-type "GVariantTypeInfo*")
+(define-method remove
+  (of-object "GParamSpecPool")
+  (c-name "g_param_spec_pool_remove")
+  (return-type "void")
+  (parameters
+    '("GParamSpec*" "pspec")
+  )
 )
 
-(define-method unref
-  (of-object "GVariantTypeInfo")
-  (c-name "g_variant_type_info_unref")
-  (return-type "none")
+(define-function g_param_spec_pool_new
+  (c-name "g_param_spec_pool_new")
+  (return-type "GParamSpecPool*")
+  (parameters
+    '("gboolean" "type_prefixing")
+  )
 )
 
-(define-function g_variant_type_info_assert_no_infos
-  (c-name "g_variant_type_info_assert_no_infos")
-  (return-type "none")
+(define-function g_type_class_add_private
+  (c-name "g_type_class_add_private")
+  (return-type "void")
+  (parameters
+    '("gpointer" "g_class")
+    '("gsize" "private_size")
+  )
 )
 
-
-
-;; From gversion.h
-
-(define-function glib_check_version
-  (c-name "glib_check_version")
-  (return-type "const-gchar*")
+(define-function g_type_class_get_instance_private_offset
+  (c-name "g_type_class_get_instance_private_offset")
+  (return-type "gint")
   (parameters
-    '("guint" "required_major")
-    '("guint" "required_minor")
-    '("guint" "required_micro")
+    '("gpointer" "g_class")
   )
 )
 
-
-
-;; From gversionmacros.h
-
-
-
-;; From gwakeup.h
-
-(define-function g_wakeup_new
-  (c-name "g_wakeup_new")
-  (is-constructor-of "GWakeup")
-  (return-type "GWakeup*")
+(define-method get_private
+  (of-object "GTypeClass")
+  (c-name "g_type_class_get_private")
+  (return-type "gpointer")
+  (parameters
+    '("GType" "private_type")
+  )
 )
 
-(define-method free
-  (of-object "GWakeup")
-  (c-name "g_wakeup_free")
-  (return-type "none")
+(define-function g_type_class_peek_parent
+  (c-name "g_type_class_peek_parent")
+  (return-type "gpointer")
+  (parameters
+    '("gpointer" "g_class")
+  )
 )
 
-(define-method get_pollfd
-  (of-object "GWakeup")
-  (c-name "g_wakeup_get_pollfd")
-  (return-type "none")
+(define-function g_type_class_unref
+  (c-name "g_type_class_unref")
+  (return-type "void")
   (parameters
-    '("GPollFD*" "poll_fd")
+    '("gpointer" "g_class")
   )
 )
 
-(define-method signal
-  (of-object "GWakeup")
-  (c-name "g_wakeup_signal")
-  (return-type "none")
+(define-function g_type_class_unref_uncached
+  (c-name "g_type_class_unref_uncached")
+  (return-type "void")
+  (parameters
+    '("gpointer" "g_class")
+  )
 )
 
-(define-method acknowledge
-  (of-object "GWakeup")
-  (c-name "g_wakeup_acknowledge")
-  (return-type "none")
+(define-function g_type_class_adjust_private_offset
+  (c-name "g_type_class_adjust_private_offset")
+  (return-type "void")
+  (parameters
+    '("gpointer" "g_class")
+    '("gint*" "private_size_or_offset")
+  )
 )
 
-
-
-;; From gwin32.h
-
-(define-function g_win32_ftruncate
-  (c-name "g_win32_ftruncate")
-  (return-type "gint")
+(define-function g_type_class_peek
+  (c-name "g_type_class_peek")
+  (return-type "gpointer")
   (parameters
-    '("gint" "f")
-    '("guint" "size")
+    '("GType" "type")
   )
 )
 
-(define-function g_win32_getlocale
-  (c-name "g_win32_getlocale")
-  (return-type "gchar*")
+(define-function g_type_class_peek_static
+  (c-name "g_type_class_peek_static")
+  (return-type "gpointer")
+  (parameters
+    '("GType" "type")
+  )
 )
 
-(define-function g_win32_error_message
-  (c-name "g_win32_error_message")
-  (return-type "gchar*")
+(define-function g_type_class_ref
+  (c-name "g_type_class_ref")
+  (return-type "gpointer")
   (parameters
-    '("gint" "error")
+    '("GType" "type")
   )
 )
 
-(define-function g_win32_get_package_installation_directory
-  (c-name "g_win32_get_package_installation_directory")
-  (return-type "gchar*")
+(define-method get_private
+  (of-object "GTypeInstance")
+  (c-name "g_type_instance_get_private")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "package")
-    '("const-gchar*" "dll_name")
+    '("GType" "private_type")
   )
 )
 
-(define-function g_win32_get_package_installation_subdirectory
-  (c-name "g_win32_get_package_installation_subdirectory")
-  (return-type "gchar*")
+(define-function g_type_interface_peek_parent
+  (c-name "g_type_interface_peek_parent")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "package")
-    '("const-gchar*" "dll_name")
-    '("const-gchar*" "subdir")
+    '("gpointer" "g_iface")
   )
 )
 
-(define-function g_win32_get_package_installation_directory_of_module
-  (c-name "g_win32_get_package_installation_directory_of_module")
-  (return-type "gchar*")
+(define-function g_type_interface_add_prerequisite
+  (c-name "g_type_interface_add_prerequisite")
+  (return-type "void")
   (parameters
-    '("gpointer" "hmodule")
+    '("GType" "interface_type")
+    '("GType" "prerequisite_type")
   )
 )
 
-(define-function g_win32_get_windows_version
-  (c-name "g_win32_get_windows_version")
-  (return-type "guint")
+(define-function g_type_interface_get_plugin
+  (c-name "g_type_interface_get_plugin")
+  (return-type "GTypePlugin*")
+  (parameters
+    '("GType" "instance_type")
+    '("GType" "interface_type")
+  )
 )
 
-(define-function g_win32_locale_filename_from_utf8
-  (c-name "g_win32_locale_filename_from_utf8")
-  (return-type "gchar*")
+(define-function g_type_interface_peek
+  (c-name "g_type_interface_peek")
+  (return-type "gpointer")
   (parameters
-    '("const-gchar*" "utf8filename")
+    '("gpointer" "instance_class")
+    '("GType" "iface_type")
   )
 )
 
-(define-function g_win32_get_command_line
-  (c-name "g_win32_get_command_line")
-  (return-type "gchar**")
+(define-function g_type_interface_prerequisites
+  (c-name "g_type_interface_prerequisites")
+  (return-type "GType*")
+  (parameters
+    '("GType" "interface_type")
+    '("guint*" "n_prerequisites")
+  )
 )
 
-(define-function g_win32_get_package_installation_directory_utf8
-  (c-name "g_win32_get_package_installation_directory_utf8")
-  (return-type "gchar*")
+(define-method add_interface
+  (of-object "GTypeModule")
+  (c-name "g_type_module_add_interface")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "package")
-    '("const-gchar*" "dll_name")
+    '("GType" "instance_type")
+    '("GType" "interface_type")
+    '("const-GInterfaceInfo*" "interface_info")
   )
 )
 
-(define-function g_win32_get_package_installation_subdirectory_utf8
-  (c-name "g_win32_get_package_installation_subdirectory_utf8")
-  (return-type "gchar*")
+(define-method register_enum
+  (of-object "GTypeModule")
+  (c-name "g_type_module_register_enum")
+  (return-type "GType")
   (parameters
-    '("const-gchar*" "package")
-    '("const-gchar*" "dll_name")
-    '("const-gchar*" "subdir")
+    '("const-gchar*" "name")
+    '("const-GEnumValue*" "const_static_values")
   )
 )
 
-(define-function g_win32_check_windows_version
-  (c-name "g_win32_check_windows_version")
-  (return-type "gboolean")
+(define-method register_flags
+  (of-object "GTypeModule")
+  (c-name "g_type_module_register_flags")
+  (return-type "GType")
   (parameters
-    '("const-gint" "major")
-    '("const-gint" "minor")
-    '("const-gint" "spver")
-    '("const-GWin32OSType" "os_type")
+    '("const-gchar*" "name")
+    '("const-GFlagsValue*" "const_static_values")
   )
 )
 
-
-
-;; From valgrind.h
-
-(define-function VALGRIND_PRINTF
-  (c-name "VALGRIND_PRINTF")
-  (return-type "int")
+(define-method register_type
+  (of-object "GTypeModule")
+  (c-name "g_type_module_register_type")
+  (return-type "GType")
   (parameters
-    '("const-char*" "format")
+    '("GType" "parent_type")
+    '("const-gchar*" "type_name")
+    '("const-GTypeInfo*" "type_info")
+    '("GTypeFlags" "flags")
   )
-  (varargs #t)
 )
 
-(define-function VALGRIND_PRINTF_BACKTRACE
-  (c-name "VALGRIND_PRINTF_BACKTRACE")
-  (return-type "int")
+(define-method set_name
+  (of-object "GTypeModule")
+  (c-name "g_type_module_set_name")
+  (return-type "void")
   (parameters
-    '("const-char*" "format")
+    '("const-gchar*" "name")
   )
-  (varargs #t)
 )
 
+(define-method unuse
+  (of-object "GTypeModule")
+  (c-name "g_type_module_unuse")
+  (return-type "void")
+)
 
+(define-method use
+  (of-object "GTypeModule")
+  (c-name "g_type_module_use")
+  (return-type "gboolean")
+)
 
-;; From gallocator.h
-
-(define-function g_mem_chunk_new
-  (c-name "g_mem_chunk_new")
-  (is-constructor-of "GMemChunk")
-  (return-type "GMemChunk*")
+(define-function g_type_value_table_peek
+  (c-name "g_type_value_table_peek")
+  (return-type "GTypeValueTable*")
   (parameters
-    '("const-gchar*" "name")
-    '("gint" "atom_size")
-    '("gsize" "area_size")
-    '("gint" "type")
+    '("GType" "type")
   )
 )
 
-(define-method destroy
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_destroy")
-  (return-type "none")
+(define-method copy
+  (of-object "GValue")
+  (c-name "g_value_copy")
+  (return-type "void")
+  (parameters
+    '("GValue*" "dest_value")
+  )
 )
 
-(define-method alloc
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_alloc")
+(define-method dup_boxed
+  (of-object "GValue")
+  (c-name "g_value_dup_boxed")
   (return-type "gpointer")
 )
 
-(define-method alloc0
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_alloc0")
+(define-method dup_object
+  (of-object "GValue")
+  (c-name "g_value_dup_object")
   (return-type "gpointer")
 )
 
-(define-method free
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_free")
-  (return-type "none")
-  (parameters
-    '("gpointer" "mem")
-  )
+(define-method dup_param
+  (of-object "GValue")
+  (c-name "g_value_dup_param")
+  (return-type "GParamSpec*")
 )
 
-(define-method clean
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_clean")
-  (return-type "none")
+(define-method dup_string
+  (of-object "GValue")
+  (c-name "g_value_dup_string")
+  (return-type "gchar*")
 )
 
-(define-method reset
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_reset")
-  (return-type "none")
+(define-method dup_variant
+  (of-object "GValue")
+  (c-name "g_value_dup_variant")
+  (return-type "GVariant*")
 )
 
-(define-method print
-  (of-object "GMemChunk")
-  (c-name "g_mem_chunk_print")
-  (return-type "none")
+(define-method fits_pointer
+  (of-object "GValue")
+  (c-name "g_value_fits_pointer")
+  (return-type "gboolean")
 )
 
-(define-function g_mem_chunk_info
-  (c-name "g_mem_chunk_info")
-  (return-type "none")
+(define-method get_boolean
+  (of-object "GValue")
+  (c-name "g_value_get_boolean")
+  (return-type "gboolean")
 )
 
-(define-function g_blow_chunks
-  (c-name "g_blow_chunks")
-  (return-type "none")
+(define-method get_boxed
+  (of-object "GValue")
+  (c-name "g_value_get_boxed")
+  (return-type "gpointer")
 )
 
-(define-function g_allocator_new
-  (c-name "g_allocator_new")
-  (is-constructor-of "GAllocator")
-  (return-type "GAllocator*")
-  (parameters
-    '("const-gchar*" "name")
-    '("guint" "n_preallocs")
-  )
+(define-method get_char
+  (of-object "GValue")
+  (c-name "g_value_get_char")
+  (return-type "gchar")
 )
 
-(define-method free
-  (of-object "GAllocator")
-  (c-name "g_allocator_free")
-  (return-type "none")
+(define-method get_double
+  (of-object "GValue")
+  (c-name "g_value_get_double")
+  (return-type "gdouble")
 )
 
-(define-function g_list_push_allocator
-  (c-name "g_list_push_allocator")
-  (return-type "none")
-  (parameters
-    '("GAllocator*" "allocator")
-  )
+(define-method get_enum
+  (of-object "GValue")
+  (c-name "g_value_get_enum")
+  (return-type "gint")
 )
 
-(define-function g_list_pop_allocator
-  (c-name "g_list_pop_allocator")
-  (return-type "none")
+(define-method get_flags
+  (of-object "GValue")
+  (c-name "g_value_get_flags")
+  (return-type "guint")
 )
 
-(define-function g_slist_push_allocator
-  (c-name "g_slist_push_allocator")
-  (return-type "none")
-  (parameters
-    '("GAllocator*" "allocator")
-  )
+(define-method get_float
+  (of-object "GValue")
+  (c-name "g_value_get_float")
+  (return-type "gfloat")
 )
 
-(define-function g_slist_pop_allocator
-  (c-name "g_slist_pop_allocator")
-  (return-type "none")
+(define-method get_gtype
+  (of-object "GValue")
+  (c-name "g_value_get_gtype")
+  (return-type "GType")
 )
 
-(define-function g_node_push_allocator
-  (c-name "g_node_push_allocator")
-  (return-type "none")
-  (parameters
-    '("GAllocator*" "allocator")
-  )
+(define-method get_int
+  (of-object "GValue")
+  (c-name "g_value_get_int")
+  (return-type "gint")
 )
 
-(define-function g_node_pop_allocator
-  (c-name "g_node_pop_allocator")
-  (return-type "none")
+(define-method get_int64
+  (of-object "GValue")
+  (c-name "g_value_get_int64")
+  (return-type "gint64")
 )
 
+(define-method get_long
+  (of-object "GValue")
+  (c-name "g_value_get_long")
+  (return-type "glong")
+)
 
+(define-method get_object
+  (of-object "GValue")
+  (c-name "g_value_get_object")
+  (return-type "gpointer")
+)
 
-;; From gcache.h
+(define-method get_param
+  (of-object "GValue")
+  (c-name "g_value_get_param")
+  (return-type "GParamSpec*")
+)
 
-(define-function g_cache_new
-  (c-name "g_cache_new")
-  (is-constructor-of "GCache")
-  (return-type "GCache*")
-  (parameters
-    '("GCacheNewFunc" "value_new_func")
-    '("GCacheDestroyFunc" "value_destroy_func")
-    '("GCacheDupFunc" "key_dup_func")
-    '("GCacheDestroyFunc" "key_destroy_func")
-    '("GHashFunc" "hash_key_func")
-    '("GHashFunc" "hash_value_func")
-    '("GEqualFunc" "key_equal_func")
-  )
+(define-method get_pointer
+  (of-object "GValue")
+  (c-name "g_value_get_pointer")
+  (return-type "gpointer")
 )
 
-(define-method destroy
-  (of-object "GCache")
-  (c-name "g_cache_destroy")
-  (return-type "none")
+(define-method get_schar
+  (of-object "GValue")
+  (c-name "g_value_get_schar")
+  (return-type "gint8")
 )
 
-(define-method insert
-  (of-object "GCache")
-  (c-name "g_cache_insert")
-  (return-type "gpointer")
-  (parameters
-    '("gpointer" "key")
-  )
+(define-method get_string
+  (of-object "GValue")
+  (c-name "g_value_get_string")
+  (return-type "const-gchar*")
 )
 
-(define-method remove
-  (of-object "GCache")
-  (c-name "g_cache_remove")
-  (return-type "none")
-  (parameters
-    '("gconstpointer" "value")
-  )
+(define-method get_uchar
+  (of-object "GValue")
+  (c-name "g_value_get_uchar")
+  (return-type "guchar")
+)
+
+(define-method get_uint
+  (of-object "GValue")
+  (c-name "g_value_get_uint")
+  (return-type "guint")
+)
+
+(define-method get_uint64
+  (of-object "GValue")
+  (c-name "g_value_get_uint64")
+  (return-type "guint64")
+)
+
+(define-method get_ulong
+  (of-object "GValue")
+  (c-name "g_value_get_ulong")
+  (return-type "gulong")
+)
+
+(define-method get_variant
+  (of-object "GValue")
+  (c-name "g_value_get_variant")
+  (return-type "GVariant*")
 )
 
-(define-method key_foreach
-  (of-object "GCache")
-  (c-name "g_cache_key_foreach")
-  (return-type "none")
+(define-method init
+  (of-object "GValue")
+  (c-name "g_value_init")
+  (return-type "GValue*")
   (parameters
-    '("GHFunc" "func")
-    '("gpointer" "user_data")
+    '("GType" "g_type")
   )
 )
 
-(define-method value_foreach
-  (of-object "GCache")
-  (c-name "g_cache_value_foreach")
-  (return-type "none")
+(define-method init_from_instance
+  (of-object "GValue")
+  (c-name "g_value_init_from_instance")
+  (return-type "void")
   (parameters
-    '("GHFunc" "func")
-    '("gpointer" "user_data")
+    '("gpointer" "instance")
   )
 )
 
+(define-method peek_pointer
+  (of-object "GValue")
+  (c-name "g_value_peek_pointer")
+  (return-type "gpointer")
+)
 
+(define-method reset
+  (of-object "GValue")
+  (c-name "g_value_reset")
+  (return-type "GValue*")
+)
 
-;; From gcompletion.h
-
-(define-function g_completion_new
-  (c-name "g_completion_new")
-  (is-constructor-of "GCompletion")
-  (return-type "GCompletion*")
+(define-method set_boolean
+  (of-object "GValue")
+  (c-name "g_value_set_boolean")
+  (return-type "void")
   (parameters
-    '("GCompletionFunc" "func")
+    '("gboolean" "v_boolean")
   )
 )
 
-(define-method add_items
-  (of-object "GCompletion")
-  (c-name "g_completion_add_items")
-  (return-type "none")
+(define-method set_boxed
+  (of-object "GValue")
+  (c-name "g_value_set_boxed")
+  (return-type "void")
   (parameters
-    '("GList*" "items")
+    '("gconstpointer" "v_boxed")
   )
 )
 
-(define-method remove_items
-  (of-object "GCompletion")
-  (c-name "g_completion_remove_items")
-  (return-type "none")
+(define-method set_boxed_take_ownership
+  (of-object "GValue")
+  (c-name "g_value_set_boxed_take_ownership")
+  (return-type "void")
   (parameters
-    '("GList*" "items")
+    '("gconstpointer" "v_boxed")
   )
 )
 
-(define-method clear_items
-  (of-object "GCompletion")
-  (c-name "g_completion_clear_items")
-  (return-type "none")
+(define-method set_char
+  (of-object "GValue")
+  (c-name "g_value_set_char")
+  (return-type "void")
+  (parameters
+    '("gchar" "v_char")
+  )
 )
 
-(define-method complete
-  (of-object "GCompletion")
-  (c-name "g_completion_complete")
-  (return-type "GList*")
+(define-method set_double
+  (of-object "GValue")
+  (c-name "g_value_set_double")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "prefix")
-    '("gchar**" "new_prefix")
+    '("gdouble" "v_double")
   )
 )
 
-(define-method complete_utf8
-  (of-object "GCompletion")
-  (c-name "g_completion_complete_utf8")
-  (return-type "GList*")
+(define-method set_enum
+  (of-object "GValue")
+  (c-name "g_value_set_enum")
+  (return-type "void")
   (parameters
-    '("const-gchar*" "prefix")
-    '("gchar**" "new_prefix")
+    '("gint" "v_enum")
   )
 )
 
-(define-method set_compare
-  (of-object "GCompletion")
-  (c-name "g_completion_set_compare")
-  (return-type "none")
+(define-method set_flags
+  (of-object "GValue")
+  (c-name "g_value_set_flags")
+  (return-type "void")
   (parameters
-    '("GCompletionStrncmpFunc" "strncmp_func")
+    '("guint" "v_flags")
   )
 )
 
-(define-method free
-  (of-object "GCompletion")
-  (c-name "g_completion_free")
-  (return-type "none")
+(define-method set_float
+  (of-object "GValue")
+  (c-name "g_value_set_float")
+  (return-type "void")
+  (parameters
+    '("gfloat" "v_float")
+  )
 )
 
-
-
-;; From gmain.h
-
-
-
-;; From grel.h
-
-(define-function g_relation_new
-  (c-name "g_relation_new")
-  (is-constructor-of "GRelation")
-  (return-type "GRelation*")
+(define-method set_gtype
+  (of-object "GValue")
+  (c-name "g_value_set_gtype")
+  (return-type "void")
   (parameters
-    '("gint" "fields")
+    '("GType" "v_gtype")
   )
 )
 
-(define-method destroy
-  (of-object "GRelation")
-  (c-name "g_relation_destroy")
-  (return-type "none")
+(define-method set_instance
+  (of-object "GValue")
+  (c-name "g_value_set_instance")
+  (return-type "void")
+  (parameters
+    '("gpointer" "instance")
+  )
 )
 
-(define-method index
-  (of-object "GRelation")
-  (c-name "g_relation_index")
-  (return-type "none")
+(define-method set_int
+  (of-object "GValue")
+  (c-name "g_value_set_int")
+  (return-type "void")
   (parameters
-    '("gint" "field")
-    '("GHashFunc" "hash_func")
-    '("GEqualFunc" "key_equal_func")
+    '("gint" "v_int")
   )
 )
 
-(define-method insert
-  (of-object "GRelation")
-  (c-name "g_relation_insert")
-  (return-type "none")
+(define-method set_int64
+  (of-object "GValue")
+  (c-name "g_value_set_int64")
+  (return-type "void")
   (parameters
+    '("gint64" "v_int64")
   )
-  (varargs #t)
 )
 
-(define-method delete
-  (of-object "GRelation")
-  (c-name "g_relation_delete")
-  (return-type "gint")
+(define-method set_long
+  (of-object "GValue")
+  (c-name "g_value_set_long")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "key")
-    '("gint" "field")
+    '("glong" "v_long")
   )
 )
 
-(define-method select
-  (of-object "GRelation")
-  (c-name "g_relation_select")
-  (return-type "GTuples*")
+(define-method set_object
+  (of-object "GValue")
+  (c-name "g_value_set_object")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "key")
-    '("gint" "field")
+    '("gpointer" "v_object")
   )
 )
 
-(define-method count
-  (of-object "GRelation")
-  (c-name "g_relation_count")
-  (return-type "gint")
+(define-method set_object_take_ownership
+  (of-object "GValue")
+  (c-name "g_value_set_object_take_ownership")
+  (return-type "void")
   (parameters
-    '("gconstpointer" "key")
-    '("gint" "field")
+    '("gpointer" "v_object")
   )
 )
 
-(define-method exists
-  (of-object "GRelation")
-  (c-name "g_relation_exists")
-  (return-type "gboolean")
+(define-method set_param
+  (of-object "GValue")
+  (c-name "g_value_set_param")
+  (return-type "void")
   (parameters
+    '("GParamSpec*" "param")
   )
-  (varargs #t)
 )
 
-(define-method print
-  (of-object "GRelation")
-  (c-name "g_relation_print")
-  (return-type "none")
+(define-method set_param_take_ownership
+  (of-object "GValue")
+  (c-name "g_value_set_param_take_ownership")
+  (return-type "void")
+  (parameters
+    '("GParamSpec*" "param")
+  )
 )
 
-(define-method destroy
-  (of-object "GTuples")
-  (c-name "g_tuples_destroy")
-  (return-type "none")
+(define-method set_pointer
+  (of-object "GValue")
+  (c-name "g_value_set_pointer")
+  (return-type "void")
+  (parameters
+    '("gpointer" "v_pointer")
+  )
 )
 
-(define-method index
-  (of-object "GTuples")
-  (c-name "g_tuples_index")
-  (return-type "gpointer")
+(define-method set_schar
+  (of-object "GValue")
+  (c-name "g_value_set_schar")
+  (return-type "void")
   (parameters
-    '("gint" "index_")
-    '("gint" "field")
+    '("gint8" "v_char")
   )
 )
 
-
-
-;; From gthread.h
-
-(define-function guint64
-  (c-name "guint64")
-  (return-type "GLIB_VAR")
+(define-method set_static_boxed
+  (of-object "GValue")
+  (c-name "g_value_set_static_boxed")
+  (return-type "void")
   (parameters
-    '("*" "g_thread_gettime")
+    '("gconstpointer" "v_boxed")
   )
 )
 
-(define-function g_thread_create
-  (c-name "g_thread_create")
-  (return-type "GThread*")
+(define-method set_static_string
+  (of-object "GValue")
+  (c-name "g_value_set_static_string")
+  (return-type "void")
   (parameters
-    '("GThreadFunc" "func")
-    '("gpointer" "data")
-    '("gboolean" "joinable")
-    '("GError**" "error")
+    '("const-gchar*" "v_string")
   )
 )
 
-(define-function g_thread_create_full
-  (c-name "g_thread_create_full")
-  (return-type "GThread*")
+(define-method set_string
+  (of-object "GValue")
+  (c-name "g_value_set_string")
+  (return-type "void")
   (parameters
-    '("GThreadFunc" "func")
-    '("gpointer" "data")
-    '("gulong" "stack_size")
-    '("gboolean" "joinable")
-    '("gboolean" "bound")
-    '("GThreadPriority" "priority")
-    '("GError**" "error")
+    '("const-gchar*" "v_string")
   )
 )
 
-(define-method set_priority
-  (of-object "GThread")
-  (c-name "g_thread_set_priority")
-  (return-type "none")
+(define-method set_string_take_ownership
+  (of-object "GValue")
+  (c-name "g_value_set_string_take_ownership")
+  (return-type "void")
   (parameters
-    '("GThreadPriority" "priority")
+    '("gchar*" "v_string")
   )
 )
 
-(define-function g_thread_foreach
-  (c-name "g_thread_foreach")
-  (return-type "none")
+(define-method set_uchar
+  (of-object "GValue")
+  (c-name "g_value_set_uchar")
+  (return-type "void")
   (parameters
-    '("GFunc" "thread_func")
-    '("gpointer" "user_data")
+    '("guchar" "v_uchar")
   )
 )
 
-(define-method init
-  (of-object "GStaticMutex")
-  (c-name "g_static_mutex_init")
-  (return-type "none")
+(define-method set_uint
+  (of-object "GValue")
+  (c-name "g_value_set_uint")
+  (return-type "void")
+  (parameters
+    '("guint" "v_uint")
+  )
 )
 
-(define-method free
-  (of-object "GStaticMutex")
-  (c-name "g_static_mutex_free")
-  (return-type "none")
+(define-method set_uint64
+  (of-object "GValue")
+  (c-name "g_value_set_uint64")
+  (return-type "void")
+  (parameters
+    '("guint64" "v_uint64")
+  )
 )
 
-(define-method get_mutex_impl
-  (of-object "GStaticMutex")
-  (c-name "g_static_mutex_get_mutex_impl")
-  (return-type "GMutex*")
+(define-method set_ulong
+  (of-object "GValue")
+  (c-name "g_value_set_ulong")
+  (return-type "void")
+  (parameters
+    '("gulong" "v_ulong")
+  )
 )
 
-(define-method init
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_init")
-  (return-type "none")
+(define-method set_variant
+  (of-object "GValue")
+  (c-name "g_value_set_variant")
+  (return-type "void")
+  (parameters
+    '("GVariant*" "variant")
+  )
 )
 
-(define-method lock
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_lock")
-  (return-type "none")
+(define-method take_boxed
+  (of-object "GValue")
+  (c-name "g_value_take_boxed")
+  (return-type "void")
+  (parameters
+    '("gconstpointer" "v_boxed")
+  )
 )
 
-(define-method trylock
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_trylock")
-  (return-type "gboolean")
+(define-method take_object
+  (of-object "GValue")
+  (c-name "g_value_take_object")
+  (return-type "void")
+  (parameters
+    '("gpointer" "v_object")
+  )
 )
 
-(define-method unlock
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_unlock")
-  (return-type "none")
+(define-method take_param
+  (of-object "GValue")
+  (c-name "g_value_take_param")
+  (return-type "void")
+  (parameters
+    '("GParamSpec*" "param")
+  )
 )
 
-(define-method lock_full
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_lock_full")
-  (return-type "none")
+(define-method take_string
+  (of-object "GValue")
+  (c-name "g_value_take_string")
+  (return-type "void")
   (parameters
-    '("guint" "depth")
+    '("gchar*" "v_string")
   )
 )
 
-(define-method unlock_full
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_unlock_full")
-  (return-type "guint")
+(define-method take_variant
+  (of-object "GValue")
+  (c-name "g_value_take_variant")
+  (return-type "void")
+  (parameters
+    '("GVariant*" "variant")
+  )
 )
 
-(define-method free
-  (of-object "GStaticRecMutex")
-  (c-name "g_static_rec_mutex_free")
-  (return-type "none")
+(define-method transform
+  (of-object "GValue")
+  (c-name "g_value_transform")
+  (return-type "gboolean")
+  (parameters
+    '("GValue*" "dest_value")
+  )
 )
 
-(define-method init
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_init")
-  (return-type "none")
+(define-method unset
+  (of-object "GValue")
+  (c-name "g_value_unset")
+  (return-type "void")
 )
 
-(define-method reader_lock
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_reader_lock")
-  (return-type "none")
+(define-function g_value_register_transform_func
+  (c-name "g_value_register_transform_func")
+  (return-type "void")
+  (parameters
+    '("GType" "src_type")
+    '("GType" "dest_type")
+    '("GValueTransform" "transform_func")
+  )
 )
 
-(define-method reader_trylock
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_reader_trylock")
+(define-function g_value_type_compatible
+  (c-name "g_value_type_compatible")
   (return-type "gboolean")
+  (parameters
+    '("GType" "src_type")
+    '("GType" "dest_type")
+  )
 )
 
-(define-method reader_unlock
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_reader_unlock")
-  (return-type "none")
+(define-function g_value_type_transformable
+  (c-name "g_value_type_transformable")
+  (return-type "gboolean")
+  (parameters
+    '("GType" "src_type")
+    '("GType" "dest_type")
+  )
 )
 
-(define-method writer_lock
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_writer_lock")
-  (return-type "none")
+(define-function g_value_array_new
+  (c-name "g_value_array_new")
+  (return-type "GValueArray*")
+  (parameters
+    '("guint" "n_prealloced")
+  )
 )
 
-(define-method writer_trylock
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_writer_trylock")
-  (return-type "gboolean")
+(define-method append
+  (of-object "GValueArray")
+  (c-name "g_value_array_append")
+  (return-type "GValueArray*")
+  (parameters
+    '("const-GValue*" "value")
+  )
 )
 
-(define-method writer_unlock
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_writer_unlock")
-  (return-type "none")
+(define-method copy
+  (of-object "GValueArray")
+  (c-name "g_value_array_copy")
+  (return-type "GValueArray*")
 )
 
 (define-method free
-  (of-object "GStaticRWLock")
-  (c-name "g_static_rw_lock_free")
-  (return-type "none")
+  (of-object "GValueArray")
+  (c-name "g_value_array_free")
+  (return-type "void")
 )
 
-(define-function g_private_new
-  (c-name "g_private_new")
-  (is-constructor-of "GPrivate")
-  (return-type "GPrivate*")
+(define-method get_nth
+  (of-object "GValueArray")
+  (c-name "g_value_array_get_nth")
+  (return-type "GValue*")
   (parameters
-    '("GDestroyNotify" "notify")
+    '("guint" "index_")
   )
 )
 
-(define-method init
-  (of-object "GStaticPrivate")
-  (c-name "g_static_private_init")
-  (return-type "none")
-)
-
-(define-method get
-  (of-object "GStaticPrivate")
-  (c-name "g_static_private_get")
-  (return-type "gpointer")
-)
-
-(define-method set
-  (of-object "GStaticPrivate")
-  (c-name "g_static_private_set")
-  (return-type "none")
+(define-method insert
+  (of-object "GValueArray")
+  (c-name "g_value_array_insert")
+  (return-type "GValueArray*")
   (parameters
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("guint" "index_")
+    '("const-GValue*" "value")
   )
 )
 
-(define-method free
-  (of-object "GStaticPrivate")
-  (c-name "g_static_private_free")
-  (return-type "none")
+(define-method prepend
+  (of-object "GValueArray")
+  (c-name "g_value_array_prepend")
+  (return-type "GValueArray*")
+  (parameters
+    '("const-GValue*" "value")
+  )
 )
 
-(define-function g_once_init_enter_impl
-  (c-name "g_once_init_enter_impl")
-  (return-type "gboolean")
+(define-method remove
+  (of-object "GValueArray")
+  (c-name "g_value_array_remove")
+  (return-type "GValueArray*")
   (parameters
-    '("volatile-gsize*" "location")
+    '("guint" "index_")
   )
 )
 
-(define-function g_thread_init
-  (c-name "g_thread_init")
-  (return-type "none")
+(define-method sort
+  (of-object "GValueArray")
+  (c-name "g_value_array_sort")
+  (return-type "GValueArray*")
   (parameters
-    '("gpointer" "vtable")
+    '("GCompareFunc" "compare_func")
   )
 )
 
-(define-function g_thread_init_with_errorcheck_mutexes
-  (c-name "g_thread_init_with_errorcheck_mutexes")
-  (return-type "none")
+(define-method sort_with_data
+  (of-object "GValueArray")
+  (c-name "g_value_array_sort_with_data")
+  (return-type "GValueArray*")
   (parameters
-    '("gpointer" "vtable")
+    '("GCompareDataFunc" "compare_func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function g_thread_get_initialized
-  (c-name "g_thread_get_initialized")
-  (return-type "gboolean")
+(define-method clear
+  (of-object "GWeakRef")
+  (c-name "g_weak_ref_clear")
+  (return-type "void")
 )
 
-(define-function g_mutex_new
-  (c-name "g_mutex_new")
-  (is-constructor-of "GMutex")
-  (return-type "GMutex*")
+(define-method get
+  (of-object "GWeakRef")
+  (c-name "g_weak_ref_get")
+  (return-type "gpointer")
 )
 
-(define-method free
-  (of-object "GMutex")
-  (c-name "g_mutex_free")
-  (return-type "none")
+(define-method init
+  (of-object "GWeakRef")
+  (c-name "g_weak_ref_init")
+  (return-type "void")
+  (parameters
+    '("gpointer" "object")
+  )
 )
 
-(define-function g_cond_new
-  (c-name "g_cond_new")
-  (is-constructor-of "GCond")
-  (return-type "GCond*")
+(define-method set
+  (of-object "GWeakRef")
+  (c-name "g_weak_ref_set")
+  (return-type "void")
+  (parameters
+    '("gpointer" "object")
+  )
 )
 
-(define-method free
-  (of-object "GCond")
-  (c-name "g_cond_free")
-  (return-type "none")
+(define-method complete_interface_info
+  (of-object "GTypePlugin")
+  (c-name "g_type_plugin_complete_interface_info")
+  (return-type "void")
+  (parameters
+    '("GType" "instance_type")
+    '("GType" "interface_type")
+    '("GInterfaceInfo*" "info")
+  )
 )
 
-(define-method timed_wait
-  (of-object "GCond")
-  (c-name "g_cond_timed_wait")
-  (return-type "gboolean")
+(define-method complete_type_info
+  (of-object "GTypePlugin")
+  (c-name "g_type_plugin_complete_type_info")
+  (return-type "void")
   (parameters
-    '("GMutex*" "mutex")
-    '("GTimeVal*" "timeval")
+    '("GType" "g_type")
+    '("GTypeInfo*" "info")
+    '("GTypeValueTable*" "value_table")
   )
 )
 
+(define-method unuse
+  (of-object "GTypePlugin")
+  (c-name "g_type_plugin_unuse")
+  (return-type "void")
+)
+
+(define-method use
+  (of-object "GTypePlugin")
+  (c-name "g_type_plugin_use")
+  (return-type "void")
+)
 
diff --git a/glib/src/glib_functions.defs.patch b/glib/src/glib_functions.defs.patch
index c043751..f026393 100644
--- a/glib/src/glib_functions.defs.patch
+++ b/glib/src/glib_functions.defs.patch
@@ -1,44 +1,51 @@
---- glib_functions.defs.orig   2015-02-15 16:49:21.605101660 +0100
-+++ glib_functions.defs        2015-02-15 16:49:21.617101670 +0100
-@@ -2739,7 +2739,7 @@
-   )
- )
- 
--(define-method 
-+(define-method iconv
-   (of-object "GIConv")
-   (c-name "g_iconv")
-   (return-type "gsize")
-@@ -13320,13 +13320,9 @@
-   (return-type "const-gchar*-const*")
- )
- 
--(define-function g_win32_get_system_data_dirs_for_module
--  (c-name "g_win32_get_system_data_dirs_for_module")
--  (return-type "const-gchar*-const*")
--  (parameters
--    '("void-(*" "address_of_function")
--  )
--)
-+;; the g_win32_get_system_data_dirs_for_module() function is removed because it
-+;; has a function pointer parameter and that is not handled correctly by
-+;; h2def.py.
- 
- (define-function g_get_system_config_dirs
-   (c-name "g_get_system_config_dirs")
-@@ -13419,13 +13415,8 @@
-   )
- )
- 
--(define-function atexit
--  (c-name "atexit")
--  (return-type "int")
--  (parameters
--    '("void" "(*")
--  )
--)
-+;; the atexit() function is removed because it has a function pointer parameter
-+;; and that is not handled correctly by h2def.py.
- 
- (define-function g_find_program_in_path
-   (c-name "g_find_program_in_path")
+--- a/glib/src/glib_functions.defs
++++ b/glib/src/glib_functions.defs
+@@ -7672,7 +7672,7 @@
+   (c-name "g_io_channel_write_chars")
+   (return-type "GIOStatus")
+   (parameters
++    '("const-gchar*" "buf")
+-    '("gchar*" "buf")
+     '("gssize" "count")
+     '("gsize*" "bytes_written")
+     '("GError**" "error")
+
+@@ -7961,7 +7961,7 @@
+   (return-type "gboolean")
+   (parameters
+     '("gchar*" "file")
++    '("const-gchar**" "search_dirs")
+-    '("gchar**" "search_dirs")
+     '("gchar**" "full_path")
+     '("GKeyFileFlags" "flags")
+     '("GError**" "error")
+
+@@ -10330,7 +10330,7 @@
+   (c-name "g_regex_replace")
+   (return-type "gchar*")
+   (parameters
++    '("const-gchar*" "string")
+-    '("gchar*" "string")
+     '("gssize" "string_len")
+     '("gint" "start_position")
+     '("const-gchar*" "replacement")
+
+@@ -10359,7 +10359,7 @@
+   (c-name "g_regex_replace_literal")
+   (return-type "gchar*")
+   (parameters
++    '("const-gchar*" "string")
+-    '("gchar*" "string")
+     '("gssize" "string_len")
+     '("gint" "start_position")
+     '("const-gchar*" "replacement")
+
+@@ -10383,7 +10383,7 @@
+   (c-name "g_regex_split_full")
+   (return-type "gchar**")
+   (parameters
++    '("const-gchar*" "string")
+-    '("gchar*" "string")
+     '("gssize" "string_len")
+     '("gint" "start_position")
+     '("GRegexMatchFlags" "match_options")
diff --git a/glib/src/glib_signals.defs b/glib/src/glib_signals.defs
index f08ffa6..fb42cf4 100644
--- a/glib/src/glib_signals.defs
+++ b/glib/src/glib_signals.defs
@@ -3,7 +3,7 @@
   (return-type "void")
   (when "first")
   (parameters
-   '("GParamSpec*" "pspec")
+    '("GParamSpec*" "pspec")
   )
 )
 
diff --git a/glib/src/glib_vfuncs.defs b/glib/src/glib_vfuncs.defs
index e675a9b..abb0ef3 100644
--- a/glib/src/glib_vfuncs.defs
+++ b/glib/src/glib_vfuncs.defs
@@ -7,8 +7,8 @@
   (of-object "GObject")
   (return-type "void")
   (parameters
-   '("guint" "n_pspecs")
-   '("GParamSpec**" "pspecs")
+    '("guint" "n_pspecs")
+    '("GParamSpec**" "pspecs")
   )
 )
 
@@ -26,9 +26,9 @@
   (of-object "GObject")
   (return-type "void")
   (parameters
-   '("guint" "property_id")
-   '("GValue*" "value")
-   '("GParamSpec*" "pspec")
+    '("guint" "property_id")
+    '("GValue*" "value")
+    '("GParamSpec*" "pspec")
   )
 )
 
@@ -36,7 +36,7 @@
   (of-object "GObject")
   (return-type "void")
   (parameters
-   '("GParamSpec*" "pspec")
+    '("GParamSpec*" "pspec")
   )
 )
 
@@ -44,9 +44,9 @@
   (of-object "GObject")
   (return-type "void")
   (parameters
-   '("guint" "property_id")
-   '("const-GValue*" "value")
-   '("GParamSpec*" "pspec")
+    '("guint" "property_id")
+    '("const-GValue*" "value")
+    '("GParamSpec*" "pspec")
   )
 )
 
@@ -59,7 +59,7 @@
   (of-object "GParamSpec")
   (return-type "void")
   (parameters
-   '("GValue*" "value")
+    '("GValue*" "value")
   )
 )
 
@@ -67,7 +67,7 @@
   (of-object "GParamSpec")
   (return-type "gboolean")
   (parameters
-   '("GValue*" "value")
+    '("GValue*" "value")
   )
 )
 
@@ -75,8 +75,8 @@
   (of-object "GParamSpec")
   (return-type "gint")
   (parameters
-   '("const-GValue*" "value1")
-   '("const-GValue*" "value2")
+    '("const-GValue*" "value1")
+    '("const-GValue*" "value2")
   )
 )
 
diff --git a/glib/src/iochannel.hg b/glib/src/iochannel.hg
index 12b6b8d..856c7ca 100644
--- a/glib/src/iochannel.hg
+++ b/glib/src/iochannel.hg
@@ -89,11 +89,11 @@ class IOChannel : public sigc::trackable
 
   dnl // We can't support get_fd() properly because it is impossible
   dnl // to detect the specific GIOChannel type at runtime.
-  _IGNORE(g_io_channel_unix_get_fd, g_io_channel_win32_get_fd)
+  _IGNORE(g_io_channel_unix_get_fd)
 
   dnl // deprecated or internal
   _IGNORE(g_io_channel_seek, g_io_channel_close, g_io_channel_read,
-          g_io_channel_write, g_io_channel_win32_make_pollfd)
+          g_io_channel_write)
 
 public:
   virtual ~IOChannel();
@@ -146,7 +146,6 @@ public:
    * internal GLib thread. Your code should call only IOChannel::read().
    */
   static Glib::RefPtr<IOChannel> create_from_win32_fd(int fd);
-  _IGNORE(g_io_channel_win32_new_fd)
 
   /** Create an I/O channel for a winsock socket. The parameter should be a
    * <tt>SOCKET</tt>. Contrary to I/O channels for file descriptors (on Win32),
@@ -154,7 +153,6 @@ public:
    * if GLib is polling them.
    */
   static Glib::RefPtr<IOChannel> create_from_win32_socket(int socket);
-  _IGNORE(g_io_channel_win32_new_socket)
 
 #endif /* G_OS_WIN32 */
 
diff --git a/glib/src/variant.hg b/glib/src/variant.hg
index f855db7..938bd2f 100644
--- a/glib/src/variant.hg
+++ b/glib/src/variant.hg
@@ -211,9 +211,6 @@ _DEPRECATE_IFDEF_END
 
    _WRAP_METHOD(bool check_format_string(const std::string& format_string, bool copy_only = false) const, 
g_variant_check_format_string)
 
-   //Ignore private API from gvariant-core.h:
-   _IGNORE(g_variant_is_trusted, g_variant_get_type_info)
-
    /** Cast to a specific variant type.
     * For instance:
     * @code
diff --git a/glib/src/varianttype.hg b/glib/src/varianttype.hg
index 19327ab..6782b8b 100644
--- a/glib/src/varianttype.hg
+++ b/glib/src/varianttype.hg
@@ -170,10 +170,6 @@ public:
   _WRAP_METHOD(gsize n_items() const, g_variant_type_n_items)
   _WRAP_METHOD(VariantType key() const, g_variant_type_key)
   _WRAP_METHOD(VariantType value() const, g_variant_type_value)
-
-  // This function is part of unexposed API in gvarianttypeinfo.{h,c} for an
-  // also unexposed GVariantTypeInfo structure of glib.
-  _IGNORE(g_variant_type_info_get)
 };
 
 extern const VariantType VARIANT_TYPE_BOOL;
diff --git a/tools/gen_scripts/glibmm_generate_defs.sh b/tools/gen_scripts/glibmm_generate_defs.sh
index 68d5e31..6b89374 100755
--- a/tools/gen_scripts/glibmm_generate_defs.sh
+++ b/tools/gen_scripts/glibmm_generate_defs.sh
@@ -36,6 +36,12 @@ $MMGIRGEN_PATH GLib-2.0 GModule-2.0 GObject-2.0 \
     --namespace-mapping=GModule:GLib,GObject:GLib \
     --print-vfunc > $GLIBMM_DIR/glib/src/glib_vfuncs.defs
 
+#GLib functions & methods
+$MMGIRGEN_PATH GLib-2.0 GModule-2.0 GObject-2.0 \
+    --namespace=GLib \
+    --namespace-mapping=GModule:GLib,GObject:GLib \
+    --print-function > $GLIBMM_DIR/glib/src/glib_functions.defs
+
 patch_directory $GLIBMM_DIR/glib/src
 
 



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