Add gtk-doc support
authorJohan Dahlin <jdahlin@litl.com>
Thu, 12 Feb 2009 03:32:25 +0000 (01:32 -0200)
committerJohan Dahlin <johan@gnome.org>
Thu, 12 Feb 2009 03:32:25 +0000 (01:32 -0200)
28 files changed:
.gitignore
Makefile.am
configure.ac
docs/Makefile.am [new file with mode: 0644]
docs/reference/Makefile.am [new file with mode: 0644]
docs/reference/gi-decl-list.txt [new file with mode: 0644]
docs/reference/gi-decl.txt [new file with mode: 0644]
docs/reference/gi-docs.sgml [new file with mode: 0644]
docs/reference/gi-overrides.txt [new file with mode: 0644]
docs/reference/gi-sections.txt [new file with mode: 0644]
docs/reference/gi.types [new file with mode: 0644]
docs/reference/tmpl/gi-unused.sgml [new file with mode: 0644]
docs/reference/tmpl/ginfo.sgml [new file with mode: 0644]
docs/reference/tmpl/girepository.sgml [new file with mode: 0644]
docs/reference/tmpl/girffi.sgml [new file with mode: 0644]
docs/reference/tmpl/girmodule.sgml [new file with mode: 0644]
docs/reference/tmpl/girnode.sgml [new file with mode: 0644]
docs/reference/tmpl/girparser.sgml [new file with mode: 0644]
docs/reference/tmpl/girwriter.sgml [new file with mode: 0644]
docs/reference/tmpl/gtypelib.sgml [new file with mode: 0644]
docs/reference/version.xml.in [new file with mode: 0644]
girepository/ginfo.c
girepository/girepository.c
girepository/girffi.c
girepository/giroffsets.c
girepository/girparser.c
girepository/gtypelib.c
m4/gtk-doc.m4 [new file with mode: 0644]

index a6726fb..a161504 100644 (file)
@@ -2,6 +2,7 @@
 *.lo
 *.o
 *.pyc
+*.stamp
 .deps
 .libs
 Makefile
@@ -18,6 +19,7 @@ config.sub
 configure
 COPYING
 depcomp
+gtk-doc.make
 gobject-introspection-1.0.pc
 INSTALL
 install-sh
@@ -27,6 +29,8 @@ missing
 stamp-h1
 ylwrap
 py-compile
+docs/reference/html
+docs/reference/xml
 gir/GIRepository-2.0.gir
 gir/GIRepository-2.0.typelib
 gir/GL-1.0.typelib
@@ -58,7 +62,14 @@ tests/everything/Everything-1.0.gir
 tests/everything/Everything-1.0.tgir
 tests/everything/Everything-1.0.typelib
 tests/invoke/testfns-metadata.c
+tests/invoke/genericmarshaller
+tests/invoke/invoke
 tests/offsets/gitestoffsets.c
+tests/offsets/gitestoffsets
+tests/offsets/offsets-1.0.gir
+tests/offsets/offsets-1.0.typelib
+tests/offsets/offsets.compiled
+tests/offsets/offsets.introspected
 tests/repository/gitestrepo
 tests/repository/gitestthrows
 tests/scanner/BarApp-1.0.gir
@@ -80,5 +91,6 @@ tests/scanner/foo-1.0.typelib
 tests/scanner/utility-1.0.gir
 tests/scanner/utility-1.0.tgir
 tests/scanner/utility-1.0.typelib
+tests/extended.gir.test
 tools/g-ir-compiler
 tools/g-ir-generate
index c620f43..d659098 100644 (file)
@@ -33,6 +33,7 @@ EXTRA_DIST =                  \
        CONTRIBUTORS            \
        $(pkgconfig_DATA)       \
        $(man_MANS)             \
+       m4/introspection.m4     \
        misc/pep8.py            \
        misc/pyflakes.py
 
index 6f255e1..4182a9d 100644 (file)
@@ -161,6 +161,9 @@ GIREPO_CFLAGS="$GIREPO_CFLAGS $FFI_CFLAGS"
 
 GIREPO_CFLAGS="$GIREPO_CFLAGS $GCOV_CFLAGS"
 
+# gtk-doc
+GTK_DOC_CHECK([1.12])
+
 # Checks for header files.
 AC_HEADER_STDC
 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h])
@@ -201,5 +204,7 @@ tests/offsets/Makefile
 tests/scanner/Makefile
 tests/repository/Makefile
 tests/everything/Makefile
+docs/Makefile
+docs/reference/Makefile
 gobject-introspection-1.0.pc])
 AC_OUTPUT
diff --git a/docs/Makefile.am b/docs/Makefile.am
new file mode 100644 (file)
index 0000000..f3ddc22
--- /dev/null
@@ -0,0 +1 @@
+SUBDIRS = reference
diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
new file mode 100644 (file)
index 0000000..efc70c9
--- /dev/null
@@ -0,0 +1,44 @@
+AUTOMAKE_OPTIONS = 1.6
+
+# The name of the module.
+DOC_MODULE=gi
+
+# The top-level SGML file.
+DOC_MAIN_SGML_FILE=gi-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir)
+DOC_SOURCE_DIR=../../girepository
+
+# Extra options to supply to gtkdoc-scan
+SCAN_OPTIONS=
+
+# Extra options to supply to gtkdoc-mkdb
+MKDB_OPTIONS=--sgml-mode --output-format=xml --namespace=g
+
+# Used for dependencies
+HFILE_GLOB=$(top_srcdir)/girepository/*.h
+CFILE_GLOB=$(top_srcdir)/girepository/*.c
+
+# Headers to ignore
+IGNORE_HFILES=
+
+INCLUDES=$(GIREPO_CFLAGS) -I$(top_srcdir)
+GTKDOC_LIBS = $(GIREPO_LIBS) $(top_builddir)/girepository/libgirepository-1.0.la $(top_builddir)/girepository/libgirepository-parser.la
+
+# Extra options to supply to gtkdoc-fixref
+FIXXREF_OPTIONS=
+
+# include common portion ...
+include $(top_srcdir)/gtk-doc.make
+
+# Other files to distribute
+EXTRA_DIST +=version.xml.in
+
+########################################################################
+
+dist-hook-local: $(BUILT_EXTRA_DIST)
+       files='$(BUILT_EXTRA_DIST)';                            \
+       for f in $$files; do                                    \
+         if test -f $$f; then d=.; else d=$(srcdir); fi;       \
+         cp $$d/$$f $(distdir) || exit 1; done
+
diff --git a/docs/reference/gi-decl-list.txt b/docs/reference/gi-decl-list.txt
new file mode 100644 (file)
index 0000000..952f494
--- /dev/null
@@ -0,0 +1,279 @@
+<SECTION>
+<FILE>girepository</FILE>
+G_TYPE_IREPOSITORY
+G_IREPOSITORY
+GIRepositoryPrivate
+GIBaseInfo
+GICallableInfo
+GIFunctionInfo
+GICallbackInfo
+GIRegisteredTypeInfo
+GIStructInfo
+GIUnionInfo
+GIEnumInfo
+GIObjectInfo
+GIInterfaceInfo
+GIConstantInfo
+GIValueInfo
+GISignalInfo
+GIVFuncInfo
+GIPropertyInfo
+GIFieldInfo
+GIArgInfo
+GITypeInfo
+GIErrorDomainInfo
+GIUnresolvedInfo
+GTypelib
+<TITLE>GIRepository</TITLE>
+GIRepository
+GIRepositoryLoadFlags
+g_irepository_get_default
+g_irepository_prepend_search_path
+g_irepository_get_search_path
+g_irepository_load_typelib
+g_irepository_is_registered
+g_irepository_find_by_name
+g_irepository_require
+g_irepository_get_dependencies
+g_irepository_get_loaded_namespaces
+g_irepository_find_by_gtype
+g_irepository_get_n_infos
+g_irepository_get_info
+g_irepository_get_typelib_path
+g_irepository_get_shared_library
+g_irepository_get_version
+g_irepository_get_option_group
+g_irepository_dump
+g_typelib_new_from_memory
+g_typelib_new_from_const_memory
+g_typelib_new_from_mapped_file
+g_typelib_free
+g_typelib_symbol
+g_typelib_get_namespace
+GIRepositoryError
+G_IREPOSITORY_ERROR
+g_irepository_error_quark
+gi_cclosure_marshal_generic
+GIInfoType
+g_base_info_ref
+g_base_info_unref
+g_base_info_get_type
+g_base_info_get_name
+g_base_info_get_namespace
+g_base_info_is_deprecated
+g_base_info_get_annotation
+g_base_info_get_container
+g_base_info_get_typelib
+g_info_new
+GIFunctionInfoFlags
+g_function_info_get_symbol
+g_function_info_get_flags
+g_function_info_get_property
+g_function_info_get_vfunc
+G_INVOKE_ERROR
+g_invoke_error_quark
+GInvokeError
+g_function_info_invoke
+GITransfer
+g_callable_info_get_return_type
+g_callable_info_get_caller_owns
+g_callable_info_may_return_null
+g_callable_info_get_n_args
+g_callable_info_get_arg
+GIDirection
+GIScopeType
+g_arg_info_get_direction
+g_arg_info_is_dipper
+g_arg_info_is_return_value
+g_arg_info_is_optional
+g_arg_info_may_be_null
+g_arg_info_get_ownership_transfer
+g_arg_info_get_scope
+g_arg_info_get_closure
+g_arg_info_get_destroy
+g_arg_info_get_type
+GITypeTag
+g_type_tag_to_string
+g_type_info_is_pointer
+g_type_info_get_tag
+g_type_info_get_param_type
+g_type_info_get_interface
+g_type_info_get_array_length
+g_type_info_get_array_fixed_size
+g_type_info_is_zero_terminated
+g_type_info_get_n_error_domains
+g_type_info_get_error_domain
+g_error_domain_info_get_quark
+g_error_domain_info_get_codes
+g_value_info_get_value
+GIFieldInfoFlags
+g_field_info_get_flags
+g_field_info_get_size
+g_field_info_get_offset
+g_field_info_get_type
+g_field_info_get_field
+g_field_info_set_field
+g_union_info_get_n_fields
+g_union_info_get_field
+g_union_info_get_n_methods
+g_union_info_get_method
+g_union_info_is_discriminated
+g_union_info_get_discriminator_offset
+g_union_info_get_discriminator_type
+g_union_info_get_discriminator
+g_union_info_find_method
+g_union_info_get_size
+g_union_info_get_alignment
+g_struct_info_get_n_fields
+g_struct_info_get_field
+g_struct_info_get_n_methods
+g_struct_info_get_method
+g_struct_info_find_method
+g_struct_info_get_size
+g_struct_info_get_alignment
+g_struct_info_is_class_struct
+g_registered_type_info_get_type_name
+g_registered_type_info_get_type_init
+g_registered_type_info_get_g_type
+g_enum_info_get_n_values
+g_enum_info_get_value
+g_enum_info_get_storage_type
+g_object_info_get_type_name
+g_object_info_get_type_init
+g_object_info_get_abstract
+g_object_info_get_parent
+g_object_info_get_n_interfaces
+g_object_info_get_interface
+g_object_info_get_n_fields
+g_object_info_get_field
+g_object_info_get_n_properties
+g_object_info_get_property
+g_object_info_get_n_methods
+g_object_info_get_method
+g_object_info_find_method
+g_object_info_get_n_signals
+g_object_info_get_signal
+g_object_info_get_n_vfuncs
+g_object_info_get_vfunc
+g_object_info_get_n_constants
+g_object_info_get_constant
+g_object_info_get_class_struct
+g_interface_info_get_n_prerequisites
+g_interface_info_get_prerequisite
+g_interface_info_get_n_properties
+g_interface_info_get_property
+g_interface_info_get_n_methods
+g_interface_info_get_method
+g_interface_info_find_method
+g_interface_info_get_n_signals
+g_interface_info_get_signal
+g_interface_info_get_n_vfuncs
+g_interface_info_get_vfunc
+g_interface_info_get_n_constants
+g_interface_info_get_constant
+g_property_info_get_flags
+g_property_info_get_type
+g_signal_info_get_flags
+g_signal_info_get_class_closure
+g_signal_info_true_stops_emit
+GIVFuncInfoFlags
+g_vfunc_info_get_flags
+g_vfunc_info_get_offset
+g_vfunc_info_get_signal
+g_constant_info_get_type
+g_constant_info_get_value
+<SUBSECTION Standard>
+G_TYPE_TAG_IS_BASIC
+g_irepository_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gtypelib</FILE>
+G_IR_MAGIC
+GTypelib
+g_typelib_get_dir_entry
+g_typelib_check_sanity
+g_typelib_get_string
+GTypelibError
+G_TYPELIB_ERROR
+g_typelib_error_quark
+g_typelib_validate
+<SUBSECTION Standard>
+BLOB_IS_REGISTERED_TYPE
+</SECTION>
+
+<SECTION>
+<FILE>ginfo</FILE>
+g_type_info_new
+g_info_new_full
+</SECTION>
+
+<SECTION>
+<FILE>girffi</FILE>
+GIFFIClosureCallback
+g_ir_ffi_get_ffi_type
+g_callable_info_get_ffi_arg_types
+g_callable_info_get_ffi_return_type
+g_callable_info_prepare_closure
+g_callable_info_free_closure
+</SECTION>
+
+<SECTION>
+<FILE>girmodule</FILE>
+GIrModule
+g_ir_module_new
+g_ir_module_free
+g_ir_module_add_include_module
+g_ir_module_build_typelib
+</SECTION>
+
+<SECTION>
+<FILE>girnode</FILE>
+GIrNodeFunction
+GIrNodeParam
+GIrNodeType
+GIrNodeSignal
+GIrNodeProperty
+GIrNodeVFunc
+GIrNodeField
+GIrNodeValue
+GIrNodeEnum
+GIrNodeBoxed
+GIrNodeStruct
+GIrNodeConstant
+GIrNodeErrorDomain
+GIrNodeXRef
+GIrNodeUnion
+GIrNodeTypeId
+<TITLE>GIrNode</TITLE>
+GIrNode
+g_ir_node_new
+g_ir_node_free
+g_ir_node_get_size
+g_ir_node_get_full_size
+g_ir_node_build_typelib
+g_ir_node_cmp
+g_ir_node_can_have_member
+g_ir_node_add_member
+write_string
+g_ir_node_param_direction_string
+g_ir_node_type_to_string
+g_ir_find_node
+g_ir_node_compute_offsets
+</SECTION>
+
+<SECTION>
+<FILE>girparser</FILE>
+GIrParser
+g_ir_parser_new
+g_ir_parser_free
+g_ir_parser_set_includes
+g_ir_parser_parse_string
+g_ir_parser_parse_file
+</SECTION>
+
+<SECTION>
+<FILE>girwriter</FILE>
+g_idl_writer_save_file
+</SECTION>
+
diff --git a/docs/reference/gi-decl.txt b/docs/reference/gi-decl.txt
new file mode 100644 (file)
index 0000000..e35b6a5
--- /dev/null
@@ -0,0 +1,1596 @@
+<FUNCTION>
+<NAME>g_type_info_new</NAME>
+<RETURNS>GITypeInfo  *</RETURNS>
+GIBaseInfo    *container,GTypelib     *typelib,guint32        offset
+</FUNCTION>
+<FUNCTION>
+<NAME>g_info_new_full</NAME>
+<RETURNS>GIBaseInfo  *</RETURNS>
+GIInfoType     type,GIRepository  *repository,GIBaseInfo    *container,GTypelib      *typelib,guint32        offset
+</FUNCTION>
+<MACRO>
+<NAME>G_TYPE_IREPOSITORY</NAME>
+#define G_TYPE_IREPOSITORY      (g_irepository_get_type ())
+</MACRO>
+<MACRO>
+<NAME>G_IREPOSITORY</NAME>
+#define G_IREPOSITORY(obj)      (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_IREPOSITORY, GIRepository))
+</MACRO>
+<STRUCT>
+<NAME>GIRepository</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIRepositoryClass</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIRepositoryPrivate</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIBaseInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GICallableInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIFunctionInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GICallbackInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIRegisteredTypeInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIStructInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIUnionInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIEnumInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIObjectInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIInterfaceInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIConstantInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIValueInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GISignalInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIVFuncInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIPropertyInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIFieldInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIArgInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GITypeInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIErrorDomainInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIUnresolvedInfo</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GTypelib</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIRepository</NAME>
+struct _GIRepository 
+{ 
+  GObject parent; 
+
+  /*< private >*/
+  GIRepositoryPrivate *priv;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIRepositoryClass</NAME>
+struct _GIRepositoryClass
+{ 
+  GObjectClass parent; 
+};
+</STRUCT>
+<ENUM>
+<NAME>GIRepositoryLoadFlags</NAME>
+typedef enum
+{
+  G_IREPOSITORY_LOAD_FLAG_LAZY = 1 << 0
+} GIRepositoryLoadFlags;
+</ENUM>
+<FUNCTION>
+<NAME>g_irepository_get_type</NAME>
+<RETURNS>GType         </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_default</NAME>
+<RETURNS>GIRepository *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_prepend_search_path</NAME>
+<RETURNS>void          </RETURNS>
+const char *directory
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_search_path</NAME>
+<RETURNS>GSList *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_load_typelib</NAME>
+<RETURNS>const char *</RETURNS>
+GIRepository *repository,GTypelib     *typelib,GIRepositoryLoadFlags flags,GError      **error
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_is_registered</NAME>
+<RETURNS>gboolean      </RETURNS>
+GIRepository *repository,const gchar  *namespace_,const gchar  *version
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_find_by_name</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIRepository *repository,const gchar  *namespace_,const gchar  *name
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_require</NAME>
+<RETURNS>GTypelib *</RETURNS>
+GIRepository *repository,const gchar  *namespace_,const gchar  *version,GIRepositoryLoadFlags flags,GError      **error
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_dependencies</NAME>
+<RETURNS>gchar      **</RETURNS>
+GIRepository *repository,const gchar  *namespace_
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_loaded_namespaces</NAME>
+<RETURNS>gchar      **</RETURNS>
+GIRepository *repository
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_find_by_gtype</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIRepository *repository,GType         gtype
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_n_infos</NAME>
+<RETURNS>gint          </RETURNS>
+GIRepository *repository,const gchar  *namespace_
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_info</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIRepository *repository,const gchar  *namespace_,gint          index
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_typelib_path</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIRepository *repository,const gchar  *namespace_
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_shared_library</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIRepository *repository,const gchar  *namespace_
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_version</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIRepository *repository,const gchar  *namespace_
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_get_option_group</NAME>
+<RETURNS>GOptionGroup *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>g_irepository_dump</NAME>
+<RETURNS>gboolean       </RETURNS>
+const char *arg, GError **error
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_new_from_memory</NAME>
+<RETURNS>GTypelib *</RETURNS>
+guchar       *memory,gsize         len
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_new_from_const_memory</NAME>
+<RETURNS>GTypelib *</RETURNS>
+const guchar *memory,gsize         len
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_new_from_mapped_file</NAME>
+<RETURNS>GTypelib *</RETURNS>
+GMappedFile  *mfile
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_free</NAME>
+<RETURNS>void          </RETURNS>
+GTypelib    *typelib
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_symbol</NAME>
+<RETURNS>gboolean      </RETURNS>
+GTypelib    *typelib,const gchar *symbol_name,gpointer    *symbol
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_get_namespace</NAME>
+<RETURNS>const gchar *</RETURNS>
+GTypelib    *typelib
+</FUNCTION>
+<ENUM>
+<NAME>GIRepositoryError</NAME>
+typedef enum
+{
+  G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND,
+  G_IREPOSITORY_ERROR_NAMESPACE_MISMATCH,
+  G_IREPOSITORY_ERROR_NAMESPACE_VERSION_CONFLICT,
+  G_IREPOSITORY_ERROR_LIBRARY_NOT_FOUND
+} GIRepositoryError;
+</ENUM>
+<MACRO>
+<NAME>G_IREPOSITORY_ERROR</NAME>
+#define G_IREPOSITORY_ERROR (g_irepository_error_quark ())
+</MACRO>
+<FUNCTION>
+<NAME>g_irepository_error_quark</NAME>
+<RETURNS>GQuark </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>gi_cclosure_marshal_generic</NAME>
+<RETURNS>void </RETURNS>
+GClosure       *closure,GValue         *return_gvalue,guint           n_param_values,const GValue   *param_values,gpointer        invocation_hint,gpointer        marshal_data
+</FUNCTION>
+<ENUM>
+<NAME>GIInfoType</NAME>
+typedef enum 
+{
+  GI_INFO_TYPE_INVALID,
+  GI_INFO_TYPE_FUNCTION,
+  GI_INFO_TYPE_CALLBACK,
+  GI_INFO_TYPE_STRUCT,
+  GI_INFO_TYPE_BOXED,
+  GI_INFO_TYPE_ENUM,
+  GI_INFO_TYPE_FLAGS,
+  GI_INFO_TYPE_OBJECT,
+  GI_INFO_TYPE_INTERFACE,
+  GI_INFO_TYPE_CONSTANT,
+  GI_INFO_TYPE_ERROR_DOMAIN,
+  GI_INFO_TYPE_UNION,
+  GI_INFO_TYPE_VALUE,
+  GI_INFO_TYPE_SIGNAL,
+  GI_INFO_TYPE_VFUNC,
+  GI_INFO_TYPE_PROPERTY,
+  GI_INFO_TYPE_FIELD,
+  GI_INFO_TYPE_ARG,
+  GI_INFO_TYPE_TYPE,
+  GI_INFO_TYPE_UNRESOLVED
+} GIInfoType;
+</ENUM>
+<FUNCTION>
+<NAME>g_base_info_ref</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_unref</NAME>
+<RETURNS>void                   </RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_get_type</NAME>
+<RETURNS>GIInfoType             </RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_get_name</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_get_namespace</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_is_deprecated</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_get_annotation</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIBaseInfo   *info,const gchar  *name
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_get_container</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_base_info_get_typelib</NAME>
+<RETURNS>GTypelib *</RETURNS>
+GIBaseInfo   *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_info_new</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIInfoType    type,GIBaseInfo   *container,GTypelib     *typelib,guint32       offset
+</FUNCTION>
+<ENUM>
+<NAME>GIFunctionInfoFlags</NAME>
+typedef enum
+{
+  GI_FUNCTION_IS_METHOD      = 1 << 0,
+  GI_FUNCTION_IS_CONSTRUCTOR = 1 << 1,
+  GI_FUNCTION_IS_GETTER      = 1 << 2,
+  GI_FUNCTION_IS_SETTER      = 1 << 3,
+  GI_FUNCTION_WRAPS_VFUNC    = 1 << 4,
+  GI_FUNCTION_THROWS         = 1 << 5
+} GIFunctionInfoFlags;
+</ENUM>
+<FUNCTION>
+<NAME>g_function_info_get_symbol</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIFunctionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_function_info_get_flags</NAME>
+<RETURNS>GIFunctionInfoFlags     </RETURNS>
+GIFunctionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_function_info_get_property</NAME>
+<RETURNS>GIPropertyInfo *</RETURNS>
+GIFunctionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_function_info_get_vfunc</NAME>
+<RETURNS>GIVFuncInfo *</RETURNS>
+GIFunctionInfo *info
+</FUNCTION>
+<MACRO>
+<NAME>G_INVOKE_ERROR</NAME>
+#define G_INVOKE_ERROR (g_invoke_error_quark ())
+</MACRO>
+<FUNCTION>
+<NAME>g_invoke_error_quark</NAME>
+<RETURNS>GQuark </RETURNS>
+void
+</FUNCTION>
+<ENUM>
+<NAME>GInvokeError</NAME>
+typedef enum
+{
+  G_INVOKE_ERROR_FAILED,
+  G_INVOKE_ERROR_SYMBOL_NOT_FOUND,
+  G_INVOKE_ERROR_ARGUMENT_MISMATCH
+} GInvokeError;
+</ENUM>
+<FUNCTION>
+<NAME>g_function_info_invoke</NAME>
+<RETURNS>gboolean              </RETURNS>
+GIFunctionInfo *info,const GArgument  *in_args,int               n_in_args,const GArgument  *out_args,int               n_out_args,GArgument        *return_value,GError          **error
+</FUNCTION>
+<ENUM>
+<NAME>GITransfer</NAME>
+typedef enum {
+  GI_TRANSFER_NOTHING,
+  GI_TRANSFER_CONTAINER,
+  GI_TRANSFER_EVERYTHING
+} GITransfer;
+</ENUM>
+<FUNCTION>
+<NAME>g_callable_info_get_return_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GICallableInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_get_caller_owns</NAME>
+<RETURNS>GITransfer             </RETURNS>
+GICallableInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_may_return_null</NAME>
+<RETURNS>gboolean               </RETURNS>
+GICallableInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_get_n_args</NAME>
+<RETURNS>gint                   </RETURNS>
+GICallableInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_get_arg</NAME>
+<RETURNS>GIArgInfo *</RETURNS>
+GICallableInfo *info,gint           n
+</FUNCTION>
+<ENUM>
+<NAME>GIDirection</NAME>
+typedef enum  {
+  GI_DIRECTION_IN,
+  GI_DIRECTION_OUT,
+  GI_DIRECTION_INOUT
+} GIDirection;
+</ENUM>
+<ENUM>
+<NAME>GIScopeType</NAME>
+typedef enum {
+  GI_SCOPE_TYPE_INVALID,
+  GI_SCOPE_TYPE_CALL,
+  GI_SCOPE_TYPE_OBJECT,
+  GI_SCOPE_TYPE_ASYNC,
+  GI_SCOPE_TYPE_NOTIFIED
+} GIScopeType;
+</ENUM>
+<FUNCTION>
+<NAME>g_arg_info_get_direction</NAME>
+<RETURNS>GIDirection            </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_is_dipper</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_is_return_value</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_is_optional</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_may_be_null</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_get_ownership_transfer</NAME>
+<RETURNS>GITransfer             </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_get_scope</NAME>
+<RETURNS>GIScopeType            </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_get_closure</NAME>
+<RETURNS>gint                   </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_get_destroy</NAME>
+<RETURNS>gint                   </RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_arg_info_get_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GIArgInfo *info
+</FUNCTION>
+<ENUM>
+<NAME>GITypeTag</NAME>
+typedef enum {
+  /* Basic types */
+  GI_TYPE_TAG_VOID      =  0,
+  GI_TYPE_TAG_BOOLEAN   =  1,
+  GI_TYPE_TAG_INT8      =  2,
+  GI_TYPE_TAG_UINT8     =  3,
+  GI_TYPE_TAG_INT16     =  4,
+  GI_TYPE_TAG_UINT16    =  5,  
+  GI_TYPE_TAG_INT32     =  6,
+  GI_TYPE_TAG_UINT32    =  7,
+  GI_TYPE_TAG_INT64     =  8,
+  GI_TYPE_TAG_UINT64    =  9,
+  GI_TYPE_TAG_INT       = 10,
+  GI_TYPE_TAG_UINT      = 11,
+  GI_TYPE_TAG_LONG      = 12,
+  GI_TYPE_TAG_ULONG     = 13,
+  GI_TYPE_TAG_SSIZE     = 14,
+  GI_TYPE_TAG_SIZE      = 15,
+  GI_TYPE_TAG_FLOAT     = 16,
+  GI_TYPE_TAG_DOUBLE    = 17,
+  GI_TYPE_TAG_TIME_T    = 18,
+  GI_TYPE_TAG_GTYPE     = 19,
+  GI_TYPE_TAG_UTF8      = 20,
+  GI_TYPE_TAG_FILENAME  = 21,
+  /* Non-basic types */
+  GI_TYPE_TAG_ARRAY     = 22,
+  GI_TYPE_TAG_INTERFACE = 23,
+  GI_TYPE_TAG_GLIST     = 24,
+  GI_TYPE_TAG_GSLIST    = 25,
+  GI_TYPE_TAG_GHASH     = 26,
+  GI_TYPE_TAG_ERROR     = 27
+  /* Note - there is only room currently for 32 tags.
+   * See docs/typelib-format.txt SimpleTypeBlob definition */
+} GITypeTag;
+</ENUM>
+<MACRO>
+<NAME>G_TYPE_TAG_IS_BASIC</NAME>
+#define G_TYPE_TAG_IS_BASIC(tag) (tag < GI_TYPE_TAG_ARRAY)
+</MACRO>
+<FUNCTION>
+<NAME>g_type_tag_to_string</NAME>
+<RETURNS>const gchar*</RETURNS>
+GITypeTag   type
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_is_pointer</NAME>
+<RETURNS>gboolean               </RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_tag</NAME>
+<RETURNS>GITypeTag              </RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_param_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GITypeInfo *info,gint       n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_interface</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_array_length</NAME>
+<RETURNS>gint                   </RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_array_fixed_size</NAME>
+<RETURNS>gint                   </RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_is_zero_terminated</NAME>
+<RETURNS>gboolean               </RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_n_error_domains</NAME>
+<RETURNS>gint                   </RETURNS>
+GITypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_type_info_get_error_domain</NAME>
+<RETURNS>GIErrorDomainInfo     *</RETURNS>
+GITypeInfo *info,gint       n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_error_domain_info_get_quark</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIErrorDomainInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_error_domain_info_get_codes</NAME>
+<RETURNS>GIInterfaceInfo *</RETURNS>
+GIErrorDomainInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_value_info_get_value</NAME>
+<RETURNS>glong                  </RETURNS>
+GIValueInfo *info
+</FUNCTION>
+<ENUM>
+<NAME>GIFieldInfoFlags</NAME>
+typedef enum
+{
+  GI_FIELD_IS_READABLE = 1 << 0,
+  GI_FIELD_IS_WRITABLE = 1 << 1
+} GIFieldInfoFlags;
+</ENUM>
+<FUNCTION>
+<NAME>g_field_info_get_flags</NAME>
+<RETURNS>GIFieldInfoFlags       </RETURNS>
+GIFieldInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_field_info_get_size</NAME>
+<RETURNS>gint                   </RETURNS>
+GIFieldInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_field_info_get_offset</NAME>
+<RETURNS>gint                   </RETURNS>
+GIFieldInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_field_info_get_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GIFieldInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_field_info_get_field</NAME>
+<RETURNS>gboolean </RETURNS>
+GIFieldInfo     *field_info,gpointer         mem,GArgument       *value
+</FUNCTION>
+<FUNCTION>
+<NAME>g_field_info_set_field</NAME>
+<RETURNS>gboolean </RETURNS>
+GIFieldInfo     *field_info,gpointer         mem,const GArgument *value
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_n_fields</NAME>
+<RETURNS>gint                   </RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_field</NAME>
+<RETURNS>GIFieldInfo *</RETURNS>
+GIUnionInfo *info,gint         n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_n_methods</NAME>
+<RETURNS>gint                   </RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIUnionInfo *info,gint         n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_is_discriminated</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_discriminator_offset</NAME>
+<RETURNS>gint                   </RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_discriminator_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_discriminator</NAME>
+<RETURNS>GIConstantInfo *</RETURNS>
+GIUnionInfo *info,gint         n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_find_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIUnionInfo *info,const gchar *name
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_size</NAME>
+<RETURNS>gsize                  </RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_union_info_get_alignment</NAME>
+<RETURNS>gsize                  </RETURNS>
+GIUnionInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_get_n_fields</NAME>
+<RETURNS>gint                   </RETURNS>
+GIStructInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_get_field</NAME>
+<RETURNS>GIFieldInfo *</RETURNS>
+GIStructInfo *info,gint         n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_get_n_methods</NAME>
+<RETURNS>gint                   </RETURNS>
+GIStructInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_get_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIStructInfo *info,gint         n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_find_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIStructInfo *info,const gchar *name
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_get_size</NAME>
+<RETURNS>gsize                  </RETURNS>
+GIStructInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_get_alignment</NAME>
+<RETURNS>gsize                  </RETURNS>
+GIStructInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_struct_info_is_class_struct</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIStructInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_registered_type_info_get_type_name</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIRegisteredTypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_registered_type_info_get_type_init</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIRegisteredTypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_registered_type_info_get_g_type</NAME>
+<RETURNS>GType                  </RETURNS>
+GIRegisteredTypeInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_enum_info_get_n_values</NAME>
+<RETURNS>gint                   </RETURNS>
+GIEnumInfo      *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_enum_info_get_value</NAME>
+<RETURNS>GIValueInfo  *</RETURNS>
+GIEnumInfo      *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_enum_info_get_storage_type</NAME>
+<RETURNS>GITypeTag              </RETURNS>
+GIEnumInfo      *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_type_name</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_type_init</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_abstract</NAME>
+<RETURNS>gboolean               </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_parent</NAME>
+<RETURNS>GIObjectInfo *</RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_interfaces</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_interface</NAME>
+<RETURNS>GIInterfaceInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_fields</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_field</NAME>
+<RETURNS>GIFieldInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_properties</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_property</NAME>
+<RETURNS>GIPropertyInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_methods</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_find_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIObjectInfo *info,const gchar *name
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_signals</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_signal</NAME>
+<RETURNS>GISignalInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_vfuncs</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_vfunc</NAME>
+<RETURNS>GIVFuncInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_n_constants</NAME>
+<RETURNS>gint                   </RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_constant</NAME>
+<RETURNS>GIConstantInfo *</RETURNS>
+GIObjectInfo    *info,gint            n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_object_info_get_class_struct</NAME>
+<RETURNS>GIStructInfo *</RETURNS>
+GIObjectInfo    *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_n_prerequisites</NAME>
+<RETURNS>gint                   </RETURNS>
+GIInterfaceInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_prerequisite</NAME>
+<RETURNS>GIBaseInfo *</RETURNS>
+GIInterfaceInfo *info,gint        n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_n_properties</NAME>
+<RETURNS>gint                   </RETURNS>
+GIInterfaceInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_property</NAME>
+<RETURNS>GIPropertyInfo *</RETURNS>
+GIInterfaceInfo *info,gint        n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_n_methods</NAME>
+<RETURNS>gint                   </RETURNS>
+GIInterfaceInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIInterfaceInfo *info,gint        n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_find_method</NAME>
+<RETURNS>GIFunctionInfo *</RETURNS>
+GIInterfaceInfo *info,const gchar *name
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_n_signals</NAME>
+<RETURNS>gint                   </RETURNS>
+GIInterfaceInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_signal</NAME>
+<RETURNS>GISignalInfo *</RETURNS>
+GIInterfaceInfo *info,gint        n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_n_vfuncs</NAME>
+<RETURNS>gint                   </RETURNS>
+GIInterfaceInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_vfunc</NAME>
+<RETURNS>GIVFuncInfo *</RETURNS>
+GIInterfaceInfo *info,gint        n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_n_constants</NAME>
+<RETURNS>gint                   </RETURNS>
+GIInterfaceInfo *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_interface_info_get_constant</NAME>
+<RETURNS>GIConstantInfo *</RETURNS>
+GIInterfaceInfo *info,gint        n
+</FUNCTION>
+<FUNCTION>
+<NAME>g_property_info_get_flags</NAME>
+<RETURNS>GParamFlags             </RETURNS>
+GIPropertyInfo         *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_property_info_get_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GIPropertyInfo         *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_signal_info_get_flags</NAME>
+<RETURNS>GSignalFlags            </RETURNS>
+GISignalInfo           *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_signal_info_get_class_closure</NAME>
+<RETURNS>GIVFuncInfo *</RETURNS>
+GISignalInfo           *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_signal_info_true_stops_emit</NAME>
+<RETURNS>gboolean                </RETURNS>
+GISignalInfo           *info
+</FUNCTION>
+<ENUM>
+<NAME>GIVFuncInfoFlags</NAME>
+typedef enum
+{
+  GI_VFUNC_MUST_CHAIN_UP     = 1 << 0,
+  GI_VFUNC_MUST_OVERRIDE     = 1 << 1,
+  GI_VFUNC_MUST_NOT_OVERRIDE = 1 << 2
+} GIVFuncInfoFlags;
+</ENUM>
+<FUNCTION>
+<NAME>g_vfunc_info_get_flags</NAME>
+<RETURNS>GIVFuncInfoFlags        </RETURNS>
+GIVFuncInfo            *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_vfunc_info_get_offset</NAME>
+<RETURNS>gint                    </RETURNS>
+GIVFuncInfo            *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_vfunc_info_get_signal</NAME>
+<RETURNS>GISignalInfo *</RETURNS>
+GIVFuncInfo            *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_constant_info_get_type</NAME>
+<RETURNS>GITypeInfo *</RETURNS>
+GIConstantInfo         *info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_constant_info_get_value</NAME>
+<RETURNS>gint                    </RETURNS>
+GIConstantInfo         *info,GArgument             *value
+</FUNCTION>
+<USER_FUNCTION>
+<NAME>GIFFIClosureCallback</NAME>
+<RETURNS>void </RETURNS>
+ffi_cif *,
+                                      void *,
+                                      void **,
+                                      void *
+</USER_FUNCTION>
+<FUNCTION>
+<NAME>g_ir_ffi_get_ffi_type</NAME>
+<RETURNS>ffi_type *</RETURNS>
+GITypeTag             tag
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_get_ffi_arg_types</NAME>
+<RETURNS>ffi_type **</RETURNS>
+GICallableInfo       *callable_info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_get_ffi_return_type</NAME>
+<RETURNS>ffi_type *</RETURNS>
+GICallableInfo       *callable_info
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_prepare_closure</NAME>
+<RETURNS>ffi_closure *</RETURNS>
+GICallableInfo       *callable_info,ffi_cif              *cif,GIFFIClosureCallback  callback,gpointer              user_data
+</FUNCTION>
+<FUNCTION>
+<NAME>g_callable_info_free_closure</NAME>
+<RETURNS>void          </RETURNS>
+GICallableInfo       *callable_info,ffi_closure          *closure
+</FUNCTION>
+<STRUCT>
+<NAME>GIrModule</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrModule</NAME>
+struct _GIrModule
+{ 
+  gchar *name;
+  gchar *version;
+  gchar *shared_library;
+  GList *dependencies;
+  GList *entries;
+
+  /* All modules that are included directly or indirectly */
+  GList *include_modules;
+
+  /* Aliases defined in the module or in included modules */
+  GHashTable *aliases;
+
+  /* Structures with the 'disguised' flag (typedef struct _X *X)
+  * in the module or in included modules */
+  GHashTable *disguised_structures;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>g_ir_module_new</NAME>
+<RETURNS>GIrModule *</RETURNS>
+const gchar *name,const gchar *nsversion,const gchar *module_filename
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_module_free</NAME>
+<RETURNS>void       </RETURNS>
+GIrModule  *module
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_module_add_include_module</NAME>
+<RETURNS>void       </RETURNS>
+GIrModule  *module,GIrModule  *include_module
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_module_build_typelib</NAME>
+<RETURNS>GTypelib *</RETURNS>
+GIrModule  *module,GList       *modules
+</FUNCTION>
+<STRUCT>
+<NAME>GIrNode</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeFunction</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeParam</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeType</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeInterface</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeSignal</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeProperty</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeVFunc</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeField</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeValue</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeEnum</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeBoxed</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeStruct</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeConstant</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeErrorDomain</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeXRef</NAME>
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeUnion</NAME>
+</STRUCT>
+<ENUM>
+<NAME>GIrNodeTypeId</NAME>
+typedef enum 
+{
+  G_IR_NODE_INVALID      =  0,
+  G_IR_NODE_FUNCTION     =  1,
+  G_IR_NODE_CALLBACK     =  2,
+  G_IR_NODE_STRUCT       =  3,
+  G_IR_NODE_BOXED        =  4,
+  G_IR_NODE_ENUM         =  5,
+  G_IR_NODE_FLAGS        =  6, 
+  G_IR_NODE_OBJECT       =  7,
+  G_IR_NODE_INTERFACE    =  8,
+  G_IR_NODE_CONSTANT     =  9,
+  G_IR_NODE_ERROR_DOMAIN = 10,
+  G_IR_NODE_UNION        = 11,
+  G_IR_NODE_PARAM        = 12,
+  G_IR_NODE_TYPE         = 13,
+  G_IR_NODE_PROPERTY     = 14,
+  G_IR_NODE_SIGNAL       = 15,
+  G_IR_NODE_VALUE        = 16,
+  G_IR_NODE_VFUNC        = 17,
+  G_IR_NODE_FIELD        = 18,
+  G_IR_NODE_XREF         = 19
+} GIrNodeTypeId;
+</ENUM>
+<STRUCT>
+<NAME>GIrNode</NAME>
+struct _GIrNode
+{
+  GIrNodeTypeId type;
+  gchar *name;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeXRef</NAME>
+struct _GIrNodeXRef
+{
+  GIrNode node;
+
+  gchar *namespace;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeFunction</NAME>
+struct _GIrNodeFunction
+{
+  GIrNode node;
+
+  gboolean deprecated;
+  gboolean is_varargs; /* Not in typelib yet */ 
+
+  gboolean is_method;
+  gboolean is_setter;
+  gboolean is_getter;
+  gboolean is_constructor;
+  gboolean wraps_vfunc;
+  gboolean throws;
+
+  gchar *symbol;
+
+  GIrNodeParam *result;
+  GList *parameters;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeType</NAME>
+struct _GIrNodeType 
+{
+  GIrNode node;
+
+  gboolean is_pointer;
+  gboolean is_basic;
+  gboolean is_array;
+  gboolean is_glist;
+  gboolean is_gslist;
+  gboolean is_ghashtable;
+  gboolean is_interface;
+  gboolean is_error;
+  gint tag;
+
+  gchar *unparsed;
+
+  gboolean zero_terminated;
+  gboolean has_length;
+  gint length;
+  gboolean has_size;
+  gint size;
+  
+  GIrNodeType *parameter_type1;
+  GIrNodeType *parameter_type2;  
+
+  gchar *interface;
+  gchar **errors;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeParam</NAME>
+struct _GIrNodeParam 
+{
+  GIrNode node;
+
+  gboolean in;
+  gboolean out;
+  gboolean dipper;
+  gboolean optional;
+  gboolean retval;
+  gboolean allow_none;
+  gboolean transfer;
+  gboolean shallow_transfer;
+  GIScopeType scope;
+  
+  gint8 closure;
+  gint8 destroy;
+  
+  GIrNodeType *type;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeProperty</NAME>
+struct _GIrNodeProperty
+{
+  GIrNode node;
+
+  gboolean deprecated;
+
+  gchar *name;
+  gboolean readable;
+  gboolean writable;
+  gboolean construct;
+  gboolean construct_only;
+  
+  GIrNodeType *type;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeSignal</NAME>
+struct _GIrNodeSignal 
+{
+  GIrNode node;
+
+  gboolean deprecated;
+
+  gboolean run_first;
+  gboolean run_last;
+  gboolean run_cleanup;
+  gboolean no_recurse;
+  gboolean detailed;
+  gboolean action;
+  gboolean no_hooks;
+  
+  gboolean has_class_closure;
+  gboolean true_stops_emit;
+  
+  gint class_closure;
+  
+  GList *parameters;
+  GIrNodeParam *result;    
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeVFunc</NAME>
+struct _GIrNodeVFunc 
+{
+  GIrNode node;
+
+  gboolean is_varargs; /* Not in typelib yet */ 
+  gboolean must_chain_up;
+  gboolean must_be_implemented;
+  gboolean must_not_be_implemented;
+  gboolean is_class_closure;
+  
+  GList *parameters;
+  GIrNodeParam *result;      
+
+  gint offset;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeField</NAME>
+struct _GIrNodeField
+{
+  GIrNode node;
+
+  gboolean readable;
+  gboolean writable;
+  gint bits;
+  gint offset;
+  
+  GIrNodeType *type;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeInterface</NAME>
+struct _GIrNodeInterface
+{
+  GIrNode node;
+
+  gboolean abstract;
+  gboolean deprecated;
+
+  gchar *gtype_name;
+  gchar *gtype_init;
+
+  gchar *parent;
+  gchar *class_struct; /* Only applies to classes */
+  
+  GList *interfaces;
+  GList *prerequisites;
+
+  gint alignment;
+  gint size;
+  
+  GList *members;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeValue</NAME>
+struct _GIrNodeValue
+{
+  GIrNode node;
+
+  gboolean deprecated;
+
+  guint32 value;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeConstant</NAME>
+struct _GIrNodeConstant
+{
+  GIrNode node;
+
+  gboolean deprecated;
+
+  GIrNodeType *type;
+  
+  gchar *value;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeEnum</NAME>
+struct _GIrNodeEnum
+{
+  GIrNode node;
+
+  gboolean deprecated;
+  gint storage_type;
+
+  gchar *gtype_name;
+  gchar *gtype_init;
+
+  GList *values;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeBoxed</NAME>
+struct _GIrNodeBoxed
+{ 
+  GIrNode node;
+
+  gboolean deprecated;
+
+  gchar *gtype_name;
+  gchar *gtype_init;
+
+  gint alignment;
+  gint size;
+  
+  GList *members;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeStruct</NAME>
+struct _GIrNodeStruct
+{
+  GIrNode node;
+
+  gboolean deprecated;
+  gboolean disguised;
+  gboolean is_gclass_struct;
+
+  gchar *gtype_name;
+  gchar *gtype_init;
+
+  gint alignment;
+  gint size;
+  
+  GList *members;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeUnion</NAME>
+struct _GIrNodeUnion
+{
+  GIrNode node;
+
+  gboolean deprecated;
+  
+  GList *members;
+  GList *discriminators;
+
+  gchar *gtype_name;
+  gchar *gtype_init;
+
+  gint alignment;
+  gint size;
+
+  gint discriminator_offset;
+  GIrNodeType *discriminator_type;
+};
+</STRUCT>
+<STRUCT>
+<NAME>GIrNodeErrorDomain</NAME>
+struct _GIrNodeErrorDomain
+{
+  GIrNode node;
+
+  gboolean deprecated;
+  
+  gchar *name;
+  gchar *getquark;
+  gchar *codes;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>g_ir_node_new</NAME>
+<RETURNS>GIrNode *</RETURNS>
+GIrNodeTypeId type
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_free</NAME>
+<RETURNS>void      </RETURNS>
+GIrNode    *node
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_get_size</NAME>
+<RETURNS>guint32   </RETURNS>
+GIrNode    *node
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_get_full_size</NAME>
+<RETURNS>guint32   </RETURNS>
+GIrNode    *node
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_build_typelib</NAME>
+<RETURNS>void      </RETURNS>
+GIrNode    *node,GIrModule  *module,GList       *modules,GHashTable  *strings,GHashTable  *types,guchar      *data,guint32     *offset,guint32     *offset2
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_cmp</NAME>
+<RETURNS>int       </RETURNS>
+GIrNode    *node,GIrNode    *other
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_can_have_member</NAME>
+<RETURNS>gboolean  </RETURNS>
+GIrNode    *node
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_add_member</NAME>
+<RETURNS>void      </RETURNS>
+GIrNode         *node,GIrNodeFunction *member
+</FUNCTION>
+<FUNCTION>
+<NAME>write_string</NAME>
+<RETURNS>guint32   </RETURNS>
+const gchar *str,GHashTable  *strings,guchar      *data,guint32     *offset
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_param_direction_string</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIrNodeParam * node
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_type_to_string</NAME>
+<RETURNS>const gchar *</RETURNS>
+GIrNodeTypeId type
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_find_node</NAME>
+<RETURNS>gboolean </RETURNS>
+GIrModule  *module,GList      *modules,const char *name,GIrNode   **node_out,GIrModule **module_out
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_node_compute_offsets</NAME>
+<RETURNS>void </RETURNS>
+GIrNode   *node,GIrModule *module,GList     *modules
+</FUNCTION>
+<STRUCT>
+<NAME>GIrParser</NAME>
+</STRUCT>
+<FUNCTION>
+<NAME>g_ir_parser_new</NAME>
+<RETURNS>GIrParser *</RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_parser_free</NAME>
+<RETURNS>void       </RETURNS>
+GIrParser          *parser
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_parser_set_includes</NAME>
+<RETURNS>void       </RETURNS>
+GIrParser          *parser,const gchar *const *includes
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_parser_parse_string</NAME>
+<RETURNS>GList *</RETURNS>
+GIrParser    *parser,const gchar  *namespace,const gchar  *buffer,gssize        length,GError      **error
+</FUNCTION>
+<FUNCTION>
+<NAME>g_ir_parser_parse_file</NAME>
+<RETURNS>GList *</RETURNS>
+GIrParser    *parser,const gchar  *filename,GError      **error
+</FUNCTION>
+<FUNCTION>
+<NAME>g_idl_writer_save_file</NAME>
+<RETURNS>void </RETURNS>
+GIdlModule *module, const gchar *filename
+</FUNCTION>
+<MACRO>
+<NAME>G_IR_MAGIC</NAME>
+#define G_IR_MAGIC "GOBJ\nMETADATA\r\n\032"
+</MACRO>
+<MACRO>
+<NAME>BLOB_IS_REGISTERED_TYPE</NAME>
+#define BLOB_IS_REGISTERED_TYPE(blob)               \
+        ((blob)->blob_type == BLOB_TYPE_STRUCT ||   \
+         (blob)->blob_type == BLOB_TYPE_UNION  ||   \
+         (blob)->blob_type == BLOB_TYPE_ENUM   ||   \
+         (blob)->blob_type == BLOB_TYPE_OBJECT ||   \
+         (blob)->blob_type == BLOB_TYPE_INTERFACE)
+</MACRO>
+<STRUCT>
+<NAME>GTypelib</NAME>
+struct _GTypelib {
+  guchar *data;
+  gsize len;
+  gboolean owns_memory;
+  GMappedFile *mfile;
+  GList *modules;
+};
+</STRUCT>
+<FUNCTION>
+<NAME>g_typelib_get_dir_entry</NAME>
+<RETURNS>DirEntry *</RETURNS>
+GTypelib *typelib,guint16   index
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_check_sanity</NAME>
+<RETURNS>void      </RETURNS>
+void
+</FUNCTION>
+<MACRO>
+<NAME>g_typelib_get_string</NAME>
+#define   g_typelib_get_string(typelib,offset) ((const gchar*)&(typelib->data)[(offset)])
+</MACRO>
+<ENUM>
+<NAME>GTypelibError</NAME>
+typedef enum
+{
+  G_TYPELIB_ERROR_INVALID,
+  G_TYPELIB_ERROR_INVALID_HEADER,
+  G_TYPELIB_ERROR_INVALID_DIRECTORY,
+  G_TYPELIB_ERROR_INVALID_ENTRY,
+  G_TYPELIB_ERROR_INVALID_BLOB
+} GTypelibError;
+</ENUM>
+<MACRO>
+<NAME>G_TYPELIB_ERROR</NAME>
+#define G_TYPELIB_ERROR (g_typelib_error_quark ())
+</MACRO>
+<FUNCTION>
+<NAME>g_typelib_error_quark</NAME>
+<RETURNS>GQuark </RETURNS>
+void
+</FUNCTION>
+<FUNCTION>
+<NAME>g_typelib_validate</NAME>
+<RETURNS>gboolean </RETURNS>
+GTypelib  *typelib,GError    **error
+</FUNCTION>
diff --git a/docs/reference/gi-docs.sgml b/docs/reference/gi-docs.sgml
new file mode 100644 (file)
index 0000000..1a40904
--- /dev/null
@@ -0,0 +1,64 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+<!ENTITY gi-ginfo SYSTEM "xml/ginfo.xml">
+<!ENTITY gi-girepository SYSTEM "xml/girepository.xml">
+<!ENTITY gi-girffi SYSTEM "xml/girffi.xml">
+<!ENTITY gi-girmodule SYSTEM "xml/girmodule.xml">
+<!ENTITY gi-girnode SYSTEM "xml/girnode.xml">
+<!ENTITY gi-girparser SYSTEM "xml/girparser.xml">
+<!ENTITY gi-girwriter SYSTEM "xml/girwriter.xml">
+<!ENTITY gi-gtypelib SYSTEM "xml/gtypelib.xml">
+
+<!ENTITY version SYSTEM "version.xml">
+]>
+<book id="index">
+  <bookinfo>
+    <title>GObject Introspection Reference Manual</title>
+  </bookinfo>
+
+  <chapter id="glib">
+    <title>GObject-Introspection Overview</title>
+    <para>
+Bla bla bla bla bla
+    </para>
+<!--
+    &gi-overview;
+    &gi-building;
+-->
+  </chapter>
+<!--
+  <chapter id="gi-gir">
+    <title>GIR markup format</title>
+    &gi-gir-overview;
+    &gi-gir-creating;
+    &gi-gir-parsing;
+    &gi-gir-verifying;
+  </chapter>
+-->
+
+  <chapter id="gi-typelib">
+    <title>typelib</title>
+    &gi-gtypelib;
+  </chapter>
+
+  <chapter id="gi-girepository">
+    <title>GIRepository</title>
+    &gi-girepository;
+    &gi-ginfo;
+    &gi-girmodule;
+    &gi-girparser;
+    &gi-girwriter;
+    &gi-girffi;
+  </chapter>
+
+<!--
+  <chapter id="tools">
+    <title>GObject Introspection Tools</title>
+
+    &g-ir-scanner;
+    &g-ir-compiler;
+    &g-ir-generator;
+  </chapter>
+-->
+</book>
diff --git a/docs/reference/gi-overrides.txt b/docs/reference/gi-overrides.txt
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/docs/reference/gi-sections.txt b/docs/reference/gi-sections.txt
new file mode 100644 (file)
index 0000000..0371c70
--- /dev/null
@@ -0,0 +1,279 @@
+<SECTION>
+<FILE>girepository</FILE>
+G_TYPE_IREPOSITORY
+G_IREPOSITORY
+GIRepositoryPrivate
+GIBaseInfo
+GICallableInfo
+GIFunctionInfo
+GICallbackInfo
+GIRegisteredTypeInfo
+GIStructInfo
+GIUnionInfo
+GIEnumInfo
+GIObjectInfo
+GIInterfaceInfo
+GIConstantInfo
+GIValueInfo
+GISignalInfo
+GIVFuncInfo
+GIPropertyInfo
+GIFieldInfo
+GIArgInfo
+GITypeInfo
+GIErrorDomainInfo
+GIUnresolvedInfo
+GTypelib
+<TITLE>GIRepository</TITLE>
+GIRepository
+GIRepositoryLoadFlags
+g_irepository_get_default
+g_irepository_prepend_search_path
+g_irepository_get_search_path
+g_irepository_load_typelib
+g_irepository_is_registered
+g_irepository_find_by_name
+g_irepository_require
+g_irepository_get_dependencies
+g_irepository_get_loaded_namespaces
+g_irepository_find_by_gtype
+g_irepository_get_n_infos
+g_irepository_get_info
+g_irepository_get_typelib_path
+g_irepository_get_shared_library
+g_irepository_get_version
+g_irepository_get_option_group
+g_irepository_dump
+g_typelib_new_from_memory
+g_typelib_new_from_const_memory
+g_typelib_new_from_mapped_file
+g_typelib_free
+g_typelib_symbol
+g_typelib_get_namespace
+GIRepositoryError
+G_IREPOSITORY_ERROR
+g_irepository_error_quark
+gi_cclosure_marshal_generic
+GIInfoType
+g_base_info_ref
+g_base_info_unref
+g_base_info_get_type
+g_base_info_get_name
+g_base_info_get_namespace
+g_base_info_is_deprecated
+g_base_info_get_annotation
+g_base_info_get_container
+g_base_info_get_typelib
+g_info_new
+GIFunctionInfoFlags
+g_function_info_get_symbol
+g_function_info_get_flags
+g_function_info_get_property
+g_function_info_get_vfunc
+G_INVOKE_ERROR
+g_invoke_error_quark
+GInvokeError
+g_function_info_invoke
+GITransfer
+g_callable_info_get_return_type
+g_callable_info_get_caller_owns
+g_callable_info_may_return_null
+g_callable_info_get_n_args
+g_callable_info_get_arg
+GIDirection
+GIScopeType
+g_arg_info_get_direction
+g_arg_info_is_dipper
+g_arg_info_is_return_value
+g_arg_info_is_optional
+g_arg_info_may_be_null
+g_arg_info_get_ownership_transfer
+g_arg_info_get_scope
+g_arg_info_get_closure
+g_arg_info_get_destroy
+g_arg_info_get_type
+GITypeTag
+g_type_tag_to_string
+g_type_info_is_pointer
+g_type_info_get_tag
+g_type_info_get_param_type
+g_type_info_get_interface
+g_type_info_get_array_length
+g_type_info_get_array_fixed_size
+g_type_info_is_zero_terminated
+g_type_info_get_n_error_domains
+g_type_info_get_error_domain
+g_error_domain_info_get_quark
+g_error_domain_info_get_codes
+g_value_info_get_value
+GIFieldInfoFlags
+g_field_info_get_flags
+g_field_info_get_size
+g_field_info_get_offset
+g_field_info_get_type
+g_field_info_get_field
+g_field_info_set_field
+g_union_info_get_n_fields
+g_union_info_get_field
+g_union_info_get_n_methods
+g_union_info_get_method
+g_union_info_is_discriminated
+g_union_info_get_discriminator_offset
+g_union_info_get_discriminator_type
+g_union_info_get_discriminator
+g_union_info_find_method
+g_union_info_get_size
+g_union_info_get_alignment
+g_struct_info_get_n_fields
+g_struct_info_get_field
+g_struct_info_get_n_methods
+g_struct_info_get_method
+g_struct_info_find_method
+g_struct_info_get_size
+g_struct_info_get_alignment
+g_struct_info_is_class_struct
+g_registered_type_info_get_type_name
+g_registered_type_info_get_type_init
+g_registered_type_info_get_g_type
+g_enum_info_get_n_values
+g_enum_info_get_value
+g_enum_info_get_storage_type
+g_object_info_get_type_name
+g_object_info_get_type_init
+g_object_info_get_abstract
+g_object_info_get_parent
+g_object_info_get_n_interfaces
+g_object_info_get_interface
+g_object_info_get_n_fields
+g_object_info_get_field
+g_object_info_get_n_properties
+g_object_info_get_property
+g_object_info_get_n_methods
+g_object_info_get_method
+g_object_info_find_method
+g_object_info_get_n_signals
+g_object_info_get_signal
+g_object_info_get_n_vfuncs
+g_object_info_get_vfunc
+g_object_info_get_n_constants
+g_object_info_get_constant
+g_object_info_get_class_struct
+g_interface_info_get_n_prerequisites
+g_interface_info_get_prerequisite
+g_interface_info_get_n_properties
+g_interface_info_get_property
+g_interface_info_get_n_methods
+g_interface_info_get_method
+g_interface_info_find_method
+g_interface_info_get_n_signals
+g_interface_info_get_signal
+g_interface_info_get_n_vfuncs
+g_interface_info_get_vfunc
+g_interface_info_get_n_constants
+g_interface_info_get_constant
+g_property_info_get_flags
+g_property_info_get_type
+g_signal_info_get_flags
+g_signal_info_get_class_closure
+g_signal_info_true_stops_emit
+GIVFuncInfoFlags
+g_vfunc_info_get_flags
+g_vfunc_info_get_offset
+g_vfunc_info_get_signal
+g_constant_info_get_type
+g_constant_info_get_value
+<SUBSECTION Standard>
+G_TYPE_TAG_IS_BASIC
+g_irepository_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gtypelib</FILE>
+G_IR_MAGIC
+GTypelib
+g_typelib_get_dir_entry
+g_typelib_check_sanity
+g_typelib_get_string
+GTypelibError
+G_TYPELIB_ERROR
+g_typelib_error_quark
+g_typelib_validate
+<SUBSECTION Standard>
+BLOB_IS_REGISTERED_TYPE
+</SECTION>
+
+<SECTION>
+<FILE>ginfo</FILE>
+g_type_info_new
+g_info_new_full
+</SECTION>
+
+<SECTION>
+<FILE>girffi</FILE>
+GIFFIClosureCallback
+g_ir_ffi_get_ffi_type
+g_callable_info_get_ffi_arg_types
+g_callable_info_get_ffi_return_type
+g_callable_info_prepare_closure
+g_callable_info_free_closure
+</SECTION>
+
+<SECTION>
+<FILE>girmodule</FILE>
+GIrModule
+g_ir_module_new
+g_ir_module_free
+g_ir_module_add_include_module
+g_ir_module_build_typelib
+</SECTION>
+
+<SECTION>
+<FILE>girnode</FILE>
+GIrNode
+GIrNodeFunction
+GIrNodeParam
+GIrNodeType
+GIrNodeInterface
+GIrNodeSignal
+GIrNodeProperty
+GIrNodeVFunc
+GIrNodeField
+GIrNodeValue
+GIrNodeEnum
+GIrNodeBoxed
+GIrNodeStruct
+GIrNodeConstant
+GIrNodeErrorDomain
+GIrNodeXRef
+GIrNodeUnion
+GIrNodeTypeId
+g_ir_node_new
+g_ir_node_free
+g_ir_node_get_size
+g_ir_node_get_full_size
+g_ir_node_build_typelib
+g_ir_node_cmp
+g_ir_node_can_have_member
+g_ir_node_add_member
+write_string
+g_ir_node_param_direction_string
+g_ir_node_type_to_string
+g_ir_find_node
+g_ir_node_compute_offsets
+</SECTION>
+
+<SECTION>
+<FILE>girparser</FILE>
+GIrParser
+g_ir_parser_new
+g_ir_parser_free
+g_ir_parser_set_includes
+g_ir_parser_parse_string
+g_ir_parser_parse_file
+</SECTION>
+
+<SECTION>
+<FILE>girwriter</FILE>
+g_idl_writer_save_file
+</SECTION>
+
diff --git a/docs/reference/gi.types b/docs/reference/gi.types
new file mode 100644 (file)
index 0000000..3b4e9df
--- /dev/null
@@ -0,0 +1,2 @@
+g_irepository_get_type
+g_irepository_get_type
diff --git a/docs/reference/tmpl/gi-unused.sgml b/docs/reference/tmpl/gi-unused.sgml
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/docs/reference/tmpl/ginfo.sgml b/docs/reference/tmpl/ginfo.sgml
new file mode 100644 (file)
index 0000000..8b31ad1
--- /dev/null
@@ -0,0 +1,43 @@
+<!-- ##### SECTION Title ##### -->
+ginfo
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### FUNCTION g_type_info_new ##### -->
+<para>
+
+</para>
+
+@container: 
+@typelib: 
+@offset: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_info_new_full ##### -->
+<para>
+
+</para>
+
+@type: 
+@repository: 
+@container: 
+@typelib: 
+@offset: 
+@Returns: 
+
+
diff --git a/docs/reference/tmpl/girepository.sgml b/docs/reference/tmpl/girepository.sgml
new file mode 100644 (file)
index 0000000..6991a64
--- /dev/null
@@ -0,0 +1,1683 @@
+<!-- ##### SECTION Title ##### -->
+GIRepository
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### MACRO G_TYPE_IREPOSITORY ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO G_IREPOSITORY ##### -->
+<para>
+
+</para>
+
+@obj: 
+
+
+<!-- ##### STRUCT GIRepositoryPrivate ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIBaseInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GICallableInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIFunctionInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GICallbackInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIRegisteredTypeInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIStructInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIUnionInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIEnumInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIObjectInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIInterfaceInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIConstantInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIValueInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GISignalInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIVFuncInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIPropertyInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIFieldInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIArgInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GITypeInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIErrorDomainInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GIUnresolvedInfo ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT GTypelib ##### -->
+<para>
+
+</para>
+
+@data: 
+@len: 
+@owns_memory: 
+@mfile: 
+@modules: 
+
+<!-- ##### STRUCT GIRepository ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ENUM GIRepositoryLoadFlags ##### -->
+<para>
+
+</para>
+
+@G_IREPOSITORY_LOAD_FLAG_LAZY: 
+
+<!-- ##### FUNCTION g_irepository_get_default ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_prepend_search_path ##### -->
+<para>
+
+</para>
+
+@directory: 
+
+
+<!-- ##### FUNCTION g_irepository_get_search_path ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_load_typelib ##### -->
+<para>
+
+</para>
+
+@repository: 
+@typelib: 
+@flags: 
+@error: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_is_registered ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@version: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_find_by_name ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@name: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_require ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@version: 
+@flags: 
+@error: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_dependencies ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_loaded_namespaces ##### -->
+<para>
+
+</para>
+
+@repository: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_find_by_gtype ##### -->
+<para>
+
+</para>
+
+@repository: 
+@gtype: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_n_infos ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_info ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@index: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_typelib_path ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_shared_library ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_version ##### -->
+<para>
+
+</para>
+
+@repository: 
+@namespace_: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_get_option_group ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### FUNCTION g_irepository_dump ##### -->
+<para>
+
+</para>
+
+@arg: 
+@error: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_new_from_memory ##### -->
+<para>
+
+</para>
+
+@memory: 
+@len: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_new_from_const_memory ##### -->
+<para>
+
+</para>
+
+@memory: 
+@len: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_new_from_mapped_file ##### -->
+<para>
+
+</para>
+
+@mfile: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_free ##### -->
+<para>
+
+</para>
+
+@typelib: 
+
+
+<!-- ##### FUNCTION g_typelib_symbol ##### -->
+<para>
+
+</para>
+
+@typelib: 
+@symbol_name: 
+@symbol: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_get_namespace ##### -->
+<para>
+
+</para>
+
+@typelib: 
+@Returns: 
+
+
+<!-- ##### ENUM GIRepositoryError ##### -->
+<para>
+
+</para>
+
+@G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND: 
+@G_IREPOSITORY_ERROR_NAMESPACE_MISMATCH: 
+@G_IREPOSITORY_ERROR_NAMESPACE_VERSION_CONFLICT: 
+@G_IREPOSITORY_ERROR_LIBRARY_NOT_FOUND: 
+
+<!-- ##### MACRO G_IREPOSITORY_ERROR ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION g_irepository_error_quark ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### FUNCTION gi_cclosure_marshal_generic ##### -->
+<para>
+
+</para>
+
+@closure: 
+@return_gvalue: 
+@n_param_values: 
+@param_values: 
+@invocation_hint: 
+@marshal_data: 
+
+
+<!-- ##### ENUM GIInfoType ##### -->
+<para>
+
+</para>
+
+@GI_INFO_TYPE_INVALID: 
+@GI_INFO_TYPE_FUNCTION: 
+@GI_INFO_TYPE_CALLBACK: 
+@GI_INFO_TYPE_STRUCT: 
+@GI_INFO_TYPE_BOXED: 
+@GI_INFO_TYPE_ENUM: 
+@GI_INFO_TYPE_FLAGS: 
+@GI_INFO_TYPE_OBJECT: 
+@GI_INFO_TYPE_INTERFACE: 
+@GI_INFO_TYPE_CONSTANT: 
+@GI_INFO_TYPE_ERROR_DOMAIN: 
+@GI_INFO_TYPE_UNION: 
+@GI_INFO_TYPE_VALUE: 
+@GI_INFO_TYPE_SIGNAL: 
+@GI_INFO_TYPE_VFUNC: 
+@GI_INFO_TYPE_PROPERTY: 
+@GI_INFO_TYPE_FIELD: 
+@GI_INFO_TYPE_ARG: 
+@GI_INFO_TYPE_TYPE: 
+@GI_INFO_TYPE_UNRESOLVED: 
+
+<!-- ##### FUNCTION g_base_info_ref ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_unref ##### -->
+<para>
+
+</para>
+
+@info: 
+
+
+<!-- ##### FUNCTION g_base_info_get_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_get_name ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_get_namespace ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_is_deprecated ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_get_annotation ##### -->
+<para>
+
+</para>
+
+@info: 
+@name: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_get_container ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_base_info_get_typelib ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_info_new ##### -->
+<para>
+
+</para>
+
+@type: 
+@container: 
+@typelib: 
+@offset: 
+@Returns: 
+
+
+<!-- ##### ENUM GIFunctionInfoFlags ##### -->
+<para>
+
+</para>
+
+@GI_FUNCTION_IS_METHOD: 
+@GI_FUNCTION_IS_CONSTRUCTOR: 
+@GI_FUNCTION_IS_GETTER: 
+@GI_FUNCTION_IS_SETTER: 
+@GI_FUNCTION_WRAPS_VFUNC: 
+@GI_FUNCTION_THROWS: 
+
+<!-- ##### FUNCTION g_function_info_get_symbol ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_function_info_get_flags ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_function_info_get_property ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_function_info_get_vfunc ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### MACRO G_INVOKE_ERROR ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION g_invoke_error_quark ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### ENUM GInvokeError ##### -->
+<para>
+
+</para>
+
+@G_INVOKE_ERROR_FAILED: 
+@G_INVOKE_ERROR_SYMBOL_NOT_FOUND: 
+@G_INVOKE_ERROR_ARGUMENT_MISMATCH: 
+
+<!-- ##### FUNCTION g_function_info_invoke ##### -->
+<para>
+
+</para>
+
+@info: 
+@in_args: 
+@n_in_args: 
+@out_args: 
+@n_out_args: 
+@return_value: 
+@error: 
+@Returns: 
+
+
+<!-- ##### ENUM GITransfer ##### -->
+<para>
+
+</para>
+
+@GI_TRANSFER_NOTHING: 
+@GI_TRANSFER_CONTAINER: 
+@GI_TRANSFER_EVERYTHING: 
+
+<!-- ##### FUNCTION g_callable_info_get_return_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_get_caller_owns ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_may_return_null ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_get_n_args ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_get_arg ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### ENUM GIDirection ##### -->
+<para>
+
+</para>
+
+@GI_DIRECTION_IN: 
+@GI_DIRECTION_OUT: 
+@GI_DIRECTION_INOUT: 
+
+<!-- ##### ENUM GIScopeType ##### -->
+<para>
+
+</para>
+
+@GI_SCOPE_TYPE_INVALID: 
+@GI_SCOPE_TYPE_CALL: 
+@GI_SCOPE_TYPE_OBJECT: 
+@GI_SCOPE_TYPE_ASYNC: 
+@GI_SCOPE_TYPE_NOTIFIED: 
+
+<!-- ##### FUNCTION g_arg_info_get_direction ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_is_dipper ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_is_return_value ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_is_optional ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_may_be_null ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_get_ownership_transfer ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_get_scope ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_get_closure ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_get_destroy ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_arg_info_get_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### ENUM GITypeTag ##### -->
+<para>
+
+</para>
+
+@GI_TYPE_TAG_VOID: 
+@GI_TYPE_TAG_BOOLEAN: 
+@GI_TYPE_TAG_INT8: 
+@GI_TYPE_TAG_UINT8: 
+@GI_TYPE_TAG_INT16: 
+@GI_TYPE_TAG_UINT16: 
+@GI_TYPE_TAG_INT32: 
+@GI_TYPE_TAG_UINT32: 
+@GI_TYPE_TAG_INT64: 
+@GI_TYPE_TAG_UINT64: 
+@GI_TYPE_TAG_INT: 
+@GI_TYPE_TAG_UINT: 
+@GI_TYPE_TAG_LONG: 
+@GI_TYPE_TAG_ULONG: 
+@GI_TYPE_TAG_SSIZE: 
+@GI_TYPE_TAG_SIZE: 
+@GI_TYPE_TAG_FLOAT: 
+@GI_TYPE_TAG_DOUBLE: 
+@GI_TYPE_TAG_TIME_T: 
+@GI_TYPE_TAG_GTYPE: 
+@GI_TYPE_TAG_UTF8: 
+@GI_TYPE_TAG_FILENAME: 
+@GI_TYPE_TAG_ARRAY: 
+@GI_TYPE_TAG_INTERFACE: 
+@GI_TYPE_TAG_GLIST: 
+@GI_TYPE_TAG_GSLIST: 
+@GI_TYPE_TAG_GHASH: 
+@GI_TYPE_TAG_ERROR: 
+
+<!-- ##### FUNCTION g_type_tag_to_string ##### -->
+<para>
+
+</para>
+
+@type: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_is_pointer ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_tag ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_param_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_interface ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_array_length ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_array_fixed_size ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_is_zero_terminated ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_n_error_domains ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_type_info_get_error_domain ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_error_domain_info_get_quark ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_error_domain_info_get_codes ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_value_info_get_value ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### ENUM GIFieldInfoFlags ##### -->
+<para>
+
+</para>
+
+@GI_FIELD_IS_READABLE: 
+@GI_FIELD_IS_WRITABLE: 
+
+<!-- ##### FUNCTION g_field_info_get_flags ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_field_info_get_size ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_field_info_get_offset ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_field_info_get_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_field_info_get_field ##### -->
+<para>
+
+</para>
+
+@field_info: 
+@mem: 
+@value: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_field_info_set_field ##### -->
+<para>
+
+</para>
+
+@field_info: 
+@mem: 
+@value: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_n_fields ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_field ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_n_methods ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_is_discriminated ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_discriminator_offset ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_discriminator_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_discriminator ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_find_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@name: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_size ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_union_info_get_alignment ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_get_n_fields ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_get_field ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_get_n_methods ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_get_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_find_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@name: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_get_size ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_get_alignment ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_struct_info_is_class_struct ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_registered_type_info_get_type_name ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_registered_type_info_get_type_init ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_registered_type_info_get_g_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_enum_info_get_n_values ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_enum_info_get_value ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_enum_info_get_storage_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_type_name ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_type_init ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_abstract ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_parent ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_interfaces ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_interface ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_fields ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_field ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_properties ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_property ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_methods ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_find_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@name: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_signals ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_signal ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_vfuncs ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_vfunc ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_n_constants ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_constant ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_object_info_get_class_struct ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_n_prerequisites ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_prerequisite ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_n_properties ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_property ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_n_methods ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_find_method ##### -->
+<para>
+
+</para>
+
+@info: 
+@name: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_n_signals ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_signal ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_n_vfuncs ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_vfunc ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_n_constants ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_interface_info_get_constant ##### -->
+<para>
+
+</para>
+
+@info: 
+@n: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_property_info_get_flags ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_property_info_get_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_signal_info_get_flags ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_signal_info_get_class_closure ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_signal_info_true_stops_emit ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### ENUM GIVFuncInfoFlags ##### -->
+<para>
+
+</para>
+
+@GI_VFUNC_MUST_CHAIN_UP: 
+@GI_VFUNC_MUST_OVERRIDE: 
+@GI_VFUNC_MUST_NOT_OVERRIDE: 
+
+<!-- ##### FUNCTION g_vfunc_info_get_flags ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_vfunc_info_get_offset ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_vfunc_info_get_signal ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_constant_info_get_type ##### -->
+<para>
+
+</para>
+
+@info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_constant_info_get_value ##### -->
+<para>
+
+</para>
+
+@info: 
+@value: 
+@Returns: 
+
+
diff --git a/docs/reference/tmpl/girffi.sgml b/docs/reference/tmpl/girffi.sgml
new file mode 100644 (file)
index 0000000..a9ad7c1
--- /dev/null
@@ -0,0 +1,78 @@
+<!-- ##### SECTION Title ##### -->
+girffi
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### USER_FUNCTION GIFFIClosureCallback ##### -->
+<para>
+
+</para>
+
+@Param1: 
+@Param2: 
+@Param3: 
+@Param4: 
+
+
+<!-- ##### FUNCTION g_ir_ffi_get_ffi_type ##### -->
+<para>
+
+</para>
+
+@tag: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_get_ffi_arg_types ##### -->
+<para>
+
+</para>
+
+@callable_info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_get_ffi_return_type ##### -->
+<para>
+
+</para>
+
+@callable_info: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_prepare_closure ##### -->
+<para>
+
+</para>
+
+@callable_info: 
+@cif: 
+@callback: 
+@user_data: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_callable_info_free_closure ##### -->
+<para>
+
+</para>
+
+@callable_info: 
+@closure: 
+
+
diff --git a/docs/reference/tmpl/girmodule.sgml b/docs/reference/tmpl/girmodule.sgml
new file mode 100644 (file)
index 0000000..16e133b
--- /dev/null
@@ -0,0 +1,71 @@
+<!-- ##### SECTION Title ##### -->
+girmodule
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT GIrModule ##### -->
+<para>
+
+</para>
+
+@name: 
+@version: 
+@shared_library: 
+@dependencies: 
+@entries: 
+@include_modules: 
+@aliases: 
+@disguised_structures: 
+
+<!-- ##### FUNCTION g_ir_module_new ##### -->
+<para>
+
+</para>
+
+@name: 
+@nsversion: 
+@module_filename: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_module_free ##### -->
+<para>
+
+</para>
+
+@module: 
+
+
+<!-- ##### FUNCTION g_ir_module_add_include_module ##### -->
+<para>
+
+</para>
+
+@module: 
+@include_module: 
+
+
+<!-- ##### FUNCTION g_ir_module_build_typelib ##### -->
+<para>
+
+</para>
+
+@module: 
+@modules: 
+@Returns: 
+
+
diff --git a/docs/reference/tmpl/girnode.sgml b/docs/reference/tmpl/girnode.sgml
new file mode 100644 (file)
index 0000000..4e2f790
--- /dev/null
@@ -0,0 +1,420 @@
+<!-- ##### SECTION Title ##### -->
+girnode
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT GIrNode ##### -->
+<para>
+
+</para>
+
+@type: 
+@name: 
+
+<!-- ##### STRUCT GIrNodeFunction ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@is_varargs: 
+@is_method: 
+@is_setter: 
+@is_getter: 
+@is_constructor: 
+@wraps_vfunc: 
+@throws: 
+@symbol: 
+@result: 
+@parameters: 
+
+<!-- ##### STRUCT GIrNodeParam ##### -->
+<para>
+
+</para>
+
+@node: 
+@in: 
+@out: 
+@dipper: 
+@optional: 
+@retval: 
+@allow_none: 
+@transfer: 
+@shallow_transfer: 
+@scope: 
+@closure: 
+@destroy: 
+@type: 
+
+<!-- ##### STRUCT GIrNodeType ##### -->
+<para>
+
+</para>
+
+@node: 
+@is_pointer: 
+@is_basic: 
+@is_array: 
+@is_glist: 
+@is_gslist: 
+@is_ghashtable: 
+@is_interface: 
+@is_error: 
+@tag: 
+@unparsed: 
+@zero_terminated: 
+@has_length: 
+@length: 
+@has_size: 
+@size: 
+@parameter_type1: 
+@parameter_type2: 
+@interface: 
+@errors: 
+
+<!-- ##### STRUCT GIrNodeInterface ##### -->
+<para>
+
+</para>
+
+@node: 
+@abstract: 
+@deprecated: 
+@gtype_name: 
+@gtype_init: 
+@parent: 
+@class_struct: 
+@interfaces: 
+@prerequisites: 
+@alignment: 
+@size: 
+@members: 
+
+<!-- ##### STRUCT GIrNodeSignal ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@run_first: 
+@run_last: 
+@run_cleanup: 
+@no_recurse: 
+@detailed: 
+@action: 
+@no_hooks: 
+@has_class_closure: 
+@true_stops_emit: 
+@class_closure: 
+@parameters: 
+@result: 
+
+<!-- ##### STRUCT GIrNodeProperty ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@name: 
+@readable: 
+@writable: 
+@construct: 
+@construct_only: 
+@type: 
+
+<!-- ##### STRUCT GIrNodeVFunc ##### -->
+<para>
+
+</para>
+
+@node: 
+@is_varargs: 
+@must_chain_up: 
+@must_be_implemented: 
+@must_not_be_implemented: 
+@is_class_closure: 
+@parameters: 
+@result: 
+@offset: 
+
+<!-- ##### STRUCT GIrNodeField ##### -->
+<para>
+
+</para>
+
+@node: 
+@readable: 
+@writable: 
+@bits: 
+@offset: 
+@type: 
+
+<!-- ##### STRUCT GIrNodeValue ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@value: 
+
+<!-- ##### STRUCT GIrNodeEnum ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@storage_type: 
+@gtype_name: 
+@gtype_init: 
+@values: 
+
+<!-- ##### STRUCT GIrNodeBoxed ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@gtype_name: 
+@gtype_init: 
+@alignment: 
+@size: 
+@members: 
+
+<!-- ##### STRUCT GIrNodeStruct ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@disguised: 
+@is_gclass_struct: 
+@gtype_name: 
+@gtype_init: 
+@alignment: 
+@size: 
+@members: 
+
+<!-- ##### STRUCT GIrNodeConstant ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@type: 
+@value: 
+
+<!-- ##### STRUCT GIrNodeErrorDomain ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@name: 
+@getquark: 
+@codes: 
+
+<!-- ##### STRUCT GIrNodeXRef ##### -->
+<para>
+
+</para>
+
+@node: 
+@namespace: 
+
+<!-- ##### STRUCT GIrNodeUnion ##### -->
+<para>
+
+</para>
+
+@node: 
+@deprecated: 
+@members: 
+@discriminators: 
+@gtype_name: 
+@gtype_init: 
+@alignment: 
+@size: 
+@discriminator_offset: 
+@discriminator_type: 
+
+<!-- ##### ENUM GIrNodeTypeId ##### -->
+<para>
+
+</para>
+
+@G_IR_NODE_INVALID: 
+@G_IR_NODE_FUNCTION: 
+@G_IR_NODE_CALLBACK: 
+@G_IR_NODE_STRUCT: 
+@G_IR_NODE_BOXED: 
+@G_IR_NODE_ENUM: 
+@G_IR_NODE_FLAGS: 
+@G_IR_NODE_OBJECT: 
+@G_IR_NODE_INTERFACE: 
+@G_IR_NODE_CONSTANT: 
+@G_IR_NODE_ERROR_DOMAIN: 
+@G_IR_NODE_UNION: 
+@G_IR_NODE_PARAM: 
+@G_IR_NODE_TYPE: 
+@G_IR_NODE_PROPERTY: 
+@G_IR_NODE_SIGNAL: 
+@G_IR_NODE_VALUE: 
+@G_IR_NODE_VFUNC: 
+@G_IR_NODE_FIELD: 
+@G_IR_NODE_XREF: 
+
+<!-- ##### FUNCTION g_ir_node_new ##### -->
+<para>
+
+</para>
+
+@type: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_free ##### -->
+<para>
+
+</para>
+
+@node: 
+
+
+<!-- ##### FUNCTION g_ir_node_get_size ##### -->
+<para>
+
+</para>
+
+@node: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_get_full_size ##### -->
+<para>
+
+</para>
+
+@node: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_build_typelib ##### -->
+<para>
+
+</para>
+
+@node: 
+@module: 
+@modules: 
+@strings: 
+@types: 
+@data: 
+@offset: 
+@offset2: 
+
+
+<!-- ##### FUNCTION g_ir_node_cmp ##### -->
+<para>
+
+</para>
+
+@node: 
+@other: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_can_have_member ##### -->
+<para>
+
+</para>
+
+@node: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_add_member ##### -->
+<para>
+
+</para>
+
+@node: 
+@member: 
+
+
+<!-- ##### FUNCTION write_string ##### -->
+<para>
+
+</para>
+
+@str: 
+@strings: 
+@data: 
+@offset: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_param_direction_string ##### -->
+<para>
+
+</para>
+
+@node: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_type_to_string ##### -->
+<para>
+
+</para>
+
+@type: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_find_node ##### -->
+<para>
+
+</para>
+
+@module: 
+@modules: 
+@name: 
+@node_out: 
+@module_out: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_node_compute_offsets ##### -->
+<para>
+
+</para>
+
+@node: 
+@module: 
+@modules: 
+
+
diff --git a/docs/reference/tmpl/girparser.sgml b/docs/reference/tmpl/girparser.sgml
new file mode 100644 (file)
index 0000000..bfc6662
--- /dev/null
@@ -0,0 +1,74 @@
+<!-- ##### SECTION Title ##### -->
+girparser
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT GIrParser ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION g_ir_parser_new ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_parser_free ##### -->
+<para>
+
+</para>
+
+@parser: 
+
+
+<!-- ##### FUNCTION g_ir_parser_set_includes ##### -->
+<para>
+
+</para>
+
+@parser: 
+@includes: 
+
+
+<!-- ##### FUNCTION g_ir_parser_parse_string ##### -->
+<para>
+
+</para>
+
+@parser: 
+@namespace: 
+@buffer: 
+@length: 
+@error: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_ir_parser_parse_file ##### -->
+<para>
+
+</para>
+
+@parser: 
+@filename: 
+@error: 
+@Returns: 
+
+
diff --git a/docs/reference/tmpl/girwriter.sgml b/docs/reference/tmpl/girwriter.sgml
new file mode 100644 (file)
index 0000000..204c8b8
--- /dev/null
@@ -0,0 +1,28 @@
+<!-- ##### SECTION Title ##### -->
+girwriter
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### FUNCTION g_idl_writer_save_file ##### -->
+<para>
+
+</para>
+
+@module: 
+@filename: 
+
+
diff --git a/docs/reference/tmpl/gtypelib.sgml b/docs/reference/tmpl/gtypelib.sgml
new file mode 100644 (file)
index 0000000..825880c
--- /dev/null
@@ -0,0 +1,99 @@
+<!-- ##### SECTION Title ##### -->
+gtypelib
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### MACRO G_IR_MAGIC ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### STRUCT GTypelib ##### -->
+<para>
+
+</para>
+
+@data: 
+@len: 
+@owns_memory: 
+@mfile: 
+@modules: 
+
+<!-- ##### FUNCTION g_typelib_get_dir_entry ##### -->
+<para>
+
+</para>
+
+@typelib: 
+@index: 
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_check_sanity ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO g_typelib_get_string ##### -->
+<para>
+
+</para>
+
+@typelib: 
+@offset: 
+
+
+<!-- ##### ENUM GTypelibError ##### -->
+<para>
+
+</para>
+
+@G_TYPELIB_ERROR_INVALID: 
+@G_TYPELIB_ERROR_INVALID_HEADER: 
+@G_TYPELIB_ERROR_INVALID_DIRECTORY: 
+@G_TYPELIB_ERROR_INVALID_ENTRY: 
+@G_TYPELIB_ERROR_INVALID_BLOB: 
+
+<!-- ##### MACRO G_TYPELIB_ERROR ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION g_typelib_error_quark ##### -->
+<para>
+
+</para>
+
+@Returns: 
+
+
+<!-- ##### FUNCTION g_typelib_validate ##### -->
+<para>
+
+</para>
+
+@typelib: 
+@error: 
+@Returns: 
+
+
diff --git a/docs/reference/version.xml.in b/docs/reference/version.xml.in
new file mode 100644 (file)
index 0000000..d1cc3c7
--- /dev/null
@@ -0,0 +1,2 @@
+@GOBJECT_INTROSPECTION_VERSION@
+@GOBJECT_INTROSPECTION_VERSION@
index a51c6cb..f4ca131 100644 (file)
@@ -658,6 +658,7 @@ g_callable_info_get_n_args (GICallableInfo *info)
 /**
  * g_callable_info_get_arg:
  * @info: a #GICallableInfo
+ * @n: the argument index to fetch
  *
  * Get information about a particular argument of this callable.
  *
@@ -1186,6 +1187,7 @@ g_struct_info_get_alignment (GIStructInfo *info)
  * GObject.  This function is mainly useful to hide this kind of structure
  * from public APIs.
  *
+ * Returns: TRUE if it's a class struct, otherwise FALSE
  */
 gboolean
 g_struct_info_is_class_struct (GIStructInfo *info)
@@ -1493,6 +1495,8 @@ g_object_info_get_constant (GIObjectInfo *info,
  * 
  * Every GObject has two structures; an instance structure and a class
  * structure.  This function returns the metadata for the class structure.
+ *
+ * Returns: a GIStrucTInfo for the class struct or NULL if none found.
  */
 GIStructInfo *
 g_object_info_get_class_struct (GIObjectInfo *info)
index f35854a..40c4786 100644 (file)
@@ -370,12 +370,12 @@ register_internal (GIRepository *repository,
 }
 
 /**
- * g_irepository_get_dependencies
+ * g_irepository_get_dependencies:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace of interest
+ * @namespace_: Namespace of interest
  *
  * Return an array of all (transitive) dependencies for namespace
- * @namespace, including version.  The returned strings are of the
+ * @namespace_, including version.  The returned strings are of the
  * form <code>namespace-version</code>.
  *
  * Note: The namespace must have already been loaded using a function
@@ -436,10 +436,10 @@ g_irepository_load_typelib (GIRepository *repository,
 }
 
 /**
- * g_irepository_is_registered
+ * g_irepository_is_registered:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace of interest
- * @version: <allow-none>: Required version, may be %NULL for latest
+ * @namespace_: Namespace of interest
+ * @version: (allow-none): Required version, may be %NULL for latest
  *
  * Check whether a particular namespace (and optionally, a specific
  * version thereof) is currently loaded.  This function is likely to
@@ -460,7 +460,7 @@ g_irepository_is_registered (GIRepository *repository,
 }
 
 /**
- * g_irepository_get_default
+ * g_irepository_get_default:
  *
  * Returns the singleton process-global default #GIRepository.  It is
  * not currently supported to have multiple repositories in a
@@ -482,12 +482,12 @@ g_irepository_get_default (void)
 }
 
 /**
- * g_irepository_get_n_infos
+ * g_irepository_get_n_infos:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace to inspect
+ * @namespace_: Namespace to inspect
  *
  * This function returns the number of metadata entries in
- * given namespace @namespace.  The namespace must have
+ * given namespace @namespace_.  The namespace must have
  * already been loaded before calling this function.
  *
  * Returns: number of metadata entries
@@ -591,13 +591,13 @@ find_interface (gpointer key,
 }
 
 /**
- * g_irepository_get_info
+ * g_irepository_get_info:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace to inspect
+ * @namespace_: Namespace to inspect
  * @index: Offset into namespace metadata for entry
  *
  * This function returns a particular metadata entry in the
- * given namespace @namespace.  The namespace must have
+ * given namespace @namespace_.  The namespace must have
  * already been loaded before calling this function.
  *
  * Returns: #GIBaseInfo containing metadata
@@ -630,9 +630,9 @@ g_irepository_get_info (GIRepository *repository,
 }
 
 /**
- * g_irepository_find_by_gtype
+ * g_irepository_find_by_gtype:
  * @repository: A #GIRepository, may be %NULL for the default
- * @type: GType to search for
+ * @gtype: GType to search for
  *
  * Searches all loaded namespaces for a particular #GType.  Note that
  * in order to locate the metadata, the namespace corresponding to
@@ -645,7 +645,7 @@ g_irepository_get_info (GIRepository *repository,
  */
 GIBaseInfo * 
 g_irepository_find_by_gtype (GIRepository *repository,
-                            GType         type)
+                            GType         gtype)
 {
   IfaceData data;
 
@@ -676,9 +676,9 @@ g_irepository_find_by_gtype (GIRepository *repository,
 }
 
 /**
- * g_irepository_find_by_name
+ * g_irepository_find_by_name:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace which will be searched
+ * @namespace_: Namespace which will be searched
  * @name: Entry name to find
  *
  * Searches for a particular entry in a namespace.  Before calling
@@ -726,12 +726,12 @@ collect_namespaces (gpointer key,
 }
 
 /**
- * g_irepository_get_namespaces
+ * g_irepository_get_namespaces:
  * @repository: A #GIRepository, may be %NULL for the default
  *
  * Return the list of currently loaded namespaces.
  *
- * Returns: <utf8,transfer>: List of namespaces
+ * Returns: (utf8) (transfer full): List of namespaces
  */
 gchar ** 
 g_irepository_get_loaded_namespaces (GIRepository *repository)
@@ -755,12 +755,12 @@ g_irepository_get_loaded_namespaces (GIRepository *repository)
 }
 
 /**
- * g_irepository_get_version
+ * g_irepository_get_version:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace to inspect
+ * @namespace_: Namespace to inspect
  *
  * This function returns the loaded version associated with the given
- * namespace @namespace.
+ * namespace @namespace_.
  *
  * Note: The namespace must have already been loaded using a function
  * such as #g_irepository_require before calling this function.
@@ -787,12 +787,12 @@ g_irepository_get_version (GIRepository *repository,
 }
 
 /**
- * g_irepository_get_shared_library
+ * g_irepository_get_shared_library:
  * @repository: A #GIRepository, may be %NULL for the default
- * @namespace: Namespace to inspect
+ * @namespace_: Namespace to inspect
  *
  * This function returns the full path to the shared C library
- * associated with the given namespace @namespace. There may be no
+ * associated with the given namespace @namespace_. There may be no
  * shared library path associated, in which case this function will
  * return %NULL.
  *
@@ -824,17 +824,16 @@ g_irepository_get_shared_library (GIRepository *repository,
 }
 
 /**
- * g_irepository_get_typelib_path
+ * g_irepository_get_typelib_path:
  * @repository: Repository, may be %NULL for the default
- * @namespace: GI namespace to use, e.g. "Gtk"
- * @version: <allow-none>: Version of namespace to use, e.g. "0.8", may be %NULL
+ * @namespace_: GI namespace to use, e.g. "Gtk"
  *
- * If namespace @namespace is loaded, return the full path to the
+ * If namespace @namespace_ is loaded, return the full path to the
  * .typelib file it was loaded from.  If the typelib for 
- * namespace @namespace was included in a shared library, return
- * the special string "<builtin>".
+ * namespace @namespace_ was included in a shared library, return
+ * the special string "$lt;builtin$gt;".
  *
- * Returns: Filesystem path (or <builtin>) if successful, %NULL if namespace is not loaded
+ * Returns: Filesystem path (or $lt;builtin$gt;) if successful, %NULL if namespace is not loaded
  */
 
 const gchar * 
@@ -1080,15 +1079,15 @@ find_namespace_latest (const gchar  *namespace,
 }
 
 /**
- * g_irepository_require
- * @repository: <allow-none>: Repository, may be %NULL for the default
- * @namespace: GI namespace to use, e.g. "Gtk"
- * @version: <allow-none>: Version of namespace, may be %NULL for latest
+ * g_irepository_require:
+ * @repository: (allow-none): Repository, may be %NULL for the default
+ * @namespace_: GI namespace to use, e.g. "Gtk"
+ * @version: (allow-none): Version of namespace, may be %NULL for latest
  * @flags: Set of %GIRepositoryLoadFlags, may be %0
  * @error: a #GError.
  *
- * Force the namespace @namespace to be loaded if it isn't already.
- * If @namespace is not loaded, this function will search for a
+ * Force the namespace @namespace_ to be loaded if it isn't already.
+ * If @namespace_ is not loaded, this function will search for a
  * ".typelib" file using the repository search path.  In addition, a
  * version @version of namespace may be specified.  If @version is
  * not specified, the latest will be used.
index ffde853..4611a63 100644 (file)
@@ -225,7 +225,7 @@ g_callable_info_prepare_closure (GICallableInfo       *callable_info,
 }
 
 /**
- * g_callable_info_prepare_closure:
+ * g_callable_info_free_closure:
  * @callable_info: a callable info from a typelib
  * @closure: ffi closure
  *
index cc56d0b..d834746 100644 (file)
@@ -462,7 +462,7 @@ check_needs_computation (GIrNode   *node,
  * g_ir_node_compute_offsets:
  * @node: a #GIrNode
  * @module: Current module being processed
- * @moudles: all currently loaded modules
+ * @modules: all currently loaded modules
  *
  * If a node is a a structure or union, makes sure that the field
  * offsets have been computed, and also computes the overall size and
index 97e3a1e..1c7f5b3 100644 (file)
@@ -3188,12 +3188,15 @@ post_filter (GIrModule *module)
 /**
  * g_ir_parser_parse_string:
  * @parser: a #GIrParser
+ * @namespace: the namespace of the string
+ * @buffer: the data containing the XML
+ * @length: length of the data
  * @error: return location for a #GError, or %NULL
  *
  * Parse a string that holds a complete GIR XML file, and return a list of a
  * a #GirModule for each &lt;namespace/&gt; element within the file.
  *
- * @returns: a newly allocated list of #GIrModule. The modules themselves
+ * Returns: a newly allocated list of #GIrModule. The modules themselves
  *  are owned by the #GIrParser and will be freed along with the parser.
  */
 GList *
@@ -3258,12 +3261,13 @@ g_ir_parser_parse_string (GIrParser           *parser,
 /**
  * g_ir_parser_parse_file:
  * @parser: a #GIrParser
+ * @filename: filename to parse
  * @error: return location for a #GError, or %NULL
  *
  * Parse GIR XML file, and return a list of a a #GirModule for each
  * &lt;namespace/&gt; element within the file.
  *
- * @returns: a newly allocated list of #GIrModule. The modules themselves
+ * Returns: a newly allocated list of #GIrModule. The modules themselves
  *  are owned by the #GIrParser and will be freed along with the parser.
  */
 GList *
index e3b1214..b228a23 100644 (file)
@@ -2124,6 +2124,7 @@ g_typelib_get_namespace (GTypelib *typelib)
 
 /**
  * g_typelib_symbol:
+ * @typelib: the typelib
  * @symbol_name: name of symbol to be loaded
  * @symbol: returns a pointer to the symbol value
  *
diff --git a/m4/gtk-doc.m4 b/m4/gtk-doc.m4
new file mode 100644 (file)
index 0000000..a22be91
--- /dev/null
@@ -0,0 +1,43 @@
+dnl -*- mode: autoconf -*-
+
+# serial 1
+
+dnl Usage:
+dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
+AC_DEFUN([GTK_DOC_CHECK],
+[
+  AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
+  AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
+
+  dnl for overriding the documentation installation directory
+  AC_ARG_WITH([html-dir],
+    AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
+    [with_html_dir='${datadir}/gtk-doc/html'])
+  HTML_DIR="$with_html_dir"
+  AC_SUBST([HTML_DIR])
+
+  dnl enable/disable documentation building
+  AC_ARG_ENABLE([gtk-doc],
+    AS_HELP_STRING([--enable-gtk-doc],
+                   [use gtk-doc to build documentation [[default=no]]]),,
+    [enable_gtk_doc=no])
+
+  if test x$enable_gtk_doc = xyes; then
+    ifelse([$1],[],
+      [PKG_CHECK_EXISTS([gtk-doc],,
+                        AC_MSG_ERROR([gtk-doc not installed and --enable-gtk-doc requested]))],
+      [PKG_CHECK_EXISTS([gtk-doc >= $1],,
+                        AC_MSG_ERROR([You need to have gtk-doc >= $1 installed to build $PACKAGE_NAME]))])
+  fi
+
+  AC_MSG_CHECKING([whether to build gtk-doc documentation])
+  AC_MSG_RESULT($enable_gtk_doc)
+
+  dnl check for tools we added during development
+  AC_PATH_PROG([GTKDOC_CHECK],[gtkdoc-check])
+  AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true])
+
+  AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
+  AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"])
+  AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"])
+])