Imported Upstream version 1.47.1 91/94091/1
authorDongHun Kwak <dh0128.kwak@samsung.com>
Thu, 27 Oct 2016 05:33:17 +0000 (14:33 +0900)
committerDongHun Kwak <dh0128.kwak@samsung.com>
Thu, 27 Oct 2016 05:33:28 +0000 (14:33 +0900)
Change-Id: I0fd47d56eae3ef31875b208e30fd0c4bcf975379
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
259 files changed:
Makefile-gir.am
Makefile-giscanner.am
Makefile-msvcproj.am
Makefile.in
aclocal.m4
build-aux/compile
build-aux/config.guess
build-aux/config.sub
build-aux/depcomp
build-aux/install-sh
build-aux/missing
build-aux/py-compile
build-aux/test-driver
build-aux/ylwrap
build/Makefile-newvs.am
build/Makefile.am
build/Makefile.in
build/Makefile.msvc-introspection [new file with mode: 0644]
build/Makefile.msvcproj [new file with mode: 0644]
build/gen-win32-cairo-gir.py
build/gen-win32-g-ir-tools.py
build/gi-introspection-msvc.mak
build/gi_msvc_build_utils.py
build/replace.py [new file with mode: 0644]
build/win32/Makefile.am
build/win32/Makefile.in
build/win32/vs10/Makefile.am
build/win32/vs10/Makefile.in
build/win32/vs10/cmph-bdz-test.vcxproj
build/win32/vs10/cmph.vcxproj
build/win32/vs10/cmph.vcxproj.filters
build/win32/vs10/g-ir-compiler.vcxproj
build/win32/vs10/g-ir-compiler.vcxproj.filters
build/win32/vs10/g-ir-compiler.vcxprojin
build/win32/vs10/g-ir-generate.vcxproj
build/win32/vs10/gi-install.props
build/win32/vs10/gi-install.propsin
build/win32/vs10/girepository.vcxproj
build/win32/vs10/girepository.vcxproj.filters
build/win32/vs10/girepository.vcxprojin
build/win32/vs10/glib-print.vcxproj
build/win32/vs11/Makefile.am
build/win32/vs11/Makefile.in
build/win32/vs11/cmph-bdz-test.vcxproj
build/win32/vs11/cmph.vcxproj
build/win32/vs11/cmph.vcxproj.filters
build/win32/vs11/g-ir-compiler.vcxproj
build/win32/vs11/g-ir-compiler.vcxproj.filters
build/win32/vs11/g-ir-generate.vcxproj
build/win32/vs11/gi-install.props
build/win32/vs11/girepository.vcxproj
build/win32/vs11/girepository.vcxproj.filters
build/win32/vs11/glib-print.vcxproj
build/win32/vs12/Makefile.am
build/win32/vs12/Makefile.in
build/win32/vs12/cmph-bdz-test.vcxproj
build/win32/vs12/cmph.vcxproj
build/win32/vs12/cmph.vcxproj.filters
build/win32/vs12/g-ir-compiler.vcxproj
build/win32/vs12/g-ir-compiler.vcxproj.filters
build/win32/vs12/g-ir-generate.vcxproj
build/win32/vs12/gi-install.props
build/win32/vs12/girepository.vcxproj
build/win32/vs12/girepository.vcxproj.filters
build/win32/vs12/glib-print.vcxproj
build/win32/vs12/gobject-introspection.sln
build/win32/vs14/Makefile.am [new file with mode: 0644]
build/win32/vs14/Makefile.in [new file with mode: 0644]
build/win32/vs14/README.txt [new file with mode: 0644]
build/win32/vs14/_giscanner.vcxproj [new file with mode: 0644]
build/win32/vs14/_giscanner.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/cmph-bdz-test.vcxproj [new file with mode: 0644]
build/win32/vs14/cmph-bdz-test.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/cmph.vcxproj [new file with mode: 0644]
build/win32/vs14/cmph.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/g-ir-compiler.vcxproj [new file with mode: 0644]
build/win32/vs14/g-ir-compiler.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/g-ir-generate.vcxproj [new file with mode: 0644]
build/win32/vs14/g-ir-generate.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/gi-build-defines.props [new file with mode: 0644]
build/win32/vs14/gi-extra-paths.props [new file with mode: 0644]
build/win32/vs14/gi-gen-srcs.props [new file with mode: 0644]
build/win32/vs14/gi-install.props [new file with mode: 0644]
build/win32/vs14/gi-prebuild.vcxproj [new file with mode: 0644]
build/win32/vs14/gi-version-paths.props [new file with mode: 0644]
build/win32/vs14/girepository.vcxproj [new file with mode: 0644]
build/win32/vs14/girepository.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/glib-print.vcxproj [new file with mode: 0644]
build/win32/vs14/glib-print.vcxproj.filters [new file with mode: 0644]
build/win32/vs14/gobject-introspection.sln [new file with mode: 0644]
build/win32/vs14/install.vcxproj [new file with mode: 0644]
build/win32/vs9/Makefile.am
build/win32/vs9/Makefile.in
build/win32/vs9/gi-install.vsprops
build/win32/vs9/gi-install.vspropsin
config.h.in
config.h.win32
configure
configure.ac
docs/Makefile.in
docs/g-ir-compiler.1
docs/g-ir-scanner.1
docs/reference/Makefile.in
docs/reference/html/GIRepository.html
docs/reference/html/annotation-glossary.html
docs/reference/html/api-index-1-29-0.html
docs/reference/html/api-index-1-29-17.html
docs/reference/html/api-index-1-30-1.html
docs/reference/html/api-index-1-34.html
docs/reference/html/api-index-1-35-8.html
docs/reference/html/api-index-deprecated.html
docs/reference/html/api-index-full.html
docs/reference/html/ch01.html
docs/reference/html/ch03.html
docs/reference/html/gi-GIArgInfo.html
docs/reference/html/gi-GIBaseInfo.html
docs/reference/html/gi-GICallableInfo.html
docs/reference/html/gi-GICallbackInfo.html
docs/reference/html/gi-GIConstantInfo.html
docs/reference/html/gi-GIEnumInfo.html
docs/reference/html/gi-GIFieldInfo.html
docs/reference/html/gi-GIFunctionInfo.html
docs/reference/html/gi-GIInterfaceInfo.html
docs/reference/html/gi-GIObjectInfo.html
docs/reference/html/gi-GIPropertyInfo.html
docs/reference/html/gi-GIRegisteredTypeInfo.html
docs/reference/html/gi-GISignalInfo.html
docs/reference/html/gi-GIStructInfo.html
docs/reference/html/gi-GITypeInfo.html
docs/reference/html/gi-GITypelib.html
docs/reference/html/gi-GIUnionInfo.html
docs/reference/html/gi-GIVFuncInfo.html
docs/reference/html/gi-GIValueInfo.html
docs/reference/html/gi-building.html
docs/reference/html/gi-common-types.html
docs/reference/html/gi-gir-reference.html
docs/reference/html/gi-girffi.html
docs/reference/html/gi-gitypelib.html
docs/reference/html/gi-programming.html
docs/reference/html/gi-struct-hierarchy.html
docs/reference/html/gi-typelib.html
docs/reference/html/gi.devhelp2
docs/reference/html/gi.html
docs/reference/html/home.png
docs/reference/html/index.html
docs/reference/html/index.sgml [new file with mode: 0644]
docs/reference/html/left-insensitive.png [deleted file]
docs/reference/html/left.png
docs/reference/html/overview.html
docs/reference/html/right-insensitive.png [deleted file]
docs/reference/html/right.png
docs/reference/html/style.css
docs/reference/html/up-insensitive.png [deleted file]
docs/reference/html/up.png
docs/reference/version.xml
gir/gio-2.0.c
gir/glib-2.0.c
gir/gobject-2.0.c
girepository/cmph/bdz.c [changed mode: 0755->0644]
girepository/cmph/bdz.h [changed mode: 0755->0644]
girepository/cmph/bdz_ph.c [changed mode: 0755->0644]
girepository/cmph/bdz_ph.h [changed mode: 0755->0644]
girepository/cmph/bdz_structs.h [changed mode: 0755->0644]
girepository/cmph/bdz_structs_ph.h [changed mode: 0755->0644]
girepository/cmph/brz.c [changed mode: 0755->0644]
girepository/cmph/brz_structs.h [changed mode: 0755->0644]
girepository/cmph/fch_structs.h [changed mode: 0755->0644]
girepository/giobjectinfo.c
girepository/girepository.c
girepository/girmodule.c
girepository/girnode.c
girepository/girnode.h
girepository/girparser.c
girepository/gitypeinfo.c
girepository/gitypelib-internal.h
girepository/gitypelib.c
giscanner/__init__.py
giscanner/annotationmain.py
giscanner/annotationparser.py
giscanner/ast.py
giscanner/cachestore.py
giscanner/ccompiler.py
giscanner/codegen.py
giscanner/collections/__init__.py
giscanner/docmain.py
giscanner/docwriter.py
giscanner/dumper.py
giscanner/gdumpparser.py
giscanner/girparser.py
giscanner/girwriter.py
giscanner/giscannermodule.c
giscanner/introspectablepass.py
giscanner/libtoolimporter.py
giscanner/maintransformer.py
giscanner/message.py
giscanner/msvccompiler.py
giscanner/scannermain.py
giscanner/sectionparser.py
giscanner/shlibs.py
giscanner/sourcescanner.py
giscanner/testcodegen.py
giscanner/transformer.py
giscanner/utils.py
giscanner/xmlwriter.py
gobject-introspection-1.0.pc
gobject-introspection-no-export-1.0.pc
gtk-doc.make
m4/gtk-doc.m4
m4/libtool.m4
misc/update-glib-annotations.py
misc/verbump.py
scannerlexer.c
scannerparser.c
scannerparser.h
tests/Makefile.in
tests/everything.c
tests/gimarshallingtests.c
tests/offsets/Makefile.in
tests/offsets/gen-gitestoffsets
tests/repository/Makefile.in
tests/scanner/Makefile.in
tests/scanner/Regress-1.0-C-expected/Regress.TestNoPtrCallback.page [new file with mode: 0644]
tests/scanner/Regress-1.0-C-expected/Regress.get_variant.page [new file with mode: 0644]
tests/scanner/Regress-1.0-C-expected/Regress.test_noptr_callback.page [new file with mode: 0644]
tests/scanner/Regress-1.0-C-expected/Regress.test_return_allow_none.page [new file with mode: 0644]
tests/scanner/Regress-1.0-C-expected/Regress.test_return_nullable.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Gjs-expected/Regress.TestNoPtrCallback.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Gjs-expected/Regress.get_variant.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Gjs-expected/Regress.test_noptr_callback.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Gjs-expected/Regress.test_return_allow_none.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Gjs-expected/Regress.test_return_nullable.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Python-expected/Regress.TestNoPtrCallback.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Python-expected/Regress.get_variant.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Python-expected/Regress.test_noptr_callback.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Python-expected/Regress.test_return_allow_none.page [new file with mode: 0644]
tests/scanner/Regress-1.0-Python-expected/Regress.test_return_nullable.page [new file with mode: 0644]
tests/scanner/Regress-1.0-expected.gir
tests/scanner/Regress-1.0-sections-expected.txt
tests/scanner/Utility-1.0-expected.gir
tests/scanner/WarnLib-1.0-expected.gir
tests/scanner/annotationparser/Makefile.am
tests/scanner/annotationparser/Makefile.in
tests/scanner/annotationparser/gi/annotation_not_nullable.xml [new file with mode: 0644]
tests/scanner/annotationparser/test_parser.py
tests/scanner/annotationparser/test_patterns.py
tests/scanner/regress.c
tests/scanner/regress.h
tests/scanner/test_sourcescanner.py
tests/scanner/test_transformer.py
tests/warn/Makefile.am
tests/warn/Makefile.in
tests/warn/invalid-allow-none.h [new file with mode: 0644]
tests/warn/invalid-nullable.h [new file with mode: 0644]
tests/warn/invalid-optional.h [new file with mode: 0644]
tests/warn/invalid-return.h [new file with mode: 0644]
tests/warn/invalid-transfer.h
tests/warn/warningtester.py
tools/compiler.c
tools/g-ir-tool-template.in

index 9aca664..a09260a 100644 (file)
@@ -152,13 +152,15 @@ GIO_LIBDIR=$(shell "${PKG_CONFIG}" --variable=libdir gio-2.0)
 GIO_LIBRARY=gio-2.0
 
 if HAVE_GIO_UNIX
-GIO_UNIX_HDRS=$(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0/gio/*.h
+GIO_UNIX_INCLUDEDIR = $(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0
+GIO_UNIX_HDRS = $(GIO_UNIX_INCLUDEDIR)/gio/*.h
 GIO_UNIX_PACKAGES = gio-unix-2.0
 else
+GIO_UNIX_INCLUDEDIR =
 GIO_UNIX_HDRS=
 GIO_UNIX_PACKAGES =
 endif
-GIO_CINCLUDES=$(patsubst %,--c-include='%',$(shell echo $(GIO_UNIX_HDRS)))
+GIO_CINCLUDES=$(patsubst $(GIO_UNIX_INCLUDEDIR)/%,--c-include='%',$(wildcard $(GIO_UNIX_HDRS)))
 
 Gio-2.0.gir: GObject-2.0.gir
 
index 5bc8425..b0e1373 100644 (file)
@@ -114,7 +114,8 @@ _giscanner_la_CFLAGS = \
 _giscanner_la_LIBADD = libgiscanner.la $(GOBJECT_LIBS)
 
 _giscanner_la_LDFLAGS = \
-       -module -avoid-version -export-symbols-regex init_giscanner
+       -module -avoid-version \
+       -export-symbols-regex "init_giscanner|PyInit__giscanner"
 
 if OS_WIN32
 # Windows requires Python extension modules to be explicitly
index cdfbd48..374dc14 100644 (file)
 # This is to fill in Visual C++ projects for projects which add/remove
 # sources from them every now and then.
 
-# --------------------------
-# cmph (static lib) projects
-# --------------------------
-./build/win32/vs9/cmph.vcproj: $(top_srcdir)/build/win32/vs9/cmph.vcprojin
-       for F in `echo $(libcmph_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '   <File RelativePath="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >cmph.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/cmph.vcprojin >$@
-       rm cmph.sourcefiles
-
-./build/win32/vs10/cmph.vcxproj: $(top_srcdir)/build/win32/vs10/cmph.vcxprojin
-       for F in `echo $(libcmph_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >cmph.vs10.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/cmph.vcxprojin >$@
-       rm cmph.vs10.sourcefiles
-
-./build/win32/vs10/cmph.vcxproj.filters: $(top_srcdir)/build/win32/vs10/cmph.vcxproj.filtersin
-       for F in `echo $(libcmph_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'"><Filter>Sources</Filter></ClCompile>' \
-                       ;; \
-               esac; \
-       done >cmph.vs10.sourcefiles.filters
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/cmph.vcxproj.filtersin >$@
-       rm cmph.vs10.sourcefiles.filters
+MSVCPROJS = cmph girepository g-ir-compiler
+
+cmph_FILES = $(libcmph_la_SOURCES)
+cmph_EXCLUDES = dummy
+
+girepository_FILES = $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES)
+girepository_EXCLUDES = gidummy
+girepository_HEADERS_DIR = $(includedir)/gobject-introspection-1.0
+girepository_HEADERS_INST = $(girepo_HEADERS)
+girepository_HEADERS_EXCLUDES = gidummy
+
+g_ir_compiler_FILES = $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES)
+g_ir_compiler_EXCLUDES = gidummy
+
+$(top_builddir)/build/win32/vs9/giscanner.scripts:
+       echo '' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo '' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+
+       echo '' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
 
-# -------------------------
-# girepository DLL projects
-# -------------------------
-./build/win32/vs9/girepository.vcproj: $(top_srcdir)/build/win32/vs9/girepository.vcprojin ./build/win32/vs9/gir.vs9.install
-       for F in `echo $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '   <File RelativePath="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >girepository.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/girepository.vcprojin >$@
-       rm girepository.sourcefiles
-
-./build/win32/vs10/girepository.vcxproj: $(top_srcdir)/build/win32/vs10/girepository.vcxprojin ./build/win32/vs10/gir.vs10.install
-       for F in `echo $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >girepository.vs10.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/girepository.vcxprojin >$@
-       rm girepository.vs10.sourcefiles
-
-./build/win32/vs10/girepository.vcxproj.filters: $(top_srcdir)/build/win32/vs10/girepository.vcxproj.filtersin
-       for F in `echo $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'"><Filter>Sources</Filter></ClCompile>' \
-                       ;; \
-               esac; \
-       done >girepository.vs10.sourcefiles.filters
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/girepository.vcxproj.filtersin >$@
-       rm girepository.vs10.sourcefiles.filters
-
-# ------------------------------------
-# g-ir-compiler.exe projects
-# (We integrate the
-# libgirepository_internals_la_SOURCES
-# and
-# libgirepository_gthash_la_SOURCES
-# here)
-# ------------------------------------
-./build/win32/vs9/g-ir-compiler.vcproj: $(top_srcdir)/build/win32/vs9/g-ir-compiler.vcprojin
-       for F in `echo $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '   <File RelativePath="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >g-ir-compiler.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/g-ir-compiler.vcprojin >$@
-       rm g-ir-compiler.sourcefiles
-
-./build/win32/vs10/g-ir-compiler.vcxproj: $(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxprojin
-       for F in `echo $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >g-ir-compiler.vs10.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxprojin >$@
-       rm g-ir-compiler.vs10.sourcefiles
-
-./build/win32/vs10/g-ir-compiler.vcxproj.filters: $(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxproj.filtersin
-       for F in `echo $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'"><Filter>Sources</Filter></ClCompile>' \
-                       ;; \
-               esac; \
-       done >g-ir-compiler.vs10.sourcefiles.filters
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxproj.filtersin >$@
-       rm g-ir-compiler.vs10.sourcefiles.filters
-
-#--------------------------------
-# Generate the "lists" of headers
-# and Python scripts to install
-#--------------------------------
-./build/win32/vs9/gir.vs9.install:
-       echo 'mkdir $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository&#x0D;&#x0A;' >./build/win32/vs9/gir.vs9.install
-       echo '' >>./build/win32/vs9/gir.vs9.install
-       for F in `echo $(girepo_HEADERS) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.h) echo 'copy ..\..\..\'$$F' $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository&#x0D;&#x0A;' \
-                       ;; \
-               esac; \
-       done >>./build/win32/vs9/gir.vs9.install
-       echo '' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo '' >>./build/win32/vs9/gir.vs9.install
        for F in `echo $(pkgpyexec_PYTHON) $(collections_PYTHON) $(nobase_dist_template_DATA) | tr '/' '\\\\'`; do \
                case $$F in \
                giscanner\\doctemplates\\C\\*.tmpl) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C&#x0D;&#x0A;' \
                giscanner\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;' \
                        ;; \
                esac; \
-       done >>./build/win32/vs9/gir.vs9.install
+       done >>$(top_builddir)/build/win32/vs9/giscanner.scripts
 
-./build/win32/vs10/gir.vs10.install:
-       echo 'mkdir $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository' >./build/win32/vs10/gir.vs10.install
-       echo '' >>./build/win32/vs10/gir.vs10.install
-       for F in `echo $(girepo_HEADERS) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.h) echo 'copy ..\..\..\'$$F' $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository' && \
-                       echo '' \
-                       ;; \
-               esac; \
-       done >>./build/win32/vs10/gir.vs10.install
-       echo '' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python' >>./build/win32/vs10/gir.vs10.install
-       echo '' >>./build/win32/vs10/gir.vs10.install
        for F in `echo $(pkgpyexec_PYTHON) $(collections_PYTHON) $(nobase_dist_template_DATA) | tr '/' '\\\\'`; do \
                case $$F in \
                giscanner\\doctemplates\\C\\*.tmpl) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C' \
                        ;; \
                giscanner\\collections\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner\collections' \
                        ;; \
-               giscanner\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner' && \
-                       echo '' \
+               giscanner\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner' \
                        ;; \
                esac; \
-       done >>./build/win32/vs10/gir.vs10.install
+       done >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
 
-./build/win32/vs9/gi-install.vsprops: ./build/win32/vs9/gir.vs9.install $(top_srcdir)/build/win32/vs9/gi-install.vspropsin
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gi-install.vspropsin >$@
-       rm ./build/win32/vs9/gir.vs9.install
+include $(top_srcdir)/build/Makefile.msvcproj
 
-./build/win32/vs10/gi-install.props: ./build/win32/vs10/gir.vs10.install $(top_srcdir)/build/win32/vs10/gi-install.propsin
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gi-install.propsin >$@
-       rm ./build/win32/vs10/gir.vs10.install
+# Autotools: Why must we do this instead of 'dist-hook'?
+MSVCPROJ_GENERATED = \
+       $(top_builddir)/build/win32/vs9/cmph.vcproj     \
+       $(top_builddir)/build/win32/vs9/girepository.vcproj     \
+       $(top_builddir)/build/win32/vs9/g-ir-compiler.vcproj
 
-GENERATED_MSVC_FILES = \
-       ./build/win32/vs9/girepository.vcproj   \
-       ./build/win32/vs10/girepository.vcxproj \
-       ./build/win32/vs10/girepository.vcxproj.filters \
-       ./build/win32/vs9/g-ir-compiler.vcproj  \
-       ./build/win32/vs10/g-ir-compiler.vcxproj        \
-       ./build/win32/vs10/g-ir-compiler.vcxproj.filters        \
-       ./build/win32/vs9/cmph.vcproj   \
-       ./build/win32/vs10/cmph.vcxproj \
-       ./build/win32/vs10/cmph.vcxproj.filters \
-       config.h.win32
+$(MSVCPROJ_GENERATED): $(top_builddir)/build/win32/vs9/girepository.headers $(top_builddir)/build/win32/vs9/giscanner.scripts
 
-EXTRA_DIST +=  \
-       $(GENERATED_MSVC_FILES)
+EXTRA_DIST += $(MSVCPROJ_GENERATED) config.h.win32
 
-CLEANFILES += $(GENERATED_MSVC_FILES)
+DISTCLEANFILES = config.h.win32
index ec004dc..c83a69e 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # This is to fill in Visual C++ projects for projects which add/remove
 # sources from them every now and then.
 
+# Author: Fan, Chun-wei
+# Common Autotools file used to generate Visual Studio 2008+
+# Projects from their templates
+
+# This autotools file, from GLib, can be used in other projects
+# that have Visual Studio build support, and is copied into
+# $(srcroot)/build/.
+
+# * Input variables:
+#
+#   MSVCPROJS - List of Projects that should be generated
+#
+# * Simple tutorial
+#
+# Add this to Makefile.am where your library/program is built:
+#   include $(top_srcdir)/build/Makefile.msvcproj
+#   MSVCPROJS = YourProject (can be multiple projects in a single srcdir)
+#   YourProject_FILES = $(libyourlib_1_0_SOURCES)
+#   YourProject_EXCLUDES = ... # list of sources to exclude, separated by '|', wildcards allowed; use random unsed value if none
+#   YourProject_HEADERS_DIR = $(libyourlibincludedir)
+#   YourProject_HEADERS_INST = $(libyourlib_1_0_HEADERS)
+#   YourProject_HEADERS_EXCLUDES = ... # <list of headers to exclude from installation, separated by '|', wildcards allowed; use random unsed value if none>
+#
+#   dist-hook: \ # (or add to it if it is already there, note the vs9 items will also call the vs10 items in the process)
+#      $(top_builddir)/build/win32/vs9/YourProject.vcproj      \
+#      $(top_builddir)/build/win32/vs9/YourProject.headers
+
+# Private functions
+
 
 
 
 
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -148,6 +167,32 @@ bin_PROGRAMS = g-ir-compiler$(EXEEXT) g-ir-generate$(EXEEXT)
 noinst_PROGRAMS = $(am__EXEEXT_1) glib-print$(EXEEXT)
 EXTRA_PROGRAMS = cmph-bdz-test$(EXEEXT) gthash-test$(EXEEXT)
 TESTS = cmph-bdz-test$(EXEEXT) gthash-test$(EXEEXT)
+DIST_COMMON = $(srcdir)/common.mk $(srcdir)/Makefile.introspection \
+       $(srcdir)/Makefile-cmph.am $(srcdir)/Makefile-girepository.am \
+       $(srcdir)/Makefile-giscanner.am $(srcdir)/Makefile-examples.am \
+       $(srcdir)/Makefile-gir.am $(srcdir)/Makefile-tools.am \
+       $(srcdir)/Makefile-msvcproj.am \
+       $(top_srcdir)/build/Makefile.msvcproj $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(top_srcdir)/configure \
+       $(am__configure_deps) $(srcdir)/config.h.in \
+       $(srcdir)/gobject-introspection-1.0.pc.in \
+       $(srcdir)/gobject-introspection-no-export-1.0.pc.in \
+       $(srcdir)/config.h.win32.in scannerlexer.c scannerparser.h \
+       scannerparser.c $(top_srcdir)/build-aux/depcomp \
+       $(top_srcdir)/build-aux/ylwrap $(collections_PYTHON) \
+       $(pkgpyexec_PYTHON) $(top_srcdir)/build-aux/py-compile \
+       $(dist_make_DATA) $(nobase_dist_template_DATA) \
+       $(girepo_HEADERS) $(top_srcdir)/build-aux/test-driver AUTHORS \
+       COPYING ChangeLog NEWS README TODO build-aux/compile \
+       build-aux/config.guess build-aux/config.sub build-aux/depcomp \
+       build-aux/install-sh build-aux/missing build-aux/py-compile \
+       build-aux/ylwrap build-aux/ltmain.sh \
+       $(top_srcdir)/build-aux/compile \
+       $(top_srcdir)/build-aux/config.guess \
+       $(top_srcdir)/build-aux/config.sub \
+       $(top_srcdir)/build-aux/install-sh \
+       $(top_srcdir)/build-aux/ltmain.sh \
+       $(top_srcdir)/build-aux/missing
 @OS_WIN32_FALSE@am__append_1 = gi-dump-types
 
 # Windows requires Python extension modules to be explicitly
@@ -172,11 +217,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
-       $(am__configure_deps) $(collections_PYTHON) \
-       $(pkgpyexec_PYTHON) $(dist_make_DATA) \
-       $(nobase_dist_template_DATA) $(girepo_HEADERS) \
-       $(am__DIST_COMMON)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
 mkinstalldirs = $(install_sh) -d
@@ -654,30 +694,6 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log)
 TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
-am__DIST_COMMON = $(srcdir)/Makefile-cmph.am \
-       $(srcdir)/Makefile-examples.am $(srcdir)/Makefile-gir.am \
-       $(srcdir)/Makefile-girepository.am \
-       $(srcdir)/Makefile-giscanner.am $(srcdir)/Makefile-msvcproj.am \
-       $(srcdir)/Makefile-tools.am $(srcdir)/Makefile.in \
-       $(srcdir)/Makefile.introspection $(srcdir)/common.mk \
-       $(srcdir)/config.h.in $(srcdir)/config.h.win32.in \
-       $(srcdir)/gobject-introspection-1.0.pc.in \
-       $(srcdir)/gobject-introspection-no-export-1.0.pc.in \
-       $(top_srcdir)/build-aux/compile \
-       $(top_srcdir)/build-aux/config.guess \
-       $(top_srcdir)/build-aux/config.sub \
-       $(top_srcdir)/build-aux/depcomp \
-       $(top_srcdir)/build-aux/install-sh \
-       $(top_srcdir)/build-aux/ltmain.sh \
-       $(top_srcdir)/build-aux/missing \
-       $(top_srcdir)/build-aux/py-compile \
-       $(top_srcdir)/build-aux/test-driver \
-       $(top_srcdir)/build-aux/ylwrap AUTHORS COPYING ChangeLog NEWS \
-       README TODO build-aux/compile build-aux/config.guess \
-       build-aux/config.sub build-aux/depcomp build-aux/install-sh \
-       build-aux/ltmain.sh build-aux/missing build-aux/py-compile \
-       build-aux/ylwrap scannerlexer.c scannerparser.c \
-       scannerparser.h
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -781,7 +797,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -904,9 +919,9 @@ man_MANS = docs/g-ir-compiler.1 docs/g-ir-generate.1 \
 EXTRA_DIST = girepository/docs.c $(STATIC_GIRSOURCES) \
        gir/cairo-1.0.gir.in gir/glib-2.0.c gir/gmodule-2.0.c \
        gir/gobject-2.0.c gir/gio-2.0.c tools/g-ir-tool-template.in \
-       $(GENERATED_MSVC_FILES) COPYING.LGPL COPYING.GPL CONTRIBUTORS \
-       $(pkgconfig_DATA) $(man_MANS) $(m4_DATA) misc/pep8.py \
-       misc/pyflakes.py misc/update-glib-annotations.py \
+       $(MSVCPROJ_GENERATED) config.h.win32 COPYING.LGPL COPYING.GPL \
+       CONTRIBUTORS $(pkgconfig_DATA) $(man_MANS) $(m4_DATA) \
+       misc/pep8.py misc/pyflakes.py misc/update-glib-annotations.py \
        misc/update-gtkdoc-tests.py misc/verbump.py
 lib_LTLIBRARIES = libgirepository-1.0.la
 noinst_LTLIBRARIES = libgirepository-internals.la \
@@ -915,8 +930,7 @@ BUILT_SOURCES = scannerparser.c scannerparser.h scannerlexer.c \
        scannerlexer.h gir/cairo-1.0.gir
 CLEANFILES = $(BUILT_SOURCES) cmph-bdz-test libcmph.la gthash-test \
        gir/cairo-1.0.gir $(BUILT_GIRSOURCES) $(typelibs_DATA) \
-       g-ir-scanner g-ir-annotation-tool g-ir-doc-tool \
-       $(GENERATED_MSVC_FILES)
+       g-ir-scanner g-ir-annotation-tool g-ir-doc-tool
 INTROSPECTION_GIRS = $(BUILT_GIRSOURCES)
 check_LTLIBRARIES = 
 bin_SCRIPTS = g-ir-scanner g-ir-annotation-tool $(am__append_5)
@@ -1265,7 +1279,7 @@ _giscanner_la_CFLAGS = \
 
 _giscanner_la_LIBADD = libgiscanner.la $(GOBJECT_LIBS) $(am__append_2)
 _giscanner_la_LDFLAGS = -module -avoid-version -export-symbols-regex \
-       init_giscanner $(am__append_3)
+       "init_giscanner|PyInit__giscanner" $(am__append_3)
 _giscanner_la_SOURCES = giscanner/giscannermodule.c
 glib_print_SOURCES = examples/glib-print.c
 glib_print_CFLAGS = $(GOBJECT_CFLAGS) -I$(top_srcdir)/girepository
@@ -1375,11 +1389,13 @@ GModule_2_0_gir_FILES = $(GLIB_INCLUDEDIR)/gmodule.h \
 GIO_INCLUDEDIR = $(shell "${PKG_CONFIG}" --variable=includedir gio-2.0)/glib-2.0
 GIO_LIBDIR = $(shell "${PKG_CONFIG}" --variable=libdir gio-2.0)
 GIO_LIBRARY = gio-2.0
+@HAVE_GIO_UNIX_FALSE@GIO_UNIX_INCLUDEDIR = 
+@HAVE_GIO_UNIX_TRUE@GIO_UNIX_INCLUDEDIR = $(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0
 @HAVE_GIO_UNIX_FALSE@GIO_UNIX_HDRS = 
-@HAVE_GIO_UNIX_TRUE@GIO_UNIX_HDRS = $(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0/gio/*.h
+@HAVE_GIO_UNIX_TRUE@GIO_UNIX_HDRS = $(GIO_UNIX_INCLUDEDIR)/gio/*.h
 @HAVE_GIO_UNIX_FALSE@GIO_UNIX_PACKAGES = 
 @HAVE_GIO_UNIX_TRUE@GIO_UNIX_PACKAGES = gio-unix-2.0
-GIO_CINCLUDES = $(patsubst %,--c-include='%',$(shell echo $(GIO_UNIX_HDRS)))
+GIO_CINCLUDES = $(patsubst $(GIO_UNIX_INCLUDEDIR)/%,--c-include='%',$(wildcard $(GIO_UNIX_HDRS)))
 Gio_2_0_gir_LIBS = $(GIO_LIBRARY)
 Gio_2_0_gir_SCANNERFLAGS = \
             --external-library \
@@ -1454,18 +1470,37 @@ GCOVSOURCES = \
        $(g_ir_compiler_SOURCES)                \
        $(g_ir_generate_SOURCES)
 
-GENERATED_MSVC_FILES = \
-       ./build/win32/vs9/girepository.vcproj   \
-       ./build/win32/vs10/girepository.vcxproj \
-       ./build/win32/vs10/girepository.vcxproj.filters \
-       ./build/win32/vs9/g-ir-compiler.vcproj  \
-       ./build/win32/vs10/g-ir-compiler.vcxproj        \
-       ./build/win32/vs10/g-ir-compiler.vcxproj.filters        \
-       ./build/win32/vs9/cmph.vcproj   \
-       ./build/win32/vs10/cmph.vcxproj \
-       ./build/win32/vs10/cmph.vcxproj.filters \
-       config.h.win32
-
+MSVCPROJS = cmph girepository g-ir-compiler
+cmph_FILES = $(libcmph_la_SOURCES)
+cmph_EXCLUDES = dummy
+girepository_FILES = $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES)
+girepository_EXCLUDES = gidummy
+girepository_HEADERS_DIR = $(includedir)/gobject-introspection-1.0
+girepository_HEADERS_INST = $(girepo_HEADERS)
+girepository_HEADERS_EXCLUDES = gidummy
+g_ir_compiler_FILES = $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES)
+g_ir_compiler_EXCLUDES = gidummy
+_proj_name = $(subst /,_,$(subst -,_,$(subst .,_,$(1))))
+_proj_path_raw := $(subst $(abs_top_srcdir),,$(abs_srcdir))
+_proj_path = $(subst /,\\,$(_proj_path_raw))
+_proj_subdir_int = $(subst \\\\,\\,\\$(_proj_path)\\)
+_proj_subdir = $(subst \\.\\,\\,$(_proj_subdir_int))
+_proj_files_raw = $(subst /,\\,$($(_proj_name)_FILES))
+_proj_files = $(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_proj_path)\\,\\,$(_proj_files_raw))))
+_proj_filters = $($(_proj_name)_EXCLUDES)
+_proj_headers_raw = $(subst /,\\,$($(_proj_name)_HEADERS_INST))
+_proj_headers = $(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_proj_path)\\,\\,$(_proj_headers_raw))))
+_proj_headers_excludes = $($(_proj_name)_HEADERS_EXCLUDES)
+_headers_dest_posix = $(subst $(includedir),,$($(_proj_name)_HEADERS_DIR))
+_headers_destdir = $(subst /,\\,$(_headers_dest_posix))
+
+# Autotools: Why must we do this instead of 'dist-hook'?
+MSVCPROJ_GENERATED = \
+       $(top_builddir)/build/win32/vs9/cmph.vcproj     \
+       $(top_builddir)/build/win32/vs9/girepository.vcproj     \
+       $(top_builddir)/build/win32/vs9/g-ir-compiler.vcproj
+
+DISTCLEANFILES = config.h.win32
 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 SUBDIRS = . docs tests build
 DIST_SUBDIRS = $(SUBDIRS)
@@ -1502,7 +1537,7 @@ all: $(BUILT_SOURCES) config.h
 .SUFFIXES: .c .l .lo .log .o .obj .test .test$(EXEEXT) .trs .y
 am--refresh: Makefile
        @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/common.mk $(srcdir)/Makefile.introspection $(srcdir)/Makefile-cmph.am $(srcdir)/Makefile-girepository.am $(srcdir)/Makefile-giscanner.am $(srcdir)/Makefile-examples.am $(srcdir)/Makefile-gir.am $(srcdir)/Makefile-tools.am $(srcdir)/Makefile-msvcproj.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/common.mk $(srcdir)/Makefile.introspection $(srcdir)/Makefile-cmph.am $(srcdir)/Makefile-girepository.am $(srcdir)/Makefile-giscanner.am $(srcdir)/Makefile-examples.am $(srcdir)/Makefile-gir.am $(srcdir)/Makefile-tools.am $(srcdir)/Makefile-msvcproj.am $(top_srcdir)/build/Makefile.msvcproj $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
@@ -1515,6 +1550,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/co
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -1524,7 +1560,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
        esac;
-$(srcdir)/common.mk $(srcdir)/Makefile.introspection $(srcdir)/Makefile-cmph.am $(srcdir)/Makefile-girepository.am $(srcdir)/Makefile-giscanner.am $(srcdir)/Makefile-examples.am $(srcdir)/Makefile-gir.am $(srcdir)/Makefile-tools.am $(srcdir)/Makefile-msvcproj.am $(am__empty):
+$(srcdir)/common.mk $(srcdir)/Makefile.introspection $(srcdir)/Makefile-cmph.am $(srcdir)/Makefile-girepository.am $(srcdir)/Makefile-giscanner.am $(srcdir)/Makefile-examples.am $(srcdir)/Makefile-gir.am $(srcdir)/Makefile-tools.am $(srcdir)/Makefile-msvcproj.am $(top_srcdir)/build/Makefile.msvcproj:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        $(SHELL) ./config.status --recheck
@@ -1536,8 +1572,8 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 $(am__aclocal_m4_deps):
 
 config.h: stamp-h1
-       @test -f $@ || rm -f stamp-h1
-       @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
+       @if test ! -f $@; then rm -f stamp-h1; else :; fi
+       @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
 
 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
        @rm -f stamp-h1
@@ -1869,14 +1905,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -2846,7 +2882,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -3066,16 +3102,10 @@ dist-xz: distdir
        $(am__post_remove_distdir)
 
 dist-tarZ: distdir
-       @echo WARNING: "Support for distribution archives compressed with" \
-                      "legacy program 'compress' is deprecated." >&2
-       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
        $(am__post_remove_distdir)
 
 dist-shar: distdir
-       @echo WARNING: "Support for shar distribution archives is" \
-                      "deprecated." >&2
-       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
        $(am__post_remove_distdir)
 
@@ -3110,17 +3140,16 @@ distcheck: dist
        esac
        chmod -R a-w $(distdir)
        chmod u+w $(distdir)
-       mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
+       mkdir $(distdir)/_build $(distdir)/_inst
        chmod a-w $(distdir)
        test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
          && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
          && am__cwd=`pwd` \
-         && $(am__cd) $(distdir)/_build/sub \
-         && ../../configure \
+         && $(am__cd) $(distdir)/_build \
+         && ../configure --srcdir=.. --prefix="$$dc_install_base" \
            $(AM_DISTCHECK_CONFIGURE_FLAGS) \
            $(DISTCHECK_CONFIGURE_FLAGS) \
-           --srcdir=../.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) dvi \
          && $(MAKE) $(AM_MAKEFLAGS) check \
@@ -3218,6 +3247,7 @@ clean-generic:
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
        -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+       -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -3352,8 +3382,6 @@ uninstall-man: uninstall-man1
        uninstall-pkgpyexecLTLIBRARIES uninstall-pkgpyexecPYTHON \
        uninstall-typelibsDATA
 
-.PRECIOUS: Makefile
-
 
 # Make sure the required variables are set, these should under normal
 # circumstances come from introspection.m4
@@ -3490,131 +3518,24 @@ g-ir-doc-tool: tools/g-ir-tool-template.in _giscanner.la Makefile
        $(AM_V_GEN) sed $(TOOL_SUBSTITUTIONS) -e s,@TOOL_MODULE\@,docmain, -e s,@TOOL_FUNCTION\@,doc_main, $< > $@.tmp && mv $@.tmp $@
        @chmod a+x $@
 
-# --------------------------
-# cmph (static lib) projects
-# --------------------------
-./build/win32/vs9/cmph.vcproj: $(top_srcdir)/build/win32/vs9/cmph.vcprojin
-       for F in `echo $(libcmph_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '   <File RelativePath="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >cmph.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/cmph.vcprojin >$@
-       rm cmph.sourcefiles
-
-./build/win32/vs10/cmph.vcxproj: $(top_srcdir)/build/win32/vs10/cmph.vcxprojin
-       for F in `echo $(libcmph_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >cmph.vs10.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/cmph.vcxprojin >$@
-       rm cmph.vs10.sourcefiles
+$(top_builddir)/build/win32/vs9/giscanner.scripts:
+       echo '' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+       echo '' >>$(top_builddir)/build/win32/vs9/giscanner.scripts
+
+       echo '' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python' >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
 
-./build/win32/vs10/cmph.vcxproj.filters: $(top_srcdir)/build/win32/vs10/cmph.vcxproj.filtersin
-       for F in `echo $(libcmph_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'"><Filter>Sources</Filter></ClCompile>' \
-                       ;; \
-               esac; \
-       done >cmph.vs10.sourcefiles.filters
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/cmph.vcxproj.filtersin >$@
-       rm cmph.vs10.sourcefiles.filters
-
-# -------------------------
-# girepository DLL projects
-# -------------------------
-./build/win32/vs9/girepository.vcproj: $(top_srcdir)/build/win32/vs9/girepository.vcprojin ./build/win32/vs9/gir.vs9.install
-       for F in `echo $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '   <File RelativePath="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >girepository.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/girepository.vcprojin >$@
-       rm girepository.sourcefiles
-
-./build/win32/vs10/girepository.vcxproj: $(top_srcdir)/build/win32/vs10/girepository.vcxprojin ./build/win32/vs10/gir.vs10.install
-       for F in `echo $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >girepository.vs10.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/girepository.vcxprojin >$@
-       rm girepository.vs10.sourcefiles
-
-./build/win32/vs10/girepository.vcxproj.filters: $(top_srcdir)/build/win32/vs10/girepository.vcxproj.filtersin
-       for F in `echo $(libgirepository_1_0_la_SOURCES) $(libgirepository_gthash_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'"><Filter>Sources</Filter></ClCompile>' \
-                       ;; \
-               esac; \
-       done >girepository.vs10.sourcefiles.filters
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/girepository.vcxproj.filtersin >$@
-       rm girepository.vs10.sourcefiles.filters
-
-# ------------------------------------
-# g-ir-compiler.exe projects
-# (We integrate the
-# libgirepository_internals_la_SOURCES
-# and
-# libgirepository_gthash_la_SOURCES
-# here)
-# ------------------------------------
-./build/win32/vs9/g-ir-compiler.vcproj: $(top_srcdir)/build/win32/vs9/g-ir-compiler.vcprojin
-       for F in `echo $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '   <File RelativePath="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >g-ir-compiler.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/g-ir-compiler.vcprojin >$@
-       rm g-ir-compiler.sourcefiles
-
-./build/win32/vs10/g-ir-compiler.vcxproj: $(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxprojin
-       for F in `echo $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'" />' \
-                       ;; \
-               esac; \
-       done >g-ir-compiler.vs10.sourcefiles
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxprojin >$@
-       rm g-ir-compiler.vs10.sourcefiles
-
-./build/win32/vs10/g-ir-compiler.vcxproj.filters: $(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxproj.filtersin
-       for F in `echo $(libgirepository_gthash_la_SOURCES) $(libgirepository_internals_la_SOURCES) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.c)    echo '    <ClCompile Include="..\..\..\'$$F'"><Filter>Sources</Filter></ClCompile>' \
-                       ;; \
-               esac; \
-       done >g-ir-compiler.vs10.sourcefiles.filters
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/g-ir-compiler.vcxproj.filtersin >$@
-       rm g-ir-compiler.vs10.sourcefiles.filters
-
-#--------------------------------
-# Generate the "lists" of headers
-# and Python scripts to install
-#--------------------------------
-./build/win32/vs9/gir.vs9.install:
-       echo 'mkdir $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository&#x0D;&#x0A;' >./build/win32/vs9/gir.vs9.install
-       echo '' >>./build/win32/vs9/gir.vs9.install
-       for F in `echo $(girepo_HEADERS) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.h) echo 'copy ..\..\..\'$$F' $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository&#x0D;&#x0A;' \
-                       ;; \
-               esac; \
-       done >>./build/win32/vs9/gir.vs9.install
-       echo '' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python&#x0D;&#x0A;' >>./build/win32/vs9/gir.vs9.install
-       echo '' >>./build/win32/vs9/gir.vs9.install
        for F in `echo $(pkgpyexec_PYTHON) $(collections_PYTHON) $(nobase_dist_template_DATA) | tr '/' '\\\\'`; do \
                case $$F in \
                giscanner\\doctemplates\\C\\*.tmpl) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C&#x0D;&#x0A;' \
@@ -3630,25 +3551,8 @@ g-ir-doc-tool: tools/g-ir-tool-template.in _giscanner.la Makefile
                giscanner\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;' \
                        ;; \
                esac; \
-       done >>./build/win32/vs9/gir.vs9.install
+       done >>$(top_builddir)/build/win32/vs9/giscanner.scripts
 
-./build/win32/vs10/gir.vs10.install:
-       echo 'mkdir $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository' >./build/win32/vs10/gir.vs10.install
-       echo '' >>./build/win32/vs10/gir.vs10.install
-       for F in `echo $(girepo_HEADERS) | tr '/' '\\\\'`; do \
-               case $$F in \
-               *.h) echo 'copy ..\..\..\'$$F' $$(CopyDir)\include\gobject-introspection-$$(ApiVersion)\girepository' && \
-                       echo '' \
-                       ;; \
-               esac; \
-       done >>./build/win32/vs10/gir.vs10.install
-       echo '' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\collections' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs' >>./build/win32/vs10/gir.vs10.install
-       echo 'mkdir $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python' >>./build/win32/vs10/gir.vs10.install
-       echo '' >>./build/win32/vs10/gir.vs10.install
        for F in `echo $(pkgpyexec_PYTHON) $(collections_PYTHON) $(nobase_dist_template_DATA) | tr '/' '\\\\'`; do \
                case $$F in \
                giscanner\\doctemplates\\C\\*.tmpl) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C' \
@@ -3661,19 +3565,70 @@ g-ir-doc-tool: tools/g-ir-tool-template.in _giscanner.la Makefile
                        ;; \
                giscanner\\collections\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner\collections' \
                        ;; \
-               giscanner\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner' && \
-                       echo '' \
+               giscanner\\*.py) echo 'copy ..\..\..\'$$F' $$(CopyDir)\lib\gobject-introspection\giscanner' \
                        ;; \
                esac; \
-       done >>./build/win32/vs10/gir.vs10.install
+       done >>$(top_builddir)/build/win32/vs10/giscanner.vs10.scripts
+
+#
+# Creates Visual Studio 2008/2010 projects from items passed in from autotools files
+# $(1) - Base Name of the MSVC project files (outputs)
+#
+
+define msvcproj-builder
+
+$(top_builddir)/build/win32/vs10/$(1).vcxproj: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(top_builddir)/build/win32/vs10/$(1).vcxproj.filters: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(1).sourcefiles: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(1).vs10.sourcefiles: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(1).vs10.sourcefiles.filters: $(top_builddir)/build/win32/vs9/$(1).vcproj
+
+$(top_builddir)/build/win32/vs9/$(1).vcproj:
+       -$(RM) $(top_builddir)/build/win32/vs9/$(1).vcproj
+       -$(RM) $(top_builddir)/build/win32/vs10/$(1).vcxproj
+       -$(RM) $(top_builddir)/build/win32/vs10/$(1).vcxproj.filters
+
+       for F in $(_proj_files); do \
+               case $$$$F in \
+               $(_proj_filters)) \
+                       ;; \
+               *.c|*.cpp|*.cc|*.cxx) \
+                       echo '   <File RelativePath="..\..\..'$(_proj_subdir)$$$$F'" />' >>$(1).sourcefiles && \
+                       echo '   <ClCompile Include="..\..\..'$(_proj_subdir)$$$$F'" />' >>$(1).vs10.sourcefiles && \
+                       echo '   <ClCompile Include="..\..\..'$(_proj_subdir)$$$$F'"><Filter>Source Files</Filter></ClCompile>' >>$(1).vs10.sourcefiles.filters \
+                       ;; \
+               esac;   \
+       done
+
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/$(1).vcprojin >$(top_builddir)/build/win32/vs9/$(1).vcproj
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(1).vcxprojin >$(top_builddir)/build/win32/vs10/$(1).vcxproj
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(1).vcxproj.filtersin >$(top_builddir)/build/win32/vs10/$(1).vcxproj.filters
+       $(RM) $(1).sourcefiles
+       $(RM) $(1).vs10.sourcefiles
+       $(RM) $(1).vs10.sourcefiles.filters
+
+$(top_builddir)/build/win32/vs10/$(1).vs10.headers: $(top_builddir)/build/win32/vs9/$(1).headers
+
+$(top_builddir)/build/win32/vs9/$(1).headers:
+       -$(RM) $(top_builddir)/build/win32/vs9/$(1).headers
+       -$(RM) $(top_builddir)/build/win32/vs10/$(1).vs10.headers
+
+       for F in $(_proj_headers); do \
+               case $$$$F in \
+               $(_proj_headers_excludes)) \
+                       ;; \
+               *.h|*.hpp|*.hh|*.hxx) \
+                       echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F'&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/$(1).headers && \
+                       echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F >>$(top_builddir)/build/win32/vs10/$(1).vs10.headers \
+                       ;; \
+               esac;   \
+       done
+
+endef
 
-./build/win32/vs9/gi-install.vsprops: ./build/win32/vs9/gir.vs9.install $(top_srcdir)/build/win32/vs9/gi-install.vspropsin
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gi-install.vspropsin >$@
-       rm ./build/win32/vs9/gir.vs9.install
+$(foreach proj,$(MSVCPROJS),$(eval $(call msvcproj-builder,$(proj))))
 
-./build/win32/vs10/gi-install.props: ./build/win32/vs10/gir.vs10.install $(top_srcdir)/build/win32/vs10/gi-install.propsin
-       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gi-install.propsin >$@
-       rm ./build/win32/vs10/gir.vs10.install
+$(MSVCPROJ_GENERATED): $(top_builddir)/build/win32/vs9/girepository.headers $(top_builddir)/build/win32/vs9/giscanner.scripts
 
 check-local:
        @echo "TEST: PEP-8 INQUISITION"
index 4b7e7ce..29eeea6 100644 (file)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.15 -*- Autoconf -*-
+# generated automatically by aclocal 1.13.4 -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -220,22 +220,7 @@ m4_popdef([pkg_default])
 m4_popdef([pkg_description])
 ]) dnl PKG_NOARCH_INSTALLDIR
 
-
-# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
-# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# -------------------------------------------
-# Retrieves the value of the pkg-config variable for the given module.
-AC_DEFUN([PKG_CHECK_VAR],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
-
-_PKG_CONFIG([$1], [variable="][$3]["], [$2])
-AS_VAR_COPY([$1], [pkg_cv_][$1])
-
-AS_VAR_IF([$1], [""], [$5], [$4])dnl
-])# PKG_CHECK_VAR
-
-# Copyright (C) 2002-2014 Free Software Foundation, Inc.
+# Copyright (C) 2002-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -247,10 +232,10 @@ AS_VAR_IF([$1], [""], [$5], [$4])dnl
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.15'
+[am__api_version='1.13'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.15], [],
+m4_if([$1], [1.13.4], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -266,14 +251,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15])dnl
+[AM_AUTOMAKE_VERSION([1.13.4])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -318,14 +303,15 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 # configured tree to be moved without reconfiguration.
 
 AC_DEFUN([AM_AUX_DIR_EXPAND],
-[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
-# Expand $ac_aux_dir to an absolute path.
-am_aux_dir=`cd "$ac_aux_dir" && pwd`
+[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
 ])
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -356,7 +342,7 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -547,7 +533,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -623,7 +609,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -632,12 +618,6 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
 
-dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
-m4_define([AC_PROG_CC],
-m4_defn([AC_PROG_CC])
-[_AM_PROG_CC_C_O
-])
-
 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
 # AM_INIT_AUTOMAKE([OPTIONS])
 # -----------------------------------------------
@@ -713,8 +693,8 @@ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target (and possibly the TAP driver).  The
-# system "awk" is bad on some platforms.
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
 AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
@@ -746,51 +726,6 @@ dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
 AC_CONFIG_COMMANDS_PRE(dnl
 [m4_provide_if([_AM_COMPILER_EXEEXT],
   [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-
-# POSIX will say in a future version that running "rm -f" with no argument
-# is OK; and we want to be able to make that assumption in our Makefile
-# recipes.  So use an aggressive probe to check that the usage we want is
-# actually supported "in the wild" to an acceptable degree.
-# See automake bug#10828.
-# To make any issue more visible, cause the running configure to be aborted
-# by default if the 'rm' program in use doesn't match our expectations; the
-# user can still override this though.
-if rm -f && rm -fr && rm -rf; then : OK; else
-  cat >&2 <<'END'
-Oops!
-
-Your 'rm' program seems unable to run without file operands specified
-on the command line, even when the '-f' option is present.  This is contrary
-to the behaviour of most rm programs out there, and not conforming with
-the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
-
-Please tell bug-automake@gnu.org about your system, including the value
-of your $PATH and any error possibly output before this message.  This
-can help us improve future automake versions.
-
-END
-  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
-    echo 'Configuration will proceed anyway, since you have set the' >&2
-    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
-    echo >&2
-  else
-    cat >&2 <<'END'
-Aborting the configuration process, to ensure you take notice of the issue.
-
-You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
-
-If you want to complete the configuration process using your problematic
-'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
-to "yes", and re-run configure.
-
-END
-    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
-  fi
-fi
-dnl The trailing newline in this macro's definition is deliberate, for
-dnl backward compatibility and to allow trailing 'dnl'-style comments
-dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
 ])
 
 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
@@ -799,6 +734,7 @@ dnl mangled by Autoconf and run in a shell conditional statement.
 m4_define([_AC_COMPILER_EXEEXT],
 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
 
+
 # When config.status generates a header, we must update the stamp-h file.
 # This file resides in the same directory as the config header
 # that is generated.  The stamp files are numbered to have different names.
@@ -820,7 +756,7 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -831,7 +767,7 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
 # Define $install_sh.
 AC_DEFUN([AM_PROG_INSTALL_SH],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh+set}" != xset; then
+if test x"${install_sh}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -841,7 +777,7 @@ if test x"${install_sh+set}" != xset; then
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2014 Free Software Foundation, Inc.
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -863,7 +799,7 @@ AC_SUBST([am__leading_dot])])
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -898,7 +834,7 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
 
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -946,9 +882,41 @@ AC_MSG_RESULT([$_am_result])
 rm -f confinc confmf
 ])
 
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_CC_C_O
+# --------------
+# Like AC_PROG_CC_C_O, but changed for automake.
+AC_DEFUN([AM_PROG_CC_C_O],
+[AC_REQUIRE([AC_PROG_CC_C_O])dnl
+AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([compile])dnl
+# FIXME: we rely on the cache variable name because
+# there is no other way.
+set dummy $CC
+am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']`
+eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
+if test "$am_t" != yes; then
+   # Losing compiler, so override with the script.
+   # FIXME: It is wrong to rewrite CC.
+   # But if we don't then we get into trouble of one sort or another.
+   # A longer-term fix would be to have automake use am__CC in this case,
+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+   CC="$am_aux_dir/compile $CC"
+fi
+dnl Make sure AC_PROG_CC is never called again, or it will override our
+dnl setting of CC.
+m4_define([AC_PROG_CC],
+          [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])])
+])
+
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -987,7 +955,7 @@ fi
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1016,54 +984,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# _AM_PROG_CC_C_O
-# ---------------
-# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
-# to automatically call this.
-AC_DEFUN([_AM_PROG_CC_C_O],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([compile])dnl
-AC_LANG_PUSH([C])dnl
-AC_CACHE_CHECK(
-  [whether $CC understands -c and -o together],
-  [am_cv_prog_cc_c_o],
-  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
-  # Make sure it works both with $CC and with simple cc.
-  # Following AC_PROG_CC_C_O, we do the test twice because some
-  # compilers refuse to overwrite an existing .o file with -o,
-  # though they will create one.
-  am_cv_prog_cc_c_o=yes
-  for am_i in 1 2; do
-    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
-         && test -f conftest2.$ac_objext; then
-      : OK
-    else
-      am_cv_prog_cc_c_o=no
-      break
-    fi
-  done
-  rm -f core conftest*
-  unset am_i])
-if test "$am_cv_prog_cc_c_o" != yes; then
-   # Losing compiler, so override with the script.
-   # FIXME: It is wrong to rewrite CC.
-   # But if we don't then we get into trouble of one sort or another.
-   # A longer-term fix would be to have automake use am__CC in this case,
-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
-   CC="$am_aux_dir/compile $CC"
-fi
-AC_LANG_POP([C])])
-
-# For backward compatibility.
-AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
-
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1298,7 +1219,7 @@ for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
 sys.exit(sys.hexversion < minverhex)"
   AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1317,7 +1238,7 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1398,7 +1319,7 @@ AC_CONFIG_COMMANDS_PRE(
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2014 Free Software Foundation, Inc.
+# Copyright (C) 2009-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1458,7 +1379,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1486,7 +1407,7 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2014 Free Software Foundation, Inc.
+# Copyright (C) 2006-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1505,7 +1426,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2014 Free Software Foundation, Inc.
+# Copyright (C) 2004-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
index a85b723..531136b 100755 (executable)
@@ -3,7 +3,7 @@
 
 scriptversion=2012-10-14.11; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 # Written by Tom Tromey <tromey@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
index dbfb978..b79252d 100755 (executable)
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2015 Free Software Foundation, Inc.
+#   Copyright 1992-2013 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+timestamp='2013-06-10'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -24,12 +24,12 @@ timestamp='2015-01-01'
 # program.  This Exception is an additional permission under section 7
 # of the GNU General Public License, version 3 ("GPLv3").
 #
-# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
+# Originally written by Per Bothner.
 #
 # You can get the latest version of this script from:
 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
 #
-# Please send patches to <config-patches@gnu.org>.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
 
 
 me=`echo "$0" | sed -e 's,.*/,,'`
@@ -50,7 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2015 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -149,7 +149,7 @@ Linux|GNU|GNU/*)
        LIBC=gnu
        #endif
        EOF
-       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
        ;;
 esac
 
@@ -579,9 +579,8 @@ EOF
        else
                IBM_ARCH=powerpc
        fi
-       if [ -x /usr/bin/lslpp ] ; then
-               IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
-                          awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
+       if [ -x /usr/bin/oslevel ] ; then
+               IBM_REV=`/usr/bin/oslevel`
        else
                IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
        fi
@@ -827,7 +826,7 @@ EOF
     *:MINGW*:*)
        echo ${UNAME_MACHINE}-pc-mingw32
        exit ;;
-    *:MSYS*:*)
+    i*:MSYS*:*)
        echo ${UNAME_MACHINE}-pc-msys
        exit ;;
     i*:windows32*:*)
@@ -970,10 +969,10 @@ EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
        test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
        ;;
-    openrisc*:Linux:*:*)
-       echo or1k-unknown-linux-${LIBC}
+    or1k:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
-    or32:Linux:*:* | or1k*:Linux:*:*)
+    or32:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     padre:Linux:*:*)
@@ -1261,26 +1260,16 @@ EOF
        if test "$UNAME_PROCESSOR" = unknown ; then
            UNAME_PROCESSOR=powerpc
        fi
-       if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
-           if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-               if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-                   (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-                   grep IS_64BIT_ARCH >/dev/null
-               then
-                   case $UNAME_PROCESSOR in
-                       i386) UNAME_PROCESSOR=x86_64 ;;
-                       powerpc) UNAME_PROCESSOR=powerpc64 ;;
-                   esac
-               fi
+       if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+           if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+               (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+               grep IS_64BIT_ARCH >/dev/null
+           then
+               case $UNAME_PROCESSOR in
+                   i386) UNAME_PROCESSOR=x86_64 ;;
+                   powerpc) UNAME_PROCESSOR=powerpc64 ;;
+               esac
            fi
-       elif test "$UNAME_PROCESSOR" = i386 ; then
-           # Avoid executing cc on OS X 10.9, as it ships with a stub
-           # that puts up a graphical alert prompting to install
-           # developer tools.  Any system running Mac OS X 10.7 or
-           # later (Darwin 11 and later) is required to have a 64-bit
-           # processor. This is not true of the ARM version of Darwin
-           # that Apple uses in portable devices.
-           UNAME_PROCESSOR=x86_64
        fi
        echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
        exit ;;
@@ -1372,6 +1361,154 @@ EOF
        exit ;;
 esac
 
+eval $set_cc_for_build
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+     I don't know....  */
+  printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+  printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+       "4"
+#else
+       ""
+#endif
+       ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+  printf ("arm-acorn-riscix\n"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+  printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+  int version;
+  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+  exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+  printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+  printf ("ns32k-encore-mach\n"); exit (0);
+#else
+  printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+  printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+  printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+  printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+    struct utsname un;
+
+    uname(&un);
+
+    if (strncmp(un.version, "V2", 2) == 0) {
+       printf ("i386-sequent-ptx2\n"); exit (0);
+    }
+    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+       printf ("i386-sequent-ptx1\n"); exit (0);
+    }
+    printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+  printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+  exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+       { echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+    case `getsysinfo -f cpu_type` in
+    c1*)
+       echo c1-convex-bsd
+       exit ;;
+    c2*)
+       if getsysinfo -f scalar_acc
+       then echo c32-convex-bsd
+       else echo c2-convex-bsd
+       fi
+       exit ;;
+    c34*)
+       echo c34-convex-bsd
+       exit ;;
+    c38*)
+       echo c38-convex-bsd
+       exit ;;
+    c4*)
+       echo c4-convex-bsd
+       exit ;;
+    esac
+fi
+
 cat >&2 <<EOF
 $0: unable to guess system type
 
index 6467c95..c765b34 100755 (executable)
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2015 Free Software Foundation, Inc.
+#   Copyright 1992-2013 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+timestamp='2013-04-24'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -25,7 +25,7 @@ timestamp='2015-01-01'
 # of the GNU General Public License, version 3 ("GPLv3").
 
 
-# Please send patches to <config-patches@gnu.org>.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
@@ -68,7 +68,7 @@ Report bugs and patches to <config-patches@gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2015 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -257,15 +257,14 @@ case $basic_machine in
        | avr | avr32 \
        | be32 | be64 \
        | bfin \
-       | c4x | c8051 | clipper \
+       | c4x | clipper \
        | d10v | d30v | dlx | dsp16xx \
        | epiphany \
-       | fido | fr30 | frv | ft32 \
+       | fido | fr30 | frv \
        | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
        | hexagon \
        | i370 | i860 | i960 | ia64 \
        | ip2k | iq2000 \
-       | k1om \
        | le32 | le64 \
        | lm32 \
        | m32c | m32r | m32rle | m68000 | m68k | m88k \
@@ -283,10 +282,8 @@ case $basic_machine in
        | mips64vr5900 | mips64vr5900el \
        | mipsisa32 | mipsisa32el \
        | mipsisa32r2 | mipsisa32r2el \
-       | mipsisa32r6 | mipsisa32r6el \
        | mipsisa64 | mipsisa64el \
        | mipsisa64r2 | mipsisa64r2el \
-       | mipsisa64r6 | mipsisa64r6el \
        | mipsisa64sb1 | mipsisa64sb1el \
        | mipsisa64sr71k | mipsisa64sr71kel \
        | mipsr5900 | mipsr5900el \
@@ -298,11 +295,11 @@ case $basic_machine in
        | nds32 | nds32le | nds32be \
        | nios | nios2 | nios2eb | nios2el \
        | ns16k | ns32k \
-       | open8 | or1k | or1knd | or32 \
+       | open8 \
+       | or1k | or32 \
        | pdp10 | pdp11 | pj | pjl \
        | powerpc | powerpc64 | powerpc64le | powerpcle \
        | pyramid \
-       | riscv32 | riscv64 \
        | rl78 | rx \
        | score \
        | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
@@ -313,7 +310,6 @@ case $basic_machine in
        | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
        | ubicom32 \
        | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
-       | visium \
        | we32k \
        | x86 | xc16x | xstormy16 | xtensa \
        | z8k | z80)
@@ -328,10 +324,7 @@ case $basic_machine in
        c6x)
                basic_machine=tic6x-unknown
                ;;
-       leon|leon[3-9])
-               basic_machine=sparc-$basic_machine
-               ;;
-       m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
+       m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
                basic_machine=$basic_machine-unknown
                os=-none
                ;;
@@ -379,7 +372,7 @@ case $basic_machine in
        | be32-* | be64-* \
        | bfin-* | bs2000-* \
        | c[123]* | c30-* | [cjt]90-* | c4x-* \
-       | c8051-* | clipper-* | craynv-* | cydra-* \
+       | clipper-* | craynv-* | cydra-* \
        | d10v-* | d30v-* | dlx-* \
        | elxsi-* \
        | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
@@ -388,7 +381,6 @@ case $basic_machine in
        | hexagon-* \
        | i*86-* | i860-* | i960-* | ia64-* \
        | ip2k-* | iq2000-* \
-       | k1om-* \
        | le32-* | le64-* \
        | lm32-* \
        | m32c-* | m32r-* | m32rle-* \
@@ -408,10 +400,8 @@ case $basic_machine in
        | mips64vr5900-* | mips64vr5900el-* \
        | mipsisa32-* | mipsisa32el-* \
        | mipsisa32r2-* | mipsisa32r2el-* \
-       | mipsisa32r6-* | mipsisa32r6el-* \
        | mipsisa64-* | mipsisa64el-* \
        | mipsisa64r2-* | mipsisa64r2el-* \
-       | mipsisa64r6-* | mipsisa64r6el-* \
        | mipsisa64sb1-* | mipsisa64sb1el-* \
        | mipsisa64sr71k-* | mipsisa64sr71kel-* \
        | mipsr5900-* | mipsr5900el-* \
@@ -423,7 +413,6 @@ case $basic_machine in
        | nios-* | nios2-* | nios2eb-* | nios2el-* \
        | none-* | np1-* | ns16k-* | ns32k-* \
        | open8-* \
-       | or1k*-* \
        | orion-* \
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
        | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
@@ -441,7 +430,6 @@ case $basic_machine in
        | ubicom32-* \
        | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
        | vax-* \
-       | visium-* \
        | we32k-* \
        | x86-* | x86_64-* | xc16x-* | xps100-* \
        | xstormy16-* | xtensa*-* \
@@ -779,9 +767,6 @@ case $basic_machine in
                basic_machine=m68k-isi
                os=-sysv
                ;;
-       leon-*|leon[3-9]-*)
-               basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
-               ;;
        m68knommu)
                basic_machine=m68k-unknown
                os=-linux
@@ -809,7 +794,7 @@ case $basic_machine in
                os=-mingw64
                ;;
        mingw32)
-               basic_machine=i686-pc
+               basic_machine=i386-pc
                os=-mingw32
                ;;
        mingw32ce)
@@ -837,10 +822,6 @@ case $basic_machine in
                basic_machine=powerpc-unknown
                os=-morphos
                ;;
-       moxiebox)
-               basic_machine=moxie-unknown
-               os=-moxiebox
-               ;;
        msdos)
                basic_machine=i386-pc
                os=-msdos
@@ -849,7 +830,7 @@ case $basic_machine in
                basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
                ;;
        msys)
-               basic_machine=i686-pc
+               basic_machine=i386-pc
                os=-msys
                ;;
        mvs)
@@ -1386,14 +1367,14 @@ case $os in
              | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
              | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
              | -linux-newlib* | -linux-musl* | -linux-uclibc* \
-             | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
+             | -uxpv* | -beos* | -mpeix* | -udk* \
              | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
              | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
              | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
              | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
              | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
              | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
+             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
@@ -1565,9 +1546,6 @@ case $basic_machine in
        c4x-* | tic4x-*)
                os=-coff
                ;;
-       c8051-*)
-               os=-elf
-               ;;
        hexagon-*)
                os=-elf
                ;;
@@ -1611,6 +1589,9 @@ case $basic_machine in
        mips*-*)
                os=-elf
                ;;
+       or1k-*)
+               os=-elf
+               ;;
        or32-*)
                os=-coff
                ;;
index fc98710..4ebd5b3 100755 (executable)
@@ -3,7 +3,7 @@
 
 scriptversion=2013-05-30.07; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 0b0fdcb..377bb86 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2013-12-25.23; # UTC
+scriptversion=2011-11-20.07; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -41,15 +41,19 @@ scriptversion=2013-12-25.23; # UTC
 # This script is compatible with the BSD install script, but was written
 # from scratch.
 
-tab='  '
 nl='
 '
-IFS=" $tab$nl"
+IFS=" ""       $nl"
 
-# Set DOITPROG to "echo" to test this script.
+# set DOITPROG to echo to test this script
 
+# Don't use :- since 4.3BSD and earlier shells don't like it.
 doit=${DOITPROG-}
-doit_exec=${doit:-exec}
+if test -z "$doit"; then
+  doit_exec=exec
+else
+  doit_exec=$doit
+fi
 
 # Put in absolute file names if you don't have them in your path;
 # or use environment vars.
@@ -64,6 +68,17 @@ mvprog=${MVPROG-mv}
 rmprog=${RMPROG-rm}
 stripprog=${STRIPPROG-strip}
 
+posix_glob='?'
+initialize_posix_glob='
+  test "$posix_glob" != "?" || {
+    if (set -f) 2>/dev/null; then
+      posix_glob=
+    else
+      posix_glob=:
+    fi
+  }
+'
+
 posix_mkdir=
 
 # Desired mode of installed file.
@@ -82,7 +97,7 @@ dir_arg=
 dst_arg=
 
 copy_on_change=false
-is_target_a_directory=possibly
+no_target_directory=
 
 usage="\
 Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
@@ -122,57 +137,46 @@ while test $# -ne 0; do
     -d) dir_arg=true;;
 
     -g) chgrpcmd="$chgrpprog $2"
-        shift;;
+       shift;;
 
     --help) echo "$usage"; exit $?;;
 
     -m) mode=$2
-        case $mode in
-          *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
-            echo "$0: invalid mode: $mode" >&2
-            exit 1;;
-        esac
-        shift;;
+       case $mode in
+         *' '* | *'    '* | *'
+'*       | *'*'* | *'?'* | *'['*)
+           echo "$0: invalid mode: $mode" >&2
+           exit 1;;
+       esac
+       shift;;
 
     -o) chowncmd="$chownprog $2"
-        shift;;
+       shift;;
 
     -s) stripcmd=$stripprog;;
 
-    -t)
-        is_target_a_directory=always
-        dst_arg=$2
-        # Protect names problematic for 'test' and other utilities.
-        case $dst_arg in
-          -* | [=\(\)!]) dst_arg=./$dst_arg;;
-        esac
-        shift;;
+    -t) dst_arg=$2
+       # Protect names problematic for 'test' and other utilities.
+       case $dst_arg in
+         -* | [=\(\)!]) dst_arg=./$dst_arg;;
+       esac
+       shift;;
 
-    -T) is_target_a_directory=never;;
+    -T) no_target_directory=true;;
 
     --version) echo "$0 $scriptversion"; exit $?;;
 
-    --) shift
-        break;;
+    --)        shift
+       break;;
 
-    -*) echo "$0: invalid option: $1" >&2
-        exit 1;;
+    -*)        echo "$0: invalid option: $1" >&2
+       exit 1;;
 
     *)  break;;
   esac
   shift
 done
 
-# We allow the use of options -d and -T together, by making -d
-# take the precedence; this is for compatibility with GNU install.
-
-if test -n "$dir_arg"; then
-  if test -n "$dst_arg"; then
-    echo "$0: target directory not allowed when installing a directory." >&2
-    exit 1
-  fi
-fi
-
 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
   # When -d is used, all remaining arguments are directories to create.
   # When -t is used, the destination is already specified.
@@ -204,15 +208,6 @@ if test $# -eq 0; then
 fi
 
 if test -z "$dir_arg"; then
-  if test $# -gt 1 || test "$is_target_a_directory" = always; then
-    if test ! -d "$dst_arg"; then
-      echo "$0: $dst_arg: Is not a directory." >&2
-      exit 1
-    fi
-  fi
-fi
-
-if test -z "$dir_arg"; then
   do_exit='(exit $ret); exit $ret'
   trap "ret=129; $do_exit" 1
   trap "ret=130; $do_exit" 2
@@ -228,16 +223,16 @@ if test -z "$dir_arg"; then
 
     *[0-7])
       if test -z "$stripcmd"; then
-        u_plus_rw=
+       u_plus_rw=
       else
-        u_plus_rw='% 200'
+       u_plus_rw='% 200'
       fi
       cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
     *)
       if test -z "$stripcmd"; then
-        u_plus_rw=
+       u_plus_rw=
       else
-        u_plus_rw=,u+rw
+       u_plus_rw=,u+rw
       fi
       cp_umask=$mode$u_plus_rw;;
   esac
@@ -274,15 +269,41 @@ do
     # If destination is a directory, append the input filename; won't work
     # if double slashes aren't ignored.
     if test -d "$dst"; then
-      if test "$is_target_a_directory" = never; then
-        echo "$0: $dst_arg: Is a directory" >&2
-        exit 1
+      if test -n "$no_target_directory"; then
+       echo "$0: $dst_arg: Is a directory" >&2
+       exit 1
       fi
       dstdir=$dst
       dst=$dstdir/`basename "$src"`
       dstdir_status=0
     else
-      dstdir=`dirname "$dst"`
+      # Prefer dirname, but fall back on a substitute if dirname fails.
+      dstdir=`
+       (dirname "$dst") 2>/dev/null ||
+       expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+            X"$dst" : 'X\(//\)[^/]' \| \
+            X"$dst" : 'X\(//\)$' \| \
+            X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
+       echo X"$dst" |
+           sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+                  s//\1/
+                  q
+                }
+                /^X\(\/\/\)[^/].*/{
+                  s//\1/
+                  q
+                }
+                /^X\(\/\/\)$/{
+                  s//\1/
+                  q
+                }
+                /^X\(\/\).*/{
+                  s//\1/
+                  q
+                }
+                s/.*/./; q'
+      `
+
       test -d "$dstdir"
       dstdir_status=$?
     fi
@@ -293,74 +314,74 @@ do
   if test $dstdir_status != 0; then
     case $posix_mkdir in
       '')
-        # Create intermediate dirs using mode 755 as modified by the umask.
-        # This is like FreeBSD 'install' as of 1997-10-28.
-        umask=`umask`
-        case $stripcmd.$umask in
-          # Optimize common cases.
-          *[2367][2367]) mkdir_umask=$umask;;
-          .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
-          *[0-7])
-            mkdir_umask=`expr $umask + 22 \
-              - $umask % 100 % 40 + $umask % 20 \
-              - $umask % 10 % 4 + $umask % 2
-            `;;
-          *) mkdir_umask=$umask,go-w;;
-        esac
-
-        # With -d, create the new directory with the user-specified mode.
-        # Otherwise, rely on $mkdir_umask.
-        if test -n "$dir_arg"; then
-          mkdir_mode=-m$mode
-        else
-          mkdir_mode=
-        fi
-
-        posix_mkdir=false
-        case $umask in
-          *[123567][0-7][0-7])
-            # POSIX mkdir -p sets u+wx bits regardless of umask, which
-            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
-            ;;
-          *)
-            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-            trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
-            if (umask $mkdir_umask &&
-                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
-            then
-              if test -z "$dir_arg" || {
-                   # Check for POSIX incompatibilities with -m.
-                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-                   # other-writable bit of parent directory when it shouldn't.
-                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-                   ls_ld_tmpdir=`ls -ld "$tmpdir"`
-                   case $ls_ld_tmpdir in
-                     d????-?r-*) different_mode=700;;
-                     d????-?--*) different_mode=755;;
-                     *) false;;
-                   esac &&
-                   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-                     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
-                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-                   }
-                 }
-              then posix_mkdir=:
-              fi
-              rmdir "$tmpdir/d" "$tmpdir"
-            else
-              # Remove any dirs left behind by ancient mkdir implementations.
-              rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
-            fi
-            trap '' 0;;
-        esac;;
+       # Create intermediate dirs using mode 755 as modified by the umask.
+       # This is like FreeBSD 'install' as of 1997-10-28.
+       umask=`umask`
+       case $stripcmd.$umask in
+         # Optimize common cases.
+         *[2367][2367]) mkdir_umask=$umask;;
+         .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+         *[0-7])
+           mkdir_umask=`expr $umask + 22 \
+             - $umask % 100 % 40 + $umask % 20 \
+             - $umask % 10 % 4 + $umask % 2
+           `;;
+         *) mkdir_umask=$umask,go-w;;
+       esac
+
+       # With -d, create the new directory with the user-specified mode.
+       # Otherwise, rely on $mkdir_umask.
+       if test -n "$dir_arg"; then
+         mkdir_mode=-m$mode
+       else
+         mkdir_mode=
+       fi
+
+       posix_mkdir=false
+       case $umask in
+         *[123567][0-7][0-7])
+           # POSIX mkdir -p sets u+wx bits regardless of umask, which
+           # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+           ;;
+         *)
+           tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+           trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+           if (umask $mkdir_umask &&
+               exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+           then
+             if test -z "$dir_arg" || {
+                  # Check for POSIX incompatibilities with -m.
+                  # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+                  # other-writable bit of parent directory when it shouldn't.
+                  # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+                  ls_ld_tmpdir=`ls -ld "$tmpdir"`
+                  case $ls_ld_tmpdir in
+                    d????-?r-*) different_mode=700;;
+                    d????-?--*) different_mode=755;;
+                    *) false;;
+                  esac &&
+                  $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+                    ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+                    test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+                  }
+                }
+             then posix_mkdir=:
+             fi
+             rmdir "$tmpdir/d" "$tmpdir"
+           else
+             # Remove any dirs left behind by ancient mkdir implementations.
+             rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+           fi
+           trap '' 0;;
+       esac;;
     esac
 
     if
       $posix_mkdir && (
-        umask $mkdir_umask &&
-        $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+       umask $mkdir_umask &&
+       $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
       )
     then :
     else
@@ -370,51 +391,53 @@ do
       # directory the slow way, step by step, checking for races as we go.
 
       case $dstdir in
-        /*) prefix='/';;
-        [-=\(\)!]*) prefix='./';;
-        *)  prefix='';;
+       /*) prefix='/';;
+       [-=\(\)!]*) prefix='./';;
+       *)  prefix='';;
       esac
 
+      eval "$initialize_posix_glob"
+
       oIFS=$IFS
       IFS=/
-      set -f
+      $posix_glob set -f
       set fnord $dstdir
       shift
-      set +f
+      $posix_glob set +f
       IFS=$oIFS
 
       prefixes=
 
       for d
       do
-        test X"$d" = X && continue
-
-        prefix=$prefix$d
-        if test -d "$prefix"; then
-          prefixes=
-        else
-          if $posix_mkdir; then
-            (umask=$mkdir_umask &&
-             $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
-            # Don't fail if two instances are running concurrently.
-            test -d "$prefix" || exit 1
-          else
-            case $prefix in
-              *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
-              *) qprefix=$prefix;;
-            esac
-            prefixes="$prefixes '$qprefix'"
-          fi
-        fi
-        prefix=$prefix/
+       test X"$d" = X && continue
+
+       prefix=$prefix$d
+       if test -d "$prefix"; then
+         prefixes=
+       else
+         if $posix_mkdir; then
+           (umask=$mkdir_umask &&
+            $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+           # Don't fail if two instances are running concurrently.
+           test -d "$prefix" || exit 1
+         else
+           case $prefix in
+             *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+             *) qprefix=$prefix;;
+           esac
+           prefixes="$prefixes '$qprefix'"
+         fi
+       fi
+       prefix=$prefix/
       done
 
       if test -n "$prefixes"; then
-        # Don't fail if two instances are running concurrently.
-        (umask $mkdir_umask &&
-         eval "\$doit_exec \$mkdirprog $prefixes") ||
-          test -d "$dstdir" || exit 1
-        obsolete_mkdir_used=true
+       # Don't fail if two instances are running concurrently.
+       (umask $mkdir_umask &&
+        eval "\$doit_exec \$mkdirprog $prefixes") ||
+         test -d "$dstdir" || exit 1
+       obsolete_mkdir_used=true
       fi
     fi
   fi
@@ -449,12 +472,15 @@ do
 
     # If -C, don't bother to copy if it wouldn't change the file.
     if $copy_on_change &&
-       old=`LC_ALL=C ls -dlL "$dst"     2>/dev/null` &&
-       new=`LC_ALL=C ls -dlL "$dsttmp"  2>/dev/null` &&
-       set -f &&
+       old=`LC_ALL=C ls -dlL "$dst"    2>/dev/null` &&
+       new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+
+       eval "$initialize_posix_glob" &&
+       $posix_glob set -f &&
        set X $old && old=:$2:$4:$5:$6 &&
        set X $new && new=:$2:$4:$5:$6 &&
-       set +f &&
+       $posix_glob set +f &&
+
        test "$old" = "$new" &&
        $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
     then
@@ -467,24 +493,24 @@ do
       # to itself, or perhaps because mv is so ancient that it does not
       # support -f.
       {
-        # Now remove or move aside any old file at destination location.
-        # We try this two ways since rm can't unlink itself on some
-        # systems and the destination file might be busy for other
-        # reasons.  In this case, the final cleanup might fail but the new
-        # file should still install successfully.
-        {
-          test ! -f "$dst" ||
-          $doit $rmcmd -f "$dst" 2>/dev/null ||
-          { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-            { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
-          } ||
-          { echo "$0: cannot unlink or rename $dst" >&2
-            (exit 1); exit 1
-          }
-        } &&
-
-        # Now rename the file to the real destination.
-        $doit $mvcmd "$dsttmp" "$dst"
+       # Now remove or move aside any old file at destination location.
+       # We try this two ways since rm can't unlink itself on some
+       # systems and the destination file might be busy for other
+       # reasons.  In this case, the final cleanup might fail but the new
+       # file should still install successfully.
+       {
+         test ! -f "$dst" ||
+         $doit $rmcmd -f "$dst" 2>/dev/null ||
+         { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+           { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+         } ||
+         { echo "$0: cannot unlink or rename $dst" >&2
+           (exit 1); exit 1
+         }
+       } &&
+
+       # Now rename the file to the real destination.
+       $doit $mvcmd "$dsttmp" "$dst"
       }
     fi || exit 1
 
index f62bbae..cdea514 100755 (executable)
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2013-10-28.13; # UTC
+scriptversion=2012-06-26.16; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -160,7 +160,7 @@ give_advice ()
       ;;
    autom4te*)
       echo "You might have modified some maintainer files that require"
-      echo "the 'autom4te' program to be rebuilt."
+      echo "the 'automa4te' program to be rebuilt."
       program_details 'autom4te'
       ;;
     bison*|yacc*)
index bc20391..46ea866 100755 (executable)
@@ -3,7 +3,7 @@
 
 scriptversion=2011-06-08.12; # UTC
 
-# Copyright (C) 2000-2014 Free Software Foundation, Inc.
+# Copyright (C) 2000-2013 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8e575b0..32bf39e 100755 (executable)
@@ -1,9 +1,9 @@
 #! /bin/sh
 # test-driver - basic testsuite driver script.
 
-scriptversion=2013-07-13.22; # UTC
+scriptversion=2012-06-27.10; # UTC
 
-# Copyright (C) 2011-2014 Free Software Foundation, Inc.
+# Copyright (C) 2011-2013 Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -44,12 +44,13 @@ print_usage ()
 Usage:
   test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
               [--expect-failure={yes|no}] [--color-tests={yes|no}]
-              [--enable-hard-errors={yes|no}] [--]
-              TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
+              [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT
 The '--test-name', '--log-file' and '--trs-file' options are mandatory.
 END
 }
 
+# TODO: better error handling in option parsing (in particular, ensure
+# TODO: $log_file, $trs_file and $test_name are defined).
 test_name= # Used for reporting.
 log_file=  # Where to save the output of the test script.
 trs_file=  # Where to save the metadata of the test run.
@@ -68,23 +69,10 @@ while test $# -gt 0; do
   --enable-hard-errors) enable_hard_errors=$2; shift;;
   --) shift; break;;
   -*) usage_error "invalid option: '$1'";;
-   *) break;;
   esac
   shift
 done
 
-missing_opts=
-test x"$test_name" = x && missing_opts="$missing_opts --test-name"
-test x"$log_file"  = x && missing_opts="$missing_opts --log-file"
-test x"$trs_file"  = x && missing_opts="$missing_opts --trs-file"
-if test x"$missing_opts" != x; then
-  usage_error "the following mandatory options are missing:$missing_opts"
-fi
-
-if test $# -eq 0; then
-  usage_error "missing argument"
-fi
-
 if test $color_tests = yes; then
   # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
   red='\e[0;31m' # Red.
@@ -106,14 +94,11 @@ trap "st=143; $do_exit" 15
 # Test script is run here.
 "$@" >$log_file 2>&1
 estatus=$?
-
 if test $enable_hard_errors = no && test $estatus -eq 99; then
-  tweaked_estatus=1
-else
-  tweaked_estatus=$estatus
+  estatus=1
 fi
 
-case $tweaked_estatus:$expect_failure in
+case $estatus:$expect_failure in
   0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
   0:*)   col=$grn res=PASS  recheck=no  gcopy=no;;
   77:*)  col=$blu res=SKIP  recheck=no  gcopy=yes;;
@@ -122,12 +107,6 @@ case $tweaked_estatus:$expect_failure in
   *:*)   col=$red res=FAIL  recheck=yes gcopy=yes;;
 esac
 
-# Report the test outcome and exit status in the logs, so that one can
-# know whether the test passed or failed simply by looking at the '.log'
-# file, without the need of also peaking into the corresponding '.trs'
-# file (automake bug#11814).
-echo "$res $test_name (exit status: $estatus)" >>$log_file
-
 # Report outcome to console.
 echo "${col}${res}${std}: $test_name"
 
index 7c2d927..1c4d776 100755 (executable)
@@ -1,9 +1,9 @@
 #! /bin/sh
 # ylwrap - wrapper for lex/yacc invocations.
 
-scriptversion=2013-01-12.17; # UTC
+scriptversion=2012-12-21.17; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # Written by Tom Tromey <tromey@cygnus.com>.
 #
@@ -40,7 +40,7 @@ get_dirname ()
 # guard FILE
 # ----------
 # The CPP macro used to guard inclusion of FILE.
-guard ()
+guard()
 {
   printf '%s\n' "$1"                                                    \
     | sed                                                               \
@@ -96,17 +96,17 @@ esac
 
 
 # The input.
-input=$1
+input="$1"
 shift
 # We'll later need for a correct munging of "#line" directives.
 input_sub_rx=`get_dirname "$input" | quote_for_sed`
-case $input in
+case "$input" in
   [\\/]* | ?:[\\/]*)
     # Absolute path; do nothing.
     ;;
   *)
     # Relative path.  Make it absolute.
-    input=`pwd`/$input
+    input="`pwd`/$input"
     ;;
 esac
 input_rx=`get_dirname "$input" | quote_for_sed`
@@ -132,8 +132,8 @@ sed_fix_filenames=
 # guard in its implementation file.
 sed_fix_header_guards=
 
-while test $# -ne 0; do
-  if test x"$1" = x"--"; then
+while test "$#" -ne 0; do
+  if test "$1" = "--"; then
     shift
     break
   fi
@@ -153,14 +153,16 @@ while test $# -ne 0; do
 done
 
 # The program to run.
-prog=$1
+prog="$1"
 shift
 # Make any relative path in $prog absolute.
-case $prog in
+case "$prog" in
   [\\/]* | ?:[\\/]*) ;;
-  *[\\/]*) prog=`pwd`/$prog ;;
+  *[\\/]*) prog="`pwd`/$prog" ;;
 esac
 
+# FIXME: add hostname here for parallel makes that run commands on
+# other machines.  But that might take us over the 14-char limit.
 dirname=ylwrap$$
 do_exit="cd '`pwd`' && rm -rf $dirname > /dev/null 2>&1;"' (exit $ret); exit $ret'
 trap "ret=129; $do_exit" 1
@@ -186,7 +188,7 @@ if test $ret -eq 0; then
       # otherwise prepend '../'.
       case $to in
         [\\/]* | ?:[\\/]*) target=$to;;
-        *) target=../$to;;
+        *) target="../$to";;
       esac
 
       # Do not overwrite unchanged header files to avoid useless
@@ -195,7 +197,7 @@ if test $ret -eq 0; then
       # output of all other files to a temporary file so we can
       # compare them to existing versions.
       if test $from != $parser; then
-        realtarget=$target
+        realtarget="$target"
         target=tmp-`printf '%s\n' "$target" | sed 's|.*[\\/]||g'`
       fi
 
index e3acd91..97b2459 100644 (file)
@@ -1,19 +1,27 @@
 # Centralized autotools file
-# Create the Visual Studio 2012/2013 project files
+# Create the Visual Studio 2012/2013/2015 project files
 # from the Visual Studio 2010 project files
 
+# This autotools file, from GLib, can be used in other projects
+# that have Visual Studio build support, and is copied into
+# $(srcroot)/build/.
+
 # Author: Fan, Chun-wei
 # November 05, 2012
 
-# MSVC_SLN: name of root project
-
-MSVC_FORMAT_VER=$(shell echo $$(expr $(MSVC_VER) + 1))
+# MSVC_VER_LONG: Long Version of Visual Studio (2012, 2013, 14 and so on)
+# MSVC_VER: Short Version of Visual Studio (11 for 2012, 12 for 2013, 14 for 2015 and so on)
+# MSVC_FORMAT_VER: Use 12 for MSVC 2012 through 2015
 
-$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln
-       cat $< | sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' | sed 's/2010/$(MSVC_VER_LONG)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+%.sln:
+       sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/2010/$(MSVC_VER_LONG)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
 
-README.txt: $(top_srcdir)/build/win32/vs10/README.txt
-       cat $< | sed 's/vs10/vs$(MSVC_VER)/g' | sed 's/VS10/VS$(MSVC_VER)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+%.txt:
+       sed 's/vs10/vs$(MSVC_VER)/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/VS10/VS$(MSVC_VER)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
 
 %.vcxproj:
        if test -e $(top_srcdir)/build/win32/vs10/$@; then \
index a84067f..5564120 100644 (file)
@@ -9,4 +9,6 @@ EXTRA_DIST =    \
        gi_msvc_build_utils.py          \
        gi-setenv-msvc.mak              \
        gi-tests-msvc.mak               \
-       introspection-msvc.mak
+       introspection-msvc.mak          \
+       replace.py                      \
+       Makefile.msvc-introspection
index f198e7e..6c7465d 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -88,6 +78,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = build
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
@@ -96,7 +87,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -156,7 +146,6 @@ am__define_uniq_tagged_files = \
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 am__relativize = \
   dir0=`pwd`; \
@@ -244,7 +233,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -370,7 +358,9 @@ EXTRA_DIST = \
        gi_msvc_build_utils.py          \
        gi-setenv-msvc.mak              \
        gi-tests-msvc.mak               \
-       introspection-msvc.mak
+       introspection-msvc.mak          \
+       replace.py                      \
+       Makefile.msvc-introspection
 
 all: all-recursive
 
@@ -387,6 +377,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign build/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -681,8 +672,6 @@ uninstall-am:
        mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
        ps ps-am tags tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/build/Makefile.msvc-introspection b/build/Makefile.msvc-introspection
new file mode 100644 (file)
index 0000000..9c3a14a
--- /dev/null
@@ -0,0 +1,125 @@
+# Author: Fan, Chun-wei
+# Common autotools file for constructing the g-ir-scanner and
+# g-ir-compiler command lines for Visual Studio builds.
+
+# This is copied from $(srcroot)/build from the gobject-introspection
+# project, which may be included in projects that support both
+# Visual Studio builds and introspection.
+
+# * Input variables:
+#
+#   MSVC_INTROSPECT_GIRS - List of .gir's that should be built
+#                          in the NMake Makefiles
+#
+# * Simple tutorial
+#
+# Add this to Makefile.am where your library/program is built:
+#   (Either YourLib_1_0_gir_MSVC_LIBS or YourLib_1_0_gir_MSVC_PROGRAM
+#    is required unless --headers-only is specified in
+#    YourLib_1_0_gir__MSVC_SCANNERFLAGS)
+#
+#   include $(top_srcdir)/build/Makefile.msvc-introspection
+#   MSVC_INTROSPECT_GIRS = YourLib-1.0.gir
+#   YourLib_1_0_gir_NAMESPACE = YourLib # This is optional
+#   YourLib_1_0_gir_VERSION = 1.0 # This is optional
+#   YourLib_1_0_gir_MSVC_LIBS = yourlib-1.0
+#   YourLib_1_0_gir_MSVC_FILES = $(libyourlib_1_0_SOURCES)
+#   YourLib_1_0_gir_MSVC_PROGRAM = YourProgram
+#   YourLib_1_0_gir_MSVC_PACKAGES = (Dependent .pc files)
+#   YourLib_1_0_gir_MSVC_INCLUDE_GIRS = (Dependent external .gir's)
+#   YourLiv_1_0_gir_MSVC_EXPORT_PACKAGES = (Packages exported by this .gir)
+
+# Private functions
+
+## Transform the MSVC project filename (no filename extensions) to something which can reference through a variable
+## without automake/make complaining, eg Gtk-2.0 -> Gtk_2_0
+_gir_name=$(subst /,_,$(subst -,_,$(subst .,_,$(1))))
+
+# Namespace and Version is either fetched from the gir filename
+# or the _NAMESPACE/_VERSION variable combo
+_gir_namespace_msvc = $(or $($(_gir_name)_NAMESPACE),$(firstword $(subst -, ,$(notdir $(1)))))
+_gir_version_msvc = $(or $($(_gir_name)_VERSION),$(lastword $(subst -, ,$(1:.gir=))))
+_typelib_basename_msvc = $(_gir_namespace_msvc)'-'$(_gir_version_msvc)
+
+# _PROGRAM is an optional variable which needs its own --program argument
+_gir_program_msvc = $(if $($(_gir_name)_MSVC_PROGRAM),--program=$($(_gir_name)_MSVC_PROGRAM))
+
+# Deduce the sub-folder from $(srcroot) where the sources reside in
+_gir_source_path_raw_msvc:=$(subst $(abs_top_srcdir),,$(abs_srcdir))
+_gir_source_path_msvc=$(subst /,\\,$(_gir_source_path_raw_msvc))
+_gir_source_subdir_int_msvc=$(subst \\\\,\\,\\$(_gir_source_path_msvc)\\)
+_gir_source_subdir_msvc=$(subst \\.\\,\\,$(_gir_source_subdir_int_msvc))
+
+_gir_files_raw_msvc=$(subst /,\\,$($(_gir_name)_MSVC_FILES))
+_gir_files_msvc=$(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_gir_source_path_msvc)\\,\\,$(_gir_files_raw_msvc))))
+
+# Create a list of items for:
+# - Libraries
+# - Packages
+# - GIRs to include
+# - packages to export
+
+_gir_libraries_msvc = $(foreach lib,$($(_gir_name)_MSVC_LIBS),--library=$(lib))
+_gir_packages_msvc = $(foreach pkg,$($(_gir_name)_MSVC_PACKAGES),--pkg=$(pkg))
+_gir_includes_msvc = $(foreach include,$($(_gir_name)_MSVC_INCLUDE_GIRS),--include=$(include))
+_gir_export_packages_msvc = $(foreach pkg,$($(_gir_name)_MSVC_EXPORT_PACKAGES),--pkg-export=$(pkg))
+
+#
+# Create NMake Makefile Sections for Building Introspection files
+# from autotools files
+# $(1) - File Name of the .gir that is to be generated
+#
+
+define gir-nmake-builder
+
+# Basic sanity check, to make sure required variables are set
+$(if $($(_gir_name)_MSVC_FILES),,$(error Need to define $(_gir_name)_MSVC_FILES))
+$(if $(or $(findstring --header-only,$($(_gir_name)_MSVC_SCANNERFLAGS)),
+          $($(_gir_name)_MSVC_LIBS),
+          $($(_gir_name)_MSVC_PROGRAM)),,
+    $(error Need to define $(_gir_name)_MSVC_LIBS or $(_gir_name)_MSVC_PROGRAM))
+
+$(top_builddir)/build/win32/$(_gir_name)_list:
+       for F in $(_gir_files_msvc); do \
+               case $$$$F in \
+               *.c|*.cpp|*.cc|*.cxx|*.h|*.hpp|*.hh|*.hxx) \
+                       echo '..\..'$(_gir_source_subdir_msvc)$$$$F >>$(top_builddir)/build/win32/$(_gir_name)_list \
+                       ;; \
+               esac; \
+       done
+
+$(top_builddir)/build/win32/$(1).msvc.introspect:
+       -$(RM) $(top_builddir)/build/win32/$(1).msvc.introspect
+
+# Assemble the Command to Run g-ir-scanner
+       echo $(1)': '$(_gir_name)'_list '$($(_gir_name)_MSVC_GIR_DEPS)>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  @-echo Generating $$$$@...'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  $$$$(PYTHON2) $$$$(G_IR_SCANNER)        \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --verbose -no-libtool   \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --namespace='$(_gir_namespace_msvc)'    \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --nsversion='$(_gir_version_msvc)'      \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$(_gir_packages_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$(_gir_libraries_msvc)'        \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$(_gir_program_msvc)'  \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --add-include-path=$$$$(G_IR_INCLUDEDIR)        \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$(_gir_includes_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$(_gir_export_packages_msvc)'  \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --cflags-begin  \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$($(_gir_name)_MSVC_CFLAGS)'   \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --cflags-end    \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$($(_gir_name)_MSVC_SCANNERFLAGS)'     \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --filelist='$(_gir_name)'_list  \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  -o $$$$@'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '' >>$(top_builddir)/build/win32/$(1).msvc.introspect
+
+# Finally Assemble the Command to Compile the generated .gir
+       echo '$(_typelib_basename_msvc).typelib: '$(_typelib_basename_msvc)'.gir'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  @-echo Compiling $$$$@...'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  $$$$(G_IR_COMPILER)     \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  --includedir=. --debug --verbose        \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  '$(1)'  \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '  -o $$$$@'>>$(top_builddir)/build/win32/$(1).msvc.introspect
+       echo '' >>$(top_builddir)/build/win32/$(1).msvc.introspect
+endef
+
+$(foreach gir,$(MSVC_INTROSPECT_GIRS),$(eval $(call gir-nmake-builder,$(gir))))
diff --git a/build/Makefile.msvcproj b/build/Makefile.msvcproj
new file mode 100644 (file)
index 0000000..9449a5b
--- /dev/null
@@ -0,0 +1,107 @@
+# Author: Fan, Chun-wei
+# Common Autotools file used to generate Visual Studio 2008+
+# Projects from their templates
+
+# This autotools file, from GLib, can be used in other projects
+# that have Visual Studio build support, and is copied into
+# $(srcroot)/build/.
+
+# * Input variables:
+#
+#   MSVCPROJS - List of Projects that should be generated
+#
+# * Simple tutorial
+#
+# Add this to Makefile.am where your library/program is built:
+#   include $(top_srcdir)/build/Makefile.msvcproj
+#   MSVCPROJS = YourProject (can be multiple projects in a single srcdir)
+#   YourProject_FILES = $(libyourlib_1_0_SOURCES)
+#   YourProject_EXCLUDES = ... # list of sources to exclude, separated by '|', wildcards allowed; use random unsed value if none
+#   YourProject_HEADERS_DIR = $(libyourlibincludedir)
+#   YourProject_HEADERS_INST = $(libyourlib_1_0_HEADERS)
+#   YourProject_HEADERS_EXCLUDES = ... # <list of headers to exclude from installation, separated by '|', wildcards allowed; use random unsed value if none>
+#
+#   dist-hook: \ # (or add to it if it is already there, note the vs9 items will also call the vs10 items in the process)
+#      $(top_builddir)/build/win32/vs9/YourProject.vcproj      \
+#      $(top_builddir)/build/win32/vs9/YourProject.headers
+
+
+# Private functions
+
+## Transform the MSVC project filename (no filename extensions) to something which can reference through a variable
+## without automake/make complaining, eg Gtk-2.0 -> Gtk_2_0
+_proj_name=$(subst /,_,$(subst -,_,$(subst .,_,$(1))))
+_proj_path_raw:=$(subst $(abs_top_srcdir),,$(abs_srcdir))
+_proj_path=$(subst /,\\,$(_proj_path_raw))
+_proj_subdir_int=$(subst \\\\,\\,\\$(_proj_path)\\)
+_proj_subdir=$(subst \\.\\,\\,$(_proj_subdir_int))
+
+_proj_files_raw=$(subst /,\\,$($(_proj_name)_FILES))
+_proj_files=$(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_proj_path)\\,\\,$(_proj_files_raw))))
+_proj_filters=$($(_proj_name)_EXCLUDES)
+
+_proj_headers_raw=$(subst /,\\,$($(_proj_name)_HEADERS_INST))
+_proj_headers=$(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_proj_path)\\,\\,$(_proj_headers_raw))))
+_proj_headers_excludes=$($(_proj_name)_HEADERS_EXCLUDES)
+
+_headers_dest_posix=$(subst $(includedir),,$($(_proj_name)_HEADERS_DIR))
+_headers_destdir=$(subst /,\\,$(_headers_dest_posix))
+
+#
+# Creates Visual Studio 2008/2010 projects from items passed in from autotools files
+# $(1) - Base Name of the MSVC project files (outputs)
+#
+
+define msvcproj-builder
+
+$(top_builddir)/build/win32/vs10/$(1).vcxproj: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(top_builddir)/build/win32/vs10/$(1).vcxproj.filters: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(1).sourcefiles: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(1).vs10.sourcefiles: $(top_builddir)/build/win32/vs9/$(1).vcproj
+$(1).vs10.sourcefiles.filters: $(top_builddir)/build/win32/vs9/$(1).vcproj
+
+$(top_builddir)/build/win32/vs9/$(1).vcproj:
+       -$(RM) $(top_builddir)/build/win32/vs9/$(1).vcproj
+       -$(RM) $(top_builddir)/build/win32/vs10/$(1).vcxproj
+       -$(RM) $(top_builddir)/build/win32/vs10/$(1).vcxproj.filters
+
+       for F in $(_proj_files); do \
+               case $$$$F in \
+               $(_proj_filters)) \
+                       ;; \
+               *.c|*.cpp|*.cc|*.cxx) \
+                       echo '   <File RelativePath="..\..\..'$(_proj_subdir)$$$$F'" />' >>$(1).sourcefiles && \
+                       echo '   <ClCompile Include="..\..\..'$(_proj_subdir)$$$$F'" />' >>$(1).vs10.sourcefiles && \
+                       echo '   <ClCompile Include="..\..\..'$(_proj_subdir)$$$$F'"><Filter>Source Files</Filter></ClCompile>' >>$(1).vs10.sourcefiles.filters \
+                       ;; \
+               esac;   \
+       done
+
+
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/$(1).vcprojin >$(top_builddir)/build/win32/vs9/$(1).vcproj
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(1).vcxprojin >$(top_builddir)/build/win32/vs10/$(1).vcxproj
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(1).vcxproj.filtersin >$(top_builddir)/build/win32/vs10/$(1).vcxproj.filters
+       $(RM) $(1).sourcefiles
+       $(RM) $(1).vs10.sourcefiles
+       $(RM) $(1).vs10.sourcefiles.filters
+
+$(top_builddir)/build/win32/vs10/$(1).vs10.headers: $(top_builddir)/build/win32/vs9/$(1).headers
+
+$(top_builddir)/build/win32/vs9/$(1).headers:
+       -$(RM) $(top_builddir)/build/win32/vs9/$(1).headers
+       -$(RM) $(top_builddir)/build/win32/vs10/$(1).vs10.headers
+
+       for F in $(_proj_headers); do \
+               case $$$$F in \
+               $(_proj_headers_excludes)) \
+                       ;; \
+               *.h|*.hpp|*.hh|*.hxx) \
+                       echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F'&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/$(1).headers && \
+                       echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F >>$(top_builddir)/build/win32/vs10/$(1).vs10.headers \
+                       ;; \
+               esac;   \
+       done
+
+endef
+
+$(foreach proj,$(MSVCPROJS),$(eval $(call msvcproj-builder,$(proj))))
index 419e8d3..1216daa 100644 (file)
 
 import os
 import sys
-import optparse
+import argparse
 
-from gi_msvc_build_utils import process_in
-from gi_msvc_build_utils import parent_dir
+import replace
 
-def setup_vars_cairo(src, dest, dllname):
-    vars = {}
-    vars['CAIRO_GIR_PACKAGE'] = 'cairo-gobject'
-    vars['CAIRO_SHARED_LIBRARY'] = '%s' % dllname
-    process_in (src, dest, vars, 1)
+from gi_msvc_build_utils import parent_dir
 
 def main(argv):
-    parser = optparse.OptionParser()
-    parser.add_option('--dllname', dest='dllname', action='store', help='Full file name of the Cairo-GObject DLL for the Cairo Introspection File')
-    opt, args = parser.parse_args(argv)
-    if opt.dllname is None:
-        print ('dllname must be specified.  Please refer to %s -h for more information' % os.path.basename(__file__))
-        sys.exit()
+    parser = argparse.ArgumentParser(description='Generate the complete cairo-1.0.gir')
+    parser.add_argument('--dllname',
+                        required=True,
+                        help='Full file name of the Cairo-GObject DLL for the Cairo Introspection File')
+    args = parser.parse_args()
 
     # Get the srcroot and the path where the bundled .gir files reside in the package
     srcroot = parent_dir(__file__)
     preset_gir_path = os.path.join(srcroot, 'gir')
 
     # Set up variables in cairo-1.0.gir.in to produce cairo-1.0.gir
-    setup_vars_cairo(os.path.join(preset_gir_path, 'cairo-1.0.gir.in'),
-                     'cairo-1.0.gir',
-                     opt.dllname)
+    replace.replace(os.path.join(preset_gir_path, 'cairo-1.0.gir.in'),
+                    'cairo-1.0.gir.tmp',
+                    '%CAIRO_GIR_PACKAGE%',
+                    'cairo-gobject')
+
+    replace.replace('cairo-1.0.gir.tmp',
+                    'cairo-1.0.gir',
+                    '%CAIRO_SHARED_LIBRARY%',
+                    args.dllname)
+    os.unlink('cairo-1.0.gir.tmp')
 
 if __name__ == '__main__':
     sys.exit(main(sys.argv))
index c598641..444fe80 100644 (file)
@@ -13,26 +13,29 @@ import os
 import sys
 import optparse
 
-from gi_msvc_build_utils import process_in
+import replace
 from gi_msvc_build_utils import parent_dir
 
 def setup_vars_tools(module, func, srcfile, outfile):
-    vars = {}
-
-    # Well, we are using the "relocatable" feature on Windows...
-    blah = 'this\\\\is\\\\ignored\\\\on\\\\windows'
-    vars['datarootdir'] = blah
-    vars['libdir'] = blah
-
     # This doesn't really matter for cmd.exe usage, but
     # let's just set this like this here, in case one
     # wants to use MinGW with the scripts generated here
-    vars['PYTHON'] = 'python'
-
-    # The parts that really matter.
-    vars['TOOL_MODULE'] = module
-    vars['TOOL_FUNCTION'] = func
-    process_in(srcfile, outfile, vars, 2)
+    replace.replace(srcfile,
+                    outfile + '.tmp0',
+                    '@PYTHON@',
+                    'python')
+
+    # Now replace the needed items...
+    replace.replace(outfile + '.tmp0',
+                    outfile + '.tmp',
+                    '@TOOL_MODULE@',
+                    module)
+    os.unlink(outfile + '.tmp0')
+    replace.replace(outfile + '.tmp',
+                    outfile,
+                    '@TOOL_FUNCTION@',
+                    func)
+    os.unlink(outfile + '.tmp')
 
 def main(argv):
     modules = ['scannermain','annotationmain','docmain']
index e6e7f39..a7d05a2 100644 (file)
@@ -159,7 +159,7 @@ msg_cairo:
        @-echo please ensure that this is the correct DLL where the
        @-echo cairo-gobject symbols can be loaded, which needs to
        @-echo found when running programs or scripts that would
-       @-echo cairo-1.0.typelib.
+       @-echo be using cairo-1.0.typelib.
        @-echo.
        @-echo If not, please clean the build and redo the build
        @-echo specifying the correct DLL by passing in
index 619f0c5..150f66e 100644 (file)
@@ -1,16 +1,4 @@
 import os
-import re
-
-def process_in(src, dest, vars, mode):
-    if mode == 1:
-        RE_VARS = re.compile(r'%(\w+?)%')
-    if mode == 2:
-        RE_VARS = re.compile(r'@(\w+?)@')
-    with open(src, 'r') as s:
-        with open(dest, 'w') as d:
-            for i in s:
-                i = RE_VARS.sub(lambda x: str(vars[x.group(1)]), i)
-                d.write(i)
 
 def parent_dir(path):
     if not os.path.isabs(path):
diff --git a/build/replace.py b/build/replace.py
new file mode 100644 (file)
index 0000000..69ef417
--- /dev/null
@@ -0,0 +1,102 @@
+#!/usr/bin/python
+#
+# Simple utility script to manipulate
+# certain types of strings in a file
+
+# This can be used in various projects where
+# there is the need to replace strings in files,
+# and is copied from GLib's $(srcroot)/build/win32
+
+# Author: Fan, Chun-wei
+# Date: September 03, 2014
+
+import os
+import sys
+import re
+import string
+import argparse
+
+valid_actions = ['remove-prefix',
+                 'replace-var',
+                 'replace-str',
+                 'remove-str']
+
+def replace(src, dest, instring, outstring):
+    with open(src, 'r') as s:
+        with open(dest, 'w') as d:
+            for line in s:
+                i = line.replace(instring, outstring)
+                d.write(i)
+
+def check_required_args(args, params):
+    for param in params:
+        if getattr(args, param, None) is None:
+            raise SystemExit('%s: error: --%s argument is required' % (__file__, param))
+
+def warn_ignored_args(args, params):
+    for param in params:
+        if getattr(args, param, None) is not None:
+            print('%s: warning: --%s argument is ignored' % (__file__, param))
+
+def main(argv):
+
+    parser = argparse.ArgumentParser(description='Process strings in a file.')
+    parser.add_argument('-a',
+                        '--action',
+                        help='Action to carry out.  Can be one of:\n'
+                             'remove-prefix\n'
+                             'replace-var\n'
+                             'replace-str\n'
+                             'remove-str',
+                        choices=valid_actions)
+    parser.add_argument('-i', '--input', help='Input file')
+    parser.add_argument('-o', '--output', help='Output file')
+    parser.add_argument('--instring', help='String to replace or remove')
+    parser.add_argument('--var', help='Autotools variable name to replace')
+    parser.add_argument('--outstring',
+                        help='New String to replace specified string or variable')
+    parser.add_argument('--removeprefix', help='Prefix of string to remove')
+
+    args = parser.parse_args()
+
+    input_string = ''
+    output_string = ''
+
+    # We must have action, input, output for all operations
+    check_required_args(args, ['action','input','output'])
+
+    # Build the arguments by the operation that is to be done,
+    # to be fed into replace()
+
+    # Get rid of prefixes from a string
+    if args.action == 'remove-prefix':
+        check_required_args(args, ['instring','removeprefix'])
+        warn_ignored_args(args, ['outstring','var'])
+        input_string = args.removeprefix + args.instring
+        output_string = args.instring
+
+    # Replace an m4-style variable (those surrounded by @...@)
+    if args.action == 'replace-var':
+        check_required_args(args, ['var','outstring'])
+        warn_ignored_args(args, ['instring','removeprefix'])
+        input_string = '@' + args.var + '@'
+        output_string = args.outstring
+
+    # Replace a string
+    if args.action == 'replace-str':
+        check_required_args(args, ['instring','outstring'])
+        warn_ignored_args(args, ['var','removeprefix'])
+        input_string = args.instring
+        output_string = args.outstring
+
+    # Remove a string
+    if args.action == 'remove-str':
+        check_required_args(args, ['instring'])
+        warn_ignored_args(args, ['var','outstring','removeprefix'])
+        input_string = args.instring
+        output_string = ''
+
+    replace(args.input, args.output, input_string, output_string)
+
+if __name__ == '__main__':
+    sys.exit(main(sys.argv))
index 31f582f..f30ee9b 100644 (file)
@@ -2,5 +2,6 @@ SUBDIRS =       \
        vs9     \
        vs10    \
        vs11    \
-       vs12
+       vs12    \
+       vs14
 
index c4133ac..454b2cd 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -88,6 +78,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = build/win32
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
@@ -96,7 +87,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -156,7 +146,6 @@ am__define_uniq_tagged_files = \
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 am__relativize = \
   dir0=`pwd`; \
@@ -244,7 +233,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -364,7 +352,8 @@ SUBDIRS = \
        vs9     \
        vs10    \
        vs11    \
-       vs12
+       vs12    \
+       vs14
 
 all: all-recursive
 
@@ -381,6 +370,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/win32/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign build/win32/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -675,8 +665,6 @@ uninstall-am:
        mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
        ps ps-am tags tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index d0d32ca..297224c 100644 (file)
@@ -1,10 +1,18 @@
+GENERATED_ITEMS = \
+       cmph.vcxproj            \
+       cmph.vcxproj.filters            \
+       girepository.vcxproj    \
+       girepository.vcxproj.filters    \
+       g-ir-compiler.vcxproj   \
+       g-ir-compiler.vcxproj.filters   \
+       gi-install.props
+
 EXTRA_DIST = \
        gobject-introspection.sln       \
        gi-build-defines.props  \
        gi-extra-paths.props    \
        gi-gen-srcs.props       \
        gi-install.propsin      \
-       gi-install.props        \
        gi-version-paths.props  \
        gi-prebuild.vcxproj     \
        girepository.vcxprojin  \
@@ -22,10 +30,12 @@ EXTRA_DIST = \
        _giscanner.vcxproj      \
        _giscanner.vcxproj.filters      \
        install.vcxproj \
-       README.txt
+       README.txt      \
+       $(GENERATED_ITEMS)
 
-gi-install.props: $(top_srcdir)/build/win32/vs10/gi-install.propsin gir.vs10.install
+gi-install.props: $(top_srcdir)/build/win32/vs10/gi-install.propsin girepository.vs10.headers giscanner.vs10.scripts
        $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gi-install.propsin >$@
-       rm gir.vs10.install
+       rm girepository.vs10.headers
+       rm giscanner.vs10.scripts
 
-CLEANFILES = gi-install.props
+DISTCLEANFILES = $(GENERATED_ITEMS)
index 2ad7944..d769504 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -88,6 +78,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = build/win32/vs10
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
@@ -96,7 +87,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -121,7 +111,6 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -184,7 +173,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -300,13 +288,21 @@ target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
+GENERATED_ITEMS = \
+       cmph.vcxproj            \
+       cmph.vcxproj.filters            \
+       girepository.vcxproj    \
+       girepository.vcxproj.filters    \
+       g-ir-compiler.vcxproj   \
+       g-ir-compiler.vcxproj.filters   \
+       gi-install.props
+
 EXTRA_DIST = \
        gobject-introspection.sln       \
        gi-build-defines.props  \
        gi-extra-paths.props    \
        gi-gen-srcs.props       \
        gi-install.propsin      \
-       gi-install.props        \
        gi-version-paths.props  \
        gi-prebuild.vcxproj     \
        girepository.vcxprojin  \
@@ -324,9 +320,10 @@ EXTRA_DIST = \
        _giscanner.vcxproj      \
        _giscanner.vcxproj.filters      \
        install.vcxproj \
-       README.txt
+       README.txt      \
+       $(GENERATED_ITEMS)
 
-CLEANFILES = gi-install.props
+DISTCLEANFILES = $(GENERATED_ITEMS)
 all: all-am
 
 .SUFFIXES:
@@ -342,6 +339,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/win32/vs10/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign build/win32/vs10/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -428,11 +426,11 @@ install-strip:
 mostlyclean-generic:
 
 clean-generic:
-       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
        -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+       -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -517,12 +515,11 @@ uninstall-am:
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
-gi-install.props: $(top_srcdir)/build/win32/vs10/gi-install.propsin gir.vs10.install
+gi-install.props: $(top_srcdir)/build/win32/vs10/gi-install.propsin girepository.vs10.headers giscanner.vs10.scripts
        $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gi-install.propsin >$@
-       rm gir.vs10.install
+       rm girepository.vs10.headers
+       rm giscanner.vs10.scripts
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 5ea7323..2086b34 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index aa9336d..b555d5c 100644 (file)
     </ClCompile>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\select.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\select.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="gi-prebuild.vcxproj">
index 01094d8..a9d927e 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Source Files</Filter></ClCompile>
   </ItemGroup>
 </Project>
index d67171c..92cd5e2 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <DataExecutionPrevention>
       </DataExecutionPrevention>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gthash.c" />
-    <ClCompile Include="..\..\..\girepository\girmodule.c" />
-    <ClCompile Include="..\..\..\girepository\girnode.c" />
-    <ClCompile Include="..\..\..\girepository\giroffsets.c" />
-    <ClCompile Include="..\..\..\girepository\girparser.c" />
-    <ClCompile Include="..\..\..\girepository\girwriter.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\girmodule.c" />
+   <ClCompile Include="..\..\..\girepository\girnode.c" />
+   <ClCompile Include="..\..\..\girepository\giroffsets.c" />
+   <ClCompile Include="..\..\..\girepository\girparser.c" />
+   <ClCompile Include="..\..\..\girepository\girwriter.c" />
     <ClCompile Include="..\..\..\tools\compiler.c" />
   </ItemGroup>
   <ItemGroup>
index 1ec561c..a6df8c0 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Source Files</Filter></ClCompile>
     <ClCompile Include="..\..\..\tools\compiler.c"><Filter>Sources</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 262cb54..9ba5efb 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <DataExecutionPrevention>
       </DataExecutionPrevention>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index cdbf220..afa3b13 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index ed855f6..b384354 100644 (file)
@@ -21,28 +21,29 @@ copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin
 copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin
 copy $(BinDir)\glib-print.exe $(CopyDir)\bin
 copy $(BinDir)\glib-print.pdb $(CopyDir)\bin
-mkdir $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository
+copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giarginfo.h
+copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gibaseinfo.h
+copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gicallableinfo.h
+copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giconstantinfo.h
+copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gienuminfo.h
+copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifieldinfo.h
+copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifunctioninfo.h
+copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giinterfaceinfo.h
+copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giobjectinfo.h
+copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gipropertyinfo.h
+copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giregisteredtypeinfo.h
+copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girepository.h
+copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girffi.h
+copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gisignalinfo.h
+copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gistructinfo.h
+copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypeinfo.h
+copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypelib.h
+copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypes.h
+copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giunioninfo.h
+copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giversionmacros.h
+copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\givfuncinfo.h
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\collections
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
index 6bdc997..bf2c0b7 100644 (file)
@@ -24,7 +24,9 @@ copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin
 copy $(BinDir)\glib-print.exe $(CopyDir)\bin
 copy $(BinDir)\glib-print.pdb $(CopyDir)\bin
 
-#include "gir.vs10.install"
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository
+#include "girepository.vs10.headers"
+#include "giscanner.vs10.scripts"
 
 copy $(BinDir)\_giscanner.pyd $(CopyDir)\lib\gobject-introspection\giscanner
 copy $(BinDir)\_giscanner.pdb $(CopyDir)\lib\gobject-introspection\giscanner
index 653369d..a5fb26c 100644 (file)
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gdump.c" />
-    <ClCompile Include="..\..\..\girepository\giarginfo.c" />
-    <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
-    <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
-    <ClCompile Include="..\..\..\girepository\ginvoke.c" />
-    <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
-    <ClCompile Include="..\..\..\girepository\girepository.c" />
-    <ClCompile Include="..\..\..\girepository\girffi.c" />
-    <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gitypelib.c" />
-    <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
-    <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\gdump.c" />
+   <ClCompile Include="..\..\..\girepository\giarginfo.c" />
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\ginvoke.c" />
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\girepository.c" />
+   <ClCompile Include="..\..\..\girepository\girffi.c" />
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypelib.c" />
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="gi-prebuild.vcxproj">
index 71d1877..3602f6f 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 3da5007..dcd9bc9 100644 (file)
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index 9c14a13..0c3e49c 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index 4789b66..6dd3b65 100644 (file)
@@ -25,10 +25,8 @@ EXTRA_DIST = \
 
 DISTCLEANFILES = $(EXTRA_DIST)
 
-MSVC_SLN = gobject-introspection
-
 MSVC_VER = 11
-
+MSVC_FORMAT_VER = 12
 MSVC_VER_LONG = 2012
 
 include $(top_srcdir)/build/Makefile-newvs.am
index fc565df..a36e474 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @SET_MAKE@
 
 # Centralized autotools file
-# Create the Visual Studio 2012/2013 project files
+# Create the Visual Studio 2012/2013/2015 project files
 # from the Visual Studio 2010 project files
 
+# This autotools file, from GLib, can be used in other projects
+# that have Visual Studio build support, and is copied into
+# $(srcroot)/build/.
+
 # Author: Fan, Chun-wei
 # November 05, 2012
 
-# MSVC_SLN: name of root project
+# MSVC_VER_LONG: Long Version of Visual Studio (2012, 2013, 14 and so on)
+# MSVC_VER: Short Version of Visual Studio (11 for 2012, 12 for 2013, 14 for 2015 and so on)
+# MSVC_FORMAT_VER: Use 12 for MSVC 2012 through 2015
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -96,6 +92,8 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/build/Makefile-newvs.am \
+       $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 subdir = build/win32/vs11
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
@@ -105,7 +103,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -130,8 +127,6 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/build/Makefile-newvs.am
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -194,7 +189,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -336,10 +330,9 @@ EXTRA_DIST = \
        README.txt
 
 DISTCLEANFILES = $(EXTRA_DIST)
-MSVC_SLN = gobject-introspection
 MSVC_VER = 11
+MSVC_FORMAT_VER = 12
 MSVC_VER_LONG = 2012
-MSVC_FORMAT_VER = $(shell echo $$(expr $(MSVC_VER) + 1))
 all: all-am
 
 .SUFFIXES:
@@ -355,6 +348,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/win32/vs11/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign build/win32/vs11/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -363,7 +357,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/build/Makefile-newvs.am $(am__empty):
+$(top_srcdir)/build/Makefile-newvs.am:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -531,14 +525,16 @@ uninstall-am:
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
-$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln
-       cat $< | sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' | sed 's/2010/$(MSVC_VER_LONG)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+%.sln:
+       sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/2010/$(MSVC_VER_LONG)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
 
-README.txt: $(top_srcdir)/build/win32/vs10/README.txt
-       cat $< | sed 's/vs10/vs$(MSVC_VER)/g' | sed 's/VS10/VS$(MSVC_VER)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+%.txt:
+       sed 's/vs10/vs$(MSVC_VER)/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/VS10/VS$(MSVC_VER)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
 
 %.vcxproj:
        if test -e $(top_srcdir)/build/win32/vs10/$@; then \
index b33e690..e69c4ec 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index 686bcd7..b722fa6 100644 (file)
     </ClCompile>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\select.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\select.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="gi-prebuild.vcxproj">
index 01094d8..a9d927e 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Source Files</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 394a1bc..9c4c335 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <DataExecutionPrevention>
       </DataExecutionPrevention>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gthash.c" />
-    <ClCompile Include="..\..\..\girepository\girmodule.c" />
-    <ClCompile Include="..\..\..\girepository\girnode.c" />
-    <ClCompile Include="..\..\..\girepository\giroffsets.c" />
-    <ClCompile Include="..\..\..\girepository\girparser.c" />
-    <ClCompile Include="..\..\..\girepository\girwriter.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\girmodule.c" />
+   <ClCompile Include="..\..\..\girepository\girnode.c" />
+   <ClCompile Include="..\..\..\girepository\giroffsets.c" />
+   <ClCompile Include="..\..\..\girepository\girparser.c" />
+   <ClCompile Include="..\..\..\girepository\girwriter.c" />
     <ClCompile Include="..\..\..\tools\compiler.c" />
   </ItemGroup>
   <ItemGroup>
index 1ec561c..a6df8c0 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Source Files</Filter></ClCompile>
     <ClCompile Include="..\..\..\tools\compiler.c"><Filter>Sources</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 875d00a..08dafb8 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index ed855f6..b384354 100644 (file)
@@ -21,28 +21,29 @@ copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin
 copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin
 copy $(BinDir)\glib-print.exe $(CopyDir)\bin
 copy $(BinDir)\glib-print.pdb $(CopyDir)\bin
-mkdir $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository
+copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giarginfo.h
+copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gibaseinfo.h
+copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gicallableinfo.h
+copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giconstantinfo.h
+copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gienuminfo.h
+copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifieldinfo.h
+copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifunctioninfo.h
+copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giinterfaceinfo.h
+copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giobjectinfo.h
+copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gipropertyinfo.h
+copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giregisteredtypeinfo.h
+copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girepository.h
+copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girffi.h
+copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gisignalinfo.h
+copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gistructinfo.h
+copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypeinfo.h
+copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypelib.h
+copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypes.h
+copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giunioninfo.h
+copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giversionmacros.h
+copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\givfuncinfo.h
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\collections
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
index 6d58f1a..d9f78b6 100644 (file)
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gdump.c" />
-    <ClCompile Include="..\..\..\girepository\giarginfo.c" />
-    <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
-    <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
-    <ClCompile Include="..\..\..\girepository\ginvoke.c" />
-    <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
-    <ClCompile Include="..\..\..\girepository\girepository.c" />
-    <ClCompile Include="..\..\..\girepository\girffi.c" />
-    <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gitypelib.c" />
-    <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
-    <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\gdump.c" />
+   <ClCompile Include="..\..\..\girepository\giarginfo.c" />
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\ginvoke.c" />
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\girepository.c" />
+   <ClCompile Include="..\..\..\girepository\girffi.c" />
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypelib.c" />
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="gi-prebuild.vcxproj">
index 71d1877..3602f6f 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
   </ItemGroup>
 </Project>
index a778bf8..b59df75 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index c363869..c4b8bc5 100644 (file)
@@ -25,10 +25,8 @@ EXTRA_DIST = \
 
 DISTCLEANFILES = $(EXTRA_DIST)
 
-MSVC_SLN = gobject-introspection
-
 MSVC_VER = 12
-
+MSVC_FORMAT_VER = 12
 MSVC_VER_LONG = 2013
 
 include $(top_srcdir)/build/Makefile-newvs.am
index ef54b9b..1a7807c 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @SET_MAKE@
 
 # Centralized autotools file
-# Create the Visual Studio 2012/2013 project files
+# Create the Visual Studio 2012/2013/2015 project files
 # from the Visual Studio 2010 project files
 
+# This autotools file, from GLib, can be used in other projects
+# that have Visual Studio build support, and is copied into
+# $(srcroot)/build/.
+
 # Author: Fan, Chun-wei
 # November 05, 2012
 
-# MSVC_SLN: name of root project
+# MSVC_VER_LONG: Long Version of Visual Studio (2012, 2013, 14 and so on)
+# MSVC_VER: Short Version of Visual Studio (11 for 2012, 12 for 2013, 14 for 2015 and so on)
+# MSVC_FORMAT_VER: Use 12 for MSVC 2012 through 2015
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -96,6 +92,8 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/build/Makefile-newvs.am \
+       $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 subdir = build/win32/vs12
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
@@ -105,7 +103,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -130,8 +127,6 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/build/Makefile-newvs.am
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -194,7 +189,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -336,10 +330,9 @@ EXTRA_DIST = \
        README.txt
 
 DISTCLEANFILES = $(EXTRA_DIST)
-MSVC_SLN = gobject-introspection
 MSVC_VER = 12
+MSVC_FORMAT_VER = 12
 MSVC_VER_LONG = 2013
-MSVC_FORMAT_VER = $(shell echo $$(expr $(MSVC_VER) + 1))
 all: all-am
 
 .SUFFIXES:
@@ -355,6 +348,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/win32/vs12/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign build/win32/vs12/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -363,7 +357,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/build/Makefile-newvs.am $(am__empty):
+$(top_srcdir)/build/Makefile-newvs.am:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -531,14 +525,16 @@ uninstall-am:
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
-$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln
-       cat $< | sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' | sed 's/2010/$(MSVC_VER_LONG)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+%.sln:
+       sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/2010/$(MSVC_VER_LONG)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
 
-README.txt: $(top_srcdir)/build/win32/vs10/README.txt
-       cat $< | sed 's/vs10/vs$(MSVC_VER)/g' | sed 's/VS10/VS$(MSVC_VER)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+%.txt:
+       sed 's/vs10/vs$(MSVC_VER)/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/VS10/VS$(MSVC_VER)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
 
 %.vcxproj:
        if test -e $(top_srcdir)/build/win32/vs10/$@; then \
index dd38bf1..11e6738 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index 2d649a1..af3e3f9 100644 (file)
     </ClCompile>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\select.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
-    <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\select.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="gi-prebuild.vcxproj">
index 01094d8..a9d927e 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Source Files</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 338e677..af3a8f9 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <DataExecutionPrevention>
       </DataExecutionPrevention>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gthash.c" />
-    <ClCompile Include="..\..\..\girepository\girmodule.c" />
-    <ClCompile Include="..\..\..\girepository\girnode.c" />
-    <ClCompile Include="..\..\..\girepository\giroffsets.c" />
-    <ClCompile Include="..\..\..\girepository\girparser.c" />
-    <ClCompile Include="..\..\..\girepository\girwriter.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\girmodule.c" />
+   <ClCompile Include="..\..\..\girepository\girnode.c" />
+   <ClCompile Include="..\..\..\girepository\giroffsets.c" />
+   <ClCompile Include="..\..\..\girepository\girparser.c" />
+   <ClCompile Include="..\..\..\girepository\girwriter.c" />
     <ClCompile Include="..\..\..\tools\compiler.c" />
   </ItemGroup>
   <ItemGroup>
index 1ec561c..a6df8c0 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Source Files</Filter></ClCompile>
     <ClCompile Include="..\..\..\tools\compiler.c"><Filter>Sources</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 673a3fd..1c9dd5b 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index ed855f6..b384354 100644 (file)
@@ -21,28 +21,29 @@ copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin
 copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin
 copy $(BinDir)\glib-print.exe $(CopyDir)\bin
 copy $(BinDir)\glib-print.pdb $(CopyDir)\bin
-mkdir $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
-copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository
+copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giarginfo.h
+copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gibaseinfo.h
+copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gicallableinfo.h
+copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giconstantinfo.h
+copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gienuminfo.h
+copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifieldinfo.h
+copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifunctioninfo.h
+copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giinterfaceinfo.h
+copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giobjectinfo.h
+copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gipropertyinfo.h
+copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giregisteredtypeinfo.h
+copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girepository.h
+copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girffi.h
+copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gisignalinfo.h
+copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gistructinfo.h
+copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypeinfo.h
+copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypelib.h
+copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypes.h
+copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giunioninfo.h
+copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giversionmacros.h
+copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\givfuncinfo.h
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\collections
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
index b918bcf..73902a0 100644 (file)
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
     <Link>
       <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
       <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
       <SubSystem>Windows</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gdump.c" />
-    <ClCompile Include="..\..\..\girepository\giarginfo.c" />
-    <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
-    <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
-    <ClCompile Include="..\..\..\girepository\ginvoke.c" />
-    <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
-    <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
-    <ClCompile Include="..\..\..\girepository\girepository.c" />
-    <ClCompile Include="..\..\..\girepository\girffi.c" />
-    <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gitypelib.c" />
-    <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
-    <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
-    <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\gdump.c" />
+   <ClCompile Include="..\..\..\girepository\giarginfo.c" />
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\ginvoke.c" />
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\girepository.c" />
+   <ClCompile Include="..\..\..\girepository\girffi.c" />
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypelib.c" />
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="gi-prebuild.vcxproj">
index 71d1877..3602f6f 100644 (file)
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Sources</Filter></ClCompile>
-    <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Sources</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
   </ItemGroup>
 </Project>
index 866a4a0..21c0e81 100644 (file)
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
       <SubSystem>Console</SubSystem>
       <OptimizeReferences>true</OptimizeReferences>
       <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
index ee2897e..e193202 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿\r
-Microsoft Visual Studio Solution File, Format Version 13.00\r
+Microsoft Visual Studio Solution File, Format Version 12.00\r
 # Visual Studio 2013\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gi-prebuild", "gi-prebuild.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B11}"\r
 EndProject\r
diff --git a/build/win32/vs14/Makefile.am b/build/win32/vs14/Makefile.am
new file mode 100644 (file)
index 0000000..f6138f2
--- /dev/null
@@ -0,0 +1,32 @@
+EXTRA_DIST = \
+       gobject-introspection.sln       \
+       gi-build-defines.props  \
+       gi-extra-paths.props    \
+       gi-gen-srcs.props       \
+       gi-install.props        \
+       gi-version-paths.props  \
+       gi-prebuild.vcxproj     \
+       girepository.vcxproj    \
+       girepository.vcxproj.filters    \
+       cmph-bdz-test.vcxproj   \
+       cmph-bdz-test.vcxproj.filters   \
+       cmph.vcxproj    \
+       cmph.vcxproj.filters    \
+       g-ir-compiler.vcxproj   \
+       g-ir-compiler.vcxproj.filters   \
+       g-ir-generate.vcxproj   \
+       g-ir-generate.vcxproj.filters   \
+       glib-print.vcxproj      \
+       glib-print.vcxproj.filters      \
+       _giscanner.vcxproj      \
+       _giscanner.vcxproj.filters      \
+       install.vcxproj \
+       README.txt
+
+DISTCLEANFILES = $(EXTRA_DIST)
+
+MSVC_VER = 14
+MSVC_FORMAT_VER = 12
+MSVC_VER_LONG = 14
+
+include $(top_srcdir)/build/Makefile-newvs.am
diff --git a/build/win32/vs14/Makefile.in b/build/win32/vs14/Makefile.in
new file mode 100644 (file)
index 0000000..b0e5eea
--- /dev/null
@@ -0,0 +1,562 @@
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# Centralized autotools file
+# Create the Visual Studio 2012/2013/2015 project files
+# from the Visual Studio 2010 project files
+
+# This autotools file, from GLib, can be used in other projects
+# that have Visual Studio build support, and is copied into
+# $(srcroot)/build/.
+
+# Author: Fan, Chun-wei
+# November 05, 2012
+
+# MSVC_VER_LONG: Long Version of Visual Studio (2012, 2013, 14 and so on)
+# MSVC_VER: Short Version of Visual Studio (11 for 2012, 12 for 2013, 14 for 2015 and so on)
+# MSVC_FORMAT_VER: Use 12 for MSVC 2012 through 2015
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/build/Makefile-newvs.am \
+       $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+subdir = build/win32/vs14
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+       $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/python.m4 \
+       $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+       $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CAIRO_CFLAGS = @CAIRO_CFLAGS@
+CAIRO_GIR_PACKAGE = @CAIRO_GIR_PACKAGE@
+CAIRO_LIBS = @CAIRO_LIBS@
+CAIRO_SHARED_LIBRARY = @CAIRO_SHARED_LIBRARY@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXPANDED_BINDIR = @EXPANDED_BINDIR@
+EXPANDED_DATADIR = @EXPANDED_DATADIR@
+EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+EXTRA_LINK_FLAGS = @EXTRA_LINK_FLAGS@
+FFI_CFLAGS = @FFI_CFLAGS@
+FFI_LIBS = @FFI_LIBS@
+FFI_PC_CFLAGS = @FFI_PC_CFLAGS@
+FFI_PC_LIBS = @FFI_PC_LIBS@
+FFI_PC_PACKAGES = @FFI_PC_PACKAGES@
+FGREP = @FGREP@
+GIO_CFLAGS = @GIO_CFLAGS@
+GIO_LIBS = @GIO_LIBS@
+GIO_UNIX_CFLAGS = @GIO_UNIX_CFLAGS@
+GIO_UNIX_LIBS = @GIO_UNIX_LIBS@
+GIREPO_CFLAGS = @GIREPO_CFLAGS@
+GIREPO_LIBS = @GIREPO_LIBS@
+GIR_DIR = @GIR_DIR@
+GIR_SUFFIX = @GIR_SUFFIX@
+GI_HIDDEN_VISIBILITY_CFLAGS = @GI_HIDDEN_VISIBILITY_CFLAGS@
+GI_VERSION = @GI_VERSION@
+GLIBSRC = @GLIBSRC@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_LIBS = @GLIB_LIBS@
+GMODULE_CFLAGS = @GMODULE_CFLAGS@
+GMODULE_LIBS = @GMODULE_LIBS@
+GOBJECT_CFLAGS = @GOBJECT_CFLAGS@
+GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
+GOBJECT_LIBS = @GOBJECT_LIBS@
+GREP = @GREP@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
+GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
+GTKDOC_MKPDF = @GTKDOC_MKPDF@
+GTKDOC_REBASE = @GTKDOC_REBASE@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POW_LIB = @POW_LIB@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_INCLUDES = @PYTHON_INCLUDES@
+PYTHON_LIBS = @PYTHON_LIBS@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+SCANNER_CFLAGS = @SCANNER_CFLAGS@
+SCANNER_LIBS = @SCANNER_LIBS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+EXTRA_DIST = \
+       gobject-introspection.sln       \
+       gi-build-defines.props  \
+       gi-extra-paths.props    \
+       gi-gen-srcs.props       \
+       gi-install.props        \
+       gi-version-paths.props  \
+       gi-prebuild.vcxproj     \
+       girepository.vcxproj    \
+       girepository.vcxproj.filters    \
+       cmph-bdz-test.vcxproj   \
+       cmph-bdz-test.vcxproj.filters   \
+       cmph.vcxproj    \
+       cmph.vcxproj.filters    \
+       g-ir-compiler.vcxproj   \
+       g-ir-compiler.vcxproj.filters   \
+       g-ir-generate.vcxproj   \
+       g-ir-generate.vcxproj.filters   \
+       glib-print.vcxproj      \
+       glib-print.vcxproj.filters      \
+       _giscanner.vcxproj      \
+       _giscanner.vcxproj.filters      \
+       install.vcxproj \
+       README.txt
+
+DISTCLEANFILES = $(EXTRA_DIST)
+MSVC_VER = 14
+MSVC_FORMAT_VER = 12
+MSVC_VER_LONG = 14
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/build/Makefile-newvs.am $(am__configure_deps)
+       @for dep in $?; do \
+         case '$(am__configure_deps)' in \
+           *$$dep*) \
+             ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+               && { if test -f $@; then exit 0; else break; fi; }; \
+             exit 1;; \
+         esac; \
+       done; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/win32/vs14/Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --foreign build/win32/vs14/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+       @case '$?' in \
+         *config.status*) \
+           cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+         *) \
+           echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+           cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+       esac;
+$(top_srcdir)/build/Makefile-newvs.am:
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+distdir: $(DISTFILES)
+       @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       list='$(DISTFILES)'; \
+         dist_files=`for file in $$list; do echo $$file; done | \
+         sed -e "s|^$$srcdirstrip/||;t" \
+             -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+       case $$dist_files in \
+         */*) $(MKDIR_P) `echo "$$dist_files" | \
+                          sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+                          sort -u` ;; \
+       esac; \
+       for file in $$dist_files; do \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         if test -d $$d/$$file; then \
+           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+         else \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
+           || exit 1; \
+         fi; \
+       done
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+       -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+       -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+
+maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       cscopelist-am ctags-am distclean distclean-generic \
+       distclean-libtool distdir dvi dvi-am html html-am info info-am \
+       install install-am install-data install-data-am install-dvi \
+       install-dvi-am install-exec install-exec-am install-html \
+       install-html-am install-info install-info-am install-man \
+       install-pdf install-pdf-am install-ps install-ps-am \
+       install-strip installcheck installcheck-am installdirs \
+       maintainer-clean maintainer-clean-generic mostlyclean \
+       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+       tags-am uninstall uninstall-am
+
+
+%.sln:
+       sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/2010/$(MSVC_VER_LONG)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+
+%.txt:
+       sed 's/vs10/vs$(MSVC_VER)/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+       sed 's/VS10/VS$(MSVC_VER)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+       rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
+
+%.vcxproj:
+       if test -e $(top_srcdir)/build/win32/vs10/$@; then \
+               sed 's/v100/v$(MSVC_VER)0/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+       else \
+               sed 's/v100/v$(MSVC_VER)0/g' < $(top_builddir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+       fi
+
+%.props:
+       if test -e $(top_srcdir)/build/win32/vs10/$@; then \
+               sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+       else \
+               sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_builddir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+       fi
+
+%.vcxproj.filters:
+       if test -e $(top_srcdir)/build/win32/vs10/$@; then \
+               cp $(top_srcdir)/build/win32/vs10/$@ $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+       else \
+               cp $(top_builddir)/build/win32/vs10/$@ $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+       fi
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/build/win32/vs14/README.txt b/build/win32/vs14/README.txt
new file mode 100644 (file)
index 0000000..476f97a
--- /dev/null
@@ -0,0 +1,96 @@
+Please do not compile this package (gobject-introspection) in paths that contain\r
+spaces in them-as strange problems may occur during compilation or during\r
+the use of the library.\r
+\r
+Please refer to the following GNOME Live! page for more detailed\r
+instructions on building gobject-introsecption and its dependencies\r
+with Visual C++:\r
+\r
+https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack\r
+\r
+This VS14 solution and the projects it includes are intented to be used\r
+in a gobject-introspection source tree unpacked from a tarball. In a git checkout you\r
+first need to use some Unix-like environment, which will do the work for you.\r
+\r
+The required dependencies are Python 2.6 or later, GLib and LibFFI.  It is recommended\r
+that GLib is built with Visual C++ 2010 to avoid problems cause by usage of different CRTs\r
+\r
+Please refer to the README.txt file in $(GLib_src_root)\build\win32\vs14 on how to build\r
+GLib using Visual C++ 2010\r
+\r
+For LibFFI, please get version 3.0.10 or later, as Visual C++ build support\r
+was added in the 3.0.10 release series.  Please see the README file that\r
+comes with the LibFFI source package for more details on how to build LibFFI\r
+on Visual C++-please note that the mozilla-build package from Mozilla is needed\r
+in order to build LibFFI on Windows.\r
+\r
+For Python, retrieving the official Windows binaries for 2.6 or later from\r
+http://www.python.org will do the job-be sure that the Python version that\r
+you downloaded matches the configuration of your build (win32 or x64/amd64).\r
+\r
+For building the Regress test project, cairo (and possibly cairo-gobject support)\r
+is needed.\r
+\r
+Set up the source tree as follows under some arbitrary top\r
+folder <root>:\r
+\r
+<root>\<this-gobject-introspection-source-tree>\r
+<root>\vs14\<PlatformName>\r
+\r
+*this* file you are now reading is thus located at\r
+<root>\<this-glib-source-tree>\build\win32\vs14\README.\r
+\r
+<PlatformName> is either Win32 or x64, as in VS14 project files.\r
+\r
+For LibFFI, one should also put the generated ffi.h and ffitarget.h\r
+into <root>\vs14\<PlatformName>\include\ and the compiled static libffi.lib\r
+(or copy libffi-convenience.lib into libffi.lib) into\r
+<root>\vs14\<PlatformName>\lib\.\r
+\r
+The libintl.h that is used for building GLib needs to be in\r
+<root>\vs14\<PlatformName>\include, if not already done so.
+\r
+A working pkg-config tool is also required-it may be obtained from\r
+http://www.gtk.org/download/win32.php [32-bit]\r
+http://www.gtk.org/download/win64.php [64-bit]\r
+\r
+*** Note! ***\r
+Please note that due to numerous possible configurations on Python, PKG_CONFIG_PATH,
+the build of G-I is now a 2-step process: one with the Visual Studio Projects that
+will build the libraries, tools, Python Module and test DLLs (except for the everything\r
+test), and the other one with NMake Makefiles for building the introspection files.\r
+Please note that if one needs to change the installation location\r
+of Python, one needs to change the values of PythonDir (for x86/Win32 builds) and/or\r
+PythonDirX64 (for x64 builds) in gi-extra-paths.props\r
+\r
+The use of Visual Studio Projects will no longer require the setting of environmental\r
+variables, but the following environmental variables are needed (either by using "set xxx=yyy"\r
+or by nmake -f gi-introspection-msvc.mak xxx=yyy) for building the introspection files (which\r
+should be done after successfully building the Project Files):\r
+\r
+PYTHON2: Full path to your Python 2.6.x/2.7.x interpretor (python.exe) if it is\r
+         not in your PATH.  Please note that only 2.6.x and 2.7.x works at this time.\r
+         You need to use an x64/amd64 version of Python for x64 builds, and a Win32/x86\r
+         version of Python for Win32/x86 builds\r
+PKG_CONFIG_PATH: Location of the .pc (pkg-config) files, especially for the GLib .pc files.\r
+\r
+Please see $(srcroot)\build\gi-introspection-msvc.mak for more details.  Doing\r
+"nmake -f gi-introspection-msvc.mak (options omitted)" will build the various introspection files,\r
+and "nmake -f gi-introspection-msvc.mak (options omitted) install-introspection" will copy the introspection\r
+files to <root>\vs14\<PlatformName>\share\gir-1.0 (.gir files) and\r
+<root>\vs14\<PlatformName>\lib\girepository-1.0 (.typelib files)\r
+\r
+*** End of Note! ***\r
+\r
+The "install" project will copy build results and headers into their\r
+appropriate location under <root>\vs14\<PlatformName>. For instance,\r
+built DLLs go into <root>\vs14\<PlatformName>\bin, built LIBs into\r
+<root>\vs14\<PlatformName>\lib and gobject-introspection headers into\r
+<root>\vs14\<PlatformName>\include\gobject-introsection-1.0.\r
+\r
+This is then from where\r
+project files higher in the stack are supposed to look for them, not\r
+from a specific gobject-introspection source tree.\r
+\r
+--Tor Lillqvist <tml@iki.fi>\r
+--Updated by Chun-wei Fan <fanc999@gmail.com>\r
diff --git a/build/win32/vs14/_giscanner.vcxproj b/build/win32/vs14/_giscanner.vcxproj
new file mode 100644 (file)
index 0000000..7d5b541
--- /dev/null
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{8311394F-9114-4C97-80F2-51BCABA054C9}</ProjectGuid>
+    <RootNamespace>_giscanner</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-extra-paths.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-extra-paths.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-extra-paths.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-extra-paths.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDir)\include;$(PythonDir)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
+      <PreprocessorDefinitions>_DEBUG;YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
+      <AdditionalLibraryDirectories>$(PythonDir)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Windows</SubSystem>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDir)\include;$(PythonDir)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
+      <PreprocessorDefinitions>YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
+      <AdditionalLibraryDirectories>$(PythonDir)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Windows</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDirX64)\include;$(PythonDirX64)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
+      <PreprocessorDefinitions>_DEBUG;YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
+      <AdditionalLibraryDirectories>$(PythonDirX64)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Windows</SubSystem>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDirX64)\include;$(PythonDirX64)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
+      <PreprocessorDefinitions>YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
+      <AdditionalLibraryDirectories>$(PythonDirX64)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Windows</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\giscanner\giscannermodule.c" />
+    <ClCompile Include="..\..\..\scannerlexer.c" />
+    <ClCompile Include="..\..\..\scannerparser.c" />
+    <ClCompile Include="..\..\..\giscanner\sourcescanner.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="gi-prebuild.vcxproj">
+      <Project>{2093d218-190e-4194-9421-3ba7cbf33b11}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/_giscanner.vcxproj.filters b/build/win32/vs14/_giscanner.vcxproj.filters
new file mode 100644 (file)
index 0000000..5a17d2d
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\giscanner\giscannermodule.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\scannerlexer.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\scannerparser.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\giscanner\sourcescanner.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/cmph-bdz-test.vcxproj b/build/win32/vs14/cmph-bdz-test.vcxproj
new file mode 100644 (file)
index 0000000..137de21
--- /dev/null
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}</ProjectGuid>
+    <RootNamespace>cmphbdztest</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <AdditionalIncludeDirectories>..\..\..\girepository\cmph;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <AdditionalIncludeDirectories>..\..\..\girepository\cmph;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <WholeProgramOptimization>false</WholeProgramOptimization>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <AdditionalIncludeDirectories>..\..\..\girepository\cmph;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <AdditionalIncludeDirectories>..\..\..\girepository\cmph;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\girepository\cmph-bdz-test.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="cmph.vcxproj">
+      <Project>{442c007e-d901-41da-9706-5db4afb4c06b}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/cmph-bdz-test.vcxproj.filters b/build/win32/vs14/cmph-bdz-test.vcxproj.filters
new file mode 100644 (file)
index 0000000..40858f2
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\girepository\cmph-bdz-test.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/cmph.vcxproj b/build/win32/vs14/cmph.vcxproj
new file mode 100644 (file)
index 0000000..e1fd398
--- /dev/null
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{442C007E-D901-41DA-9706-5DB4AFB4C06B}</ProjectGuid>
+    <RootNamespace>cmph</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\select.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c" />
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="gi-prebuild.vcxproj">
+      <Project>{2093d218-190e-4194-9421-3ba7cbf33b11}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
diff --git a/build/win32/vs14/cmph.vcxproj.filters b/build/win32/vs14/cmph.vcxproj.filters
new file mode 100644 (file)
index 0000000..a9d927e
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bdz_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz8.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\bmz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\brz.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_entry.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\buffer_manager.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chd_ph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\chm.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\cmph_structs.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_rank.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\compressed_seq.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch_buckets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\fch.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\graph.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\jenkins_hash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\miller_rabin.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\select.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vqueue.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\cmph\vstack.c"><Filter>Source Files</Filter></ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/g-ir-compiler.vcxproj b/build/win32/vs14/g-ir-compiler.vcxproj
new file mode 100644 (file)
index 0000000..b1b05f3
--- /dev/null
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}</ProjectGuid>
+    <RootNamespace>gircompiler</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;$(FFIDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;$(FFIDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <DataExecutionPrevention>
+      </DataExecutionPrevention>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>$(FFIDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>$(FFIDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <DataExecutionPrevention>
+      </DataExecutionPrevention>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
+   <ClCompile Include="..\..\..\girepository\girmodule.c" />
+   <ClCompile Include="..\..\..\girepository\girnode.c" />
+   <ClCompile Include="..\..\..\girepository\giroffsets.c" />
+   <ClCompile Include="..\..\..\girepository\girparser.c" />
+   <ClCompile Include="..\..\..\girepository\girwriter.c" />
+    <ClCompile Include="..\..\..\tools\compiler.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="cmph.vcxproj">
+      <Project>{442c007e-d901-41da-9706-5db4afb4c06b}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+    <ProjectReference Include="girepository.vcxproj">
+      <Project>{23e28245-8fc7-4b41-b1c5-8785bd4366a7}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
diff --git a/build/win32/vs14/g-ir-compiler.vcxproj.filters b/build/win32/vs14/g-ir-compiler.vcxproj.filters
new file mode 100644 (file)
index 0000000..a6df8c0
--- /dev/null
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girmodule.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girnode.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giroffsets.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girparser.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girwriter.c"><Filter>Source Files</Filter></ClCompile>
+    <ClCompile Include="..\..\..\tools\compiler.c"><Filter>Sources</Filter></ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/g-ir-generate.vcxproj b/build/win32/vs14/g-ir-generate.vcxproj
new file mode 100644 (file)
index 0000000..a315279
--- /dev/null
@@ -0,0 +1,172 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}</ProjectGuid>
+    <RootNamespace>girgenerate</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\tools\generate.c" />
+    <ClCompile Include="..\..\..\girepository\girwriter.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="girepository.vcxproj">
+      <Project>{23e28245-8fc7-4b41-b1c5-8785bd4366a7}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/g-ir-generate.vcxproj.filters b/build/win32/vs14/g-ir-generate.vcxproj.filters
new file mode 100644 (file)
index 0000000..db77dd1
--- /dev/null
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\tools\generate.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\girepository\girwriter.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/gi-build-defines.props b/build/win32/vs14/gi-build-defines.props
new file mode 100644 (file)
index 0000000..56e7986
--- /dev/null
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ImportGroup Label="PropertySheets">
+    <Import Project="gi-version-paths.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <FFIDefines>FFI_BUILDING</FFIDefines>
+    <GIRepositoryBuildDefines>G_IREPOSITORY_COMPILATION;$(FFIDefines);DLL_EXPORT</GIRepositoryBuildDefines>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>gibuilddefinesprops</_PropertySheetDisplayName>
+    <OutDir>$(SolutionDir)$(Configuration)\$(PlatformName)\bin\</OutDir>
+    <IntDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>..\..\..;..\..\..\girepository;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>HAVE_CONFIG_H;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
+      <MultiProcessorCompilation>true</MultiProcessorCompilation>
+      <AdditionalOptions>/d2Zi+ %(AdditionalOptions)</AdditionalOptions>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>gio-2.0.lib;gobject-2.0.lib;gmodule-2.0.lib;gthread-2.0.lib;glib-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <BuildMacro Include="FFIDefines">
+      <Value>$(FFIDefines)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GIRepositoryBuildDefines">
+      <Value>$(GIRepositoryBuildDefines)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/gi-extra-paths.props b/build/win32/vs14/gi-extra-paths.props
new file mode 100644 (file)
index 0000000..1381901
--- /dev/null
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ImportGroup Label="PropertySheets">
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <!-- PythonDir currently needs to point to a 32-bit/x86 Python 2.6/2.7 installation -->
+    <PythonDir>c:\\python27</PythonDir>
+    <!-- PythonDirX64 currently needs to point to an x86-64/x64 Python 2.6/2.7 installation -->
+    <PythonDirX64>$(PythonDir).x64</PythonDirX64>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>giextrapathsprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="PythonDir">
+      <Value>$(PythonDir)</Value>
+    </BuildMacro>
+    <BuildMacro Include="PythonDirX64">
+      <Value>$(PythonDirX64)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/gi-gen-srcs.props b/build/win32/vs14/gi-gen-srcs.props
new file mode 100644 (file)
index 0000000..caaa252
--- /dev/null
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ImportGroup Label="PropertySheets">
+    <Import Project="gi-extra-paths.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <CopyConfigH>copy ..\..\..\config.h.win32 ..\..\..\config.h</CopyConfigH>
+    <GenToolsScripts>$(PythonDir)\python ..\..\..\build\gen-win32-g-ir-tools.py</GenToolsScripts>
+    <GenToolsScriptsX64>$(PythonDirX64)\python ..\..\..\build\gen-win32-g-ir-tools.py</GenToolsScriptsX64>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>gigensrcsprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="CopyConfigH">
+      <Value>$(CopyConfigH)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GenToolsScripts">
+      <Value>$(GenToolsScripts)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GenToolsScriptsX64">
+      <Value>$(GenToolsScriptsX64)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/gi-install.props b/build/win32/vs14/gi-install.props
new file mode 100644 (file)
index 0000000..b384354
--- /dev/null
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ImportGroup Label="PropertySheets">
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros">
+    <BinDir>$(SolutionDir)$(Configuration)\$(Platform)\bin</BinDir>
+    <InstalledDlls>$(BinDir)\$(LibGIDllPrefix)girepository$(LibGIDllSuffix).dll;$(BinDir)\_giscanner.pyd</InstalledDlls>
+    <InstalledBins>$(BinDir)\g-ir-compiler.exe;$(BinDir)\g-ir-generate.exe;..\..\..\tools\g-ir-annotation-tool;..\..\..\tools\g-ir-doc-tool;..\..\..\tools\g-ir-scanner</InstalledBins>
+    <GIDoInstall>
+mkdir $(CopyDir)
+mkdir $(CopyDir)\bin
+copy $(BinDir)\$(LibGIDllPrefix)girepository$(LibGIDllSuffix).dll $(CopyDir)\bin
+copy $(BinDir)\$(LibGIDllPrefix)girepository$(LibGIDllSuffix).pdb $(CopyDir)\bin
+copy $(BinDir)\g-ir-compiler.exe $(CopyDir)\bin
+copy $(BinDir)\g-ir-compiler.pdb $(CopyDir)\bin
+copy $(BinDir)\g-ir-generate.exe $(CopyDir)\bin
+copy $(BinDir)\g-ir-generate.pdb $(CopyDir)\bin
+copy ..\..\..\tools\g-ir-annotation-tool $(CopyDir)\bin
+copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin
+copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin
+copy $(BinDir)\glib-print.exe $(CopyDir)\bin
+copy $(BinDir)\glib-print.pdb $(CopyDir)\bin
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository
+copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giarginfo.h
+copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gibaseinfo.h
+copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gicallableinfo.h
+copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giconstantinfo.h
+copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gienuminfo.h
+copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifieldinfo.h
+copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifunctioninfo.h
+copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giinterfaceinfo.h
+copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giobjectinfo.h
+copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gipropertyinfo.h
+copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giregisteredtypeinfo.h
+copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girepository.h
+copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girffi.h
+copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gisignalinfo.h
+copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gistructinfo.h
+copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypeinfo.h
+copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypelib.h
+copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypes.h
+copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giunioninfo.h
+copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giversionmacros.h
+copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\givfuncinfo.h
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner\collections
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\__init__.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\annotationmain.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\annotationparser.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\ast.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\cachestore.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\ccompiler.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\codegen.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\docmain.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\docwriter.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\dumper.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\introspectablepass.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\girparser.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\girwriter.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\gdumpparser.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\libtoolimporter.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\maintransformer.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\message.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\msvccompiler.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\shlibs.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\scannermain.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\sectionparser.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\sourcescanner.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\testcodegen.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\transformer.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\utils.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\xmlwriter.py $(CopyDir)\lib\gobject-introspection\giscanner
+copy ..\..\..\giscanner\collections\__init__.py $(CopyDir)\lib\gobject-introspection\giscanner\collections
+copy ..\..\..\giscanner\collections\counter.py $(CopyDir)\lib\gobject-introspection\giscanner\collections
+copy ..\..\..\giscanner\collections\ordereddict.py $(CopyDir)\lib\gobject-introspection\giscanner\collections
+copy ..\..\..\giscanner\doctemplates\base.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
+copy ..\..\..\giscanner\doctemplates\class.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
+copy ..\..\..\giscanner\doctemplates\namespace.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates
+copy ..\..\..\giscanner\doctemplates\C\callback.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\class.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\constructor.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\default.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\enum.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\function.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\field.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\interface.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\method.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\namespace.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\property.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\record.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\signal.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\C\vfunc.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\C
+copy ..\..\..\giscanner\doctemplates\Python\callback.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\class.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\constructor.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\default.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\enum.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\function.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\field.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\interface.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\method.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\namespace.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\property.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\record.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\signal.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Python\vfunc.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Python
+copy ..\..\..\giscanner\doctemplates\Gjs\callback.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\class.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\constructor.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\default.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\enum.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\function.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\field.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\interface.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\method.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\namespace.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\property.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\record.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\signal.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy ..\..\..\giscanner\doctemplates\Gjs\vfunc.tmpl $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates\Gjs
+copy $(BinDir)\_giscanner.pyd $(CopyDir)\lib\gobject-introspection\giscanner
+copy $(BinDir)\_giscanner.pdb $(CopyDir)\lib\gobject-introspection\giscanner
+mkdir $(CopyDir)\share\gir-$(ApiVersion)
+mkdir $(CopyDir)\share\gobject-introspection-$(ApiVersion)
+copy ..\..\..\girepository\gdump.c $(CopyDir)\share\gobject-introspection-$(ApiVersion)
+mkdir $(CopyDir)\lib\girepository-$(ApiVersion)
+copy $(BinDir)\girepository-$(ApiVersion).lib $(CopyDir)\lib
+echo Please note that building GObject-Introspection with Visual Studio is now a 2-step process
+echo Please open the appropriate Visual Studio (or Windows SDK) command prompt and use the NMake Makefile
+echo in SRC_ROOT\build\gi-introspection-msvc.mak to build the introspection files
+</GIDoInstall>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>giinstallprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="BinDir">
+      <Value>$(BinDir)</Value>
+    </BuildMacro>
+    <BuildMacro Include="InstalledDlls">
+      <Value>$(InstalledDlls)</Value>
+    </BuildMacro>
+    <BuildMacro Include="InstalledBins">
+      <Value>$(InstalledBins)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GIDoInstall">
+      <Value>$(GIDoInstall)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/gi-prebuild.vcxproj b/build/win32/vs14/gi-prebuild.vcxproj
new file mode 100644 (file)
index 0000000..6ded383
--- /dev/null
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{2093D218-190E-4194-9421-3BA7CBF33B11}</ProjectGuid>
+    <RootNamespace>giprebuild</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-gen-srcs.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-gen-srcs.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-gen-srcs.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-gen-srcs.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <CustomBuild Include="..\..\..\config.h.win32">
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying config.h from config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(CopyConfigH)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying config.h from config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(CopyConfigH)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying config.h from config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(CopyConfigH)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying config.h from config.h.win32...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(CopyConfigH)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\config.h;%(Outputs)</Outputs>
+    </CustomBuild>
+    <CustomBuild Include="..\..\..\tools\g-ir-tool-template.in">
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating Tools Scripts...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenToolsScripts)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\tools\g-ir-scanner;..\..\..\tools\g-ir-doc-tool;..\..\..\tools\g-ir-annotation-tool;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating Tools Scripts...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenToolsScripts)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\tools\g-ir-scanner;..\..\..\tools\g-ir-doc-tool;..\..\..\tools\g-ir-annotation-tool;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating Tools Scripts...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenToolsScriptsX64)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\tools\g-ir-scanner;..\..\..\tools\g-ir-doc-tool;..\..\..\tools\g-ir-annotation-tool;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating Tools Scripts...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenToolsScriptsX64)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\tools\g-ir-scanner;..\..\..\tools\g-ir-doc-tool;..\..\..\tools\g-ir-annotation-tool;%(Outputs)</Outputs>
+    </CustomBuild>
+  </ItemGroup>
+  <ItemGroup>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/gi-version-paths.props b/build/win32/vs14/gi-version-paths.props
new file mode 100644 (file)
index 0000000..7d007cf
--- /dev/null
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Label="UserMacros">
+    <VSVer>14</VSVer>
+    <GlibEtcInstallRoot>$(SolutionDir)\..\..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
+    <BASE_GI_DIR>$(SolutionDir)\..\..\..</BASE_GI_DIR>
+    <CopyDir>$(GlibEtcInstallRoot)</CopyDir>
+    <ApiVersion>1.0</ApiVersion>
+    <DefDir>$(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName)</DefDir>
+    <LibGILibtoolCompatibleDllPrefix>lib</LibGILibtoolCompatibleDllPrefix>
+    <LibGILibtoolCompatibleDllSuffix>-$(ApiVersion)-0</LibGILibtoolCompatibleDllSuffix>
+    <LibGISeparateVSDllPrefix />
+    <LibGISeparateVSDllSuffix>-1-vs$(VSVer)</LibGISeparateVSDllSuffix>
+    <LibGIDllPrefix>$(LibGISeparateVSDllPrefix)</LibGIDllPrefix>
+    <LibGIDllSuffix>$(LibGISeparateVSDllSuffix)</LibGIDllSuffix>
+  </PropertyGroup>
+  <PropertyGroup>
+    <_PropertySheetDisplayName>giversionpathsprops</_PropertySheetDisplayName>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="VSVer">
+      <Value>$(VSVer)</Value>
+    </BuildMacro>
+    <BuildMacro Include="GlibEtcInstallRoot">
+      <Value>$(GlibEtcInstallRoot)</Value>
+    </BuildMacro>
+    <BuildMacro Include="BASE_GI_DIR">
+      <Value>$(BASE_GI_DIR)</Value>
+    </BuildMacro>
+    <BuildMacro Include="CopyDir">
+      <Value>$(CopyDir)</Value>
+    </BuildMacro>
+    <BuildMacro Include="ApiVersion">
+      <Value>$(ApiVersion)</Value>
+    </BuildMacro>
+    <BuildMacro Include="DefDir">
+      <Value>$(DefDir)</Value>
+    </BuildMacro>
+    <BuildMacro Include="LibGILibtoolCompatibleDllPrefix">
+      <Value>$(LibGILibtoolCompatibleDllPrefix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="LibGILibtoolCompatibleDllSuffix">
+      <Value>$(LibGILibtoolCompatibleDllSuffix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="LibGISeparateVSDllPrefix">
+      <Value>$(LibGISeparateVSDllPrefix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="LibGISeparateVSDllSuffix">
+      <Value>$(LibGISeparateVSDllSuffix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="LibGIDllPrefix">
+      <Value>$(LibGIDllPrefix)</Value>
+    </BuildMacro>
+    <BuildMacro Include="LibGIDllSuffix">
+      <Value>$(LibGIDllSuffix)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/girepository.vcxproj b/build/win32/vs14/girepository.vcxproj
new file mode 100644 (file)
index 0000000..bb96fac
--- /dev/null
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{23E28245-8FC7-4B41-B1C5-8785BD4366A7}</ProjectGuid>
+    <RootNamespace>girepository</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <AdditionalIncludeDirectories>..\..\..\girepository;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>_DEBUG;$(GIRepositoryBuildDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
+      <SubSystem>Windows</SubSystem>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <AdditionalIncludeDirectories>..\..\..\girepository;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>$(GIRepositoryBuildDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
+      <SubSystem>Windows</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <AdditionalIncludeDirectories>..\..\..\girepository;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>_DEBUG;$(GIRepositoryBuildDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
+      <SubSystem>Windows</SubSystem>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <AdditionalIncludeDirectories>..\..\..\girepository;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>$(GIRepositoryBuildDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>libffi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <OutputFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll</OutputFile>
+      <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <ProgramDatabaseFile>$(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).pdb</ProgramDatabaseFile>
+      <SubSystem>Windows</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+   <ClCompile Include="..\..\..\girepository\gdump.c" />
+   <ClCompile Include="..\..\..\girepository\giarginfo.c" />
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\ginvoke.c" />
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c" />
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\girepository.c" />
+   <ClCompile Include="..\..\..\girepository\girffi.c" />
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gitypelib.c" />
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c" />
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c" />
+   <ClCompile Include="..\..\..\girepository\gthash.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="gi-prebuild.vcxproj">
+      <Project>{2093d218-190e-4194-9421-3ba7cbf33b11}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+    <ProjectReference Include="cmph.vcxproj">
+      <Project>{442c007e-d901-41da-9706-5db4afb4c06b}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
diff --git a/build/win32/vs14/girepository.vcxproj.filters b/build/win32/vs14/girepository.vcxproj.filters
new file mode 100644 (file)
index 0000000..3602f6f
--- /dev/null
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+   <ClCompile Include="..\..\..\girepository\gdump.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giarginfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gibaseinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gicallableinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giconstantinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gienuminfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifieldinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gifunctioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\ginvoke.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giinterfaceinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giobjectinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gipropertyinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giregisteredtypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girepository.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\girffi.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gisignalinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gistructinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypeinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gitypelib.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\giunioninfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\givfuncinfo.c"><Filter>Source Files</Filter></ClCompile>
+   <ClCompile Include="..\..\..\girepository\gthash.c"><Filter>Source Files</Filter></ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs14/glib-print.vcxproj b/build/win32/vs14/glib-print.vcxproj
new file mode 100644 (file)
index 0000000..632b8c4
--- /dev/null
@@ -0,0 +1,171 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}</ProjectGuid>
+    <RootNamespace>glibprint</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-build-defines.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX86</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Midl>
+      <TargetEnvironment>X64</TargetEnvironment>
+    </Midl>
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <SubSystem>Console</SubSystem>
+      <OptimizeReferences>true</OptimizeReferences>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+      <TargetMachine>MachineX64</TargetMachine>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\examples\glib-print.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="girepository.vcxproj">
+      <Project>{23e28245-8fc7-4b41-b1c5-8785bd4366a7}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/glib-print.vcxproj.filters b/build/win32/vs14/glib-print.vcxproj.filters
new file mode 100644 (file)
index 0000000..124e678
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Sources">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\examples\glib-print.c">
+      <Filter>Sources</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/build/win32/vs14/gobject-introspection.sln b/build/win32/vs14/gobject-introspection.sln
new file mode 100644 (file)
index 0000000..fcaf1c8
--- /dev/null
@@ -0,0 +1,106 @@
+\r
+Microsoft Visual Studio Solution File, Format Version 12.00\r
+# Visual Studio 14\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gi-prebuild", "gi-prebuild.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B11}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cmph", "cmph.vcxproj", "{442C007E-D901-41DA-9706-5DB4AFB4C06B}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cmph-bdz-test", "cmph-bdz-test.vcxproj", "{E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "girepository", "girepository.vcxproj", "{23E28245-8FC7-4B41-B1C5-8785BD4366A7}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_giscanner", "_giscanner.vcxproj", "{8311394F-9114-4C97-80F2-51BCABA054C9}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glib-print", "glib-print.vcxproj", "{2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "g-ir-generate", "g-ir-generate.vcxproj", "{F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "g-ir-compiler", "g-ir-compiler.vcxproj", "{5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "install", "install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}"\r
+EndProject\r
+Global\r
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+               Debug|Win32 = Debug|Win32\r
+               Debug|x64 = Debug|x64\r
+               Release|Win32 = Release|Win32\r
+               Release|x64 = Release|x64\r
+       EndGlobalSection\r
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|Win32.Build.0 = Debug|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|x64.ActiveCfg = Debug|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|x64.Build.0 = Debug|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|Win32.ActiveCfg = Release|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|Win32.Build.0 = Release|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|x64.ActiveCfg = Release|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|x64.Build.0 = Release|x64\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|Win32.Build.0 = Debug|Win32\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|x64.ActiveCfg = Debug|x64\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|x64.Build.0 = Debug|x64\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Release|Win32.ActiveCfg = Release|Win32\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Release|Win32.Build.0 = Release|Win32\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Release|x64.ActiveCfg = Release|x64\r
+               {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Release|x64.Build.0 = Release|x64\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Debug|Win32.Build.0 = Debug|Win32\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Debug|x64.ActiveCfg = Debug|x64\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Debug|x64.Build.0 = Debug|x64\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Release|Win32.ActiveCfg = Release|Win32\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Release|Win32.Build.0 = Release|Win32\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Release|x64.ActiveCfg = Release|x64\r
+               {E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}.Release|x64.Build.0 = Release|x64\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Debug|Win32.Build.0 = Debug|Win32\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Debug|x64.ActiveCfg = Debug|x64\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Debug|x64.Build.0 = Debug|x64\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Release|Win32.ActiveCfg = Release|Win32\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Release|Win32.Build.0 = Release|Win32\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Release|x64.ActiveCfg = Release|x64\r
+               {23E28245-8FC7-4B41-B1C5-8785BD4366A7}.Release|x64.Build.0 = Release|x64\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Debug|Win32.Build.0 = Debug|Win32\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Debug|x64.ActiveCfg = Debug|x64\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Debug|x64.Build.0 = Debug|x64\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Release|Win32.ActiveCfg = Release|Win32\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Release|Win32.Build.0 = Release|Win32\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Release|x64.ActiveCfg = Release|x64\r
+               {8311394F-9114-4C97-80F2-51BCABA054C9}.Release|x64.Build.0 = Release|x64\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Debug|Win32.Build.0 = Debug|Win32\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Debug|x64.ActiveCfg = Debug|x64\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Debug|x64.Build.0 = Debug|x64\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Release|Win32.ActiveCfg = Release|Win32\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Release|Win32.Build.0 = Release|Win32\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Release|x64.ActiveCfg = Release|x64\r
+               {2CCD6E09-08E7-44B9-92E6-42F0A5DBBC8B}.Release|x64.Build.0 = Release|x64\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Debug|Win32.Build.0 = Debug|Win32\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Debug|x64.ActiveCfg = Debug|x64\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Debug|x64.Build.0 = Debug|x64\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Release|Win32.ActiveCfg = Release|Win32\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Release|Win32.Build.0 = Release|Win32\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Release|x64.ActiveCfg = Release|x64\r
+               {F4E6621F-A7DD-4863-8CCF-BA04DFC601E3}.Release|x64.Build.0 = Release|x64\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Debug|Win32.Build.0 = Debug|Win32\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Debug|x64.ActiveCfg = Debug|x64\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Debug|x64.Build.0 = Debug|x64\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Release|Win32.ActiveCfg = Release|Win32\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Release|Win32.Build.0 = Release|Win32\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Release|x64.ActiveCfg = Release|x64\r
+               {5DCB55CE-F32C-4C77-8BF4-B4DAD3EC7774}.Release|x64.Build.0 = Release|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.Build.0 = Debug|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.ActiveCfg = Release|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|Win32.Build.0 = Release|Win32\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.ActiveCfg = Release|x64\r
+               {2093D218-190E-4194-9421-3BA7CBF33B10}.Release|x64.Build.0 = Release|x64\r
+       EndGlobalSection\r
+       GlobalSection(SolutionProperties) = preSolution\r
+               HideSolutionNode = FALSE\r
+       EndGlobalSection\r
+EndGlobal\r
diff --git a/build/win32/vs14/install.vcxproj b/build/win32/vs14/install.vcxproj
new file mode 100644 (file)
index 0000000..420ce0b
--- /dev/null
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{2093D218-190E-4194-9421-3BA7CBF33B10}</ProjectGuid>
+    <RootNamespace>install</RootNamespace>
+    <Keyword>Win32Proj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Utility</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-install.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-install.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-install.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gi-install.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <CustomBuild Include="..\..\..\config.h.win32">
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Installing Build Results...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GIDoInstall)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(InstalledDlls);$(InstalledBins);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Installing Build Results...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GIDoInstall)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(InstalledDlls);$(InstalledBins);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Installing Build Results...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GIDoInstall)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(InstalledDlls);$(InstalledBins);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Installing Build Results...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GIDoInstall)</Command>
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(InstalledDlls);$(InstalledBins);%(Outputs)</Outputs>
+    </CustomBuild>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="g-ir-compiler.vcxproj">
+      <Project>{5dcb55ce-f32c-4c77-8bf4-b4dad3ec7774}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+    <ProjectReference Include="g-ir-generate.vcxproj">
+      <Project>{f4e6621f-a7dd-4863-8ccf-ba04dfc601e3}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+    <ProjectReference Include="girepository.vcxproj">
+      <Project>{23e28245-8fc7-4b41-b1c5-8785bd4366a7}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+    <ProjectReference Include="_giscanner.vcxproj">
+      <Project>{8311394f-9114-4c97-80f2-51bcaba054c9}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
index 4fa1e76..0c5845d 100644 (file)
@@ -1,24 +1,31 @@
+GENERATED_ITEMS = \
+       cmph.vcproj             \
+       girepository.vcproj     \
+       g-ir-compiler.vcproj    \
+       gi-install.vsprops
+
 EXTRA_DIST = \
        gobject-introspection.sln       \
        gi-build-defines.vsprops        \
        gi-extra-paths.vsprops  \
        gi-gen-srcs.vsprops     \
        gi-install.vspropsin    \
-       gi-install.vsprops      \
        gi-version-paths.vsprops        \
        gi-prebuild.vcproj      \
        girepository.vcprojin   \
-       cmph-bdz-test.vcproj    \
-       cmph.vcprojin   \
+       cmph-bdz-test.vcproj            \
+       cmph.vcprojin           \
        g-ir-compiler.vcprojin  \
        g-ir-generate.vcproj    \
        glib-print.vcproj       \
        install.vcproj  \
        _giscanner.vcproj       \
-       README.txt
+       README.txt      \
+       $(GENERATED_ITEMS)
 
-gi-install.vsprops: $(top_srcdir)/build/win32/vs9/gi-install.vspropsin gir.vs9.install
+gi-install.vsprops: $(top_srcdir)/build/win32/vs9/gi-install.vspropsin girepository.headers giscanner.scripts
        $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gi-install.vspropsin >$@
-       rm gir.vs9.install
+       rm girepository.headers
+       rm giscanner.scripts
 
-CLEANFILES = gi-install.vsprops
+DISTCLEANFILES = $(GENERATED_ITEMS)
index 13224c9..166760c 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -88,6 +78,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = build/win32/vs9
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
@@ -96,7 +87,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -121,7 +111,6 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -184,7 +173,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -300,26 +288,32 @@ target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
+GENERATED_ITEMS = \
+       cmph.vcproj             \
+       girepository.vcproj     \
+       g-ir-compiler.vcproj    \
+       gi-install.vsprops
+
 EXTRA_DIST = \
        gobject-introspection.sln       \
        gi-build-defines.vsprops        \
        gi-extra-paths.vsprops  \
        gi-gen-srcs.vsprops     \
        gi-install.vspropsin    \
-       gi-install.vsprops      \
        gi-version-paths.vsprops        \
        gi-prebuild.vcproj      \
        girepository.vcprojin   \
-       cmph-bdz-test.vcproj    \
-       cmph.vcprojin   \
+       cmph-bdz-test.vcproj            \
+       cmph.vcprojin           \
        g-ir-compiler.vcprojin  \
        g-ir-generate.vcproj    \
        glib-print.vcproj       \
        install.vcproj  \
        _giscanner.vcproj       \
-       README.txt
+       README.txt      \
+       $(GENERATED_ITEMS)
 
-CLEANFILES = gi-install.vsprops
+DISTCLEANFILES = $(GENERATED_ITEMS)
 all: all-am
 
 .SUFFIXES:
@@ -335,6 +329,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign build/win32/vs9/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign build/win32/vs9/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -421,11 +416,11 @@ install-strip:
 mostlyclean-generic:
 
 clean-generic:
-       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
        -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+       -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -510,12 +505,11 @@ uninstall-am:
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
-gi-install.vsprops: $(top_srcdir)/build/win32/vs9/gi-install.vspropsin gir.vs9.install
+gi-install.vsprops: $(top_srcdir)/build/win32/vs9/gi-install.vspropsin girepository.headers giscanner.scripts
        $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gi-install.vspropsin >$@
-       rm gir.vs9.install
+       rm girepository.headers
+       rm giscanner.scripts
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 1877c7a..8663dfb 100644 (file)
@@ -21,28 +21,28 @@ copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin&#x0D;&#x0A;
 copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-print.exe $(CopyDir)\bin&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-print.pdb $(CopyDir)\bin&#x0D;&#x0A;
-mkdir $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
-copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-$(ApiVersion)\girepository&#x0D;&#x0A;
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository&#x0D;&#x0A;
+copy ..\..\..\girepository\giarginfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giarginfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gibaseinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gibaseinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gicallableinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gicallableinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\giconstantinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giconstantinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gienuminfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gienuminfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gifieldinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifieldinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gifunctioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gifunctioninfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\giinterfaceinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giinterfaceinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\giobjectinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giobjectinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gipropertyinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gipropertyinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\giregisteredtypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giregisteredtypeinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\girepository.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girepository.h&#x0D;&#x0A;
+copy ..\..\..\girepository\girffi.h $(CopyDir)\include\gobject-introspection-1.0\girepository\girffi.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gisignalinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gisignalinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gistructinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gistructinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gitypeinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypeinfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gitypelib.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypelib.h&#x0D;&#x0A;
+copy ..\..\..\girepository\gitypes.h $(CopyDir)\include\gobject-introspection-1.0\girepository\gitypes.h&#x0D;&#x0A;
+copy ..\..\..\girepository\giunioninfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giunioninfo.h&#x0D;&#x0A;
+copy ..\..\..\girepository\giversionmacros.h $(CopyDir)\include\gobject-introspection-1.0\girepository\giversionmacros.h&#x0D;&#x0A;
+copy ..\..\..\girepository\givfuncinfo.h $(CopyDir)\include\gobject-introspection-1.0\girepository\givfuncinfo.h&#x0D;&#x0A;
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\collections&#x0D;&#x0A;
 mkdir $(CopyDir)\lib\gobject-introspection\giscanner\doctemplates&#x0D;&#x0A;
index f7b4716..f47937a 100644 (file)
@@ -23,7 +23,10 @@ copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-print.exe $(CopyDir)\bin&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\glib-print.pdb $(CopyDir)\bin&#x0D;&#x0A;
 
-#include "gir.vs9.install"
+mkdir $(CopyDir)\include\gobject-introspection-1.0\girepository&#x0D;&#x0A;
+#include "girepository.headers"
+#include "giscanner.scripts"
+
 
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\_giscanner.pyd $(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\_giscanner.pdb $(CopyDir)\lib\gobject-introspection\giscanner&#x0D;&#x0A;
index d024984..f05f4eb 100644 (file)
@@ -21,6 +21,9 @@
 /* Define to 1 if you have the <fcntl.h> header file. */
 #undef HAVE_FCNTL_H
 
+/* Define to 1 if you have the `getauxval' function. */
+#undef HAVE_GETAUXVAL
+
 /* Define to 1 if you have the <inttypes.h> header file. */
 #undef HAVE_INTTYPES_H
 
@@ -73,6 +76,9 @@
    */
 #undef LT_OBJDIR
 
+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
+#undef NO_MINUS_C_MINUS_O
+
 /* Name of package */
 #undef PACKAGE
 
index eada423..493e98e 100644 (file)
@@ -96,7 +96,7 @@
 #define PACKAGE_NAME "gobject-introspection"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "gojbect-introspection 1.46.0"
+#define PACKAGE_STRING "gojbect-introspection 1.47.1"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gobject-introspection"
 #define PACKAGE_URL ""
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.46.0"
+#define PACKAGE_VERSION "1.47.1"
 
 /* Define to the platform's shared library suffix */
 #define SHLIB_SUFFIX ".dll"
 #define STDC_HEADERS 1
 
 /* Version number of package */
-#define VERSION "1.46.0"
+#define VERSION "1.47.1"
 
 /* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
    `char[]'. */
index 7815cae..9dcc8cd 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for gobject-introspection 1.46.0.
+# Generated by GNU Autoconf 2.69 for gobject-introspection 1.47.1.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=gobject-introspection>.
 #
@@ -591,8 +591,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='gobject-introspection'
 PACKAGE_TARNAME='gobject-introspection'
-PACKAGE_VERSION='1.46.0'
-PACKAGE_STRING='gobject-introspection 1.46.0'
+PACKAGE_VERSION='1.47.1'
+PACKAGE_STRING='gobject-introspection 1.47.1'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=gobject-introspection'
 PACKAGE_URL=''
 
@@ -665,14 +665,11 @@ GTK_DOC_BUILD_HTML_FALSE
 GTK_DOC_BUILD_HTML_TRUE
 ENABLE_GTK_DOC_FALSE
 ENABLE_GTK_DOC_TRUE
-HAVE_GTK_DOC_FALSE
-HAVE_GTK_DOC_TRUE
 GTKDOC_DEPS_LIBS
 GTKDOC_DEPS_CFLAGS
 HTML_DIR
 GTKDOC_MKPDF
 GTKDOC_REBASE
-GTKDOC_CHECK_PATH
 GTKDOC_CHECK
 GIREPO_LIBS
 GIREPO_CFLAGS
@@ -853,6 +850,7 @@ with_html_dir
 enable_gtk_doc
 enable_gtk_doc_html
 enable_gtk_doc_pdf
+with_python
 enable_doctool
 with_glib_src
 enable_Bsymbolic
@@ -1430,7 +1428,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures gobject-introspection 1.46.0 to adapt to many kinds of systems.
+\`configure' configures gobject-introspection 1.47.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1501,7 +1499,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of gobject-introspection 1.46.0:";;
+     short | recursive ) echo "Configuration of gobject-introspection 1.47.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1539,6 +1537,9 @@ Optional Packages:
                         (or the compiler's sysroot if not specified).
   --with-cairo            Use cairo [default=maybe]
   --with-html-dir=PATH    path to installed docs
+  --with-python=PATH      Path to Python interpreter; searches $PATH if only a
+                          program name is given; if not given, searches for a
+                          few standard names such as "python3" or "python2"
   --with-glib-src=PATH    Source directory for glib - needed to add docs to gir
 
 Some influential environment variables:
@@ -1655,7 +1656,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-gobject-introspection configure 1.46.0
+gobject-introspection configure 1.47.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2207,7 +2208,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by gobject-introspection $as_me 1.46.0, which was
+It was created by gobject-introspection $as_me 1.47.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2589,7 +2590,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
 
-am__api_version='1.15'
+am__api_version='1.13'
 
 # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
@@ -2761,8 +2762,8 @@ test "$program_suffix" != NONE &&
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
 program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 
-# Expand $ac_aux_dir to an absolute path.
-am_aux_dir=`cd "$ac_aux_dir" && pwd`
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
 
 if test x"${MISSING+set}" != xset; then
   case $am_aux_dir in
@@ -2781,7 +2782,7 @@ else
 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
-if test x"${install_sh+set}" != xset; then
+if test x"${install_sh}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -3075,7 +3076,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='gobject-introspection'
- VERSION='1.46.0'
+ VERSION='1.47.1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -3109,8 +3110,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 mkdir_p='$(MKDIR_P)'
 
-# We need awk for the "check" target (and possibly the TAP driver).  The
-# system "awk" is bad on some platforms.
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
 # Always define AMTAR for backward compatibility.  Yes, it's still used
 # in the wild :-(  We should find a proper way to deprecate it ...
 AMTAR='$${TAR-tar}'
@@ -3242,48 +3243,6 @@ $as_echo "$am_cv_prog_tar_ustar" >&6; }
 
 
 
-# POSIX will say in a future version that running "rm -f" with no argument
-# is OK; and we want to be able to make that assumption in our Makefile
-# recipes.  So use an aggressive probe to check that the usage we want is
-# actually supported "in the wild" to an acceptable degree.
-# See automake bug#10828.
-# To make any issue more visible, cause the running configure to be aborted
-# by default if the 'rm' program in use doesn't match our expectations; the
-# user can still override this though.
-if rm -f && rm -fr && rm -rf; then : OK; else
-  cat >&2 <<'END'
-Oops!
-
-Your 'rm' program seems unable to run without file operands specified
-on the command line, even when the '-f' option is present.  This is contrary
-to the behaviour of most rm programs out there, and not conforming with
-the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
-
-Please tell bug-automake@gnu.org about your system, including the value
-of your $PATH and any error possibly output before this message.  This
-can help us improve future automake versions.
-
-END
-  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
-    echo 'Configuration will proceed anyway, since you have set the' >&2
-    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
-    echo >&2
-  else
-    cat >&2 <<'END'
-Aborting the configuration process, to ensure you take notice of the issue.
-
-You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
-
-If you want to complete the configuration process using your problematic
-'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
-to "yes", and re-run configure.
-
-END
-    as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
-  fi
-fi
-
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
@@ -3349,7 +3308,7 @@ AM_BACKSLASH='\'
 
 
 # Used in docs/reference/version.xml
-GI_VERSION=1.46.0
+GI_VERSION=1.47.1
 
 
 # Check for Win32
@@ -4230,65 +4189,6 @@ ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
-$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
-if ${am_cv_prog_cc_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-  # Make sure it works both with $CC and with simple cc.
-  # Following AC_PROG_CC_C_O, we do the test twice because some
-  # compilers refuse to overwrite an existing .o file with -o,
-  # though they will create one.
-  am_cv_prog_cc_c_o=yes
-  for am_i in 1 2; do
-    if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
-   ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
-   ac_status=$?
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   (exit $ac_status); } \
-         && test -f conftest2.$ac_objext; then
-      : OK
-    else
-      am_cv_prog_cc_c_o=no
-      break
-    fi
-  done
-  rm -f core conftest*
-  unset am_i
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
-$as_echo "$am_cv_prog_cc_c_o" >&6; }
-if test "$am_cv_prog_cc_c_o" != yes; then
-   # Losing compiler, so override with the script.
-   # FIXME: It is wrong to rewrite CC.
-   # But if we don't then we get into trouble of one sort or another.
-   # A longer-term fix would be to have automake use am__CC in this case,
-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
-   CC="$am_aux_dir/compile $CC"
-fi
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
 DEPDIR="${am__leading_dot}deps"
 
 ac_config_commands="$ac_config_commands depfiles"
@@ -4481,6 +4381,131 @@ else
 fi
 
 
+if test "x$CC" != xcc; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5
+$as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether cc understands -c and -o together" >&5
+$as_echo_n "checking whether cc understands -c and -o together... " >&6; }
+fi
+set dummy $CC; ac_cc=`$as_echo "$2" |
+                     sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
+if eval \${ac_cv_prog_cc_${ac_cc}_c_o+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+# Make sure it works both with $CC and with simple cc.
+# We do the test twice because some compilers refuse to overwrite an
+# existing .o file with -o, though they will create one.
+ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
+rm -f conftest2.*
+if { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } &&
+   test -f conftest2.$ac_objext && { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; };
+then
+  eval ac_cv_prog_cc_${ac_cc}_c_o=yes
+  if test "x$CC" != xcc; then
+    # Test first that cc exists at all.
+    if { ac_try='cc -c conftest.$ac_ext >&5'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+      ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
+      rm -f conftest2.*
+      if { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } &&
+        test -f conftest2.$ac_objext && { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; };
+      then
+       # cc works too.
+       :
+      else
+       # cc exists but doesn't like -o.
+       eval ac_cv_prog_cc_${ac_cc}_c_o=no
+      fi
+    fi
+  fi
+else
+  eval ac_cv_prog_cc_${ac_cc}_c_o=no
+fi
+rm -f core conftest*
+
+fi
+if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h
+
+fi
+
+# FIXME: we rely on the cache variable name because
+# there is no other way.
+set dummy $CC
+am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
+eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
+if test "$am_t" != yes; then
+   # Losing compiler, so override with the script.
+   # FIXME: It is wrong to rewrite CC.
+   # But if we don't then we get into trouble of one sort or another.
+   # A longer-term fix would be to have automake use am__CC in this case,
+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+   CC="$am_aux_dir/compile $CC"
+fi
+
 
 
 
@@ -6825,7 +6850,7 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
@@ -6843,10 +6868,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_i386"
            ;;
-         powerpc64le-*linux*)
-           LD="${LD-ld} -m elf32lppclinux"
-           ;;
-         powerpc64-*linux*)
+         ppc64-*linux*|powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -6865,10 +6887,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         powerpcle-*linux*)
-           LD="${LD-ld} -m elf64lppc"
-           ;;
-         powerpc-*linux*)
+         ppc*-*linux*|powerpc*-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
@@ -13705,78 +13724,16 @@ GIREPO_CFLAGS="$GIREPO_CFLAGS $GCOV_CFLAGS"
 
 
 
-  gtk_doc_requires="gtk-doc >= 1.19"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gtk-doc" >&5
-$as_echo_n "checking for gtk-doc... " >&6; }
-  if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$gtk_doc_requires\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "$gtk_doc_requires") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  have_gtk_doc=yes
-else
-  have_gtk_doc=no
-fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_gtk_doc" >&5
-$as_echo "$have_gtk_doc" >&6; }
-
-  if test "$have_gtk_doc" = "no"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
-  You will not be able to create source packages with 'make dist'
-  because $gtk_doc_requires is not found." >&5
-$as_echo "$as_me: WARNING:
-  You will not be able to create source packages with 'make dist'
-  because $gtk_doc_requires is not found." >&2;}
-  fi
-
-            # Extract the first word of "gtkdoc-check", so it can be a program name with args.
+    # Extract the first word of "gtkdoc-check", so it can be a program name with args.
 set dummy gtkdoc-check; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_GTKDOC_CHECK+:} false; then :
+if ${ac_cv_path_GTKDOC_CHECK+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$GTKDOC_CHECK"; then
-  ac_cv_prog_GTKDOC_CHECK="$GTKDOC_CHECK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_GTKDOC_CHECK="gtkdoc-check.test"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-GTKDOC_CHECK=$ac_cv_prog_GTKDOC_CHECK
-if test -n "$GTKDOC_CHECK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5
-$as_echo "$GTKDOC_CHECK" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  # Extract the first word of "gtkdoc-check", so it can be a program name with args.
-set dummy gtkdoc-check; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GTKDOC_CHECK_PATH+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $GTKDOC_CHECK_PATH in
+  case $GTKDOC_CHECK in
   [\\/]* | ?:[\\/]*)
-  ac_cv_path_GTKDOC_CHECK_PATH="$GTKDOC_CHECK_PATH" # Let the user override the test with a path.
+  ac_cv_path_GTKDOC_CHECK="$GTKDOC_CHECK" # Let the user override the test with a path.
   ;;
   *)
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -13786,7 +13743,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_GTKDOC_CHECK_PATH="$as_dir/$ac_word$ac_exec_ext"
+    ac_cv_path_GTKDOC_CHECK="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -13797,10 +13754,10 @@ IFS=$as_save_IFS
   ;;
 esac
 fi
-GTKDOC_CHECK_PATH=$ac_cv_path_GTKDOC_CHECK_PATH
-if test -n "$GTKDOC_CHECK_PATH"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK_PATH" >&5
-$as_echo "$GTKDOC_CHECK_PATH" >&6; }
+GTKDOC_CHECK=$ac_cv_path_GTKDOC_CHECK
+if test -n "$GTKDOC_CHECK"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5
+$as_echo "$GTKDOC_CHECK" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
@@ -13913,19 +13870,18 @@ else
 fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5
-$as_echo_n "checking whether to build gtk-doc documentation... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5
-$as_echo "$enable_gtk_doc" >&6; }
-
-  if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then
-    as_fn_error $? "
-  You must have $gtk_doc_requires installed to build documentation for
-  $PACKAGE_NAME. Please install gtk-doc or disable building the
-  documentation by adding '--disable-gtk-doc' to '$0'." "$LINENO" 5
-  fi
-
-    if test "x$PACKAGE_NAME" != "xglib"; then
+  if test x$enable_gtk_doc = xyes; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-doc >= 1.19\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk-doc >= 1.19") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  :
+else
+  as_fn_error $? "You need to have gtk-doc >= 1.19 installed to build $PACKAGE_NAME" "$LINENO" 5
+fi
+        if test "x$PACKAGE_NAME" != "xglib"; then
 
 pkg_failed=no
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKDOC_DEPS" >&5
@@ -13997,8 +13953,14 @@ else
 $as_echo "yes" >&6; }
 
 fi
+    fi
   fi
 
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5
+$as_echo_n "checking whether to build gtk-doc documentation... " >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5
+$as_echo "$enable_gtk_doc" >&6; }
+
     # Check whether --enable-gtk-doc-html was given.
 if test "${enable_gtk_doc_html+set}" = set; then :
   enableval=$enable_gtk_doc_html;
   fi
 
 
-   if test x$have_gtk_doc = xyes; then
-  HAVE_GTK_DOC_TRUE=
-  HAVE_GTK_DOC_FALSE='#'
-else
-  HAVE_GTK_DOC_TRUE='#'
-  HAVE_GTK_DOC_FALSE=
-fi
-
    if test x$enable_gtk_doc = xyes; then
   ENABLE_GTK_DOC_TRUE=
   ENABLE_GTK_DOC_FALSE='#'
@@ -14398,7 +14352,7 @@ fi
 
 fi
 
-for ac_func in memchr strchr strspn strstr strtol strtoull
+for ac_func in memchr strchr strspn strstr strtol strtoull getauxval
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -14424,6 +14378,22 @@ done
 
 
 # Python
+# option to specify python interpreter to use; this just sets $PYTHON, so that
+# we will fallback to reading $PYTHON if --with-python is not given, and
+# python.m4 will get the expected input
+
+# Check whether --with-python was given.
+if test "${with_python+set}" = set; then :
+  withval=$with_python; PYTHON="$withval"
+fi
+
+if test x"$PYTHON" = xyes; then
+    as_fn_error $? "--with-python option requires a path or program argument" "$LINENO" 5
+fi
+if test -n "$PYTHON" && ! which "$PYTHON"; then
+    as_fn_error $? "Python interpreter $PYTHON does not exist" "$LINENO" 5
+fi
+
 
 
 
@@ -14933,7 +14903,7 @@ fi
 
 
 
-ac_config_files="$ac_config_files Makefile tests/Makefile tests/offsets/Makefile tests/scanner/Makefile tests/scanner/annotationparser/Makefile tests/repository/Makefile tests/warn/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml gobject-introspection-1.0.pc gobject-introspection-no-export-1.0.pc config.h.win32 build/Makefile build/win32/Makefile build/win32/vs9/Makefile build/win32/vs10/Makefile build/win32/vs11/Makefile build/win32/vs12/Makefile"
+ac_config_files="$ac_config_files Makefile tests/Makefile tests/offsets/Makefile tests/scanner/Makefile tests/scanner/annotationparser/Makefile tests/repository/Makefile tests/warn/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml gobject-introspection-1.0.pc gobject-introspection-no-export-1.0.pc config.h.win32 build/Makefile build/win32/Makefile build/win32/vs9/Makefile build/win32/vs10/Makefile build/win32/vs11/Makefile build/win32/vs12/Makefile build/win32/vs14/Makefile"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -15084,10 +15054,6 @@ if test -z "${HAVE_CAIRO_TRUE}" && test -z "${HAVE_CAIRO_FALSE}"; then
   as_fn_error $? "conditional \"HAVE_CAIRO\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
-if test -z "${HAVE_GTK_DOC_TRUE}" && test -z "${HAVE_GTK_DOC_FALSE}"; then
-  as_fn_error $? "conditional \"HAVE_GTK_DOC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
 if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then
   as_fn_error $? "conditional \"ENABLE_GTK_DOC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -15513,7 +15479,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by gobject-introspection $as_me 1.46.0, which was
+This file was extended by gobject-introspection $as_me 1.47.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -15579,7 +15545,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-gobject-introspection config.status 1.46.0
+gobject-introspection config.status 1.47.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -16007,6 +15973,7 @@ do
     "build/win32/vs10/Makefile") CONFIG_FILES="$CONFIG_FILES build/win32/vs10/Makefile" ;;
     "build/win32/vs11/Makefile") CONFIG_FILES="$CONFIG_FILES build/win32/vs11/Makefile" ;;
     "build/win32/vs12/Makefile") CONFIG_FILES="$CONFIG_FILES build/win32/vs12/Makefile" ;;
+    "build/win32/vs14/Makefile") CONFIG_FILES="$CONFIG_FILES build/win32/vs14/Makefile" ;;
 
   *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
   esac
index b11596b..b74d182 100644 (file)
@@ -3,8 +3,8 @@
 
 dnl the gi version number
 m4_define(gi_major_version, 1)
-m4_define(gi_minor_version, 46)
-m4_define(gi_micro_version, 0)
+m4_define(gi_minor_version, 47)
+m4_define(gi_micro_version, 1)
 m4_define(gi_version, gi_major_version.gi_minor_version.gi_micro_version)
 
 AC_PREREQ([2.63])
@@ -247,10 +247,23 @@ AC_C_CONST
 
 # Checks for library functions.
 AC_FUNC_STRTOD
-AC_CHECK_FUNCS([memchr strchr strspn strstr strtol strtoull])
+AC_CHECK_FUNCS([memchr strchr strspn strstr strtol strtoull getauxval])
 AC_CHECK_FUNCS([backtrace backtrace_symbols])
 
 # Python
+# option to specify python interpreter to use; this just sets $PYTHON, so that
+# we will fallback to reading $PYTHON if --with-python is not given, and
+# python.m4 will get the expected input
+AC_ARG_WITH(python,
+  AS_HELP_STRING([--with-python=PATH],[Path to Python interpreter; searches $PATH if only a program name is given; if not given, searches for a few standard names such as "python3" or "python2"]),
+  [PYTHON="$withval"], [])
+if test x"$PYTHON" = xyes; then
+    AC_MSG_ERROR([--with-python option requires a path or program argument])
+fi
+if test -n "$PYTHON" && ! which "$PYTHON"; then
+    AC_MSG_ERROR([Python interpreter $PYTHON does not exist])
+fi
+
 AM_PATH_PYTHON([2.7])
 case "$host" in
 *-*-mingw*)
@@ -366,5 +379,6 @@ build/win32/Makefile
 build/win32/vs9/Makefile
 build/win32/vs10/Makefile
 build/win32/vs11/Makefile
-build/win32/vs12/Makefile])
+build/win32/vs12/Makefile
+build/win32/vs14/Makefile])
 AC_OUTPUT
index afb1417..009f40d 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -88,6 +78,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = docs
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
@@ -96,7 +87,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -156,7 +146,6 @@ am__define_uniq_tagged_files = \
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = reference
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 am__relativize = \
   dir0=`pwd`; \
@@ -244,7 +233,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -376,6 +364,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign docs/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -670,8 +659,6 @@ uninstall-am:
        mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
        ps ps-am tags tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 43c0119..5c312b3 100644 (file)
@@ -10,25 +10,25 @@ The output will be written to standard output unless the --output
 is specified.
 .SH OPTIONS
 .TP
-.B \---help
+.B \--help
 Show help options
 .TP
-.B \, ---output=FILENAME
+.B \--output=FILENAME
 Save the resulting output in FILENAME.
 .TP
-.B \---verbose                       
+.B \--verbose
 Show verbose messages
 .TP
-.B \---debug                       
+.B \--debug
 Show debug messages
 .TP
-.B \---includedir=DIRECTORY
+.B \--includedir=DIRECTORY
 Adds a directory which will be used to find includes inside the GIR format.
 .TP
-.B \---module=MODULE
+.B \--module=MODULE
 FIXME
 .TP
-.B \---shared-library=FILENAME
+.B \--shared-library=FILENAME
 Specifies the shared library where the symbols in the typelib can be found.
 The name of the library should not contain the leading lib prefix nor
 the ending shared library suffix.
index 72af1d7..522e9eb 100644 (file)
@@ -73,7 +73,7 @@ if your build system does not require libtool.
 .B \--libtool
 Full path to libtool executable.  Typically used for Automake systems.
 .TP
-.B --nsversion=VERSION
+.B \--nsversion=VERSION
 The namespace version. For instance 1.0. This is usually the platform version,
 eg 2.0 for Gtk+, not 2.12.7.
 .TP
index 9f748fd..8eb5022 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # Everything below here is generic #
 ####################################
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -93,6 +83,8 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/gtk-doc.make $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(srcdir)/version.xml.in
 subdir = docs/reference
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
@@ -102,7 +94,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = version.xml
@@ -127,8 +118,6 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/version.xml.in \
-       $(top_srcdir)/gtk-doc.make
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -191,7 +180,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -422,7 +410,6 @@ GPATH = $(srcdir)
 TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)
 SETUP_FILES = \
        $(content_files)                \
-       $(expand_content_files)         \
        $(DOC_MAIN_SGML_FILE)           \
        $(DOC_MODULE)-sections.txt      \
        $(DOC_MODULE)-overrides.txt
@@ -449,11 +436,11 @@ REPORT_FILES = \
        $(DOC_MODULE)-undeclared.txt \
        $(DOC_MODULE)-unused.txt
 
-CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test
-@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = 
-@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp
-@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = 
-@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp
+CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
+@ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = 
+@ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp
+@ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = 
+@ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp
 
 #### setup ####
 GTK_DOC_V_SETUP = $(GTK_DOC_V_SETUP_$(V))
@@ -509,6 +496,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/reference/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign docs/reference/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -517,7 +505,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/gtk-doc.make $(am__empty):
+$(top_srcdir)/gtk-doc.make:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -577,7 +565,6 @@ distdir: $(DISTFILES)
          dist-hook
 check-am: all-am
 check: check-am
-@ENABLE_GTK_DOC_FALSE@all-local:
 all-am: Makefile all-local
 installdirs:
 install: install-am
@@ -694,18 +681,9 @@ uninstall-am: uninstall-local
        mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-local
 
-.PRECIOUS: Makefile
-
 
-gtkdoc-check.test: Makefile
-       $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \
-               echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \
-               chmod +x $@
-
-all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
-.PHONY: all-gtk-doc
-
-@ENABLE_GTK_DOC_TRUE@all-local: all-gtk-doc
+@ENABLE_GTK_DOC_TRUE@all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
+@ENABLE_GTK_DOC_FALSE@all-local:
 
 docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
 
@@ -713,19 +691,17 @@ $(REPORT_FILES): sgml-build.stamp
 
 setup-build.stamp:
        -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
-           files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \
+           files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
            if test "x$$files" != "x" ; then \
                for file in $$files ; do \
-                   destdir=`dirname $(abs_builddir)/$$file`; \
-                   test -d "$$destdir" || mkdir -p "$$destdir"; \
                    test -f $(abs_srcdir)/$$file && \
-                       cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
+                       cp -pu $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
                done; \
            fi; \
        fi
        $(AM_V_at)touch setup-build.stamp
 
-scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
+scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
        $(GTK_DOC_V_SCAN)_source_dir='' ; \
        for i in $(DOC_SOURCE_DIR) ; do \
            _source_dir="$${_source_dir} --source-dir=$$i" ; \
@@ -734,7 +710,7 @@ scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
        $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
            scanobj_options=""; \
            gtkdoc-scangobj 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
-           if test "$$?" = "0"; then \
+           if test "$(?)" = "0"; then \
                if test "x$(V)" = "x1"; then \
                    scanobj_options="--verbose"; \
                fi; \
@@ -751,7 +727,7 @@ scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
 $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
        @true
 
-sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files) xml/gtkdocentities.ent
+sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files)
        $(GTK_DOC_V_XML)_source_dir='' ; \
        for i in $(DOC_SOURCE_DIR) ; do \
            _source_dir="$${_source_dir} --source-dir=$$i" ; \
@@ -762,28 +738,17 @@ sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HF
 sgml.stamp: sgml-build.stamp
        @true
 
-xml/gtkdocentities.ent: Makefile
-       $(GTK_DOC_V_XML)$(MKDIR_P) $(@D) && ( \
-               echo "<!ENTITY package \"$(PACKAGE)\">"; \
-               echo "<!ENTITY package_bugreport \"$(PACKAGE_BUGREPORT)\">"; \
-               echo "<!ENTITY package_name \"$(PACKAGE_NAME)\">"; \
-               echo "<!ENTITY package_string \"$(PACKAGE_STRING)\">"; \
-               echo "<!ENTITY package_tarname \"$(PACKAGE_TARNAME)\">"; \
-               echo "<!ENTITY package_url \"$(PACKAGE_URL)\">"; \
-               echo "<!ENTITY package_version \"$(PACKAGE_VERSION)\">"; \
-       ) > $@
-
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files)
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
        $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \
        mkhtml_options=""; \
        gtkdoc-mkhtml 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
-       if test "$$?" = "0"; then \
+       if test "$(?)" = "0"; then \
          if test "x$(V)" = "x1"; then \
            mkhtml_options="$$mkhtml_options --verbose"; \
          fi; \
        fi; \
        gtkdoc-mkhtml 2>&1 --help | grep  >/dev/null "\-\-path"; \
-       if test "$$?" = "0"; then \
+       if test "$(?)" = "0"; then \
          mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
        fi; \
        cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
@@ -799,11 +764,11 @@ html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_con
        $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
        $(AM_V_at)touch html-build.stamp
 
-pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files)
+pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
        $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \
        mkpdf_options=""; \
        gtkdoc-mkpdf 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
-       if test "$$?" = "0"; then \
+       if test "$(?)" = "0"; then \
          if test "x$(V)" = "x1"; then \
            mkpdf_options="$$mkpdf_options --verbose"; \
          fi; \
@@ -825,18 +790,12 @@ pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_cont
 clean-local:
        @rm -f *~ *.bak
        @rm -rf .libs
-       @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \
-         rm -f $(DOC_MODULE).types; \
-       fi
-       @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-sections" ; then \
-         rm -f $(DOC_MODULE)-sections.txt; \
-       fi
 
 distclean-local:
        @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
            $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
        @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
-           rm -f $(SETUP_FILES) $(DOC_MODULE).types; \
+           rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
        fi
 
 maintainer-clean-local:
@@ -875,14 +834,12 @@ uninstall-local:
 #
 # Require gtk-doc when making dist
 #
-@HAVE_GTK_DOC_TRUE@dist-check-gtkdoc: docs
-@HAVE_GTK_DOC_FALSE@dist-check-gtkdoc:
-@HAVE_GTK_DOC_FALSE@   @echo "*** gtk-doc is needed to run 'make dist'.         ***"
-@HAVE_GTK_DOC_FALSE@   @echo "*** gtk-doc was not found when 'configure' ran.   ***"
-@HAVE_GTK_DOC_FALSE@   @echo "*** please install gtk-doc and rerun 'configure'. ***"
-@HAVE_GTK_DOC_FALSE@   @false
-
-dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local
+@ENABLE_GTK_DOC_TRUE@dist-check-gtkdoc: docs
+@ENABLE_GTK_DOC_FALSE@dist-check-gtkdoc:
+@ENABLE_GTK_DOC_FALSE@ @echo "*** gtk-doc must be installed and enabled in order to make dist"
+@ENABLE_GTK_DOC_FALSE@ @false
+
+dist-hook: dist-check-gtkdoc dist-hook-local
        @mkdir $(distdir)/html
        @cp ./html/* $(distdir)/html
        @-cp ./$(DOC_MODULE).pdf $(distdir)/
index f629c89..4ea1ed0 100644 (file)
@@ -2,27 +2,32 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIRepository: GObject Introspection Reference Manual</title>
+<title>GIRepository</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="ch01.html" title="GIRepository">
 <link rel="next" href="gi-struct-hierarchy.html" title="Struct hierarchy">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#GIRepository.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
-                  <a href="#GIRepository.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="ch01.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-struct-hierarchy.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="ch01.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-struct-hierarchy.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#GIRepository.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#GIRepository.description" class="shortcut">Description</a>
+                  Â | 
+                  <a href="#GIRepository.object-hierarchy" class="shortcut">Object Hierarchy</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="GIRepository"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="GIRepository.top_of_page"></a>GIRepository</span></h2>
 <p>GIRepository â€” GObject Introspection repository manager</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="GIRepository.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="GIRepository.html" title="GIRepository"><span class="returnvalue">GIRepository</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-default" title="g_irepository_get_default ()">g_irepository_get_default</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gchar</span> **
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()">g_irepository_get_dependencies</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gchar</span> **
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-immediate-dependencies" title="g_irepository_get_immediate_dependencies ()">g_irepository_get_immediate_dependencies</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gchar</span> **
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-loaded-namespaces" title="g_irepository_get_loaded_namespaces ()">g_irepository_get_loaded_namespaces</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()">g_irepository_get_n_infos</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()">g_irepository_get_info</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GOptionGroup</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-option-group" title="g_irepository_get_option_group ()">g_irepository_get_option_group</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GList</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-enumerate-versions" title="g_irepository_enumerate_versions ()">g_irepository_enumerate_versions</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-prepend-search-path" title="g_irepository_prepend_search_path ()">g_irepository_prepend_search_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GSList</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()">g_irepository_get_search_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-load-typelib" title="g_irepository_load_typelib ()">g_irepository_load_typelib</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-typelib-path" title="g_irepository_get_typelib_path ()">g_irepository_get_typelib_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-is-registered" title="g_irepository_is_registered ()">g_irepository_is_registered</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()">g_irepository_require</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-require-private" title="g_irepository_require_private ()">g_irepository_require_private</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-c-prefix" title="g_irepository_get_c_prefix ()">g_irepository_get_c_prefix</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-shared-library" title="g_irepository_get_shared_library ()">g_irepository_get_shared_library</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-get-version" title="g_irepository_get_version ()">g_irepository_get_version</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()">g_irepository_find_by_gtype</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="returnvalue">GIEnumInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()">g_irepository_find_by_name</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#g-irepository-dump" title="g_irepository_dump ()">g_irepository_dump</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="GIRepository.html#gi-cclosure-marshal-generic" title="gi_cclosure_marshal_generic ()">gi_cclosure_marshal_generic</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="GIRepository.html#G-IREPOSITORY-ERROR:CAPS" title="G_IREPOSITORY_ERROR">G_IREPOSITORY_ERROR</a></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GIRepository.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="GIRepository.html#GIRepository-struct" title="struct GIRepository">GIRepository</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags">GIRepositoryLoadFlags</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="GIRepository.html#GIRepositoryError" title="enum GIRepositoryError">GIRepositoryError</a></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="GIRepository.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen">    GObject
-    <span class="lineart">╰──</span> GIRepository
+<div class="refsynopsisdiv">
+<a name="GIRepository.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+#include &lt;girepository.h&gt;
+
+struct              <a class="link" href="GIRepository.html#GIRepository-struct" title="struct GIRepository">GIRepository</a>;
+enum                <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags">GIRepositoryLoadFlags</a>;
+<a class="link" href="GIRepository.html" title="GIRepository"><span class="returnvalue">GIRepository</span></a> *      <a class="link" href="GIRepository.html#g-irepository-get-default" title="g_irepository_get_default ()">g_irepository_get_default</a>           (<em class="parameter"><code><span class="type">void</span></code></em>);
+<span class="returnvalue">gchar</span> **            <a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()">g_irepository_get_dependencies</a>      (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+<span class="returnvalue">gchar</span> **            <a class="link" href="GIRepository.html#g-irepository-get-immediate-dependencies" title="g_irepository_get_immediate_dependencies ()">g_irepository_get_immediate_dependencies</a>
+                                                        (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+<span class="returnvalue">gchar</span> **            <a class="link" href="GIRepository.html#g-irepository-get-loaded-namespaces" title="g_irepository_get_loaded_namespaces ()">g_irepository_get_loaded_namespaces</a> (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()">g_irepository_get_n_infos</a>           (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()">g_irepository_get_info</a>              (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> index</code></em>);
+<span class="returnvalue">GOptionGroup</span> *      <a class="link" href="GIRepository.html#g-irepository-get-option-group" title="g_irepository_get_option_group ()">g_irepository_get_option_group</a>      (<em class="parameter"><code><span class="type">void</span></code></em>);
+<span class="returnvalue">GList</span> *             <a class="link" href="GIRepository.html#g-irepository-enumerate-versions" title="g_irepository_enumerate_versions ()">g_irepository_enumerate_versions</a>    (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+
+<span class="returnvalue">void</span>                <a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a>  (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="GIRepository.html#g-irepository-prepend-search-path" title="g_irepository_prepend_search_path ()">g_irepository_prepend_search_path</a>   (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);
+<span class="returnvalue">GSList</span> *            <a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()">g_irepository_get_search_path</a>       (<em class="parameter"><code><span class="type">void</span></code></em>);
+
+const <span class="returnvalue">char</span> *        <a class="link" href="GIRepository.html#g-irepository-load-typelib" title="g_irepository_load_typelib ()">g_irepository_load_typelib</a>          (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="GIRepository.html#g-irepository-get-typelib-path" title="g_irepository_get_typelib_path ()">g_irepository_get_typelib_path</a>      (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="GIRepository.html#g-irepository-is-registered" title="g_irepository_is_registered ()">g_irepository_is_registered</a>         (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>);
+<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()">g_irepository_require</a>               (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         <a class="link" href="GIRepository.html#g-irepository-require-private" title="g_irepository_require_private ()">g_irepository_require_private</a>       (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *typelib_dir</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="GIRepository.html#g-irepository-get-c-prefix" title="g_irepository_get_c_prefix ()">g_irepository_get_c_prefix</a>          (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="GIRepository.html#g-irepository-get-shared-library" title="g_irepository_get_shared_library ()">g_irepository_get_shared_library</a>    (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="GIRepository.html#g-irepository-get-version" title="g_irepository_get_version ()">g_irepository_get_version</a>           (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);
+
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()">g_irepository_find_by_gtype</a>         (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code><span class="type">GType</span> gtype</code></em>);
+<a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="returnvalue">GIEnumInfo</span></a> *        <a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a>  (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code><span class="type">GQuark</span> domain</code></em>);
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()">g_irepository_find_by_name</a>          (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+
+<span class="returnvalue">gboolean</span>            <a class="link" href="GIRepository.html#g-irepository-dump" title="g_irepository_dump ()">g_irepository_dump</a>                  (<em class="parameter"><code>const <span class="type">char</span> *arg</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+
+<span class="returnvalue">void</span>                <a class="link" href="GIRepository.html#gi-cclosure-marshal-generic" title="gi_cclosure_marshal_generic ()">gi_cclosure_marshal_generic</a>         (<em class="parameter"><code><span class="type">GClosure</span> *closure</code></em>,
+                                                         <em class="parameter"><code><span class="type">GValue</span> *return_gvalue</code></em>,
+                                                         <em class="parameter"><code><span class="type">guint</span> n_param_values</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">GValue</span> *param_values</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> invocation_hint</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> marshal_data</code></em>);
+
+#define             <a class="link" href="GIRepository.html#G-IREPOSITORY-ERROR:CAPS" title="G_IREPOSITORY_ERROR">G_IREPOSITORY_ERROR</a>
+enum                <a class="link" href="GIRepository.html#GIRepositoryError" title="enum GIRepositoryError">GIRepositoryError</a>;
 </pre>
 </div>
 <div class="refsect1">
-<a name="GIRepository.includes"></a><h2>Includes</h2>
-<pre class="synopsis">#include &lt;girepository.h&gt;
+<a name="GIRepository.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="synopsis">
+  GObject
+   +----GIRepository
 </pre>
 </div>
 <div class="refsect1">
 <a name="GIRepository.description"></a><h2>Description</h2>
-<p><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> is used to manage repositories of namespaces. Namespaces
-are represented on disk by type libraries (.typelib files).</p>
+<p>
+<a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> is used to manage repositories of namespaces. Namespaces
+are represented on disk by type libraries (.typelib files).
+</p>
 </div>
 <div class="refsect1">
-<a name="GIRepository.functions_details"></a><h2>Functions</h2>
+<a name="GIRepository.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GIRepository-struct"></a><h3>struct GIRepository</h3>
+<pre class="programlisting">struct GIRepository;</pre>
+<p>
+The GIRepository structure contains private data and should only be
+accessed using the provided API.
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIRepositoryLoadFlags"></a><h3>enum GIRepositoryLoadFlags</h3>
+<pre class="programlisting">typedef enum {
+  G_IREPOSITORY_LOAD_FLAG_LAZY = 1 &lt;&lt; 0
+} GIRepositoryLoadFlags;
+</pre>
+<p>
+Flags that control how a typelib is loaded.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><a name="G-IREPOSITORY-LOAD-FLAG-LAZY:CAPS"></a><span class="term"><code class="literal">G_IREPOSITORY_LOAD_FLAG_LAZY</code></span></p></td>
+<td>Lazily load the typelib.
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
 <div class="refsect2">
-<a name="g-irepository-get-default"></a><h3>g_irepository_get_default ()</h3>
-<pre class="programlisting"><a class="link" href="GIRepository.html" title="GIRepository"><span class="returnvalue">GIRepository</span></a> *
-g_irepository_get_default (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Returns the singleton process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. It is
+<a name="g-irepository-get-default"></a><h3>g_irepository_get_default ()</h3>
+<pre class="programlisting"><a class="link" href="GIRepository.html" title="GIRepository"><span class="returnvalue">GIRepository</span></a> *      g_irepository_get_default           (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+Returns the singleton process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. It is
 not currently supported to have multiple repositories in a
 particular process, but this function is provided in the unlikely
 eventuality that it would become possible, and as a convenience for
 higher level language bindings to conform to the GObject method
-call conventions.</p>
-<p>All methods on <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> also accept <code class="literal">NULL</code> as an instance
+call conventions.
+</p>
+<p>
+All methods on <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> also accept <code class="literal">NULL</code> as an instance
 parameter to mean this default repository, which is usually more
-convenient for C.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.2.6"></a><h4>Returns</h4>
-<p> The global singleton <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
+convenient for C.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>The global singleton <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
+</tr></tbody>
+</table></div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-dependencies"></a><h3>g_irepository_get_dependencies ()</h3>
-<pre class="programlisting"><span class="returnvalue">gchar</span> **
-g_irepository_get_dependencies (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                                <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>Return an array of all (transitive) versioned dependencies for
-<em class="parameter"><code>namespace_</code></em>
-. Returned strings are of the form</p>
+<a name="g-irepository-get-dependencies"></a><h3>g_irepository_get_dependencies ()</h3>
+<pre class="programlisting"><span class="returnvalue">gchar</span> **            g_irepository_get_dependencies      (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+Return an array of all (transitive) versioned dependencies for
+<em class="parameter"><code>namespace_</code></em>. Returned strings are of the form
 <code class="code">namespace-version</code>.
-<p>Note: <em class="parameter"><code>namespace_</code></em>
- must have already been loaded using a function
-such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
-<p>To get only the immediate dependencies for <em class="parameter"><code>namespace_</code></em>
-, use
-<a class="link" href="GIRepository.html#g-irepository-get-immediate-dependencies" title="g_irepository_get_immediate_dependencies ()"><code class="function">g_irepository_get_immediate_dependencies()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.3.8"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+</p>
+<p>
+Note: <em class="parameter"><code>namespace_</code></em> must have already been loaded using a function
+such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.
+</p>
+<p>
+To get only the immediate dependencies for <em class="parameter"><code>namespace_</code></em>, use
+<a class="link" href="GIRepository.html#g-irepository-get-immediate-dependencies" title="g_irepository_get_immediate_dependencies ()"><code class="function">g_irepository_get_immediate_dependencies()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace of interest</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace of interest</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Zero-terminated string array of all versioned
+dependencies. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.3.9"></a><h4>Returns</h4>
-<p> Zero-terminated string array of all versioned
-dependencies. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-immediate-dependencies"></a><h3>g_irepository_get_immediate_dependencies ()</h3>
-<pre class="programlisting"><span class="returnvalue">gchar</span> **
-g_irepository_get_immediate_dependencies
-                               (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                                <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>Return an array of the immediate versioned dependencies for <em class="parameter"><code>namespace_</code></em>
-.
-Returned strings are of the form <code class="code">namespace-version</code>.</p>
-<p>Note: <em class="parameter"><code>namespace_</code></em>
- must have already been loaded using a function
-such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
-<p>To get the transitive closure of dependencies for <em class="parameter"><code>namespace_</code></em>
-, use
-<a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()"><code class="function">g_irepository_get_dependencies()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.4.7"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-get-immediate-dependencies"></a><h3>g_irepository_get_immediate_dependencies ()</h3>
+<pre class="programlisting"><span class="returnvalue">gchar</span> **            g_irepository_get_immediate_dependencies
+                                                        (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+Return an array of the immediate versioned dependencies for <em class="parameter"><code>namespace_</code></em>.
+Returned strings are of the form <code class="code">namespace-version</code>.
+</p>
+<p>
+Note: <em class="parameter"><code>namespace_</code></em> must have already been loaded using a function
+such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.
+</p>
+<p>
+To get the transitive closure of dependencies for <em class="parameter"><code>namespace_</code></em>, use
+<a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()"><code class="function">g_irepository_get_dependencies()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[nullable]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace of interest</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace of interest</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Zero-terminated string array of immediate versioned
+dependencies. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.4.8"></a><h4>Returns</h4>
-<p> Zero-terminated string array of immediate versioned
-dependencies. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since: 1.44</p>
+<p class="since">Since 1.44</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-loaded-namespaces"></a><h3>g_irepository_get_loaded_namespaces ()</h3>
-<pre class="programlisting"><span class="returnvalue">gchar</span> **
-g_irepository_get_loaded_namespaces (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>);</pre>
-<p>Return the list of currently loaded namespaces.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-get-loaded-namespaces"></a><h3>g_irepository_get_loaded_namespaces ()</h3>
+<pre class="programlisting"><span class="returnvalue">gchar</span> **            g_irepository_get_loaded_namespaces (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>);</pre>
+<p>
+Return the list of currently loaded namespaces.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>List of namespaces. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.5.6"></a><h4>Returns</h4>
-<p> List of namespaces. </p>
-<p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-n-infos"></a><h3>g_irepository_get_n_infos ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_irepository_get_n_infos (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                           <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>This function returns the number of metadata entries in
-given namespace <em class="parameter"><code>namespace_</code></em>
-.  The namespace must have
-already been loaded before calling this function.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-get-n-infos"></a><h3>g_irepository_get_n_infos ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_irepository_get_n_infos           (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+This function returns the number of metadata entries in
+given namespace <em class="parameter"><code>namespace_</code></em>.  The namespace must have
+already been loaded before calling this function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace to inspect</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace to inspect</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of metadata entries</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.6.6"></a><h4>Returns</h4>
-<p> number of metadata entries</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-info"></a><h3>g_irepository_get_info ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_irepository_get_info (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                        <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
-                        <em class="parameter"><code><span class="type">gint</span> index</code></em>);</pre>
-<p>This function returns a particular metadata entry in the
-given namespace <em class="parameter"><code>namespace_</code></em>
-.  The namespace must have
+<a name="g-irepository-get-info"></a><h3>g_irepository_get_info ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_irepository_get_info              (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> index</code></em>);</pre>
+<p>
+This function returns a particular metadata entry in the
+given namespace <em class="parameter"><code>namespace_</code></em>.  The namespace must have
 already been loaded before calling this function.
-See <a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()"><code class="function">g_irepository_get_n_infos()</code></a> to find the maximum number of
-entries.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+See <a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()"><code class="function">g_irepository_get_n_infos()</code></a> to find the maximum number of
+entries.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace to inspect</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace to inspect</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>index</p></td>
-<td class="parameter_description"><p>0-based offset into namespace metadata for entry</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>0-based offset into namespace metadata for entry</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<span class="type">GIBaseInfo</span> containing metadata. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.7.6"></a><h4>Returns</h4>
-<p> <span class="type">GIBaseInfo</span> containing metadata. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-option-group"></a><h3>g_irepository_get_option_group ()</h3>
-<pre class="programlisting"><span class="returnvalue">GOptionGroup</span> *
-g_irepository_get_option_group (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Obtain the option group for girepository, it's used
+<a name="g-irepository-get-option-group"></a><h3>g_irepository_get_option_group ()</h3>
+<pre class="programlisting"><span class="returnvalue">GOptionGroup</span> *      g_irepository_get_option_group      (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+Obtain the option group for girepository, it's used
 by the dumper and for programs that wants to provide
-introspection information</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.8.6"></a><h4>Returns</h4>
-<p> the option group. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
+introspection information
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the option group. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr></tbody>
+</table></div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-enumerate-versions"></a><h3>g_irepository_enumerate_versions ()</h3>
-<pre class="programlisting"><span class="returnvalue">GList</span> *
-g_irepository_enumerate_versions (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                                  <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>Obtain an unordered list of versions (either currently loaded or
-available) for <em class="parameter"><code>namespace_</code></em>
- in this <em class="parameter"><code>repository</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-enumerate-versions"></a><h3>g_irepository_enumerate_versions ()</h3>
+<pre class="programlisting"><span class="returnvalue">GList</span> *             g_irepository_enumerate_versions    (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+Obtain an unordered list of versions (either currently loaded or
+available) for <em class="parameter"><code>namespace_</code></em> in this <em class="parameter"><code>repository</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>GI namespace, e.g. "Gtk"</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>GI namespace, e.g. "Gtk"</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the array of versions. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.9.6"></a><h4>Returns</h4>
-<p> the array of versions. </p>
-<p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-prepend-library-path"></a><h3>g_irepository_prepend_library_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_irepository_prepend_library_path (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);</pre>
-<p>Prepends <em class="parameter"><code>directory</code></em>
- to the search path that is used to
+<a name="g-irepository-prepend-library-path"></a><h3>g_irepository_prepend_library_path ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_irepository_prepend_library_path  (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);</pre>
+<p>
+Prepends <em class="parameter"><code>directory</code></em> to the search path that is used to
 search shared libraries referenced by imported namespaces.
 Multiple calls to this function all contribute to the final
 list of paths.
 The list of paths is unique and shared for all <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>
 instances across the process, but it doesn't affect namespaces
-imported before the call.</p>
-<p>If the library is not found in the directories configured
+imported before the call.
+</p>
+<p>
+If the library is not found in the directories configured
 in this way, loading will fall back to the system library
 path (ie. LD_LIBRARY_PATH and DT_RPATH in ELF systems).
-See the documentation of your dynamic linker for full details.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.10.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+See the documentation of your dynamic linker for full details.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>directory</p></td>
-<td class="parameter_description"><p> a single directory to scan for shared libraries. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> filename]</span></td>
+<td><p><span class="term"><em class="parameter"><code>directory</code></em> :</span></p></td>
+<td>a single directory to scan for shared libraries. <span class="annotation">[<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> filename]</span>
+</td>
 </tr></tbody>
 </table></div>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-35-8.html#api-index-1.35.8">1.35.8</a></p>
+<p class="since">Since 1.35.8</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-prepend-search-path"></a><h3>g_irepository_prepend_search_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_irepository_prepend_search_path (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);</pre>
-<p>Prepends <em class="parameter"><code>directory</code></em>
- to the typelib search path.
-See <a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()"><code class="function">g_irepository_get_search_path()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-prepend-search-path"></a><h3>g_irepository_prepend_search_path ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_irepository_prepend_search_path   (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);</pre>
+<p>
+Prepends <em class="parameter"><code>directory</code></em> to the typelib search path.
+See <a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()"><code class="function">g_irepository_get_search_path()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>directory</p></td>
-<td class="parameter_description"><p> directory name to prepend to the typelib
-search path. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> filename]</span></td>
+<td><p><span class="term"><em class="parameter"><code>directory</code></em> :</span></p></td>
+<td>directory name to prepend to the typelib
+search path. <span class="annotation">[<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> filename]</span>
+</td>
 </tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-search-path"></a><h3>g_irepository_get_search_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">GSList</span> *
-g_irepository_get_search_path (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>Returns the current search path <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> will use when loading
+<a name="g-irepository-get-search-path"></a><h3>g_irepository_get_search_path ()</h3>
+<pre class="programlisting"><span class="returnvalue">GSList</span> *            g_irepository_get_search_path       (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+Returns the current search path <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> will use when loading
 typelib files. The list is internal to <span class="type">GIRespository</span> and should not
-be freed, nor should its string elements.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.12.5"></a><h4>Returns</h4>
-<p> <span class="type">GSList</span> of strings. </p>
-<p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> filename][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
+be freed, nor should its string elements.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<span class="type">GSList</span> of strings. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> filename][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
+</tr></tbody>
+</table></div>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-load-typelib"></a><h3>g_irepository_load_typelib ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-g_irepository_load_typelib (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                            <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                            <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
-                            <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.13.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-load-typelib"></a><h3>g_irepository_load_typelib ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        g_irepository_load_typelib          (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>flags</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-typelib-path"></a><h3>g_irepository_get_typelib_path ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_irepository_get_typelib_path (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                                <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>If namespace <em class="parameter"><code>namespace_</code></em>
- is loaded, return the full path to the
+<a name="g-irepository-get-typelib-path"></a><h3>g_irepository_get_typelib_path ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_irepository_get_typelib_path      (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+If namespace <em class="parameter"><code>namespace_</code></em> is loaded, return the full path to the
 .typelib file it was loaded from.  If the typelib for
-namespace <em class="parameter"><code>namespace_</code></em>
- was included in a shared library, return
-the special string "&lt;builtin&gt;".</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.14.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+namespace <em class="parameter"><code>namespace_</code></em> was included in a shared library, return
+the special string "&lt;builtin&gt;".
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>GI namespace to use, e.g. "Gtk"</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>GI namespace to use, e.g. "Gtk"</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Filesystem path (or $lt;builtin$gt;) if successful, <code class="literal">NULL</code> if namespace is not loaded</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.14.6"></a><h4>Returns</h4>
-<p> Filesystem path (or $lt;builtin$gt;) if successful, <code class="literal">NULL</code> if namespace is not loaded</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-is-registered"></a><h3>g_irepository_is_registered ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_irepository_is_registered (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                             <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
-                             <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>);</pre>
-<p>Check whether a particular namespace (and optionally, a specific
+<a name="g-irepository-is-registered"></a><h3>g_irepository_is_registered ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_irepository_is_registered         (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>);</pre>
+<p>
+Check whether a particular namespace (and optionally, a specific
 version thereof) is currently loaded.  This function is likely to
 only be useful in unusual circumstances; in order to act upon
-metadata in the namespace, you should call <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a>
+metadata in the namespace, you should call <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a>
 instead which will ensure the namespace is loaded, and return as
-quickly as this function will if it has already been loaded.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.15.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+quickly as this function will if it has already been loaded.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace of interest</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace of interest</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>version</p></td>
-<td class="parameter_description"><p> Required version, may be <code class="literal">NULL</code> for latest. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
+<td>Required version, may be <code class="literal">NULL</code> for latest. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if namespace-version is loaded, <code class="literal">FALSE</code> otherwise</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.15.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if namespace-version is loaded, <code class="literal">FALSE</code> otherwise</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-require"></a><h3>g_irepository_require ()</h3>
-<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-g_irepository_require (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                       <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
-                       <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
-                       <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
-                       <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Force the namespace <em class="parameter"><code>namespace_</code></em>
- to be loaded if it isn't already.
-If <em class="parameter"><code>namespace_</code></em>
- is not loaded, this function will search for a
+<a name="g-irepository-require"></a><h3>g_irepository_require ()</h3>
+<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         g_irepository_require               (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Force the namespace <em class="parameter"><code>namespace_</code></em> to be loaded if it isn't already.
+If <em class="parameter"><code>namespace_</code></em> is not loaded, this function will search for a
 ".typelib" file using the repository search path.  In addition, a
-version <em class="parameter"><code>version</code></em>
- of namespace may be specified.  If <em class="parameter"><code>version</code></em>
- is
-not specified, the latest will be used.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.16.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+version <em class="parameter"><code>version</code></em> of namespace may be specified.  If <em class="parameter"><code>version</code></em> is
+not specified, the latest will be used.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>GI namespace to use, e.g. "Gtk"</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>GI namespace to use, e.g. "Gtk"</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>version</p></td>
-<td class="parameter_description"><p> Version of namespace, may be <code class="literal">NULL</code> for latest. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
+<td>Version of namespace, may be <code class="literal">NULL</code> for latest. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>flags</p></td>
-<td class="parameter_description"><p>Set of <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><code class="literal">GIRepositoryLoadFlags</code></a>, may be 0</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
+<td>Set of <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><code class="literal">GIRepositoryLoadFlags</code></a>, may be 0</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <span class="type">GError</span>.</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>a <span class="type">GError</span>.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a pointer to the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> if successful, <code class="literal">NULL</code> otherwise. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.16.6"></a><h4>Returns</h4>
-<p> a pointer to the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> if successful, <code class="literal">NULL</code> otherwise. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-require-private"></a><h3>g_irepository_require_private ()</h3>
-<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-g_irepository_require_private (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                               <em class="parameter"><code>const <span class="type">gchar</span> *typelib_dir</code></em>,
-                               <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
-                               <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
-                               <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
-                               <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Force the namespace <em class="parameter"><code>namespace_</code></em>
- to be loaded if it isn't already.
-If <em class="parameter"><code>namespace_</code></em>
- is not loaded, this function will search for a
+<a name="g-irepository-require-private"></a><h3>g_irepository_require_private ()</h3>
+<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         g_irepository_require_private       (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *typelib_dir</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Force the namespace <em class="parameter"><code>namespace_</code></em> to be loaded if it isn't already.
+If <em class="parameter"><code>namespace_</code></em> is not loaded, this function will search for a
 ".typelib" file within the private directory only. In addition, a
-version <em class="parameter"><code>version</code></em>
- of namespace should be specified.  If <em class="parameter"><code>version</code></em>
- is
-not specified, the latest will be used.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.17.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+version <em class="parameter"><code>version</code></em> of namespace should be specified.  If <em class="parameter"><code>version</code></em> is
+not specified, the latest will be used.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib_dir</code></em> :</span></p></td>
+<td>Private directory where to find the requested typelib</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>typelib_dir</p></td>
-<td class="parameter_description"><p>Private directory where to find the requested typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>GI namespace to use, e.g. "Gtk"</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>GI namespace to use, e.g. "Gtk"</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
+<td>Version of namespace, may be <code class="literal">NULL</code> for latest. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>version</p></td>
-<td class="parameter_description"><p> Version of namespace, may be <code class="literal">NULL</code> for latest. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
+<td>Set of <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><code class="literal">GIRepositoryLoadFlags</code></a>, may be 0</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>flags</p></td>
-<td class="parameter_description"><p>Set of <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><code class="literal">GIRepositoryLoadFlags</code></a>, may be 0</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>a <span class="type">GError</span>.</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <span class="type">GError</span>.</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a pointer to the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> if successful, <code class="literal">NULL</code> otherwise. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.17.6"></a><h4>Returns</h4>
-<p> a pointer to the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> if successful, <code class="literal">NULL</code> otherwise. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-c-prefix"></a><h3>g_irepository_get_c_prefix ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_irepository_get_c_prefix (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                            <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>This function returns the "C prefix", or the C level namespace
+<a name="g-irepository-get-c-prefix"></a><h3>g_irepository_get_c_prefix ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_irepository_get_c_prefix          (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+This function returns the "C prefix", or the C level namespace
 associated with the given introspection namespace.  Each C symbol
-starts with this prefix, as well each <span class="type">GType</span> in the library.</p>
-<p>Note: The namespace must have already been loaded using a function
-such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.18.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+starts with this prefix, as well each <span class="type">GType</span> in the library.
+</p>
+<p>
+Note: The namespace must have already been loaded using a function
+such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace to inspect</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace to inspect</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>C namespace prefix, or <code class="literal">NULL</code> if none associated</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.18.7"></a><h4>Returns</h4>
-<p> C namespace prefix, or <code class="literal">NULL</code> if none associated</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-shared-library"></a><h3>g_irepository_get_shared_library ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_irepository_get_shared_library (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                                  <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>This function returns a comma-separated list of paths to the
-shared C libraries associated with the given namespace <em class="parameter"><code>namespace_</code></em>
-.
+<a name="g-irepository-get-shared-library"></a><h3>g_irepository_get_shared_library ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_irepository_get_shared_library    (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+This function returns a comma-separated list of paths to the
+shared C libraries associated with the given namespace <em class="parameter"><code>namespace_</code></em>.
 There may be no shared library path associated, in which case this
-function will return <code class="literal">NULL</code>.</p>
-<p>Note: The namespace must have already been loaded using a function
-such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.19.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+function will return <code class="literal">NULL</code>.
+</p>
+<p>
+Note: The namespace must have already been loaded using a function
+such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace to inspect</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace to inspect</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Comma-separated list of paths to shared libraries,
+or <code class="literal">NULL</code> if none are associated</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.19.7"></a><h4>Returns</h4>
-<p> Comma-separated list of paths to shared libraries,
-or <code class="literal">NULL</code> if none are associated</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-get-version"></a><h3>g_irepository_get_version ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_irepository_get_version (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                           <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
-<p>This function returns the loaded version associated with the given
-namespace <em class="parameter"><code>namespace_</code></em>
-.</p>
-<p>Note: The namespace must have already been loaded using a function
-such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.20.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-irepository-get-version"></a><h3>g_irepository_get_version ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_irepository_get_version           (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
+<p>
+This function returns the loaded version associated with the given
+namespace <em class="parameter"><code>namespace_</code></em>.
+</p>
+<p>
+Note: The namespace must have already been loaded using a function
+such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace to inspect</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace to inspect</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Loaded version</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.20.7"></a><h4>Returns</h4>
-<p> Loaded version</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-find-by-gtype"></a><h3>g_irepository_find_by_gtype ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_irepository_find_by_gtype (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                             <em class="parameter"><code><span class="type">GType</span> gtype</code></em>);</pre>
-<p>Searches all loaded namespaces for a particular <span class="type">GType</span>.  Note that
+<a name="g-irepository-find-by-gtype"></a><h3>g_irepository_find_by_gtype ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_irepository_find_by_gtype         (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code><span class="type">GType</span> gtype</code></em>);</pre>
+<p>
+Searches all loaded namespaces for a particular <span class="type">GType</span>.  Note that
 in order to locate the metadata, the namespace corresponding to
 the type must first have been loaded.  There is currently no
 mechanism for determining the namespace which corresponds to an
 arbitrary GType - thus, this function will operate most reliably
-when you know the GType to originate from be from a loaded namespace.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.21.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+when you know the GType to originate from be from a loaded namespace.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>gtype</p></td>
-<td class="parameter_description"><p>GType to search for</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>gtype</code></em> :</span></p></td>
+<td>GType to search for</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<span class="type">GIBaseInfo</span> representing metadata about <em class="parameter"><code>type</code></em>, or <code class="literal">NULL</code>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.21.6"></a><h4>Returns</h4>
-<p> <span class="type">GIBaseInfo</span> representing metadata about <em class="parameter"><code>type</code></em>
-, or <code class="literal">NULL</code>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-find-by-error-domain"></a><h3>g_irepository_find_by_error_domain ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="returnvalue">GIEnumInfo</span></a> *
-g_irepository_find_by_error_domain (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                                    <em class="parameter"><code><span class="type">GQuark</span> domain</code></em>);</pre>
-<p>Searches for the enum type corresponding to the given <span class="type">GError</span>
+<a name="g-irepository-find-by-error-domain"></a><h3>g_irepository_find_by_error_domain ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="returnvalue">GIEnumInfo</span></a> *        g_irepository_find_by_error_domain  (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code><span class="type">GQuark</span> domain</code></em>);</pre>
+<p>
+Searches for the enum type corresponding to the given <span class="type">GError</span>
 domain. Before calling this function for a particular namespace,
-you must call <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> once to load the namespace, or
-otherwise ensure the namespace has already been loaded.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.22.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+you must call <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> once to load the namespace, or
+otherwise ensure the namespace has already been loaded.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>domain</code></em> :</span></p></td>
+<td>a <span class="type">GError</span> domain</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>domain</p></td>
-<td class="parameter_description"><p>a <span class="type">GError</span> domain</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> representing metadata about <em class="parameter"><code>domain</code></em>'s
+enum type, or <code class="literal">NULL</code>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.22.6"></a><h4>Returns</h4>
-<p> <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> representing metadata about <em class="parameter"><code>domain</code></em>
-'s
-enum type, or <code class="literal">NULL</code>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-29-17.html#api-index-1.29.17">1.29.17</a></p>
+<p class="since">Since 1.29.17</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-find-by-name"></a><h3>g_irepository_find_by_name ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_irepository_find_by_name (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
-                            <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
-                            <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Searches for a particular entry in a namespace.  Before calling
+<a name="g-irepository-find-by-name"></a><h3>g_irepository_find_by_name ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_irepository_find_by_name          (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Searches for a particular entry in a namespace.  Before calling
 this function for a particular namespace, you must call
-<a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> once to load the namespace, or otherwise
-ensure the namespace has already been loaded.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.23.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> once to load the namespace, or otherwise
+ensure the namespace has already been loaded.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>repository</p></td>
-<td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
-process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>repository</code></em> :</span></p></td>
+<td>A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
+process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>namespace_</p></td>
-<td class="parameter_description"><p>Namespace which will be searched</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>namespace_</code></em> :</span></p></td>
+<td>Namespace which will be searched</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>Entry name to find</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>Entry name to find</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<span class="type">GIBaseInfo</span> representing metadata about <em class="parameter"><code>name</code></em>, or <code class="literal">NULL</code>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.23.6"></a><h4>Returns</h4>
-<p> <span class="type">GIBaseInfo</span> representing metadata about <em class="parameter"><code>name</code></em>
-, or <code class="literal">NULL</code>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-irepository-dump"></a><h3>g_irepository_dump ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_irepository_dump (<em class="parameter"><code>const <span class="type">char</span> *arg</code></em>,
-                    <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Argument specified is a comma-separated pair of filenames; i.e. of
+<a name="g-irepository-dump"></a><h3>g_irepository_dump ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_irepository_dump                  (<em class="parameter"><code>const <span class="type">char</span> *arg</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Argument specified is a comma-separated pair of filenames; i.e. of
 the form "input.txt,output.xml".  The input file should be a
 UTF-8 Unix-line-ending text file, with each line containing either
 "get-type:" followed by the name of a GType _get_type function, or
 "error-quark:" followed by the name of an error quark function.  No
-extra whitespace is allowed.</p>
-<p>The output file should already exist, but be empty.  This function will
-overwrite its contents.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.24.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+extra whitespace is allowed.
+</p>
+<p>
+The output file should already exist, but be empty.  This function will
+overwrite its contents.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>arg</p></td>
-<td class="parameter_description"><p>Comma-separated pair of input and output filenames</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>arg</code></em> :</span></p></td>
+<td>Comma-separated pair of input and output filenames</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <code class="literal">GError</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>a <code class="literal">GError</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> on error</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.24.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> on error</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="gi-cclosure-marshal-generic"></a><h3>gi_cclosure_marshal_generic ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gi_cclosure_marshal_generic (<em class="parameter"><code><span class="type">GClosure</span> *closure</code></em>,
-                             <em class="parameter"><code><span class="type">GValue</span> *return_gvalue</code></em>,
-                             <em class="parameter"><code><span class="type">guint</span> n_param_values</code></em>,
-                             <em class="parameter"><code>const <span class="type">GValue</span> *param_values</code></em>,
-                             <em class="parameter"><code><span class="type">gpointer</span> invocation_hint</code></em>,
-                             <em class="parameter"><code><span class="type">gpointer</span> marshal_data</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.8.25.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-cclosure-marshal-generic"></a><h3>gi_cclosure_marshal_generic ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                gi_cclosure_marshal_generic         (<em class="parameter"><code><span class="type">GClosure</span> *closure</code></em>,
+                                                         <em class="parameter"><code><span class="type">GValue</span> *return_gvalue</code></em>,
+                                                         <em class="parameter"><code><span class="type">guint</span> n_param_values</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">GValue</span> *param_values</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> invocation_hint</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> marshal_data</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>closure</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>return_gvalue</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>return_gvalue</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n_param_values</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_param_values</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>param_values</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>param_values</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>invocation_hint</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>invocation_hint</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>marshal_data</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>marshal_data</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="G-IREPOSITORY-ERROR:CAPS"></a><h3>G_IREPOSITORY_ERROR</h3>
 <pre class="programlisting">#define G_IREPOSITORY_ERROR (g_irepository_error_quark ())
 </pre>
-<p>Error domain for <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. Errors in this domain will be from the
+<p>
+Error domain for <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. Errors in this domain will be from the
 <a class="link" href="GIRepository.html#GIRepositoryError" title="enum GIRepositoryError"><span class="type">GIRepositoryError</span></a> enumeration. See <span class="type">GError</span> for more information on
-error domains.</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="GIRepository.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIRepository-struct"></a><h3>struct GIRepository</h3>
-<pre class="programlisting">struct GIRepository;</pre>
-<p>The GIRepository structure contains private data and should only be
-accessed using the provided API.</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GIRepositoryLoadFlags"></a><h3>enum GIRepositoryLoadFlags</h3>
-<p>Flags that control how a typelib is loaded.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.9.3.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody><tr>
-<td class="enum_member_name"><p><a name="G-IREPOSITORY-LOAD-FLAG-LAZY:CAPS"></a>G_IREPOSITORY_LOAD_FLAG_LAZY</p></td>
-<td class="enum_member_description">
-<p>Lazily load the typelib.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
+error domains.
+</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GIRepositoryError"></a><h3>enum GIRepositoryError</h3>
-<p>An error code used with <a class="link" href="GIRepository.html#G-IREPOSITORY-ERROR:CAPS" title="G_IREPOSITORY_ERROR"><span class="type">G_IREPOSITORY_ERROR</span></a> in a <span class="type">GError</span> returned
-from a <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> routine.</p>
-<div class="refsect3">
-<a name="id-1.4.2.2.9.4.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">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;
+</pre>
+<p>
+An error code used with <a class="link" href="GIRepository.html#G-IREPOSITORY-ERROR:CAPS" title="G_IREPOSITORY_ERROR"><span class="type">G_IREPOSITORY_ERROR</span></a> in a <span class="type">GError</span> returned
+from a <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> routine.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-TYPELIB-NOT-FOUND:CAPS"></a>G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND</p></td>
-<td class="enum_member_description">
-<p>the typelib could not be found.</p>
+<td><p><a name="G-IREPOSITORY-ERROR-TYPELIB-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND</code></span></p></td>
+<td>the typelib could not be found.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-NAMESPACE-MISMATCH:CAPS"></a>G_IREPOSITORY_ERROR_NAMESPACE_MISMATCH</p></td>
-<td class="enum_member_description">
-<p>the namespace does not match the
-  requested namespace.</p>
+<td><p><a name="G-IREPOSITORY-ERROR-NAMESPACE-MISMATCH:CAPS"></a><span class="term"><code class="literal">G_IREPOSITORY_ERROR_NAMESPACE_MISMATCH</code></span></p></td>
+<td>the namespace does not match the
+  requested namespace.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-NAMESPACE-VERSION-CONFLICT:CAPS"></a>G_IREPOSITORY_ERROR_NAMESPACE_VERSION_CONFLICT</p></td>
-<td class="enum_member_description">
-<p>the version of the
-  typelib does not match the requested version.</p>
+<td><p><a name="G-IREPOSITORY-ERROR-NAMESPACE-VERSION-CONFLICT:CAPS"></a><span class="term"><code class="literal">G_IREPOSITORY_ERROR_NAMESPACE_VERSION_CONFLICT</code></span></p></td>
+<td>the version of the
+  typelib does not match the requested version.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-LIBRARY-NOT-FOUND:CAPS"></a>G_IREPOSITORY_ERROR_LIBRARY_NOT_FOUND</p></td>
-<td class="enum_member_description">
-<p>the library used by the typelib
-  could not be found.</p>
+<td><p><a name="G-IREPOSITORY-ERROR-LIBRARY-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">G_IREPOSITORY_ERROR_LIBRARY_NOT_FOUND</code></span></p></td>
+<td>the library used by the typelib
+  could not be found.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 </div>
 </div>
-</div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 35acbd0..9fc2565 100644 (file)
@@ -2,60 +2,47 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Annotation Glossary: GObject Introspection Reference Manual</title>
+<title>Annotation Glossary</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-1-35-8.html" title="Index of new symbols in 1.35.8">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_glossary"><a class="shortcut" href="#glsA">A</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#glsE">E</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#glsN">N</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#glsO">O</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#glsS">S</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#glsT">T</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-1-35-8.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><img src="right-insensitive.png" width="16" height="16" border="0"></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="api-index-1-35-8.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td> </td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a class="shortcut" href="#glsA">A</a>
+                     Â | 
+                   <a class="shortcut" href="#glsE">E</a>
+                     Â | 
+                   <a class="shortcut" href="#glsO">O</a>
+                     Â | 
+                   <a class="shortcut" href="#glsT">T</a>
+</td></tr>
+</table>
 <div class="glossary">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="annotation-glossary"></a>Annotation Glossary</h1></div></div></div>
 <a name="glsA"></a><h3 class="title">A</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
-<dd class="glossdef"><p>NULL is OK, both for passing and for returning.</p></dd>
+<dd class="glossdef"><p>NULL is ok, both for passing and for returning.</p></dd>
 <a name="glsE"></a><h3 class="title">E</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-element-type"></a>element-type</span></dt>
 <dd class="glossdef"><p>Generics and defining elements of containers and arrays.</p></dd>
-<a name="glsN"></a><h3 class="title">N</h3>
-<dt><span class="glossterm"><a name="annotation-glossterm-nullable"></a>nullable</span></dt>
-<dd class="glossdef"><p>NULL may be passed as the value in, out, in-out; or as a return value.</p></dd>
 <a name="glsO"></a><h3 class="title">O</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-out"></a>out</span></dt>
 <dd class="glossdef"><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
 <dt><span class="glossterm"><a name="annotation-glossterm-out%20caller-allocates"></a>out caller-allocates</span></dt>
 <dd class="glossdef"><p>Out parameter, where caller must allocate storage.</p></dd>
-<a name="glsS"></a><h3 class="title">S</h3>
-<dt><span class="glossterm"><a name="annotation-glossterm-skip"></a>skip</span></dt>
-<dd class="glossdef"><p>Exposed in C code, not necessarily available in other languages.</p></dd>
-<dt><span class="glossterm"><a name="annotation-glossterm-Stable"></a>Stable</span></dt>
-<dd class="glossdef"><p>The intention of a Stable interface is to enable arbitrary third parties to
-develop applications to these interfaces, release them, and have confidence that
-they will run on all minor releases of the product (after the one in which the
-interface was introduced, and within the same major release). Even at a major
-release, incompatible changes are expected to be rare, and to have strong
-justifications.
-</p></dd>
 <a name="glsT"></a><h3 class="title">T</h3>
 <dt><span class="glossterm"><a name="annotation-glossterm-transfer%20full"></a>transfer full</span></dt>
 <dd class="glossdef"><p>Free data after the code is done.</p></dd>
@@ -65,6 +52,7 @@ justifications.
 <dd class="glossdef"><p>Override the parsed C type with given type.</p></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index c6a6a62..ca0c7b3 100644 (file)
@@ -2,33 +2,37 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of new symbols in 1.29.0: GObject Introspection Reference Manual</title>
+<title>Index of new symbols in 1.29.0</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-deprecated.html" title="Index of deprecated symbols">
 <link rel="next" href="api-index-1-29-17.html" title="Index of new symbols in 1.29.17">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxA">A</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-deprecated.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-1-29-17.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="api-index-deprecated.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-1-29-17.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts"><a class="shortcut" href="#idxA">A</a></td></tr>
+</table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="api-index-1-29-0"></a>Index of new symbols in 1.29.0</h1></div></div></div>
 <a name="idx"></a><a name="idxA"></a><h3 class="title">A</h3>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-skip" title="g_arg_info_is_skip ()">g_arg_info_is_skip</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-skip" title="g_arg_info_is_skip ()">g_arg_info_is_skip</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index b03b382..c6f2c89 100644 (file)
@@ -2,48 +2,54 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of new symbols in 1.29.17: GObject Introspection Reference Manual</title>
+<title>Index of new symbols in 1.29.17</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-1-29-0.html" title="Index of new symbols in 1.29.0">
 <link rel="next" href="api-index-1-30-1.html" title="Index of new symbols in 1.30.1">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxE">E</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxI">I</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-1-29-0.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-1-30-1.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="api-index-1-29-0.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-1-30-1.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a class="shortcut" href="#idxE">E</a>
+                     Â | 
+                   <a class="shortcut" href="#idxI">I</a>
+</td></tr>
+</table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="api-index-1-29-17"></a>Index of new symbols in 1.29.17</h1></div></div></div>
 <a name="idx"></a><a name="idxE"></a><h3 class="title">E</h3>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-error-domain" title="g_enum_info_get_error_domain ()">g_enum_info_get_error_domain</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-error-domain" title="g_enum_info_get_error_domain ()">g_enum_info_get_error_domain</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-method" title="g_enum_info_get_method ()">g_enum_info_get_method</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-method" title="g_enum_info_get_method ()">g_enum_info_get_method</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-methods" title="g_enum_info_get_n_methods ()">g_enum_info_get_n_methods</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-methods" title="g_enum_info_get_n_methods ()">g_enum_info_get_n_methods</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <a name="idxI"></a><h3 class="title">I</h3>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 5d4dc2c..e3d03dd 100644 (file)
@@ -2,33 +2,37 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of new symbols in 1.30.1: GObject Introspection Reference Manual</title>
+<title>Index of new symbols in 1.30.1</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-1-29-17.html" title="Index of new symbols in 1.29.17">
 <link rel="next" href="api-index-1-34.html" title="Index of new symbols in 1.34">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxC">C</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-1-29-17.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-1-34.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="api-index-1-29-17.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-1-34.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts"><a class="shortcut" href="#idxC">C</a></td></tr>
+</table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="api-index-1-30-1"></a>Index of new symbols in 1.30.1</h1></div></div></div>
 <a name="idx"></a><a name="idxC"></a><h3 class="title">C</h3>
 <dt>
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()">g_constant_info_free_value</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
+<a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()">g_constant_info_free_value</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
 </dt>
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index a380456..bee61fe 100644 (file)
@@ -2,44 +2,50 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of new symbols in 1.34: GObject Introspection Reference Manual</title>
+<title>Index of new symbols in 1.34</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-1-30-1.html" title="Index of new symbols in 1.30.1">
 <link rel="next" href="api-index-1-35-8.html" title="Index of new symbols in 1.35.8">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxC">C</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxI">I</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-1-30-1.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-1-35-8.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="api-index-1-30-1.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-1-35-8.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a class="shortcut" href="#idxC">C</a>
+                     Â | 
+                   <a class="shortcut" href="#idxI">I</a>
+</td></tr>
+</table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="api-index-1-34"></a>Index of new symbols in 1.34</h1></div></div></div>
 <a name="idx"></a><a name="idxC"></a><h3 class="title">C</h3>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <a name="idxI"></a><h3 class="title">I</h3>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-signal" title="g_interface_info_find_signal ()">g_interface_info_find_signal</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-signal" title="g_interface_info_find_signal ()">g_interface_info_find_signal</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index cb45f56..e309e83 100644 (file)
@@ -2,33 +2,37 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of new symbols in 1.35.8: GObject Introspection Reference Manual</title>
+<title>Index of new symbols in 1.35.8</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-1-34.html" title="Index of new symbols in 1.34">
 <link rel="next" href="annotation-glossary.html" title="Annotation Glossary">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxI">I</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-1-34.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="api-index-1-34.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts"><a class="shortcut" href="#idxI">I</a></td></tr>
+</table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="api-index-1-35-8"></a>Index of new symbols in 1.35.8</h1></div></div></div>
 <a name="idx"></a><a name="idxI"></a><h3 class="title">I</h3>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 0e1e00b..53d1c24 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of deprecated symbols: GObject Introspection Reference Manual</title>
+<title>Index of deprecated symbols</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="api-index-full.html" title="Index">
 <link rel="next" href="api-index-1-29-0.html" title="Index of new symbols in 1.29.0">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-1-29-0.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-1-29-0.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
@@ -25,6 +25,7 @@
 <a name="idx"></a>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 2c3ef58..2235bf8 100644 (file)
@@ -2,51 +2,56 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index: GObject Introspection Reference Manual</title>
+<title>Index</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="gi-gir-reference.html" title="The GIR XML format">
 <link rel="next" href="api-index-deprecated.html" title="Index of deprecated symbols">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxA">A</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxB">B</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxC">C</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxD">D</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxE">E</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxF">F</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxH">H</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxI">I</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxO">O</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxP">P</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxR">R</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxS">S</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxT">T</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxU">U</a>
-                    Â <span class="dim">|</span> 
-                  <a class="shortcut" href="#idxV">V</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="gi-gir-reference.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-deprecated.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-gir-reference.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-deprecated.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a class="shortcut" href="#idxA">A</a>
+                     Â | 
+                   <a class="shortcut" href="#idxB">B</a>
+                     Â | 
+                   <a class="shortcut" href="#idxC">C</a>
+                     Â | 
+                   <a class="shortcut" href="#idxD">D</a>
+                     Â | 
+                   <a class="shortcut" href="#idxE">E</a>
+                     Â | 
+                   <a class="shortcut" href="#idxF">F</a>
+                     Â | 
+                   <a class="shortcut" href="#idxH">H</a>
+                     Â | 
+                   <a class="shortcut" href="#idxI">I</a>
+                     Â | 
+                   <a class="shortcut" href="#idxO">O</a>
+                     Â | 
+                   <a class="shortcut" href="#idxP">P</a>
+                     Â | 
+                   <a class="shortcut" href="#idxR">R</a>
+                     Â | 
+                   <a class="shortcut" href="#idxS">S</a>
+                     Â | 
+                   <a class="shortcut" href="#idxT">T</a>
+                     Â | 
+                   <a class="shortcut" href="#idxU">U</a>
+                     Â | 
+                   <a class="shortcut" href="#idxV">V</a>
+</td></tr>
+</table>
 <div class="index">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="api-index-full"></a>Index</h1></div></div></div>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-closure" title="g_arg_info_get_closure ()">g_arg_info_get_closure</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-closure" title="g_arg_info_get_closure ()">g_arg_info_get_closure</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-destroy" title="g_arg_info_get_destroy ()">g_arg_info_get_destroy</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-destroy" title="g_arg_info_get_destroy ()">g_arg_info_get_destroy</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-direction" title="g_arg_info_get_direction ()">g_arg_info_get_direction</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-direction" title="g_arg_info_get_direction ()">g_arg_info_get_direction</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-ownership-transfer" title="g_arg_info_get_ownership_transfer ()">g_arg_info_get_ownership_transfer</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-ownership-transfer" title="g_arg_info_get_ownership_transfer ()">g_arg_info_get_ownership_transfer</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-scope" title="g_arg_info_get_scope ()">g_arg_info_get_scope</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-scope" title="g_arg_info_get_scope ()">g_arg_info_get_scope</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-type" title="g_arg_info_get_type ()">g_arg_info_get_type</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-type" title="g_arg_info_get_type ()">g_arg_info_get_type</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-caller-allocates" title="g_arg_info_is_caller_allocates ()">g_arg_info_is_caller_allocates</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-caller-allocates" title="g_arg_info_is_caller_allocates ()">g_arg_info_is_caller_allocates</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-optional" title="g_arg_info_is_optional ()">g_arg_info_is_optional</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-optional" title="g_arg_info_is_optional ()">g_arg_info_is_optional</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-return-value" title="g_arg_info_is_return_value ()">g_arg_info_is_return_value</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-return-value" title="g_arg_info_is_return_value ()">g_arg_info_is_return_value</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-skip" title="g_arg_info_is_skip ()">g_arg_info_is_skip</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-skip" title="g_arg_info_is_skip ()">g_arg_info_is_skip</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-load-type" title="g_arg_info_load_type ()">g_arg_info_load_type</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-load-type" title="g_arg_info_load_type ()">g_arg_info_load_type</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-may-be-null" title="g_arg_info_may_be_null ()">g_arg_info_may_be_null</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+<a class="link" href="gi-GIArgInfo.html#g-arg-info-may-be-null" title="g_arg_info_may_be_null ()">g_arg_info_may_be_null</a>, function in <a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
 </dt>
 <dd></dd>
 <dt>
 <dd></dd>
 <a name="idxB"></a><h3 class="title">B</h3>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-equal" title="g_base_info_equal ()">g_base_info_equal</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-equal" title="g_base_info_equal ()">g_base_info_equal</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-attribute" title="g_base_info_get_attribute ()">g_base_info_get_attribute</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-attribute" title="g_base_info_get_attribute ()">g_base_info_get_attribute</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-container" title="g_base_info_get_container ()">g_base_info_get_container</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-container" title="g_base_info_get_container ()">g_base_info_get_container</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-name" title="g_base_info_get_name ()">g_base_info_get_name</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-name" title="g_base_info_get_name ()">g_base_info_get_name</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-namespace" title="g_base_info_get_namespace ()">g_base_info_get_namespace</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-namespace" title="g_base_info_get_namespace ()">g_base_info_get_namespace</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-type" title="g_base_info_get_type ()">g_base_info_get_type</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-type" title="g_base_info_get_type ()">g_base_info_get_type</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-typelib" title="g_base_info_get_typelib ()">g_base_info_get_typelib</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-typelib" title="g_base_info_get_typelib ()">g_base_info_get_typelib</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-is-deprecated" title="g_base_info_is_deprecated ()">g_base_info_is_deprecated</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-is-deprecated" title="g_base_info_is_deprecated ()">g_base_info_is_deprecated</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()">g_base_info_iterate_attributes</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()">g_base_info_iterate_attributes</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-ref" title="g_base_info_ref ()">g_base_info_ref</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-ref" title="g_base_info_ref ()">g_base_info_ref</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()">g_base_info_unref</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()">g_base_info_unref</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <a name="idxC"></a><h3 class="title">C</h3>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#g-callable-info-free-closure" title="g_callable_info_free_closure ()">g_callable_info_free_closure</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#g-callable-info-free-closure" title="g_callable_info_free_closure ()">g_callable_info_free_closure</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()">g_callable_info_get_arg</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()">g_callable_info_get_arg</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-caller-owns" title="g_callable_info_get_caller_owns ()">g_callable_info_get_caller_owns</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-caller-owns" title="g_callable_info_get_caller_owns ()">g_callable_info_get_caller_owns</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()">g_callable_info_get_n_args</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()">g_callable_info_get_n_args</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-attribute" title="g_callable_info_get_return_attribute ()">g_callable_info_get_return_attribute</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-attribute" title="g_callable_info_get_return_attribute ()">g_callable_info_get_return_attribute</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()">g_callable_info_get_return_type</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()">g_callable_info_get_return_type</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-invoke" title="g_callable_info_invoke ()">g_callable_info_invoke</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-invoke" title="g_callable_info_invoke ()">g_callable_info_invoke</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes" title="g_callable_info_iterate_return_attributes ()">g_callable_info_iterate_return_attributes</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes" title="g_callable_info_iterate_return_attributes ()">g_callable_info_iterate_return_attributes</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-load-arg" title="g_callable_info_load_arg ()">g_callable_info_load_arg</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-load-arg" title="g_callable_info_load_arg ()">g_callable_info_load_arg</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-load-return-type" title="g_callable_info_load_return_type ()">g_callable_info_load_return_type</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-load-return-type" title="g_callable_info_load_return_type ()">g_callable_info_load_return_type</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-may-return-null" title="g_callable_info_may_return_null ()">g_callable_info_may_return_null</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-may-return-null" title="g_callable_info_may_return_null ()">g_callable_info_may_return_null</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#g-callable-info-prepare-closure" title="g_callable_info_prepare_closure ()">g_callable_info_prepare_closure</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#g-callable-info-prepare-closure" title="g_callable_info_prepare_closure ()">g_callable_info_prepare_closure</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-skip-return" title="g_callable_info_skip_return ()">g_callable_info_skip_return</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+<a class="link" href="gi-GICallableInfo.html#g-callable-info-skip-return" title="g_callable_info_skip_return ()">g_callable_info_skip_return</a>, function in <a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()">g_constant_info_free_value</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
+<a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()">g_constant_info_free_value</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-type" title="g_constant_info_get_type ()">g_constant_info_get_type</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
+<a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-type" title="g_constant_info_get_type ()">g_constant_info_get_type</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()">g_constant_info_get_value</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
+<a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()">g_constant_info_get_value</a>, function in <a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
 </dt>
 <dd></dd>
 <a name="idxD"></a><h3 class="title">D</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-error-domain" title="g_enum_info_get_error_domain ()">g_enum_info_get_error_domain</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-error-domain" title="g_enum_info_get_error_domain ()">g_enum_info_get_error_domain</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-method" title="g_enum_info_get_method ()">g_enum_info_get_method</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-method" title="g_enum_info_get_method ()">g_enum_info_get_method</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-methods" title="g_enum_info_get_n_methods ()">g_enum_info_get_n_methods</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-methods" title="g_enum_info_get_n_methods ()">g_enum_info_get_n_methods</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-values" title="g_enum_info_get_n_values ()">g_enum_info_get_n_values</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-values" title="g_enum_info_get_n_values ()">g_enum_info_get_n_values</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-storage-type" title="g_enum_info_get_storage_type ()">g_enum_info_get_storage_type</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-storage-type" title="g_enum_info_get_storage_type ()">g_enum_info_get_storage_type</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-value" title="g_enum_info_get_value ()">g_enum_info_get_value</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-value" title="g_enum_info_get_value ()">g_enum_info_get_value</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-field" title="g_field_info_get_field ()">g_field_info_get_field</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-field" title="g_field_info_get_field ()">g_field_info_get_field</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-flags" title="g_field_info_get_flags ()">g_field_info_get_flags</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-flags" title="g_field_info_get_flags ()">g_field_info_get_flags</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-offset" title="g_field_info_get_offset ()">g_field_info_get_offset</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-offset" title="g_field_info_get_offset ()">g_field_info_get_offset</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-size" title="g_field_info_get_size ()">g_field_info_get_size</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-size" title="g_field_info_get_size ()">g_field_info_get_size</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-type" title="g_field_info_get_type ()">g_field_info_get_type</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-type" title="g_field_info_get_type ()">g_field_info_get_type</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-set-field" title="g_field_info_set_field ()">g_field_info_set_field</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+<a class="link" href="gi-GIFieldInfo.html#g-field-info-set-field" title="g_field_info_set_field ()">g_field_info_set_field</a>, function in <a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-flags" title="g_function_info_get_flags ()">g_function_info_get_flags</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-flags" title="g_function_info_get_flags ()">g_function_info_get_flags</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-property" title="g_function_info_get_property ()">g_function_info_get_property</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-property" title="g_function_info_get_property ()">g_function_info_get_property</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-symbol" title="g_function_info_get_symbol ()">g_function_info_get_symbol</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-symbol" title="g_function_info_get_symbol ()">g_function_info_get_symbol</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-vfunc" title="g_function_info_get_vfunc ()">g_function_info_get_vfunc</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-vfunc" title="g_function_info_get_vfunc ()">g_function_info_get_vfunc</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-invoke" title="g_function_info_invoke ()">g_function_info_invoke</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-invoke" title="g_function_info_invoke ()">g_function_info_invoke</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#g-function-info-prep-invoker" title="g_function_info_prep_invoker ()">g_function_info_prep_invoker</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#g-function-info-prep-invoker" title="g_function_info_prep_invoker ()">g_function_info_prep_invoker</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#g-function-invoker-destroy" title="g_function_invoker_destroy ()">g_function_invoker_destroy</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#g-function-invoker-destroy" title="g_function_invoker_destroy ()">g_function_invoker_destroy</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#g-function-invoker-new-for-address" title="g_function_invoker_new_for_address ()">g_function_invoker_new_for_address</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#g-function-invoker-new-for-address" title="g_function_invoker_new_for_address ()">g_function_invoker_new_for_address</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <a name="idxH"></a><h3 class="title">H</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-common-types.html#GIArgument" title="GIArgument">GIArgument</a>, union in <a class="link" href="gi-common-types.html" title="common types">common types</a>
+<a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument">GIArgument</a>, union in <a class="link" href="gi-common-types.html" title="common types">common types</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()">GIFFIClosureCallback</a>, user_function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()">GIFFIClosureCallback</a>, user_function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIBaseInfo.html#g-info-new" title="g_info_new ()">g_info_new</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+<a class="link" href="gi-GIBaseInfo.html#g-info-new" title="g_info_new ()">g_info_new</a>, function in <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-info-type-to-string" title="g_info_type_to_string ()">g_info_type_to_string</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-info-type-to-string" title="g_info_type_to_string ()">g_info_type_to_string</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-method" title="g_interface_info_find_method ()">g_interface_info_find_method</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-method" title="g_interface_info_find_method ()">g_interface_info_find_method</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-signal" title="g_interface_info_find_signal ()">g_interface_info_find_signal</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-signal" title="g_interface_info_find_signal ()">g_interface_info_find_signal</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-vfunc" title="g_interface_info_find_vfunc ()">g_interface_info_find_vfunc</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-vfunc" title="g_interface_info_find_vfunc ()">g_interface_info_find_vfunc</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-constant" title="g_interface_info_get_constant ()">g_interface_info_get_constant</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-constant" title="g_interface_info_get_constant ()">g_interface_info_get_constant</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct" title="g_interface_info_get_iface_struct ()">g_interface_info_get_iface_struct</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct" title="g_interface_info_get_iface_struct ()">g_interface_info_get_iface_struct</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-method" title="g_interface_info_get_method ()">g_interface_info_get_method</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-method" title="g_interface_info_get_method ()">g_interface_info_get_method</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-constants" title="g_interface_info_get_n_constants ()">g_interface_info_get_n_constants</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-constants" title="g_interface_info_get_n_constants ()">g_interface_info_get_n_constants</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-methods" title="g_interface_info_get_n_methods ()">g_interface_info_get_n_methods</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-methods" title="g_interface_info_get_n_methods ()">g_interface_info_get_n_methods</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites" title="g_interface_info_get_n_prerequisites ()">g_interface_info_get_n_prerequisites</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites" title="g_interface_info_get_n_prerequisites ()">g_interface_info_get_n_prerequisites</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-properties" title="g_interface_info_get_n_properties ()">g_interface_info_get_n_properties</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-properties" title="g_interface_info_get_n_properties ()">g_interface_info_get_n_properties</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-signals" title="g_interface_info_get_n_signals ()">g_interface_info_get_n_signals</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-signals" title="g_interface_info_get_n_signals ()">g_interface_info_get_n_signals</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs" title="g_interface_info_get_n_vfuncs ()">g_interface_info_get_n_vfuncs</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs" title="g_interface_info_get_n_vfuncs ()">g_interface_info_get_n_vfuncs</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite" title="g_interface_info_get_prerequisite ()">g_interface_info_get_prerequisite</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite" title="g_interface_info_get_prerequisite ()">g_interface_info_get_prerequisite</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-property" title="g_interface_info_get_property ()">g_interface_info_get_property</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-property" title="g_interface_info_get_property ()">g_interface_info_get_property</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-signal" title="g_interface_info_get_signal ()">g_interface_info_get_signal</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-signal" title="g_interface_info_get_signal ()">g_interface_info_get_signal</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-vfunc" title="g_interface_info_get_vfunc ()">g_interface_info_get_vfunc</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
+<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-vfunc" title="g_interface_info_get_vfunc ()">g_interface_info_get_vfunc</a>, function in <a class="link" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">GIInterfaceInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIFunctionInfo.html#g-invoke-error-quark" title="g_invoke_error_quark ()">g_invoke_error_quark</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+<a class="link" href="gi-GIFunctionInfo.html#g-invoke-error-quark" title="g_invoke_error_quark ()">g_invoke_error_quark</a>, function in <a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()">GIObjectInfoGetValueFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()">GIObjectInfoGetValueFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()">GIObjectInfoRefFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()">GIObjectInfoRefFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()">GIObjectInfoSetValueFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()">GIObjectInfoSetValueFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()">GIObjectInfoUnrefFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()">GIObjectInfoUnrefFunction</a>, user_function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-dump" title="g_irepository_dump ()">g_irepository_dump</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-dump" title="g_irepository_dump ()">g_irepository_dump</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-enumerate-versions" title="g_irepository_enumerate_versions ()">g_irepository_enumerate_versions</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-enumerate-versions" title="g_irepository_enumerate_versions ()">g_irepository_enumerate_versions</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()">g_irepository_find_by_gtype</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()">g_irepository_find_by_gtype</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()">g_irepository_find_by_name</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()">g_irepository_find_by_name</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-c-prefix" title="g_irepository_get_c_prefix ()">g_irepository_get_c_prefix</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-c-prefix" title="g_irepository_get_c_prefix ()">g_irepository_get_c_prefix</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-default" title="g_irepository_get_default ()">g_irepository_get_default</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-default" title="g_irepository_get_default ()">g_irepository_get_default</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()">g_irepository_get_dependencies</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()">g_irepository_get_dependencies</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-immediate-dependencies" title="g_irepository_get_immediate_dependencies ()">g_irepository_get_immediate_dependencies</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-immediate-dependencies" title="g_irepository_get_immediate_dependencies ()">g_irepository_get_immediate_dependencies</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()">g_irepository_get_info</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()">g_irepository_get_info</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-loaded-namespaces" title="g_irepository_get_loaded_namespaces ()">g_irepository_get_loaded_namespaces</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-loaded-namespaces" title="g_irepository_get_loaded_namespaces ()">g_irepository_get_loaded_namespaces</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()">g_irepository_get_n_infos</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()">g_irepository_get_n_infos</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-option-group" title="g_irepository_get_option_group ()">g_irepository_get_option_group</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-option-group" title="g_irepository_get_option_group ()">g_irepository_get_option_group</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()">g_irepository_get_search_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()">g_irepository_get_search_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-shared-library" title="g_irepository_get_shared_library ()">g_irepository_get_shared_library</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-shared-library" title="g_irepository_get_shared_library ()">g_irepository_get_shared_library</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-typelib-path" title="g_irepository_get_typelib_path ()">g_irepository_get_typelib_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-typelib-path" title="g_irepository_get_typelib_path ()">g_irepository_get_typelib_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-get-version" title="g_irepository_get_version ()">g_irepository_get_version</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-get-version" title="g_irepository_get_version ()">g_irepository_get_version</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-is-registered" title="g_irepository_is_registered ()">g_irepository_is_registered</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-is-registered" title="g_irepository_is_registered ()">g_irepository_is_registered</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-load-typelib" title="g_irepository_load_typelib ()">g_irepository_load_typelib</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-load-typelib" title="g_irepository_load_typelib ()">g_irepository_load_typelib</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-prepend-search-path" title="g_irepository_prepend_search_path ()">g_irepository_prepend_search_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-prepend-search-path" title="g_irepository_prepend_search_path ()">g_irepository_prepend_search_path</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()">g_irepository_require</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()">g_irepository_require</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#g-irepository-require-private" title="g_irepository_require_private ()">g_irepository_require_private</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#g-irepository-require-private" title="g_irepository_require_private ()">g_irepository_require_private</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GIRepository.html#gi-cclosure-marshal-generic" title="gi_cclosure_marshal_generic ()">gi_cclosure_marshal_generic</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
+<a class="link" href="GIRepository.html#gi-cclosure-marshal-generic" title="gi_cclosure_marshal_generic ()">gi_cclosure_marshal_generic</a>, function in <a class="link" href="GIRepository.html" title="GIRepository">GIRepository</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#gi-type-info-extract-ffi-return-value" title="gi_type_info_extract_ffi_return_value ()">gi_type_info_extract_ffi_return_value</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#gi-type-info-extract-ffi-return-value" title="gi_type_info_extract_ffi_return_value ()">gi_type_info_extract_ffi_return_value</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#gi-type-tag-get-ffi-type" title="gi_type_tag_get_ffi_type ()">gi_type_tag_get_ffi_type</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#gi-type-tag-get-ffi-type" title="gi_type_tag_get_ffi_type ()">gi_type_tag_get_ffi_type</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method" title="g_object_info_find_method ()">g_object_info_find_method</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method" title="g_object_info_find_method ()">g_object_info_find_method</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces" title="g_object_info_find_method_using_interfaces ()">g_object_info_find_method_using_interfaces</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces" title="g_object_info_find_method_using_interfaces ()">g_object_info_find_method_using_interfaces</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-signal" title="g_object_info_find_signal ()">g_object_info_find_signal</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-signal" title="g_object_info_find_signal ()">g_object_info_find_signal</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc" title="g_object_info_find_vfunc ()">g_object_info_find_vfunc</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc" title="g_object_info_find_vfunc ()">g_object_info_find_vfunc</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces" title="g_object_info_find_vfunc_using_interfaces ()">g_object_info_find_vfunc_using_interfaces</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces" title="g_object_info_find_vfunc_using_interfaces ()">g_object_info_find_vfunc_using_interfaces</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-abstract" title="g_object_info_get_abstract ()">g_object_info_get_abstract</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-abstract" title="g_object_info_get_abstract ()">g_object_info_get_abstract</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-class-struct" title="g_object_info_get_class_struct ()">g_object_info_get_class_struct</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-class-struct" title="g_object_info_get_class_struct ()">g_object_info_get_class_struct</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-constant" title="g_object_info_get_constant ()">g_object_info_get_constant</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-constant" title="g_object_info_get_constant ()">g_object_info_get_constant</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-field" title="g_object_info_get_field ()">g_object_info_get_field</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-field" title="g_object_info_get_field ()">g_object_info_get_field</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-fundamental" title="g_object_info_get_fundamental ()">g_object_info_get_fundamental</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-fundamental" title="g_object_info_get_fundamental ()">g_object_info_get_fundamental</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function" title="g_object_info_get_get_value_function ()">g_object_info_get_get_value_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function" title="g_object_info_get_get_value_function ()">g_object_info_get_get_value_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer" title="g_object_info_get_get_value_function_pointer ()">g_object_info_get_get_value_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer" title="g_object_info_get_get_value_function_pointer ()">g_object_info_get_get_value_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-interface" title="g_object_info_get_interface ()">g_object_info_get_interface</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-interface" title="g_object_info_get_interface ()">g_object_info_get_interface</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-method" title="g_object_info_get_method ()">g_object_info_get_method</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-method" title="g_object_info_get_method ()">g_object_info_get_method</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-constants" title="g_object_info_get_n_constants ()">g_object_info_get_n_constants</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-constants" title="g_object_info_get_n_constants ()">g_object_info_get_n_constants</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-fields" title="g_object_info_get_n_fields ()">g_object_info_get_n_fields</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-fields" title="g_object_info_get_n_fields ()">g_object_info_get_n_fields</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-interfaces" title="g_object_info_get_n_interfaces ()">g_object_info_get_n_interfaces</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-interfaces" title="g_object_info_get_n_interfaces ()">g_object_info_get_n_interfaces</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-methods" title="g_object_info_get_n_methods ()">g_object_info_get_n_methods</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-methods" title="g_object_info_get_n_methods ()">g_object_info_get_n_methods</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-properties" title="g_object_info_get_n_properties ()">g_object_info_get_n_properties</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-properties" title="g_object_info_get_n_properties ()">g_object_info_get_n_properties</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-signals" title="g_object_info_get_n_signals ()">g_object_info_get_n_signals</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-signals" title="g_object_info_get_n_signals ()">g_object_info_get_n_signals</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-vfuncs" title="g_object_info_get_n_vfuncs ()">g_object_info_get_n_vfuncs</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-vfuncs" title="g_object_info_get_n_vfuncs ()">g_object_info_get_n_vfuncs</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-parent" title="g_object_info_get_parent ()">g_object_info_get_parent</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-parent" title="g_object_info_get_parent ()">g_object_info_get_parent</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-property" title="g_object_info_get_property ()">g_object_info_get_property</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-property" title="g_object_info_get_property ()">g_object_info_get_property</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function" title="g_object_info_get_ref_function ()">g_object_info_get_ref_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function" title="g_object_info_get_ref_function ()">g_object_info_get_ref_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer" title="g_object_info_get_ref_function_pointer ()">g_object_info_get_ref_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer" title="g_object_info_get_ref_function_pointer ()">g_object_info_get_ref_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function" title="g_object_info_get_set_value_function ()">g_object_info_get_set_value_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function" title="g_object_info_get_set_value_function ()">g_object_info_get_set_value_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer" title="g_object_info_get_set_value_function_pointer ()">g_object_info_get_set_value_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer" title="g_object_info_get_set_value_function_pointer ()">g_object_info_get_set_value_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-signal" title="g_object_info_get_signal ()">g_object_info_get_signal</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-signal" title="g_object_info_get_signal ()">g_object_info_get_signal</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-init" title="g_object_info_get_type_init ()">g_object_info_get_type_init</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-init" title="g_object_info_get_type_init ()">g_object_info_get_type_init</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-name" title="g_object_info_get_type_name ()">g_object_info_get_type_name</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-name" title="g_object_info_get_type_name ()">g_object_info_get_type_name</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function" title="g_object_info_get_unref_function ()">g_object_info_get_unref_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function" title="g_object_info_get_unref_function ()">g_object_info_get_unref_function</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer" title="g_object_info_get_unref_function_pointer ()">g_object_info_get_unref_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer" title="g_object_info_get_unref_function_pointer ()">g_object_info_get_unref_function_pointer</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-vfunc" title="g_object_info_get_vfunc ()">g_object_info_get_vfunc</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
+<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-vfunc" title="g_object_info_get_vfunc ()">g_object_info_get_vfunc</a>, function in <a class="link" href="gi-GIObjectInfo.html" title="GIObjectInfo">GIObjectInfo</a>
 </dt>
 <dd></dd>
 <a name="idxP"></a><h3 class="title">P</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-flags" title="g_property_info_get_flags ()">g_property_info_get_flags</a>, function in <a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
+<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-flags" title="g_property_info_get_flags ()">g_property_info_get_flags</a>, function in <a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer" title="g_property_info_get_ownership_transfer ()">g_property_info_get_ownership_transfer</a>, function in <a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
+<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer" title="g_property_info_get_ownership_transfer ()">g_property_info_get_ownership_transfer</a>, function in <a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-type" title="g_property_info_get_type ()">g_property_info_get_type</a>, function in <a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
+<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-type" title="g_property_info_get_type ()">g_property_info_get_type</a>, function in <a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
 </dt>
 <dd></dd>
 <a name="idxR"></a><h3 class="title">R</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()">g_registered_type_info_get_g_type</a>, function in <a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
+<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()">g_registered_type_info_get_g_type</a>, function in <a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init" title="g_registered_type_info_get_type_init ()">g_registered_type_info_get_type_init</a>, function in <a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
+<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init" title="g_registered_type_info_get_type_init ()">g_registered_type_info_get_type_init</a>, function in <a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name" title="g_registered_type_info_get_type_name ()">g_registered_type_info_get_type_name</a>, function in <a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
+<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name" title="g_registered_type_info_get_type_name ()">g_registered_type_info_get_type_name</a>, function in <a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
 </dt>
 <dd></dd>
 <a name="idxS"></a><h3 class="title">S</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GISignalInfo.html#g-signal-info-get-class-closure" title="g_signal_info_get_class_closure ()">g_signal_info_get_class_closure</a>, function in <a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
+<a class="link" href="gi-GISignalInfo.html#g-signal-info-get-class-closure" title="g_signal_info_get_class_closure ()">g_signal_info_get_class_closure</a>, function in <a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GISignalInfo.html#g-signal-info-get-flags" title="g_signal_info_get_flags ()">g_signal_info_get_flags</a>, function in <a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
+<a class="link" href="gi-GISignalInfo.html#g-signal-info-get-flags" title="g_signal_info_get_flags ()">g_signal_info_get_flags</a>, function in <a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GISignalInfo.html#g-signal-info-true-stops-emit" title="g_signal_info_true_stops_emit ()">g_signal_info_true_stops_emit</a>, function in <a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
+<a class="link" href="gi-GISignalInfo.html#g-signal-info-true-stops-emit" title="g_signal_info_true_stops_emit ()">g_signal_info_true_stops_emit</a>, function in <a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob">SimpleTypeBlob</a>, union in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob">SimpleTypeBlob</a>, union in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-find-method" title="g_struct_info_find_method ()">g_struct_info_find_method</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-find-method" title="g_struct_info_find_method ()">g_struct_info_find_method</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-alignment" title="g_struct_info_get_alignment ()">g_struct_info_get_alignment</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-alignment" title="g_struct_info_get_alignment ()">g_struct_info_get_alignment</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-field" title="g_struct_info_get_field ()">g_struct_info_get_field</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-field" title="g_struct_info_get_field ()">g_struct_info_get_field</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-method" title="g_struct_info_get_method ()">g_struct_info_get_method</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-method" title="g_struct_info_get_method ()">g_struct_info_get_method</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-fields" title="g_struct_info_get_n_fields ()">g_struct_info_get_n_fields</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-fields" title="g_struct_info_get_n_fields ()">g_struct_info_get_n_fields</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-methods" title="g_struct_info_get_n_methods ()">g_struct_info_get_n_methods</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-methods" title="g_struct_info_get_n_methods ()">g_struct_info_get_n_methods</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-size" title="g_struct_info_get_size ()">g_struct_info_get_size</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-size" title="g_struct_info_get_size ()">g_struct_info_get_size</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-is-foreign" title="g_struct_info_is_foreign ()">g_struct_info_is_foreign</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-is-foreign" title="g_struct_info_is_foreign ()">g_struct_info_is_foreign</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-is-gtype-struct" title="g_struct_info_is_gtype_struct ()">g_struct_info_is_gtype_struct</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
+<a class="link" href="gi-GIStructInfo.html#g-struct-info-is-gtype-struct" title="g_struct_info_is_gtype_struct ()">g_struct_info_is_gtype_struct</a>, function in <a class="link" href="gi-GIStructInfo.html" title="GIStructInfo">GIStructInfo</a>
 </dt>
 <dd></dd>
 <a name="idxT"></a><h3 class="title">T</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-check-sanity" title="g_typelib_check_sanity ()">g_typelib_check_sanity</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-check-sanity" title="g_typelib_check_sanity ()">g_typelib_check_sanity</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-error-quark" title="g_typelib_error_quark ()">g_typelib_error_quark</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-error-quark" title="g_typelib_error_quark ()">g_typelib_error_quark</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-gitypelib.html#g-typelib-free" title="g_typelib_free ()">g_typelib_free</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
+<a class="link" href="gi-gitypelib.html#g-typelib-free" title="g_typelib_free ()">g_typelib_free</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry" title="g_typelib_get_dir_entry ()">g_typelib_get_dir_entry</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry" title="g_typelib_get_dir_entry ()">g_typelib_get_dir_entry</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain" title="g_typelib_get_dir_entry_by_error_domain ()">g_typelib_get_dir_entry_by_error_domain</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain" title="g_typelib_get_dir_entry_by_error_domain ()">g_typelib_get_dir_entry_by_error_domain</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name" title="g_typelib_get_dir_entry_by_gtype_name ()">g_typelib_get_dir_entry_by_gtype_name</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name" title="g_typelib_get_dir_entry_by_gtype_name ()">g_typelib_get_dir_entry_by_gtype_name</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-name" title="g_typelib_get_dir_entry_by_name ()">g_typelib_get_dir_entry_by_name</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-name" title="g_typelib_get_dir_entry_by_name ()">g_typelib_get_dir_entry_by_name</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-gitypelib.html#g-typelib-get-namespace" title="g_typelib_get_namespace ()">g_typelib_get_namespace</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
+<a class="link" href="gi-gitypelib.html#g-typelib-get-namespace" title="g_typelib_get_namespace ()">g_typelib_get_namespace</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-matches-gtype-name-prefix" title="g_typelib_matches_gtype_name_prefix ()">g_typelib_matches_gtype_name_prefix</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-matches-gtype-name-prefix" title="g_typelib_matches_gtype_name_prefix ()">g_typelib_matches_gtype_name_prefix</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-gitypelib.html#g-typelib-new-from-const-memory" title="g_typelib_new_from_const_memory ()">g_typelib_new_from_const_memory</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
+<a class="link" href="gi-gitypelib.html#g-typelib-new-from-const-memory" title="g_typelib_new_from_const_memory ()">g_typelib_new_from_const_memory</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-gitypelib.html#g-typelib-new-from-mapped-file" title="g_typelib_new_from_mapped_file ()">g_typelib_new_from_mapped_file</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
+<a class="link" href="gi-gitypelib.html#g-typelib-new-from-mapped-file" title="g_typelib_new_from_mapped_file ()">g_typelib_new_from_mapped_file</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-gitypelib.html#g-typelib-new-from-memory" title="g_typelib_new_from_memory ()">g_typelib_new_from_memory</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
+<a class="link" href="gi-gitypelib.html#g-typelib-new-from-memory" title="g_typelib_new_from_memory ()">g_typelib_new_from_memory</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-gitypelib.html#g-typelib-symbol" title="g_typelib_symbol ()">g_typelib_symbol</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
+<a class="link" href="gi-gitypelib.html#g-typelib-symbol" title="g_typelib_symbol ()">g_typelib_symbol</a>, function in <a class="link" href="gi-gitypelib.html" title="gitypelib">gitypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypelib.html#g-typelib-validate" title="g_typelib_validate ()">g_typelib_validate</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
+<a class="link" href="gi-GITypelib.html#g-typelib-validate" title="g_typelib_validate ()">g_typelib_validate</a>, function in <a class="link" href="gi-GITypelib.html" title="GITypelib">GITypelib</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-fixed-size" title="g_type_info_get_array_fixed_size ()">g_type_info_get_array_fixed_size</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-fixed-size" title="g_type_info_get_array_fixed_size ()">g_type_info_get_array_fixed_size</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-length" title="g_type_info_get_array_length ()">g_type_info_get_array_length</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-length" title="g_type_info_get_array_length ()">g_type_info_get_array_length</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-type" title="g_type_info_get_array_type ()">g_type_info_get_array_type</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-type" title="g_type_info_get_array_type ()">g_type_info_get_array_type</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-girffi.html#g-type-info-get-ffi-type" title="g_type_info_get_ffi_type ()">g_type_info_get_ffi_type</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
+<a class="link" href="gi-girffi.html#g-type-info-get-ffi-type" title="g_type_info_get_ffi_type ()">g_type_info_get_ffi_type</a>, function in <a class="link" href="gi-girffi.html" title="girffi">girffi</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-interface" title="g_type_info_get_interface ()">g_type_info_get_interface</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-interface" title="g_type_info_get_interface ()">g_type_info_get_interface</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-param-type" title="g_type_info_get_param_type ()">g_type_info_get_param_type</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-param-type" title="g_type_info_get_param_type ()">g_type_info_get_param_type</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-tag" title="g_type_info_get_tag ()">g_type_info_get_tag</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-tag" title="g_type_info_get_tag ()">g_type_info_get_tag</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-is-pointer" title="g_type_info_is_pointer ()">g_type_info_is_pointer</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-is-pointer" title="g_type_info_is_pointer ()">g_type_info_is_pointer</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-info-is-zero-terminated" title="g_type_info_is_zero_terminated ()">g_type_info_is_zero_terminated</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-is-zero-terminated" title="g_type_info_is_zero_terminated ()">g_type_info_is_zero_terminated</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GITypeInfo.html#g-type-tag-to-string" title="g_type_tag_to_string ()">g_type_tag_to_string</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<a class="link" href="gi-GITypeInfo.html#g-type-tag-to-string" title="g_type_tag_to_string ()">g_type_tag_to_string</a>, function in <a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
 </dt>
 <dd></dd>
 <a name="idxU"></a><h3 class="title">U</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-find-method" title="g_union_info_find_method ()">g_union_info_find_method</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-find-method" title="g_union_info_find_method ()">g_union_info_find_method</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-alignment" title="g_union_info_get_alignment ()">g_union_info_get_alignment</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-alignment" title="g_union_info_get_alignment ()">g_union_info_get_alignment</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator" title="g_union_info_get_discriminator ()">g_union_info_get_discriminator</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator" title="g_union_info_get_discriminator ()">g_union_info_get_discriminator</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-offset" title="g_union_info_get_discriminator_offset ()">g_union_info_get_discriminator_offset</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-offset" title="g_union_info_get_discriminator_offset ()">g_union_info_get_discriminator_offset</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-type" title="g_union_info_get_discriminator_type ()">g_union_info_get_discriminator_type</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-type" title="g_union_info_get_discriminator_type ()">g_union_info_get_discriminator_type</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-field" title="g_union_info_get_field ()">g_union_info_get_field</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-field" title="g_union_info_get_field ()">g_union_info_get_field</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-method" title="g_union_info_get_method ()">g_union_info_get_method</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-method" title="g_union_info_get_method ()">g_union_info_get_method</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-fields" title="g_union_info_get_n_fields ()">g_union_info_get_n_fields</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-fields" title="g_union_info_get_n_fields ()">g_union_info_get_n_fields</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-methods" title="g_union_info_get_n_methods ()">g_union_info_get_n_methods</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-methods" title="g_union_info_get_n_methods ()">g_union_info_get_n_methods</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-size" title="g_union_info_get_size ()">g_union_info_get_size</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-size" title="g_union_info_get_size ()">g_union_info_get_size</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-is-discriminated" title="g_union_info_is_discriminated ()">g_union_info_is_discriminated</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
+<a class="link" href="gi-GIUnionInfo.html#g-union-info-is-discriminated" title="g_union_info_is_discriminated ()">g_union_info_is_discriminated</a>, function in <a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </dt>
 <dd></dd>
 <a name="idxV"></a><h3 class="title">V</h3>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIEnumInfo.html#g-value-info-get-value" title="g_value_info_get_value ()">g_value_info_get_value</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
+<a class="link" href="gi-GIEnumInfo.html#g-value-info-get-value" title="g_value_info_get_value ()">g_value_info_get_value</a>, function in <a class="link" href="gi-GIEnumInfo.html" title="GIEnumInfo">GIEnumInfo</a>
 </dt>
 <dd></dd>
 <dt>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-address" title="g_vfunc_info_get_address ()">g_vfunc_info_get_address</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-address" title="g_vfunc_info_get_address ()">g_vfunc_info_get_address</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-flags" title="g_vfunc_info_get_flags ()">g_vfunc_info_get_flags</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-flags" title="g_vfunc_info_get_flags ()">g_vfunc_info_get_flags</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()">g_vfunc_info_get_invoker</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()">g_vfunc_info_get_invoker</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-offset" title="g_vfunc_info_get_offset ()">g_vfunc_info_get_offset</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-offset" title="g_vfunc_info_get_offset ()">g_vfunc_info_get_offset</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-signal" title="g_vfunc_info_get_signal ()">g_vfunc_info_get_signal</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-signal" title="g_vfunc_info_get_signal ()">g_vfunc_info_get_signal</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-invoke" title="g_vfunc_info_invoke ()">g_vfunc_info_invoke</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-invoke" title="g_vfunc_info_invoke ()">g_vfunc_info_invoke</a>, function in <a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </dt>
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 1d73ba4..b9f58a0 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIRepository: GObject Introspection Reference Manual</title>
+<title>GIRepository</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="gi.html" title="Part II. API Reference">
 <link rel="prev" href="gi.html" title="Part II. API Reference">
 <link rel="next" href="GIRepository.html" title="GIRepository">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gi.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="GIRepository.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="gi.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="gi.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="GIRepository.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
@@ -89,6 +89,7 @@
 </dl></div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index b11199d..a8a305e 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TODO: GObject Introspection Reference Manual</title>
+<title>TODO</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="gi.html" title="Part II. API Reference">
 <link rel="prev" href="gi-GITypelib.html" title="GITypelib">
 <link rel="next" href="gi-girffi.html" title="girffi">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gi.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GITypelib.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-girffi.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="gi-GITypelib.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="gi.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-girffi.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
@@ -32,6 +32,7 @@
 </dl></div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index f5ea3ce..57f2c92 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIArgInfo: GObject Introspection Reference Manual</title>
+<title>GIArgInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">
 <link rel="next" href="gi-GIConstantInfo.html" title="GIConstantInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIArgInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIInterfaceInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIConstantInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIInterfaceInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIConstantInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIArgInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIArgInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIArgInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIArgInfo.top_of_page"></a>GIArgInfo</span></h2>
 <p>GIArgInfo â€” Struct representing an argument</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIArgInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIArgInfo.html#GI-IS-ARG-INFO:CAPS" title="GI_IS_ARG_INFO()">GI_IS_ARG_INFO</a>                      (info)
+typedef             <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo">GIArgInfo</a>;
+enum                <a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection">GIDirection</a>;
+enum                <a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType">GIScopeType</a>;
+enum                <a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer">GITransfer</a>;
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-closure" title="g_arg_info_get_closure ()">g_arg_info_get_closure</a>              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-destroy" title="g_arg_info_get_destroy ()">g_arg_info_get_destroy</a>              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection"><span class="returnvalue">GIDirection</span></a>         <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-direction" title="g_arg_info_get_direction ()">g_arg_info_get_direction</a>            (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>          <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-ownership-transfer" title="g_arg_info_get_ownership_transfer ()">g_arg_info_get_ownership_transfer</a>   (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="returnvalue">GIScopeType</span></a>         <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-scope" title="g_arg_info_get_scope ()">g_arg_info_get_scope</a>                (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-type" title="g_arg_info_get_type ()">g_arg_info_get_type</a>                 (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-GIArgInfo.html#g-arg-info-load-type" title="g_arg_info_load_type ()">g_arg_info_load_type</a>                (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIArgInfo.html#g-arg-info-may-be-null" title="g_arg_info_may_be_null ()">g_arg_info_may_be_null</a>              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIArgInfo.html#g-arg-info-is-caller-allocates" title="g_arg_info_is_caller_allocates ()">g_arg_info_is_caller_allocates</a>      (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIArgInfo.html#g-arg-info-is-optional" title="g_arg_info_is_optional ()">g_arg_info_is_optional</a>              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIArgInfo.html#g-arg-info-is-return-value" title="g_arg_info_is_return_value ()">g_arg_info_is_return_value</a>          (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIArgInfo.html#g-arg-info-is-skip" title="g_arg_info_is_skip ()">g_arg_info_is_skip</a>                  (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);
+</pre>
+</div>
+<div class="refsect1">
+<a name="gi-GIArgInfo.description"></a><h2>Description</h2>
+<p>
+GIArgInfo represents an argument. An argument is always
+part of a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>.
+</p>
+<p>
+</p>
+<div class="refsect1">
+<a name="gi-giarginfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
+<pre class="synopsis">
+  <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+   +----GIArgInfo
+</pre>
+</div>
+<p>
+</p>
+</div>
 <div class="refsect1">
-<a name="gi-GIArgInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-GIArgInfo.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GI-IS-ARG-INFO:CAPS"></a><h3>GI_IS_ARG_INFO()</h3>
+<pre class="programlisting">#define             GI_IS_ARG_INFO(info)</pre>
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a GIArgInfo.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIArgInfo"></a><h3>GIArgInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIArgInfo;
+</pre>
+<p>
+Represents an argument.
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIDirection"></a><h3>enum GIDirection</h3>
+<pre class="programlisting">typedef enum {
+  GI_DIRECTION_IN,
+  GI_DIRECTION_OUT,
+  GI_DIRECTION_INOUT
+} GIDirection;
+</pre>
+<p>
+The direction of a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#GI-IS-ARG-INFO:CAPS" title="GI_IS_ARG_INFO()">GI_IS_ARG_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-closure" title="g_arg_info_get_closure ()">g_arg_info_get_closure</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-destroy" title="g_arg_info_get_destroy ()">g_arg_info_get_destroy</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection"><span class="returnvalue">GIDirection</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-direction" title="g_arg_info_get_direction ()">g_arg_info_get_direction</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-DIRECTION-IN:CAPS"></a><span class="term"><code class="literal">GI_DIRECTION_IN</code></span></p></td>
+<td>in argument.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-ownership-transfer" title="g_arg_info_get_ownership_transfer ()">g_arg_info_get_ownership_transfer</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-DIRECTION-OUT:CAPS"></a><span class="term"><code class="literal">GI_DIRECTION_OUT</code></span></p></td>
+<td>out argument.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="returnvalue">GIScopeType</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-scope" title="g_arg_info_get_scope ()">g_arg_info_get_scope</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-DIRECTION-INOUT:CAPS"></a><span class="term"><code class="literal">GI_DIRECTION_INOUT</code></span></p></td>
+<td>in and out argument.
 </td>
 </tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIScopeType"></a><h3>enum GIScopeType</h3>
+<pre class="programlisting">typedef enum {
+  GI_SCOPE_TYPE_INVALID,
+  GI_SCOPE_TYPE_CALL,
+  GI_SCOPE_TYPE_ASYNC,
+  GI_SCOPE_TYPE_NOTIFIED
+} GIScopeType;
+</pre>
+<p>
+Scope type of a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> representing callback, determines how the
+callback is invoked and is used to decided when the invoke structs
+can be freed.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-get-type" title="g_arg_info_get_type ()">g_arg_info_get_type</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-SCOPE-TYPE-INVALID:CAPS"></a><span class="term"><code class="literal">GI_SCOPE_TYPE_INVALID</code></span></p></td>
+<td>The argument is not of callback type.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-load-type" title="g_arg_info_load_type ()">g_arg_info_load_type</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-SCOPE-TYPE-CALL:CAPS"></a><span class="term"><code class="literal">GI_SCOPE_TYPE_CALL</code></span></p></td>
+<td>The callback and associated user_data is only
+used during the call to this function.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-may-be-null" title="g_arg_info_may_be_null ()">g_arg_info_may_be_null</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-SCOPE-TYPE-ASYNC:CAPS"></a><span class="term"><code class="literal">GI_SCOPE_TYPE_ASYNC</code></span></p></td>
+<td>The callback and associated user_data is
+only used until the callback is invoked, and the callback.
+is invoked always exactly once.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-caller-allocates" title="g_arg_info_is_caller_allocates ()">g_arg_info_is_caller_allocates</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-SCOPE-TYPE-NOTIFIED:CAPS"></a><span class="term"><code class="literal">GI_SCOPE_TYPE_NOTIFIED</code></span></p></td>
+<td>The callback and and associated
+user_data is used until the caller is notfied via the destroy_notify.
 </td>
 </tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GITransfer"></a><h3>enum GITransfer</h3>
+<pre class="programlisting">typedef enum {
+  GI_TRANSFER_NOTHING,
+  GI_TRANSFER_CONTAINER,
+  GI_TRANSFER_EVERYTHING
+} GITransfer;
+</pre>
+<p>
+The transfer is the exchange of data between two parts, from the callee to
+the caller. The callee is either a function/method/signal or an
+object/interface where a property is defined. The caller is the side
+accessing a property or calling a function.
+<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> specifies who's responsible for freeing the resources after the
+ownership transfer is complete. In case of a containing type such as a list,
+an array or a hash table the container itself is specified differently from
+the items within the container itself. Each container is freed differently,
+check the documentation for the types themselves for information on how to
+free them.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-optional" title="g_arg_info_is_optional ()">g_arg_info_is_optional</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-TRANSFER-NOTHING:CAPS"></a><span class="term"><code class="literal">GI_TRANSFER_NOTHING</code></span></p></td>
+<td>transfer nothing from the callee (function or the type
+instance the property belongs to) to the caller. The callee retains the
+ownership of the transfer and the caller doesn't need to do anything to free
+up the resources of this transfer.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-return-value" title="g_arg_info_is_return_value ()">g_arg_info_is_return_value</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-TRANSFER-CONTAINER:CAPS"></a><span class="term"><code class="literal">GI_TRANSFER_CONTAINER</code></span></p></td>
+<td>transfer the container (list, array, hash table) from
+the callee to the caller. The callee retains the ownership of the individual
+items in the container and the caller has to free up the container resources
+(<code class="function">g_list_free()</code>/<code class="function">g_hash_table_destroy()</code> etc) of this transfer.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIArgInfo.html#g-arg-info-is-skip" title="g_arg_info_is_skip ()">g_arg_info_is_skip</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-TRANSFER-EVERYTHING:CAPS"></a><span class="term"><code class="literal">GI_TRANSFER_EVERYTHING</code></span></p></td>
+<td>transfer everything, eg the container and its
+contents from the callee to the caller. This is the case when the callee
+creates a copy of all the data it returns. The caller is responsible for
+cleaning up the container and item resources of this transfer.
 </td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIArgInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
+<hr>
+<div class="refsect2">
+<a name="g-arg-info-get-closure"></a><h3>g_arg_info_get_closure ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_arg_info_get_closure              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the index of the user data argument. This is only valid
+for arguments which are callbacks.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="name">
-<col class="description">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo">GIArgInfo</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection">GIDirection</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType">GIScopeType</a></td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer">GITransfer</a></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>index of the user data argument or -1 if there is none</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIArgInfo.description"></a><h2>Description</h2>
-<p>GIArgInfo represents an argument. An argument is always
-part of a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>.</p>
-<div class="refsect1">
-<a name="gi-giarginfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
-<pre class="synopsis">
-  <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
-   +----GIArgInfo
-</pre>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIArgInfo.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="GI-IS-ARG-INFO:CAPS"></a><h3>GI_IS_ARG_INFO()</h3>
-<pre class="programlisting">#define             GI_IS_ARG_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a GIArgInfo.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-get-closure"></a><h3>g_arg_info_get_closure ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_arg_info_get_closure (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the index of the user data argument. This is only valid
-for arguments which are callbacks.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-get-destroy"></a><h3>g_arg_info_get_destroy ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_arg_info_get_destroy              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtains the index of the <span class="type">GDestroyNotify</span> argument. This is only valid
+for arguments which are callbacks.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.3.6"></a><h4>Returns</h4>
-<p> index of the user data argument or -1 if there is none</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-arg-info-get-destroy"></a><h3>g_arg_info_get_destroy ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_arg_info_get_destroy (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtains the index of the <span class="type">GDestroyNotify</span> argument. This is only valid
-for arguments which are callbacks.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>index of the <span class="type">GDestroyNotify</span> argument or -1 if there is none</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.4.6"></a><h4>Returns</h4>
-<p> index of the <span class="type">GDestroyNotify</span> argument or -1 if there is none</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-get-direction"></a><h3>g_arg_info_get_direction ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection"><span class="returnvalue">GIDirection</span></a>
-g_arg_info_get_direction (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the direction of the argument. Check <a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection"><span class="type">GIDirection</span></a> for possible
-direction values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-get-direction"></a><h3>g_arg_info_get_direction ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection"><span class="returnvalue">GIDirection</span></a>         g_arg_info_get_direction            (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the direction of the argument. Check <a class="link" href="gi-GIArgInfo.html#GIDirection" title="enum GIDirection"><span class="type">GIDirection</span></a> for possible
+direction values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the direction</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.5.6"></a><h4>Returns</h4>
-<p> the direction</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-get-ownership-transfer"></a><h3>g_arg_info_get_ownership_transfer ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>
-g_arg_info_get_ownership_transfer (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the ownership transfer for this argument.
-<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> contains a list of possible values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-get-ownership-transfer"></a><h3>g_arg_info_get_ownership_transfer ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>          g_arg_info_get_ownership_transfer   (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the ownership transfer for this argument.
+<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> contains a list of possible values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the transfer</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.6.6"></a><h4>Returns</h4>
-<p> the transfer</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-get-scope"></a><h3>g_arg_info_get_scope ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="returnvalue">GIScopeType</span></a>
-g_arg_info_get_scope (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the scope type for this argument. The scope type explains
+<a name="g-arg-info-get-scope"></a><h3>g_arg_info_get_scope ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="returnvalue">GIScopeType</span></a>         g_arg_info_get_scope                (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the scope type for this argument. The scope type explains
 how a callback is going to be invoked, most importantly when
 the resources required to invoke it can be freed.
-<a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="type">GIScopeType</span></a> contains a list of possible values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="type">GIScopeType</span></a> contains a list of possible values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the scope type</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.7.6"></a><h4>Returns</h4>
-<p> the scope type</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-get-type"></a><h3>g_arg_info_get_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_arg_info_get_type (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type information for <em class="parameter"><code>info</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-get-type"></a><h3>g_arg_info_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_arg_info_get_type                 (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type information for <em class="parameter"><code>info</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> holding the type
+information for <em class="parameter"><code>info</code></em>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> holding the type
-information for <em class="parameter"><code>info</code></em>
-, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-load-type"></a><h3>g_arg_info_load_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_arg_info_load_type (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>,
-                      <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);</pre>
-<p>Obtain information about a the type of given argument <em class="parameter"><code>info</code></em>
-; this
-function is a variant of <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-type" title="g_arg_info_get_type ()"><code class="function">g_arg_info_get_type()</code></a> designed for stack
-allocation.</p>
-<p>The initialized <em class="parameter"><code>type</code></em>
- must not be referenced after <em class="parameter"><code>info</code></em>
- is deallocated.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.9.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-load-type"></a><h3>g_arg_info_load_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_arg_info_load_type                (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);</pre>
+<p>
+Obtain information about a the type of given argument <em class="parameter"><code>info</code></em>; this
+function is a variant of <a class="link" href="gi-GIArgInfo.html#g-arg-info-get-type" title="g_arg_info_get_type ()"><code class="function">g_arg_info_get_type()</code></a> designed for stack
+allocation.
+</p>
+<p>
+The initialized <em class="parameter"><code>type</code></em> must not be referenced after <em class="parameter"><code>info</code></em> is deallocated.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p> Initialized with information about type of <em class="parameter"><code>info</code></em>
-. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>Initialized with information about type of <em class="parameter"><code>info</code></em>. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-may-be-null"></a><h3>g_arg_info_may_be_null ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_arg_info_may_be_null (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the type of the argument includes the possibility of <code class="literal">NULL</code>.
+<a name="g-arg-info-may-be-null"></a><h3>g_arg_info_may_be_null ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_arg_info_may_be_null              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the type of the argument includes the possibility of <code class="literal">NULL</code>.
 For 'in' values this means that <code class="literal">NULL</code> is a valid value.  For 'out'
-values, this means that <code class="literal">NULL</code> may be returned.</p>
-<p>See also <a class="link" href="gi-GIArgInfo.html#g-arg-info-is-optional" title="g_arg_info_is_optional ()"><code class="function">g_arg_info_is_optional()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.10.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+values, this means that <code class="literal">NULL</code> may be returned.
+</p>
+<p>
+See also <a class="link" href="gi-GIArgInfo.html#g-arg-info-is-optional" title="g_arg_info_is_optional ()"><code class="function">g_arg_info_is_optional()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if the value may be <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.10.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if the value may be <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-arg-info-is-caller-allocates"></a><h3>g_arg_info_is_caller_allocates ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_arg_info_is_caller_allocates (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the argument is a pointer to a struct or object that will
+<a name="g-arg-info-is-caller-allocates"></a><h3>g_arg_info_is_caller_allocates ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_arg_info_is_caller_allocates      (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the argument is a pointer to a struct or object that will
 receive an output of a function.  The default assumption for
 <a class="link" href="gi-GIArgInfo.html#GI-DIRECTION-OUT:CAPS"><code class="literal">GI_DIRECTION_OUT</code></a> arguments which have allocation is that the
-callee allocates; if this is <code class="literal">TRUE</code>, then the caller must allocate.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.11.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if caller is required to have allocated the argument</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-arg-info-is-optional"></a><h3>g_arg_info_is_optional ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_arg_info_is_optional (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the argument is optional.  For 'out' arguments this means
-that you can pass <code class="literal">NULL</code> in order to ignore the result.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+callee allocates; if this is <code class="literal">TRUE</code>, then the caller must allocate.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.12.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if it is an optional argument</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-arg-info-is-return-value"></a><h3>g_arg_info_is_return_value ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_arg_info_is_return_value (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the argument is a return value. It can either be a
-parameter or a return value.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.13.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.13.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if it is a return value</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-arg-info-is-skip"></a><h3>g_arg_info_is_skip ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_arg_info_is_skip (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if an argument is only useful in C.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.14.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if caller is required to have allocated the argument</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.17.6.14.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if argument is only useful in C.</p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-29-0.html#api-index-1.29.0">1.29.0</a></p>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIArgInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIArgInfo"></a><h3>GIArgInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIArgInfo;
-</pre>
-<p>Represents an argument.</p>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIDirection"></a><h3>enum GIDirection</h3>
-<p>The direction of a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.7.3.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-is-optional"></a><h3>g_arg_info_is_optional ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_arg_info_is_optional              (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the argument is optional.  For 'out' arguments this means
+that you can pass <code class="literal">NULL</code> in order to ignore the result.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-DIRECTION-IN:CAPS"></a>GI_DIRECTION_IN</p></td>
-<td class="enum_member_description">
-<p>in argument.</p>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-DIRECTION-OUT:CAPS"></a>GI_DIRECTION_OUT</p></td>
-<td class="enum_member_description">
-<p>out argument.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-DIRECTION-INOUT:CAPS"></a>GI_DIRECTION_INOUT</p></td>
-<td class="enum_member_description">
-<p>in and out argument.</p>
-</td>
-<td class="enum_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if it is an optional argument</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIScopeType"></a><h3>enum GIScopeType</h3>
-<p>Scope type of a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> representing callback, determines how the
-callback is invoked and is used to decided when the invoke structs
-can be freed.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.7.4.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-is-return-value"></a><h3>g_arg_info_is_return_value ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_arg_info_is_return_value          (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the argument is a return value. It can either be a
+parameter or a return value.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-SCOPE-TYPE-INVALID:CAPS"></a>GI_SCOPE_TYPE_INVALID</p></td>
-<td class="enum_member_description">
-<p>The argument is not of callback type.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-SCOPE-TYPE-CALL:CAPS"></a>GI_SCOPE_TYPE_CALL</p></td>
-<td class="enum_member_description">
-<p>The callback and associated user_data is only
-used during the call to this function.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-SCOPE-TYPE-ASYNC:CAPS"></a>GI_SCOPE_TYPE_ASYNC</p></td>
-<td class="enum_member_description">
-<p>The callback and associated user_data is
-only used until the callback is invoked, and the callback.
-is invoked always exactly once.</p>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-SCOPE-TYPE-NOTIFIED:CAPS"></a>GI_SCOPE_TYPE_NOTIFIED</p></td>
-<td class="enum_member_description">
-<p>The callback and and associated
-user_data is used until the caller is notfied via the destroy_notify.</p>
-</td>
-<td class="enum_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if it is a return value</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GITransfer"></a><h3>enum GITransfer</h3>
-<p>The transfer is the exchange of data between two parts, from the callee to
-the caller. The callee is either a function/method/signal or an
-object/interface where a property is defined. The caller is the side
-accessing a property or calling a function.
-<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> specifies who's responsible for freeing the resources after the
-ownership transfer is complete. In case of a containing type such as a list,
-an array or a hash table the container itself is specified differently from
-the items within the container itself. Each container is freed differently,
-check the documentation for the types themselves for information on how to
-free them.</p>
-<div class="refsect3">
-<a name="id-1.4.2.17.7.5.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-arg-info-is-skip"></a><h3>g_arg_info_is_skip ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_arg_info_is_skip                  (<em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if an argument is only useful in C.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TRANSFER-NOTHING:CAPS"></a>GI_TRANSFER_NOTHING</p></td>
-<td class="enum_member_description">
-<p>transfer nothing from the callee (function or the type
-instance the property belongs to) to the caller. The callee retains the
-ownership of the transfer and the caller doesn't need to do anything to free
-up the resources of this transfer.</p>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TRANSFER-CONTAINER:CAPS"></a>GI_TRANSFER_CONTAINER</p></td>
-<td class="enum_member_description">
-<p>transfer the container (list, array, hash table) from
-the callee to the caller. The callee retains the ownership of the individual
-items in the container and the caller has to free up the container resources
-(<code class="function">g_list_free()</code>/<code class="function">g_hash_table_destroy()</code> etc) of this transfer.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-TRANSFER-EVERYTHING:CAPS"></a>GI_TRANSFER_EVERYTHING</p></td>
-<td class="enum_member_description">
-<p>transfer everything, eg the container and its
-contents from the callee to the caller. This is the case when the callee
-creates a copy of all the data it returns. The caller is responsible for
-cleaning up the container and item resources of this transfer.</p>
-</td>
-<td class="enum_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if argument is only useful in C.</td>
 </tr>
 </tbody>
 </table></div>
-</div>
+<p class="since">Since 1.29.0</p>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 216affd..8aa8e06 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIBaseInfo: GObject Introspection Reference Manual</title>
+<title>GIBaseInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-common-types.html" title="common types">
 <link rel="next" href="gi-GICallableInfo.html" title="GICallableInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIBaseInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-common-types.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GICallableInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-common-types.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GICallableInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIBaseInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIBaseInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIBaseInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIBaseInfo.top_of_page"></a>GIBaseInfo</span></h2>
 <p>GIBaseInfo â€” Base struct for all GITypelib structs</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIBaseInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">enum                <a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType">GIInfoType</a>;
+                    <a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter">GIAttributeIter</a>;
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="gi-GIBaseInfo.html#g-info-new" title="g_info_new ()">g_info_new</a>                          (<em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> type</code></em>,
+                                                         <em class="parameter"><code><span class="type">GIBaseInfo</span> *container</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">guint32</span> offset</code></em>);
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="gi-GIBaseInfo.html#g-base-info-ref" title="g_base_info_ref ()">g_base_info_ref</a>                     (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()">g_base_info_unref</a>                   (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIBaseInfo.html#g-base-info-equal" title="g_base_info_equal ()">g_base_info_equal</a>                   (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info1</code></em>,
+                                                         <em class="parameter"><code><span class="type">GIBaseInfo</span> *info2</code></em>);
+<a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="returnvalue">GIInfoType</span></a>          <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-type" title="g_base_info_get_type ()">g_base_info_get_type</a>                (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-typelib" title="g_base_info_get_typelib ()">g_base_info_get_typelib</a>             (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-namespace" title="g_base_info_get_namespace ()">g_base_info_get_namespace</a>           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-name" title="g_base_info_get_name ()">g_base_info_get_name</a>                (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-attribute" title="g_base_info_get_attribute ()">g_base_info_get_attribute</a>           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()">g_base_info_iterate_attributes</a>      (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **name</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **value</code></em>);
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-container" title="g_base_info_get_container ()">g_base_info_get_container</a>           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIBaseInfo.html#g-base-info-is-deprecated" title="g_base_info_is_deprecated ()">g_base_info_is_deprecated</a>           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);
+</pre>
+</div>
 <div class="refsect1">
-<a name="gi-GIBaseInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-GIBaseInfo.description"></a><h2>Description</h2>
+<p>
+GIBaseInfo is the common base struct of all other *Info structs
+accessible through the <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> API.
+All other structs can be casted to a <span class="type">GIBaseInfo</span>, for instance:
+</p>
+<div class="example">
+<a name="id-1.4.2.5.4.2.3"></a><p class="title"><b>Example 1. Casting a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> to <span class="type">GIBaseInfo</span></b></p>
+<div class="example-contents">
+  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
+    <tbody>
+      <tr>
+        <td class="listing_lines" align="right"><pre>1
+2</pre></td>
+        <td class="listing_code"><pre class="programlisting"><span class="usertype">GIFunctionInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">function_info </span><span class="symbol">=</span><span class="normal"> </span><span class="symbol">...;</span>
+<span class="usertype">GIBaseInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">info </span><span class="symbol">=</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">GIBaseInfo</span><span class="symbol">*)</span><span class="normal">function_info</span><span class="symbol">;</span></pre></td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+</div>
+<p><br class="example-break">
+Most <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> APIs returning a <span class="type">GIBaseInfo</span> is actually creating a new struct, in other
+words, <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> has to be called when done accessing the data.
+GIBaseInfos are normally accessed by calling either
+<a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()"><code class="function">g_irepository_find_by_name()</code></a>, <a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()"><code class="function">g_irepository_find_by_gtype()</code></a> or <a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()"><code class="function">g_irepository_get_info()</code></a>.
+</p>
+<p>
+</p>
+<div class="example">
+<a name="id-1.4.2.5.4.3.1"></a><p class="title"><b>Example 2. Getting the Button of the Gtk typelib</b></p>
+<div class="example-contents">
+  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
+    <tbody>
+      <tr>
+        <td class="listing_lines" align="right"><pre>1
+2
+3</pre></td>
+        <td class="listing_code"><pre class="programlisting"><span class="usertype">GIBaseInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">button_info </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GIRepository.html#g-irepository-find-by-name">g_irepository_find_by_name</a></span><span class="symbol">(</span><span class="normal">NULL</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Gtk"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Button"</span><span class="symbol">);</span>
+<span class="symbol">...</span><span class="normal"> </span><span class="usertype">use</span><span class="normal"> button_info </span><span class="symbol">...</span>
+<span class="function"><a href="gi-GIBaseInfo.html#g-base-info-unref">g_base_info_unref</a></span><span class="symbol">(</span><span class="normal">button_info</span><span class="symbol">);</span></pre></td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+</div>
+<p><br class="example-break">
+</p>
+<p>
+</p>
+<div class="refsect1">
+<a name="gi-gibaseinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
+<pre class="synopsis">
+  GIBaseInfo
+   +----<a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
+   +----<a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+   +----<a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
+   +----<a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
+   +----<a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
+   +----<a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
+   +----<a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+</pre>
+</div>
+<p>
+</p>
+</div>
+<div class="refsect1">
+<a name="gi-GIBaseInfo.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GIInfoType"></a><h3>enum GIInfoType</h3>
+<pre class="programlisting">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,         /*  5 */
+  GI_INFO_TYPE_FLAGS,
+  GI_INFO_TYPE_OBJECT,
+  GI_INFO_TYPE_INTERFACE,
+  GI_INFO_TYPE_CONSTANT,
+  GI_INFO_TYPE_INVALID_0,    /* 10 */
+  GI_INFO_TYPE_UNION,
+  GI_INFO_TYPE_VALUE,
+  GI_INFO_TYPE_SIGNAL,
+  GI_INFO_TYPE_VFUNC,
+  GI_INFO_TYPE_PROPERTY,     /* 15 */
+  GI_INFO_TYPE_FIELD,
+  GI_INFO_TYPE_ARG,
+  GI_INFO_TYPE_TYPE,
+  GI_INFO_TYPE_UNRESOLVED
+} GIInfoType;
+</pre>
+<p>
+The type of a GIBaseInfo struct.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-info-new" title="g_info_new ()">g_info_new</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-INFO-TYPE-INVALID:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_INVALID</code></span></p></td>
+<td>invalid type
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-ref" title="g_base_info_ref ()">g_base_info_ref</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-INFO-TYPE-FUNCTION:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_FUNCTION</code></span></p></td>
+<td>function, see <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()">g_base_info_unref</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-INFO-TYPE-CALLBACK:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_CALLBACK</code></span></p></td>
+<td>callback, see <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-equal" title="g_base_info_equal ()">g_base_info_equal</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-INFO-TYPE-STRUCT:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_STRUCT</code></span></p></td>
+<td>struct, see <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="returnvalue">GIInfoType</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-type" title="g_base_info_get_type ()">g_base_info_get_type</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-INFO-TYPE-BOXED:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_BOXED</code></span></p></td>
+<td>boxed, see <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-typelib" title="g_base_info_get_typelib ()">g_base_info_get_typelib</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-INFO-TYPE-ENUM:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_ENUM</code></span></p></td>
+<td>enum, see <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
+<td><p><a name="GI-INFO-TYPE-FLAGS:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_FLAGS</code></span></p></td>
+<td>flags, see <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
 </td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-namespace" title="g_base_info_get_namespace ()">g_base_info_get_namespace</a> <span class="c_punctuation">()</span>
+</tr>
+<tr>
+<td><p><a name="GI-INFO-TYPE-OBJECT:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_OBJECT</code></span></p></td>
+<td>object, see <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
+<td><p><a name="GI-INFO-TYPE-INTERFACE:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_INTERFACE</code></span></p></td>
+<td>interface, see <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
 </td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-name" title="g_base_info_get_name ()">g_base_info_get_name</a> <span class="c_punctuation">()</span>
+</tr>
+<tr>
+<td><p><a name="GI-INFO-TYPE-CONSTANT:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_CONSTANT</code></span></p></td>
+<td>contant, see <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
+<td><p><a name="GI-INFO-TYPE-INVALID-0:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_INVALID_0</code></span></p></td>
+<td>deleted, used to be GI_INFO_TYPE_ERROR_DOMAIN.
 </td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-attribute" title="g_base_info_get_attribute ()">g_base_info_get_attribute</a> <span class="c_punctuation">()</span>
+</tr>
+<tr>
+<td><p><a name="GI-INFO-TYPE-UNION:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_UNION</code></span></p></td>
+<td>union, see <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
+<td><p><a name="GI-INFO-TYPE-VALUE:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_VALUE</code></span></p></td>
+<td>enum value, see <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a>
 </td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()">g_base_info_iterate_attributes</a> <span class="c_punctuation">()</span>
+</tr>
+<tr>
+<td><p><a name="GI-INFO-TYPE-SIGNAL:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_SIGNAL</code></span></p></td>
+<td>signal, see <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
+<td><p><a name="GI-INFO-TYPE-VFUNC:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_VFUNC</code></span></p></td>
+<td>virtual function, see <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>
 </td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-get-container" title="g_base_info_get_container ()">g_base_info_get_container</a> <span class="c_punctuation">()</span>
+</tr>
+<tr>
+<td><p><a name="GI-INFO-TYPE-PROPERTY:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_PROPERTY</code></span></p></td>
+<td>GObject property, see <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
+<td><p><a name="GI-INFO-TYPE-FIELD:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_FIELD</code></span></p></td>
+<td>struct or union field, see <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
 </td>
-<td class="function_name">
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-is-deprecated" title="g_base_info_is_deprecated ()">g_base_info_is_deprecated</a> <span class="c_punctuation">()</span>
+</tr>
+<tr>
+<td><p><a name="GI-INFO-TYPE-ARG:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_ARG</code></span></p></td>
+<td>argument of a function or callback, see <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>
 </td>
 </tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIBaseInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
 <tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType">GIInfoType</a></td>
+<td><p><a name="GI-INFO-TYPE-TYPE:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_TYPE</code></span></p></td>
+<td>type information, see <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter">GIAttributeIter</a></td>
+<td><p><a name="GI-INFO-TYPE-UNRESOLVED:CAPS"></a><span class="term"><code class="literal">GI_INFO_TYPE_UNRESOLVED</code></span></p></td>
+<td>unresolved type, a type which is not present in
+  the typelib, or any of its dependencies.
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIBaseInfo.description"></a><h2>Description</h2>
-<p>GIBaseInfo is the common base struct of all other *Info structs
-accessible through the <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> API.
-All other structs can be casted to a <span class="type">GIBaseInfo</span>, for instance:</p>
-<div class="example">
-<a name="id-1.4.2.5.5.3"></a><p class="title"><b>Example 1. Casting a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> to <span class="type">GIBaseInfo</span></b></p>
-<div class="example-contents">
-  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
-    <tbody>
-      <tr>
-        <td class="listing_lines" align="right"><pre>1
-2</pre></td>
-        <td class="listing_code"><pre class="programlisting"><span class="usertype">GIFunctionInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">function_info </span><span class="symbol">=</span><span class="normal"> </span><span class="symbol">...;</span>
-<span class="usertype">GIBaseInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">info </span><span class="symbol">=</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">GIBaseInfo</span><span class="symbol">*)</span><span class="normal">function_info</span><span class="symbol">;</span></pre></td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-</div>
-<br class="example-break"><p>Most <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> APIs returning a <span class="type">GIBaseInfo</span> is actually creating a new struct, in other
-words, <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> has to be called when done accessing the data.
-GIBaseInfos are normally accessed by calling either
-<a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()"><code class="function">g_irepository_find_by_name()</code></a>, <a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()"><code class="function">g_irepository_find_by_gtype()</code></a> or <a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()"><code class="function">g_irepository_get_info()</code></a>.</p>
-<div class="example">
-<a name="id-1.4.2.5.5.5"></a><p class="title"><b>Example 2. Getting the Button of the Gtk typelib</b></p>
-<div class="example-contents">
-  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
-    <tbody>
-      <tr>
-        <td class="listing_lines" align="right"><pre>1
-2
-3</pre></td>
-        <td class="listing_code"><pre class="programlisting"><span class="usertype">GIBaseInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">button_info </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GIRepository.html#g-irepository-find-by-name">g_irepository_find_by_name</a></span><span class="symbol">(</span><span class="normal">NULL</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Gtk"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Button"</span><span class="symbol">);</span>
-<span class="symbol">...</span><span class="normal"> </span><span class="usertype">use</span><span class="normal"> button_info </span><span class="symbol">...</span>
-<span class="function"><a href="gi-GIBaseInfo.html#g-base-info-unref">g_base_info_unref</a></span><span class="symbol">(</span><span class="normal">button_info</span><span class="symbol">);</span></pre></td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-</div>
-<br class="example-break"><div class="refsect1">
-<a name="gi-gibaseinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
-<pre class="synopsis">
-  GIBaseInfo
-   +----<a class="link" href="gi-GIArgInfo.html" title="GIArgInfo">GIArgInfo</a>
-   +----<a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
-   +----<a class="link" href="gi-GIConstantInfo.html" title="GIConstantInfo">GIConstantInfo</a>
-   +----<a class="link" href="gi-GIFieldInfo.html" title="GIFieldInfo">GIFieldInfo</a>
-   +----<a class="link" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">GIPropertyInfo</a>
-   +----<a class="link" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>
-   +----<a class="link" href="gi-GITypeInfo.html" title="GITypeInfo">GITypeInfo</a>
+<hr>
+<div class="refsect2">
+<a name="GIAttributeIter"></a><h3>GIAttributeIter</h3>
+<pre class="programlisting">typedef struct {
+} GIAttributeIter;
 </pre>
+<p>
+An opaque structure used to iterate over attributes
+in a <span class="type">GIBaseInfo</span> struct.
+</p>
 </div>
-</div>
-<div class="refsect1">
-<a name="gi-GIBaseInfo.functions_details"></a><h2>Functions</h2>
+<hr>
 <div class="refsect2">
-<a name="g-info-new"></a><h3>g_info_new ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_info_new (<em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> type</code></em>,
-            <em class="parameter"><code><span class="type">GIBaseInfo</span> *container</code></em>,
-            <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-            <em class="parameter"><code><span class="type">guint32</span> offset</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-info-new"></a><h3>g_info_new ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_info_new                          (<em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> type</code></em>,
+                                                         <em class="parameter"><code><span class="type">GIBaseInfo</span> *container</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">guint32</span> offset</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>container</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>container</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>offset</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.2.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-ref"></a><h3>g_base_info_ref ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_base_info_ref (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Increases the reference count of <em class="parameter"><code>info</code></em>
-.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.3.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-ref"></a><h3>g_base_info_ref ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_base_info_ref                     (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Increases the reference count of <em class="parameter"><code>info</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the same <em class="parameter"><code>info</code></em>.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.3.7"></a><h4>Returns</h4>
-<p> the same <em class="parameter"><code>info</code></em>
-.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-unref"></a><h3>g_base_info_unref ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_base_info_unref (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Decreases the reference count of <em class="parameter"><code>info</code></em>
-. When its reference count
-drops to 0, the info is freed.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.4.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-unref"></a><h3>g_base_info_unref ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_base_info_unref                   (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Decreases the reference count of <em class="parameter"><code>info</code></em>. When its reference count
+drops to 0, the info is freed.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
 </tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-equal"></a><h3>g_base_info_equal ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_base_info_equal (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info1</code></em>,
-                   <em class="parameter"><code><span class="type">GIBaseInfo</span> *info2</code></em>);</pre>
-<p>Compare two <span class="type">GIBaseInfo</span>.</p>
-<p>Using pointer comparison is not practical since many functions return
+<a name="g-base-info-equal"></a><h3>g_base_info_equal ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_base_info_equal                   (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info1</code></em>,
+                                                         <em class="parameter"><code><span class="type">GIBaseInfo</span> *info2</code></em>);</pre>
+<p>
+Compare two <span class="type">GIBaseInfo</span>.
+</p>
+<p>
+Using pointer comparison is not practical since many functions return
 different instances of <span class="type">GIBaseInfo</span> that refers to the same part of the
-TypeLib; use this function instead to do <span class="type">GIBaseInfo</span> comparisons.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.5.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+TypeLib; use this function instead to do <span class="type">GIBaseInfo</span> comparisons.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info1</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info1</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info2</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>info2</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if and only if <em class="parameter"><code>info1</code></em> equals <em class="parameter"><code>info2</code></em>.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.5.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if and only if <em class="parameter"><code>info1</code></em>
-equals <em class="parameter"><code>info2</code></em>
-.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-get-type"></a><h3>g_base_info_get_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="returnvalue">GIInfoType</span></a>
-g_base_info_get_type (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Obtain the info type of the GIBaseInfo.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-get-type"></a><h3>g_base_info_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="returnvalue">GIInfoType</span></a>          g_base_info_get_type                (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Obtain the info type of the GIBaseInfo.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the info type of <em class="parameter"><code>info</code></em>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.6.6"></a><h4>Returns</h4>
-<p> the info type of <em class="parameter"><code>info</code></em>
-</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-get-typelib"></a><h3>g_base_info_get_typelib ()</h3>
-<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-g_base_info_get_typelib (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Obtain the typelib this <em class="parameter"><code>info</code></em>
- belongs to</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-get-typelib"></a><h3>g_base_info_get_typelib ()</h3>
+<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         g_base_info_get_typelib             (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Obtain the typelib this <em class="parameter"><code>info</code></em> belongs to
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the typelib. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.7.6"></a><h4>Returns</h4>
-<p> the typelib. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-get-namespace"></a><h3>g_base_info_get_namespace ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_base_info_get_namespace (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Obtain the namespace of <em class="parameter"><code>info</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-get-namespace"></a><h3>g_base_info_get_namespace ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_base_info_get_namespace           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Obtain the namespace of <em class="parameter"><code>info</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the namespace</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.8.6"></a><h4>Returns</h4>
-<p> the namespace</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-get-name"></a><h3>g_base_info_get_name ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_base_info_get_name (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Obtain the name of the <em class="parameter"><code>info</code></em>
-. What the name represents depends on
-the <a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> of the <em class="parameter"><code>info</code></em>
-. For instance for <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> it is
-the name of the function.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-get-name"></a><h3>g_base_info_get_name ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_base_info_get_name                (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Obtain the name of the <em class="parameter"><code>info</code></em>. What the name represents depends on
+the <a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> of the <em class="parameter"><code>info</code></em>. For instance for <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> it is
+the name of the function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the name of <em class="parameter"><code>info</code></em> or <code class="literal">NULL</code> if it lacks a name.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.9.6"></a><h4>Returns</h4>
-<p> the name of <em class="parameter"><code>info</code></em>
-or <code class="literal">NULL</code> if it lacks a name.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-get-attribute"></a><h3>g_base_info_get_attribute ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_base_info_get_attribute (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>,
-                           <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Retrieve an arbitrary attribute associated with this node.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-base-info-get-attribute"></a><h3>g_base_info_get_attribute ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_base_info_get_attribute           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Retrieve an arbitrary attribute associated with this node.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>a freeform string naming an attribute</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>a freeform string naming an attribute</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>The value of the attribute, or <code class="literal">NULL</code> if no such attribute exists</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.10.6"></a><h4>Returns</h4>
-<p> The value of the attribute, or <code class="literal">NULL</code> if no such attribute exists</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-iterate-attributes"></a><h3>g_base_info_iterate_attributes ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_base_info_iterate_attributes (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>,
-                                <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
-                                <em class="parameter"><code><span class="type">char</span> **name</code></em>,
-                                <em class="parameter"><code><span class="type">char</span> **value</code></em>);</pre>
-<p>Iterate over all attributes associated with this node.  The iterator
+<a name="g-base-info-iterate-attributes"></a><h3>g_base_info_iterate_attributes ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_base_info_iterate_attributes      (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **name</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **value</code></em>);</pre>
+<p>
+Iterate over all attributes associated with this node.  The iterator
 structure is typically stack allocated, and must have its first
 member initialized to <code class="literal">NULL</code>.  Attributes are arbitrary namespaced key–value
 pairs which can be attached to almost any item.  They are intended for use
 by software higher in the toolchain than bindings, and are distinct from
-normal GIR annotations.</p>
-<p>Both the <em class="parameter"><code>name</code></em>
- and <em class="parameter"><code>value</code></em>
- should be treated as constants
-and must not be freed.</p>
+normal GIR annotations.
+</p>
+<p>
+Both the <em class="parameter"><code>name</code></em> and <em class="parameter"><code>value</code></em> should be treated as constants
+and must not be freed.
+</p>
+<p>
+</p>
 <div class="example">
-<a name="id-1.4.2.5.6.11.6"></a><p class="title"><b>Example 3. Iterating over attributes</b></p>
+<a name="id-1.4.2.5.5.13.6.1"></a><p class="title"><b>Example 3. Iterating over attributes</b></p>
 <div class="example-contents">
   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
     <tbody>
@@ -550,273 +591,100 @@ and must not be freed.</p>
 </div>
 
 </div>
-<br class="example-break"><div class="refsect3">
-<a name="id-1.4.2.5.6.11.7"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p><br class="example-break">
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>iterator</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> structure, must be initialized; see below</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>iterator</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> structure, must be initialized; see below</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> Returned name, must not be freed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>Returned name, must not be freed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>Returned name, must not be freed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> Returned name, must not be freed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if there are more attributes</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.11.8"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if there are more attributes</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-base-info-get-container"></a><h3>g_base_info_get_container ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_base_info_get_container (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Obtain the container of the <em class="parameter"><code>info</code></em>
-. The container is the parent
+<a name="g-base-info-get-container"></a><h3>g_base_info_get_container ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_base_info_get_container           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Obtain the container of the <em class="parameter"><code>info</code></em>. The container is the parent
 GIBaseInfo. For instance, the parent of a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> is an
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.12.6"></a><h4>Returns</h4>
-<p> the container. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-base-info-is-deprecated"></a><h3>g_base_info_is_deprecated ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_base_info_is_deprecated (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
-<p>Obtain whether the <em class="parameter"><code>info</code></em>
- is represents a metadata which is
-deprecated or not.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.13.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <span class="type">GIBaseInfo</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.5.6.13.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if deprecated</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIBaseInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIInfoType"></a><h3>enum GIInfoType</h3>
-<p>The type of a GIBaseInfo struct.</p>
-<div class="refsect3">
-<a name="id-1.4.2.5.7.2.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-INVALID:CAPS"></a>GI_INFO_TYPE_INVALID</p></td>
-<td class="enum_member_description">
-<p>invalid type</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-FUNCTION:CAPS"></a>GI_INFO_TYPE_FUNCTION</p></td>
-<td class="enum_member_description">
-<p>function, see <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-CALLBACK:CAPS"></a>GI_INFO_TYPE_CALLBACK</p></td>
-<td class="enum_member_description">
-<p>callback, see <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-STRUCT:CAPS"></a>GI_INFO_TYPE_STRUCT</p></td>
-<td class="enum_member_description">
-<p>struct, see <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-BOXED:CAPS"></a>GI_INFO_TYPE_BOXED</p></td>
-<td class="enum_member_description">
-<p>boxed, see <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-ENUM:CAPS"></a>GI_INFO_TYPE_ENUM</p></td>
-<td class="enum_member_description">
-<p>enum, see <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-FLAGS:CAPS"></a>GI_INFO_TYPE_FLAGS</p></td>
-<td class="enum_member_description">
-<p>flags, see <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-OBJECT:CAPS"></a>GI_INFO_TYPE_OBJECT</p></td>
-<td class="enum_member_description">
-<p>object, see <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-INTERFACE:CAPS"></a>GI_INFO_TYPE_INTERFACE</p></td>
-<td class="enum_member_description">
-<p>interface, see <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-CONSTANT:CAPS"></a>GI_INFO_TYPE_CONSTANT</p></td>
-<td class="enum_member_description">
-<p>contant, see <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-INVALID-0:CAPS"></a>GI_INFO_TYPE_INVALID_0</p></td>
-<td class="enum_member_description">
-<p>deleted, used to be GI_INFO_TYPE_ERROR_DOMAIN.</p>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-UNION:CAPS"></a>GI_INFO_TYPE_UNION</p></td>
-<td class="enum_member_description">
-<p>union, see <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the container. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
 </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-VALUE:CAPS"></a>GI_INFO_TYPE_VALUE</p></td>
-<td class="enum_member_description">
-<p>enum value, see <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-SIGNAL:CAPS"></a>GI_INFO_TYPE_SIGNAL</p></td>
-<td class="enum_member_description">
-<p>signal, see <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-VFUNC:CAPS"></a>GI_INFO_TYPE_VFUNC</p></td>
-<td class="enum_member_description">
-<p>virtual function, see <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-PROPERTY:CAPS"></a>GI_INFO_TYPE_PROPERTY</p></td>
-<td class="enum_member_description">
-<p>GObject property, see <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-FIELD:CAPS"></a>GI_INFO_TYPE_FIELD</p></td>
-<td class="enum_member_description">
-<p>struct or union field, see <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-ARG:CAPS"></a>GI_INFO_TYPE_ARG</p></td>
-<td class="enum_member_description">
-<p>argument of a function or callback, see <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a></p>
-</td>
-<td class="enum_member_annotations"> </td>
 </tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-base-info-is-deprecated"></a><h3>g_base_info_is_deprecated ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_base_info_is_deprecated           (<em class="parameter"><code><span class="type">GIBaseInfo</span> *info</code></em>);</pre>
+<p>
+Obtain whether the <em class="parameter"><code>info</code></em> is represents a metadata which is
+deprecated or not.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-TYPE:CAPS"></a>GI_INFO_TYPE_TYPE</p></td>
-<td class="enum_member_description">
-<p>type information, see <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <span class="type">GIBaseInfo</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-INFO-TYPE-UNRESOLVED:CAPS"></a>GI_INFO_TYPE_UNRESOLVED</p></td>
-<td class="enum_member_description">
-<p>unresolved type, a type which is not present in
-  the typelib, or any of its dependencies.</p>
-</td>
-<td class="enum_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if deprecated</td>
 </tr>
 </tbody>
 </table></div>
 </div>
 </div>
-<hr>
-<div class="refsect2">
-<a name="GIAttributeIter"></a><h3>GIAttributeIter</h3>
-<pre class="programlisting">typedef struct {
-} GIAttributeIter;
-</pre>
-<p>An opaque structure used to iterate over attributes
-in a <span class="type">GIBaseInfo</span> struct.</p>
-</div>
-</div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 626b1dd..d046ecb 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GICallableInfo: GObject Introspection Reference Manual</title>
+<title>GICallableInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIBaseInfo.html" title="GIBaseInfo">
 <link rel="next" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GICallableInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIBaseInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIFunctionInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIBaseInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIFunctionInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GICallableInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GICallableInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GICallableInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GICallableInfo.top_of_page"></a>GICallableInfo</span></h2>
 <p>GICallableInfo â€” Struct representing a callable</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GICallableInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#GI-IS-CALLABLE-INFO:CAPS" title="GI_IS_CALLABLE_INFO()">GI_IS_CALLABLE_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()">g_callable_info_get_n_args</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="returnvalue">GIArgInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()">g_callable_info_get_arg</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-caller-owns" title="g_callable_info_get_caller_owns ()">g_callable_info_get_caller_owns</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-attribute" title="g_callable_info_get_return_attribute ()">g_callable_info_get_return_attribute</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()">g_callable_info_get_return_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-invoke" title="g_callable_info_invoke ()">g_callable_info_invoke</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes" title="g_callable_info_iterate_return_attributes ()">g_callable_info_iterate_return_attributes</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-load-arg" title="g_callable_info_load_arg ()">g_callable_info_load_arg</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-load-return-type" title="g_callable_info_load_return_type ()">g_callable_info_load_return_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-may-return-null" title="g_callable_info_may_return_null ()">g_callable_info_may_return_null</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GICallableInfo.html#g-callable-info-skip-return" title="g_callable_info_skip_return ()">g_callable_info_skip_return</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GICallableInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo">GICallableInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GICallableInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GICallableInfo.html#GI-IS-CALLABLE-INFO:CAPS" title="GI_IS_CALLABLE_INFO()">GI_IS_CALLABLE_INFO</a>                 (info)
+typedef             <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo">GICallableInfo</a>;
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a>    (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()">g_callable_info_get_n_args</a>          (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="returnvalue">GIArgInfo</span></a> *         <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()">g_callable_info_get_arg</a>             (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>          <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-caller-owns" title="g_callable_info_get_caller_owns ()">g_callable_info_get_caller_owns</a>     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-attribute" title="g_callable_info_get_return_attribute ()">g_callable_info_get_return_attribute</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()">g_callable_info_get_return_type</a>     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GICallableInfo.html#g-callable-info-invoke" title="g_callable_info_invoke ()">g_callable_info_invoke</a>              (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> function</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
+                                                         <em class="parameter"><code><span class="type">gboolean</span> is_method</code></em>,
+                                                         <em class="parameter"><code><span class="type">gboolean</span> throws</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a>           (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes" title="g_callable_info_iterate_return_attributes ()">g_callable_info_iterate_return_attributes</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **name</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **value</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-GICallableInfo.html#g-callable-info-load-arg" title="g_callable_info_load_arg ()">g_callable_info_load_arg</a>            (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *arg</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-GICallableInfo.html#g-callable-info-load-return-type" title="g_callable_info_load_return_type ()">g_callable_info_load_return_type</a>    (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GICallableInfo.html#g-callable-info-may-return-null" title="g_callable_info_may_return_null ()">g_callable_info_may_return_null</a>     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GICallableInfo.html#g-callable-info-skip-return" title="g_callable_info_skip_return ()">g_callable_info_skip_return</a>         (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GICallableInfo.description"></a><h2>Description</h2>
-<p>GICallableInfo represents an entity which is callable.
+<p>
+GICallableInfo represents an entity which is callable.
 Currently a function (<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>), virtual function,
-(<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>) or callback (<a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a>).</p>
-<p>A callable has a list of arguments (<a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>), a return type,
-direction and a flag which decides if it returns null.</p>
+(<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>) or callback (<a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a>).
+</p>
+<p>
+A callable has a list of arguments (<a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>), a return type,
+direction and a flag which decides if it returns null.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gicallableinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -181,519 +96,489 @@ direction and a flag which decides if it returns null.</p>
          +----<a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GICallableInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GICallableInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-CALLABLE-INFO:CAPS"></a><h3>GI_IS_CALLABLE_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_CALLABLE_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> or derived from it.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> or derived from it.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GICallableInfo"></a><h3>GICallableInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GICallableInfo;
+</pre>
+<p>
+Represents a callable, either <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, <a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a> or
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-can-throw-gerror"></a><h3>g_callable_info_can_throw_gerror ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_callable_info_can_throw_gerror (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-can-throw-gerror"></a><h3>g_callable_info_can_throw_gerror ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_callable_info_can_throw_gerror    (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if this <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> can throw a <span class="type">GError</span>
+</td>
+</tr>
+</tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.3.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if this <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> can throw a <span class="type">GError</span></p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-34.html#api-index-1.34">1.34</a></p>
+<p class="since">Since 1.34</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-get-n-args"></a><h3>g_callable_info_get_n_args ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_callable_info_get_n_args (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of arguments (both IN and OUT) for this callable.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-get-n-args"></a><h3>g_callable_info_get_n_args ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_callable_info_get_n_args          (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of arguments (both IN and OUT) for this callable.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>The number of arguments this callable expects.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.4.6"></a><h4>Returns</h4>
-<p> The number of arguments this callable expects.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-get-arg"></a><h3>g_callable_info_get_arg ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="returnvalue">GIArgInfo</span></a> *
-g_callable_info_get_arg (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain information about a particular argument of this callable.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-get-arg"></a><h3>g_callable_info_get_arg ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="returnvalue">GIArgInfo</span></a> *         g_callable_info_get_arg             (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain information about a particular argument of this callable.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>the argument index to fetch</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>the argument index to fetch</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.5.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-get-caller-owns"></a><h3>g_callable_info_get_caller_owns ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>
-g_callable_info_get_caller_owns (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>See whether the caller owns the return value of this callable.
-<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> contains a list of possible transfer values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-get-caller-owns"></a><h3>g_callable_info_get_caller_owns ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>          g_callable_info_get_caller_owns     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+See whether the caller owns the return value of this callable.
+<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> contains a list of possible transfer values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if the caller owns the return value, <code class="literal">FALSE</code> otherwise.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.6.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if the caller owns the return value, <code class="literal">FALSE</code> otherwise.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-get-return-attribute"></a><h3>g_callable_info_get_return_attribute ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_callable_info_get_return_attribute (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                                      <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Retrieve an arbitrary attribute associated with the return value.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-get-return-attribute"></a><h3>g_callable_info_get_return_attribute ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_callable_info_get_return_attribute
+                                                        (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Retrieve an arbitrary attribute associated with the return value.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>a freeform string naming an attribute</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>a freeform string naming an attribute</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>The value of the attribute, or <code class="literal">NULL</code> if no such attribute exists</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.7.6"></a><h4>Returns</h4>
-<p> The value of the attribute, or <code class="literal">NULL</code> if no such attribute exists</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-get-return-type"></a><h3>g_callable_info_get_return_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_callable_info_get_return_type (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the return type of a callable item as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-get-return-type"></a><h3>g_callable_info_get_return_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_callable_info_get_return_type     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the return type of a callable item as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-invoke"></a><h3>g_callable_info_invoke ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_callable_info_invoke (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                        <em class="parameter"><code><span class="type">gpointer</span> function</code></em>,
-                        <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
-                        <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
-                        <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
-                        <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
-                        <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
-                        <em class="parameter"><code><span class="type">gboolean</span> is_method</code></em>,
-                        <em class="parameter"><code><span class="type">gboolean</span> throws</code></em>,
-                        <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-invoke"></a><h3>g_callable_info_invoke ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_callable_info_invoke              (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> function</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
+                                                         <em class="parameter"><code><span class="type">gboolean</span> is_method</code></em>,
+                                                         <em class="parameter"><code><span class="type">gboolean</span> throws</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>function</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>function</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>in_args</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>in_args</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n_in_args</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_in_args</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>out_args</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>out_args</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n_out_args</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_out_args</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>return_value</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>return_value</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>is_method</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>is_method</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>throws</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>throws</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-is-method"></a><h3>g_callable_info_is_method ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_callable_info_is_method (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>Determines if the callable info is a method. For <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>s,
+<a name="g-callable-info-is-method"></a><h3>g_callable_info_is_method ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_callable_info_is_method           (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+Determines if the callable info is a method. For <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>s,
 <a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a>s, and <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>s,
 this is always true. Otherwise, this looks at the <a class="link" href="gi-GIFunctionInfo.html#GI-FUNCTION-IS-METHOD:CAPS"><code class="literal">GI_FUNCTION_IS_METHOD</code></a>
-flag on the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.</p>
-<p>Concretely, this function returns whether <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()"><code class="function">g_callable_info_get_n_args()</code></a>
+flag on the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
+</p>
+<p>
+Concretely, this function returns whether <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()"><code class="function">g_callable_info_get_n_args()</code></a>
 matches the number of arguments in the raw C method. For methods, there
 is one more C argument than is exposed by introspection: the "self"
-or "this" object.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.10.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+or "this" object.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if <em class="parameter"><code>info</code></em> is a method, <code class="literal">FALSE</code> otherwise</td>
+</tr>
+</tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.10.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if <em class="parameter"><code>info</code></em>
-is a method, <code class="literal">FALSE</code> otherwise</p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-34.html#api-index-1.34">1.34</a></p>
+<p class="since">Since 1.34</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-iterate-return-attributes"></a><h3>g_callable_info_iterate_return_attributes ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_callable_info_iterate_return_attributes
-                               (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                                <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
-                                <em class="parameter"><code><span class="type">char</span> **name</code></em>,
-                                <em class="parameter"><code><span class="type">char</span> **value</code></em>);</pre>
-<p>Iterate over all attributes associated with the return value.  The
+<a name="g-callable-info-iterate-return-attributes"></a><h3>g_callable_info_iterate_return_attributes ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_callable_info_iterate_return_attributes
+                                                        (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **name</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **value</code></em>);</pre>
+<p>
+Iterate over all attributes associated with the return value.  The
 iterator structure is typically stack allocated, and must have its
-first member initialized to <code class="literal">NULL</code>.</p>
-<p>Both the <em class="parameter"><code>name</code></em>
- and <em class="parameter"><code>value</code></em>
- should be treated as constants
-and must not be freed.</p>
-<p>See <a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()"><code class="function">g_base_info_iterate_attributes()</code></a> for an example of how to use a
-similar API.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.11.7"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+first member initialized to <code class="literal">NULL</code>.
+</p>
+<p>
+Both the <em class="parameter"><code>name</code></em> and <em class="parameter"><code>value</code></em> should be treated as constants
+and must not be freed.
+</p>
+<p>
+See <a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()"><code class="function">g_base_info_iterate_attributes()</code></a> for an example of how to use a
+similar API.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iterator</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> structure, must be initialized; see below</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>iterator</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> structure, must be initialized; see below</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>Returned name, must not be freed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p> Returned name, must not be freed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>Returned name, must not be freed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> Returned name, must not be freed. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if there are more attributes</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.11.8"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if there are more attributes</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-load-arg"></a><h3>g_callable_info_load_arg ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_callable_info_load_arg (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code><span class="type">gint</span> n</code></em>,
-                          <em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *arg</code></em>);</pre>
-<p>Obtain information about a particular argument of this callable; this
-function is a variant of <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()"><code class="function">g_callable_info_get_arg()</code></a> designed for stack
-allocation.</p>
-<p>The initialized <em class="parameter"><code>arg</code></em>
- must not be referenced after <em class="parameter"><code>info</code></em>
- is deallocated.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.12.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-load-arg"></a><h3>g_callable_info_load_arg ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_callable_info_load_arg            (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *arg</code></em>);</pre>
+<p>
+Obtain information about a particular argument of this callable; this
+function is a variant of <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()"><code class="function">g_callable_info_get_arg()</code></a> designed for stack
+allocation.
+</p>
+<p>
+The initialized <em class="parameter"><code>arg</code></em> must not be referenced after <em class="parameter"><code>info</code></em> is deallocated.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>the argument index to fetch</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>the argument index to fetch</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>arg</p></td>
-<td class="parameter_description"><p> Initialize with argument number <em class="parameter"><code>n</code></em>
-. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>arg</code></em> :</span></p></td>
+<td>Initialize with argument number <em class="parameter"><code>n</code></em>. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-load-return-type"></a><h3>g_callable_info_load_return_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_callable_info_load_return_type (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                                  <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);</pre>
-<p>Obtain information about a return value of callable; this
-function is a variant of <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()"><code class="function">g_callable_info_get_return_type()</code></a> designed for stack
-allocation.</p>
-<p>The initialized <em class="parameter"><code>type</code></em>
- must not be referenced after <em class="parameter"><code>info</code></em>
- is deallocated.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.13.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-load-return-type"></a><h3>g_callable_info_load_return_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_callable_info_load_return_type    (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);</pre>
+<p>
+Obtain information about a return value of callable; this
+function is a variant of <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()"><code class="function">g_callable_info_get_return_type()</code></a> designed for stack
+allocation.
+</p>
+<p>
+The initialized <em class="parameter"><code>type</code></em> must not be referenced after <em class="parameter"><code>info</code></em> is deallocated.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p> Initialized with return type of <em class="parameter"><code>info</code></em>
-. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>Initialized with return type of <em class="parameter"><code>info</code></em>. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-may-return-null"></a><h3>g_callable_info_may_return_null ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_callable_info_may_return_null (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>See if a callable could return <code class="literal">NULL</code>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.14.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-may-return-null"></a><h3>g_callable_info_may_return_null ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_callable_info_may_return_null     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+See if a callable could return <code class="literal">NULL</code>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if callable could return <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.14.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if callable could return <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-skip-return"></a><h3>g_callable_info_skip_return ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_callable_info_skip_return (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
-<p>See if a callable's return value is only useful in C.</p>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.15.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-skip-return"></a><h3>g_callable_info_skip_return ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_callable_info_skip_return         (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
+<p>
+See if a callable's return value is only useful in C.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if return value is only useful in C.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.6.6.15.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if return value is only useful in C.</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GICallableInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GICallableInfo"></a><h3>GICallableInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GICallableInfo;
-</pre>
-<p>Represents a callable, either <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, <a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a> or
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index ac74e2c..fd54f8e 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GICallbackInfo: GObject Introspection Reference Manual</title>
+<title>GICallbackInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">
 <link rel="next" href="gi-GISignalInfo.html" title="GISignalInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GICallbackInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIFunctionInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GISignalInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIFunctionInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GISignalInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GICallbackInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GICallbackInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GICallbackInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GICallbackInfo.top_of_page"></a>GICallbackInfo</span></h2>
 <p>GICallbackInfo â€” Struct representing a callback</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GICallbackInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo">GICallbackInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GICallbackInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">typedef             <a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo">GICallbackInfo</a>;
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GICallbackInfo.description"></a><h2>Description</h2>
-<p>GICallbackInfo represents a callback.</p>
+<p>
+GICallbackInfo represents a callback.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gicallbackinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
          +----<a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GICallbackInfo.functions_details"></a><h2>Functions</h2>
-<p></p>
-</div>
-<div class="refsect1">
-<a name="gi-GICallbackInfo.other_details"></a><h2>Types and Values</h2>
+<a name="gi-GICallbackInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GICallbackInfo"></a><h3>GICallbackInfo</h3>
 <pre class="programlisting">typedef GIBaseInfo GICallbackInfo;
 </pre>
-<p>Represents a callback, eg arguments and return value.</p>
+<p>
+Represents a callback, eg arguments and return value.
+</p>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index e3f26a4..f887d9f 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIConstantInfo: GObject Introspection Reference Manual</title>
+<title>GIConstantInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIArgInfo.html" title="GIArgInfo">
 <link rel="next" href="gi-GIFieldInfo.html" title="GIFieldInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIConstantInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIArgInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIFieldInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIArgInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIFieldInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIConstantInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIConstantInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIConstantInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIConstantInfo.top_of_page"></a>GIConstantInfo</span></h2>
 <p>GIConstantInfo â€” Struct representing a constant</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIConstantInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIConstantInfo.html#GI-IS-CONSTANT-INFO:CAPS" title="GI_IS_CONSTANT_INFO()">GI_IS_CONSTANT_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()">g_constant_info_free_value</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-type" title="g_constant_info_get_type ()">g_constant_info_get_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()">g_constant_info_get_value</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIConstantInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo">GIConstantInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIConstantInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIConstantInfo.html#GI-IS-CONSTANT-INFO:CAPS" title="GI_IS_CONSTANT_INFO()">GI_IS_CONSTANT_INFO</a>                 (info)
+typedef             <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo">GIConstantInfo</a>;
+<span class="returnvalue">void</span>                <a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()">g_constant_info_free_value</a>          (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-type" title="g_constant_info_get_type ()">g_constant_info_get_type</a>            (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()">g_constant_info_get_value</a>           (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIConstantInfo.description"></a><h2>Description</h2>
-<p>GIConstantInfo represents a constant. A constant has a type associated
-which can be obtained by calling <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-type" title="g_constant_info_get_type ()"><code class="function">g_constant_info_get_type()</code></a> and a value,
-which can be obtained by calling <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()"><code class="function">g_constant_info_get_value()</code></a>.</p>
+<p>
+GIConstantInfo represents a constant. A constant has a type associated
+which can be obtained by calling <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-type" title="g_constant_info_get_type ()"><code class="function">g_constant_info_get_type()</code></a> and a value,
+which can be obtained by calling <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()"><code class="function">g_constant_info_get_value()</code></a>.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-giconstantinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -97,143 +62,129 @@ which can be obtained by calling <a class="link" href="gi-GIConstantInfo.html#g-
    +----GIConstantInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIConstantInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIConstantInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-CONSTANT-INFO:CAPS"></a><h3>GI_IS_CONSTANT_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_CONSTANT_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.18.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIConstantInfo"></a><h3>GIConstantInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIConstantInfo;
+</pre>
+<p>
+Represents a constant.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-constant-info-free-value"></a><h3>g_constant_info_free_value ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_constant_info_free_value (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>,
-                            <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
-<p>Free the value returned from <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()"><code class="function">g_constant_info_get_value()</code></a>.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.18.6.3.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-constant-info-free-value"></a><h3>g_constant_info_free_value ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_constant_info_free_value          (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
+<p>
+Free the value returned from <a class="link" href="gi-GIConstantInfo.html#g-constant-info-get-value" title="g_constant_info_get_value ()"><code class="function">g_constant_info_get_value()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>the argument</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>the argument</td>
 </tr>
 </tbody>
 </table></div>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-30-1.html#api-index-1.30.1">1.30.1</a></p>
+<p class="since">Since 1.30.1</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-constant-info-get-type"></a><h3>g_constant_info_get_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_constant_info_get_type (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type of the constant as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.18.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-constant-info-get-type"></a><h3>g_constant_info_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_constant_info_get_type            (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type of the constant as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.18.6.4.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-constant-info-get-value"></a><h3>g_constant_info_get_value ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_constant_info_get_value (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>,
-                           <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
-<p>Obtain the value associated with the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> and store it in the
-<em class="parameter"><code>value</code></em>
- parameter. <em class="parameter"><code>argument</code></em>
- needs to be allocated before passing it in.
-The size of the constant value stored in <em class="parameter"><code>argument</code></em>
- will be returned.
-Free the value with <a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()"><code class="function">g_constant_info_free_value()</code></a>.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.18.6.5.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-constant-info-get-value"></a><h3>g_constant_info_get_value ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_constant_info_get_value           (<em class="parameter"><code><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
+<p>
+Obtain the value associated with the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a> and store it in the
+<em class="parameter"><code>value</code></em> parameter. <em class="parameter"><code>argument</code></em> needs to be allocated before passing it in.
+The size of the constant value stored in <em class="parameter"><code>argument</code></em> will be returned.
+Free the value with <a class="link" href="gi-GIConstantInfo.html#g-constant-info-free-value" title="g_constant_info_free_value ()"><code class="function">g_constant_info_free_value()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>an argument. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p> an argument. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>size of the constant</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.18.6.5.7"></a><h4>Returns</h4>
-<p> size of the constant</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIConstantInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIConstantInfo"></a><h3>GIConstantInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIConstantInfo;
-</pre>
-<p>Represents a constant.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 19efe3c..8146591 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIEnumInfo: GObject Introspection Reference Manual</title>
+<title>GIEnumInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">
 <link rel="next" href="gi-GIStructInfo.html" title="GIStructInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIEnumInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIRegisteredTypeInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIStructInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIRegisteredTypeInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIStructInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIEnumInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIEnumInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIEnumInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIEnumInfo.top_of_page"></a>GIEnumInfo</span></h2>
 <p>GIEnumInfo â€” Structs representing an enumeration and its values</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIEnumInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#GI-IS-ENUM-INFO:CAPS" title="GI_IS_ENUM_INFO()">GI_IS_ENUM_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#GI-IS-VALUE-INFO:CAPS" title="GI_IS_VALUE_INFO()">GI_IS_VALUE_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-values" title="g_enum_info_get_n_values ()">g_enum_info_get_n_values</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="returnvalue">GIValueInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-value" title="g_enum_info_get_value ()">g_enum_info_get_value</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-methods" title="g_enum_info_get_n_methods ()">g_enum_info_get_n_methods</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-method" title="g_enum_info_get_method ()">g_enum_info_get_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-storage-type" title="g_enum_info_get_storage_type ()">g_enum_info_get_storage_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-error-domain" title="g_enum_info_get_error_domain ()">g_enum_info_get_error_domain</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint64</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIEnumInfo.html#g-value-info-get-value" title="g_value_info_get_value ()">g_value_info_get_value</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIEnumInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo">GIEnumInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIEnumInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIEnumInfo.html#GI-IS-ENUM-INFO:CAPS" title="GI_IS_ENUM_INFO()">GI_IS_ENUM_INFO</a>                     (info)
+#define             <a class="link" href="gi-GIEnumInfo.html#GI-IS-VALUE-INFO:CAPS" title="GI_IS_VALUE_INFO()">GI_IS_VALUE_INFO</a>                    (info)
+typedef             <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo">GIEnumInfo</a>;
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-values" title="g_enum_info_get_n_values ()">g_enum_info_get_n_values</a>            (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="returnvalue">GIValueInfo</span></a> *       <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-value" title="g_enum_info_get_value ()">g_enum_info_get_value</a>               (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-n-methods" title="g_enum_info_get_n_methods ()">g_enum_info_get_n_methods</a>           (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-method" title="g_enum_info_get_method ()">g_enum_info_get_method</a>              (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>           <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-storage-type" title="g_enum_info_get_storage_type ()">g_enum_info_get_storage_type</a>        (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-error-domain" title="g_enum_info_get_error_domain ()">g_enum_info_get_error_domain</a>        (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint64</span>              <a class="link" href="gi-GIEnumInfo.html#g-value-info-get-value" title="g_value_info_get_value ()">g_value_info_get_value</a>              (<em class="parameter"><code><a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIEnumInfo.description"></a><h2>Description</h2>
-<p>A GIEnumInfo represents an enumeration and a GIValueInfo struct represents a value
+<p>
+A GIEnumInfo represents an enumeration and a GIValueInfo struct represents a value
 of an enumeration. The GIEnumInfo contains a set of values and a type
-The GIValueInfo is fetched by calling <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-value" title="g_enum_info_get_value ()"><code class="function">g_enum_info_get_value()</code></a> on a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>.</p>
+The GIValueInfo is fetched by calling <a class="link" href="gi-GIEnumInfo.html#g-enum-info-get-value" title="g_enum_info_get_value ()"><code class="function">g_enum_info_get_value()</code></a> on a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gienuminfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -135,279 +68,262 @@ The GIValueInfo is fetched by calling <a class="link" href="gi-GIEnumInfo.html#g
          +----GIEnumInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIEnumInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIEnumInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-ENUM-INFO:CAPS"></a><h3>GI_IS_ENUM_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_ENUM_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="GI-IS-VALUE-INFO:CAPS"></a><h3>GI_IS_VALUE_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_VALUE_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIEnumInfo"></a><h3>GIEnumInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIEnumInfo;
+</pre>
+<p>
+Represents an enum or a flag.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-enum-info-get-n-values"></a><h3>g_enum_info_get_n_values ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_enum_info_get_n_values (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of values this enumeration contains.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-enum-info-get-n-values"></a><h3>g_enum_info_get_n_values ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_enum_info_get_n_values            (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of values this enumeration contains.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the number of enumeration values</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.4.6"></a><h4>Returns</h4>
-<p> the number of enumeration values</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-enum-info-get-value"></a><h3>g_enum_info_get_value ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="returnvalue">GIValueInfo</span></a> *
-g_enum_info_get_value (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>,
-                       <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain a value for this enumeration.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-enum-info-get-value"></a><h3>g_enum_info_get_value ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="returnvalue">GIValueInfo</span></a> *       g_enum_info_get_value               (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain a value for this enumeration.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of value to fetch</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of value to fetch</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the enumeration value or <code class="literal">NULL</code> if type tag is wrong,
+free the struct with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.5.6"></a><h4>Returns</h4>
-<p> the enumeration value or <code class="literal">NULL</code> if type tag is wrong,
-free the struct with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-enum-info-get-n-methods"></a><h3>g_enum_info_get_n_methods ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_enum_info_get_n_methods (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of methods that this enum type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-enum-info-get-n-methods"></a><h3>g_enum_info_get_n_methods ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_enum_info_get_n_methods           (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of methods that this enum type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of methods</td>
+</tr>
+</tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.6.6"></a><h4>Returns</h4>
-<p> number of methods</p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-29-17.html#api-index-1.29.17">1.29.17</a></p>
+<p class="since">Since 1.29.17</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-enum-info-get-method"></a><h3>g_enum_info_get_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_enum_info_get_method (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>,
-                        <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an enum type method at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-enum-info-get-method"></a><h3>g_enum_info_get_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_enum_info_get_method              (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an enum type method at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of method to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of method to get</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.7.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-29-17.html#api-index-1.29.17">1.29.17</a></p>
+<p class="since">Since 1.29.17</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-enum-info-get-storage-type"></a><h3>g_enum_info_get_storage_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>
-g_enum_info_get_storage_type (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the tag of the type used for the enum in the C ABI. This will
-will be a signed or unsigned integral type.</p>
-<p>Note that in the current implementation the width of the type is
+<a name="g-enum-info-get-storage-type"></a><h3>g_enum_info_get_storage_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>           g_enum_info_get_storage_type        (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the tag of the type used for the enum in the C ABI. This will
+will be a signed or unsigned integral type.
+</p>
+<p>
+Note that in the current implementation the width of the type is
 computed correctly, but the signed or unsigned nature of the type
-may not match the sign of the type used by the C compiler.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.8.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+may not match the sign of the type used by the C compiler.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the storage type for the enumeration</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.8.7"></a><h4>Returns</h4>
-<p> the storage type for the enumeration</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-enum-info-get-error-domain"></a><h3>g_enum_info_get_error_domain ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_enum_info_get_error_domain (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the string form of the quark for the error domain associated with
-this enum, if any.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-enum-info-get-error-domain"></a><h3>g_enum_info_get_error_domain ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_enum_info_get_error_domain        (<em class="parameter"><code><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the string form of the quark for the error domain associated with
+this enum, if any.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the string form of the error domain associated
+with this enum, or <code class="literal">NULL</code>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.9.6"></a><h4>Returns</h4>
-<p> the string form of the error domain associated
-with this enum, or <code class="literal">NULL</code>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-29-17.html#api-index-1.29.17">1.29.17</a></p>
+<p class="since">Since 1.29.17</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-value-info-get-value"></a><h3>g_value_info_get_value ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint64</span>
-g_value_info_get_value (<em class="parameter"><code><a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the enumeration value of the <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-value-info-get-value"></a><h3>g_value_info_get_value ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint64</span>              g_value_info_get_value              (<em class="parameter"><code><a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the enumeration value of the <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.12.6.10.6"></a><h4>Returns</h4>
-<p> the enumeration value. This will always be representable
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo"><span class="type">GIValueInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the enumeration value. This will always be representable
 as a 32-bit signed or unsigned value. The use of gint64 as the
-return type is to allow both.</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIEnumInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIEnumInfo"></a><h3>GIEnumInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIEnumInfo;
-</pre>
-<p>Represents an enum or a flag.</p>
+return type is to allow both.</td>
+</tr>
+</tbody>
+</table></div>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 4ea9efb..d0fe2d2 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIFieldInfo: GObject Introspection Reference Manual</title>
+<title>GIFieldInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIConstantInfo.html" title="GIConstantInfo">
 <link rel="next" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIFieldInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIConstantInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIPropertyInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIConstantInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIPropertyInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIFieldInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIFieldInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIFieldInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIFieldInfo.top_of_page"></a>GIFieldInfo</span></h2>
 <p>GIFieldInfo â€” Struct representing a struct or union field</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIFieldInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#GI-IS-FIELD-INFO:CAPS" title="GI_IS_FIELD_INFO()">GI_IS_FIELD_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-field" title="g_field_info_get_field ()">g_field_info_get_field</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-set-field" title="g_field_info_set_field ()">g_field_info_set_field</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags"><span class="returnvalue">GIFieldInfoFlags</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-flags" title="g_field_info_get_flags ()">g_field_info_get_flags</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-offset" title="g_field_info_get_offset ()">g_field_info_get_offset</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-size" title="g_field_info_get_size ()">g_field_info_get_size</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFieldInfo.html#g-field-info-get-type" title="g_field_info_get_type ()">g_field_info_get_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIFieldInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo">GIFieldInfo</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags">GIFieldInfoFlags</a></td>
-</tr>
-</tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIFieldInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIFieldInfo.html#GI-IS-FIELD-INFO:CAPS" title="GI_IS_FIELD_INFO()">GI_IS_FIELD_INFO</a>                    (info)
+typedef             <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo">GIFieldInfo</a>;
+enum                <a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags">GIFieldInfoFlags</a>;
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIFieldInfo.html#g-field-info-get-field" title="g_field_info_get_field ()">g_field_info_get_field</a>              (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *field_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> mem</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIFieldInfo.html#g-field-info-set-field" title="g_field_info_set_field ()">g_field_info_set_field</a>              (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *field_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> mem</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);
+<a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags"><span class="returnvalue">GIFieldInfoFlags</span></a>    <a class="link" href="gi-GIFieldInfo.html#g-field-info-get-flags" title="g_field_info_get_flags ()">g_field_info_get_flags</a>              (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIFieldInfo.html#g-field-info-get-offset" title="g_field_info_get_offset ()">g_field_info_get_offset</a>             (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIFieldInfo.html#g-field-info-get-size" title="g_field_info_get_size ()">g_field_info_get_size</a>               (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GIFieldInfo.html#g-field-info-get-type" title="g_field_info_get_type ()">g_field_info_get_type</a>               (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIFieldInfo.description"></a><h2>Description</h2>
-<p>A GIFieldInfo struct represents a field of a struct (see <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>),
+<p>
+A GIFieldInfo struct represents a field of a struct (see <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>),
 union (see <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>) or an object (see <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>). The GIFieldInfo
-is fetched by calling <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-field" title="g_struct_info_get_field ()"><code class="function">g_struct_info_get_field()</code></a>, <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-field" title="g_union_info_get_field ()"><code class="function">g_union_info_get_field()</code></a>
-or <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-field" title="g_object_info_get_field ()"><code class="function">g_object_info_get_field()</code></a>.
+is fetched by calling <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-field" title="g_struct_info_get_field ()"><code class="function">g_struct_info_get_field()</code></a>, <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-field" title="g_union_info_get_field ()"><code class="function">g_union_info_get_field()</code></a>
+or <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-field" title="g_object_info_get_field ()"><code class="function">g_object_info_get_field()</code></a>.
 A field has a size, type and a struct offset asssociated and a set of flags,
-which is currently <a class="link" href="gi-GIFieldInfo.html#GI-FIELD-IS-READABLE:CAPS"><span class="type">GI_FIELD_IS_READABLE</span></a> or <a class="link" href="gi-GIFieldInfo.html#GI-FIELD-IS-WRITABLE:CAPS"><span class="type">GI_FIELD_IS_WRITABLE</span></a>.</p>
+which is currently <a class="link" href="gi-GIFieldInfo.html#GI-FIELD-IS-READABLE:CAPS"><span class="type">GI_FIELD_IS_READABLE</span></a> or <a class="link" href="gi-GIFieldInfo.html#GI-FIELD-IS-WRITABLE:CAPS"><span class="type">GI_FIELD_IS_WRITABLE</span></a>.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gifieldinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -130,272 +71,258 @@ which is currently <a class="link" href="gi-GIFieldInfo.html#GI-FIELD-IS-READABL
    +----GIFieldInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIFieldInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIFieldInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-FIELD-INFO:CAPS"></a><h3>GI_IS_FIELD_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_FIELD_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIFieldInfo"></a><h3>GIFieldInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIFieldInfo;
+</pre>
+<p>
+Represents a field of a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-field-info-get-field"></a><h3>g_field_info_get_field ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_field_info_get_field (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *field_info</code></em>,
-                        <em class="parameter"><code><span class="type">gpointer</span> mem</code></em>,
-                        <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
-<p>Reads a field identified by a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> from a C structure or
-union.  This only handles fields of simple C types. It will fail
-for a field of a composite type like a nested structure or union
-even if that is actually readable.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.3.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="GIFieldInfoFlags"></a><h3>enum GIFieldInfoFlags</h3>
+<pre class="programlisting">typedef enum {
+  GI_FIELD_IS_READABLE = 1 &lt;&lt; 0,
+  GI_FIELD_IS_WRITABLE = 1 &lt;&lt; 1
+} GIFieldInfoFlags;
+</pre>
+<p>
+Flags for a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>field_info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>mem</p></td>
-<td class="parameter_description"><p>pointer to a block of memory representing a C structure or union</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><a name="GI-FIELD-IS-READABLE:CAPS"></a><span class="term"><code class="literal">GI_FIELD_IS_READABLE</code></span></p></td>
+<td>field is readable.
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> into which to store the value retrieved</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><a name="GI-FIELD-IS-WRITABLE:CAPS"></a><span class="term"><code class="literal">GI_FIELD_IS_WRITABLE</code></span></p></td>
+<td>field is writable.
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.3.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if reading the field succeeded, otherwise <code class="literal">FALSE</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-field-info-set-field"></a><h3>g_field_info_set_field ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_field_info_set_field (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *field_info</code></em>,
-                        <em class="parameter"><code><span class="type">gpointer</span> mem</code></em>,
-                        <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
-<p>Writes a field identified by a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> to a C structure or
+<a name="g-field-info-get-field"></a><h3>g_field_info_get_field ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_field_info_get_field              (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *field_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> mem</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
+<p>
+Reads a field identified by a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> from a C structure or
 union.  This only handles fields of simple C types. It will fail
 for a field of a composite type like a nested structure or union
-even if that is actually writable. Note also that that it will refuse
-to write fields where memory management would by required. A field
-with a type such as 'char *' must be set with a setter function.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.4.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+even if that is actually readable.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>field_info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>field_info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>mem</p></td>
-<td class="parameter_description"><p>pointer to a block of memory representing a C structure or union</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>mem</code></em> :</span></p></td>
+<td>pointer to a block of memory representing a C structure or union</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> holding the value to store</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> into which to store the value retrieved</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if reading the field succeeded, otherwise <code class="literal">FALSE</code>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.4.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if writing the field succeeded, otherwise <code class="literal">FALSE</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-field-info-get-flags"></a><h3>g_field_info_get_flags ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags"><span class="returnvalue">GIFieldInfoFlags</span></a>
-g_field_info_get_flags (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the flags for this <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>. See <a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags"><span class="type">GIFieldInfoFlags</span></a> for possible
-flag values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-field-info-set-field"></a><h3>g_field_info_set_field ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_field_info_set_field              (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *field_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> mem</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *value</code></em>);</pre>
+<p>
+Writes a field identified by a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> to a C structure or
+union.  This only handles fields of simple C types. It will fail
+for a field of a composite type like a nested structure or union
+even if that is actually writable. Note also that that it will refuse
+to write fields where memory management would by required. A field
+with a type such as 'char *' must be set with a setter function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field_info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mem</code></em> :</span></p></td>
+<td>pointer to a block of memory representing a C structure or union</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> holding the value to store</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if writing the field succeeded, otherwise <code class="literal">FALSE</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.5.6"></a><h4>Returns</h4>
-<p> the flags</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-field-info-get-offset"></a><h3>g_field_info_get_offset ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_field_info_get_offset (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the offset in bits of the field member, this is relative
-to the beginning of the struct or union.</p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-field-info-get-flags"></a><h3>g_field_info_get_flags ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags"><span class="returnvalue">GIFieldInfoFlags</span></a>    g_field_info_get_flags              (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the flags for this <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>. See <a class="link" href="gi-GIFieldInfo.html#GIFieldInfoFlags" title="enum GIFieldInfoFlags"><span class="type">GIFieldInfoFlags</span></a> for possible
+flag values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the flags</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.6.6"></a><h4>Returns</h4>
-<p> the field offset</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-field-info-get-size"></a><h3>g_field_info_get_size ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_field_info_get_size (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the size in bits of the field member, this is how
-much space you need to allocate to store the field.</p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-field-info-get-offset"></a><h3>g_field_info_get_offset ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_field_info_get_offset             (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the offset in bits of the field member, this is relative
+to the beginning of the struct or union.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the field offset</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.7.6"></a><h4>Returns</h4>
-<p> the field size</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-field-info-get-type"></a><h3>g_field_info_get_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_field_info_get_type (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type of a field as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-field-info-get-size"></a><h3>g_field_info_get_size ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_field_info_get_size               (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the size in bits of the field member, this is how
+much space you need to allocate to store the field.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the field size</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.19.6.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIFieldInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIFieldInfo"></a><h3>GIFieldInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIFieldInfo;
-</pre>
-<p>Represents a field of a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>.</p>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIFieldInfoFlags"></a><h3>enum GIFieldInfoFlags</h3>
-<p>Flags for a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.19.7.3.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-field-info-get-type"></a><h3>g_field_info_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_field_info_get_type               (<em class="parameter"><code><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type of a field as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-FIELD-IS-READABLE:CAPS"></a>GI_FIELD_IS_READABLE</p></td>
-<td class="enum_member_description">
-<p>field is readable.</p>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-FIELD-IS-WRITABLE:CAPS"></a>GI_FIELD_IS_WRITABLE</p></td>
-<td class="enum_member_description">
-<p>field is writable.</p>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 </div>
 </div>
-</div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 13dde3f..15b49ca 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIFunctionInfo: GObject Introspection Reference Manual</title>
+<title>GIFunctionInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GICallableInfo.html" title="GICallableInfo">
 <link rel="next" href="gi-GICallbackInfo.html" title="GICallbackInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIFunctionInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GICallableInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GICallbackInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GICallableInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GICallbackInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIFunctionInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIFunctionInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIFunctionInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIFunctionInfo.top_of_page"></a>GIFunctionInfo</span></h2>
 <p>GIFunctionInfo â€” Struct representing a function</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIFunctionInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIFunctionInfo.html#GI-IS-FUNCTION-INFO:CAPS" title="GI_IS_FUNCTION_INFO()">GI_IS_FUNCTION_INFO</a>                 (info)
+typedef             <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo">GIFunctionInfo</a>;
+enum                <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags">GIFunctionInfoFlags</a>;
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags"><span class="returnvalue">GIFunctionInfoFlags</span></a> <a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-flags" title="g_function_info_get_flags ()">g_function_info_get_flags</a>           (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *    <a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-property" title="g_function_info_get_property ()">g_function_info_get_property</a>        (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-symbol" title="g_function_info_get_symbol ()">g_function_info_get_symbol</a>          (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-vfunc" title="g_function_info_get_vfunc ()">g_function_info_get_vfunc</a>           (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIFunctionInfo.html#g-function-info-invoke" title="g_function_info_invoke ()">g_function_info_invoke</a>              (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+#define             <a class="link" href="gi-GIFunctionInfo.html#G-INVOKE-ERROR:CAPS" title="G_INVOKE_ERROR">G_INVOKE_ERROR</a>
+<span class="returnvalue">GQuark</span>              <a class="link" href="gi-GIFunctionInfo.html#g-invoke-error-quark" title="g_invoke_error_quark ()">g_invoke_error_quark</a>                (<em class="parameter"><code><span class="type">void</span></code></em>);
+enum                <a class="link" href="gi-GIFunctionInfo.html#GInvokeError" title="enum GInvokeError">GInvokeError</a>;
+</pre>
+</div>
+<div class="refsect1">
+<a name="gi-GIFunctionInfo.description"></a><h2>Description</h2>
+<p>
+GIFunctionInfo represents a function, method or constructor.
+To find out what kind of entity a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> represents, call
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-flags" title="g_function_info_get_flags ()"><code class="function">g_function_info_get_flags()</code></a>.
+</p>
+<p>
+See also <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> for information on how to retreive arguments and
+other metadata.
+</p>
+<p>
+</p>
+<div class="refsect1">
+<a name="gi-gifunctioninfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
+<pre class="synopsis">
+  <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+   +----<a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+         +----GIFunctionInfo
+         +----<a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
+         +----<a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
+</pre>
+</div>
+<p>
+</p>
+</div>
 <div class="refsect1">
-<a name="gi-GIFunctionInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-GIFunctionInfo.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GI-IS-FUNCTION-INFO:CAPS"></a><h3>GI_IS_FUNCTION_INFO()</h3>
+<pre class="programlisting">#define             GI_IS_FUNCTION_INFO(info)</pre>
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIFunctionInfo"></a><h3>GIFunctionInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIFunctionInfo;
+</pre>
+<p>
+Represents a function, eg arguments and return value.
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIFunctionInfoFlags"></a><h3>enum GIFunctionInfoFlags</h3>
+<pre class="programlisting">typedef enum {
+  GI_FUNCTION_IS_METHOD      = 1 &lt;&lt; 0,
+  GI_FUNCTION_IS_CONSTRUCTOR = 1 &lt;&lt; 1,
+  GI_FUNCTION_IS_GETTER      = 1 &lt;&lt; 2,
+  GI_FUNCTION_IS_SETTER      = 1 &lt;&lt; 3,
+  GI_FUNCTION_WRAPS_VFUNC    = 1 &lt;&lt; 4,
+  GI_FUNCTION_THROWS         = 1 &lt;&lt; 5
+} GIFunctionInfoFlags;
+</pre>
+<p>
+Flags for a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> struct.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#GI-IS-FUNCTION-INFO:CAPS" title="GI_IS_FUNCTION_INFO()">GI_IS_FUNCTION_INFO</a><span class="c_punctuation">()</span>
+<td><p><a name="GI-FUNCTION-IS-METHOD:CAPS"></a><span class="term"><code class="literal">GI_FUNCTION_IS_METHOD</code></span></p></td>
+<td>is a method.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags"><span class="returnvalue">GIFunctionInfoFlags</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-flags" title="g_function_info_get_flags ()">g_function_info_get_flags</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-FUNCTION-IS-CONSTRUCTOR:CAPS"></a><span class="term"><code class="literal">GI_FUNCTION_IS_CONSTRUCTOR</code></span></p></td>
+<td>is a constructor.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-property" title="g_function_info_get_property ()">g_function_info_get_property</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-FUNCTION-IS-GETTER:CAPS"></a><span class="term"><code class="literal">GI_FUNCTION_IS_GETTER</code></span></p></td>
+<td>is a getter of a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>.
 </td>
 </tr>
 <tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-symbol" title="g_function_info_get_symbol ()">g_function_info_get_symbol</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-FUNCTION-IS-SETTER:CAPS"></a><span class="term"><code class="literal">GI_FUNCTION_IS_SETTER</code></span></p></td>
+<td>is a setter of a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-vfunc" title="g_function_info_get_vfunc ()">g_function_info_get_vfunc</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-FUNCTION-WRAPS-VFUNC:CAPS"></a><span class="term"><code class="literal">GI_FUNCTION_WRAPS_VFUNC</code></span></p></td>
+<td>represents a virtual function.
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-invoke" title="g_function_info_invoke ()">g_function_info_invoke</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="gi-GIFunctionInfo.html#G-INVOKE-ERROR:CAPS" title="G_INVOKE_ERROR">G_INVOKE_ERROR</a></td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GQuark</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIFunctionInfo.html#g-invoke-error-quark" title="g_invoke_error_quark ()">g_invoke_error_quark</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-FUNCTION-THROWS:CAPS"></a><span class="term"><code class="literal">GI_FUNCTION_THROWS</code></span></p></td>
+<td>the function may throw an error.
 </td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIFunctionInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
+<hr>
+<div class="refsect2">
+<a name="g-function-info-get-flags"></a><h3>g_function_info_get_flags ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags"><span class="returnvalue">GIFunctionInfoFlags</span></a> g_function_info_get_flags           (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags"><span class="type">GIFunctionInfoFlags</span></a> for the <em class="parameter"><code>info</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="name">
-<col class="description">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo">GIFunctionInfo</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags">GIFunctionInfoFlags</a></td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIFunctionInfo.html#GInvokeError" title="enum GInvokeError">GInvokeError</a></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the flags</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIFunctionInfo.description"></a><h2>Description</h2>
-<p>GIFunctionInfo represents a function, method or constructor.
-To find out what kind of entity a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> represents, call
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-get-flags" title="g_function_info_get_flags ()"><code class="function">g_function_info_get_flags()</code></a>.</p>
-<p>See also <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> for information on how to retreive arguments and
-other metadata.</p>
-<div class="refsect1">
-<a name="gi-gifunctioninfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
-<pre class="synopsis">
-  <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
-   +----<a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
-         +----GIFunctionInfo
-         +----<a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
-         +----<a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
-</pre>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIFunctionInfo.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="GI-IS-FUNCTION-INFO:CAPS"></a><h3>GI_IS_FUNCTION_INFO()</h3>
-<pre class="programlisting">#define             GI_IS_FUNCTION_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-function-info-get-flags"></a><h3>g_function_info_get_flags ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags"><span class="returnvalue">GIFunctionInfoFlags</span></a>
-g_function_info_get_flags (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfoFlags" title="enum GIFunctionInfoFlags"><span class="type">GIFunctionInfoFlags</span></a> for the <em class="parameter"><code>info</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.3.6"></a><h4>Returns</h4>
-<p> the flags</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-info-get-property"></a><h3>g_function_info_get_property ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *
-g_function_info_get_property (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the property associated with this <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
+<a name="g-function-info-get-property"></a><h3>g_function_info_get_property ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *    g_function_info_get_property        (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the property associated with this <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
 Only <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> with the flag <a class="link" href="gi-GIFunctionInfo.html#GI-FUNCTION-IS-GETTER:CAPS"><code class="literal">GI_FUNCTION_IS_GETTER</code></a> or
 <a class="link" href="gi-GIFunctionInfo.html#GI-FUNCTION-IS-SETTER:CAPS"><code class="literal">GI_FUNCTION_IS_SETTER</code></a> have a property set. For other cases,
-<code class="literal">NULL</code> will be returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<code class="literal">NULL</code> will be returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the property or <code class="literal">NULL</code> if not set. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.4.6"></a><h4>Returns</h4>
-<p> the property or <code class="literal">NULL</code> if not set. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-info-get-symbol"></a><h3>g_function_info_get_symbol ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_function_info_get_symbol (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the symbol of the function. The symbol is the name of the
+<a name="g-function-info-get-symbol"></a><h3>g_function_info_get_symbol ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_function_info_get_symbol          (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the symbol of the function. The symbol is the name of the
 exported function, suitable to be used as an argument to
-<code class="function">g_module_symbol()</code>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<code class="function">g_module_symbol()</code>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the symbol</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.5.6"></a><h4>Returns</h4>
-<p> the symbol</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-info-get-vfunc"></a><h3>g_function_info_get_vfunc ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_function_info_get_vfunc (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the virtual function associated with this <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
+<a name="g-function-info-get-vfunc"></a><h3>g_function_info_get_vfunc ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_function_info_get_vfunc           (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the virtual function associated with this <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
 Only <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> with the flag <a class="link" href="gi-GIFunctionInfo.html#GI-FUNCTION-WRAPS-VFUNC:CAPS"><code class="literal">GI_FUNCTION_WRAPS_VFUNC</code></a> has
-a virtual function set. For other cases, <code class="literal">NULL</code> will be returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+a virtual function set. For other cases, <code class="literal">NULL</code> will be returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the virtual function or <code class="literal">NULL</code> if not set.
+Free it by calling <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.6.6"></a><h4>Returns</h4>
-<p> the virtual function or <code class="literal">NULL</code> if not set.
-Free it by calling <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-info-invoke"></a><h3>g_function_info_invoke ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_function_info_invoke (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>,
-                        <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
-                        <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
-                        <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
-                        <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
-                        <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
-                        <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Invokes the function described in <em class="parameter"><code>info</code></em>
- with the given
+<a name="g-function-info-invoke"></a><h3>g_function_info_invoke ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_function_info_invoke              (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Invokes the function described in <em class="parameter"><code>info</code></em> with the given
 arguments. Note that inout parameters must appear in both
 argument lists. This function uses <code class="function">dlsym()</code> to obtain a pointer
 to the function, so the library or shared object containing the
 described function must either be linked to the caller, or must
-have been <code class="function">g_module_symbol()</code>ed before calling this function.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.7.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+have been <code class="function">g_module_symbol()</code>ed before calling this function.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> describing the function to invoke</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> describing the function to invoke</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>in_args</p></td>
-<td class="parameter_description"><p>an array of <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a>s, one for each in
-parameter of <em class="parameter"><code>info</code></em>
-. If there are no in parameter, <em class="parameter"><code>in_args</code></em>
-can be <code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>in_args</code></em> :</span></p></td>
+<td>an array of <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a>s, one for each in
+parameter of <em class="parameter"><code>info</code></em>. If there are no in parameter, <em class="parameter"><code>in_args</code></em>
+can be <code class="literal">NULL</code>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n_in_args</p></td>
-<td class="parameter_description"><p>the length of the <em class="parameter"><code>in_args</code></em>
-array</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_in_args</code></em> :</span></p></td>
+<td>the length of the <em class="parameter"><code>in_args</code></em> array</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>out_args</p></td>
-<td class="parameter_description"><p>an array of <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a>s, one for each out
-parameter of <em class="parameter"><code>info</code></em>
-. If there are no out parameters, <em class="parameter"><code>out_args</code></em>
-may be <code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>out_args</code></em> :</span></p></td>
+<td>an array of <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a>s, one for each out
+parameter of <em class="parameter"><code>info</code></em>. If there are no out parameters, <em class="parameter"><code>out_args</code></em>
+may be <code class="literal">NULL</code>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n_out_args</p></td>
-<td class="parameter_description"><p>the length of the <em class="parameter"><code>out_args</code></em>
-array</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_out_args</code></em> :</span></p></td>
+<td>the length of the <em class="parameter"><code>out_args</code></em> array</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>return_value</p></td>
-<td class="parameter_description"><p>return location for the return value of the
-function. If the function returns void, <em class="parameter"><code>return_value</code></em>
-may be
-<code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>return_value</code></em> :</span></p></td>
+<td>return location for the return value of the
+function. If the function returns void, <em class="parameter"><code>return_value</code></em> may be
+<code class="literal">NULL</code>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>return location for detailed error information, or <code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>return location for detailed error information, or <code class="literal">NULL</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if the function has been invoked, <code class="literal">FALSE</code> if an
+error occurred.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.7.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if the function has been invoked, <code class="literal">FALSE</code> if an
-error occurred.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="G-INVOKE-ERROR:CAPS"></a><h3>G_INVOKE_ERROR</h3>
 <pre class="programlisting">#define G_INVOKE_ERROR (g_invoke_error_quark ())
 </pre>
-<p>TODO</p>
+<p>
+TODO
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-invoke-error-quark"></a><h3>g_invoke_error_quark ()</h3>
-<pre class="programlisting"><span class="returnvalue">GQuark</span>
-g_invoke_error_quark (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.6.9.5"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIFunctionInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIFunctionInfo"></a><h3>GIFunctionInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIFunctionInfo;
-</pre>
-<p>Represents a function, eg arguments and return value.</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GIFunctionInfoFlags"></a><h3>enum GIFunctionInfoFlags</h3>
-<p>Flags for a <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> struct.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.7.3.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-invoke-error-quark"></a><h3>g_invoke_error_quark ()</h3>
+<pre class="programlisting"><span class="returnvalue">GQuark</span>              g_invoke_error_quark                (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody>
-<tr>
-<td class="enum_member_name"><p><a name="GI-FUNCTION-IS-METHOD:CAPS"></a>GI_FUNCTION_IS_METHOD</p></td>
-<td class="enum_member_description">
-<p>is a method.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-FUNCTION-IS-CONSTRUCTOR:CAPS"></a>GI_FUNCTION_IS_CONSTRUCTOR</p></td>
-<td class="enum_member_description">
-<p>is a constructor.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-FUNCTION-IS-GETTER:CAPS"></a>GI_FUNCTION_IS_GETTER</p></td>
-<td class="enum_member_description">
-<p>is a getter of a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-FUNCTION-IS-SETTER:CAPS"></a>GI_FUNCTION_IS_SETTER</p></td>
-<td class="enum_member_description">
-<p>is a setter of a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-FUNCTION-WRAPS-VFUNC:CAPS"></a>GI_FUNCTION_WRAPS_VFUNC</p></td>
-<td class="enum_member_description">
-<p>represents a virtual function.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="GI-FUNCTION-THROWS:CAPS"></a>GI_FUNCTION_THROWS</p></td>
-<td class="enum_member_description">
-<p>the function may throw an error.</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-</tbody>
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="GInvokeError"></a><h3>enum GInvokeError</h3>
-<p>An error occuring while invoking a function via
-<a class="link" href="gi-GIFunctionInfo.html#g-function-info-invoke" title="g_function_info_invoke ()"><code class="function">g_function_info_invoke()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.7.7.4.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">typedef enum {
+  G_INVOKE_ERROR_FAILED,
+  G_INVOKE_ERROR_SYMBOL_NOT_FOUND,
+  G_INVOKE_ERROR_ARGUMENT_MISMATCH
+} GInvokeError;
+</pre>
+<p>
+An error occuring while invoking a function via
+<a class="link" href="gi-GIFunctionInfo.html#g-function-info-invoke" title="g_function_info_invoke ()"><code class="function">g_function_info_invoke()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="G-INVOKE-ERROR-FAILED:CAPS"></a>G_INVOKE_ERROR_FAILED</p></td>
-<td class="enum_member_description">
-<p>invokation failed, unknown error.</p>
+<td><p><a name="G-INVOKE-ERROR-FAILED:CAPS"></a><span class="term"><code class="literal">G_INVOKE_ERROR_FAILED</code></span></p></td>
+<td>invokation failed, unknown error.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-INVOKE-ERROR-SYMBOL-NOT-FOUND:CAPS"></a>G_INVOKE_ERROR_SYMBOL_NOT_FOUND</p></td>
-<td class="enum_member_description">
-<p>symbol couldn't be found in any of the
-libraries associated with the typelib of the function.</p>
+<td><p><a name="G-INVOKE-ERROR-SYMBOL-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">G_INVOKE_ERROR_SYMBOL_NOT_FOUND</code></span></p></td>
+<td>symbol couldn't be found in any of the
+libraries associated with the typelib of the function.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-INVOKE-ERROR-ARGUMENT-MISMATCH:CAPS"></a>G_INVOKE_ERROR_ARGUMENT_MISMATCH</p></td>
-<td class="enum_member_description">
-<p>the arguments provided didn't match
-the expected arguments for the functions type signature.</p>
+<td><p><a name="G-INVOKE-ERROR-ARGUMENT-MISMATCH:CAPS"></a><span class="term"><code class="literal">G_INVOKE_ERROR_ARGUMENT_MISMATCH</code></span></p></td>
+<td>the arguments provided didn't match
+the expected arguments for the functions type signature.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
 </div>
 </div>
-</div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index d0ac1d8..9b47867 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIInterfaceInfo: GObject Introspection Reference Manual</title>
+<title>GIInterfaceInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIObjectInfo.html" title="GIObjectInfo">
 <link rel="next" href="gi-GIArgInfo.html" title="GIArgInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIInterfaceInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIObjectInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIArgInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIObjectInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIArgInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIInterfaceInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIInterfaceInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIInterfaceInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIInterfaceInfo.top_of_page"></a>GIInterfaceInfo</span></h2>
 <p>GIInterfaceInfo â€” Struct representing a GInterface</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIInterfaceInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#GI-IS-INTERFACE-INFO:CAPS" title="GI_IS_INTERFACE_INFO()">GI_IS_INTERFACE_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites" title="g_interface_info_get_n_prerequisites ()">g_interface_info_get_n_prerequisites</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite" title="g_interface_info_get_prerequisite ()">g_interface_info_get_prerequisite</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-properties" title="g_interface_info_get_n_properties ()">g_interface_info_get_n_properties</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-property" title="g_interface_info_get_property ()">g_interface_info_get_property</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-methods" title="g_interface_info_get_n_methods ()">g_interface_info_get_n_methods</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-method" title="g_interface_info_get_method ()">g_interface_info_get_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-method" title="g_interface_info_find_method ()">g_interface_info_find_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-signals" title="g_interface_info_get_n_signals ()">g_interface_info_get_n_signals</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-signal" title="g_interface_info_get_signal ()">g_interface_info_get_signal</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-signal" title="g_interface_info_find_signal ()">g_interface_info_find_signal</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs" title="g_interface_info_get_n_vfuncs ()">g_interface_info_get_n_vfuncs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-vfunc" title="g_interface_info_get_vfunc ()">g_interface_info_get_vfunc</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-vfunc" title="g_interface_info_find_vfunc ()">g_interface_info_find_vfunc</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-constants" title="g_interface_info_get_n_constants ()">g_interface_info_get_n_constants</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-constant" title="g_interface_info_get_constant ()">g_interface_info_get_constant</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct" title="g_interface_info_get_iface_struct ()">g_interface_info_get_iface_struct</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIInterfaceInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo">GIInterfaceInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIInterfaceInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIInterfaceInfo.html#GI-IS-INTERFACE-INFO:CAPS" title="GI_IS_INTERFACE_INFO()">GI_IS_INTERFACE_INFO</a>                (info)
+typedef             <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo">GIInterfaceInfo</a>;
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites" title="g_interface_info_get_n_prerequisites ()">g_interface_info_get_n_prerequisites</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite" title="g_interface_info_get_prerequisite ()">g_interface_info_get_prerequisite</a>   (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-properties" title="g_interface_info_get_n_properties ()">g_interface_info_get_n_properties</a>   (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *    <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-property" title="g_interface_info_get_property ()">g_interface_info_get_property</a>       (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-methods" title="g_interface_info_get_n_methods ()">g_interface_info_get_n_methods</a>      (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-method" title="g_interface_info_get_method ()">g_interface_info_get_method</a>         (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-method" title="g_interface_info_find_method ()">g_interface_info_find_method</a>        (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-signals" title="g_interface_info_get_n_signals ()">g_interface_info_get_n_signals</a>      (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-signal" title="g_interface_info_get_signal ()">g_interface_info_get_signal</a>         (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-signal" title="g_interface_info_find_signal ()">g_interface_info_find_signal</a>        (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs" title="g_interface_info_get_n_vfuncs ()">g_interface_info_get_n_vfuncs</a>       (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-vfunc" title="g_interface_info_get_vfunc ()">g_interface_info_get_vfunc</a>          (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-find-vfunc" title="g_interface_info_find_vfunc ()">g_interface_info_find_vfunc</a>         (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-n-constants" title="g_interface_info_get_n_constants ()">g_interface_info_get_n_constants</a>    (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *    <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-constant" title="g_interface_info_get_constant ()">g_interface_info_get_constant</a>       (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *      <a class="link" href="gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct" title="g_interface_info_get_iface_struct ()">g_interface_info_get_iface_struct</a>   (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIInterfaceInfo.description"></a><h2>Description</h2>
-<p>GIInterfaceInfo represents a <a href="/home/ebassi/gnome/install/share/gtk-doc/html/gobject/GTypeModule.html"><span class="type">GInterface</span></a> type.</p>
-<p>A GInterface has methods, fields, properties, signals, interfaces, constants,
-virtual functions and prerequisites.</p>
+<p>
+GIInterfaceInfo represents a <span class="type">GInterface</span> type.
+</p>
+<p>
+A GInterface has methods, fields, properties, signals, interfaces, constants,
+virtual functions and prerequisites.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-giinterfaceinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -202,565 +86,512 @@ virtual functions and prerequisites.</p>
          +----GIInterfaceInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIInterfaceInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIInterfaceInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-INTERFACE-INFO:CAPS"></a><h3>GI_IS_INTERFACE_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_INTERFACE_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIInterfaceInfo"></a><h3>GIInterfaceInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIInterfaceInfo;
+</pre>
+<p>
+Represents an interface.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-n-prerequisites"></a><h3>g_interface_info_get_n_prerequisites ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_interface_info_get_n_prerequisites (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of prerequisites for this interface type.
+<a name="g-interface-info-get-n-prerequisites"></a><h3>g_interface_info_get_n_prerequisites ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_interface_info_get_n_prerequisites
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of prerequisites for this interface type.
 A prerequisites is another interface that needs to be implemented for
-interface, similar to an base class for GObjects.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+interface, similar to an base class for GObjects.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of prerequisites</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.3.6"></a><h4>Returns</h4>
-<p> number of prerequisites</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-prerequisite"></a><h3>g_interface_info_get_prerequisite ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_interface_info_get_prerequisite (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                                   <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an interface type prerequisites index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-prerequisite"></a><h3>g_interface_info_get_prerequisite ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_interface_info_get_prerequisite   (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an interface type prerequisites index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of prerequisites to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of prerequisites to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the prerequisites as a <span class="type">GIBaseInfo</span>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.4.6"></a><h4>Returns</h4>
-<p> the prerequisites as a <span class="type">GIBaseInfo</span>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-n-properties"></a><h3>g_interface_info_get_n_properties ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_interface_info_get_n_properties (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of properties that this interface type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-n-properties"></a><h3>g_interface_info_get_n_properties ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_interface_info_get_n_properties   (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of properties that this interface type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of properties</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.5.6"></a><h4>Returns</h4>
-<p> number of properties</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-property"></a><h3>g_interface_info_get_property ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *
-g_interface_info_get_property (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                               <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an interface type property at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-property"></a><h3>g_interface_info_get_property ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *    g_interface_info_get_property       (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an interface type property at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of property to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of property to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.6.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-n-methods"></a><h3>g_interface_info_get_n_methods ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_interface_info_get_n_methods (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of methods that this interface type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-n-methods"></a><h3>g_interface_info_get_n_methods ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_interface_info_get_n_methods      (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of methods that this interface type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of methods</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.7.6"></a><h4>Returns</h4>
-<p> number of methods</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-method"></a><h3>g_interface_info_get_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_interface_info_get_method (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                             <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an interface type method at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-method"></a><h3>g_interface_info_get_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_interface_info_get_method         (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an interface type method at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of method to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of method to get</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-find-method"></a><h3>g_interface_info_find_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_interface_info_find_method (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                              <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Obtain a method of the interface type given a <em class="parameter"><code>name</code></em>
-. <code class="literal">NULL</code> will be
-returned if there's no method available with that name.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-find-method"></a><h3>g_interface_info_find_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_interface_info_find_method        (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Obtain a method of the interface type given a <em class="parameter"><code>name</code></em>. <code class="literal">NULL</code> will be
+returned if there's no method available with that name.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name of method to obtain</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>name of method to obtain</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> or <code class="literal">NULL</code> if none found.
+Free the struct by calling <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.9.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> or <code class="literal">NULL</code> if none found.
-Free the struct by calling <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-n-signals"></a><h3>g_interface_info_get_n_signals ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_interface_info_get_n_signals (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of signals that this interface type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-n-signals"></a><h3>g_interface_info_get_n_signals ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_interface_info_get_n_signals      (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of signals that this interface type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of signals</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.10.6"></a><h4>Returns</h4>
-<p> number of signals</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-signal"></a><h3>g_interface_info_get_signal ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-g_interface_info_get_signal (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                             <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an interface type signal at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-signal"></a><h3>g_interface_info_get_signal ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      g_interface_info_get_signal         (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an interface type signal at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of signal to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of signal to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.11.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-find-signal"></a><h3>g_interface_info_find_signal ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-g_interface_info_find_signal (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                              <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-find-signal"></a><h3>g_interface_info_find_signal ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      g_interface_info_find_signal        (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>Name of signal</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>Name of signal</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Info for the signal with name <em class="parameter"><code>name</code></em> in <em class="parameter"><code>info</code></em>, or
+<code class="literal">NULL</code> on failure. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.12.6"></a><h4>Returns</h4>
-<p> Info for the signal with name <em class="parameter"><code>name</code></em>
-in <em class="parameter"><code>info</code></em>
-, or
-<code class="literal">NULL</code> on failure. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since: <a class="link" href="api-index-1-34.html#api-index-1.34">1.34</a></p>
+<p class="since">Since 1.34</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-n-vfuncs"></a><h3>g_interface_info_get_n_vfuncs ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_interface_info_get_n_vfuncs (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of virtual functions that this interface type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.13.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-n-vfuncs"></a><h3>g_interface_info_get_n_vfuncs ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_interface_info_get_n_vfuncs       (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of virtual functions that this interface type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of virtual functions</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.13.6"></a><h4>Returns</h4>
-<p> number of virtual functions</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-vfunc"></a><h3>g_interface_info_get_vfunc ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_interface_info_get_vfunc (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                            <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an interface type virtual function at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.14.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-vfunc"></a><h3>g_interface_info_get_vfunc ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_interface_info_get_vfunc          (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an interface type virtual function at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of virtual function to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of virtual function to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.14.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-find-vfunc"></a><h3>g_interface_info_find_vfunc ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_interface_info_find_vfunc (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                             <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Locate a virtual function slot with name <em class="parameter"><code>name</code></em>
-. See the documentation
-for <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc" title="g_object_info_find_vfunc ()"><code class="function">g_object_info_find_vfunc()</code></a> for more information on virtuals.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.15.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-find-vfunc"></a><h3>g_interface_info_find_vfunc ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_interface_info_find_vfunc         (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Locate a virtual function slot with name <em class="parameter"><code>name</code></em>. See the documentation
+for <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc" title="g_object_info_find_vfunc ()"><code class="function">g_object_info_find_vfunc()</code></a> for more information on virtuals.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>The name of a virtual function to find.</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>The name of a virtual function to find.</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>, or <code class="literal">NULL</code>. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.15.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>, or <code class="literal">NULL</code>. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-n-constants"></a><h3>g_interface_info_get_n_constants ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_interface_info_get_n_constants (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of constants that this interface type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.16.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-n-constants"></a><h3>g_interface_info_get_n_constants ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_interface_info_get_n_constants    (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of constants that this interface type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of constants</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.16.6"></a><h4>Returns</h4>
-<p> number of constants</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-constant"></a><h3>g_interface_info_get_constant ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *
-g_interface_info_get_constant (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
-                               <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an interface type constant at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.17.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-constant"></a><h3>g_interface_info_get_constant ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *    g_interface_info_get_constant       (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an interface type constant at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of constant to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of constant to get</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.17.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-interface-info-get-iface-struct"></a><h3>g_interface_info_get_iface_struct ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *
-g_interface_info_get_iface_struct (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
-<p>Returns the layout C structure associated with this <a href="/home/ebassi/gnome/install/share/gtk-doc/html/gobject/GTypeModule.html"><span class="type">GInterface</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.18.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-interface-info-get-iface-struct"></a><h3>g_interface_info_get_iface_struct ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *      g_interface_info_get_iface_struct   (<em class="parameter"><code><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a> *info</code></em>);</pre>
+<p>
+Returns the layout C structure associated with this <span class="type">GInterface</span>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or <code class="literal">NULL</code>. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.16.6.18.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or <code class="literal">NULL</code>. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIInterfaceInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIInterfaceInfo"></a><h3>GIInterfaceInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIInterfaceInfo;
-</pre>
-<p>Represents an interface.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index f893119..83cc634 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIObjectInfo: GObject Introspection Reference Manual</title>
+<title>GIObjectInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIUnionInfo.html" title="GIUnionInfo">
 <link rel="next" href="gi-GIInterfaceInfo.html" title="GIInterfaceInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIObjectInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIUnionInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIInterfaceInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIUnionInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIInterfaceInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIObjectInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIObjectInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIObjectInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIObjectInfo.top_of_page"></a>GIObjectInfo</span></h2>
 <p>GIObjectInfo â€” Struct representing a GObject</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIObjectInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#GI-IS-OBJECT-INFO:CAPS" title="GI_IS_OBJECT_INFO()">GI_IS_OBJECT_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-abstract" title="g_object_info_get_abstract ()">g_object_info_get_abstract</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-fundamental" title="g_object_info_get_fundamental ()">g_object_info_get_fundamental</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="returnvalue">GIObjectInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-parent" title="g_object_info_get_parent ()">g_object_info_get_parent</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-name" title="g_object_info_get_type_name ()">g_object_info_get_type_name</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-init" title="g_object_info_get_type_init ()">g_object_info_get_type_init</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-constants" title="g_object_info_get_n_constants ()">g_object_info_get_n_constants</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-constant" title="g_object_info_get_constant ()">g_object_info_get_constant</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-fields" title="g_object_info_get_n_fields ()">g_object_info_get_n_fields</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-field" title="g_object_info_get_field ()">g_object_info_get_field</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-interfaces" title="g_object_info_get_n_interfaces ()">g_object_info_get_n_interfaces</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="returnvalue">GIInterfaceInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-interface" title="g_object_info_get_interface ()">g_object_info_get_interface</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-methods" title="g_object_info_get_n_methods ()">g_object_info_get_n_methods</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-method" title="g_object_info_get_method ()">g_object_info_get_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method" title="g_object_info_find_method ()">g_object_info_find_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces" title="g_object_info_find_method_using_interfaces ()">g_object_info_find_method_using_interfaces</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-properties" title="g_object_info_get_n_properties ()">g_object_info_get_n_properties</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-property" title="g_object_info_get_property ()">g_object_info_get_property</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-signals" title="g_object_info_get_n_signals ()">g_object_info_get_n_signals</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-signal" title="g_object_info_get_signal ()">g_object_info_get_signal</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-signal" title="g_object_info_find_signal ()">g_object_info_find_signal</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-vfuncs" title="g_object_info_get_n_vfuncs ()">g_object_info_get_n_vfuncs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-vfunc" title="g_object_info_get_vfunc ()">g_object_info_get_vfunc</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc" title="g_object_info_find_vfunc ()">g_object_info_find_vfunc</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces" title="g_object_info_find_vfunc_using_interfaces ()">g_object_info_find_vfunc_using_interfaces</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-class-struct" title="g_object_info_get_class_struct ()">g_object_info_get_class_struct</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function" title="g_object_info_get_ref_function ()">g_object_info_get_ref_function</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()"><span class="returnvalue">GIObjectInfoRefFunction</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer" title="g_object_info_get_ref_function_pointer ()">g_object_info_get_ref_function_pointer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function" title="g_object_info_get_unref_function ()">g_object_info_get_unref_function</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()"><span class="returnvalue">GIObjectInfoUnrefFunction</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer" title="g_object_info_get_unref_function_pointer ()">g_object_info_get_unref_function_pointer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function" title="g_object_info_get_set_value_function ()">g_object_info_get_set_value_function</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()"><span class="returnvalue">GIObjectInfoSetValueFunction</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer" title="g_object_info_get_set_value_function_pointer ()">g_object_info_get_set_value_function_pointer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function" title="g_object_info_get_get_value_function ()">g_object_info_get_get_value_function</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()"><span class="returnvalue">GIObjectInfoGetValueFunction</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer" title="g_object_info_get_get_value_function_pointer ()">g_object_info_get_get_value_function_pointer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span> *
-</td>
-<td class="function_name">
-<span class="c_punctuation">(</span><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()">*GIObjectInfoRefFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<span class="c_punctuation">(</span><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()">*GIObjectInfoUnrefFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<span class="c_punctuation">(</span><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()">*GIObjectInfoSetValueFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span> *
-</td>
-<td class="function_name">
-<span class="c_punctuation">(</span><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()">*GIObjectInfoGetValueFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIObjectInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo">GIObjectInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIObjectInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIObjectInfo.html#GI-IS-OBJECT-INFO:CAPS" title="GI_IS_OBJECT_INFO()">GI_IS_OBJECT_INFO</a>                   (info)
+typedef             <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo">GIObjectInfo</a>;
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-abstract" title="g_object_info_get_abstract ()">g_object_info_get_abstract</a>          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-fundamental" title="g_object_info_get_fundamental ()">g_object_info_get_fundamental</a>       (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="returnvalue">GIObjectInfo</span></a> *      <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-parent" title="g_object_info_get_parent ()">g_object_info_get_parent</a>            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-name" title="g_object_info_get_type_name ()">g_object_info_get_type_name</a>         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-type-init" title="g_object_info_get_type_init ()">g_object_info_get_type_init</a>         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-constants" title="g_object_info_get_n_constants ()">g_object_info_get_n_constants</a>       (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *    <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-constant" title="g_object_info_get_constant ()">g_object_info_get_constant</a>          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-fields" title="g_object_info_get_n_fields ()">g_object_info_get_n_fields</a>          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *       <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-field" title="g_object_info_get_field ()">g_object_info_get_field</a>             (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-interfaces" title="g_object_info_get_n_interfaces ()">g_object_info_get_n_interfaces</a>      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="returnvalue">GIInterfaceInfo</span></a> *   <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-interface" title="g_object_info_get_interface ()">g_object_info_get_interface</a>         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-methods" title="g_object_info_get_n_methods ()">g_object_info_get_n_methods</a>         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-method" title="g_object_info_get_method ()">g_object_info_get_method</a>            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method" title="g_object_info_find_method ()">g_object_info_find_method</a>           (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces" title="g_object_info_find_method_using_interfaces ()">g_object_info_find_method_using_interfaces</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> **implementor</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-properties" title="g_object_info_get_n_properties ()">g_object_info_get_n_properties</a>      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *    <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-property" title="g_object_info_get_property ()">g_object_info_get_property</a>          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-signals" title="g_object_info_get_n_signals ()">g_object_info_get_n_signals</a>         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-signal" title="g_object_info_get_signal ()">g_object_info_get_signal</a>            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-signal" title="g_object_info_find_signal ()">g_object_info_find_signal</a>           (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-n-vfuncs" title="g_object_info_get_n_vfuncs ()">g_object_info_get_n_vfuncs</a>          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-vfunc" title="g_object_info_get_vfunc ()">g_object_info_get_vfunc</a>             (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc" title="g_object_info_find_vfunc ()">g_object_info_find_vfunc</a>            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces" title="g_object_info_find_vfunc_using_interfaces ()">g_object_info_find_vfunc_using_interfaces</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> **implementor</code></em>);
+
+<a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *      <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-class-struct" title="g_object_info_get_class_struct ()">g_object_info_get_class_struct</a>      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+const <span class="returnvalue">char</span> *        <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function" title="g_object_info_get_ref_function ()">g_object_info_get_ref_function</a>      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()"><span class="returnvalue">GIObjectInfoRefFunction</span></a> <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer" title="g_object_info_get_ref_function_pointer ()">g_object_info_get_ref_function_pointer</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+const <span class="returnvalue">char</span> *        <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function" title="g_object_info_get_unref_function ()">g_object_info_get_unref_function</a>    (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()"><span class="returnvalue">GIObjectInfoUnrefFunction</span></a> <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer" title="g_object_info_get_unref_function_pointer ()">g_object_info_get_unref_function_pointer</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+const <span class="returnvalue">char</span> *        <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function" title="g_object_info_get_set_value_function ()">g_object_info_get_set_value_function</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()"><span class="returnvalue">GIObjectInfoSetValueFunction</span></a> <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer" title="g_object_info_get_set_value_function_pointer ()">g_object_info_get_set_value_function_pointer</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+const <span class="returnvalue">char</span> *        <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function" title="g_object_info_get_get_value_function ()">g_object_info_get_get_value_function</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()"><span class="returnvalue">GIObjectInfoGetValueFunction</span></a> <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer" title="g_object_info_get_get_value_function_pointer ()">g_object_info_get_get_value_function_pointer</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);
+<span class="returnvalue">void</span> *              (<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()">*GIObjectInfoRefFunction</a>)          (<em class="parameter"><code><span class="type">void</span> *object</code></em>);
+<span class="returnvalue">void</span>                (<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()">*GIObjectInfoUnrefFunction</a>)        (<em class="parameter"><code><span class="type">void</span> *object</code></em>);
+<span class="returnvalue">void</span>                (<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()">*GIObjectInfoSetValueFunction</a>)     (<em class="parameter"><code><span class="type">GValue</span> *value</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> *object</code></em>);
+<span class="returnvalue">void</span> *              (<a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()">*GIObjectInfoGetValueFunction</a>)     (<em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIObjectInfo.description"></a><h2>Description</h2>
-<p>GIObjectInfo represents a <span class="type">GObject</span>. This doesn't represent a specific
-instance of a GObject, instead this represent the object type (eg class).</p>
-<p>A GObject has methods, fields, properties, signals, interfaces, constants
-and virtual functions.</p>
+<p>
+GIObjectInfo represents a <span class="type">GObject</span>. This doesn't represent a specific
+instance of a GObject, instead this represent the object type (eg class).
+</p>
+<p>
+A GObject has methods, fields, properties, signals, interfaces, constants
+and virtual functions.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-giobjectinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -365,1221 +129,1130 @@ and virtual functions.</p>
          +----GIObjectInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIObjectInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIObjectInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-OBJECT-INFO:CAPS"></a><h3>GI_IS_OBJECT_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_OBJECT_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIObjectInfo"></a><h3>GIObjectInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIObjectInfo;
+</pre>
+<p>
+Represents an object.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-abstract"></a><h3>g_object_info_get_abstract ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_object_info_get_abstract (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the object type is an abstract type, eg if it cannot be
-instantiated</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-abstract"></a><h3>g_object_info_get_abstract ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_object_info_get_abstract          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the object type is an abstract type, eg if it cannot be
+instantiated
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if the object type is abstract</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.3.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if the object type is abstract</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-fundamental"></a><h3>g_object_info_get_fundamental ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_object_info_get_fundamental (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the object type is of a fundamental type which is not
-G_TYPE_OBJECT. This is mostly for supporting GstMiniObject.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-fundamental"></a><h3>g_object_info_get_fundamental ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_object_info_get_fundamental       (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the object type is of a fundamental type which is not
+G_TYPE_OBJECT. This is mostly for supporting GstMiniObject.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if the object type is a fundamental type</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.4.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if the object type is a fundamental type</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-parent"></a><h3>g_object_info_get_parent ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="returnvalue">GIObjectInfo</span></a> *
-g_object_info_get_parent (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the parent of the object type.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-parent"></a><h3>g_object_info_get_parent ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="returnvalue">GIObjectInfo</span></a> *      g_object_info_get_parent            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the parent of the object type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.5.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-type-name"></a><h3>g_object_info_get_type_name ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_object_info_get_type_name (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the name of the objects class/type.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-type-name"></a><h3>g_object_info_get_type_name ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_object_info_get_type_name         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the name of the objects class/type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>name of the objects type</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.6.6"></a><h4>Returns</h4>
-<p> name of the objects type</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-type-init"></a><h3>g_object_info_get_type_init ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_object_info_get_type_init (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the function which when called will return the GType
-function for which this object type is registered.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-type-init"></a><h3>g_object_info_get_type_init ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_object_info_get_type_init         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the function which when called will return the GType
+function for which this object type is registered.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the type init function</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.7.6"></a><h4>Returns</h4>
-<p> the type init function</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-constants"></a><h3>g_object_info_get_n_constants ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_constants (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of constants that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-constants"></a><h3>g_object_info_get_n_constants ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_constants       (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of constants that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of constants</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.8.6"></a><h4>Returns</h4>
-<p> number of constants</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-constant"></a><h3>g_object_info_get_constant ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *
-g_object_info_get_constant (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                            <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type constant at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-constant"></a><h3>g_object_info_get_constant ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *    g_object_info_get_constant          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type constant at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of constant to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of constant to get</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.9.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-fields"></a><h3>g_object_info_get_n_fields ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_fields (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of fields that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-fields"></a><h3>g_object_info_get_n_fields ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_fields          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of fields that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of fields</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.10.6"></a><h4>Returns</h4>
-<p> number of fields</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-field"></a><h3>g_object_info_get_field ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *
-g_object_info_get_field (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type field at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-field"></a><h3>g_object_info_get_field ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *       g_object_info_get_field             (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type field at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of field to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of field to get</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.11.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-interfaces"></a><h3>g_object_info_get_n_interfaces ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_interfaces (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of interfaces that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-interfaces"></a><h3>g_object_info_get_n_interfaces ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_interfaces      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of interfaces that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of interfaces</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.12.6"></a><h4>Returns</h4>
-<p> number of interfaces</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-interface"></a><h3>g_object_info_get_interface ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="returnvalue">GIInterfaceInfo</span></a> *
-g_object_info_get_interface (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                             <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type interface at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.13.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-interface"></a><h3>g_object_info_get_interface ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="returnvalue">GIInterfaceInfo</span></a> *   g_object_info_get_interface         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type interface at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of interface to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of interface to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.13.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-methods"></a><h3>g_object_info_get_n_methods ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_methods (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of methods that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.14.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-methods"></a><h3>g_object_info_get_n_methods ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_methods         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of methods that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of methods</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.14.6"></a><h4>Returns</h4>
-<p> number of methods</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-method"></a><h3>g_object_info_get_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_object_info_get_method (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type method at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.15.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-method"></a><h3>g_object_info_get_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_object_info_get_method            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type method at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of method to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of method to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.15.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-find-method"></a><h3>g_object_info_find_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_object_info_find_method (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                           <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Obtain a method of the object type given a <em class="parameter"><code>name</code></em>
-. <code class="literal">NULL</code> will be
-returned if there's no method available with that name.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.16.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-find-method"></a><h3>g_object_info_find_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_object_info_find_method           (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Obtain a method of the object type given a <em class="parameter"><code>name</code></em>. <code class="literal">NULL</code> will be
+returned if there's no method available with that name.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>name of method to obtain</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name of method to obtain</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.16.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-find-method-using-interfaces"></a><h3>g_object_info_find_method_using_interfaces ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_object_info_find_method_using_interfaces
-                               (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                                <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
-                                <em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> **implementor</code></em>);</pre>
-<p>Obtain a method of the object given a <em class="parameter"><code>name</code></em>
-, searching both the
-object <em class="parameter"><code>info</code></em>
- and any interfaces it implements.  <code class="literal">NULL</code> will be
-returned if there's no method available with that name.</p>
-<p>Note that this function does *not* search parent classes; you will have
-to chain up if that's desired.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.17.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-find-method-using-interfaces"></a><h3>g_object_info_find_method_using_interfaces ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_object_info_find_method_using_interfaces
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> **implementor</code></em>);</pre>
+<p>
+Obtain a method of the object given a <em class="parameter"><code>name</code></em>, searching both the
+object <em class="parameter"><code>info</code></em> and any interfaces it implements.  <code class="literal">NULL</code> will be
+returned if there's no method available with that name.
+</p>
+<p>
+Note that this function does *not* search parent classes; you will have
+to chain up if that's desired.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>name of method to obtain</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name of method to obtain</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>implementor</code></em> :</span></p></td>
+<td>The implementor of the interface. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>implementor</p></td>
-<td class="parameter_description"><p> The implementor of the interface. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.17.7"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-properties"></a><h3>g_object_info_get_n_properties ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_properties (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of properties that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.18.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-properties"></a><h3>g_object_info_get_n_properties ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_properties      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of properties that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of properties</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.18.6"></a><h4>Returns</h4>
-<p> number of properties</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-property"></a><h3>g_object_info_get_property ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *
-g_object_info_get_property (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                            <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type property at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.19.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-property"></a><h3>g_object_info_get_property ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="returnvalue">GIPropertyInfo</span></a> *    g_object_info_get_property          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type property at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of property to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of property to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.19.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-signals"></a><h3>g_object_info_get_n_signals ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_signals (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of signals that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.20.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-signals"></a><h3>g_object_info_get_n_signals ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_signals         (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of signals that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of signals</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.20.6"></a><h4>Returns</h4>
-<p> number of signals</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-signal"></a><h3>g_object_info_get_signal ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-g_object_info_get_signal (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type signal at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.21.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-signal"></a><h3>g_object_info_get_signal ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      g_object_info_get_signal            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type signal at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of signal to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of signal to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.21.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-find-signal"></a><h3>g_object_info_find_signal ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-g_object_info_find_signal (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                           <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.22.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-find-signal"></a><h3>g_object_info_find_signal ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      g_object_info_find_signal           (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>Name of signal</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>Name of signal</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>Info for the signal with name <em class="parameter"><code>name</code></em> in <em class="parameter"><code>info</code></em>, or <code class="literal">NULL</code> on failure. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.22.6"></a><h4>Returns</h4>
-<p> Info for the signal with name <em class="parameter"><code>name</code></em>
-in <em class="parameter"><code>info</code></em>
-, or <code class="literal">NULL</code> on failure. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-n-vfuncs"></a><h3>g_object_info_get_n_vfuncs ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_object_info_get_n_vfuncs (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of virtual functions that this object type has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.23.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-n-vfuncs"></a><h3>g_object_info_get_n_vfuncs ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_object_info_get_n_vfuncs          (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of virtual functions that this object type has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of virtual functions</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.23.6"></a><h4>Returns</h4>
-<p> number of virtual functions</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-vfunc"></a><h3>g_object_info_get_vfunc ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_object_info_get_vfunc (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain an object type virtual function at index <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.24.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-vfunc"></a><h3>g_object_info_get_vfunc ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_object_info_get_vfunc             (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain an object type virtual function at index <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of virtual function to get</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of virtual function to get</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.24.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-find-vfunc"></a><h3>g_object_info_find_vfunc ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_object_info_find_vfunc (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Locate a virtual function slot with name <em class="parameter"><code>name</code></em>
-. Note that the namespace
+<a name="g-object-info-find-vfunc"></a><h3>g_object_info_find_vfunc ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_object_info_find_vfunc            (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Locate a virtual function slot with name <em class="parameter"><code>name</code></em>. Note that the namespace
 for virtuals is distinct from that of methods; there may or may not be
 a concrete method associated for a virtual. If there is one, it may
-be retrieved using <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()"><code class="function">g_vfunc_info_get_invoker()</code></a>, otherwise <code class="literal">NULL</code> will be
+be retrieved using <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()"><code class="function">g_vfunc_info_get_invoker()</code></a>, otherwise <code class="literal">NULL</code> will be
 returned.
-See the documentation for <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()"><code class="function">g_vfunc_info_get_invoker()</code></a> for more
-information on invoking virtuals.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.25.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+See the documentation for <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()"><code class="function">g_vfunc_info_get_invoker()</code></a> for more
+information on invoking virtuals.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>The name of a virtual function to find.</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>The name of a virtual function to find.</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>, or <code class="literal">NULL</code>. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.25.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>, or <code class="literal">NULL</code>. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-find-vfunc-using-interfaces"></a><h3>g_object_info_find_vfunc_using_interfaces ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_object_info_find_vfunc_using_interfaces
-                               (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
-                                <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
-                                <em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> **implementor</code></em>);</pre>
-<p>Locate a virtual function slot with name <em class="parameter"><code>name</code></em>
-, searching both the object
-<em class="parameter"><code>info</code></em>
- and any interfaces it implements.  Note that the namespace for
+<a name="g-object-info-find-vfunc-using-interfaces"></a><h3>g_object_info_find_vfunc_using_interfaces ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_object_info_find_vfunc_using_interfaces
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> **implementor</code></em>);</pre>
+<p>
+Locate a virtual function slot with name <em class="parameter"><code>name</code></em>, searching both the object
+<em class="parameter"><code>info</code></em> and any interfaces it implements.  Note that the namespace for
 virtuals is distinct from that of methods; there may or may not be a
 concrete method associated for a virtual. If there is one, it may be
-retrieved using <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()"><code class="function">g_vfunc_info_get_invoker()</code></a>, otherwise <code class="literal">NULL</code> will be
-returned.</p>
-<p>Note that this function does *not* search parent classes; you will have
-to chain up if that's desired.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.26.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+retrieved using <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()"><code class="function">g_vfunc_info_get_invoker()</code></a>, otherwise <code class="literal">NULL</code> will be
+returned.
+</p>
+<p>
+Note that this function does *not* search parent classes; you will have
+to chain up if that's desired.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>name of method to obtain</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>name of method to obtain</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>implementor</code></em> :</span></p></td>
+<td>The implementor of the interface. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>implementor</p></td>
-<td class="parameter_description"><p> The implementor of the interface. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.26.7"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>. Free the struct by calling
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-class-struct"></a><h3>g_object_info_get_class_struct ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *
-g_object_info_get_class_struct (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Every <span class="type">GObject</span> has two structures; an instance structure and a class
-structure.  This function returns the metadata for the class structure.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.27.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-object-info-get-class-struct"></a><h3>g_object_info_get_class_struct ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="returnvalue">GIStructInfo</span></a> *      g_object_info_get_class_struct      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Every <span class="type">GObject</span> has two structures; an instance structure and a class
+structure.  This function returns the metadata for the class structure.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or <code class="literal">NULL</code>. Free with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.27.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or <code class="literal">NULL</code>. Free with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-ref-function"></a><h3>g_object_info_get_ref_function ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-g_object_info_get_ref_function (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the symbol name of the function that should be called to ref this
+<a name="g-object-info-get-ref-function"></a><h3>g_object_info_get_ref_function ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        g_object_info_get_ref_function      (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the symbol name of the function that should be called to ref this
 object type. It's mainly used fundamental types. The type signature for
-the symbol is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()"><code class="literal">GIObjectInfoRefFunction</code></a>, to fetch the function pointer
-see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function" title="g_object_info_get_ref_function ()"><code class="function">g_object_info_get_ref_function()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.28.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+the symbol is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()"><code class="literal">GIObjectInfoRefFunction</code></a>, to fetch the function pointer
+see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-ref-function" title="g_object_info_get_ref_function ()"><code class="function">g_object_info_get_ref_function()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the symbol or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.28.6"></a><h4>Returns</h4>
-<p> the symbol or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-ref-function-pointer"></a><h3>g_object_info_get_ref_function_pointer ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()"><span class="returnvalue">GIObjectInfoRefFunction</span></a>
-g_object_info_get_ref_function_pointer
-                               (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain a pointer to a function which can be used to
+<a name="g-object-info-get-ref-function-pointer"></a><h3>g_object_info_get_ref_function_pointer ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoRefFunction" title="GIObjectInfoRefFunction ()"><span class="returnvalue">GIObjectInfoRefFunction</span></a> g_object_info_get_ref_function_pointer
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain a pointer to a function which can be used to
 increase the reference count an instance of this object type.
 This takes derivation into account and will reversely traverse
-the base classes of this type, starting at the top type.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.29.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+the base classes of this type, starting at the top type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the function pointer or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.29.7"></a><h4>Returns</h4>
-<p> the function pointer or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-unref-function"></a><h3>g_object_info_get_unref_function ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-g_object_info_get_unref_function (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the symbol name of the function that should be called to unref this
+<a name="g-object-info-get-unref-function"></a><h3>g_object_info_get_unref_function ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        g_object_info_get_unref_function    (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the symbol name of the function that should be called to unref this
 object type. It's mainly used fundamental types. The type signature for
-the symbol is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()"><code class="literal">GIObjectInfoUnrefFunction</code></a>, to fetch the function pointer
-see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function" title="g_object_info_get_unref_function ()"><code class="function">g_object_info_get_unref_function()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.30.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+the symbol is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()"><code class="literal">GIObjectInfoUnrefFunction</code></a>, to fetch the function pointer
+see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-unref-function" title="g_object_info_get_unref_function ()"><code class="function">g_object_info_get_unref_function()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the symbol or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.30.6"></a><h4>Returns</h4>
-<p> the symbol or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-unref-function-pointer"></a><h3>g_object_info_get_unref_function_pointer ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()"><span class="returnvalue">GIObjectInfoUnrefFunction</span></a>
-g_object_info_get_unref_function_pointer
-                               (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain a pointer to a function which can be used to
+<a name="g-object-info-get-unref-function-pointer"></a><h3>g_object_info_get_unref_function_pointer ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction" title="GIObjectInfoUnrefFunction ()"><span class="returnvalue">GIObjectInfoUnrefFunction</span></a> g_object_info_get_unref_function_pointer
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain a pointer to a function which can be used to
 decrease the reference count an instance of this object type.
 This takes derivation into account and will reversely traverse
-the base classes of this type, starting at the top type.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.31.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+the base classes of this type, starting at the top type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the function pointer or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.31.7"></a><h4>Returns</h4>
-<p> the function pointer or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-set-value-function"></a><h3>g_object_info_get_set_value_function ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-g_object_info_get_set_value_function (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the symbol name of the function that should be called to convert
+<a name="g-object-info-get-set-value-function"></a><h3>g_object_info_get_set_value_function ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        g_object_info_get_set_value_function
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the symbol name of the function that should be called to convert
 set a GValue giving an object instance pointer of this object type.
 I's mainly used fundamental types. The type signature for the symbol
-is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()"><code class="literal">GIObjectInfoSetValueFunction</code></a>, to fetch the function pointer
-see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function" title="g_object_info_get_set_value_function ()"><code class="function">g_object_info_get_set_value_function()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.32.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()"><code class="literal">GIObjectInfoSetValueFunction</code></a>, to fetch the function pointer
+see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-set-value-function" title="g_object_info_get_set_value_function ()"><code class="function">g_object_info_get_set_value_function()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the symbol or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.32.6"></a><h4>Returns</h4>
-<p> the symbol or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-set-value-function-pointer"></a><h3>g_object_info_get_set_value_function_pointer ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()"><span class="returnvalue">GIObjectInfoSetValueFunction</span></a>
-g_object_info_get_set_value_function_pointer
-                               (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain a pointer to a function which can be used to
+<a name="g-object-info-get-set-value-function-pointer"></a><h3>g_object_info_get_set_value_function_pointer ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction" title="GIObjectInfoSetValueFunction ()"><span class="returnvalue">GIObjectInfoSetValueFunction</span></a> g_object_info_get_set_value_function_pointer
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain a pointer to a function which can be used to
 set a GValue given an instance of this object type.
 This takes derivation into account and will reversely traverse
-the base classes of this type, starting at the top type.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.33.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+the base classes of this type, starting at the top type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the function pointer or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.33.7"></a><h4>Returns</h4>
-<p> the function pointer or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-get-value-function"></a><h3>g_object_info_get_get_value_function ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-g_object_info_get_get_value_function (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the symbol name of the function that should be called to convert
+<a name="g-object-info-get-get-value-function"></a><h3>g_object_info_get_get_value_function ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        g_object_info_get_get_value_function
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the symbol name of the function that should be called to convert
 an object instance pointer of this object type to a GValue.
 I's mainly used fundamental types. The type signature for the symbol
-is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()"><code class="literal">GIObjectInfoGetValueFunction</code></a>, to fetch the function pointer
-see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function" title="g_object_info_get_get_value_function ()"><code class="function">g_object_info_get_get_value_function()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.34.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+is <a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()"><code class="literal">GIObjectInfoGetValueFunction</code></a>, to fetch the function pointer
+see <a class="link" href="gi-GIObjectInfo.html#g-object-info-get-get-value-function" title="g_object_info_get_get_value_function ()"><code class="function">g_object_info_get_get_value_function()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the symbol or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.34.6"></a><h4>Returns</h4>
-<p> the symbol or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-object-info-get-get-value-function-pointer"></a><h3>g_object_info_get_get_value_function_pointer ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()"><span class="returnvalue">GIObjectInfoGetValueFunction</span></a>
-g_object_info_get_get_value_function_pointer
-                               (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
-<p>Obtain a pointer to a function which can be used to
+<a name="g-object-info-get-get-value-function-pointer"></a><h3>g_object_info_get_get_value_function_pointer ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction" title="GIObjectInfoGetValueFunction ()"><span class="returnvalue">GIObjectInfoGetValueFunction</span></a> g_object_info_get_get_value_function_pointer
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain a pointer to a function which can be used to
 extract an instance of this object type out of a GValue.
 This takes derivation into account and will reversely traverse
-the base classes of this type, starting at the top type.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.35.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+the base classes of this type, starting at the top type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the function pointer or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.35.7"></a><h4>Returns</h4>
-<p> the function pointer or <code class="literal">NULL</code></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIObjectInfoRefFunction"></a><h3>GIObjectInfoRefFunction ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> *
-<span class="c_punctuation">(</span>*GIObjectInfoRefFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span> *object</code></em>);</pre>
-<p>Increases the reference count of an object instance.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.36.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="GIObjectInfoRefFunction"></a><h3>GIObjectInfoRefFunction ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> *              (*GIObjectInfoRefFunction)          (<em class="parameter"><code><span class="type">void</span> *object</code></em>);</pre>
+<p>
+Increases the reference count of an object instance.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>object instance pointer</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
+<td>object instance pointer</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the object instance. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.36.7"></a><h4>Returns</h4>
-<p> the object instance. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIObjectInfoUnrefFunction"></a><h3>GIObjectInfoUnrefFunction ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GIObjectInfoUnrefFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span> *object</code></em>);</pre>
-<p>Decreases the reference count of an object instance.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.37.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="GIObjectInfoUnrefFunction"></a><h3>GIObjectInfoUnrefFunction ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                (*GIObjectInfoUnrefFunction)        (<em class="parameter"><code><span class="type">void</span> *object</code></em>);</pre>
+<p>
+Decreases the reference count of an object instance.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>object instance pointer</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
+<td>object instance pointer</td>
 </tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIObjectInfoSetValueFunction"></a><h3>GIObjectInfoSetValueFunction ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GIObjectInfoSetValueFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">GValue</span> *value</code></em>,
-                                 <em class="parameter"><code><span class="type">void</span> *object</code></em>);</pre>
-<p>Update <em class="parameter"><code>value</code></em>
- and attach the object instance pointer <em class="parameter"><code>object</code></em>
- to it.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.38.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="GIObjectInfoSetValueFunction"></a><h3>GIObjectInfoSetValueFunction ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                (*GIObjectInfoSetValueFunction)     (<em class="parameter"><code><span class="type">GValue</span> *value</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> *object</code></em>);</pre>
+<p>
+Update <em class="parameter"><code>value</code></em> and attach the object instance pointer <em class="parameter"><code>object</code></em> to it.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <span class="type">GValue</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a <span class="type">GValue</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>object</p></td>
-<td class="parameter_description"><p>object instance pointer</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
+<td>object instance pointer</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="GIObjectInfoGetValueFunction"></a><h3>GIObjectInfoGetValueFunction ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> *
-<span class="c_punctuation">(</span>*GIObjectInfoGetValueFunction<span class="c_punctuation">)</span> (<em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);</pre>
-<p>Extract an object instance out of <em class="parameter"><code>value</code></em>
+<a name="GIObjectInfoGetValueFunction"></a><h3>GIObjectInfoGetValueFunction ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> *              (*GIObjectInfoGetValueFunction)     (<em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);</pre>
+<p>
+Extract an object instance out of <em class="parameter"><code>value</code></em>
 </p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.39.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>value</p></td>
-<td class="parameter_description"><p>a <span class="type">GValue</span></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a <span class="type">GValue</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the object instance. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.15.6.39.7"></a><h4>Returns</h4>
-<p> the object instance. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIObjectInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIObjectInfo"></a><h3>GIObjectInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIObjectInfo;
-</pre>
-<p>Represents an object.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 8698399..27c3f8a 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIPropertyInfo: GObject Introspection Reference Manual</title>
+<title>GIPropertyInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIFieldInfo.html" title="GIFieldInfo">
 <link rel="next" href="gi-GITypeInfo.html" title="GITypeInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIPropertyInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIFieldInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GITypeInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIFieldInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GITypeInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIPropertyInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIPropertyInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIPropertyInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIPropertyInfo.top_of_page"></a>GIPropertyInfo</span></h2>
 <p>GIPropertyInfo â€” Struct representing a property</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIPropertyInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIPropertyInfo.html#GI-IS-PROPERTY-INFO:CAPS" title="GI_IS_PROPERTY_INFO()">GI_IS_PROPERTY_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GParamFlags</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-flags" title="g_property_info_get_flags ()">g_property_info_get_flags</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer" title="g_property_info_get_ownership_transfer ()">g_property_info_get_ownership_transfer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-type" title="g_property_info_get_type ()">g_property_info_get_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIPropertyInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo">GIPropertyInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIPropertyInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIPropertyInfo.html#GI-IS-PROPERTY-INFO:CAPS" title="GI_IS_PROPERTY_INFO()">GI_IS_PROPERTY_INFO</a>                 (info)
+typedef             <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo">GIPropertyInfo</a>;
+<span class="returnvalue">GParamFlags</span>         <a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-flags" title="g_property_info_get_flags ()">g_property_info_get_flags</a>           (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>          <a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer" title="g_property_info_get_ownership_transfer ()">g_property_info_get_ownership_transfer</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GIPropertyInfo.html#g-property-info-get-type" title="g_property_info_get_type ()">g_property_info_get_type</a>            (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIPropertyInfo.description"></a><h2>Description</h2>
-<p>GIPropertyInfo represents a property. A property belongs to
-either a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.</p>
+<p>
+GIPropertyInfo represents a property. A property belongs to
+either a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gipropertyinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -96,126 +60,121 @@ either a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjec
    +----GIPropertyInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIPropertyInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIPropertyInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-PROPERTY-INFO:CAPS"></a><h3>GI_IS_PROPERTY_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_PROPERTY_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIPropertyInfo"></a><h3>GIPropertyInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIPropertyInfo;
+</pre>
+<p>
+Represents a property of a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-property-info-get-flags"></a><h3>g_property_info_get_flags ()</h3>
-<pre class="programlisting"><span class="returnvalue">GParamFlags</span>
-g_property_info_get_flags (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the flags for this property info. See <span class="type">GParamFlags</span> for
-more information about possible flag values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-property-info-get-flags"></a><h3>g_property_info_get_flags ()</h3>
+<pre class="programlisting"><span class="returnvalue">GParamFlags</span>         g_property_info_get_flags           (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the flags for this property info. See <span class="type">GParamFlags</span> for
+more information about possible flag values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the flags</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.3.6"></a><h4>Returns</h4>
-<p> the flags</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-property-info-get-ownership-transfer"></a><h3>g_property_info_get_ownership_transfer ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>
-g_property_info_get_ownership_transfer
-                               (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the ownership transfer for this property. See <a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> for more
-information about transfer values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-property-info-get-ownership-transfer"></a><h3>g_property_info_get_ownership_transfer ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a>          g_property_info_get_ownership_transfer
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the ownership transfer for this property. See <a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> for more
+information about transfer values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the transfer</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.4.6"></a><h4>Returns</h4>
-<p> the transfer</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-property-info-get-type"></a><h3>g_property_info_get_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_property_info_get_type (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type information for the property <em class="parameter"><code>info</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-property-info-get-type"></a><h3>g_property_info_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_property_info_get_type            (<em class="parameter"><code><a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type information for the property <em class="parameter"><code>info</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>, free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.20.6.5.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>, free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIPropertyInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIPropertyInfo"></a><h3>GIPropertyInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIPropertyInfo;
-</pre>
-<p>Represents a property of a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 0dd22d0..a1ce804 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIRegisteredTypeInfo: GObject Introspection Reference Manual</title>
+<title>GIRegisteredTypeInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">
 <link rel="next" href="gi-GIEnumInfo.html" title="GIEnumInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIRegisteredTypeInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIVFuncInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIEnumInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIVFuncInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIEnumInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIRegisteredTypeInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIRegisteredTypeInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIRegisteredTypeInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIRegisteredTypeInfo.top_of_page"></a>GIRegisteredTypeInfo</span></h2>
 <p>GIRegisteredTypeInfo â€” Struct representing a struct with a GType</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIRegisteredTypeInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIRegisteredTypeInfo.html#GI-IS-REGISTERED-TYPE-INFO:CAPS" title="GI_IS_REGISTERED_TYPE_INFO()">GI_IS_REGISTERED_TYPE_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name" title="g_registered_type_info_get_type_name ()">g_registered_type_info_get_type_name</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init" title="g_registered_type_info_get_type_init ()">g_registered_type_info_get_type_init</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GType</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()">g_registered_type_info_get_g_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIRegisteredTypeInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIRegisteredTypeInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIRegisteredTypeInfo.html#GI-IS-REGISTERED-TYPE-INFO:CAPS" title="GI_IS_REGISTERED_TYPE_INFO()">GI_IS_REGISTERED_TYPE_INFO</a>          (info)
+typedef             <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo">GIRegisteredTypeInfo</a>;
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name" title="g_registered_type_info_get_type_name ()">g_registered_type_info_get_type_name</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init" title="g_registered_type_info_get_type_init ()">g_registered_type_info_get_type_init</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);
+<span class="returnvalue">GType</span>               <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()">g_registered_type_info_get_g_type</a>   (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIRegisteredTypeInfo.description"></a><h2>Description</h2>
-<p>GIRegisteredTypeInfo represents an entity with a GType associated. Could
+<p>
+GIRegisteredTypeInfo represents an entity with a GType associated. Could
 be either a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>, <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>, <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a>, <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> or a
-<a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>.</p>
-<p>A registered type info struct has a name and a type function.
-To get the name call <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name" title="g_registered_type_info_get_type_name ()"><code class="function">g_registered_type_info_get_type_name()</code></a>.
-Most users want to call <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()"><code class="function">g_registered_type_info_get_g_type()</code></a> and don't worry
-about the rest of the details.</p>
+<a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>.
+</p>
+<p>
+A registered type info struct has a name and a type function.
+To get the name call <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name" title="g_registered_type_info_get_type_name ()"><code class="function">g_registered_type_info_get_type_name()</code></a>.
+Most users want to call <a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()"><code class="function">g_registered_type_info_get_g_type()</code></a> and don't worry
+about the rest of the details.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-giregisteredtypeinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -104,131 +73,126 @@ about the rest of the details.</p>
          +----<a class="link" href="gi-GIUnionInfo.html" title="GIUnionInfo">GIUnionInfo</a>
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIRegisteredTypeInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIRegisteredTypeInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-REGISTERED-TYPE-INFO:CAPS"></a><h3>GI_IS_REGISTERED_TYPE_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_REGISTERED_TYPE_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> or derived from it.</p>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> or derived from it.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIRegisteredTypeInfo"></a><h3>GIRegisteredTypeInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIRegisteredTypeInfo;
+</pre>
+<p>
+Represent a registered type.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-registered-type-info-get-type-name"></a><h3>g_registered_type_info_get_type_name ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_registered_type_info_get_type_name (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type name of the struct within the GObject type system.
-This type can be passed to <code class="function">g_type_name()</code> to get a <span class="type">GType</span>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-registered-type-info-get-type-name"></a><h3>g_registered_type_info_get_type_name ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_registered_type_info_get_type_name
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type name of the struct within the GObject type system.
+This type can be passed to <code class="function">g_type_name()</code> to get a <span class="type">GType</span>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the type name</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.3.6"></a><h4>Returns</h4>
-<p> the type name</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-registered-type-info-get-type-init"></a><h3>g_registered_type_info_get_type_init ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_registered_type_info_get_type_init (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type init function for <em class="parameter"><code>info</code></em>
-. The type init function is the
+<a name="g-registered-type-info-get-type-init"></a><h3>g_registered_type_info_get_type_init ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_registered_type_info_get_type_init
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type init function for <em class="parameter"><code>info</code></em>. The type init function is the
 function which will register the GType within the GObject type system.
 Usually this is not called by langauge bindings or applications, use
-<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()"><code class="function">g_registered_type_info_get_g_type()</code></a> directly instead.</p>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a class="link" href="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type" title="g_registered_type_info_get_g_type ()"><code class="function">g_registered_type_info_get_g_type()</code></a> directly instead.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the symbol name of the type init function, suitable for
+passing into <code class="function">g_module_symbol()</code>.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.4.6"></a><h4>Returns</h4>
-<p> the symbol name of the type init function, suitable for
-passing into <code class="function">g_module_symbol()</code>.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-registered-type-info-get-g-type"></a><h3>g_registered_type_info_get_g_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">GType</span>
-g_registered_type_info_get_g_type (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the <span class="type">GType</span> for this registered type or G_TYPE_NONE which a special meaning.
-It means that either there is no type information associated with this <em class="parameter"><code>info</code></em>
- or
+<a name="g-registered-type-info-get-g-type"></a><h3>g_registered_type_info_get_g_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>               g_registered_type_info_get_g_type   (<em class="parameter"><code><a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the <span class="type">GType</span> for this registered type or G_TYPE_NONE which a special meaning.
+It means that either there is no type information associated with this <em class="parameter"><code>info</code></em> or
 that the shared library which provides the type_init function for this
-<em class="parameter"><code>info</code></em>
- cannot be called.</p>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<em class="parameter"><code>info</code></em> cannot be called.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo" title="GIRegisteredTypeInfo"><span class="type">GIRegisteredTypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <span class="type">GType</span>.</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.11.6.5.6"></a><h4>Returns</h4>
-<p> the <span class="type">GType</span>.</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIRegisteredTypeInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIRegisteredTypeInfo"></a><h3>GIRegisteredTypeInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIRegisteredTypeInfo;
-</pre>
-<p>Represent a registered type.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 7126c2c..071e8f5 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GISignalInfo: GObject Introspection Reference Manual</title>
+<title>GISignalInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GICallbackInfo.html" title="GICallbackInfo">
 <link rel="next" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GISignalInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GICallbackInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIVFuncInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GICallbackInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIVFuncInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GISignalInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GISignalInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GISignalInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GISignalInfo.top_of_page"></a>GISignalInfo</span></h2>
 <p>GISignalInfo â€” Struct representing a signal</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GISignalInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GISignalInfo.html#GI-IS-SIGNAL-INFO:CAPS" title="GI_IS_SIGNAL_INFO()">GI_IS_SIGNAL_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GSignalFlags</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GISignalInfo.html#g-signal-info-get-flags" title="g_signal_info_get_flags ()">g_signal_info_get_flags</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GISignalInfo.html#g-signal-info-get-class-closure" title="g_signal_info_get_class_closure ()">g_signal_info_get_class_closure</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GISignalInfo.html#g-signal-info-true-stops-emit" title="g_signal_info_true_stops_emit ()">g_signal_info_true_stops_emit</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GISignalInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo">GISignalInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GISignalInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GISignalInfo.html#GI-IS-SIGNAL-INFO:CAPS" title="GI_IS_SIGNAL_INFO()">GI_IS_SIGNAL_INFO</a>                   (info)
+typedef             <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo">GISignalInfo</a>;
+<span class="returnvalue">GSignalFlags</span>        <a class="link" href="gi-GISignalInfo.html#g-signal-info-get-flags" title="g_signal_info_get_flags ()">g_signal_info_get_flags</a>             (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       <a class="link" href="gi-GISignalInfo.html#g-signal-info-get-class-closure" title="g_signal_info_get_class_closure ()">g_signal_info_get_class_closure</a>     (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GISignalInfo.html#g-signal-info-true-stops-emit" title="g_signal_info_true_stops_emit ()">g_signal_info_true_stops_emit</a>       (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GISignalInfo.description"></a><h2>Description</h2>
-<p>GISignalInfo represents a signal. It's a sub-struct of <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
-and contains a set of flags and a class closure.</p>
-<p>See <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> for information on how to retreive arguments
-and other metadata from the signal.</p>
+<p>
+GISignalInfo represents a signal. It's a sub-struct of <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+and contains a set of flags and a class closure.
+</p>
+<p>
+See <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> for information on how to retreive arguments
+and other metadata from the signal.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gisignalinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -101,125 +66,122 @@ and other metadata from the signal.</p>
          +----<a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GISignalInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GISignalInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-SIGNAL-INFO:CAPS"></a><h3>GI_IS_SIGNAL_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_SIGNAL_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GISignalInfo"></a><h3>GISignalInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GISignalInfo;
+</pre>
+<p>
+Represents a signal.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-signal-info-get-flags"></a><h3>g_signal_info_get_flags ()</h3>
-<pre class="programlisting"><span class="returnvalue">GSignalFlags</span>
-g_signal_info_get_flags (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the flags for this signal info. See <span class="type">GSignalFlags</span> for
-more information about possible flag values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-signal-info-get-flags"></a><h3>g_signal_info_get_flags ()</h3>
+<pre class="programlisting"><span class="returnvalue">GSignalFlags</span>        g_signal_info_get_flags             (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the flags for this signal info. See <span class="type">GSignalFlags</span> for
+more information about possible flag values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the flags</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.3.6"></a><h4>Returns</h4>
-<p> the flags</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-signal-info-get-class-closure"></a><h3>g_signal_info_get_class_closure ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *
-g_signal_info_get_class_closure (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the class closure for this signal if one is set. The class
+<a name="g-signal-info-get-class-closure"></a><h3>g_signal_info_get_class_closure ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="returnvalue">GIVFuncInfo</span></a> *       g_signal_info_get_class_closure     (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the class closure for this signal if one is set. The class
 closure is a virtual function on the type that the signal belongs to.
-If the signal lacks a closure <code class="literal">NULL</code> will be returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+If the signal lacks a closure <code class="literal">NULL</code> will be returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the class closure or <code class="literal">NULL</code>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.4.6"></a><h4>Returns</h4>
-<p> the class closure or <code class="literal">NULL</code>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-signal-info-true-stops-emit"></a><h3>g_signal_info_true_stops_emit ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_signal_info_true_stops_emit (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the returning true in the signal handler will
-stop the emission of the signal.</p>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-signal-info-true-stops-emit"></a><h3>g_signal_info_true_stops_emit ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_signal_info_true_stops_emit       (<em class="parameter"><code><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the returning true in the signal handler will
+stop the emission of the signal.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if returning true stops the signal emission</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.9.6.5.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if returning true stops the signal emission</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GISignalInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GISignalInfo"></a><h3>GISignalInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GISignalInfo;
-</pre>
-<p>Represents a signal.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 4702bab..0b26634 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIStructInfo: GObject Introspection Reference Manual</title>
+<title>GIStructInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIEnumInfo.html" title="GIEnumInfo">
 <link rel="next" href="gi-GIUnionInfo.html" title="GIUnionInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIStructInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIEnumInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIUnionInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIEnumInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIUnionInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIStructInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIStructInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIStructInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIStructInfo.top_of_page"></a>GIStructInfo</span></h2>
 <p>GIStructInfo â€” Struct representing a C structure</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIStructInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#GI-IS-STRUCT-INFO:CAPS" title="GI_IS_STRUCT_INFO()">GI_IS_STRUCT_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gsize</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-alignment" title="g_struct_info_get_alignment ()">g_struct_info_get_alignment</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gsize</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-size" title="g_struct_info_get_size ()">g_struct_info_get_size</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-is-gtype-struct" title="g_struct_info_is_gtype_struct ()">g_struct_info_is_gtype_struct</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-is-foreign" title="g_struct_info_is_foreign ()">g_struct_info_is_foreign</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-fields" title="g_struct_info_get_n_fields ()">g_struct_info_get_n_fields</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-field" title="g_struct_info_get_field ()">g_struct_info_get_field</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-methods" title="g_struct_info_get_n_methods ()">g_struct_info_get_n_methods</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-get-method" title="g_struct_info_get_method ()">g_struct_info_get_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIStructInfo.html#g-struct-info-find-method" title="g_struct_info_find_method ()">g_struct_info_find_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIStructInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo">GIStructInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIStructInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GIStructInfo.html#GI-IS-STRUCT-INFO:CAPS" title="GI_IS_STRUCT_INFO()">GI_IS_STRUCT_INFO</a>                   (info)
+typedef             <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo">GIStructInfo</a>;
+<span class="returnvalue">gsize</span>               <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-alignment" title="g_struct_info_get_alignment ()">g_struct_info_get_alignment</a>         (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);
+<span class="returnvalue">gsize</span>               <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-size" title="g_struct_info_get_size ()">g_struct_info_get_size</a>              (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIStructInfo.html#g-struct-info-is-gtype-struct" title="g_struct_info_is_gtype_struct ()">g_struct_info_is_gtype_struct</a>       (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIStructInfo.html#g-struct-info-is-foreign" title="g_struct_info_is_foreign ()">g_struct_info_is_foreign</a>            (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-fields" title="g_struct_info_get_n_fields ()">g_struct_info_get_n_fields</a>          (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *       <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-field" title="g_struct_info_get_field ()">g_struct_info_get_field</a>             (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-n-methods" title="g_struct_info_get_n_methods ()">g_struct_info_get_n_methods</a>         (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIStructInfo.html#g-struct-info-get-method" title="g_struct_info_get_method ()">g_struct_info_get_method</a>            (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIStructInfo.html#g-struct-info-find-method" title="g_struct_info_find_method ()">g_struct_info_find_method</a>           (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIStructInfo.description"></a><h2>Description</h2>
-<p>GIStructInfo represents a generic C structure type.</p>
-<p>A structure has methods and fields.</p>
+<p>
+GIStructInfo represents a generic C structure type.
+</p>
+<p>
+A structure has methods and fields.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-giobjectinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
          +----GIStructInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIStructInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIStructInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-STRUCT-INFO:CAPS"></a><h3>GI_IS_STRUCT_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_STRUCT_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GIStructInfo"></a><h3>GIStructInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIStructInfo;
+</pre>
+<p>
+Represents a struct.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-get-alignment"></a><h3>g_struct_info_get_alignment ()</h3>
-<pre class="programlisting"><span class="returnvalue">gsize</span>
-g_struct_info_get_alignment (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the required alignment of the structure.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-get-alignment"></a><h3>g_struct_info_get_alignment ()</h3>
+<pre class="programlisting"><span class="returnvalue">gsize</span>               g_struct_info_get_alignment         (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the required alignment of the structure.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>required alignment in bytes</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.3.6"></a><h4>Returns</h4>
-<p> required alignment in bytes</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-get-size"></a><h3>g_struct_info_get_size ()</h3>
-<pre class="programlisting"><span class="returnvalue">gsize</span>
-g_struct_info_get_size (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the total size of the structure.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-get-size"></a><h3>g_struct_info_get_size ()</h3>
+<pre class="programlisting"><span class="returnvalue">gsize</span>               g_struct_info_get_size              (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the total size of the structure.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>size of the structure in bytes</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.4.6"></a><h4>Returns</h4>
-<p> size of the structure in bytes</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-is-gtype-struct"></a><h3>g_struct_info_is_gtype_struct ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_struct_info_is_gtype_struct (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
-<p>Return true if this structure represents the "class structure" for some
-<span class="type">GObject</span> or <a href="/home/ebassi/gnome/install/share/gtk-doc/html/gobject/GTypeModule.html"><span class="type">GInterface</span></a>.  This function is mainly useful to hide this kind of structure
-from generated public APIs.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-is-gtype-struct"></a><h3>g_struct_info_is_gtype_struct ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_struct_info_is_gtype_struct       (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
+<p>
+Return true if this structure represents the "class structure" for some
+<span class="type">GObject</span> or <span class="type">GInterface</span>.  This function is mainly useful to hide this kind of structure
+from generated public APIs.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if this is a class struct, <code class="literal">FALSE</code> otherwise</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.5.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if this is a class struct, <code class="literal">FALSE</code> otherwise</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-is-foreign"></a><h3>g_struct_info_is_foreign ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_struct_info_is_foreign (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-is-foreign"></a><h3>g_struct_info_is_foreign ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_struct_info_is_foreign            (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.6.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-get-n-fields"></a><h3>g_struct_info_get_n_fields ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_struct_info_get_n_fields (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of fields this structure has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-get-n-fields"></a><h3>g_struct_info_get_n_fields ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_struct_info_get_n_fields          (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of fields this structure has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of fields</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.7.6"></a><h4>Returns</h4>
-<p> number of fields</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-get-field"></a><h3>g_struct_info_get_field ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *
-g_struct_info_get_field (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
-                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain the type information for field with specified index.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-get-field"></a><h3>g_struct_info_get_field ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *       g_struct_info_get_field             (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain the type information for field with specified index.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>a field index</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>a field index</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-get-n-methods"></a><h3>g_struct_info_get_n_methods ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_struct_info_get_n_methods (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of methods this structure has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-get-n-methods"></a><h3>g_struct_info_get_n_methods ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_struct_info_get_n_methods         (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of methods this structure has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of methods</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.9.6"></a><h4>Returns</h4>
-<p> number of methods</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-get-method"></a><h3>g_struct_info_get_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_struct_info_get_method (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain the type information for method with specified index.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-get-method"></a><h3>g_struct_info_get_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_struct_info_get_method            (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain the type information for method with specified index.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>a method index</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>a method index</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.10.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-struct-info-find-method"></a><h3>g_struct_info_find_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_struct_info_find_method (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
-                           <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Obtain the type information for method named <em class="parameter"><code>name</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-struct-info-find-method"></a><h3>g_struct_info_find_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_struct_info_find_method           (<em class="parameter"><code><a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Obtain the type information for method named <em class="parameter"><code>name</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIStructInfo.html#GIStructInfo" title="GIStructInfo"><span class="type">GIStructInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>a method name</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>a method name</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.13.6.11.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIStructInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIStructInfo"></a><h3>GIStructInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIStructInfo;
-</pre>
-<p>Represents a struct.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 72353c0..efabc85 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GITypeInfo: GObject Introspection Reference Manual</title>
+<title>GITypeInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIPropertyInfo.html" title="GIPropertyInfo">
 <link rel="next" href="gi-GIValueInfo.html" title="GIValueInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GITypeInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIPropertyInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIValueInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIPropertyInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIValueInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GITypeInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GITypeInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GITypeInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GITypeInfo.top_of_page"></a>GITypeInfo</span></h2>
 <p>GITypeInfo â€” Struct representing a type</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GITypeInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#GI-IS-TYPE-INFO:CAPS" title="GI_IS_TYPE_INFO()">GI_IS_TYPE_INFO</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-tag-to-string" title="g_type_tag_to_string ()">g_type_tag_to_string</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-info-type-to-string" title="g_info_type_to_string ()">g_info_type_to_string</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-is-pointer" title="g_type_info_is_pointer ()">g_type_info_is_pointer</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-tag" title="g_type_info_get_tag ()">g_type_info_get_tag</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-param-type" title="g_type_info_get_param_type ()">g_type_info_get_param_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GIBaseInfo</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-interface" title="g_type_info_get_interface ()">g_type_info_get_interface</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-length" title="g_type_info_get_array_length ()">g_type_info_get_array_length</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-fixed-size" title="g_type_info_get_array_fixed_size ()">g_type_info_get_array_fixed_size</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-is-zero-terminated" title="g_type_info_is_zero_terminated ()">g_type_info_is_zero_terminated</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType"><span class="returnvalue">GIArrayType</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-type" title="g_type_info_get_array_type ()">g_type_info_get_array_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GITypeInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo">GITypeInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GITypeInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GITypeInfo.html#GI-IS-TYPE-INFO:CAPS" title="GI_IS_TYPE_INFO()">GI_IS_TYPE_INFO</a>                     (info)
+typedef             <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo">GITypeInfo</a>;
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GITypeInfo.html#g-type-tag-to-string" title="g_type_tag_to_string ()">g_type_tag_to_string</a>                (<em class="parameter"><code><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> type</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-GITypeInfo.html#g-info-type-to-string" title="g_info_type_to_string ()">g_info_type_to_string</a>               (<em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> type</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GITypeInfo.html#g-type-info-is-pointer" title="g_type_info_is_pointer ()">g_type_info_is_pointer</a>              (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>           <a class="link" href="gi-GITypeInfo.html#g-type-info-get-tag" title="g_type_info_get_tag ()">g_type_info_get_tag</a>                 (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GITypeInfo.html#g-type-info-get-param-type" title="g_type_info_get_param_type ()">g_type_info_get_param_type</a>          (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<span class="returnvalue">GIBaseInfo</span> *        <a class="link" href="gi-GITypeInfo.html#g-type-info-get-interface" title="g_type_info_get_interface ()">g_type_info_get_interface</a>           (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-length" title="g_type_info_get_array_length ()">g_type_info_get_array_length</a>        (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-fixed-size" title="g_type_info_get_array_fixed_size ()">g_type_info_get_array_fixed_size</a>    (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GITypeInfo.html#g-type-info-is-zero-terminated" title="g_type_info_is_zero_terminated ()">g_type_info_is_zero_terminated</a>      (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType"><span class="returnvalue">GIArrayType</span></a>         <a class="link" href="gi-GITypeInfo.html#g-type-info-get-array-type" title="g_type_info_get_array_type ()">g_type_info_get_array_type</a>          (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GITypeInfo.description"></a><h2>Description</h2>
-<p>GITypeInfo represents a type. You can retrieve a type info from
+<p>
+GITypeInfo represents a type. You can retrieve a type info from
 an argument (see <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>), a functions return value (see <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>),
 a field (see <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>), a property (see <a class="link" href="gi-GIPropertyInfo.html#GIPropertyInfo" title="GIPropertyInfo"><span class="type">GIPropertyInfo</span></a>), a constant
-(see <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>) or for a union discriminator (see <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>).</p>
-<p>A type can either be a of a basic type which is a standard C primitive
+(see <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>) or for a union discriminator (see <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>).
+</p>
+<p>
+A type can either be a of a basic type which is a standard C primitive
 type or an interface type. For interface types you need to call
-<a class="link" href="gi-GITypeInfo.html#g-type-info-get-interface" title="g_type_info_get_interface ()"><code class="function">g_type_info_get_interface()</code></a> to get a reference to the base info for that
-interface.</p>
+<a class="link" href="gi-GITypeInfo.html#g-type-info-get-interface" title="g_type_info_get_interface ()"><code class="function">g_type_info_get_interface()</code></a> to get a reference to the base info for that
+interface.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-gitypeinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -156,325 +75,314 @@ interface.</p>
    +----GITypeInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GITypeInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GITypeInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GI-IS-TYPE-INFO:CAPS"></a><h3>GI_IS_TYPE_INFO()</h3>
 <pre class="programlisting">#define             GI_IS_TYPE_INFO(info)</pre>
-<p>Checks if <em class="parameter"><code>info</code></em>
- is a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>an info structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>an info structure</td>
 </tr></tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GITypeInfo"></a><h3>GITypeInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GITypeInfo;
+</pre>
+<p>
+Represents type information, direction, transfer etc.
+</p>
 </div>
 <hr>
 <div class="refsect2">
-<a name="g-type-tag-to-string"></a><h3>g_type_tag_to_string ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_type_tag_to_string (<em class="parameter"><code><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> type</code></em>);</pre>
-<p>Obtain a string representation of <em class="parameter"><code>type</code></em>
+<a name="g-type-tag-to-string"></a><h3>g_type_tag_to_string ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_type_tag_to_string                (<em class="parameter"><code><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> type</code></em>);</pre>
+<p>
+Obtain a string representation of <em class="parameter"><code>type</code></em>
 </p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>the type_tag</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>the type_tag</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the string</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.3.6"></a><h4>Returns</h4>
-<p> the string</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-info-type-to-string"></a><h3>g_info_type_to_string ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_info_type_to_string (<em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> type</code></em>);</pre>
-<p>Obtain a string representation of <em class="parameter"><code>type</code></em>
+<a name="g-info-type-to-string"></a><h3>g_info_type_to_string ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_info_type_to_string               (<em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIInfoType" title="enum GIInfoType"><span class="type">GIInfoType</span></a> type</code></em>);</pre>
+<p>
+Obtain a string representation of <em class="parameter"><code>type</code></em>
 </p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>type</p></td>
-<td class="parameter_description"><p>the info type</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>the info type</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the string</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.4.6"></a><h4>Returns</h4>
-<p> the string</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-is-pointer"></a><h3>g_type_info_is_pointer ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_type_info_is_pointer (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the type is passed as a reference.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-is-pointer"></a><h3>g_type_info_is_pointer ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_type_info_is_pointer              (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the type is passed as a reference.
+</p>
+<p>
+Note that the types of <a class="link" href="gi-GIArgInfo.html#GI-DIRECTION-OUT:CAPS"><code class="literal">GI_DIRECTION_OUT</code></a> and <a class="link" href="gi-GIArgInfo.html#GI-DIRECTION-INOUT:CAPS"><code class="literal">GI_DIRECTION_INOUT</code></a> parameters
+will only be pointers if the underlying type being transferred is a pointer
+(i.e. only if the type of the C function’s formal parameter is a pointer to a
+pointer).
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if it is a pointer</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.5.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if it is a pointer</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-tag"></a><h3>g_type_info_get_tag ()</h3>
-<pre class="programlisting"><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>
-g_type_info_get_tag (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type tag for the type. See <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> for a list
-of type tags.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-get-tag"></a><h3>g_type_info_get_tag ()</h3>
+<pre class="programlisting"><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="returnvalue">GITypeTag</span></a>           g_type_info_get_tag                 (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type tag for the type. See <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> for a list
+of type tags.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the type tag</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.6.6"></a><h4>Returns</h4>
-<p> the type tag</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-param-type"></a><h3>g_type_info_get_param_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_type_info_get_param_type (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>,
-                            <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain the parameter type <em class="parameter"><code>n</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-get-param-type"></a><h3>g_type_info_get_param_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_type_info_get_param_type          (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain the parameter type <em class="parameter"><code>n</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>index of the parameter</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>index of the parameter</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the param type info. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.7.6"></a><h4>Returns</h4>
-<p> the param type info. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-interface"></a><h3>g_type_info_get_interface ()</h3>
-<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
-g_type_info_get_interface (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>For types which have <a class="link" href="gi-common-types.html#GI-TYPE-TAG-INTERFACE:CAPS"><span class="type">GI_TYPE_TAG_INTERFACE</span></a> such as GObjects and boxed values,
+<a name="g-type-info-get-interface"></a><h3>g_type_info_get_interface ()</h3>
+<pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *        g_type_info_get_interface           (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+For types which have <a class="link" href="gi-common-types.html#GI-TYPE-TAG-INTERFACE:CAPS"><span class="type">GI_TYPE_TAG_INTERFACE</span></a> such as GObjects and boxed values,
 this function returns full information about the referenced type.  You can then
 inspect the type of the returned <span class="type">GIBaseInfo</span> to further query whether it is
-a concrete GObject, a GInterface, a structure, etc. using <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-type" title="g_base_info_get_type ()"><code class="function">g_base_info_get_type()</code></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+a concrete GObject, a GInterface, a structure, etc. using <a class="link" href="gi-GIBaseInfo.html#g-base-info-get-type" title="g_base_info_get_type ()"><code class="function">g_base_info_get_type()</code></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <span class="type">GIBaseInfo</span>, or <code class="literal">NULL</code>. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.8.6"></a><h4>Returns</h4>
-<p> the <span class="type">GIBaseInfo</span>, or <code class="literal">NULL</code>. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-array-length"></a><h3>g_type_info_get_array_length ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_type_info_get_array_length (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the array length of the type. The type tag must be a
-<a class="link" href="gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS"><span class="type">GI_TYPE_TAG_ARRAY</span></a> or -1 will returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-get-array-length"></a><h3>g_type_info_get_array_length ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_type_info_get_array_length        (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the array length of the type. The type tag must be a
+<a class="link" href="gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS"><span class="type">GI_TYPE_TAG_ARRAY</span></a> or -1 will returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the array length, or -1 if the type is not an array</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.9.6"></a><h4>Returns</h4>
-<p> the array length, or -1 if the type is not an array</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-array-fixed-size"></a><h3>g_type_info_get_array_fixed_size ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_type_info_get_array_fixed_size (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the fixed array size of the type. The type tag must be a
-<a class="link" href="gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS"><span class="type">GI_TYPE_TAG_ARRAY</span></a> or -1 will returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-get-array-fixed-size"></a><h3>g_type_info_get_array_fixed_size ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_type_info_get_array_fixed_size    (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the fixed array size of the type. The type tag must be a
+<a class="link" href="gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS"><span class="type">GI_TYPE_TAG_ARRAY</span></a> or -1 will returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the size or -1 if it's not an array</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.10.6"></a><h4>Returns</h4>
-<p> the size or -1 if it's not an array</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-is-zero-terminated"></a><h3>g_type_info_is_zero_terminated ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_type_info_is_zero_terminated (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain if the last element of the array is <code class="literal">NULL</code>. The type tag must be a
-<a class="link" href="gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS"><span class="type">GI_TYPE_TAG_ARRAY</span></a> or <code class="literal">FALSE</code> will returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-is-zero-terminated"></a><h3>g_type_info_is_zero_terminated ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_type_info_is_zero_terminated      (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain if the last element of the array is <code class="literal">NULL</code>. The type tag must be a
+<a class="link" href="gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS"><span class="type">GI_TYPE_TAG_ARRAY</span></a> or <code class="literal">FALSE</code> will returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if zero terminated</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.11.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if zero terminated</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-array-type"></a><h3>g_type_info_get_array_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType"><span class="returnvalue">GIArrayType</span></a>
-g_type_info_get_array_type (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the array type for this type. See <a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType"><span class="type">GIArrayType</span></a> for a list of
+<a name="g-type-info-get-array-type"></a><h3>g_type_info_get_array_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType"><span class="returnvalue">GIArrayType</span></a>         g_type_info_get_array_type          (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the array type for this type. See <a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType"><span class="type">GIArrayType</span></a> for a list of
 possible values. If the type tag of this type is not array, -1 will be
-returned.</p>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+returned.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the array type or -1</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.21.6.12.6"></a><h4>Returns</h4>
-<p> the array type or -1</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GITypeInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GITypeInfo"></a><h3>GITypeInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GITypeInfo;
-</pre>
-<p>Represents type information, direction, transfer etc.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 67765cc..759dc20 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GITypelib: GObject Introspection Reference Manual</title>
+<title>GITypelib</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="gi-typelib.html" title="GITypelib">
 <link rel="prev" href="gi-gitypelib.html" title="gitypelib">
 <link rel="next" href="ch03.html" title="TODO">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GITypelib.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gi-typelib.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-gitypelib.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="ch03.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-gitypelib.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="gi-typelib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="ch03.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GITypelib.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GITypelib.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GITypelib"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GITypelib.top_of_page"></a>GITypelib</span></h2>
 <p>GITypelib â€” Layout and accessors for typelib</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsect1">
 <a name="gi-GITypelib.stability-level"></a><h2>Stability Level</h2>
-<acronym title="The intention of a Stable interface is to enable arbitrary third parties to
-develop applications to these interfaces, release them, and have confidence that
-they will run on all minor releases of the product (after the one in which the
-interface was introduced, and within the same major release). Even at a major
-release, incompatible changes are expected to be rare, and to have strong
-justifications.
-"><span class="acronym">Stable</span></acronym>, unless otherwise indicated
-</div>
-<div class="refsect1">
-<a name="gi-GITypelib.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry" title="g_typelib_get_dir_entry ()">g_typelib_get_dir_entry</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-name" title="g_typelib_get_dir_entry_by_name ()">g_typelib_get_dir_entry_by_name</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name" title="g_typelib_get_dir_entry_by_gtype_name ()">g_typelib_get_dir_entry_by_gtype_name</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain" title="g_typelib_get_dir_entry_by_error_domain ()">g_typelib_get_dir_entry_by_error_domain</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-matches-gtype-name-prefix" title="g_typelib_matches_gtype_name_prefix ()">g_typelib_matches_gtype_name_prefix</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-check-sanity" title="g_typelib_check_sanity ()">g_typelib_check_sanity</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-get-string" title="g_typelib_get_string()">g_typelib_get_string</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#G-TYPELIB-ERROR:CAPS" title="G_TYPELIB_ERROR">G_TYPELIB_ERROR</a></td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">GQuark</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-error-quark" title="g_typelib_error_quark ()">g_typelib_error_quark</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GITypelib.html#g-typelib-validate" title="g_typelib_validate ()">g_typelib_validate</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GITypelib.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#G-IR-MAGIC:CAPS" title="G_IR_MAGIC">G_IR_MAGIC</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#GTypelibBlobType" title="enum GTypelibBlobType">GTypelibBlobType</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#Header" title="Header">Header</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#SectionType" title="enum SectionType">SectionType</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#Section" title="Section">Section</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry">DirEntry</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#SimpleTypeBlobFlags" title="SimpleTypeBlobFlags">SimpleTypeBlobFlags</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob">SimpleTypeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ArgBlob" title="ArgBlob">ArgBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob">SignatureBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#CommonBlob" title="CommonBlob">CommonBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#FunctionBlob" title="FunctionBlob">FunctionBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#CallbackBlob" title="CallbackBlob">CallbackBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#InterfaceTypeBlob" title="InterfaceTypeBlob">InterfaceTypeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ArrayTypeDimension" title="ArrayTypeDimension">ArrayTypeDimension</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ArrayTypeBlob" title="ArrayTypeBlob">ArrayTypeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ParamTypeBlob" title="ParamTypeBlob">ParamTypeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ErrorTypeBlob" title="ErrorTypeBlob">ErrorTypeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ValueBlob" title="ValueBlob">ValueBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#FieldBlob" title="FieldBlob">FieldBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#RegisteredTypeBlob" title="RegisteredTypeBlob">RegisteredTypeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#StructBlob" title="StructBlob">StructBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#UnionBlob" title="UnionBlob">UnionBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#EnumBlob" title="EnumBlob">EnumBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#PropertyBlob" title="PropertyBlob">PropertyBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#SignalBlob" title="SignalBlob">SignalBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#VFuncBlob" title="VFuncBlob">VFuncBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ObjectBlob" title="ObjectBlob">ObjectBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#InterfaceBlob" title="InterfaceBlob">InterfaceBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#ConstantBlob" title="ConstantBlob">ConstantBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#AttributeBlob" title="AttributeBlob">AttributeBlob</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#GITypelibError" title="enum GITypelibError">GITypelibError</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-GITypelib.html#GITypelibHashBuilder" title="GITypelibHashBuilder">GITypelibHashBuilder</a></td>
-</tr>
-</tbody>
-</table></div>
+Stable, unless otherwise indicated
+</div>
+<div class="refsynopsisdiv">
+<a name="gi-GITypelib.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">#define             <a class="link" href="gi-GITypelib.html#G-IR-MAGIC:CAPS" title="G_IR_MAGIC">G_IR_MAGIC</a>
+enum                <a class="link" href="gi-GITypelib.html#GTypelibBlobType" title="enum GTypelibBlobType">GTypelibBlobType</a>;
+                    <a class="link" href="gi-GITypelib.html#Header" title="Header">Header</a>;
+enum                <a class="link" href="gi-GITypelib.html#SectionType" title="enum SectionType">SectionType</a>;
+                    <a class="link" href="gi-GITypelib.html#Section" title="Section">Section</a>;
+                    <a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry">DirEntry</a>;
+                    <a class="link" href="gi-GITypelib.html#SimpleTypeBlobFlags" title="SimpleTypeBlobFlags">SimpleTypeBlobFlags</a>;
+union               <a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob">SimpleTypeBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ArgBlob" title="ArgBlob">ArgBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob">SignatureBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#CommonBlob" title="CommonBlob">CommonBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#FunctionBlob" title="FunctionBlob">FunctionBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#CallbackBlob" title="CallbackBlob">CallbackBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#InterfaceTypeBlob" title="InterfaceTypeBlob">InterfaceTypeBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ArrayTypeDimension" title="ArrayTypeDimension">ArrayTypeDimension</a>;
+                    <a class="link" href="gi-GITypelib.html#ArrayTypeBlob" title="ArrayTypeBlob">ArrayTypeBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ParamTypeBlob" title="ParamTypeBlob">ParamTypeBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ErrorTypeBlob" title="ErrorTypeBlob">ErrorTypeBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ValueBlob" title="ValueBlob">ValueBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#FieldBlob" title="FieldBlob">FieldBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#RegisteredTypeBlob" title="RegisteredTypeBlob">RegisteredTypeBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#StructBlob" title="StructBlob">StructBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#UnionBlob" title="UnionBlob">UnionBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#EnumBlob" title="EnumBlob">EnumBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#PropertyBlob" title="PropertyBlob">PropertyBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#SignalBlob" title="SignalBlob">SignalBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#VFuncBlob" title="VFuncBlob">VFuncBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ObjectBlob" title="ObjectBlob">ObjectBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#InterfaceBlob" title="InterfaceBlob">InterfaceBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#ConstantBlob" title="ConstantBlob">ConstantBlob</a>;
+                    <a class="link" href="gi-GITypelib.html#AttributeBlob" title="AttributeBlob">AttributeBlob</a>;
+<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          <a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry" title="g_typelib_get_dir_entry ()">g_typelib_get_dir_entry</a>             (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">guint16</span> index</code></em>);
+<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          <a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-name" title="g_typelib_get_dir_entry_by_name ()">g_typelib_get_dir_entry_by_name</a>     (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">char</span> *name</code></em>);
+<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          <a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name" title="g_typelib_get_dir_entry_by_gtype_name ()">g_typelib_get_dir_entry_by_gtype_name</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *gtype_name</code></em>);
+<a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          <a class="link" href="gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain" title="g_typelib_get_dir_entry_by_error_domain ()">g_typelib_get_dir_entry_by_error_domain</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">GQuark</span> error_domain</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GITypelib.html#g-typelib-matches-gtype-name-prefix" title="g_typelib_matches_gtype_name_prefix ()">g_typelib_matches_gtype_name_prefix</a> (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *gtype_name</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-GITypelib.html#g-typelib-check-sanity" title="g_typelib_check_sanity ()">g_typelib_check_sanity</a>              (<em class="parameter"><code><span class="type">void</span></code></em>);
+#define             <a class="link" href="gi-GITypelib.html#g-typelib-get-string" title="g_typelib_get_string()">g_typelib_get_string</a>                (typelib,
+                                                         offset)
+enum                <a class="link" href="gi-GITypelib.html#GITypelibError" title="enum GITypelibError">GITypelibError</a>;
+#define             <a class="link" href="gi-GITypelib.html#G-TYPELIB-ERROR:CAPS" title="G_TYPELIB_ERROR">G_TYPELIB_ERROR</a>
+<span class="returnvalue">GQuark</span>              <a class="link" href="gi-GITypelib.html#g-typelib-error-quark" title="g_typelib_error_quark ()">g_typelib_error_quark</a>               (<em class="parameter"><code><span class="type">void</span></code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GITypelib.html#g-typelib-validate" title="g_typelib_validate ()">g_typelib_validate</a>                  (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+                    <a class="link" href="gi-GITypelib.html#GITypelibHashBuilder" title="GITypelibHashBuilder">GITypelibHashBuilder</a>;
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GITypelib.description"></a><h2>Description</h2>
-<p>The "typelib" is a binary, readonly, memory-mappable database
-containing reflective information about a GObject library.</p>
-<p>The format of GObject typelib is strongly influenced by the Mozilla XPCOM
-format.</p>
-<p>Some of the differences to XPCOM include:</p>
+<p>
+The "typelib" is a binary, readonly, memory-mappable database
+containing reflective information about a GObject library.
+</p>
+<p>
+The format of GObject typelib is strongly influenced by the Mozilla XPCOM
+format.
+</p>
+<p>
+Some of the differences to XPCOM include:
+</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
 <li class="listitem"><p>Type information is stored not quite as compactly (XPCOM stores it inline
-in function descriptions in variable-sized blobs of 1 to n bytes. We store
-16 bits of type information for each parameter, which is enough to encode
-simple types inline. Complex (e.g. recursive) types are stored out of line
-in a separate list of types.</p></li>
+  in function descriptions in variable-sized blobs of 1 to n bytes. We store
+  16 bits of type information for each parameter, which is enough to encode
+  simple types inline. Complex (e.g. recursive) types are stored out of line
+  in a separate list of types.</p></li>
 <li class="listitem"><p>String and complex type data is stored outside of typelib entry blobs,
-references are stored as offsets relative to the start of the typelib.
-One possibility is to store the strings and types in a pools at the end
-of the typelib.</p></li>
+  references are stored as offsets relative to the start of the typelib.
+  One possibility is to store the strings and types in a pools at the end
+  of the typelib.</p></li>
 </ul></div>
-<p>The typelib has the following general format:</p>
-<p>  typelib ::= header, section-index, directory, blobs, attributes, attributedata</p>
-<p>  directory ::= list of entries</p>
-<p>  entry ::= blob type, name, namespace, offset
+<p>
+</p>
+<p>
+The typelib has the following general format:
+</p>
+<p>
+  typelib ::= header, section-index, directory, blobs, attributes, attributedata
+</p>
+<p>
+  directory ::= list of entries
+</p>
+<p>
+  entry ::= blob type, name, namespace, offset
   blob ::= function|callback|struct|boxed|enum|flags|object|interface|constant|union
   attribute ::= offset, key, value
-  attributedata ::= string data for attributes</p>
-<p>Details</p>
-<p>We describe the fragments that make up the typelib in the form of C structs
+  attributedata ::= string data for attributes
+</p>
+<p>
+Details
+</p>
+<p>
+We describe the fragments that make up the typelib in the form of C structs
 (although some fall short of being valid C structs since they contain
-multiple flexible arrays).</p>
-</div>
-<div class="refsect1">
-<a name="gi-GITypelib.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="g-typelib-get-dir-entry"></a><h3>g_typelib_get_dir_entry ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-g_typelib_get_dir_entry (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                         <em class="parameter"><code><span class="type">guint16</span> index</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>index</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.2.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-get-dir-entry-by-name"></a><h3>g_typelib_get_dir_entry_by_name ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-g_typelib_get_dir_entry_by_name (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                                 <em class="parameter"><code>const <span class="type">char</span> *name</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.3.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-get-dir-entry-by-gtype-name"></a><h3>g_typelib_get_dir_entry_by_gtype_name ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-g_typelib_get_dir_entry_by_gtype_name (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                                       <em class="parameter"><code>const <span class="type">gchar</span> *gtype_name</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>gtype_name</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.4.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-get-dir-entry-by-error-domain"></a><h3>g_typelib_get_dir_entry_by_error_domain ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *
-g_typelib_get_dir_entry_by_error_domain
-                               (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                                <em class="parameter"><code><span class="type">GQuark</span> error_domain</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>error_domain</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.5.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-matches-gtype-name-prefix"></a><h3>g_typelib_matches_gtype_name_prefix ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_typelib_matches_gtype_name_prefix (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                                     <em class="parameter"><code>const <span class="type">gchar</span> *gtype_name</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>gtype_name</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.6.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-check-sanity"></a><h3>g_typelib_check_sanity ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_typelib_check_sanity (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>TODO</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-get-string"></a><h3>g_typelib_get_string()</h3>
-<pre class="programlisting">#define             g_typelib_get_string(typelib,offset)</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>offset</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.8.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="G-TYPELIB-ERROR:CAPS"></a><h3>G_TYPELIB_ERROR</h3>
-<pre class="programlisting">#define G_TYPELIB_ERROR (g_typelib_error_quark ())
-</pre>
-<p>TODO</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-error-quark"></a><h3>g_typelib_error_quark ()</h3>
-<pre class="programlisting"><span class="returnvalue">GQuark</span>
-g_typelib_error_quark (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.10.5"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-typelib-validate"></a><h3>g_typelib_validate ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_typelib_validate (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                    <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.3.3.7.11.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
+multiple flexible arrays).
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GITypelib.other_details"></a><h2>Types and Values</h2>
+<a name="gi-GITypelib.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="G-IR-MAGIC:CAPS"></a><h3>G_IR_MAGIC</h3>
 <pre class="programlisting">#define G_IR_MAGIC "GOBJ\nMETADATA\r\n\032"
 </pre>
-<p>Identifying prefix for the typelib.  This was inspired by XPCOM,
-which in turn borrowed from PNG.</p>
+<p>
+Identifying prefix for the typelib.  This was inspired by XPCOM,
+which in turn borrowed from PNG.
+</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GTypelibBlobType"></a><h3>enum GTypelibBlobType</h3>
-<p>The integral value of this enumeration appears in each "Blob" component of
-a typelib to identify its type.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.3.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">typedef enum {
+  BLOB_TYPE_INVALID,
+  BLOB_TYPE_FUNCTION,
+  BLOB_TYPE_CALLBACK,
+  BLOB_TYPE_STRUCT,
+  BLOB_TYPE_BOXED,
+  BLOB_TYPE_ENUM,
+  BLOB_TYPE_FLAGS,
+  BLOB_TYPE_OBJECT,
+  BLOB_TYPE_INTERFACE,
+  BLOB_TYPE_CONSTANT,
+  BLOB_TYPE_INVALID_0,
+  BLOB_TYPE_UNION
+} GTypelibBlobType;
+</pre>
+<p>
+The integral value of this enumeration appears in each "Blob" component of
+a typelib to identify its type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-INVALID:CAPS"></a>BLOB_TYPE_INVALID</p></td>
-<td class="enum_member_description">
-<p>Should not appear in code</p>
+<td><p><a name="BLOB-TYPE-INVALID:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_INVALID</code></span></p></td>
+<td>Should not appear in code
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-FUNCTION:CAPS"></a>BLOB_TYPE_FUNCTION</p></td>
-<td class="enum_member_description">
-<p>A <a class="link" href="gi-GITypelib.html#FunctionBlob" title="FunctionBlob"><span class="type">FunctionBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-FUNCTION:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_FUNCTION</code></span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#FunctionBlob" title="FunctionBlob"><span class="type">FunctionBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-CALLBACK:CAPS"></a>BLOB_TYPE_CALLBACK</p></td>
-<td class="enum_member_description">
-<p>A <a class="link" href="gi-GITypelib.html#CallbackBlob" title="CallbackBlob"><span class="type">CallbackBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-CALLBACK:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_CALLBACK</code></span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#CallbackBlob" title="CallbackBlob"><span class="type">CallbackBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-STRUCT:CAPS"></a>BLOB_TYPE_STRUCT</p></td>
-<td class="enum_member_description">
-<p>A <a class="link" href="gi-GITypelib.html#StructBlob" title="StructBlob"><span class="type">StructBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-STRUCT:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_STRUCT</code></span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#StructBlob" title="StructBlob"><span class="type">StructBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-BOXED:CAPS"></a>BLOB_TYPE_BOXED</p></td>
-<td class="enum_member_description">
-<p>Can be either a <a class="link" href="gi-GITypelib.html#StructBlob" title="StructBlob"><span class="type">StructBlob</span></a> or <a class="link" href="gi-GITypelib.html#UnionBlob" title="UnionBlob"><span class="type">UnionBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-BOXED:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_BOXED</code></span></p></td>
+<td>Can be either a <a class="link" href="gi-GITypelib.html#StructBlob" title="StructBlob"><span class="type">StructBlob</span></a> or <a class="link" href="gi-GITypelib.html#UnionBlob" title="UnionBlob"><span class="type">UnionBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-ENUM:CAPS"></a>BLOB_TYPE_ENUM</p></td>
-<td class="enum_member_description">
-<p>An <a class="link" href="gi-GITypelib.html#EnumBlob" title="EnumBlob"><span class="type">EnumBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-ENUM:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_ENUM</code></span></p></td>
+<td>An <a class="link" href="gi-GITypelib.html#EnumBlob" title="EnumBlob"><span class="type">EnumBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-FLAGS:CAPS"></a>BLOB_TYPE_FLAGS</p></td>
-<td class="enum_member_description">
-<p>An <a class="link" href="gi-GITypelib.html#EnumBlob" title="EnumBlob"><span class="type">EnumBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-FLAGS:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_FLAGS</code></span></p></td>
+<td>An <a class="link" href="gi-GITypelib.html#EnumBlob" title="EnumBlob"><span class="type">EnumBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-OBJECT:CAPS"></a>BLOB_TYPE_OBJECT</p></td>
-<td class="enum_member_description">
-<p>An <a class="link" href="gi-GITypelib.html#ObjectBlob" title="ObjectBlob"><span class="type">ObjectBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-OBJECT:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_OBJECT</code></span></p></td>
+<td>An <a class="link" href="gi-GITypelib.html#ObjectBlob" title="ObjectBlob"><span class="type">ObjectBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-INTERFACE:CAPS"></a>BLOB_TYPE_INTERFACE</p></td>
-<td class="enum_member_description">
-<p>An <a class="link" href="gi-GITypelib.html#InterfaceBlob" title="InterfaceBlob"><span class="type">InterfaceBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-INTERFACE:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_INTERFACE</code></span></p></td>
+<td>An <a class="link" href="gi-GITypelib.html#InterfaceBlob" title="InterfaceBlob"><span class="type">InterfaceBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-CONSTANT:CAPS"></a>BLOB_TYPE_CONSTANT</p></td>
-<td class="enum_member_description">
-<p>A <a class="link" href="gi-GITypelib.html#ConstantBlob" title="ConstantBlob"><span class="type">ConstantBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-CONSTANT:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_CONSTANT</code></span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#ConstantBlob" title="ConstantBlob"><span class="type">ConstantBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-INVALID-0:CAPS"></a>BLOB_TYPE_INVALID_0</p></td>
-<td class="enum_member_description">
-<p>Deleted, used to be ErrorDomain.</p>
+<td><p><a name="BLOB-TYPE-INVALID-0:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_INVALID_0</code></span></p></td>
+<td>Deleted, used to be ErrorDomain.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="BLOB-TYPE-UNION:CAPS"></a>BLOB_TYPE_UNION</p></td>
-<td class="enum_member_description">
-<p>A <a class="link" href="gi-GITypelib.html#UnionBlob" title="UnionBlob"><span class="type">UnionBlob</span></a></p>
+<td><p><a name="BLOB-TYPE-UNION:CAPS"></a><span class="term"><code class="literal">BLOB_TYPE_UNION</code></span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#UnionBlob" title="UnionBlob"><span class="type">UnionBlob</span></a>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="Header"></a><h3>Header</h3>
@@ -721,258 +294,203 @@ a typelib to identify its type.</p>
   guint16 padding[6];
 } Header;
 </pre>
-<p>The header structure appears exactly once at the beginning of a typelib.  It is a
-collection of meta-information, such as the number of entries and dependencies.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.4.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+The header structure appears exactly once at the beginning of a typelib.  It is a
+collection of meta-information, such as the number of entries and dependencies.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">gchar</span> <em class="structfield"><code><a name="Header.magic"></a>magic</code></em>[16];</p></td>
-<td class="struct_member_description"><p>See <a class="link" href="gi-GITypelib.html#G-IR-MAGIC:CAPS" title="G_IR_MAGIC"><span class="type">G_IR_MAGIC</span></a>.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gchar</span> <em class="structfield"><code><a name="Header.magic"></a>magic</code></em>[16];</span></p></td>
+<td>See <a class="link" href="gi-GITypelib.html#G-IR-MAGIC:CAPS" title="G_IR_MAGIC"><span class="type">G_IR_MAGIC</span></a>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="Header.major-version"></a>major_version</code></em>;</p></td>
-<td class="struct_member_description"><p>The major version number of the typelib format. Major version
-number changes indicate incompatible changes to the tyeplib format.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="Header.major-version"></a>major_version</code></em>;</span></p></td>
+<td>The major version number of the typelib format. Major version
+number changes indicate incompatible changes to the tyeplib format.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="Header.minor-version"></a>minor_version</code></em>;</p></td>
-<td class="struct_member_description"><p>The minor version number of the typelib format. Minor version
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="Header.minor-version"></a>minor_version</code></em>;</span></p></td>
+<td>The minor version number of the typelib format. Minor version
 number changes indicate compatible changes and should still allow the
-typelib to be parsed by a parser designed for the same <em class="parameter"><code>major_version</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+typelib to be parsed by a parser designed for the same <em class="parameter"><code>major_version</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.reserved"></a>reserved</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.reserved"></a>reserved</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.n-entries"></a>n_entries</code></em>;</p></td>
-<td class="struct_member_description"><p>The number of entries in the directory.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.n-entries"></a>n_entries</code></em>;</span></p></td>
+<td>The number of entries in the directory.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.n-local-entries"></a>n_local_entries</code></em>;</p></td>
-<td class="struct_member_description"><p>The number of entries referring to blobs in this typelib.
-The local entries must occur before the unresolved entries.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.n-local-entries"></a>n_local_entries</code></em>;</span></p></td>
+<td>The number of entries referring to blobs in this typelib.
+The local entries must occur before the unresolved entries.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.directory"></a>directory</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the directory in the typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.directory"></a>directory</code></em>;</span></p></td>
+<td>Offset of the directory in the typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.n-attributes"></a>n_attributes</code></em>;</p></td>
-<td class="struct_member_description"><p>Number of attribute blocks</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.n-attributes"></a>n_attributes</code></em>;</span></p></td>
+<td>Number of attribute blocks</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.attributes"></a>attributes</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the list of attributes in the typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.attributes"></a>attributes</code></em>;</span></p></td>
+<td>Offset of the list of attributes in the typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.dependencies"></a>dependencies</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of a single string, which is the list of immediate
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.dependencies"></a>dependencies</code></em>;</span></p></td>
+<td>Offset of a single string, which is the list of immediate
 dependencies, separated by the '|' character.  The dependencies are
 required in order to avoid having programs consuming a typelib check for
-an "Unresolved" type return from every API call.</p></td>
-<td class="struct_member_annotations"> </td>
+an "Unresolved" type return from every API call.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.size"></a>size</code></em>;</p></td>
-<td class="struct_member_description"><p>The size in bytes of the typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.size"></a>size</code></em>;</span></p></td>
+<td>The size in bytes of the typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.namespace"></a>namespace</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the namespace string in the typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.namespace"></a>namespace</code></em>;</span></p></td>
+<td>Offset of the namespace string in the typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.nsversion"></a>nsversion</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the namespace version string in the typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.nsversion"></a>nsversion</code></em>;</span></p></td>
+<td>Offset of the namespace version string in the typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.shared-library"></a>shared_library</code></em>;</p></td>
-<td class="struct_member_description"><p>This field is the set of shared libraries associated with
-the typelib.  The entries are separated by the '|' (pipe) character.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.shared-library"></a>shared_library</code></em>;</span></p></td>
+<td>This field is the set of shared libraries associated with
+the typelib.  The entries are separated by the '|' (pipe) character.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.c-prefix"></a>c_prefix</code></em>;</p></td>
-<td class="struct_member_description"><p>The prefix for the function names of the library</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.c-prefix"></a>c_prefix</code></em>;</span></p></td>
+<td>The prefix for the function names of the library</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.entry-blob-size"></a>entry_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>The sizes of fixed-size blobs. Recording this information
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.entry-blob-size"></a>entry_blob_size</code></em>;</span></p></td>
+<td>The sizes of fixed-size blobs. Recording this information
 here allows to write parser which continue to work if the format is
-extended by adding new fields to the end of the fixed-size blobs.</p></td>
-<td class="struct_member_annotations"> </td>
+extended by adding new fields to the end of the fixed-size blobs.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.function-blob-size"></a>function_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.function-blob-size"></a>function_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.callback-blob-size"></a>callback_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.callback-blob-size"></a>callback_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.signal-blob-size"></a>signal_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.signal-blob-size"></a>signal_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.vfunc-blob-size"></a>vfunc_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.vfunc-blob-size"></a>vfunc_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.arg-blob-size"></a>arg_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.arg-blob-size"></a>arg_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.property-blob-size"></a>property_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.property-blob-size"></a>property_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.field-blob-size"></a>field_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.field-blob-size"></a>field_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.value-blob-size"></a>value_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.value-blob-size"></a>value_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.attribute-blob-size"></a>attribute_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.attribute-blob-size"></a>attribute_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.constant-blob-size"></a>constant_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.constant-blob-size"></a>constant_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.error-domain-blob-size"></a>error_domain_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.error-domain-blob-size"></a>error_domain_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.signature-blob-size"></a>signature_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.signature-blob-size"></a>signature_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.enum-blob-size"></a>enum_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.enum-blob-size"></a>enum_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.struct-blob-size"></a>struct_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.struct-blob-size"></a>struct_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.object-blob-size"></a>object_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.object-blob-size"></a>object_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.interface-blob-size"></a>interface_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>For variable-size blobs, the size of the struct up to
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.interface-blob-size"></a>interface_blob_size</code></em>;</span></p></td>
+<td>For variable-size blobs, the size of the struct up to
 the first flexible array member. Recording this information here allows
 to write parser which continue to work if the format is extended by
 adding new fields before the first flexible array member in
-variable-size blobs.</p></td>
-<td class="struct_member_annotations"> </td>
+variable-size blobs.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.union-blob-size"></a>union_blob_size</code></em>;</p></td>
-<td class="struct_member_description"><p>See <em class="parameter"><code>entry_blob_size</code></em>
-.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.union-blob-size"></a>union_blob_size</code></em>;</span></p></td>
+<td>See <em class="parameter"><code>entry_blob_size</code></em>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Header.sections"></a>sections</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of section blob array</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Header.sections"></a>sections</code></em>;</span></p></td>
+<td>Offset of section blob array</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="Header.padding"></a>padding</code></em>[6];</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="Header.padding"></a>padding</code></em>[6];</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="SectionType"></a><h3>enum SectionType</h3>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.5.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">typedef enum {
+  GI_SECTION_END = 0,
+  GI_SECTION_DIRECTORY_INDEX = 1
+} SectionType;
+</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-SECTION-END:CAPS"></a>GI_SECTION_END</p></td>
-<td class="enum_member_description">
-<p>TODO</p>
+<td><p><a name="GI-SECTION-END:CAPS"></a><span class="term"><code class="literal">GI_SECTION_END</code></span></p></td>
+<td>TODO
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-SECTION-DIRECTORY-INDEX:CAPS"></a>GI_SECTION_DIRECTORY_INDEX</p></td>
-<td class="enum_member_description">
-<p>TODO</p>
+<td><p><a name="GI-SECTION-DIRECTORY-INDEX:CAPS"></a><span class="term"><code class="literal">GI_SECTION_DIRECTORY_INDEX</code></span></p></td>
+<td>TODO
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="Section"></a><h3>Section</h3>
@@ -981,33 +499,30 @@ variable-size blobs.</p></td>
   guint32 offset;
 } Section;
 </pre>
-<p>A section is a blob of data that's (at least theoretically) optional,
+<p>
+A section is a blob of data that's (at least theoretically) optional,
 and may or may not be present in the typelib.  Presently, just used
 for the directory index.  This allows a form of dynamic extensibility
-with different tradeoffs from the format minor version.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.6.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+with different tradeoffs from the format minor version.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Section.id"></a>id</code></em>;</p></td>
-<td class="struct_member_description"><p>A <a class="link" href="gi-GITypelib.html#SectionType" title="enum SectionType"><span class="type">SectionType</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Section.id"></a>id</code></em>;</span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#SectionType" title="enum SectionType"><span class="type">SectionType</span></a>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="Section.offset"></a>offset</code></em>;</p></td>
-<td class="struct_member_description"><p>Integer offset for this section</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="Section.offset"></a>offset</code></em>;</span></p></td>
+<td>Integer offset for this section</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="DirEntry"></a><h3>DirEntry</h3>
@@ -1020,49 +535,45 @@ with different tradeoffs from the format minor version.</p>
   guint32 offset;
 } DirEntry;
 </pre>
-<p>References to directory entries are stored as 1-based 16-bit indexes.</p>
-<p>All blobs pointed to by a directory entry start with the same layout for
-the first 8 bytes (the reserved flags may be used by some blob types)</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.7.6"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+References to directory entries are stored as 1-based 16-bit indexes.
+</p>
+<p>
+All blobs pointed to by a directory entry start with the same layout for
+the first 8 bytes (the reserved flags may be used by some blob types)
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="DirEntry.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>A <a class="link" href="gi-GITypelib.html#GTypelibBlobType" title="enum GTypelibBlobType"><span class="type">GTypelibBlobType</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="DirEntry.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#GTypelibBlobType" title="enum GTypelibBlobType"><span class="type">GTypelibBlobType</span></a>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="DirEntry.local"></a>local</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Whether this entry refers to a blob in this typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="DirEntry.local"></a>local</code></em> : 1;</span></p></td>
+<td>Whether this entry refers to a blob in this typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="DirEntry.reserved"></a>reserved</code></em> :15;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="DirEntry.reserved"></a>reserved</code></em> :15;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="DirEntry.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the entry.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="DirEntry.name"></a>name</code></em>;</span></p></td>
+<td>The name of the entry.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="DirEntry.offset"></a>offset</code></em>;</p></td>
-<td class="struct_member_description"><p>If is_local is set, this is the offset of the blob in the typelib.
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="DirEntry.offset"></a>offset</code></em>;</span></p></td>
+<td>If is_local is set, this is the offset of the blob in the typelib.
 Otherwise, it is the offset of the namespace in which the blob has to be
-looked up by name.</p></td>
-<td class="struct_member_annotations"> </td>
+looked up by name.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="SimpleTypeBlobFlags"></a><h3>SimpleTypeBlobFlags</h3>
@@ -1074,86 +585,86 @@ looked up by name.</p></td>
   guint tag        : 5;
 } SimpleTypeBlobFlags;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.8.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.reserved"></a>reserved</code></em> : 8;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.reserved"></a>reserved</code></em> : 8;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.reserved2"></a>reserved2</code></em> :16;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.reserved2"></a>reserved2</code></em> :16;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.pointer"></a>pointer</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.pointer"></a>pointer</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.reserved3"></a>reserved3</code></em> : 2;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.reserved3"></a>reserved3</code></em> : 2;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.tag"></a>tag</code></em> : 5;</p></td>
-<td class="struct_member_description"><p>A <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="SimpleTypeBlobFlags.tag"></a>tag</code></em> : 5;</span></p></td>
+<td>A <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="SimpleTypeBlob"></a><h3>SimpleTypeBlob</h3>
-<p>The SimpleTypeBlob is the general purpose "reference to a type" construct,
+<a name="SimpleTypeBlob"></a><h3>union SimpleTypeBlob</h3>
+<pre class="programlisting">union _SimpleTypeBlob
+{
+  SimpleTypeBlobFlags flags;
+  guint32    offset;
+};
+</pre>
+<p>
+The SimpleTypeBlob is the general purpose "reference to a type" construct,
 used in method parameters, returns, callback definitions, fields, constants,
 etc. It's actually just a 32 bit integer which you can see from the union
 definition. This is for efficiency reasons, since there are so many
-references to types.</p>
-<p>SimpleTypeBlob is divided into two cases; first, if "reserved" and
+references to types.
+</p>
+<p>
+SimpleTypeBlob is divided into two cases; first, if "reserved" and
 "reserved2", the type tag for a basic type is embedded in the "tag" bits.
 This allows e.g. GI_TYPE_TAG_UTF8, GI_TYPE_TAG_INT and the like to be
-embedded directly without taking up extra space.</p>
-<p>References to "interfaces" (objects, interfaces) are more complicated;
+embedded directly without taking up extra space.
+</p>
+<p>
+References to "interfaces" (objects, interfaces) are more complicated;
 In this case, the integer is actually an offset into the directory (see
 above).  Because the header is larger than 2^8=256 bits, all offsets will
-have one of the upper 24 bits set.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.9.6"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+have one of the upper 24 bits set.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="union_members_name">
-<col class="union_members_description">
-<col width="200px" class="union_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="union_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlobFlags" title="SimpleTypeBlobFlags"><span class="type">SimpleTypeBlobFlags</span></a> <em class="structfield"><code><a name="SimpleTypeBlob.flags"></a>flags</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlobFlags" title="SimpleTypeBlobFlags"><span class="type">SimpleTypeBlobFlags</span></a> <em class="structfield"><code><a name="SimpleTypeBlob.flags"></a>flags</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="SimpleTypeBlob.offset"></a>offset</code></em>;</p></td>
-<td class="union_member_description"><p>Offset relative to header-&gt;types that points to a TypeBlob.
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="SimpleTypeBlob.offset"></a>offset</code></em>;</span></p></td>
+<td>Offset relative to header-&gt;types that points to a TypeBlob.
 Unlike other offsets, this is in words (ie 32bit units) rather
-than bytes.</p></td>
-<td class="union_member_annotations"> </td>
+than bytes.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ArgBlob"></a><h3>ArgBlob</h3>
@@ -1179,124 +690,106 @@ than bytes.</p></td>
   SimpleTypeBlob arg_type;
 } ArgBlob;
 </pre>
-<p>Types are specified by four bytes. If the three high bytes are zero,
+<p>
+Types are specified by four bytes. If the three high bytes are zero,
 the low byte describes a basic type, otherwise the 32bit number is an
-offset which points to a TypeBlob.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.10.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+offset which points to a TypeBlob.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ArgBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>A suggested name for the parameter.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ArgBlob.name"></a>name</code></em>;</span></p></td>
+<td>A suggested name for the parameter.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.in"></a>in</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The parameter is an input to the function</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.in"></a>in</code></em> : 1;</span></p></td>
+<td>The parameter is an input to the function</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.out"></a>out</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The parameter is used to return an output of the function. Parameters
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.out"></a>out</code></em> : 1;</span></p></td>
+<td>The parameter is used to return an output of the function. Parameters
 can be both in and out. Out parameters implicitly add another level of
 indirection to the parameter type. Ie if the type is uint32 in an out
-parameter, the function actually takes an uint32*.</p></td>
-<td class="struct_member_annotations"> </td>
+parameter, the function actually takes an uint32*.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.caller-allocates"></a>caller_allocates</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The parameter is a pointer to a struct or object that
-will receive an output of the function.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.caller-allocates"></a>caller_allocates</code></em> : 1;</span></p></td>
+<td>The parameter is a pointer to a struct or object that
+will receive an output of the function.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.nullable"></a>nullable</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Only meaningful for types which are passed as pointers. For an
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.nullable"></a>nullable</code></em> : 1;</span></p></td>
+<td>Only meaningful for types which are passed as pointers. For an
 in parameter, indicates if it is ok to pass NULL in. Gor an out
 parameter, indicates whether it may return NULL. Note that NULL is a
 valid GList and GSList value, thus allow_none will normally be set
-for parameters of these types.</p></td>
-<td class="struct_member_annotations"> </td>
+for parameters of these types.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.optional"></a>optional</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>For an out parameter, indicates that NULL may be passed in
-if the value is not needed.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.optional"></a>optional</code></em> : 1;</span></p></td>
+<td>For an out parameter, indicates that NULL may be passed in
+if the value is not needed.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.transfer-ownership"></a>transfer_ownership</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>For an in parameter, indicates that the function takes
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.transfer-ownership"></a>transfer_ownership</code></em> : 1;</span></p></td>
+<td>For an in parameter, indicates that the function takes
 over ownership of the parameter value. For an out parameter, it indicates
-that the caller is responsible for freeing the return value.</p></td>
-<td class="struct_member_annotations"> </td>
+that the caller is responsible for freeing the return value.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.transfer-container-ownership"></a>transfer_container_ownership</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>For container types, indicates that the
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.transfer-container-ownership"></a>transfer_container_ownership</code></em> : 1;</span></p></td>
+<td>For container types, indicates that the
 ownership of the container, but not of its contents is transferred.
 This is typically the case for out parameters returning lists of
-statically allocated things.</p></td>
-<td class="struct_member_annotations"> </td>
+statically allocated things.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.return-value"></a>return_value</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The parameter should be considered the return value of the
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.return-value"></a>return_value</code></em> : 1;</span></p></td>
+<td>The parameter should be considered the return value of the
 function. Only out parameters can be marked as return value, and there
 can be at most one per function call. If an out parameter is marked as
 return value, the actual return value of the function should be either
-void or a boolean indicating the success of the call.</p></td>
-<td class="struct_member_annotations"> </td>
+void or a boolean indicating the success of the call.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.scope"></a>scope</code></em> : 3;</p></td>
-<td class="struct_member_description"><p>A <a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="type">GIScopeType</span></a>. If the parameter is of a callback type, this denotes
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.scope"></a>scope</code></em> : 3;</span></p></td>
+<td>A <a class="link" href="gi-GIArgInfo.html#GIScopeType" title="enum GIScopeType"><span class="type">GIScopeType</span></a>. If the parameter is of a callback type, this denotes
 the scope of the user_data and the callback function pointer itself
-(for languages that emit code at run-time).</p></td>
-<td class="struct_member_annotations"> </td>
+(for languages that emit code at run-time).</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.skip"></a>skip</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Indicates that the parameter is only useful in C and should be skipped.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.skip"></a>skip</code></em> : 1;</span></p></td>
+<td>Indicates that the parameter is only useful in C and should be skipped.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.reserved"></a>reserved</code></em> :20;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="ArgBlob.reserved"></a>reserved</code></em> :20;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">gint8</span> <em class="structfield"><code><a name="ArgBlob.closure"></a>closure</code></em>;</p></td>
-<td class="struct_member_description"><p>Index of the closure (user_data) parameter associated with the
-callback, or -1.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint8</span> <em class="structfield"><code><a name="ArgBlob.closure"></a>closure</code></em>;</span></p></td>
+<td>Index of the closure (user_data) parameter associated with the
+callback, or -1.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">gint8</span> <em class="structfield"><code><a name="ArgBlob.destroy"></a>destroy</code></em>;</p></td>
-<td class="struct_member_description"><p>Index of the destroy notfication callback parameter associated
-with the callback, or -1.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint8</span> <em class="structfield"><code><a name="ArgBlob.destroy"></a>destroy</code></em>;</span></p></td>
+<td>Index of the destroy notfication callback parameter associated
+with the callback, or -1.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArgBlob.padding"></a>padding</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArgBlob.padding"></a>padding</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ArgBlob.arg-type"></a>arg_type</code></em>;</p></td>
-<td class="struct_member_description"><p>Describes the type of the parameter. See details below.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ArgBlob.arg-type"></a>arg_type</code></em>;</span></p></td>
+<td>Describes the type of the parameter. See details below.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="SignatureBlob"></a><h3>SignatureBlob</h3>
@@ -1316,78 +809,66 @@ with the callback, or -1.</p></td>
   ArgBlob        arguments[];
 } SignatureBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.11.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="SignatureBlob.return-type"></a>return_type</code></em>;</p></td>
-<td class="struct_member_description"><p>Describes the type of the return value. See details below.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="SignatureBlob.return-type"></a>return_type</code></em>;</span></p></td>
+<td>Describes the type of the return value. See details below.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.may-return-null"></a>may_return_null</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Only relevant for pointer types. Indicates whether the
-caller must expect NULL as a return value.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.may-return-null"></a>may_return_null</code></em> : 1;</span></p></td>
+<td>Only relevant for pointer types. Indicates whether the
+caller must expect NULL as a return value.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.caller-owns-return-value"></a>caller_owns_return_value</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If set, the caller is responsible for freeing
-the return value if it is no longer needed.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.caller-owns-return-value"></a>caller_owns_return_value</code></em> : 1;</span></p></td>
+<td>If set, the caller is responsible for freeing
+the return value if it is no longer needed.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.caller-owns-return-container"></a>caller_owns_return_container</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>This flag is only relevant if the return type
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.caller-owns-return-container"></a>caller_owns_return_container</code></em> : 1;</span></p></td>
+<td>This flag is only relevant if the return type
 is a container type. If the flag is set, the caller is resonsible for
-freeing the container, but not its contents.</p></td>
-<td class="struct_member_annotations"> </td>
+freeing the container, but not its contents.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.skip-return"></a>skip_return</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Indicates that the return value is only useful in C and should
-be skipped.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.skip-return"></a>skip_return</code></em> : 1;</span></p></td>
+<td>Indicates that the return value is only useful in C and should
+be skipped.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.instance-transfer-ownership"></a>instance_transfer_ownership</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>When calling, the function assumes ownership of
-the instance parameter.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.instance-transfer-ownership"></a>instance_transfer_ownership</code></em> : 1;</span></p></td>
+<td>When calling, the function assumes ownership of
+the instance parameter.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.throws"></a>throws</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Denotes the signature takes an additional <span class="type">GError</span> argument beyond
-the annotated arguments.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.throws"></a>throws</code></em> : 1;</span></p></td>
+<td>Denotes the signature takes an additional <span class="type">GError</span> argument beyond
+the annotated arguments.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.reserved"></a>reserved</code></em> :10;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.reserved"></a>reserved</code></em> :10;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.n-arguments"></a>n_arguments</code></em>;</p></td>
-<td class="struct_member_description"><p>The number of arguments that this function expects, also the
-length of the array of ArgBlobs.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignatureBlob.n-arguments"></a>n_arguments</code></em>;</span></p></td>
+<td>The number of arguments that this function expects, also the
+length of the array of ArgBlobs.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#ArgBlob" title="ArgBlob"><span class="type">ArgBlob</span></a> <em class="structfield"><code><a name="SignatureBlob.arguments"></a>arguments</code></em>[];</p></td>
-<td class="struct_member_description"><p>An array of ArgBlob for the arguments of the function.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#ArgBlob" title="ArgBlob"><span class="type">ArgBlob</span></a> <em class="structfield"><code><a name="SignatureBlob.arguments"></a>arguments</code></em>[];</span></p></td>
+<td>An array of ArgBlob for the arguments of the function.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="CommonBlob"></a><h3>CommonBlob</h3>
@@ -1399,42 +880,39 @@ length of the array of ArgBlobs.</p></td>
   guint32 name;
 } CommonBlob;
 </pre>
-<p>The <a class="link" href="gi-GITypelib.html#CommonBlob" title="CommonBlob"><span class="type">CommonBlob</span></a> is shared between <a class="link" href="gi-GITypelib.html#FunctionBlob" title="FunctionBlob"><span class="type">FunctionBlob</span></a>,
-<a class="link" href="gi-GITypelib.html#CallbackBlob" title="CallbackBlob"><span class="type">CallbackBlob</span></a>, <a class="link" href="gi-GITypelib.html#SignalBlob" title="SignalBlob"><span class="type">SignalBlob</span></a>.</p>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.12.6"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+The <a class="link" href="gi-GITypelib.html#CommonBlob" title="CommonBlob"><span class="type">CommonBlob</span></a> is shared between <a class="link" href="gi-GITypelib.html#FunctionBlob" title="FunctionBlob"><span class="type">FunctionBlob</span></a>,
+<a class="link" href="gi-GITypelib.html#CallbackBlob" title="CallbackBlob"><span class="type">CallbackBlob</span></a>, <a class="link" href="gi-GITypelib.html#SignalBlob" title="SignalBlob"><span class="type">SignalBlob</span></a>.
+</p>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="CommonBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>A <a class="link" href="gi-GITypelib.html#GTypelibBlobType" title="enum GTypelibBlobType"><span class="type">GTypelibBlobType</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="CommonBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>A <a class="link" href="gi-GITypelib.html#GTypelibBlobType" title="enum GTypelibBlobType"><span class="type">GTypelibBlobType</span></a>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="CommonBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Whether the blob is deprecated.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="CommonBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>Whether the blob is deprecated.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="CommonBlob.reserved"></a>reserved</code></em> :15;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="CommonBlob.reserved"></a>reserved</code></em> :15;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="CommonBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the blob.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="CommonBlob.name"></a>name</code></em>;</span></p></td>
+<td>The name of the blob.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="FunctionBlob"></a><h3>FunctionBlob</h3>
@@ -1461,100 +939,85 @@ length of the array of ArgBlobs.</p></td>
   guint16 reserved2   : 16;
 } FunctionBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.13.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p><a class="link" href="gi-GITypelib.html#BLOB-TYPE-FUNCTION:CAPS"><span class="type">BLOB_TYPE_FUNCTION</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td><a class="link" href="gi-GITypelib.html#BLOB-TYPE-FUNCTION:CAPS"><span class="type">BLOB_TYPE_FUNCTION</span></a></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The function is deprecated.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>The function is deprecated.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.setter"></a>setter</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The function is a setter for a property. Language bindings may
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.setter"></a>setter</code></em> : 1;</span></p></td>
+<td>The function is a setter for a property. Language bindings may
 prefer to not bind individual setters and rely on the generic
-<code class="function">g_object_set()</code>.</p></td>
-<td class="struct_member_annotations"> </td>
+<code class="function">g_object_set()</code>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.getter"></a>getter</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The function is a getter for a property. Language bindings may
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.getter"></a>getter</code></em> : 1;</span></p></td>
+<td>The function is a getter for a property. Language bindings may
 prefer to not bind individual getters and rely on the generic
-<code class="function">g_object_get()</code>.</p></td>
-<td class="struct_member_annotations"> </td>
+<code class="function">g_object_get()</code>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.constructor"></a>constructor</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The function acts as a constructor for the object it is
-contained in.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.constructor"></a>constructor</code></em> : 1;</span></p></td>
+<td>The function acts as a constructor for the object it is
+contained in.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.wraps-vfunc"></a>wraps_vfunc</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The function is a simple wrapper for a virtual function.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.wraps-vfunc"></a>wraps_vfunc</code></em> : 1;</span></p></td>
+<td>The function is a simple wrapper for a virtual function.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.throws"></a>throws</code></em> : 1;</p></td>
-<td class="struct_member_description"><p> This is now additionally stored in the <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob"><span class="type">SignatureBlob</span></a>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[deprecated]</span></td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.throws"></a>throws</code></em> : 1;</span></p></td>
+<td>This is now additionally stored in the <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob"><span class="type">SignatureBlob</span></a>. <span class="annotation">[deprecated]</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.index"></a>index</code></em> :10;</p></td>
-<td class="struct_member_description"><p>Index of the property that this function is a setter or getter of
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.index"></a>index</code></em> :10;</span></p></td>
+<td>Index of the property that this function is a setter or getter of
 in the array of properties of the containing interface, or index
-of the virtual function that this function wraps.</p></td>
-<td class="struct_member_annotations"> </td>
+of the virtual function that this function wraps.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="FunctionBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="FunctionBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="FunctionBlob.symbol"></a>symbol</code></em>;</p></td>
-<td class="struct_member_description"><p>The symbol which can be used to obtain the function pointer with
-<code class="function">dlsym()</code>.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="FunctionBlob.symbol"></a>symbol</code></em>;</span></p></td>
+<td>The symbol which can be used to obtain the function pointer with
+<code class="function">dlsym()</code>.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="FunctionBlob.signature"></a>signature</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the SignatureBlob describing the parameter types and the
-return value type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="FunctionBlob.signature"></a>signature</code></em>;</span></p></td>
+<td>Offset of the SignatureBlob describing the parameter types and the
+return value type.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.is-static"></a>is_static</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The function is a "static method"; in other words it's a pure
-function whose name is conceptually scoped to the object.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.is-static"></a>is_static</code></em> : 1;</span></p></td>
+<td>The function is a "static method"; in other words it's a pure
+function whose name is conceptually scoped to the object.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.reserved"></a>reserved</code></em> : 15;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.reserved"></a>reserved</code></em> : 15;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.reserved2"></a>reserved2</code></em> : 16;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FunctionBlob.reserved2"></a>reserved2</code></em> : 16;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="CallbackBlob"></a><h3>CallbackBlob</h3>
@@ -1567,46 +1030,39 @@ function whose name is conceptually scoped to the object.</p></td>
   guint32 signature;
 } CallbackBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.14.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="CallbackBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="CallbackBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="CallbackBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="CallbackBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="CallbackBlob.reserved"></a>reserved</code></em> :15;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="CallbackBlob.reserved"></a>reserved</code></em> :15;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="CallbackBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="CallbackBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="CallbackBlob.signature"></a>signature</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob"><span class="type">SignatureBlob</span></a> describing the parameter types and
-the return value type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="CallbackBlob.signature"></a>signature</code></em>;</span></p></td>
+<td>Offset of the <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob"><span class="type">SignatureBlob</span></a> describing the parameter types and
+the return value type.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="InterfaceTypeBlob"></a><h3>InterfaceTypeBlob</h3>
@@ -1618,72 +1074,67 @@ the return value type.</p></td>
   guint16 interface;
 } InterfaceTypeBlob;
 </pre>
-<p>If the interface is an enum of flags type, is_pointer is 0, otherwise it is 1.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.15.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+If the interface is an enum of flags type, is_pointer is 0, otherwise it is 1.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.pointer"></a>pointer</code></em> :1;</p></td>
-<td class="struct_member_description"><p>Whether this type represents an indirection</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.pointer"></a>pointer</code></em> :1;</span></p></td>
+<td>Whether this type represents an indirection</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.reserved"></a>reserved</code></em> :2;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.reserved"></a>reserved</code></em> :2;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.tag"></a>tag</code></em> :5;</p></td>
-<td class="struct_member_description"><p>A <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.tag"></a>tag</code></em> :5;</span></p></td>
+<td>A <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="InterfaceTypeBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceTypeBlob.interface"></a>interface</code></em>;</p></td>
-<td class="struct_member_description"><p>Index of the directory entry for the interface.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceTypeBlob.interface"></a>interface</code></em>;</span></p></td>
+<td>Index of the directory entry for the interface.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ArrayTypeDimension"></a><h3>ArrayTypeDimension</h3>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.16.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">typedef union {
+  guint16 length;
+  guint16 size;
+} ArrayTypeDimension;
+</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="union_members_name">
-<col class="union_members_description">
-<col width="200px" class="union_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="union_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeDimension.length"></a>length</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeDimension.length"></a>length</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeDimension.size"></a>size</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeDimension.size"></a>size</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ArrayTypeBlob"></a><h3>ArrayTypeBlob</h3>
@@ -1703,75 +1154,63 @@ the return value type.</p></td>
   SimpleTypeBlob type;
 } ArrayTypeBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.17.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.pointer"></a>pointer</code></em> :1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.pointer"></a>pointer</code></em> :1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.reserved"></a>reserved</code></em> :2;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.reserved"></a>reserved</code></em> :2;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.tag"></a>tag</code></em> :5;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.tag"></a>tag</code></em> :5;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.zero-terminated"></a>zero_terminated</code></em> :1;</p></td>
-<td class="struct_member_description"><p>Indicates that the array must be terminated by a suitable
-<span class="type">NULL</span> value.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.zero-terminated"></a>zero_terminated</code></em> :1;</span></p></td>
+<td>Indicates that the array must be terminated by a suitable
+<span class="type">NULL</span> value.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.has-length"></a>has_length</code></em> :1;</p></td>
-<td class="struct_member_description"><p>Indicates that length points to a parameter specifying the
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.has-length"></a>has_length</code></em> :1;</span></p></td>
+<td>Indicates that length points to a parameter specifying the
 length of the array. If both has_length and zero_terminated are set, the
-convention is to pass -1 for the length if the array is zero-terminated.</p></td>
-<td class="struct_member_annotations"> </td>
+convention is to pass -1 for the length if the array is zero-terminated.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.has-size"></a>has_size</code></em> :1;</p></td>
-<td class="struct_member_description"><p>Indicates that size is the fixed size of the array.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.has-size"></a>has_size</code></em> :1;</span></p></td>
+<td>Indicates that size is the fixed size of the array.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.array-type"></a>array_type</code></em> :2;</p></td>
-<td class="struct_member_description"><p>Indicates whether this is a C array, GArray, GPtrArray, or
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.array-type"></a>array_type</code></em> :2;</span></p></td>
+<td>Indicates whether this is a C array, GArray, GPtrArray, or
 GByteArray. If something other than a C array, the length and element
-size are implicit in the structure.</p></td>
-<td class="struct_member_annotations"> </td>
+size are implicit in the structure.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.reserved2"></a>reserved2</code></em> :3;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ArrayTypeBlob.reserved2"></a>reserved2</code></em> :3;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#ArrayTypeDimension" title="ArrayTypeDimension"><span class="type">ArrayTypeDimension</span></a> <em class="structfield"><code><a name="ArrayTypeBlob.dimensions"></a>dimensions</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#ArrayTypeDimension" title="ArrayTypeDimension"><span class="type">ArrayTypeDimension</span></a> <em class="structfield"><code><a name="ArrayTypeBlob.dimensions"></a>dimensions</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ArrayTypeBlob.type"></a>type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ArrayTypeBlob.type"></a>type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ParamTypeBlob"></a><h3>ParamTypeBlob</h3>
@@ -1786,50 +1225,42 @@ size are implicit in the structure.</p></td>
   SimpleTypeBlob type[];
 } ParamTypeBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.18.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.pointer"></a>pointer</code></em> :1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.pointer"></a>pointer</code></em> :1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.reserved"></a>reserved</code></em> :2;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.reserved"></a>reserved</code></em> :2;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.tag"></a>tag</code></em> :5;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.tag"></a>tag</code></em> :5;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ParamTypeBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ParamTypeBlob.n-types"></a>n_types</code></em>;</p></td>
-<td class="struct_member_description"><p>The number of parameter types to follow.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ParamTypeBlob.n-types"></a>n_types</code></em>;</span></p></td>
+<td>The number of parameter types to follow.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ParamTypeBlob.type"></a>type</code></em>[];</p></td>
-<td class="struct_member_description"><p>Describes the type of the list elements.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ParamTypeBlob.type"></a>type</code></em>[];</span></p></td>
+<td>Describes the type of the list elements.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ErrorTypeBlob"></a><h3>ErrorTypeBlob</h3>
@@ -1844,50 +1275,42 @@ size are implicit in the structure.</p></td>
   guint16 domains[];
 } ErrorTypeBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.19.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.pointer"></a>pointer</code></em> :1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.pointer"></a>pointer</code></em> :1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.reserved"></a>reserved</code></em> :2;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.reserved"></a>reserved</code></em> :2;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.tag"></a>tag</code></em> :5;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.tag"></a>tag</code></em> :5;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="ErrorTypeBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ErrorTypeBlob.n-domains"></a>n_domains</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO: must be 0</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ErrorTypeBlob.n-domains"></a>n_domains</code></em>;</span></p></td>
+<td>TODO: must be 0</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ErrorTypeBlob.domains"></a>domains</code></em>[];</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ErrorTypeBlob.domains"></a>domains</code></em>[];</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ValueBlob"></a><h3>ValueBlob</h3>
@@ -1899,45 +1322,38 @@ size are implicit in the structure.</p></td>
   gint32 value;
 } ValueBlob;
 </pre>
-<p>Values commonly occur in enums and flags.</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.20.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Values commonly occur in enums and flags.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Whether this value is deprecated</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>Whether this value is deprecated</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.unsigned-value"></a>unsigned_value</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>if set, value is a 32-bit unsigned integer cast to gint32</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.unsigned-value"></a>unsigned_value</code></em> : 1;</span></p></td>
+<td>if set, value is a 32-bit unsigned integer cast to gint32</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.reserved"></a>reserved</code></em> :30;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.reserved"></a>reserved</code></em> :30;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>Name of blob</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ValueBlob.name"></a>name</code></em>;</span></p></td>
+<td>Name of blob</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">gint32</span> <em class="structfield"><code><a name="ValueBlob.value"></a>value</code></em>;</p></td>
-<td class="struct_member_description"><p>The numerical value</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint32</span> <em class="structfield"><code><a name="ValueBlob.value"></a>value</code></em>;</span></p></td>
+<td>The numerical value</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="FieldBlob"></a><h3>FieldBlob</h3>
@@ -1957,67 +1373,56 @@ size are implicit in the structure.</p></td>
   SimpleTypeBlob type;
 } FieldBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.21.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="FieldBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the field.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="FieldBlob.name"></a>name</code></em>;</span></p></td>
+<td>The name of the field.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.readable"></a>readable</code></em> :1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.readable"></a>readable</code></em> :1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.writable"></a>writable</code></em> :1;</p></td>
-<td class="struct_member_description"><p>How the field may be accessed.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.writable"></a>writable</code></em> :1;</span></p></td>
+<td>How the field may be accessed.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.has-embedded-type"></a>has_embedded_type</code></em> :1;</p></td>
-<td class="struct_member_description"><p>An anonymous type follows the FieldBlob.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.has-embedded-type"></a>has_embedded_type</code></em> :1;</span></p></td>
+<td>An anonymous type follows the FieldBlob.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.reserved"></a>reserved</code></em> :5;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.reserved"></a>reserved</code></em> :5;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.bits"></a>bits</code></em>;</p></td>
-<td class="struct_member_description"><p>If this field is part of a bitfield, the number of bits which it
-uses, otherwise 0.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="FieldBlob.bits"></a>bits</code></em>;</span></p></td>
+<td>If this field is part of a bitfield, the number of bits which it
+uses, otherwise 0.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="FieldBlob.struct-offset"></a>struct_offset</code></em>;</p></td>
-<td class="struct_member_description"><p>The offset of the field in the struct. The value 0xFFFF
-indicates that the struct offset is unknown.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="FieldBlob.struct-offset"></a>struct_offset</code></em>;</span></p></td>
+<td>The offset of the field in the struct. The value 0xFFFF
+indicates that the struct offset is unknown.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="FieldBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="FieldBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="FieldBlob.type"></a>type</code></em>;</p></td>
-<td class="struct_member_description"><p>The type of the field.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="FieldBlob.type"></a>type</code></em>;</span></p></td>
+<td>The type of the field.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="RegisteredTypeBlob"></a><h3>RegisteredTypeBlob</h3>
@@ -2032,56 +1437,47 @@ indicates that the struct offset is unknown.</p></td>
   guint32 gtype_init;
 } RegisteredTypeBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.22.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.unregistered"></a>unregistered</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.unregistered"></a>unregistered</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.reserved"></a>reserved</code></em> :14;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="RegisteredTypeBlob.reserved"></a>reserved</code></em> :14;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="RegisteredTypeBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="RegisteredTypeBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="RegisteredTypeBlob.gtype-name"></a>gtype_name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name under which the type is registered with GType.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="RegisteredTypeBlob.gtype-name"></a>gtype_name</code></em>;</span></p></td>
+<td>The name under which the type is registered with GType.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="RegisteredTypeBlob.gtype-init"></a>gtype_init</code></em>;</p></td>
-<td class="struct_member_description"><p>The symbol name of the get_type() function which registers the
-type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="RegisteredTypeBlob.gtype-init"></a>gtype_init</code></em>;</span></p></td>
+<td>The symbol name of the get_type() function which registers the
+type.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="StructBlob"></a><h3>StructBlob</h3>
@@ -2109,97 +1505,82 @@ type.</p></td>
   guint32   reserved3;
 } StructBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.23.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p><a class="link" href="gi-GITypelib.html#BLOB-TYPE-STRUCT:CAPS"><span class="type">BLOB_TYPE_STRUCT</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td><a class="link" href="gi-GITypelib.html#BLOB-TYPE-STRUCT:CAPS"><span class="type">BLOB_TYPE_STRUCT</span></a></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Whether this structure is deprecated</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>Whether this structure is deprecated</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.unregistered"></a>unregistered</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If this is set, the type is not registered with GType.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.unregistered"></a>unregistered</code></em> : 1;</span></p></td>
+<td>If this is set, the type is not registered with GType.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.is-gtype-struct"></a>is_gtype_struct</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Whether this structure is the class or interface layout
-for a GObject</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.is-gtype-struct"></a>is_gtype_struct</code></em> : 1;</span></p></td>
+<td>Whether this structure is the class or interface layout
+for a GObject</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.alignment"></a>alignment</code></em> : 6;</p></td>
-<td class="struct_member_description"><p>The byte boundary that the struct is aligned to in memory</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.alignment"></a>alignment</code></em> : 6;</span></p></td>
+<td>The byte boundary that the struct is aligned to in memory</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.foreign"></a>foreign</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If the type is foreign, eg if it's expected to be overridden by
-a native language binding instead of relying of introspected bindings.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.foreign"></a>foreign</code></em> : 1;</span></p></td>
+<td>If the type is foreign, eg if it's expected to be overridden by
+a native language binding instead of relying of introspected bindings.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.reserved"></a>reserved</code></em> : 6;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.reserved"></a>reserved</code></em> : 6;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.gtype-name"></a>gtype_name</code></em>;</p></td>
-<td class="struct_member_description"><p>String name of the associated <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.gtype-name"></a>gtype_name</code></em>;</span></p></td>
+<td>String name of the associated <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.gtype-init"></a>gtype_init</code></em>;</p></td>
-<td class="struct_member_description"><p>String naming the symbol which gets the runtime <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.gtype-init"></a>gtype_init</code></em>;</span></p></td>
+<td>String naming the symbol which gets the runtime <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.size"></a>size</code></em>;</p></td>
-<td class="struct_member_description"><p>The size of the struct in bytes.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.size"></a>size</code></em>;</span></p></td>
+<td>The size of the struct in bytes.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.n-fields"></a>n_fields</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.n-fields"></a>n_fields</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.n-methods"></a>n_methods</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="StructBlob.n-methods"></a>n_methods</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.reserved3"></a>reserved3</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="StructBlob.reserved3"></a>reserved3</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="UnionBlob"></a><h3>UnionBlob</h3>
@@ -2227,102 +1608,86 @@ a native language binding instead of relying of introspected bindings.</p></td>
   SimpleTypeBlob discriminator_type;
 } UnionBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.24.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.unregistered"></a>unregistered</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If this is set, the type is not registered with GType.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.unregistered"></a>unregistered</code></em> : 1;</span></p></td>
+<td>If this is set, the type is not registered with GType.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.discriminated"></a>discriminated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Is set if the union is discriminated</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.discriminated"></a>discriminated</code></em> : 1;</span></p></td>
+<td>Is set if the union is discriminated</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.alignment"></a>alignment</code></em> : 6;</p></td>
-<td class="struct_member_description"><p>The byte boundary that the union is aligned to in memory</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.alignment"></a>alignment</code></em> : 6;</span></p></td>
+<td>The byte boundary that the union is aligned to in memory</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.reserved"></a>reserved</code></em> : 7;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.reserved"></a>reserved</code></em> : 7;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.gtype-name"></a>gtype_name</code></em>;</p></td>
-<td class="struct_member_description"><p>String name of the associated <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.gtype-name"></a>gtype_name</code></em>;</span></p></td>
+<td>String name of the associated <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.gtype-init"></a>gtype_init</code></em>;</p></td>
-<td class="struct_member_description"><p>String naming the symbol which gets the runtime <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.gtype-init"></a>gtype_init</code></em>;</span></p></td>
+<td>String naming the symbol which gets the runtime <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.size"></a>size</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.size"></a>size</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.n-fields"></a>n_fields</code></em>;</p></td>
-<td class="struct_member_description"><p>Length of the arrays</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.n-fields"></a>n_fields</code></em>;</span></p></td>
+<td>Length of the arrays</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.n-functions"></a>n_functions</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="UnionBlob.n-functions"></a>n_functions</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.reserved3"></a>reserved3</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="UnionBlob.reserved3"></a>reserved3</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">gint32</span> <em class="structfield"><code><a name="UnionBlob.discriminator-offset"></a>discriminator_offset</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset from the beginning of the union where the
+<td><p><span class="term"><span class="type">gint32</span> <em class="structfield"><code><a name="UnionBlob.discriminator-offset"></a>discriminator_offset</code></em>;</span></p></td>
+<td>Offset from the beginning of the union where the
 discriminator of a discriminated union is located. The value 0xFFFF
-indicates that the discriminator offset is unknown.</p></td>
-<td class="struct_member_annotations"> </td>
+indicates that the discriminator offset is unknown.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="UnionBlob.discriminator-type"></a>discriminator_type</code></em>;</p></td>
-<td class="struct_member_description"><p>Type of the discriminator</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="UnionBlob.discriminator-type"></a>discriminator_type</code></em>;</span></p></td>
+<td>Type of the discriminator</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="EnumBlob"></a><h3>EnumBlob</h3>
@@ -2347,81 +1712,69 @@ indicates that the discriminator offset is unknown.</p></td>
   ValueBlob values[];
 } EnumBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.25.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.unregistered"></a>unregistered</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If this is set, the type is not registered with GType.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.unregistered"></a>unregistered</code></em> : 1;</span></p></td>
+<td>If this is set, the type is not registered with GType.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.storage-type"></a>storage_type</code></em> : 5;</p></td>
-<td class="struct_member_description"><p>The tag of the type used for the enum in the C ABI
-(will be a signed or unsigned integral type)</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.storage-type"></a>storage_type</code></em> : 5;</span></p></td>
+<td>The tag of the type used for the enum in the C ABI
+(will be a signed or unsigned integral type)</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.reserved"></a>reserved</code></em> : 9;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.reserved"></a>reserved</code></em> : 9;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.gtype-name"></a>gtype_name</code></em>;</p></td>
-<td class="struct_member_description"><p>String name of the associated <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.gtype-name"></a>gtype_name</code></em>;</span></p></td>
+<td>String name of the associated <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.gtype-init"></a>gtype_init</code></em>;</p></td>
-<td class="struct_member_description"><p>String naming the symbol which gets the runtime <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.gtype-init"></a>gtype_init</code></em>;</span></p></td>
+<td>String naming the symbol which gets the runtime <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.n-values"></a>n_values</code></em>;</p></td>
-<td class="struct_member_description"><p>The length of the values array.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.n-values"></a>n_values</code></em>;</span></p></td>
+<td>The length of the values array.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.n-methods"></a>n_methods</code></em>;</p></td>
-<td class="struct_member_description"><p>The length of the methods array.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="EnumBlob.n-methods"></a>n_methods</code></em>;</span></p></td>
+<td>The length of the methods array.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.error-domain"></a>error_domain</code></em>;</p></td>
-<td class="struct_member_description"><p>String naming the <span class="type">GError</span> domain this enum is associated with</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="EnumBlob.error-domain"></a>error_domain</code></em>;</span></p></td>
+<td>String naming the <span class="type">GError</span> domain this enum is associated with</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#ValueBlob" title="ValueBlob"><span class="type">ValueBlob</span></a> <em class="structfield"><code><a name="EnumBlob.values"></a>values</code></em>[];</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#ValueBlob" title="ValueBlob"><span class="type">ValueBlob</span></a> <em class="structfield"><code><a name="EnumBlob.values"></a>values</code></em>[];</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="PropertyBlob"></a><h3>PropertyBlob</h3>
@@ -2442,80 +1795,67 @@ indicates that the discriminator offset is unknown.</p></td>
   SimpleTypeBlob type;
 } PropertyBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.26.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the property.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.name"></a>name</code></em>;</span></p></td>
+<td>The name of the property.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.readable"></a>readable</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.readable"></a>readable</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.writable"></a>writable</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.writable"></a>writable</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.construct"></a>construct</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.construct"></a>construct</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.construct-only"></a>construct_only</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The ParamFlags used when registering the property.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.construct-only"></a>construct_only</code></em> : 1;</span></p></td>
+<td>The ParamFlags used when registering the property.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.transfer-ownership"></a>transfer_ownership</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>When writing, the type containing the property takes
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.transfer-ownership"></a>transfer_ownership</code></em> : 1;</span></p></td>
+<td>When writing, the type containing the property takes
 ownership of the value. When reading, the returned value needs to be
-released by the caller.</p></td>
-<td class="struct_member_annotations"> </td>
+released by the caller.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.transfer-container-ownership"></a>transfer_container_ownership</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>For container types indicates that the
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.transfer-container-ownership"></a>transfer_container_ownership</code></em> : 1;</span></p></td>
+<td>For container types indicates that the
 ownership of the container, but not of its contents, is transferred.
 This is typically the case when reading lists of statically allocated
-things.</p></td>
-<td class="struct_member_annotations"> </td>
+things.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.reserved"></a>reserved</code></em> :25;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.reserved"></a>reserved</code></em> :25;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="PropertyBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="PropertyBlob.type"></a>type</code></em>;</p></td>
-<td class="struct_member_description"><p>Describes the type of the property.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="PropertyBlob.type"></a>type</code></em>;</span></p></td>
+<td>Describes the type of the property.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="SignalBlob"></a><h3>SignalBlob</h3>
@@ -2541,97 +1881,80 @@ things.</p></td>
   guint32 signature;
 } SignalBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.27.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.run-first"></a>run_first</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.run-first"></a>run_first</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.run-last"></a>run_last</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.run-last"></a>run_last</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.run-cleanup"></a>run_cleanup</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.run-cleanup"></a>run_cleanup</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.no-recurse"></a>no_recurse</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.no-recurse"></a>no_recurse</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.detailed"></a>detailed</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.detailed"></a>detailed</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.action"></a>action</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.action"></a>action</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.no-hooks"></a>no_hooks</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>The flags used when registering the signal.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.no-hooks"></a>no_hooks</code></em> : 1;</span></p></td>
+<td>The flags used when registering the signal.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.has-class-closure"></a>has_class_closure</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Set if the signal has a class closure.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.has-class-closure"></a>has_class_closure</code></em> : 1;</span></p></td>
+<td>Set if the signal has a class closure.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.true-stops-emit"></a>true_stops_emit</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Whether the signal has true-stops-emit semantics</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.true-stops-emit"></a>true_stops_emit</code></em> : 1;</span></p></td>
+<td>Whether the signal has true-stops-emit semantics</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.reserved"></a>reserved</code></em> : 6;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.reserved"></a>reserved</code></em> : 6;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.class-closure"></a>class_closure</code></em>;</p></td>
-<td class="struct_member_description"><p>The index of the class closure in the list of virtual
-functions of the object or interface on which the signal is defined.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="SignalBlob.class-closure"></a>class_closure</code></em>;</span></p></td>
+<td>The index of the class closure in the list of virtual
+functions of the object or interface on which the signal is defined.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="SignalBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the signal.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="SignalBlob.name"></a>name</code></em>;</span></p></td>
+<td>The name of the signal.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="SignalBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="SignalBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="SignalBlob.signature"></a>signature</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the SignatureBlob describing the parameter types
-and the return value type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="SignalBlob.signature"></a>signature</code></em>;</span></p></td>
+<td>Offset of the SignatureBlob describing the parameter types
+and the return value type.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="VFuncBlob"></a><h3>VFuncBlob</h3>
@@ -2654,94 +1977,80 @@ and the return value type.</p></td>
   guint32 signature;
 } VFuncBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.28.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="VFuncBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the virtual function.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="VFuncBlob.name"></a>name</code></em>;</span></p></td>
+<td>The name of the virtual function.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.must-chain-up"></a>must_chain_up</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If set, every implementation of this virtual function must
-chain up to the implementation of the parent class.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.must-chain-up"></a>must_chain_up</code></em> : 1;</span></p></td>
+<td>If set, every implementation of this virtual function must
+chain up to the implementation of the parent class.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.must-be-implemented"></a>must_be_implemented</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If set, every derived class must override this virtual
-function.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.must-be-implemented"></a>must_be_implemented</code></em> : 1;</span></p></td>
+<td>If set, every derived class must override this virtual
+function.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.must-not-be-implemented"></a>must_not_be_implemented</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>If set, derived class must not override this
-virtual function.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.must-not-be-implemented"></a>must_not_be_implemented</code></em> : 1;</span></p></td>
+<td>If set, derived class must not override this
+virtual function.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.class-closure"></a>class_closure</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>Set if this virtual function is the class closure of a
-signal.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.class-closure"></a>class_closure</code></em> : 1;</span></p></td>
+<td>Set if this virtual function is the class closure of a
+signal.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.throws"></a>throws</code></em> : 1;</p></td>
-<td class="struct_member_description"><p> This is now additionally stored in the <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob"><span class="type">SignatureBlob</span></a>. </p></td>
-<td class="struct_member_annotations"><span class="annotation">[deprecated]</span></td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.throws"></a>throws</code></em> : 1;</span></p></td>
+<td>This is now additionally stored in the <a class="link" href="gi-GITypelib.html#SignatureBlob" title="SignatureBlob"><span class="type">SignatureBlob</span></a>. <span class="annotation">[deprecated]</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.reserved"></a>reserved</code></em> :11;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.reserved"></a>reserved</code></em> :11;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.signal"></a>signal</code></em>;</p></td>
-<td class="struct_member_description"><p>The index of the signal in the list of signals of the object or
-interface to which this virtual function belongs.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.signal"></a>signal</code></em>;</span></p></td>
+<td>The index of the signal in the list of signals of the object or
+interface to which this virtual function belongs.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.struct-offset"></a>struct_offset</code></em>;</p></td>
-<td class="struct_member_description"><p>The offset of the function pointer in the class struct.
-The value 0xFFFF indicates that the struct offset is unknown.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.struct-offset"></a>struct_offset</code></em>;</span></p></td>
+<td>The offset of the function pointer in the class struct.
+The value 0xFFFF indicates that the struct offset is unknown.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.invoker"></a>invoker</code></em> : 10;</p></td>
-<td class="struct_member_description"><p>If a method invoker for this virtual exists, this is the offset
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.invoker"></a>invoker</code></em> : 10;</span></p></td>
+<td>If a method invoker for this virtual exists, this is the offset
 in the class structure of the method. If no method is known, this value
-will be 0x3ff.</p></td>
-<td class="struct_member_annotations"> </td>
+will be 0x3ff.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.reserved2"></a>reserved2</code></em> : 6;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="VFuncBlob.reserved2"></a>reserved2</code></em> : 6;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="VFuncBlob.reserved3"></a>reserved3</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="VFuncBlob.reserved3"></a>reserved3</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="VFuncBlob.signature"></a>signature</code></em>;</p></td>
-<td class="struct_member_description"><p>Offset of the SignatureBlob describing the parameter types and
-the return value type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="VFuncBlob.signature"></a>signature</code></em>;</span></p></td>
+<td>Offset of the SignatureBlob describing the parameter types and
+the return value type.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ObjectBlob"></a><h3>ObjectBlob</h3>
@@ -2766,7 +2075,7 @@ the return value type.</p></td>
   guint16   n_signals;
   guint16   n_vfuncs;
   guint16   n_constants;
-  guint16   reserved2;
+  guint16   n_field_callbacks;
 
   guint32   ref_func;
   guint32   unref_func;
@@ -2779,154 +2088,130 @@ the return value type.</p></td>
   guint16   interfaces[];
 } ObjectBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.29.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p><a class="link" href="gi-GITypelib.html#BLOB-TYPE-OBJECT:CAPS"><span class="type">BLOB_TYPE_OBJECT</span></a></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td><a class="link" href="gi-GITypelib.html#BLOB-TYPE-OBJECT:CAPS"><span class="type">BLOB_TYPE_OBJECT</span></a></td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.abstract"></a>abstract</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.abstract"></a>abstract</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.fundamental"></a>fundamental</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>this object is not a GObject derived type, instead it's
-an additional fundamental type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.fundamental"></a>fundamental</code></em> : 1;</span></p></td>
+<td>this object is not a GObject derived type, instead it's
+an additional fundamental type.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.reserved"></a>reserved</code></em> :13;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.reserved"></a>reserved</code></em> :13;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.gtype-name"></a>gtype_name</code></em>;</p></td>
-<td class="struct_member_description"><p>String name of the associated <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.gtype-name"></a>gtype_name</code></em>;</span></p></td>
+<td>String name of the associated <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.gtype-init"></a>gtype_init</code></em>;</p></td>
-<td class="struct_member_description"><p>String naming the symbol which gets the runtime <span class="type">GType</span></p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.gtype-init"></a>gtype_init</code></em>;</span></p></td>
+<td>String naming the symbol which gets the runtime <span class="type">GType</span>
+</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.parent"></a>parent</code></em>;</p></td>
-<td class="struct_member_description"><p>The directory index of the parent type. This is only set for
-objects. If an object does not have a parent, it is zero.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.parent"></a>parent</code></em>;</span></p></td>
+<td>The directory index of the parent type. This is only set for
+objects. If an object does not have a parent, it is zero.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.gtype-struct"></a>gtype_struct</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.gtype-struct"></a>gtype_struct</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-interfaces"></a>n_interfaces</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-interfaces"></a>n_interfaces</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-fields"></a>n_fields</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-fields"></a>n_fields</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-properties"></a>n_properties</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-properties"></a>n_properties</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-methods"></a>n_methods</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-methods"></a>n_methods</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-signals"></a>n_signals</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-signals"></a>n_signals</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-vfuncs"></a>n_vfuncs</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-vfuncs"></a>n_vfuncs</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-constants"></a>n_constants</code></em>;</p></td>
-<td class="struct_member_description"><p>The lengths of the arrays.Up to 16bits of padding may be
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-constants"></a>n_constants</code></em>;</span></p></td>
+<td>The lengths of the arrays.Up to 16bits of padding may be
 inserted between the arrays to ensure that they start on a 32bit
-boundary.</p></td>
-<td class="struct_member_annotations"> </td>
+boundary.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.n-field-callbacks"></a>n_field_callbacks</code></em>;</span></p></td>
+<td>The number of n_fields which are also callbacks.
+This is used to calculate the fields section size in constant time.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.ref-func"></a>ref_func</code></em>;</p></td>
-<td class="struct_member_description"><p>String pointing to a function which can be called to increase
-the reference count for an instance of this object type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.ref-func"></a>ref_func</code></em>;</span></p></td>
+<td>String pointing to a function which can be called to increase
+the reference count for an instance of this object type.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.unref-func"></a>unref_func</code></em>;</p></td>
-<td class="struct_member_description"><p>String pointing to a function which can be called to decrease
-the reference count for an instance of this object type.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.unref-func"></a>unref_func</code></em>;</span></p></td>
+<td>String pointing to a function which can be called to decrease
+the reference count for an instance of this object type.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.set-value-func"></a>set_value_func</code></em>;</p></td>
-<td class="struct_member_description"><p>String pointing to a function which can be called to
-convert a pointer of this object to a GValue</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.set-value-func"></a>set_value_func</code></em>;</span></p></td>
+<td>String pointing to a function which can be called to
+convert a pointer of this object to a GValue</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.get-value-func"></a>get_value_func</code></em>;</p></td>
-<td class="struct_member_description"><p>String pointing to a function which can be called to
-convert extract a pointer to this object from a GValue</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.get-value-func"></a>get_value_func</code></em>;</span></p></td>
+<td>String pointing to a function which can be called to
+convert extract a pointer to this object from a GValue</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.reserved3"></a>reserved3</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.reserved3"></a>reserved3</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.reserved4"></a>reserved4</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ObjectBlob.reserved4"></a>reserved4</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.interfaces"></a>interfaces</code></em>[];</p></td>
-<td class="struct_member_description"><p>An array of indices of directory entries for the implemented
-interfaces.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ObjectBlob.interfaces"></a>interfaces</code></em>[];</span></p></td>
+<td>An array of indices of directory entries for the implemented
+interfaces.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="InterfaceBlob"></a><h3>InterfaceBlob</h3>
@@ -2955,108 +2240,89 @@ interfaces.</p></td>
   guint16 prerequisites[];
 } InterfaceBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.30.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.reserved"></a>reserved</code></em> :15;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.reserved"></a>reserved</code></em> :15;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.gtype-name"></a>gtype_name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.gtype-name"></a>gtype_name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.gtype-init"></a>gtype_init</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.gtype-init"></a>gtype_init</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.gtype-struct"></a>gtype_struct</code></em>;</p></td>
-<td class="struct_member_description"><p>Name of the interface "class" C structure</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.gtype-struct"></a>gtype_struct</code></em>;</span></p></td>
+<td>Name of the interface "class" C structure</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-prerequisites"></a>n_prerequisites</code></em>;</p></td>
-<td class="struct_member_description"><p>Number of prerequisites</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-prerequisites"></a>n_prerequisites</code></em>;</span></p></td>
+<td>Number of prerequisites</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-properties"></a>n_properties</code></em>;</p></td>
-<td class="struct_member_description"><p>Number of properties</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-properties"></a>n_properties</code></em>;</span></p></td>
+<td>Number of properties</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-methods"></a>n_methods</code></em>;</p></td>
-<td class="struct_member_description"><p>Number of methods</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-methods"></a>n_methods</code></em>;</span></p></td>
+<td>Number of methods</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-signals"></a>n_signals</code></em>;</p></td>
-<td class="struct_member_description"><p>Number of signals</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-signals"></a>n_signals</code></em>;</span></p></td>
+<td>Number of signals</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-vfuncs"></a>n_vfuncs</code></em>;</p></td>
-<td class="struct_member_description"><p>Number of virtual functions</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-vfuncs"></a>n_vfuncs</code></em>;</span></p></td>
+<td>Number of virtual functions</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-constants"></a>n_constants</code></em>;</p></td>
-<td class="struct_member_description"><p>The lengths of the arrays. Up to 16bits of padding may be
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.n-constants"></a>n_constants</code></em>;</span></p></td>
+<td>The lengths of the arrays. Up to 16bits of padding may be
 inserted between the arrays to ensure that they start on a 32bit
-boundary.</p></td>
-<td class="struct_member_annotations"> </td>
+boundary.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.padding"></a>padding</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.padding"></a>padding</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.reserved3"></a>reserved3</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="InterfaceBlob.reserved3"></a>reserved3</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.prerequisites"></a>prerequisites</code></em>[];</p></td>
-<td class="struct_member_description"><p>An array of indices of directory entries for required
-interfaces.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="InterfaceBlob.prerequisites"></a>prerequisites</code></em>[];</span></p></td>
+<td>An array of indices of directory entries for required
+interfaces.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="ConstantBlob"></a><h3>ConstantBlob</h3>
@@ -3074,61 +2340,51 @@ interfaces.</p></td>
   guint32        reserved2;
 } ConstantBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.31.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ConstantBlob.blob-type"></a>blob_type</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ConstantBlob.blob-type"></a>blob_type</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ConstantBlob.deprecated"></a>deprecated</code></em> : 1;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ConstantBlob.deprecated"></a>deprecated</code></em> : 1;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="ConstantBlob.reserved"></a>reserved</code></em> :15;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="ConstantBlob.reserved"></a>reserved</code></em> :15;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>TODO</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.name"></a>name</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ConstantBlob.type"></a>type</code></em>;</p></td>
-<td class="struct_member_description"><p>The type of the value. In most cases this should be a numeric type
-or string.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><a class="link" href="gi-GITypelib.html#SimpleTypeBlob" title="union SimpleTypeBlob"><span class="type">SimpleTypeBlob</span></a> <em class="structfield"><code><a name="ConstantBlob.type"></a>type</code></em>;</span></p></td>
+<td>The type of the value. In most cases this should be a numeric type
+or string.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.size"></a>size</code></em>;</p></td>
-<td class="struct_member_description"><p>The size of the value in bytes.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.size"></a>size</code></em>;</span></p></td>
+<td>The size of the value in bytes.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.offset"></a>offset</code></em>;</p></td>
-<td class="struct_member_description"><p>The offset of the value in the typelib.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.offset"></a>offset</code></em>;</span></p></td>
+<td>The offset of the value in the typelib.</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.reserved2"></a>reserved2</code></em>;</p></td>
-<td class="struct_member_description"><p>Reserved for future use.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="ConstantBlob.reserved2"></a>reserved2</code></em>;</span></p></td>
+<td>Reserved for future use.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="AttributeBlob"></a><h3>AttributeBlob</h3>
@@ -3138,98 +2394,331 @@ or string.</p></td>
   guint32 value;
 } AttributeBlob;
 </pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.32.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="AttributeBlob.offset"></a>offset</code></em>;</p></td>
-<td class="struct_member_description"><p>The offset of the typelib entry to which this attribute refers.
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="AttributeBlob.offset"></a>offset</code></em>;</span></p></td>
+<td>The offset of the typelib entry to which this attribute refers.
 Attributes are kept sorted by offset, so that the attributes of an
-entry can be found by a binary search.</p></td>
-<td class="struct_member_annotations"> </td>
+entry can be found by a binary search.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="AttributeBlob.name"></a>name</code></em>;</span></p></td>
+<td>The name of the attribute, a string.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="AttributeBlob.value"></a>value</code></em>;</span></p></td>
+<td>The value of the attribute (also a string)</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-get-dir-entry"></a><h3>g_typelib_get_dir_entry ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          g_typelib_get_dir_entry             (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">guint16</span> index</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="AttributeBlob.name"></a>name</code></em>;</p></td>
-<td class="struct_member_description"><p>The name of the attribute, a string.</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-get-dir-entry-by-name"></a><h3>g_typelib_get_dir_entry_by_name ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          g_typelib_get_dir_entry_by_name     (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">char</span> *name</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-get-dir-entry-by-gtype-name"></a><h3>g_typelib_get_dir_entry_by_gtype_name ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          g_typelib_get_dir_entry_by_gtype_name
+                                                        (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *gtype_name</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>gtype_name</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="AttributeBlob.value"></a>value</code></em>;</p></td>
-<td class="struct_member_description"><p>The value of the attribute (also a string)</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-get-dir-entry-by-error-domain"></a><h3>g_typelib_get_dir_entry_by_error_domain ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypelib.html#DirEntry" title="DirEntry"><span class="returnvalue">DirEntry</span></a> *          g_typelib_get_dir_entry_by_error_domain
+                                                        (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">GQuark</span> error_domain</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error_domain</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-matches-gtype-name-prefix"></a><h3>g_typelib_matches_gtype_name_prefix ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_typelib_matches_gtype_name_prefix (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *gtype_name</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>gtype_name</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-check-sanity"></a><h3>g_typelib_check_sanity ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_typelib_check_sanity              (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+TODO
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-get-string"></a><h3>g_typelib_get_string()</h3>
+<pre class="programlisting">#define             g_typelib_get_string(typelib,offset)</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
+</table></div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GITypelibError"></a><h3>enum GITypelibError</h3>
-<p>A error set while validating the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a></p>
-<div class="refsect3">
-<a name="id-1.4.3.3.8.33.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">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
+} GITypelibError;
+</pre>
+<p>
+A error set while validating the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="G-TYPELIB-ERROR-INVALID:CAPS"></a>G_TYPELIB_ERROR_INVALID</p></td>
-<td class="enum_member_description">
-<p>the typelib is invalid</p>
+<td><p><a name="G-TYPELIB-ERROR-INVALID:CAPS"></a><span class="term"><code class="literal">G_TYPELIB_ERROR_INVALID</code></span></p></td>
+<td>the typelib is invalid
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-TYPELIB-ERROR-INVALID-HEADER:CAPS"></a>G_TYPELIB_ERROR_INVALID_HEADER</p></td>
-<td class="enum_member_description">
-<p>the typelib header is invalid</p>
+<td><p><a name="G-TYPELIB-ERROR-INVALID-HEADER:CAPS"></a><span class="term"><code class="literal">G_TYPELIB_ERROR_INVALID_HEADER</code></span></p></td>
+<td>the typelib header is invalid
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-TYPELIB-ERROR-INVALID-DIRECTORY:CAPS"></a>G_TYPELIB_ERROR_INVALID_DIRECTORY</p></td>
-<td class="enum_member_description">
-<p>the typelib directory is invalid</p>
+<td><p><a name="G-TYPELIB-ERROR-INVALID-DIRECTORY:CAPS"></a><span class="term"><code class="literal">G_TYPELIB_ERROR_INVALID_DIRECTORY</code></span></p></td>
+<td>the typelib directory is invalid
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-TYPELIB-ERROR-INVALID-ENTRY:CAPS"></a>G_TYPELIB_ERROR_INVALID_ENTRY</p></td>
-<td class="enum_member_description">
-<p>a typelib entry is invalid</p>
+<td><p><a name="G-TYPELIB-ERROR-INVALID-ENTRY:CAPS"></a><span class="term"><code class="literal">G_TYPELIB_ERROR_INVALID_ENTRY</code></span></p></td>
+<td>a typelib entry is invalid
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="G-TYPELIB-ERROR-INVALID-BLOB:CAPS"></a>G_TYPELIB_ERROR_INVALID_BLOB</p></td>
-<td class="enum_member_description">
-<p>a typelib blob is invalid</p>
+<td><p><a name="G-TYPELIB-ERROR-INVALID-BLOB:CAPS"></a><span class="term"><code class="literal">G_TYPELIB_ERROR_INVALID_BLOB</code></span></p></td>
+<td>a typelib blob is invalid
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="G-TYPELIB-ERROR:CAPS"></a><h3>G_TYPELIB_ERROR</h3>
+<pre class="programlisting">#define G_TYPELIB_ERROR (g_typelib_error_quark ())
+</pre>
+<p>
+TODO
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-error-quark"></a><h3>g_typelib_error_quark ()</h3>
+<pre class="programlisting"><span class="returnvalue">GQuark</span>              g_typelib_error_quark               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="g-typelib-validate"></a><h3>g_typelib_validate ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_typelib_validate                  (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
+</table></div>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GITypelibHashBuilder"></a><h3>GITypelibHashBuilder</h3>
 <pre class="programlisting">typedef struct _GITypelibHashBuilder GITypelibHashBuilder;</pre>
-<p>TODO</p>
+<p>
+TODO
+</p>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 77ad44f..0290ffa 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIUnionInfo: GObject Introspection Reference Manual</title>
+<title>GIUnionInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GIStructInfo.html" title="GIStructInfo">
 <link rel="next" href="gi-GIObjectInfo.html" title="GIObjectInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIUnionInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIStructInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIObjectInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GIStructInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIObjectInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIUnionInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIUnionInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIUnionInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIUnionInfo.top_of_page"></a>GIUnionInfo</span></h2>
 <p>GIUnionInfo â€” Struct representing a union.</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIUnionInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-fields" title="g_union_info_get_n_fields ()">g_union_info_get_n_fields</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-field" title="g_union_info_get_field ()">g_union_info_get_field</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-methods" title="g_union_info_get_n_methods ()">g_union_info_get_n_methods</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-method" title="g_union_info_get_method ()">g_union_info_get_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-is-discriminated" title="g_union_info_is_discriminated ()">g_union_info_is_discriminated</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-offset" title="g_union_info_get_discriminator_offset ()">g_union_info_get_discriminator_offset</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-type" title="g_union_info_get_discriminator_type ()">g_union_info_get_discriminator_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator" title="g_union_info_get_discriminator ()">g_union_info_get_discriminator</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-find-method" title="g_union_info_find_method ()">g_union_info_find_method</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gsize</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-size" title="g_union_info_get_size ()">g_union_info_get_size</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gsize</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIUnionInfo.html#g-union-info-get-alignment" title="g_union_info_get_alignment ()">g_union_info_get_alignment</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-GIUnionInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo">GIUnionInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIUnionInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">typedef             <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo">GIUnionInfo</a>;
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-fields" title="g_union_info_get_n_fields ()">g_union_info_get_n_fields</a>           (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *       <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-field" title="g_union_info_get_field ()">g_union_info_get_field</a>              (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-n-methods" title="g_union_info_get_n_methods ()">g_union_info_get_n_methods</a>          (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-method" title="g_union_info_get_method ()">g_union_info_get_method</a>             (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIUnionInfo.html#g-union-info-is-discriminated" title="g_union_info_is_discriminated ()">g_union_info_is_discriminated</a>       (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-offset" title="g_union_info_get_discriminator_offset ()">g_union_info_get_discriminator_offset</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator-type" title="g_union_info_get_discriminator_type ()">g_union_info_get_discriminator_type</a> (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *    <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-discriminator" title="g_union_info_get_discriminator ()">g_union_info_get_discriminator</a>      (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIUnionInfo.html#g-union-info-find-method" title="g_union_info_find_method ()">g_union_info_find_method</a>            (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);
+<span class="returnvalue">gsize</span>               <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-size" title="g_union_info_get_size ()">g_union_info_get_size</a>               (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+<span class="returnvalue">gsize</span>               <a class="link" href="gi-GIUnionInfo.html#g-union-info-get-alignment" title="g_union_info_get_alignment ()">g_union_info_get_alignment</a>          (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIUnionInfo.description"></a><h2>Description</h2>
-<p>GIUnionInfo represents a union type.</p>
-<p>A union has methods and fields.  Unions can optionally have a
+<p>
+GIUnionInfo represents a union type.
+</p>
+<p>
+A union has methods and fields.  Unions can optionally have a
 discriminator, which is a field deciding what type of real union
-fields is valid for specified instance.</p>
+fields is valid for specified instance.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-giobjectinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
@@ -157,352 +76,333 @@ fields is valid for specified instance.</p>
          +----GIUnionInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIUnionInfo.functions_details"></a><h2>Functions</h2>
+<a name="gi-GIUnionInfo.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GIUnionInfo"></a><h3>GIUnionInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIUnionInfo;
+</pre>
+<p>
+Represents a union.
+</p>
+</div>
+<hr>
 <div class="refsect2">
-<a name="g-union-info-get-n-fields"></a><h3>g_union_info_get_n_fields ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_union_info_get_n_fields (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of fields this union has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-n-fields"></a><h3>g_union_info_get_n_fields ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_union_info_get_n_fields           (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of fields this union has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of fields</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.2.6"></a><h4>Returns</h4>
-<p> number of fields</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-field"></a><h3>g_union_info_get_field ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *
-g_union_info_get_field (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
-                        <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain the type information for field with specified index.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-field"></a><h3>g_union_info_get_field ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="returnvalue">GIFieldInfo</span></a> *       g_union_info_get_field              (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain the type information for field with specified index.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>a field index</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>a field index</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.3.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFieldInfo.html#GIFieldInfo" title="GIFieldInfo"><span class="type">GIFieldInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-n-methods"></a><h3>g_union_info_get_n_methods ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_union_info_get_n_methods (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the number of methods this union has.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-n-methods"></a><h3>g_union_info_get_n_methods ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_union_info_get_n_methods          (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the number of methods this union has.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>number of methods</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.4.6"></a><h4>Returns</h4>
-<p> number of methods</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-method"></a><h3>g_union_info_get_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_union_info_get_method (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
-                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain the type information for method with specified index.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-method"></a><h3>g_union_info_get_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_union_info_get_method             (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain the type information for method with specified index.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>a method index</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>a method index</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.5.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-is-discriminated"></a><h3>g_union_info_is_discriminated ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_union_info_is_discriminated (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Return true if this union contains discriminator field.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-is-discriminated"></a><h3>g_union_info_is_discriminated ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_union_info_is_discriminated       (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Return true if this union contains discriminator field.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if this is a discriminated union, <code class="literal">FALSE</code> otherwise</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.6.6"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if this is a discriminated union, <code class="literal">FALSE</code> otherwise</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-discriminator-offset"></a><h3>g_union_info_get_discriminator_offset ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_union_info_get_discriminator_offset (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Returns offset of the discriminator field in the structure.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-discriminator-offset"></a><h3>g_union_info_get_discriminator_offset ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_union_info_get_discriminator_offset
+                                                        (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Returns offset of the discriminator field in the structure.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>offset in bytes of the discriminator. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.7.6"></a><h4>Returns</h4>
-<p> offset in bytes of the discriminator. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-discriminator-type"></a><h3>g_union_info_get_discriminator_type ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *
-g_union_info_get_discriminator_type (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the type information of the union discriminator.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-discriminator-type"></a><h3>g_union_info_get_discriminator_type ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> *        g_union_info_get_discriminator_type (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the type information of the union discriminator.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.8.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-discriminator"></a><h3>g_union_info_get_discriminator ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *
-g_union_info_get_discriminator (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
-                                <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
-<p>Obtain discriminator value assigned for n-th union field, i.e. n-th
+<a name="g-union-info-get-discriminator"></a><h3>g_union_info_get_discriminator ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="returnvalue">GIConstantInfo</span></a> *    g_union_info_get_discriminator      (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">gint</span> n</code></em>);</pre>
+<p>
+Obtain discriminator value assigned for n-th union field, i.e. n-th
 union field is the active one if discriminator contains this
-constant.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+constant.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
+<td>a union field index</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n</p></td>
-<td class="parameter_description"><p>a union field index</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.9.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIConstantInfo.html#GIConstantInfo" title="GIConstantInfo"><span class="type">GIConstantInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-find-method"></a><h3>g_union_info_find_method ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_union_info_find_method (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
-<p>Obtain the type information for method named <em class="parameter"><code>name</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-find-method"></a><h3>g_union_info_find_method ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_union_info_find_method            (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
+<p>
+Obtain the type information for method named <em class="parameter"><code>name</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
+<td>a method name</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>name</p></td>
-<td class="parameter_description"><p>a method name</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
+when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.10.6"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, free it with <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a>
-when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-size"></a><h3>g_union_info_get_size ()</h3>
-<pre class="programlisting"><span class="returnvalue">gsize</span>
-g_union_info_get_size (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the total size of the union.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.11.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-size"></a><h3>g_union_info_get_size ()</h3>
+<pre class="programlisting"><span class="returnvalue">gsize</span>               g_union_info_get_size               (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the total size of the union.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>size of the union in bytes</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.11.6"></a><h4>Returns</h4>
-<p> size of the union in bytes</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-union-info-get-alignment"></a><h3>g_union_info_get_alignment ()</h3>
-<pre class="programlisting"><span class="returnvalue">gsize</span>
-g_union_info_get_alignment (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the required alignment of the union.</p>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.12.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-union-info-get-alignment"></a><h3>g_union_info_get_alignment ()</h3>
+<pre class="programlisting"><span class="returnvalue">gsize</span>               g_union_info_get_alignment          (<em class="parameter"><code><a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the required alignment of the union.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIUnionInfo.html#GIUnionInfo" title="GIUnionInfo"><span class="type">GIUnionInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>required alignment in bytes</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.14.6.12.6"></a><h4>Returns</h4>
-<p> required alignment in bytes</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIUnionInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIUnionInfo"></a><h3>GIUnionInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIUnionInfo;
-</pre>
-<p>Represents a union.</p>
-</div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index b7dd1dc..8c9864c 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIVFuncInfo: GObject Introspection Reference Manual</title>
+<title>GIVFuncInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GISignalInfo.html" title="GISignalInfo">
 <link rel="next" href="gi-GIRegisteredTypeInfo.html" title="GIRegisteredTypeInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIVFuncInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GISignalInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIRegisteredTypeInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GISignalInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIRegisteredTypeInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIVFuncInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIVFuncInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIVFuncInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIVFuncInfo.top_of_page"></a>GIVFuncInfo</span></h2>
 <p>GIVFuncInfo â€” Struct representing a virtual function</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIVFuncInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">typedef             <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo">GIVFuncInfo</a>;
+enum                <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags">GIVFuncInfoFlags</a>;
+<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags"><span class="returnvalue">GIVFuncInfoFlags</span></a>    <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-flags" title="g_vfunc_info_get_flags ()">g_vfunc_info_get_flags</a>              (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);
+<span class="returnvalue">gint</span>                <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-offset" title="g_vfunc_info_get_offset ()">g_vfunc_info_get_offset</a>             (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-signal" title="g_vfunc_info_get_signal ()">g_vfunc_info_get_signal</a>             (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);
+<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()">g_vfunc_info_get_invoker</a>            (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);
+<span class="returnvalue">gpointer</span>            <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-address" title="g_vfunc_info_get_address ()">g_vfunc_info_get_address</a>            (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">GType</span> implementor_gtype</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-invoke" title="g_vfunc_info_invoke ()">g_vfunc_info_invoke</a>                 (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">GType</span> implementor</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+</pre>
+</div>
+<div class="refsect1">
+<a name="gi-GIVFuncInfo.description"></a><h2>Description</h2>
+<p>
+GIVfuncInfo represents a virtual function. A property belongs to
+either a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.
+</p>
+<p>
+</p>
+<div class="refsect1">
+<a name="gi-givfuncinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
+<pre class="synopsis">
+  <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
+   +----<a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
+         +----<a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
+         +----<a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
+         +----GIVFuncInfo
+</pre>
+</div>
+<p>
+</p>
+</div>
 <div class="refsect1">
-<a name="gi-GIVFuncInfo.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-GIVFuncInfo.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GIVFuncInfo"></a><h3>GIVFuncInfo</h3>
+<pre class="programlisting">typedef GIBaseInfo GIVFuncInfo;
+</pre>
+<p>
+Represents a virtual function.
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GIVFuncInfoFlags"></a><h3>enum GIVFuncInfoFlags</h3>
+<pre class="programlisting">typedef enum {
+  GI_VFUNC_MUST_CHAIN_UP     = 1 &lt;&lt; 0,
+  GI_VFUNC_MUST_OVERRIDE     = 1 &lt;&lt; 1,
+  GI_VFUNC_MUST_NOT_OVERRIDE = 1 &lt;&lt; 2,
+  GI_VFUNC_THROWS =            1 &lt;&lt; 3
+} GIVFuncInfoFlags;
+</pre>
+<p>
+Flags of a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> struct.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags"><span class="returnvalue">GIVFuncInfoFlags</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-flags" title="g_vfunc_info_get_flags ()">g_vfunc_info_get_flags</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gint</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-offset" title="g_vfunc_info_get_offset ()">g_vfunc_info_get_offset</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-signal" title="g_vfunc_info_get_signal ()">g_vfunc_info_get_signal</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-VFUNC-MUST-CHAIN-UP:CAPS"></a><span class="term"><code class="literal">GI_VFUNC_MUST_CHAIN_UP</code></span></p></td>
+<td>chains up to the parent type
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker" title="g_vfunc_info_get_invoker ()">g_vfunc_info_get_invoker</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-VFUNC-MUST-OVERRIDE:CAPS"></a><span class="term"><code class="literal">GI_VFUNC_MUST_OVERRIDE</code></span></p></td>
+<td>overrides
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gpointer</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-get-address" title="g_vfunc_info_get_address ()">g_vfunc_info_get_address</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-VFUNC-MUST-NOT-OVERRIDE:CAPS"></a><span class="term"><code class="literal">GI_VFUNC_MUST_NOT_OVERRIDE</code></span></p></td>
+<td>does not override
 </td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-GIVFuncInfo.html#g-vfunc-info-invoke" title="g_vfunc_info_invoke ()">g_vfunc_info_invoke</a> <span class="c_punctuation">()</span>
+<td><p><a name="GI-VFUNC-THROWS:CAPS"></a><span class="term"><code class="literal">GI_VFUNC_THROWS</code></span></p></td>
+<td>Includes a <span class="type">GError</span>
 </td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIVFuncInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
+<hr>
+<div class="refsect2">
+<a name="g-vfunc-info-get-flags"></a><h3>g_vfunc_info_get_flags ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags"><span class="returnvalue">GIVFuncInfoFlags</span></a>    g_vfunc_info_get_flags              (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the flags for this virtual function info. See <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags"><span class="type">GIVFuncInfoFlags</span></a> for
+more information about possible flag values.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="name">
-<col class="description">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo">GIVFuncInfo</a></td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags">GIVFuncInfoFlags</a></td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the flags</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-GIVFuncInfo.description"></a><h2>Description</h2>
-<p>GIVfuncInfo represents a virtual function. A property belongs to
-either a <a class="link" href="gi-GIObjectInfo.html#GIObjectInfo" title="GIObjectInfo"><span class="type">GIObjectInfo</span></a> or a <a class="link" href="gi-GIInterfaceInfo.html#GIInterfaceInfo" title="GIInterfaceInfo"><span class="type">GIInterfaceInfo</span></a>.</p>
-<div class="refsect1">
-<a name="gi-givfuncinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
-<pre class="synopsis">
-  <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
-   +----<a class="link" href="gi-GICallableInfo.html" title="GICallableInfo">GICallableInfo</a>
-         +----<a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
-         +----<a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
-         +----GIVFuncInfo
-</pre>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIVFuncInfo.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="g-vfunc-info-get-flags"></a><h3>g_vfunc_info_get_flags ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags"><span class="returnvalue">GIVFuncInfoFlags</span></a>
-g_vfunc_info_get_flags (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the flags for this virtual function info. See <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfoFlags" title="enum GIVFuncInfoFlags"><span class="type">GIVFuncInfoFlags</span></a> for
-more information about possible flag values.</p>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.2.6"></a><h4>Returns</h4>
-<p> the flags</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-vfunc-info-get-offset"></a><h3>g_vfunc_info_get_offset ()</h3>
-<pre class="programlisting"><span class="returnvalue">gint</span>
-g_vfunc_info_get_offset (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the offset of the function pointer in the class struct. The value
-0xFFFF indicates that the struct offset is unknown.</p>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-vfunc-info-get-offset"></a><h3>g_vfunc_info_get_offset ()</h3>
+<pre class="programlisting"><span class="returnvalue">gint</span>                g_vfunc_info_get_offset             (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the offset of the function pointer in the class struct. The value
+0xFFFF indicates that the struct offset is unknown.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the struct offset or 0xFFFF if it's unknown</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.3.6"></a><h4>Returns</h4>
-<p> the struct offset or 0xFFFF if it's unknown</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-vfunc-info-get-signal"></a><h3>g_vfunc_info_get_signal ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *
-g_vfunc_info_get_signal (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
-<p>Obtain the signal for the virtual function if one is set.
+<a name="g-vfunc-info-get-signal"></a><h3>g_vfunc_info_get_signal ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="returnvalue">GISignalInfo</span></a> *      g_vfunc_info_get_signal             (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
+<p>
+Obtain the signal for the virtual function if one is set.
 The signal comes from the object or interface to which
-this virtual function belongs.</p>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+this virtual function belongs.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the signal or <code class="literal">NULL</code> if none set. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.4.6"></a><h4>Returns</h4>
-<p> the signal or <code class="literal">NULL</code> if none set. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-vfunc-info-get-invoker"></a><h3>g_vfunc_info_get_invoker ()</h3>
-<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *
-g_vfunc_info_get_invoker (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
-<p>If this virtual function has an associated invoker method, this
-method will return it.  An invoker method is a C entry point.</p>
-<p>Not all virtuals will have invokers.</p>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.5.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-vfunc-info-get-invoker"></a><h3>g_vfunc_info_get_invoker ()</h3>
+<pre class="programlisting"><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="returnvalue">GIFunctionInfo</span></a> *    g_vfunc_info_get_invoker            (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>);</pre>
+<p>
+If this virtual function has an associated invoker method, this
+method will return it.  An invoker method is a C entry point.
+</p>
+<p>
+Not all virtuals will have invokers.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> or <code class="literal">NULL</code>. Free it with
+<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.5.7"></a><h4>Returns</h4>
-<p> the <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> or <code class="literal">NULL</code>. Free it with
-<a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-vfunc-info-get-address"></a><h3>g_vfunc_info_get_address ()</h3>
-<pre class="programlisting"><span class="returnvalue">gpointer</span>
-g_vfunc_info_get_address (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>,
-                          <em class="parameter"><code><span class="type">GType</span> implementor_gtype</code></em>,
-                          <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>This method will look up where inside the type struct of <em class="parameter"><code>implementor_gtype</code></em>
-
-is the implementation for <em class="parameter"><code>info</code></em>
-.</p>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-vfunc-info-get-address"></a><h3>g_vfunc_info_get_address ()</h3>
+<pre class="programlisting"><span class="returnvalue">gpointer</span>            g_vfunc_info_get_address            (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">GType</span> implementor_gtype</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+This method will look up where inside the type struct of <em class="parameter"><code>implementor_gtype</code></em>
+is the implementation for <em class="parameter"><code>info</code></em>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>implementor_gtype</code></em> :</span></p></td>
+<td>
+<span class="type">GType</span> implementing this virtual function</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>implementor_gtype</p></td>
-<td class="parameter_description"><p><span class="type">GType</span> implementing this virtual function</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>return location for a <span class="type">GError</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>return location for a <span class="type">GError</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>address to a function or <code class="literal">NULL</code> if an error happened</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.6.6"></a><h4>Returns</h4>
-<p> address to a function or <code class="literal">NULL</code> if an error happened</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-vfunc-info-invoke"></a><h3>g_vfunc_info_invoke ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_vfunc_info_invoke (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>,
-                     <em class="parameter"><code><span class="type">GType</span> implementor</code></em>,
-                     <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
-                     <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
-                     <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
-                     <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
-                     <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
-                     <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Invokes the function described in <em class="parameter"><code>info</code></em>
- with the given
+<a name="g-vfunc-info-invoke"></a><h3>g_vfunc_info_invoke ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_vfunc_info_invoke                 (<em class="parameter"><code><a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><span class="type">GType</span> implementor</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
+                                                         <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Invokes the function described in <em class="parameter"><code>info</code></em> with the given
 arguments. Note that inout parameters must appear in both
-argument lists.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.7.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+argument lists.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> describing the virtual function to invoke</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>implementor</p></td>
-<td class="parameter_description"><p><span class="type">GType</span> of the type that implements this virtual function</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>in_args</p></td>
-<td class="parameter_description"><p>an array of <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a>s, one for each in
-parameter of <em class="parameter"><code>info</code></em>
-. If there are no in parameter, <em class="parameter"><code>in_args</code></em>
-can be <code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>n_in_args</p></td>
-<td class="parameter_description"><p>the length of the <em class="parameter"><code>in_args</code></em>
-array</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> describing the virtual function to invoke</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>out_args</p></td>
-<td class="parameter_description"><p>an array of <a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a>s, one for each out
-parameter of <em class="parameter"><code>info</code></em>
-. If there are no out parameters, <em class="parameter"><code>out_args</code></em>
-may be <code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>implementor</code></em> :</span></p></td>
+<td>
+<span class="type">GType</span> of the type that implements this virtual function</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>n_out_args</p></td>
-<td class="parameter_description"><p>the length of the <em class="parameter"><code>out_args</code></em>
-array</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>in_args</code></em> :</span></p></td>
+<td>an array of <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a>s, one for each in
+parameter of <em class="parameter"><code>info</code></em>. If there are no in parameter, <em class="parameter"><code>in_args</code></em>
+can be <code class="literal">NULL</code>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>return_value</p></td>
-<td class="parameter_description"><p>return location for the return value of the
-function. If the function returns void, <em class="parameter"><code>return_value</code></em>
-may be
-<code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_in_args</code></em> :</span></p></td>
+<td>the length of the <em class="parameter"><code>in_args</code></em> array</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>return location for detailed error information, or <code class="literal">NULL</code></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>out_args</code></em> :</span></p></td>
+<td>an array of <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a>s, one for each out
+parameter of <em class="parameter"><code>info</code></em>. If there are no out parameters, <em class="parameter"><code>out_args</code></em>
+may be <code class="literal">NULL</code>
+</td>
 </tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.2.10.6.7.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> if the function has been invoked, <code class="literal">FALSE</code> if an
-error occurred.</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-GIVFuncInfo.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIVFuncInfo"></a><h3>GIVFuncInfo</h3>
-<pre class="programlisting">typedef GIBaseInfo GIVFuncInfo;
-</pre>
-<p>Represents a virtual function.</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GIVFuncInfoFlags"></a><h3>enum GIVFuncInfoFlags</h3>
-<p>Flags of a <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a> struct.</p>
-<div class="refsect3">
-<a name="id-1.4.2.10.7.3.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-VFUNC-MUST-CHAIN-UP:CAPS"></a>GI_VFUNC_MUST_CHAIN_UP</p></td>
-<td class="enum_member_description">
-<p>chains up to the parent type</p>
-</td>
-<td class="enum_member_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>n_out_args</code></em> :</span></p></td>
+<td>the length of the <em class="parameter"><code>out_args</code></em> array</td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-VFUNC-MUST-OVERRIDE:CAPS"></a>GI_VFUNC_MUST_OVERRIDE</p></td>
-<td class="enum_member_description">
-<p>overrides</p>
+<td><p><span class="term"><em class="parameter"><code>return_value</code></em> :</span></p></td>
+<td>return location for the return value of the
+function. If the function returns void, <em class="parameter"><code>return_value</code></em> may be
+<code class="literal">NULL</code>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-VFUNC-MUST-NOT-OVERRIDE:CAPS"></a>GI_VFUNC_MUST_NOT_OVERRIDE</p></td>
-<td class="enum_member_description">
-<p>does not override</p>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>return location for detailed error information, or <code class="literal">NULL</code>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-VFUNC-THROWS:CAPS"></a>GI_VFUNC_THROWS</p></td>
-<td class="enum_member_description">
-<p>Includes a <span class="type">GError</span></p>
-</td>
-<td class="enum_member_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> if the function has been invoked, <code class="literal">FALSE</code> if an
+error occurred.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
 </div>
 </div>
-</div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 4bd28c4..4803efb 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GIValueInfo: GObject Introspection Reference Manual</title>
+<title>GIValueInfo</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-GITypeInfo.html" title="GITypeInfo">
 <link rel="next" href="gi-typelib.html" title="GITypelib">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-GIValueInfo.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GITypeInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-typelib.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-GITypeInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-typelib.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-GIValueInfo.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-GIValueInfo.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-GIValueInfo"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-GIValueInfo.top_of_page"></a>GIValueInfo</span></h2>
 <p>GIValueInfo â€” Struct representing a value</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-GIValueInfo.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo">GIValueInfo</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-GIValueInfo.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">typedef             <a class="link" href="gi-GIValueInfo.html#GIValueInfo" title="GIValueInfo">GIValueInfo</a>;
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-GIValueInfo.description"></a><h2>Description</h2>
-<p>GIValueInfo represents a value.</p>
+<p>
+GIValueInfo represents a value.
+</p>
+<p>
+</p>
 <div class="refsect1">
 <a name="gi-givalueinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
 <pre class="synopsis">
    +----GIValueInfo
 </pre>
 </div>
+<p>
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-GIValueInfo.functions_details"></a><h2>Functions</h2>
-<p></p>
-</div>
-<div class="refsect1">
-<a name="gi-GIValueInfo.other_details"></a><h2>Types and Values</h2>
+<a name="gi-GIValueInfo.details"></a><h2>Details</h2>
 <div class="refsect2">
 <a name="GIValueInfo"></a><h3>GIValueInfo</h3>
 <pre class="programlisting">typedef GIBaseInfo GIValueInfo;
 </pre>
-<p>Represents a enum value of a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>.</p>
+<p>
+Represents a enum value of a <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a>.
+</p>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 5072e0d..980dc73 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Compiling the GObject Introspection package: GObject Introspection Reference Manual</title>
+<title>Compiling the GObject Introspection package</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="overview.html" title="Part I. GObject-Introspection Overview">
 <link rel="prev" href="overview.html" title="Part I. GObject-Introspection Overview">
 <link rel="next" href="gi-programming.html" title="Writing introspected libraries">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="overview.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="overview.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-programming.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="overview.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="overview.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-programming.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="gi-building"></a><div class="titlepage"></div>
@@ -26,7 +26,7 @@
 <h2><span class="refentrytitle">Compiling the GObject Introspection package</span></h2>
 <p>Compiling the GObject Introspection Package â€” How to compile GObject Introspection itself</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsect1">
 <a name="gi-buildtools"></a><h2>Building on UNIX</h2>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index ccbee20..1137dcd 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>common types: GObject Introspection Reference Manual</title>
+<title>common types</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="gi-struct-hierarchy.html" title="Struct hierarchy">
 <link rel="next" href="gi-GIBaseInfo.html" title="GIBaseInfo">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-common-types.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-struct-hierarchy.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GIBaseInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-struct-hierarchy.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GIBaseInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-common-types.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-common-types.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-common-types"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-common-types.top_of_page"></a>common types</span></h2>
 <p>common types â€” TODO</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-common-types.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="gi-common-types.html#GI-TYPE-TAG-N-TYPES:CAPS" title="GI_TYPE_TAG_N_TYPES">GI_TYPE_TAG_N_TYPES</a></td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="gi-common-types.html#G-TYPE-TAG-IS-BASIC:CAPS" title="G_TYPE_TAG_IS_BASIC()">G_TYPE_TAG_IS_BASIC</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-common-types.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument">GIArgument</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-common-types.html#GIUnresolvedInfo" title="GIUnresolvedInfo">GIUnresolvedInfo</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag">GITypeTag</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType">GIArrayType</a></td>
-</tr>
-</tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-common-types.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">union               <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument">GIArgument</a>;
+                    <a class="link" href="gi-common-types.html#GIUnresolvedInfo" title="GIUnresolvedInfo">GIUnresolvedInfo</a>;
+enum                <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag">GITypeTag</a>;
+enum                <a class="link" href="gi-common-types.html#GIArrayType" title="enum GIArrayType">GIArrayType</a>;
+#define             <a class="link" href="gi-common-types.html#GI-TYPE-TAG-N-TYPES:CAPS" title="GI_TYPE_TAG_N_TYPES">GI_TYPE_TAG_N_TYPES</a>
+#define             <a class="link" href="gi-common-types.html#G-TYPE-TAG-IS-BASIC:CAPS" title="G_TYPE_TAG_IS_BASIC()">G_TYPE_TAG_IS_BASIC</a>                 (tag)
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-common-types.description"></a><h2>Description</h2>
-<p>TODO</p>
+<p>
+TODO
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-common-types.functions_details"></a><h2>Functions</h2>
+<a name="gi-common-types.details"></a><h2>Details</h2>
 <div class="refsect2">
-<a name="GI-TYPE-TAG-N-TYPES:CAPS"></a><h3>GI_TYPE_TAG_N_TYPES</h3>
-<pre class="programlisting">#define GI_TYPE_TAG_N_TYPES (GI_TYPE_TAG_UNICHAR+1)
+<a name="GIArgument"></a><h3>union GIArgument</h3>
+<pre class="programlisting">union _GIArgument
+{
+  gboolean v_boolean;
+  gint8    v_int8;
+  guint8   v_uint8;
+  gint16   v_int16;
+  guint16  v_uint16;
+  gint32   v_int32;
+  guint32  v_uint32;
+  gint64   v_int64;
+  guint64  v_uint64;
+  gfloat   v_float;
+  gdouble  v_double;
+  gshort   v_short;
+  gushort  v_ushort;
+  gint     v_int;
+  guint    v_uint;
+  glong    v_long;
+  gulong   v_ulong;
+  gssize   v_ssize;
+  gsize    v_size;
+  gchar *  v_string;
+  gpointer v_pointer;
+};
 </pre>
-<p>TODO</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="G-TYPE-TAG-IS-BASIC:CAPS"></a><h3>G_TYPE_TAG_IS_BASIC()</h3>
-<pre class="programlisting">#define G_TYPE_TAG_IS_BASIC(tag) (tag &lt; GI_TYPE_TAG_ARRAY || tag == GI_TYPE_TAG_UNICHAR)
-</pre>
-<p>Checks if <em class="parameter"><code>tag</code></em>
- is a basic type.</p>
-<div class="refsect3">
-<a name="id-1.4.2.4.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<p>
+Stores an argument of varying type
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>tag</p></td>
-<td class="parameter_description"><p>a type tag</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-common-types.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="GIArgument"></a><h3>GIArgument</h3>
-<p>Stores an argument of varying type</p>
-<div class="refsect3">
-<a name="id-1.4.2.4.7.2.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="union_members_name">
-<col class="union_members_description">
-<col width="200px" class="union_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="union_member_name"><p><span class="type">gboolean</span> <em class="structfield"><code><a name="GIArgument.v-boolean"></a>v_boolean</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gboolean</span> <em class="structfield"><code><a name="GIArgument.v-boolean"></a>v_boolean</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gint8</span> <em class="structfield"><code><a name="GIArgument.v-int8"></a>v_int8</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint8</span> <em class="structfield"><code><a name="GIArgument.v-int8"></a>v_int8</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GIArgument.v-uint8"></a>v_uint8</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="GIArgument.v-uint8"></a>v_uint8</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gint16</span> <em class="structfield"><code><a name="GIArgument.v-int16"></a>v_int16</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint16</span> <em class="structfield"><code><a name="GIArgument.v-int16"></a>v_int16</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GIArgument.v-uint16"></a>v_uint16</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="GIArgument.v-uint16"></a>v_uint16</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gint32</span> <em class="structfield"><code><a name="GIArgument.v-int32"></a>v_int32</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint32</span> <em class="structfield"><code><a name="GIArgument.v-int32"></a>v_int32</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint32</span> <em class="structfield"><code><a name="GIArgument.v-uint32"></a>v_uint32</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="GIArgument.v-uint32"></a>v_uint32</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gint64</span> <em class="structfield"><code><a name="GIArgument.v-int64"></a>v_int64</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint64</span> <em class="structfield"><code><a name="GIArgument.v-int64"></a>v_int64</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint64</span> <em class="structfield"><code><a name="GIArgument.v-uint64"></a>v_uint64</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint64</span> <em class="structfield"><code><a name="GIArgument.v-uint64"></a>v_uint64</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gfloat</span> <em class="structfield"><code><a name="GIArgument.v-float"></a>v_float</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gfloat</span> <em class="structfield"><code><a name="GIArgument.v-float"></a>v_float</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gdouble</span> <em class="structfield"><code><a name="GIArgument.v-double"></a>v_double</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gdouble</span> <em class="structfield"><code><a name="GIArgument.v-double"></a>v_double</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gshort</span> <em class="structfield"><code><a name="GIArgument.v-short"></a>v_short</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gshort</span> <em class="structfield"><code><a name="GIArgument.v-short"></a>v_short</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gushort</span> <em class="structfield"><code><a name="GIArgument.v-ushort"></a>v_ushort</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gushort</span> <em class="structfield"><code><a name="GIArgument.v-ushort"></a>v_ushort</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gint</span> <em class="structfield"><code><a name="GIArgument.v-int"></a>v_int</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gint</span> <em class="structfield"><code><a name="GIArgument.v-int"></a>v_int</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">guint</span> <em class="structfield"><code><a name="GIArgument.v-uint"></a>v_uint</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">guint</span> <em class="structfield"><code><a name="GIArgument.v-uint"></a>v_uint</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">glong</span> <em class="structfield"><code><a name="GIArgument.v-long"></a>v_long</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">glong</span> <em class="structfield"><code><a name="GIArgument.v-long"></a>v_long</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gulong</span> <em class="structfield"><code><a name="GIArgument.v-ulong"></a>v_ulong</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gulong</span> <em class="structfield"><code><a name="GIArgument.v-ulong"></a>v_ulong</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gssize</span> <em class="structfield"><code><a name="GIArgument.v-ssize"></a>v_ssize</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gssize</span> <em class="structfield"><code><a name="GIArgument.v-ssize"></a>v_ssize</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gsize</span> <em class="structfield"><code><a name="GIArgument.v-size"></a>v_size</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gsize</span> <em class="structfield"><code><a name="GIArgument.v-size"></a>v_size</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gchar</span> *<em class="structfield"><code><a name="GIArgument.v-string"></a>v_string</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gchar</span> *<em class="structfield"><code><a name="GIArgument.v-string"></a>v_string</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="union_member_name"><p><span class="type">gpointer</span> <em class="structfield"><code><a name="GIArgument.v-pointer"></a>v_pointer</code></em>;</p></td>
-<td class="union_member_description"><p>TODO</p></td>
-<td class="union_member_annotations"> </td>
+<td><p><span class="term"><span class="type">gpointer</span> <em class="structfield"><code><a name="GIArgument.v-pointer"></a>v_pointer</code></em>;</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="GIUnresolvedInfo"></a><h3>GIUnresolvedInfo</h3>
 <pre class="programlisting">typedef struct _GIUnresolvedInfo GIUnresolvedInfo;</pre>
-<p>Represents a unresolved type in a typelib.</p>
+<p>
+Represents a unresolved type in a typelib.
+</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="GITypeTag"></a><h3>enum GITypeTag</h3>
-<p>The type tag of a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.4.7.4.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">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_FLOAT     = 10,
+  GI_TYPE_TAG_DOUBLE    = 11,
+  GI_TYPE_TAG_GTYPE     = 12,
+  GI_TYPE_TAG_UTF8      = 13,
+  GI_TYPE_TAG_FILENAME  = 14,
+  /* Non-basic types; compare with G_TYPE_TAG_IS_BASIC */
+  GI_TYPE_TAG_ARRAY     = 15,
+  GI_TYPE_TAG_INTERFACE = 16,
+  GI_TYPE_TAG_GLIST     = 17,
+  GI_TYPE_TAG_GSLIST    = 18,
+  GI_TYPE_TAG_GHASH     = 19,
+  GI_TYPE_TAG_ERROR     = 20,
+  /* Another basic type */
+  GI_TYPE_TAG_UNICHAR   = 21
+  /* Note - there is currently only room for 32 tags */
+} GITypeTag;
+</pre>
+<p>
+The type tag of a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-VOID:CAPS"></a>GI_TYPE_TAG_VOID</p></td>
-<td class="enum_member_description">
-<p>void</p>
+<td><p><a name="GI-TYPE-TAG-VOID:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_VOID</code></span></p></td>
+<td>void
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-BOOLEAN:CAPS"></a>GI_TYPE_TAG_BOOLEAN</p></td>
-<td class="enum_member_description">
-<p>boolean</p>
+<td><p><a name="GI-TYPE-TAG-BOOLEAN:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_BOOLEAN</code></span></p></td>
+<td>boolean
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-INT8:CAPS"></a>GI_TYPE_TAG_INT8</p></td>
-<td class="enum_member_description">
-<p>8-bit signed integer</p>
+<td><p><a name="GI-TYPE-TAG-INT8:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_INT8</code></span></p></td>
+<td>8-bit signed integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-UINT8:CAPS"></a>GI_TYPE_TAG_UINT8</p></td>
-<td class="enum_member_description">
-<p>8-bit unsigned integer</p>
+<td><p><a name="GI-TYPE-TAG-UINT8:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_UINT8</code></span></p></td>
+<td>8-bit unsigned integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-INT16:CAPS"></a>GI_TYPE_TAG_INT16</p></td>
-<td class="enum_member_description">
-<p>16-bit signed integer</p>
+<td><p><a name="GI-TYPE-TAG-INT16:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_INT16</code></span></p></td>
+<td>16-bit signed integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-UINT16:CAPS"></a>GI_TYPE_TAG_UINT16</p></td>
-<td class="enum_member_description">
-<p>16-bit unsigned integer</p>
+<td><p><a name="GI-TYPE-TAG-UINT16:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_UINT16</code></span></p></td>
+<td>16-bit unsigned integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-INT32:CAPS"></a>GI_TYPE_TAG_INT32</p></td>
-<td class="enum_member_description">
-<p>32-bit signed integer</p>
+<td><p><a name="GI-TYPE-TAG-INT32:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_INT32</code></span></p></td>
+<td>32-bit signed integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-UINT32:CAPS"></a>GI_TYPE_TAG_UINT32</p></td>
-<td class="enum_member_description">
-<p>32-bit unsigned integer</p>
+<td><p><a name="GI-TYPE-TAG-UINT32:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_UINT32</code></span></p></td>
+<td>32-bit unsigned integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-INT64:CAPS"></a>GI_TYPE_TAG_INT64</p></td>
-<td class="enum_member_description">
-<p>64-bit signed integer</p>
+<td><p><a name="GI-TYPE-TAG-INT64:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_INT64</code></span></p></td>
+<td>64-bit signed integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-UINT64:CAPS"></a>GI_TYPE_TAG_UINT64</p></td>
-<td class="enum_member_description">
-<p>64-bit unsigned integer</p>
+<td><p><a name="GI-TYPE-TAG-UINT64:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_UINT64</code></span></p></td>
+<td>64-bit unsigned integer
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-FLOAT:CAPS"></a>GI_TYPE_TAG_FLOAT</p></td>
-<td class="enum_member_description">
-<p>float</p>
+<td><p><a name="GI-TYPE-TAG-FLOAT:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_FLOAT</code></span></p></td>
+<td>float
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-DOUBLE:CAPS"></a>GI_TYPE_TAG_DOUBLE</p></td>
-<td class="enum_member_description">
-<p>double floating point</p>
+<td><p><a name="GI-TYPE-TAG-DOUBLE:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_DOUBLE</code></span></p></td>
+<td>double floating point
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-GTYPE:CAPS"></a>GI_TYPE_TAG_GTYPE</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GType</span></p>
+<td><p><a name="GI-TYPE-TAG-GTYPE:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_GTYPE</code></span></p></td>
+<td>a <span class="type">GType</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-UTF8:CAPS"></a>GI_TYPE_TAG_UTF8</p></td>
-<td class="enum_member_description">
-<p>a UTF-8 encoded string</p>
+<td><p><a name="GI-TYPE-TAG-UTF8:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_UTF8</code></span></p></td>
+<td>a UTF-8 encoded string
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-FILENAME:CAPS"></a>GI_TYPE_TAG_FILENAME</p></td>
-<td class="enum_member_description">
-<p>a filename, encoded in the same encoding
-  as the native filesystem is using.</p>
+<td><p><a name="GI-TYPE-TAG-FILENAME:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_FILENAME</code></span></p></td>
+<td>a filename, encoded in the same encoding
+  as the native filesystem is using.
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-ARRAY:CAPS"></a>GI_TYPE_TAG_ARRAY</p></td>
-<td class="enum_member_description">
-<p>an array</p>
+<td><p><a name="GI-TYPE-TAG-ARRAY:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_ARRAY</code></span></p></td>
+<td>an array
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-INTERFACE:CAPS"></a>GI_TYPE_TAG_INTERFACE</p></td>
-<td class="enum_member_description">
-<p>an extended interface object</p>
+<td><p><a name="GI-TYPE-TAG-INTERFACE:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_INTERFACE</code></span></p></td>
+<td>an extended interface object
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-GLIST:CAPS"></a>GI_TYPE_TAG_GLIST</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GList</span></p>
+<td><p><a name="GI-TYPE-TAG-GLIST:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_GLIST</code></span></p></td>
+<td>a <span class="type">GList</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-GSLIST:CAPS"></a>GI_TYPE_TAG_GSLIST</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GSList</span></p>
+<td><p><a name="GI-TYPE-TAG-GSLIST:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_GSLIST</code></span></p></td>
+<td>a <span class="type">GSList</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-GHASH:CAPS"></a>GI_TYPE_TAG_GHASH</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GHashTable</span></p>
+<td><p><a name="GI-TYPE-TAG-GHASH:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_GHASH</code></span></p></td>
+<td>a <span class="type">GHashTable</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-ERROR:CAPS"></a>GI_TYPE_TAG_ERROR</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GError</span></p>
+<td><p><a name="GI-TYPE-TAG-ERROR:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_ERROR</code></span></p></td>
+<td>a <span class="type">GError</span>
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-TYPE-TAG-UNICHAR:CAPS"></a>GI_TYPE_TAG_UNICHAR</p></td>
-<td class="enum_member_description">
-<p>Unicode character</p>
+<td><p><a name="GI-TYPE-TAG-UNICHAR:CAPS"></a><span class="term"><code class="literal">GI_TYPE_TAG_UNICHAR</code></span></p></td>
+<td>Unicode character
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
 <a name="GIArrayType"></a><h3>enum GIArrayType</h3>
-<p>The type of array in a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.2.4.7.5.4"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<pre class="programlisting">typedef enum {
+  GI_ARRAY_TYPE_C,
+  GI_ARRAY_TYPE_ARRAY,
+  GI_ARRAY_TYPE_PTR_ARRAY,
+  GI_ARRAY_TYPE_BYTE_ARRAY
+} GIArrayType;
+</pre>
+<p>
+The type of array in a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="enum_member_name"><p><a name="GI-ARRAY-TYPE-C:CAPS"></a>GI_ARRAY_TYPE_C</p></td>
-<td class="enum_member_description">
-<p>a C array, char[] for instance</p>
+<td><p><a name="GI-ARRAY-TYPE-C:CAPS"></a><span class="term"><code class="literal">GI_ARRAY_TYPE_C</code></span></p></td>
+<td>a C array, char[] for instance
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-ARRAY-TYPE-ARRAY:CAPS"></a>GI_ARRAY_TYPE_ARRAY</p></td>
-<td class="enum_member_description">
-<p>a <em class="parameter"><code>GArray</code></em>
- array</p>
+<td><p><a name="GI-ARRAY-TYPE-ARRAY:CAPS"></a><span class="term"><code class="literal">GI_ARRAY_TYPE_ARRAY</code></span></p></td>
+<td>a <em class="parameter"><code>GArray</code></em> array
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-ARRAY-TYPE-PTR-ARRAY:CAPS"></a>GI_ARRAY_TYPE_PTR_ARRAY</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GPtrArray</span> array</p>
+<td><p><a name="GI-ARRAY-TYPE-PTR-ARRAY:CAPS"></a><span class="term"><code class="literal">GI_ARRAY_TYPE_PTR_ARRAY</code></span></p></td>
+<td>a <span class="type">GPtrArray</span> array
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td class="enum_member_name"><p><a name="GI-ARRAY-TYPE-BYTE-ARRAY:CAPS"></a>GI_ARRAY_TYPE_BYTE_ARRAY</p></td>
-<td class="enum_member_description">
-<p>a <span class="type">GByteArray</span> array</p>
+<td><p><a name="GI-ARRAY-TYPE-BYTE-ARRAY:CAPS"></a><span class="term"><code class="literal">GI_ARRAY_TYPE_BYTE_ARRAY</code></span></p></td>
+<td>a <span class="type">GByteArray</span> array
 </td>
-<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="GI-TYPE-TAG-N-TYPES:CAPS"></a><h3>GI_TYPE_TAG_N_TYPES</h3>
+<pre class="programlisting">#define GI_TYPE_TAG_N_TYPES (GI_TYPE_TAG_UNICHAR+1)
+</pre>
+<p>
+TODO
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="G-TYPE-TAG-IS-BASIC:CAPS"></a><h3>G_TYPE_TAG_IS_BASIC()</h3>
+<pre class="programlisting">#define G_TYPE_TAG_IS_BASIC(tag) (tag &lt; GI_TYPE_TAG_ARRAY || tag == GI_TYPE_TAG_UNICHAR)
+</pre>
+<p>
+Checks if <em class="parameter"><code>tag</code></em> is a basic type.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>tag</code></em> :</span></p></td>
+<td>a type tag</td>
+</tr></tbody>
+</table></div>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index a954582..a77d5a8 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>The GIR XML format: GObject Introspection Reference Manual</title>
+<title>The GIR XML format</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch03.html" title="TODO">
 <link rel="prev" href="gi-girffi.html" title="girffi">
 <link rel="next" href="api-index-full.html" title="Index">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch03.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-girffi.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="gi-girffi.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch03.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="gi-gir-reference"></a><div class="titlepage"></div>
@@ -26,7 +26,7 @@
 <h2><span class="refentrytitle"><a name="gi-gir-reference.top_of_page"></a>The GIR XML format</span></h2>
 <p>The GIR XML format â€” The GIR XML format</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
 <p>
     This chapter describes the GIR XML markup format. This describes exported C
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index d93c78e..e8cee72 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>girffi: GObject Introspection Reference Manual</title>
+<title>girffi</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch03.html" title="TODO">
 <link rel="prev" href="ch03.html" title="TODO">
 <link rel="next" href="gi-gir-reference.html" title="The GIR XML format">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-girffi.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch03.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="ch03.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-gir-reference.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="ch03.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch03.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-gir-reference.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-girffi.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-girffi.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-girffi"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-girffi.top_of_page"></a>girffi</span></h2>
 <p>girffi â€” TODO</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
+<div class="refsynopsisdiv">
+<a name="gi-girffi.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis"><span class="returnvalue">void</span>                (<a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()">*GIFFIClosureCallback</a>)             (<em class="parameter"><code><span class="type">ffi_cif</span> *Param1</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> *Param2</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> **Param3</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> *Param4</code></em>);
+struct              <a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker">GIFunctionInvoker</a>;
+typedef             <a class="link" href="gi-girffi.html#GIFFIReturnValue" title="GIFFIReturnValue">GIFFIReturnValue</a>;
+<span class="returnvalue">ffi_type</span> *          <a class="link" href="gi-girffi.html#gi-type-tag-get-ffi-type" title="gi_type_tag_get_ffi_type ()">gi_type_tag_get_ffi_type</a>            (<em class="parameter"><code><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> type_tag</code></em>,
+                                                         <em class="parameter"><code><span class="type">gboolean</span> is_pointer</code></em>);
+<span class="returnvalue">ffi_type</span> *          <a class="link" href="gi-girffi.html#g-type-info-get-ffi-type" title="g_type_info_get_ffi_type ()">g_type_info_get_ffi_type</a>            (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-girffi.html#gi-type-info-extract-ffi-return-value" title="gi_type_info_extract_ffi_return_value ()">gi_type_info_extract_ffi_return_value</a>
+                                                        (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *return_info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFFIReturnValue" title="GIFFIReturnValue"><span class="type">GIFFIReturnValue</span></a> *ffi_value</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *arg</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-girffi.html#g-function-info-prep-invoker" title="g_function_info_prep_invoker ()">g_function_info_prep_invoker</a>        (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-girffi.html#g-function-invoker-new-for-address" title="g_function_invoker_new_for_address ()">g_function_invoker_new_for_address</a>  (<em class="parameter"><code><span class="type">gpointer</span> addr</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-girffi.html#g-function-invoker-destroy" title="g_function_invoker_destroy ()">g_function_invoker_destroy</a>          (<em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>);
+<span class="returnvalue">ffi_closure</span> *       <a class="link" href="gi-girffi.html#g-callable-info-prepare-closure" title="g_callable_info_prepare_closure ()">g_callable_info_prepare_closure</a>     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *callable_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">ffi_cif</span> *cif</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()"><span class="type">GIFFIClosureCallback</span></a> callback</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-girffi.html#g-callable-info-free-closure" title="g_callable_info_free_closure ()">g_callable_info_free_closure</a>        (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *callable_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">ffi_closure</span> *closure</code></em>);
+</pre>
+</div>
+<div class="refsect1">
+<a name="gi-girffi.description"></a><h2>Description</h2>
+<p>
+TODO
+</p>
+</div>
 <div class="refsect1">
-<a name="gi-girffi.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-girffi.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GIFFIClosureCallback"></a><h3>GIFFIClosureCallback ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                (*GIFFIClosureCallback)             (<em class="parameter"><code><span class="type">ffi_cif</span> *Param1</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> *Param2</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> **Param3</code></em>,
+                                                         <em class="parameter"><code><span class="type">void</span> *Param4</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<span class="c_punctuation">(</span><a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()">*GIFFIClosureCallback</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">ffi_type</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#gi-type-tag-get-ffi-type" title="gi_type_tag_get_ffi_type ()">gi_type_tag_get_ffi_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">ffi_type</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#g-type-info-get-ffi-type" title="g_type_info_get_ffi_type ()">g_type_info_get_ffi_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#gi-type-info-extract-ffi-return-value" title="gi_type_info_extract_ffi_return_value ()">gi_type_info_extract_ffi_return_value</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#g-function-info-prep-invoker" title="g_function_info_prep_invoker ()">g_function_info_prep_invoker</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#g-function-invoker-new-for-address" title="g_function_invoker_new_for_address ()">g_function_invoker_new_for_address</a> <span class="c_punctuation">()</span>
-</td>
+<td><p><span class="term"><em class="parameter"><code>Param1</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#g-function-invoker-destroy" title="g_function_invoker_destroy ()">g_function_invoker_destroy</a> <span class="c_punctuation">()</span>
-</td>
+<td><p><span class="term"><em class="parameter"><code>Param2</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">ffi_closure</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#g-callable-info-prepare-closure" title="g_callable_info_prepare_closure ()">g_callable_info_prepare_closure</a> <span class="c_punctuation">()</span>
-</td>
+<td><p><span class="term"><em class="parameter"><code>Param3</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-girffi.html#g-callable-info-free-closure" title="g_callable_info_free_closure ()">g_callable_info_free_closure</a> <span class="c_punctuation">()</span>
-</td>
+<td><p><span class="term"><em class="parameter"><code>Param4</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-girffi.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
+<hr>
+<div class="refsect2">
+<a name="GIFunctionInvoker"></a><h3>struct GIFunctionInvoker</h3>
+<pre class="programlisting">struct GIFunctionInvoker {
+  ffi_cif cif;
+  gpointer native_address;
+};
+</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="name">
-<col class="description">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="datatype_keyword">struct</td>
-<td class="function_name"><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker">GIFunctionInvoker</a></td>
+<td><p><span class="term"><span class="type">ffi_cif</span> <em class="structfield"><code><a name="GIFunctionInvoker.cif"></a>cif</code></em>;</span></p></td>
+<td>the cif</td>
 </tr>
 <tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="gi-girffi.html#GIFFIReturnValue" title="GIFFIReturnValue">GIFFIReturnValue</a></td>
+<td><p><span class="term"><span class="type">gpointer</span> <em class="structfield"><code><a name="GIFunctionInvoker.native-address"></a>native_address</code></em>;</span></p></td>
+<td>the native address</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect1">
-<a name="gi-girffi.description"></a><h2>Description</h2>
-<p>TODO</p>
+<hr>
+<div class="refsect2">
+<a name="GIFFIReturnValue"></a><h3>GIFFIReturnValue</h3>
+<pre class="programlisting">typedef GIArgument GIFFIReturnValue;
+</pre>
+<p>
+TODO
+</p>
 </div>
-<div class="refsect1">
-<a name="gi-girffi.functions_details"></a><h2>Functions</h2>
+<hr>
 <div class="refsect2">
-<a name="GIFFIClosureCallback"></a><h3>GIFFIClosureCallback ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*GIFFIClosureCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">ffi_cif</span> *Param1</code></em>,
-                         <em class="parameter"><code><span class="type">void</span> *Param2</code></em>,
-                         <em class="parameter"><code><span class="type">void</span> **Param3</code></em>,
-                         <em class="parameter"><code><span class="type">void</span> *Param4</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.2.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-type-tag-get-ffi-type"></a><h3>gi_type_tag_get_ffi_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">ffi_type</span> *          gi_type_tag_get_ffi_type            (<em class="parameter"><code><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> type_tag</code></em>,
+                                                         <em class="parameter"><code><span class="type">gboolean</span> is_pointer</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>Param1</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>Param2</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>type_tag</code></em> :</span></p></td>
+<td>A <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>Param3</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>is_pointer</code></em> :</span></p></td>
+<td>Whether or not this is a pointer type</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>Param4</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>A <span class="type">ffi_type</span> corresponding to the platform default C ABI for <em class="parameter"><code>tag</code></em> and <em class="parameter"><code>is_pointer</code></em>.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="gi-type-tag-get-ffi-type"></a><h3>gi_type_tag_get_ffi_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">ffi_type</span> *
-gi_type_tag_get_ffi_type (<em class="parameter"><code><a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a> type_tag</code></em>,
-                          <em class="parameter"><code><span class="type">gboolean</span> is_pointer</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.3.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-type-info-get-ffi-type"></a><h3>g_type_info_get_ffi_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">ffi_type</span> *          g_type_info_get_ffi_type            (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>type_tag</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gi-common-types.html#GITypeTag" title="enum GITypeTag"><span class="type">GITypeTag</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>A <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>is_pointer</p></td>
-<td class="parameter_description"><p>Whether or not this is a pointer type</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>A <span class="type">ffi_type</span> corresponding to the platform default C ABI for <em class="parameter"><code>info</code></em>.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.3.6"></a><h4>Returns</h4>
-<p> A <span class="type">ffi_type</span> corresponding to the platform default C ABI for <em class="parameter"><code>tag</code></em>
-and <em class="parameter"><code>is_pointer</code></em>
-.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-type-info-get-ffi-type"></a><h3>g_type_info_get_ffi_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">ffi_type</span> *
-g_type_info_get_ffi_type (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *info</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.4.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="gi-type-info-extract-ffi-return-value"></a><h3>gi_type_info_extract_ffi_return_value ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                gi_type_info_extract_ffi_return_value
+                                                        (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *return_info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFFIReturnValue" title="GIFFIReturnValue"><span class="type">GIFFIReturnValue</span></a> *ffi_value</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *arg</code></em>);</pre>
+<p>
+Extract the correct bits from an ffi_arg return value into
+GIArgument: https://bugzilla.gnome.org/show_bug.cgi?id=665152
+</p>
+<p>
+Also see <span class="citerefentry"><span class="refentrytitle">ffi_call</span>(3)</span>
+ - the storage requirements for return values are "special".
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.4.6"></a><h4>Returns</h4>
-<p> A <span class="type">ffi_type</span> corresponding to the platform default C ABI for <em class="parameter"><code>info</code></em>
-.</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="gi-type-info-extract-ffi-return-value"></a><h3>gi_type_info_extract_ffi_return_value ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-gi_type_info_extract_ffi_return_value (<em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *return_info</code></em>,
-                                       <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFFIReturnValue" title="GIFFIReturnValue"><span class="type">GIFFIReturnValue</span></a> *ffi_value</code></em>,
-                                       <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="GIArgument"><span class="type">GIArgument</span></a> *arg</code></em>);</pre>
-<p>Extract the correct bits from an ffi_arg return value into
-GIArgument: https://bugzilla.gnome.org/show_bug.cgi?id=665152</p>
-<p>Also see <span class="citerefentry"><span class="refentrytitle">ffi_call</span>(3)</span></p>
-<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>the storage requirements for return values are "special".</p></li></ul></div>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.5.7"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>return_info</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>return_info</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>ffi_value</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>ffi_value</code></em> :</span></p></td>
+<td>TODO</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>arg</p></td>
-<td class="parameter_description"><p> TODO. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
+<td><p><span class="term"><em class="parameter"><code>arg</code></em> :</span></p></td>
+<td>TODO. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-info-prep-invoker"></a><h3>g_function_info_prep_invoker ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_function_info_prep_invoker (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>,
-                              <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>,
-                              <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Initialize the caller-allocated <em class="parameter"><code>invoker</code></em>
- structure with a cache
+<a name="g-function-info-prep-invoker"></a><h3>g_function_info_prep_invoker ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_function_info_prep_invoker        (<em class="parameter"><code><a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Initialize the caller-allocated <em class="parameter"><code>invoker</code></em> structure with a cache
 of information needed to invoke the C function corresponding to
-<em class="parameter"><code>info</code></em>
- with the platform's default ABI.</p>
-<p>A primary intent of this function is that a dynamic structure allocated
+<em class="parameter"><code>info</code></em> with the platform's default ABI.
+</p>
+<p>
+A primary intent of this function is that a dynamic structure allocated
 by a language binding could contain a <a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> structure
-inside the binding's function mapping.</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.6.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+inside the binding's function mapping.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>A <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>invoker</p></td>
-<td class="parameter_description"><p>Output invoker structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>invoker</code></em> :</span></p></td>
+<td>Output invoker structure</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>A <span class="type">GError</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>A <span class="type">GError</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> otherwise with <em class="parameter"><code>error</code></em> set.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.6.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> otherwise with <em class="parameter"><code>error</code></em>
-set.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-invoker-new-for-address"></a><h3>g_function_invoker_new_for_address ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_function_invoker_new_for_address (<em class="parameter"><code><span class="type">gpointer</span> addr</code></em>,
-                                    <em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
-                                    <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>,
-                                    <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Initialize the caller-allocated <em class="parameter"><code>invoker</code></em>
- structure with a cache
+<a name="g-function-invoker-new-for-address"></a><h3>g_function_invoker_new_for_address ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_function_invoker_new_for_address  (<em class="parameter"><code><span class="type">gpointer</span> addr</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Initialize the caller-allocated <em class="parameter"><code>invoker</code></em> structure with a cache
 of information needed to invoke the C function corresponding to
-<em class="parameter"><code>info</code></em>
- with the platform's default ABI.</p>
-<p>A primary intent of this function is that a dynamic structure allocated
+<em class="parameter"><code>info</code></em> with the platform's default ABI.
+</p>
+<p>
+A primary intent of this function is that a dynamic structure allocated
 by a language binding could contain a <a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> structure
-inside the binding's function mapping.</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.7.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+inside the binding's function mapping.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>addr</p></td>
-<td class="parameter_description"><p>The address</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>addr</code></em> :</span></p></td>
+<td>The address</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
+<td>A <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>info</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>invoker</code></em> :</span></p></td>
+<td>Output invoker structure</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>invoker</p></td>
-<td class="parameter_description"><p>Output invoker structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>A <span class="type">GError</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>A <span class="type">GError</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> otherwise with <em class="parameter"><code>error</code></em> set.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.7.7"></a><h4>Returns</h4>
-<p> <code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> otherwise with <em class="parameter"><code>error</code></em>
-set.</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-function-invoker-destroy"></a><h3>g_function_invoker_destroy ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_function_invoker_destroy (<em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>);</pre>
-<p>Release all resources allocated for the internals of <em class="parameter"><code>invoker</code></em>
-; callers
+<a name="g-function-invoker-destroy"></a><h3>g_function_invoker_destroy ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_function_invoker_destroy          (<em class="parameter"><code><a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a> *invoker</code></em>);</pre>
+<p>
+Release all resources allocated for the internals of <em class="parameter"><code>invoker</code></em>; callers
 are responsible for freeing any resources allocated for the structure
-itself however.</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.8.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+itself however.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>invoker</p></td>
-<td class="parameter_description"><p>A <a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>invoker</code></em> :</span></p></td>
+<td>A <a class="link" href="gi-girffi.html#GIFunctionInvoker" title="struct GIFunctionInvoker"><span class="type">GIFunctionInvoker</span></a>
+</td>
 </tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-callable-info-prepare-closure"></a><h3>g_callable_info_prepare_closure ()</h3>
-<pre class="programlisting"><span class="returnvalue">ffi_closure</span> *
-g_callable_info_prepare_closure (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *callable_info</code></em>,
-                                 <em class="parameter"><code><span class="type">ffi_cif</span> *cif</code></em>,
-                                 <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()"><span class="type">GIFFIClosureCallback</span></a> callback</code></em>,
-                                 <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
-<p>Prepares a callback for ffi invocation.</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.9.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-prepare-closure"></a><h3>g_callable_info_prepare_closure ()</h3>
+<pre class="programlisting"><span class="returnvalue">ffi_closure</span> *       g_callable_info_prepare_closure     (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *callable_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">ffi_cif</span> *cif</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="gi-girffi.html#GIFFIClosureCallback" title="GIFFIClosureCallback ()"><span class="type">GIFFIClosureCallback</span></a> callback</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
+<p>
+Prepares a callback for ffi invocation.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>callable_info</p></td>
-<td class="parameter_description"><p>a callable info from a typelib</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>cif</p></td>
-<td class="parameter_description"><p>a ffi_cif structure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>callable_info</code></em> :</span></p></td>
+<td>a callable info from a typelib</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>callback</p></td>
-<td class="parameter_description"><p>the ffi callback</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>cif</code></em> :</span></p></td>
+<td>a ffi_cif structure</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>user_data</p></td>
-<td class="parameter_description"><p>data to be passed into the callback</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
+<td>the ffi callback</td>
 </tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.9.6"></a><h4>Returns</h4>
-<p> the ffi_closure or NULL on error. The return value
-should be freed by calling <a class="link" href="gi-girffi.html#g-callable-info-free-closure" title="g_callable_info_free_closure ()"><code class="function">g_callable_info_free_closure()</code></a>.</p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-callable-info-free-closure"></a><h3>g_callable_info_free_closure ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_callable_info_free_closure (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *callable_info</code></em>,
-                              <em class="parameter"><code><span class="type">ffi_closure</span> *closure</code></em>);</pre>
-<p>Frees a ffi_closure returned from <a class="link" href="gi-girffi.html#g-callable-info-prepare-closure" title="g_callable_info_prepare_closure ()"><code class="function">g_callable_info_prepare_closure()</code></a></p>
-<div class="refsect3">
-<a name="id-1.4.4.2.6.10.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
 <tr>
-<td class="parameter_name"><p>callable_info</p></td>
-<td class="parameter_description"><p>a callable info from a typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
+<td>data to be passed into the callback</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>closure</p></td>
-<td class="parameter_description"><p>ffi closure</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the ffi_closure or NULL on error. The return value
+should be freed by calling <a class="link" href="gi-girffi.html#g-callable-info-free-closure" title="g_callable_info_free_closure ()"><code class="function">g_callable_info_free_closure()</code></a>.</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-girffi.other_details"></a><h2>Types and Values</h2>
+<hr>
 <div class="refsect2">
-<a name="GIFunctionInvoker"></a><h3>struct GIFunctionInvoker</h3>
-<pre class="programlisting">struct GIFunctionInvoker {
-  ffi_cif cif;
-  gpointer native_address;
-};
-</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.4.2.7.2.5"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-callable-info-free-closure"></a><h3>g_callable_info_free_closure ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_callable_info_free_closure        (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *callable_info</code></em>,
+                                                         <em class="parameter"><code><span class="type">ffi_closure</span> *closure</code></em>);</pre>
+<p>
+Frees a ffi_closure returned from <a class="link" href="gi-girffi.html#g-callable-info-prepare-closure" title="g_callable_info_prepare_closure ()"><code class="function">g_callable_info_prepare_closure()</code></a>
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="struct_member_name"><p><span class="type">ffi_cif</span> <em class="structfield"><code><a name="GIFunctionInvoker.cif"></a>cif</code></em>;</p></td>
-<td class="struct_member_description"><p>the cif</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>callable_info</code></em> :</span></p></td>
+<td>a callable info from a typelib</td>
 </tr>
 <tr>
-<td class="struct_member_name"><p><span class="type">gpointer</span> <em class="structfield"><code><a name="GIFunctionInvoker.native-address"></a>native_address</code></em>;</p></td>
-<td class="struct_member_description"><p>the native address</p></td>
-<td class="struct_member_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
+<td>ffi closure</td>
 </tr>
 </tbody>
 </table></div>
 </div>
 </div>
-<hr>
-<div class="refsect2">
-<a name="GIFFIReturnValue"></a><h3>GIFFIReturnValue</h3>
-<pre class="programlisting">typedef GIArgument GIFFIReturnValue;
-</pre>
-<p>TODO</p>
-</div>
-</div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 61aef83..6768c7b 100644 (file)
@@ -2,26 +2,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>gitypelib: GObject Introspection Reference Manual</title>
+<title>gitypelib</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="gi-typelib.html" title="GITypelib">
 <link rel="prev" href="gi-typelib.html" title="GITypelib">
 <link rel="next" href="gi-GITypelib.html" title="GITypelib">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
-                  <a href="#gi-gitypelib.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gi-typelib.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-typelib.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-GITypelib.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="gi-typelib.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="gi-typelib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-GITypelib.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#gi-gitypelib.synopsis" class="shortcut">Top</a>
+                  Â | 
+                  <a href="#gi-gitypelib.description" class="shortcut">Description</a>
+</td></tr>
+</table>
 <div class="refentry">
 <a name="gi-gitypelib"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <h2><span class="refentrytitle"><a name="gi-gitypelib.top_of_page"></a>gitypelib</span></h2>
 <p>gitypelib â€” TODO</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
-<div class="refsect1">
-<a name="gi-gitypelib.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-gitypelib.html#g-typelib-new-from-memory" title="g_typelib_new_from_memory ()">g_typelib_new_from_memory</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-gitypelib.html#g-typelib-new-from-const-memory" title="g_typelib_new_from_const_memory ()">g_typelib_new_from_const_memory</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-gitypelib.html#g-typelib-new-from-mapped-file" title="g_typelib_new_from_mapped_file ()">g_typelib_new_from_mapped_file</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-gitypelib.html#g-typelib-free" title="g_typelib_free ()">g_typelib_free</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">gboolean</span>
-</td>
-<td class="function_name">
-<a class="link" href="gi-gitypelib.html#g-typelib-symbol" title="g_typelib_symbol ()">g_typelib_symbol</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">gchar</span> *
-</td>
-<td class="function_name">
-<a class="link" href="gi-gitypelib.html#g-typelib-get-namespace" title="g_typelib_get_namespace ()">g_typelib_get_namespace</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="gi-gitypelib.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib">GITypelib</a></td>
-</tr></tbody>
-</table></div>
+<div class="refsynopsisdiv">
+<a name="gi-gitypelib.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         <a class="link" href="gi-gitypelib.html#g-typelib-new-from-memory" title="g_typelib_new_from_memory ()">g_typelib_new_from_memory</a>           (<em class="parameter"><code><span class="type">guint8</span> *memory</code></em>,
+                                                         <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         <a class="link" href="gi-gitypelib.html#g-typelib-new-from-const-memory" title="g_typelib_new_from_const_memory ()">g_typelib_new_from_const_memory</a>     (<em class="parameter"><code>const <span class="type">guint8</span> *memory</code></em>,
+                                                         <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         <a class="link" href="gi-gitypelib.html#g-typelib-new-from-mapped-file" title="g_typelib_new_from_mapped_file ()">g_typelib_new_from_mapped_file</a>      (<em class="parameter"><code><span class="type">GMappedFile</span> *mfile</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="gi-gitypelib.html#g-typelib-free" title="g_typelib_free ()">g_typelib_free</a>                      (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>);
+<span class="returnvalue">gboolean</span>            <a class="link" href="gi-gitypelib.html#g-typelib-symbol" title="g_typelib_symbol ()">g_typelib_symbol</a>                    (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *symbol_name</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> *symbol</code></em>);
+const <span class="returnvalue">gchar</span> *       <a class="link" href="gi-gitypelib.html#g-typelib-get-namespace" title="g_typelib_get_namespace ()">g_typelib_get_namespace</a>             (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>);
+                    <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib">GITypelib</a>;
+</pre>
 </div>
 <div class="refsect1">
 <a name="gi-gitypelib.description"></a><h2>Description</h2>
-<p>TODO</p>
+<p>
+TODO
+</p>
 </div>
 <div class="refsect1">
-<a name="gi-gitypelib.functions_details"></a><h2>Functions</h2>
+<a name="gi-gitypelib.details"></a><h2>Details</h2>
 <div class="refsect2">
-<a name="g-typelib-new-from-memory"></a><h3>g_typelib_new_from_memory ()</h3>
-<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-g_typelib_new_from_memory (<em class="parameter"><code><span class="type">guint8</span> *memory</code></em>,
-                           <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
-                           <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Creates a new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> from a memory location.  The memory block
-pointed to by <em class="parameter"><code>typelib</code></em>
- will be automatically <code class="function">g_free()</code>d when the
-repository is destroyed.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.2.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-typelib-new-from-memory"></a><h3>g_typelib_new_from_memory ()</h3>
+<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         g_typelib_new_from_memory           (<em class="parameter"><code><span class="type">guint8</span> *memory</code></em>,
+                                                         <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Creates a new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> from a memory location.  The memory block
+pointed to by <em class="parameter"><code>typelib</code></em> will be automatically <code class="function">g_free()</code>d when the
+repository is destroyed.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>memory</p></td>
-<td class="parameter_description"><p>address of memory chunk containing the typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>memory</code></em> :</span></p></td>
+<td>address of memory chunk containing the typelib</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>len</p></td>
-<td class="parameter_description"><p>length of memory chunk containing the typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
+<td>length of memory chunk containing the typelib</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <span class="type">GError</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>a <span class="type">GError</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.2.7"></a><h4>Returns</h4>
-<p> the new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-typelib-new-from-const-memory"></a><h3>g_typelib_new_from_const_memory ()</h3>
-<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-g_typelib_new_from_const_memory (<em class="parameter"><code>const <span class="type">guint8</span> *memory</code></em>,
-                                 <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
-                                 <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Creates a new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> from a memory location.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.3.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-typelib-new-from-const-memory"></a><h3>g_typelib_new_from_const_memory ()</h3>
+<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         g_typelib_new_from_const_memory     (<em class="parameter"><code>const <span class="type">guint8</span> *memory</code></em>,
+                                                         <em class="parameter"><code><span class="type">gsize</span> len</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Creates a new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> from a memory location.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>memory</p></td>
-<td class="parameter_description"><p>address of memory chunk containing the typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>memory</code></em> :</span></p></td>
+<td>address of memory chunk containing the typelib</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>len</p></td>
-<td class="parameter_description"><p>length of memory chunk containing the typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
+<td>length of memory chunk containing the typelib</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>A <span class="type">GError</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>A <span class="type">GError</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.3.7"></a><h4>Returns</h4>
-<p> the new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-typelib-new-from-mapped-file"></a><h3>g_typelib_new_from_mapped_file ()</h3>
-<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
-g_typelib_new_from_mapped_file (<em class="parameter"><code><span class="type">GMappedFile</span> *mfile</code></em>,
-                                <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
-<p>Creates a new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> from a <span class="type">GMappedFile</span>.</p>
-<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.4.6"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-typelib-new-from-mapped-file"></a><h3>g_typelib_new_from_mapped_file ()</h3>
+<pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *         g_typelib_new_from_mapped_file      (<em class="parameter"><code><span class="type">GMappedFile</span> *mfile</code></em>,
+                                                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
+<p>
+Creates a new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> from a <span class="type">GMappedFile</span>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>mfile</p></td>
-<td class="parameter_description"><p>a <span class="type">GMappedFile</span>, that will be free'd when the repository is destroyed</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>mfile</code></em> :</span></p></td>
+<td>a <span class="type">GMappedFile</span>, that will be free'd when the repository is destroyed</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>a <span class="type">GError</span>
+</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <span class="type">GError</span></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>
+</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.4.7"></a><h4>Returns</h4>
-<p> the new <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a></p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-typelib-free"></a><h3>g_typelib_free ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-g_typelib_free (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>);</pre>
-<p>Free a <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.5.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-typelib-free"></a><h3>g_typelib_free ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                g_typelib_free                      (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>);</pre>
+<p>
+Free a <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody><tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>a <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>a <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>
+</td>
 </tr></tbody>
 </table></div>
 </div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-typelib-symbol"></a><h3>g_typelib_symbol ()</h3>
-<pre class="programlisting"><span class="returnvalue">gboolean</span>
-g_typelib_symbol (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
-                  <em class="parameter"><code>const <span class="type">gchar</span> *symbol_name</code></em>,
-                  <em class="parameter"><code><span class="type">gpointer</span> *symbol</code></em>);</pre>
-<p>Loads a symbol from <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>.</p>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.6.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-typelib-symbol"></a><h3>g_typelib_symbol ()</h3>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>            g_typelib_symbol                    (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">gchar</span> *symbol_name</code></em>,
+                                                         <em class="parameter"><code><span class="type">gpointer</span> *symbol</code></em>);</pre>
+<p>
+Loads a symbol from <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a>.
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
 <tbody>
 <tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>the typelib</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>the typelib</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>symbol_name</code></em> :</span></p></td>
+<td>name of symbol to be loaded</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>symbol_name</p></td>
-<td class="parameter_description"><p>name of symbol to be loaded</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><em class="parameter"><code>symbol</code></em> :</span></p></td>
+<td>returns a pointer to the symbol value</td>
 </tr>
 <tr>
-<td class="parameter_name"><p>symbol</p></td>
-<td class="parameter_description"><p>returns a pointer to the symbol value</p></td>
-<td class="parameter_annotations"> </td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<span class="type">TRUE</span> on success</td>
 </tr>
 </tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.6.6"></a><h4>Returns</h4>
-<p> <span class="type">TRUE</span> on success</p>
-</div>
-</div>
 <hr>
 <div class="refsect2">
-<a name="g-typelib-get-namespace"></a><h3>g_typelib_get_namespace ()</h3>
-<pre class="programlisting">const <span class="returnvalue">gchar</span> *
-g_typelib_get_namespace (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>);</pre>
-<p>TODO</p>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.7.5"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
+<a name="g-typelib-get-namespace"></a><h3>g_typelib_get_namespace ()</h3>
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *       g_typelib_get_namespace             (<em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>);</pre>
+<p>
+TODO
+</p>
+<div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
+<col align="left" valign="top">
+<col>
 </colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>typelib</p></td>
-<td class="parameter_description"><p>TODO</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>typelib</code></em> :</span></p></td>
+<td>TODO</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TODO</td>
+</tr>
+</tbody>
 </table></div>
 </div>
-<div class="refsect3">
-<a name="id-1.4.3.2.6.7.6"></a><h4>Returns</h4>
-<p> TODO</p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="gi-gitypelib.other_details"></a><h2>Types and Values</h2>
+<hr>
 <div class="refsect2">
 <a name="GITypelib"></a><h3>GITypelib</h3>
 <pre class="programlisting">typedef struct {
 } GITypelib;
 </pre>
-<p>TODO</p>
+<p>
+TODO
+</p>
 </div>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 623a885..d1284de 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Writing introspected libraries: GObject Introspection Reference Manual</title>
+<title>Writing introspected libraries</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="overview.html" title="Part I. GObject-Introspection Overview">
 <link rel="prev" href="gi-building.html" title="Compiling the GObject Introspection package">
 <link rel="next" href="gi.html" title="Part II. API Reference">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="overview.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-building.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="gi-building.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="overview.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="gi-programming"></a><div class="titlepage"></div>
@@ -26,7 +26,7 @@
 <h2><span class="refentrytitle">Writing introspected libraries</span></h2>
 <p>Writing introspected libraries â€” General considerations when writing introspected libraries</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsect1">
 <a name="id-1.3.4.3"></a><h2>TODO</h2>
@@ -36,6 +36,7 @@
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 7bc0937..0f9c0ee 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Struct hierarchy: GObject Introspection Reference Manual</title>
+<title>Struct hierarchy</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="ch01.html" title="GIRepository">
 <link rel="prev" href="GIRepository.html" title="GIRepository">
 <link rel="next" href="gi-common-types.html" title="common types">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="GIRepository.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-common-types.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="GIRepository.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-common-types.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="refentry">
 <a name="gi-struct-hierarchy"></a><div class="titlepage"></div>
@@ -26,7 +26,7 @@
 <h2><span class="refentrytitle"><a name="gi-struct-hierarchy.top_of_page"></a>Struct hierarchy</span></h2>
 <p>Struct hierarchy â€” Struct hierarchy description for GIBaseInfo and all its sub structs</p>
 </td>
-<td class="gallery_image" valign="top" align="right"></td>
+<td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsynopsisdiv">
 <a name="gi-struct-hierarchy.synopsis"></a><h2>Synopsis</h2>
@@ -51,6 +51,7 @@
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index df5cd3b..69ab462 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GITypelib: GObject Introspection Reference Manual</title>
+<title>GITypelib</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="gi.html" title="Part II. API Reference">
 <link rel="prev" href="gi-GIValueInfo.html" title="GIValueInfo">
 <link rel="next" href="gi-gitypelib.html" title="gitypelib">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="gi.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gi-GIValueInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-gitypelib.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="gi-GIValueInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="gi.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-gitypelib.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
@@ -32,6 +32,7 @@
 </dl></div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 5d3c2b8..398a6c1 100644 (file)
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
 <book xmlns="http://www.devhelp.net/book" title="GObject Introspection Reference Manual" link="index.html" author="" name="gi" version="2" language="c">
   <chapters>
     <sub name="GObject-Introspection Overview" link="overview.html">
     <sub name="Annotation Glossary" link="annotation-glossary.html"/>
   </chapters>
   <functions>
-    <keyword type="function" name="g_irepository_get_default ()" link="GIRepository.html#g-irepository-get-default"/>
-    <keyword type="function" name="g_irepository_get_dependencies ()" link="GIRepository.html#g-irepository-get-dependencies"/>
-    <keyword type="function" name="g_irepository_get_immediate_dependencies ()" link="GIRepository.html#g-irepository-get-immediate-dependencies" since="1.44"/>
-    <keyword type="function" name="g_irepository_get_loaded_namespaces ()" link="GIRepository.html#g-irepository-get-loaded-namespaces"/>
-    <keyword type="function" name="g_irepository_get_n_infos ()" link="GIRepository.html#g-irepository-get-n-infos"/>
-    <keyword type="function" name="g_irepository_get_info ()" link="GIRepository.html#g-irepository-get-info"/>
-    <keyword type="function" name="g_irepository_get_option_group ()" link="GIRepository.html#g-irepository-get-option-group"/>
-    <keyword type="function" name="g_irepository_enumerate_versions ()" link="GIRepository.html#g-irepository-enumerate-versions"/>
-    <keyword type="function" name="g_irepository_prepend_library_path ()" link="GIRepository.html#g-irepository-prepend-library-path" since="1.35.8"/>
-    <keyword type="function" name="g_irepository_prepend_search_path ()" link="GIRepository.html#g-irepository-prepend-search-path"/>
-    <keyword type="function" name="g_irepository_get_search_path ()" link="GIRepository.html#g-irepository-get-search-path"/>
-    <keyword type="function" name="g_irepository_load_typelib ()" link="GIRepository.html#g-irepository-load-typelib"/>
-    <keyword type="function" name="g_irepository_get_typelib_path ()" link="GIRepository.html#g-irepository-get-typelib-path"/>
-    <keyword type="function" name="g_irepository_is_registered ()" link="GIRepository.html#g-irepository-is-registered"/>
-    <keyword type="function" name="g_irepository_require ()" link="GIRepository.html#g-irepository-require"/>
-    <keyword type="function" name="g_irepository_require_private ()" link="GIRepository.html#g-irepository-require-private"/>
-    <keyword type="function" name="g_irepository_get_c_prefix ()" link="GIRepository.html#g-irepository-get-c-prefix"/>
-    <keyword type="function" name="g_irepository_get_shared_library ()" link="GIRepository.html#g-irepository-get-shared-library"/>
-    <keyword type="function" name="g_irepository_get_version ()" link="GIRepository.html#g-irepository-get-version"/>
-    <keyword type="function" name="g_irepository_find_by_gtype ()" link="GIRepository.html#g-irepository-find-by-gtype"/>
-    <keyword type="function" name="g_irepository_find_by_error_domain ()" link="GIRepository.html#g-irepository-find-by-error-domain" since="1.29.17"/>
-    <keyword type="function" name="g_irepository_find_by_name ()" link="GIRepository.html#g-irepository-find-by-name"/>
-    <keyword type="function" name="g_irepository_dump ()" link="GIRepository.html#g-irepository-dump"/>
-    <keyword type="function" name="gi_cclosure_marshal_generic ()" link="GIRepository.html#gi-cclosure-marshal-generic"/>
-    <keyword type="macro" name="G_IREPOSITORY_ERROR" link="GIRepository.html#G-IREPOSITORY-ERROR:CAPS"/>
     <keyword type="struct" name="struct GIRepository" link="GIRepository.html#GIRepository-struct"/>
     <keyword type="enum" name="enum GIRepositoryLoadFlags" link="GIRepository.html#GIRepositoryLoadFlags"/>
+    <keyword type="function" name="g_irepository_get_default ()" link="GIRepository.html#g-irepository-get-default"/>
+    <keyword type="function" name="g_irepository_get_dependencies ()" link="GIRepository.html#g-irepository-get-dependencies"/>
+    <keyword type="function" name="g_irepository_get_immediate_dependencies ()" link="GIRepository.html#g-irepository-get-immediate-dependencies" since="1.44"/>
+    <keyword type="function" name="g_irepository_get_loaded_namespaces ()" link="GIRepository.html#g-irepository-get-loaded-namespaces"/>
+    <keyword type="function" name="g_irepository_get_n_infos ()" link="GIRepository.html#g-irepository-get-n-infos"/>
+    <keyword type="function" name="g_irepository_get_info ()" link="GIRepository.html#g-irepository-get-info"/>
+    <keyword type="function" name="g_irepository_get_option_group ()" link="GIRepository.html#g-irepository-get-option-group"/>
+    <keyword type="function" name="g_irepository_enumerate_versions ()" link="GIRepository.html#g-irepository-enumerate-versions"/>
+    <keyword type="function" name="g_irepository_prepend_library_path ()" link="GIRepository.html#g-irepository-prepend-library-path" since="1.35.8"/>
+    <keyword type="function" name="g_irepository_prepend_search_path ()" link="GIRepository.html#g-irepository-prepend-search-path"/>
+    <keyword type="function" name="g_irepository_get_search_path ()" link="GIRepository.html#g-irepository-get-search-path"/>
+    <keyword type="function" name="g_irepository_load_typelib ()" link="GIRepository.html#g-irepository-load-typelib"/>
+    <keyword type="function" name="g_irepository_get_typelib_path ()" link="GIRepository.html#g-irepository-get-typelib-path"/>
+    <keyword type="function" name="g_irepository_is_registered ()" link="GIRepository.html#g-irepository-is-registered"/>
+    <keyword type="function" name="g_irepository_require ()" link="GIRepository.html#g-irepository-require"/>
+    <keyword type="function" name="g_irepository_require_private ()" link="GIRepository.html#g-irepository-require-private"/>
+    <keyword type="function" name="g_irepository_get_c_prefix ()" link="GIRepository.html#g-irepository-get-c-prefix"/>
+    <keyword type="function" name="g_irepository_get_shared_library ()" link="GIRepository.html#g-irepository-get-shared-library"/>
+    <keyword type="function" name="g_irepository_get_version ()" link="GIRepository.html#g-irepository-get-version"/>
+    <keyword type="function" name="g_irepository_find_by_gtype ()" link="GIRepository.html#g-irepository-find-by-gtype"/>
+    <keyword type="function" name="g_irepository_find_by_error_domain ()" link="GIRepository.html#g-irepository-find-by-error-domain" since="1.29.17"/>
+    <keyword type="function" name="g_irepository_find_by_name ()" link="GIRepository.html#g-irepository-find-by-name"/>
+    <keyword type="function" name="g_irepository_dump ()" link="GIRepository.html#g-irepository-dump"/>
+    <keyword type="function" name="gi_cclosure_marshal_generic ()" link="GIRepository.html#gi-cclosure-marshal-generic"/>
+    <keyword type="macro" name="G_IREPOSITORY_ERROR" link="GIRepository.html#G-IREPOSITORY-ERROR:CAPS"/>
     <keyword type="enum" name="enum GIRepositoryError" link="GIRepository.html#GIRepositoryError"/>
-    <keyword type="macro" name="GI_TYPE_TAG_N_TYPES" link="gi-common-types.html#GI-TYPE-TAG-N-TYPES:CAPS"/>
-    <keyword type="macro" name="G_TYPE_TAG_IS_BASIC()" link="gi-common-types.html#G-TYPE-TAG-IS-BASIC:CAPS"/>
-    <keyword type="union" name="GIArgument" link="gi-common-types.html#GIArgument"/>
+    <keyword type="union" name="union GIArgument" link="gi-common-types.html#GIArgument"/>
     <keyword type="struct" name="GIUnresolvedInfo" link="gi-common-types.html#GIUnresolvedInfo"/>
     <keyword type="enum" name="enum GITypeTag" link="gi-common-types.html#GITypeTag"/>
     <keyword type="enum" name="enum GIArrayType" link="gi-common-types.html#GIArrayType"/>
-    <keyword type="function" name="g_info_new ()" link="gi-GIBaseInfo.html#g-info-new"/>
-    <keyword type="function" name="g_base_info_ref ()" link="gi-GIBaseInfo.html#g-base-info-ref"/>
-    <keyword type="function" name="g_base_info_unref ()" link="gi-GIBaseInfo.html#g-base-info-unref"/>
-    <keyword type="function" name="g_base_info_equal ()" link="gi-GIBaseInfo.html#g-base-info-equal"/>
-    <keyword type="function" name="g_base_info_get_type ()" link="gi-GIBaseInfo.html#g-base-info-get-type"/>
-    <keyword type="function" name="g_base_info_get_typelib ()" link="gi-GIBaseInfo.html#g-base-info-get-typelib"/>
-    <keyword type="function" name="g_base_info_get_namespace ()" link="gi-GIBaseInfo.html#g-base-info-get-namespace"/>
-    <keyword type="function" name="g_base_info_get_name ()" link="gi-GIBaseInfo.html#g-base-info-get-name"/>
-    <keyword type="function" name="g_base_info_get_attribute ()" link="gi-GIBaseInfo.html#g-base-info-get-attribute"/>
-    <keyword type="function" name="g_base_info_iterate_attributes ()" link="gi-GIBaseInfo.html#g-base-info-iterate-attributes"/>
-    <keyword type="function" name="g_base_info_get_container ()" link="gi-GIBaseInfo.html#g-base-info-get-container"/>
-    <keyword type="function" name="g_base_info_is_deprecated ()" link="gi-GIBaseInfo.html#g-base-info-is-deprecated"/>
+    <keyword type="macro" name="GI_TYPE_TAG_N_TYPES" link="gi-common-types.html#GI-TYPE-TAG-N-TYPES:CAPS"/>
+    <keyword type="macro" name="G_TYPE_TAG_IS_BASIC()" link="gi-common-types.html#G-TYPE-TAG-IS-BASIC:CAPS"/>
     <keyword type="enum" name="enum GIInfoType" link="gi-GIBaseInfo.html#GIInfoType"/>
     <keyword type="struct" name="GIAttributeIter" link="gi-GIBaseInfo.html#GIAttributeIter"/>
+    <keyword type="function" name="g_info_new ()" link="gi-GIBaseInfo.html#g-info-new"/>
+    <keyword type="function" name="g_base_info_ref ()" link="gi-GIBaseInfo.html#g-base-info-ref"/>
+    <keyword type="function" name="g_base_info_unref ()" link="gi-GIBaseInfo.html#g-base-info-unref"/>
+    <keyword type="function" name="g_base_info_equal ()" link="gi-GIBaseInfo.html#g-base-info-equal"/>
+    <keyword type="function" name="g_base_info_get_type ()" link="gi-GIBaseInfo.html#g-base-info-get-type"/>
+    <keyword type="function" name="g_base_info_get_typelib ()" link="gi-GIBaseInfo.html#g-base-info-get-typelib"/>
+    <keyword type="function" name="g_base_info_get_namespace ()" link="gi-GIBaseInfo.html#g-base-info-get-namespace"/>
+    <keyword type="function" name="g_base_info_get_name ()" link="gi-GIBaseInfo.html#g-base-info-get-name"/>
+    <keyword type="function" name="g_base_info_get_attribute ()" link="gi-GIBaseInfo.html#g-base-info-get-attribute"/>
+    <keyword type="function" name="g_base_info_iterate_attributes ()" link="gi-GIBaseInfo.html#g-base-info-iterate-attributes"/>
+    <keyword type="function" name="g_base_info_get_container ()" link="gi-GIBaseInfo.html#g-base-info-get-container"/>
+    <keyword type="function" name="g_base_info_is_deprecated ()" link="gi-GIBaseInfo.html#g-base-info-is-deprecated"/>
     <keyword type="macro" name="GI_IS_CALLABLE_INFO()" link="gi-GICallableInfo.html#GI-IS-CALLABLE-INFO:CAPS"/>
-    <keyword type="function" name="g_callable_info_can_throw_gerror ()" link="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" since="1.34"/>
-    <keyword type="function" name="g_callable_info_get_n_args ()" link="gi-GICallableInfo.html#g-callable-info-get-n-args"/>
-    <keyword type="function" name="g_callable_info_get_arg ()" link="gi-GICallableInfo.html#g-callable-info-get-arg"/>
-    <keyword type="function" name="g_callable_info_get_caller_owns ()" link="gi-GICallableInfo.html#g-callable-info-get-caller-owns"/>
-    <keyword type="function" name="g_callable_info_get_return_attribute ()" link="gi-GICallableInfo.html#g-callable-info-get-return-attribute"/>
-    <keyword type="function" name="g_callable_info_get_return_type ()" link="gi-GICallableInfo.html#g-callable-info-get-return-type"/>
-    <keyword type="function" name="g_callable_info_invoke ()" link="gi-GICallableInfo.html#g-callable-info-invoke"/>
-    <keyword type="function" name="g_callable_info_is_method ()" link="gi-GICallableInfo.html#g-callable-info-is-method" since="1.34"/>
-    <keyword type="function" name="g_callable_info_iterate_return_attributes ()" link="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes"/>
-    <keyword type="function" name="g_callable_info_load_arg ()" link="gi-GICallableInfo.html#g-callable-info-load-arg"/>
-    <keyword type="function" name="g_callable_info_load_return_type ()" link="gi-GICallableInfo.html#g-callable-info-load-return-type"/>
-    <keyword type="function" name="g_callable_info_may_return_null ()" link="gi-GICallableInfo.html#g-callable-info-may-return-null"/>
-    <keyword type="function" name="g_callable_info_skip_return ()" link="gi-GICallableInfo.html#g-callable-info-skip-return"/>
     <keyword type="typedef" name="GICallableInfo" link="gi-GICallableInfo.html#GICallableInfo"/>
+    <keyword type="function" name="g_callable_info_can_throw_gerror ()" link="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" since="1.34"/>
+    <keyword type="function" name="g_callable_info_get_n_args ()" link="gi-GICallableInfo.html#g-callable-info-get-n-args"/>
+    <keyword type="function" name="g_callable_info_get_arg ()" link="gi-GICallableInfo.html#g-callable-info-get-arg"/>
+    <keyword type="function" name="g_callable_info_get_caller_owns ()" link="gi-GICallableInfo.html#g-callable-info-get-caller-owns"/>
+    <keyword type="function" name="g_callable_info_get_return_attribute ()" link="gi-GICallableInfo.html#g-callable-info-get-return-attribute"/>
+    <keyword type="function" name="g_callable_info_get_return_type ()" link="gi-GICallableInfo.html#g-callable-info-get-return-type"/>
+    <keyword type="function" name="g_callable_info_invoke ()" link="gi-GICallableInfo.html#g-callable-info-invoke"/>
+    <keyword type="function" name="g_callable_info_is_method ()" link="gi-GICallableInfo.html#g-callable-info-is-method" since="1.34"/>
+    <keyword type="function" name="g_callable_info_iterate_return_attributes ()" link="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes"/>
+    <keyword type="function" name="g_callable_info_load_arg ()" link="gi-GICallableInfo.html#g-callable-info-load-arg"/>
+    <keyword type="function" name="g_callable_info_load_return_type ()" link="gi-GICallableInfo.html#g-callable-info-load-return-type"/>
+    <keyword type="function" name="g_callable_info_may_return_null ()" link="gi-GICallableInfo.html#g-callable-info-may-return-null"/>
+    <keyword type="function" name="g_callable_info_skip_return ()" link="gi-GICallableInfo.html#g-callable-info-skip-return"/>
     <keyword type="macro" name="GI_IS_FUNCTION_INFO()" link="gi-GIFunctionInfo.html#GI-IS-FUNCTION-INFO:CAPS"/>
-    <keyword type="function" name="g_function_info_get_flags ()" link="gi-GIFunctionInfo.html#g-function-info-get-flags"/>
-    <keyword type="function" name="g_function_info_get_property ()" link="gi-GIFunctionInfo.html#g-function-info-get-property"/>
-    <keyword type="function" name="g_function_info_get_symbol ()" link="gi-GIFunctionInfo.html#g-function-info-get-symbol"/>
-    <keyword type="function" name="g_function_info_get_vfunc ()" link="gi-GIFunctionInfo.html#g-function-info-get-vfunc"/>
-    <keyword type="function" name="g_function_info_invoke ()" link="gi-GIFunctionInfo.html#g-function-info-invoke"/>
-    <keyword type="macro" name="G_INVOKE_ERROR" link="gi-GIFunctionInfo.html#G-INVOKE-ERROR:CAPS"/>
-    <keyword type="function" name="g_invoke_error_quark ()" link="gi-GIFunctionInfo.html#g-invoke-error-quark"/>
     <keyword type="typedef" name="GIFunctionInfo" link="gi-GIFunctionInfo.html#GIFunctionInfo"/>
     <keyword type="enum" name="enum GIFunctionInfoFlags" link="gi-GIFunctionInfo.html#GIFunctionInfoFlags"/>
+    <keyword type="function" name="g_function_info_get_flags ()" link="gi-GIFunctionInfo.html#g-function-info-get-flags"/>
+    <keyword type="function" name="g_function_info_get_property ()" link="gi-GIFunctionInfo.html#g-function-info-get-property"/>
+    <keyword type="function" name="g_function_info_get_symbol ()" link="gi-GIFunctionInfo.html#g-function-info-get-symbol"/>
+    <keyword type="function" name="g_function_info_get_vfunc ()" link="gi-GIFunctionInfo.html#g-function-info-get-vfunc"/>
+    <keyword type="function" name="g_function_info_invoke ()" link="gi-GIFunctionInfo.html#g-function-info-invoke"/>
+    <keyword type="macro" name="G_INVOKE_ERROR" link="gi-GIFunctionInfo.html#G-INVOKE-ERROR:CAPS"/>
+    <keyword type="function" name="g_invoke_error_quark ()" link="gi-GIFunctionInfo.html#g-invoke-error-quark"/>
     <keyword type="enum" name="enum GInvokeError" link="gi-GIFunctionInfo.html#GInvokeError"/>
     <keyword type="typedef" name="GICallbackInfo" link="gi-GICallbackInfo.html#GICallbackInfo"/>
     <keyword type="macro" name="GI_IS_SIGNAL_INFO()" link="gi-GISignalInfo.html#GI-IS-SIGNAL-INFO:CAPS"/>
-    <keyword type="function" name="g_signal_info_get_flags ()" link="gi-GISignalInfo.html#g-signal-info-get-flags"/>
-    <keyword type="function" name="g_signal_info_get_class_closure ()" link="gi-GISignalInfo.html#g-signal-info-get-class-closure"/>
-    <keyword type="function" name="g_signal_info_true_stops_emit ()" link="gi-GISignalInfo.html#g-signal-info-true-stops-emit"/>
     <keyword type="typedef" name="GISignalInfo" link="gi-GISignalInfo.html#GISignalInfo"/>
-    <keyword type="function" name="g_vfunc_info_get_flags ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-flags"/>
-    <keyword type="function" name="g_vfunc_info_get_offset ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-offset"/>
-    <keyword type="function" name="g_vfunc_info_get_signal ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-signal"/>
-    <keyword type="function" name="g_vfunc_info_get_invoker ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker"/>
-    <keyword type="function" name="g_vfunc_info_get_address ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-address"/>
-    <keyword type="function" name="g_vfunc_info_invoke ()" link="gi-GIVFuncInfo.html#g-vfunc-info-invoke"/>
+    <keyword type="function" name="g_signal_info_get_flags ()" link="gi-GISignalInfo.html#g-signal-info-get-flags"/>
+    <keyword type="function" name="g_signal_info_get_class_closure ()" link="gi-GISignalInfo.html#g-signal-info-get-class-closure"/>
+    <keyword type="function" name="g_signal_info_true_stops_emit ()" link="gi-GISignalInfo.html#g-signal-info-true-stops-emit"/>
     <keyword type="typedef" name="GIVFuncInfo" link="gi-GIVFuncInfo.html#GIVFuncInfo"/>
     <keyword type="enum" name="enum GIVFuncInfoFlags" link="gi-GIVFuncInfo.html#GIVFuncInfoFlags"/>
+    <keyword type="function" name="g_vfunc_info_get_flags ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-flags"/>
+    <keyword type="function" name="g_vfunc_info_get_offset ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-offset"/>
+    <keyword type="function" name="g_vfunc_info_get_signal ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-signal"/>
+    <keyword type="function" name="g_vfunc_info_get_invoker ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-invoker"/>
+    <keyword type="function" name="g_vfunc_info_get_address ()" link="gi-GIVFuncInfo.html#g-vfunc-info-get-address"/>
+    <keyword type="function" name="g_vfunc_info_invoke ()" link="gi-GIVFuncInfo.html#g-vfunc-info-invoke"/>
     <keyword type="macro" name="GI_IS_REGISTERED_TYPE_INFO()" link="gi-GIRegisteredTypeInfo.html#GI-IS-REGISTERED-TYPE-INFO:CAPS"/>
-    <keyword type="function" name="g_registered_type_info_get_type_name ()" link="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name"/>
-    <keyword type="function" name="g_registered_type_info_get_type_init ()" link="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init"/>
-    <keyword type="function" name="g_registered_type_info_get_g_type ()" link="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type"/>
     <keyword type="typedef" name="GIRegisteredTypeInfo" link="gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo"/>
+    <keyword type="function" name="g_registered_type_info_get_type_name ()" link="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name"/>
+    <keyword type="function" name="g_registered_type_info_get_type_init ()" link="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init"/>
+    <keyword type="function" name="g_registered_type_info_get_g_type ()" link="gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type"/>
     <keyword type="macro" name="GI_IS_ENUM_INFO()" link="gi-GIEnumInfo.html#GI-IS-ENUM-INFO:CAPS"/>
     <keyword type="macro" name="GI_IS_VALUE_INFO()" link="gi-GIEnumInfo.html#GI-IS-VALUE-INFO:CAPS"/>
-    <keyword type="function" name="g_enum_info_get_n_values ()" link="gi-GIEnumInfo.html#g-enum-info-get-n-values"/>
-    <keyword type="function" name="g_enum_info_get_value ()" link="gi-GIEnumInfo.html#g-enum-info-get-value"/>
-    <keyword type="function" name="g_enum_info_get_n_methods ()" link="gi-GIEnumInfo.html#g-enum-info-get-n-methods" since="1.29.17"/>
-    <keyword type="function" name="g_enum_info_get_method ()" link="gi-GIEnumInfo.html#g-enum-info-get-method" since="1.29.17"/>
-    <keyword type="function" name="g_enum_info_get_storage_type ()" link="gi-GIEnumInfo.html#g-enum-info-get-storage-type"/>
-    <keyword type="function" name="g_enum_info_get_error_domain ()" link="gi-GIEnumInfo.html#g-enum-info-get-error-domain" since="1.29.17"/>
-    <keyword type="function" name="g_value_info_get_value ()" link="gi-GIEnumInfo.html#g-value-info-get-value"/>
     <keyword type="typedef" name="GIEnumInfo" link="gi-GIEnumInfo.html#GIEnumInfo"/>
+    <keyword type="function" name="g_enum_info_get_n_values ()" link="gi-GIEnumInfo.html#g-enum-info-get-n-values"/>
+    <keyword type="function" name="g_enum_info_get_value ()" link="gi-GIEnumInfo.html#g-enum-info-get-value"/>
+    <keyword type="function" name="g_enum_info_get_n_methods ()" link="gi-GIEnumInfo.html#g-enum-info-get-n-methods" since="1.29.17"/>
+    <keyword type="function" name="g_enum_info_get_method ()" link="gi-GIEnumInfo.html#g-enum-info-get-method" since="1.29.17"/>
+    <keyword type="function" name="g_enum_info_get_storage_type ()" link="gi-GIEnumInfo.html#g-enum-info-get-storage-type"/>
+    <keyword type="function" name="g_enum_info_get_error_domain ()" link="gi-GIEnumInfo.html#g-enum-info-get-error-domain" since="1.29.17"/>
+    <keyword type="function" name="g_value_info_get_value ()" link="gi-GIEnumInfo.html#g-value-info-get-value"/>
     <keyword type="macro" name="GI_IS_STRUCT_INFO()" link="gi-GIStructInfo.html#GI-IS-STRUCT-INFO:CAPS"/>
-    <keyword type="function" name="g_struct_info_get_alignment ()" link="gi-GIStructInfo.html#g-struct-info-get-alignment"/>
-    <keyword type="function" name="g_struct_info_get_size ()" link="gi-GIStructInfo.html#g-struct-info-get-size"/>
-    <keyword type="function" name="g_struct_info_is_gtype_struct ()" link="gi-GIStructInfo.html#g-struct-info-is-gtype-struct"/>
-    <keyword type="function" name="g_struct_info_is_foreign ()" link="gi-GIStructInfo.html#g-struct-info-is-foreign"/>
-    <keyword type="function" name="g_struct_info_get_n_fields ()" link="gi-GIStructInfo.html#g-struct-info-get-n-fields"/>
-    <keyword type="function" name="g_struct_info_get_field ()" link="gi-GIStructInfo.html#g-struct-info-get-field"/>
-    <keyword type="function" name="g_struct_info_get_n_methods ()" link="gi-GIStructInfo.html#g-struct-info-get-n-methods"/>
-    <keyword type="function" name="g_struct_info_get_method ()" link="gi-GIStructInfo.html#g-struct-info-get-method"/>
-    <keyword type="function" name="g_struct_info_find_method ()" link="gi-GIStructInfo.html#g-struct-info-find-method"/>
     <keyword type="typedef" name="GIStructInfo" link="gi-GIStructInfo.html#GIStructInfo"/>
-    <keyword type="function" name="g_union_info_get_n_fields ()" link="gi-GIUnionInfo.html#g-union-info-get-n-fields"/>
-    <keyword type="function" name="g_union_info_get_field ()" link="gi-GIUnionInfo.html#g-union-info-get-field"/>
-    <keyword type="function" name="g_union_info_get_n_methods ()" link="gi-GIUnionInfo.html#g-union-info-get-n-methods"/>
-    <keyword type="function" name="g_union_info_get_method ()" link="gi-GIUnionInfo.html#g-union-info-get-method"/>
-    <keyword type="function" name="g_union_info_is_discriminated ()" link="gi-GIUnionInfo.html#g-union-info-is-discriminated"/>
-    <keyword type="function" name="g_union_info_get_discriminator_offset ()" link="gi-GIUnionInfo.html#g-union-info-get-discriminator-offset"/>
-    <keyword type="function" name="g_union_info_get_discriminator_type ()" link="gi-GIUnionInfo.html#g-union-info-get-discriminator-type"/>
-    <keyword type="function" name="g_union_info_get_discriminator ()" link="gi-GIUnionInfo.html#g-union-info-get-discriminator"/>
-    <keyword type="function" name="g_union_info_find_method ()" link="gi-GIUnionInfo.html#g-union-info-find-method"/>
-    <keyword type="function" name="g_union_info_get_size ()" link="gi-GIUnionInfo.html#g-union-info-get-size"/>
-    <keyword type="function" name="g_union_info_get_alignment ()" link="gi-GIUnionInfo.html#g-union-info-get-alignment"/>
+    <keyword type="function" name="g_struct_info_get_alignment ()" link="gi-GIStructInfo.html#g-struct-info-get-alignment"/>
+    <keyword type="function" name="g_struct_info_get_size ()" link="gi-GIStructInfo.html#g-struct-info-get-size"/>
+    <keyword type="function" name="g_struct_info_is_gtype_struct ()" link="gi-GIStructInfo.html#g-struct-info-is-gtype-struct"/>
+    <keyword type="function" name="g_struct_info_is_foreign ()" link="gi-GIStructInfo.html#g-struct-info-is-foreign"/>
+    <keyword type="function" name="g_struct_info_get_n_fields ()" link="gi-GIStructInfo.html#g-struct-info-get-n-fields"/>
+    <keyword type="function" name="g_struct_info_get_field ()" link="gi-GIStructInfo.html#g-struct-info-get-field"/>
+    <keyword type="function" name="g_struct_info_get_n_methods ()" link="gi-GIStructInfo.html#g-struct-info-get-n-methods"/>
+    <keyword type="function" name="g_struct_info_get_method ()" link="gi-GIStructInfo.html#g-struct-info-get-method"/>
+    <keyword type="function" name="g_struct_info_find_method ()" link="gi-GIStructInfo.html#g-struct-info-find-method"/>
     <keyword type="typedef" name="GIUnionInfo" link="gi-GIUnionInfo.html#GIUnionInfo"/>
+    <keyword type="function" name="g_union_info_get_n_fields ()" link="gi-GIUnionInfo.html#g-union-info-get-n-fields"/>
+    <keyword type="function" name="g_union_info_get_field ()" link="gi-GIUnionInfo.html#g-union-info-get-field"/>
+    <keyword type="function" name="g_union_info_get_n_methods ()" link="gi-GIUnionInfo.html#g-union-info-get-n-methods"/>
+    <keyword type="function" name="g_union_info_get_method ()" link="gi-GIUnionInfo.html#g-union-info-get-method"/>
+    <keyword type="function" name="g_union_info_is_discriminated ()" link="gi-GIUnionInfo.html#g-union-info-is-discriminated"/>
+    <keyword type="function" name="g_union_info_get_discriminator_offset ()" link="gi-GIUnionInfo.html#g-union-info-get-discriminator-offset"/>
+    <keyword type="function" name="g_union_info_get_discriminator_type ()" link="gi-GIUnionInfo.html#g-union-info-get-discriminator-type"/>
+    <keyword type="function" name="g_union_info_get_discriminator ()" link="gi-GIUnionInfo.html#g-union-info-get-discriminator"/>
+    <keyword type="function" name="g_union_info_find_method ()" link="gi-GIUnionInfo.html#g-union-info-find-method"/>
+    <keyword type="function" name="g_union_info_get_size ()" link="gi-GIUnionInfo.html#g-union-info-get-size"/>
+    <keyword type="function" name="g_union_info_get_alignment ()" link="gi-GIUnionInfo.html#g-union-info-get-alignment"/>
     <keyword type="macro" name="GI_IS_OBJECT_INFO()" link="gi-GIObjectInfo.html#GI-IS-OBJECT-INFO:CAPS"/>
-    <keyword type="function" name="g_object_info_get_abstract ()" link="gi-GIObjectInfo.html#g-object-info-get-abstract"/>
-    <keyword type="function" name="g_object_info_get_fundamental ()" link="gi-GIObjectInfo.html#g-object-info-get-fundamental"/>
-    <keyword type="function" name="g_object_info_get_parent ()" link="gi-GIObjectInfo.html#g-object-info-get-parent"/>
-    <keyword type="function" name="g_object_info_get_type_name ()" link="gi-GIObjectInfo.html#g-object-info-get-type-name"/>
-    <keyword type="function" name="g_object_info_get_type_init ()" link="gi-GIObjectInfo.html#g-object-info-get-type-init"/>
-    <keyword type="function" name="g_object_info_get_n_constants ()" link="gi-GIObjectInfo.html#g-object-info-get-n-constants"/>
-    <keyword type="function" name="g_object_info_get_constant ()" link="gi-GIObjectInfo.html#g-object-info-get-constant"/>
-    <keyword type="function" name="g_object_info_get_n_fields ()" link="gi-GIObjectInfo.html#g-object-info-get-n-fields"/>
-    <keyword type="function" name="g_object_info_get_field ()" link="gi-GIObjectInfo.html#g-object-info-get-field"/>
-    <keyword type="function" name="g_object_info_get_n_interfaces ()" link="gi-GIObjectInfo.html#g-object-info-get-n-interfaces"/>
-    <keyword type="function" name="g_object_info_get_interface ()" link="gi-GIObjectInfo.html#g-object-info-get-interface"/>
-    <keyword type="function" name="g_object_info_get_n_methods ()" link="gi-GIObjectInfo.html#g-object-info-get-n-methods"/>
-    <keyword type="function" name="g_object_info_get_method ()" link="gi-GIObjectInfo.html#g-object-info-get-method"/>
-    <keyword type="function" name="g_object_info_find_method ()" link="gi-GIObjectInfo.html#g-object-info-find-method"/>
-    <keyword type="function" name="g_object_info_find_method_using_interfaces ()" link="gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces"/>
-    <keyword type="function" name="g_object_info_get_n_properties ()" link="gi-GIObjectInfo.html#g-object-info-get-n-properties"/>
-    <keyword type="function" name="g_object_info_get_property ()" link="gi-GIObjectInfo.html#g-object-info-get-property"/>
-    <keyword type="function" name="g_object_info_get_n_signals ()" link="gi-GIObjectInfo.html#g-object-info-get-n-signals"/>
-    <keyword type="function" name="g_object_info_get_signal ()" link="gi-GIObjectInfo.html#g-object-info-get-signal"/>
-    <keyword type="function" name="g_object_info_find_signal ()" link="gi-GIObjectInfo.html#g-object-info-find-signal"/>
-    <keyword type="function" name="g_object_info_get_n_vfuncs ()" link="gi-GIObjectInfo.html#g-object-info-get-n-vfuncs"/>
-    <keyword type="function" name="g_object_info_get_vfunc ()" link="gi-GIObjectInfo.html#g-object-info-get-vfunc"/>
-    <keyword type="function" name="g_object_info_find_vfunc ()" link="gi-GIObjectInfo.html#g-object-info-find-vfunc"/>
-    <keyword type="function" name="g_object_info_find_vfunc_using_interfaces ()" link="gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces"/>
-    <keyword type="function" name="g_object_info_get_class_struct ()" link="gi-GIObjectInfo.html#g-object-info-get-class-struct"/>
-    <keyword type="function" name="g_object_info_get_ref_function ()" link="gi-GIObjectInfo.html#g-object-info-get-ref-function"/>
-    <keyword type="function" name="g_object_info_get_ref_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer"/>
-    <keyword type="function" name="g_object_info_get_unref_function ()" link="gi-GIObjectInfo.html#g-object-info-get-unref-function"/>
-    <keyword type="function" name="g_object_info_get_unref_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer"/>
-    <keyword type="function" name="g_object_info_get_set_value_function ()" link="gi-GIObjectInfo.html#g-object-info-get-set-value-function"/>
-    <keyword type="function" name="g_object_info_get_set_value_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer"/>
-    <keyword type="function" name="g_object_info_get_get_value_function ()" link="gi-GIObjectInfo.html#g-object-info-get-get-value-function"/>
-    <keyword type="function" name="g_object_info_get_get_value_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer"/>
-    <keyword type="function" name="GIObjectInfoRefFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoRefFunction"/>
-    <keyword type="function" name="GIObjectInfoUnrefFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction"/>
-    <keyword type="function" name="GIObjectInfoSetValueFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction"/>
-    <keyword type="function" name="GIObjectInfoGetValueFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction"/>
     <keyword type="typedef" name="GIObjectInfo" link="gi-GIObjectInfo.html#GIObjectInfo"/>
+    <keyword type="function" name="g_object_info_get_abstract ()" link="gi-GIObjectInfo.html#g-object-info-get-abstract"/>
+    <keyword type="function" name="g_object_info_get_fundamental ()" link="gi-GIObjectInfo.html#g-object-info-get-fundamental"/>
+    <keyword type="function" name="g_object_info_get_parent ()" link="gi-GIObjectInfo.html#g-object-info-get-parent"/>
+    <keyword type="function" name="g_object_info_get_type_name ()" link="gi-GIObjectInfo.html#g-object-info-get-type-name"/>
+    <keyword type="function" name="g_object_info_get_type_init ()" link="gi-GIObjectInfo.html#g-object-info-get-type-init"/>
+    <keyword type="function" name="g_object_info_get_n_constants ()" link="gi-GIObjectInfo.html#g-object-info-get-n-constants"/>
+    <keyword type="function" name="g_object_info_get_constant ()" link="gi-GIObjectInfo.html#g-object-info-get-constant"/>
+    <keyword type="function" name="g_object_info_get_n_fields ()" link="gi-GIObjectInfo.html#g-object-info-get-n-fields"/>
+    <keyword type="function" name="g_object_info_get_field ()" link="gi-GIObjectInfo.html#g-object-info-get-field"/>
+    <keyword type="function" name="g_object_info_get_n_interfaces ()" link="gi-GIObjectInfo.html#g-object-info-get-n-interfaces"/>
+    <keyword type="function" name="g_object_info_get_interface ()" link="gi-GIObjectInfo.html#g-object-info-get-interface"/>
+    <keyword type="function" name="g_object_info_get_n_methods ()" link="gi-GIObjectInfo.html#g-object-info-get-n-methods"/>
+    <keyword type="function" name="g_object_info_get_method ()" link="gi-GIObjectInfo.html#g-object-info-get-method"/>
+    <keyword type="function" name="g_object_info_find_method ()" link="gi-GIObjectInfo.html#g-object-info-find-method"/>
+    <keyword type="function" name="g_object_info_find_method_using_interfaces ()" link="gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces"/>
+    <keyword type="function" name="g_object_info_get_n_properties ()" link="gi-GIObjectInfo.html#g-object-info-get-n-properties"/>
+    <keyword type="function" name="g_object_info_get_property ()" link="gi-GIObjectInfo.html#g-object-info-get-property"/>
+    <keyword type="function" name="g_object_info_get_n_signals ()" link="gi-GIObjectInfo.html#g-object-info-get-n-signals"/>
+    <keyword type="function" name="g_object_info_get_signal ()" link="gi-GIObjectInfo.html#g-object-info-get-signal"/>
+    <keyword type="function" name="g_object_info_find_signal ()" link="gi-GIObjectInfo.html#g-object-info-find-signal"/>
+    <keyword type="function" name="g_object_info_get_n_vfuncs ()" link="gi-GIObjectInfo.html#g-object-info-get-n-vfuncs"/>
+    <keyword type="function" name="g_object_info_get_vfunc ()" link="gi-GIObjectInfo.html#g-object-info-get-vfunc"/>
+    <keyword type="function" name="g_object_info_find_vfunc ()" link="gi-GIObjectInfo.html#g-object-info-find-vfunc"/>
+    <keyword type="function" name="g_object_info_find_vfunc_using_interfaces ()" link="gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces"/>
+    <keyword type="function" name="g_object_info_get_class_struct ()" link="gi-GIObjectInfo.html#g-object-info-get-class-struct"/>
+    <keyword type="function" name="g_object_info_get_ref_function ()" link="gi-GIObjectInfo.html#g-object-info-get-ref-function"/>
+    <keyword type="function" name="g_object_info_get_ref_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer"/>
+    <keyword type="function" name="g_object_info_get_unref_function ()" link="gi-GIObjectInfo.html#g-object-info-get-unref-function"/>
+    <keyword type="function" name="g_object_info_get_unref_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer"/>
+    <keyword type="function" name="g_object_info_get_set_value_function ()" link="gi-GIObjectInfo.html#g-object-info-get-set-value-function"/>
+    <keyword type="function" name="g_object_info_get_set_value_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer"/>
+    <keyword type="function" name="g_object_info_get_get_value_function ()" link="gi-GIObjectInfo.html#g-object-info-get-get-value-function"/>
+    <keyword type="function" name="g_object_info_get_get_value_function_pointer ()" link="gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer"/>
+    <keyword type="function" name="GIObjectInfoRefFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoRefFunction"/>
+    <keyword type="function" name="GIObjectInfoUnrefFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoUnrefFunction"/>
+    <keyword type="function" name="GIObjectInfoSetValueFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoSetValueFunction"/>
+    <keyword type="function" name="GIObjectInfoGetValueFunction ()" link="gi-GIObjectInfo.html#GIObjectInfoGetValueFunction"/>
     <keyword type="macro" name="GI_IS_INTERFACE_INFO()" link="gi-GIInterfaceInfo.html#GI-IS-INTERFACE-INFO:CAPS"/>
-    <keyword type="function" name="g_interface_info_get_n_prerequisites ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites"/>
-    <keyword type="function" name="g_interface_info_get_prerequisite ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite"/>
-    <keyword type="function" name="g_interface_info_get_n_properties ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-properties"/>
-    <keyword type="function" name="g_interface_info_get_property ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-property"/>
-    <keyword type="function" name="g_interface_info_get_n_methods ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-methods"/>
-    <keyword type="function" name="g_interface_info_get_method ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-method"/>
-    <keyword type="function" name="g_interface_info_find_method ()" link="gi-GIInterfaceInfo.html#g-interface-info-find-method"/>
-    <keyword type="function" name="g_interface_info_get_n_signals ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-signals"/>
-    <keyword type="function" name="g_interface_info_get_signal ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-signal"/>
-    <keyword type="function" name="g_interface_info_find_signal ()" link="gi-GIInterfaceInfo.html#g-interface-info-find-signal" since="1.34"/>
-    <keyword type="function" name="g_interface_info_get_n_vfuncs ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs"/>
-    <keyword type="function" name="g_interface_info_get_vfunc ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-vfunc"/>
-    <keyword type="function" name="g_interface_info_find_vfunc ()" link="gi-GIInterfaceInfo.html#g-interface-info-find-vfunc"/>
-    <keyword type="function" name="g_interface_info_get_n_constants ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-constants"/>
-    <keyword type="function" name="g_interface_info_get_constant ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-constant"/>
-    <keyword type="function" name="g_interface_info_get_iface_struct ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct"/>
     <keyword type="typedef" name="GIInterfaceInfo" link="gi-GIInterfaceInfo.html#GIInterfaceInfo"/>
+    <keyword type="function" name="g_interface_info_get_n_prerequisites ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites"/>
+    <keyword type="function" name="g_interface_info_get_prerequisite ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite"/>
+    <keyword type="function" name="g_interface_info_get_n_properties ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-properties"/>
+    <keyword type="function" name="g_interface_info_get_property ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-property"/>
+    <keyword type="function" name="g_interface_info_get_n_methods ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-methods"/>
+    <keyword type="function" name="g_interface_info_get_method ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-method"/>
+    <keyword type="function" name="g_interface_info_find_method ()" link="gi-GIInterfaceInfo.html#g-interface-info-find-method"/>
+    <keyword type="function" name="g_interface_info_get_n_signals ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-signals"/>
+    <keyword type="function" name="g_interface_info_get_signal ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-signal"/>
+    <keyword type="function" name="g_interface_info_find_signal ()" link="gi-GIInterfaceInfo.html#g-interface-info-find-signal" since="1.34"/>
+    <keyword type="function" name="g_interface_info_get_n_vfuncs ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs"/>
+    <keyword type="function" name="g_interface_info_get_vfunc ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-vfunc"/>
+    <keyword type="function" name="g_interface_info_find_vfunc ()" link="gi-GIInterfaceInfo.html#g-interface-info-find-vfunc"/>
+    <keyword type="function" name="g_interface_info_get_n_constants ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-n-constants"/>
+    <keyword type="function" name="g_interface_info_get_constant ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-constant"/>
+    <keyword type="function" name="g_interface_info_get_iface_struct ()" link="gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct"/>
     <keyword type="macro" name="GI_IS_ARG_INFO()" link="gi-GIArgInfo.html#GI-IS-ARG-INFO:CAPS"/>
-    <keyword type="function" name="g_arg_info_get_closure ()" link="gi-GIArgInfo.html#g-arg-info-get-closure"/>
-    <keyword type="function" name="g_arg_info_get_destroy ()" link="gi-GIArgInfo.html#g-arg-info-get-destroy"/>
-    <keyword type="function" name="g_arg_info_get_direction ()" link="gi-GIArgInfo.html#g-arg-info-get-direction"/>
-    <keyword type="function" name="g_arg_info_get_ownership_transfer ()" link="gi-GIArgInfo.html#g-arg-info-get-ownership-transfer"/>
-    <keyword type="function" name="g_arg_info_get_scope ()" link="gi-GIArgInfo.html#g-arg-info-get-scope"/>
-    <keyword type="function" name="g_arg_info_get_type ()" link="gi-GIArgInfo.html#g-arg-info-get-type"/>
-    <keyword type="function" name="g_arg_info_load_type ()" link="gi-GIArgInfo.html#g-arg-info-load-type"/>
-    <keyword type="function" name="g_arg_info_may_be_null ()" link="gi-GIArgInfo.html#g-arg-info-may-be-null"/>
-    <keyword type="function" name="g_arg_info_is_caller_allocates ()" link="gi-GIArgInfo.html#g-arg-info-is-caller-allocates"/>
-    <keyword type="function" name="g_arg_info_is_optional ()" link="gi-GIArgInfo.html#g-arg-info-is-optional"/>
-    <keyword type="function" name="g_arg_info_is_return_value ()" link="gi-GIArgInfo.html#g-arg-info-is-return-value"/>
-    <keyword type="function" name="g_arg_info_is_skip ()" link="gi-GIArgInfo.html#g-arg-info-is-skip" since="1.29.0"/>
     <keyword type="typedef" name="GIArgInfo" link="gi-GIArgInfo.html#GIArgInfo"/>
     <keyword type="enum" name="enum GIDirection" link="gi-GIArgInfo.html#GIDirection"/>
     <keyword type="enum" name="enum GIScopeType" link="gi-GIArgInfo.html#GIScopeType"/>
     <keyword type="enum" name="enum GITransfer" link="gi-GIArgInfo.html#GITransfer"/>
+    <keyword type="function" name="g_arg_info_get_closure ()" link="gi-GIArgInfo.html#g-arg-info-get-closure"/>
+    <keyword type="function" name="g_arg_info_get_destroy ()" link="gi-GIArgInfo.html#g-arg-info-get-destroy"/>
+    <keyword type="function" name="g_arg_info_get_direction ()" link="gi-GIArgInfo.html#g-arg-info-get-direction"/>
+    <keyword type="function" name="g_arg_info_get_ownership_transfer ()" link="gi-GIArgInfo.html#g-arg-info-get-ownership-transfer"/>
+    <keyword type="function" name="g_arg_info_get_scope ()" link="gi-GIArgInfo.html#g-arg-info-get-scope"/>
+    <keyword type="function" name="g_arg_info_get_type ()" link="gi-GIArgInfo.html#g-arg-info-get-type"/>
+    <keyword type="function" name="g_arg_info_load_type ()" link="gi-GIArgInfo.html#g-arg-info-load-type"/>
+    <keyword type="function" name="g_arg_info_may_be_null ()" link="gi-GIArgInfo.html#g-arg-info-may-be-null"/>
+    <keyword type="function" name="g_arg_info_is_caller_allocates ()" link="gi-GIArgInfo.html#g-arg-info-is-caller-allocates"/>
+    <keyword type="function" name="g_arg_info_is_optional ()" link="gi-GIArgInfo.html#g-arg-info-is-optional"/>
+    <keyword type="function" name="g_arg_info_is_return_value ()" link="gi-GIArgInfo.html#g-arg-info-is-return-value"/>
+    <keyword type="function" name="g_arg_info_is_skip ()" link="gi-GIArgInfo.html#g-arg-info-is-skip" since="1.29.0"/>
     <keyword type="macro" name="GI_IS_CONSTANT_INFO()" link="gi-GIConstantInfo.html#GI-IS-CONSTANT-INFO:CAPS"/>
-    <keyword type="function" name="g_constant_info_free_value ()" link="gi-GIConstantInfo.html#g-constant-info-free-value" since="1.30.1"/>
-    <keyword type="function" name="g_constant_info_get_type ()" link="gi-GIConstantInfo.html#g-constant-info-get-type"/>
-    <keyword type="function" name="g_constant_info_get_value ()" link="gi-GIConstantInfo.html#g-constant-info-get-value"/>
     <keyword type="typedef" name="GIConstantInfo" link="gi-GIConstantInfo.html#GIConstantInfo"/>
+    <keyword type="function" name="g_constant_info_free_value ()" link="gi-GIConstantInfo.html#g-constant-info-free-value" since="1.30.1"/>
+    <keyword type="function" name="g_constant_info_get_type ()" link="gi-GIConstantInfo.html#g-constant-info-get-type"/>
+    <keyword type="function" name="g_constant_info_get_value ()" link="gi-GIConstantInfo.html#g-constant-info-get-value"/>
     <keyword type="macro" name="GI_IS_FIELD_INFO()" link="gi-GIFieldInfo.html#GI-IS-FIELD-INFO:CAPS"/>
-    <keyword type="function" name="g_field_info_get_field ()" link="gi-GIFieldInfo.html#g-field-info-get-field"/>
-    <keyword type="function" name="g_field_info_set_field ()" link="gi-GIFieldInfo.html#g-field-info-set-field"/>
-    <keyword type="function" name="g_field_info_get_flags ()" link="gi-GIFieldInfo.html#g-field-info-get-flags"/>
-    <keyword type="function" name="g_field_info_get_offset ()" link="gi-GIFieldInfo.html#g-field-info-get-offset"/>
-    <keyword type="function" name="g_field_info_get_size ()" link="gi-GIFieldInfo.html#g-field-info-get-size"/>
-    <keyword type="function" name="g_field_info_get_type ()" link="gi-GIFieldInfo.html#g-field-info-get-type"/>
     <keyword type="typedef" name="GIFieldInfo" link="gi-GIFieldInfo.html#GIFieldInfo"/>
     <keyword type="enum" name="enum GIFieldInfoFlags" link="gi-GIFieldInfo.html#GIFieldInfoFlags"/>
+    <keyword type="function" name="g_field_info_get_field ()" link="gi-GIFieldInfo.html#g-field-info-get-field"/>
+    <keyword type="function" name="g_field_info_set_field ()" link="gi-GIFieldInfo.html#g-field-info-set-field"/>
+    <keyword type="function" name="g_field_info_get_flags ()" link="gi-GIFieldInfo.html#g-field-info-get-flags"/>
+    <keyword type="function" name="g_field_info_get_offset ()" link="gi-GIFieldInfo.html#g-field-info-get-offset"/>
+    <keyword type="function" name="g_field_info_get_size ()" link="gi-GIFieldInfo.html#g-field-info-get-size"/>
+    <keyword type="function" name="g_field_info_get_type ()" link="gi-GIFieldInfo.html#g-field-info-get-type"/>
     <keyword type="macro" name="GI_IS_PROPERTY_INFO()" link="gi-GIPropertyInfo.html#GI-IS-PROPERTY-INFO:CAPS"/>
-    <keyword type="function" name="g_property_info_get_flags ()" link="gi-GIPropertyInfo.html#g-property-info-get-flags"/>
-    <keyword type="function" name="g_property_info_get_ownership_transfer ()" link="gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer"/>
-    <keyword type="function" name="g_property_info_get_type ()" link="gi-GIPropertyInfo.html#g-property-info-get-type"/>
     <keyword type="typedef" name="GIPropertyInfo" link="gi-GIPropertyInfo.html#GIPropertyInfo"/>
+    <keyword type="function" name="g_property_info_get_flags ()" link="gi-GIPropertyInfo.html#g-property-info-get-flags"/>
+    <keyword type="function" name="g_property_info_get_ownership_transfer ()" link="gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer"/>
+    <keyword type="function" name="g_property_info_get_type ()" link="gi-GIPropertyInfo.html#g-property-info-get-type"/>
     <keyword type="macro" name="GI_IS_TYPE_INFO()" link="gi-GITypeInfo.html#GI-IS-TYPE-INFO:CAPS"/>
-    <keyword type="function" name="g_type_tag_to_string ()" link="gi-GITypeInfo.html#g-type-tag-to-string"/>
-    <keyword type="function" name="g_info_type_to_string ()" link="gi-GITypeInfo.html#g-info-type-to-string"/>
-    <keyword type="function" name="g_type_info_is_pointer ()" link="gi-GITypeInfo.html#g-type-info-is-pointer"/>
-    <keyword type="function" name="g_type_info_get_tag ()" link="gi-GITypeInfo.html#g-type-info-get-tag"/>
-    <keyword type="function" name="g_type_info_get_param_type ()" link="gi-GITypeInfo.html#g-type-info-get-param-type"/>
-    <keyword type="function" name="g_type_info_get_interface ()" link="gi-GITypeInfo.html#g-type-info-get-interface"/>
-    <keyword type="function" name="g_type_info_get_array_length ()" link="gi-GITypeInfo.html#g-type-info-get-array-length"/>
-    <keyword type="function" name="g_type_info_get_array_fixed_size ()" link="gi-GITypeInfo.html#g-type-info-get-array-fixed-size"/>
-    <keyword type="function" name="g_type_info_is_zero_terminated ()" link="gi-GITypeInfo.html#g-type-info-is-zero-terminated"/>
-    <keyword type="function" name="g_type_info_get_array_type ()" link="gi-GITypeInfo.html#g-type-info-get-array-type"/>
     <keyword type="typedef" name="GITypeInfo" link="gi-GITypeInfo.html#GITypeInfo"/>
+    <keyword type="function" name="g_type_tag_to_string ()" link="gi-GITypeInfo.html#g-type-tag-to-string"/>
+    <keyword type="function" name="g_info_type_to_string ()" link="gi-GITypeInfo.html#g-info-type-to-string"/>
+    <keyword type="function" name="g_type_info_is_pointer ()" link="gi-GITypeInfo.html#g-type-info-is-pointer"/>
+    <keyword type="function" name="g_type_info_get_tag ()" link="gi-GITypeInfo.html#g-type-info-get-tag"/>
+    <keyword type="function" name="g_type_info_get_param_type ()" link="gi-GITypeInfo.html#g-type-info-get-param-type"/>
+    <keyword type="function" name="g_type_info_get_interface ()" link="gi-GITypeInfo.html#g-type-info-get-interface"/>
+    <keyword type="function" name="g_type_info_get_array_length ()" link="gi-GITypeInfo.html#g-type-info-get-array-length"/>
+    <keyword type="function" name="g_type_info_get_array_fixed_size ()" link="gi-GITypeInfo.html#g-type-info-get-array-fixed-size"/>
+    <keyword type="function" name="g_type_info_is_zero_terminated ()" link="gi-GITypeInfo.html#g-type-info-is-zero-terminated"/>
+    <keyword type="function" name="g_type_info_get_array_type ()" link="gi-GITypeInfo.html#g-type-info-get-array-type"/>
     <keyword type="typedef" name="GIValueInfo" link="gi-GIValueInfo.html#GIValueInfo"/>
-    <keyword type="function" name="g_typelib_new_from_memory ()" link="gi-gitypelib.html#g-typelib-new-from-memory"/>
-    <keyword type="function" name="g_typelib_new_from_const_memory ()" link="gi-gitypelib.html#g-typelib-new-from-const-memory"/>
-    <keyword type="function" name="g_typelib_new_from_mapped_file ()" link="gi-gitypelib.html#g-typelib-new-from-mapped-file"/>
-    <keyword type="function" name="g_typelib_free ()" link="gi-gitypelib.html#g-typelib-free"/>
-    <keyword type="function" name="g_typelib_symbol ()" link="gi-gitypelib.html#g-typelib-symbol"/>
-    <keyword type="function" name="g_typelib_get_namespace ()" link="gi-gitypelib.html#g-typelib-get-namespace"/>
+    <keyword type="function" name="g_typelib_new_from_memory ()" link="gi-gitypelib.html#g-typelib-new-from-memory"/>
+    <keyword type="function" name="g_typelib_new_from_const_memory ()" link="gi-gitypelib.html#g-typelib-new-from-const-memory"/>
+    <keyword type="function" name="g_typelib_new_from_mapped_file ()" link="gi-gitypelib.html#g-typelib-new-from-mapped-file"/>
+    <keyword type="function" name="g_typelib_free ()" link="gi-gitypelib.html#g-typelib-free"/>
+    <keyword type="function" name="g_typelib_symbol ()" link="gi-gitypelib.html#g-typelib-symbol"/>
+    <keyword type="function" name="g_typelib_get_namespace ()" link="gi-gitypelib.html#g-typelib-get-namespace"/>
     <keyword type="struct" name="GITypelib" link="gi-gitypelib.html#GITypelib"/>
-    <keyword type="function" name="g_typelib_get_dir_entry ()" link="gi-GITypelib.html#g-typelib-get-dir-entry"/>
-    <keyword type="function" name="g_typelib_get_dir_entry_by_name ()" link="gi-GITypelib.html#g-typelib-get-dir-entry-by-name"/>
-    <keyword type="function" name="g_typelib_get_dir_entry_by_gtype_name ()" link="gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name"/>
-    <keyword type="function" name="g_typelib_get_dir_entry_by_error_domain ()" link="gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain"/>
-    <keyword type="function" name="g_typelib_matches_gtype_name_prefix ()" link="gi-GITypelib.html#g-typelib-matches-gtype-name-prefix"/>
-    <keyword type="function" name="g_typelib_check_sanity ()" link="gi-GITypelib.html#g-typelib-check-sanity"/>
-    <keyword type="macro" name="g_typelib_get_string()" link="gi-GITypelib.html#g-typelib-get-string"/>
-    <keyword type="macro" name="G_TYPELIB_ERROR" link="gi-GITypelib.html#G-TYPELIB-ERROR:CAPS"/>
-    <keyword type="function" name="g_typelib_error_quark ()" link="gi-GITypelib.html#g-typelib-error-quark"/>
-    <keyword type="function" name="g_typelib_validate ()" link="gi-GITypelib.html#g-typelib-validate"/>
     <keyword type="macro" name="G_IR_MAGIC" link="gi-GITypelib.html#G-IR-MAGIC:CAPS"/>
     <keyword type="enum" name="enum GTypelibBlobType" link="gi-GITypelib.html#GTypelibBlobType"/>
     <keyword type="struct" name="Header" link="gi-GITypelib.html#Header"/>
     <keyword type="struct" name="Section" link="gi-GITypelib.html#Section"/>
     <keyword type="struct" name="DirEntry" link="gi-GITypelib.html#DirEntry"/>
     <keyword type="struct" name="SimpleTypeBlobFlags" link="gi-GITypelib.html#SimpleTypeBlobFlags"/>
-    <keyword type="union" name="SimpleTypeBlob" link="gi-GITypelib.html#SimpleTypeBlob"/>
+    <keyword type="union" name="union SimpleTypeBlob" link="gi-GITypelib.html#SimpleTypeBlob"/>
     <keyword type="struct" name="ArgBlob" link="gi-GITypelib.html#ArgBlob"/>
     <keyword type="struct" name="SignatureBlob" link="gi-GITypelib.html#SignatureBlob"/>
     <keyword type="struct" name="CommonBlob" link="gi-GITypelib.html#CommonBlob"/>
     <keyword type="struct" name="InterfaceBlob" link="gi-GITypelib.html#InterfaceBlob"/>
     <keyword type="struct" name="ConstantBlob" link="gi-GITypelib.html#ConstantBlob"/>
     <keyword type="struct" name="AttributeBlob" link="gi-GITypelib.html#AttributeBlob"/>
+    <keyword type="function" name="g_typelib_get_dir_entry ()" link="gi-GITypelib.html#g-typelib-get-dir-entry"/>
+    <keyword type="function" name="g_typelib_get_dir_entry_by_name ()" link="gi-GITypelib.html#g-typelib-get-dir-entry-by-name"/>
+    <keyword type="function" name="g_typelib_get_dir_entry_by_gtype_name ()" link="gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name"/>
+    <keyword type="function" name="g_typelib_get_dir_entry_by_error_domain ()" link="gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain"/>
+    <keyword type="function" name="g_typelib_matches_gtype_name_prefix ()" link="gi-GITypelib.html#g-typelib-matches-gtype-name-prefix"/>
+    <keyword type="function" name="g_typelib_check_sanity ()" link="gi-GITypelib.html#g-typelib-check-sanity"/>
+    <keyword type="macro" name="g_typelib_get_string()" link="gi-GITypelib.html#g-typelib-get-string"/>
     <keyword type="enum" name="enum GITypelibError" link="gi-GITypelib.html#GITypelibError"/>
+    <keyword type="macro" name="G_TYPELIB_ERROR" link="gi-GITypelib.html#G-TYPELIB-ERROR:CAPS"/>
+    <keyword type="function" name="g_typelib_error_quark ()" link="gi-GITypelib.html#g-typelib-error-quark"/>
+    <keyword type="function" name="g_typelib_validate ()" link="gi-GITypelib.html#g-typelib-validate"/>
     <keyword type="struct" name="GITypelibHashBuilder" link="gi-GITypelib.html#GITypelibHashBuilder"/>
-    <keyword type="function" name="GIFFIClosureCallback ()" link="gi-girffi.html#GIFFIClosureCallback"/>
-    <keyword type="function" name="gi_type_tag_get_ffi_type ()" link="gi-girffi.html#gi-type-tag-get-ffi-type"/>
-    <keyword type="function" name="g_type_info_get_ffi_type ()" link="gi-girffi.html#g-type-info-get-ffi-type"/>
-    <keyword type="function" name="gi_type_info_extract_ffi_return_value ()" link="gi-girffi.html#gi-type-info-extract-ffi-return-value"/>
-    <keyword type="function" name="g_function_info_prep_invoker ()" link="gi-girffi.html#g-function-info-prep-invoker"/>
-    <keyword type="function" name="g_function_invoker_new_for_address ()" link="gi-girffi.html#g-function-invoker-new-for-address"/>
-    <keyword type="function" name="g_function_invoker_destroy ()" link="gi-girffi.html#g-function-invoker-destroy"/>
-    <keyword type="function" name="g_callable_info_prepare_closure ()" link="gi-girffi.html#g-callable-info-prepare-closure"/>
-    <keyword type="function" name="g_callable_info_free_closure ()" link="gi-girffi.html#g-callable-info-free-closure"/>
+    <keyword type="function" name="GIFFIClosureCallback ()" link="gi-girffi.html#GIFFIClosureCallback"/>
     <keyword type="struct" name="struct GIFunctionInvoker" link="gi-girffi.html#GIFunctionInvoker"/>
     <keyword type="typedef" name="GIFFIReturnValue" link="gi-girffi.html#GIFFIReturnValue"/>
+    <keyword type="function" name="gi_type_tag_get_ffi_type ()" link="gi-girffi.html#gi-type-tag-get-ffi-type"/>
+    <keyword type="function" name="g_type_info_get_ffi_type ()" link="gi-girffi.html#g-type-info-get-ffi-type"/>
+    <keyword type="function" name="gi_type_info_extract_ffi_return_value ()" link="gi-girffi.html#gi-type-info-extract-ffi-return-value"/>
+    <keyword type="function" name="g_function_info_prep_invoker ()" link="gi-girffi.html#g-function-info-prep-invoker"/>
+    <keyword type="function" name="g_function_invoker_new_for_address ()" link="gi-girffi.html#g-function-invoker-new-for-address"/>
+    <keyword type="function" name="g_function_invoker_destroy ()" link="gi-girffi.html#g-function-invoker-destroy"/>
+    <keyword type="function" name="g_callable_info_prepare_closure ()" link="gi-girffi.html#g-callable-info-prepare-closure"/>
+    <keyword type="function" name="g_callable_info_free_closure ()" link="gi-girffi.html#g-callable-info-free-closure"/>
+    <keyword type="" name="api node" link="gi-gir-reference.html#gi-gir-api-node"/>
+    <keyword type="" name="namespace node" link="gi-gir-reference.html#gi-gir-namespace"/>
+    <keyword type="" name="class node" link="gi-gir-reference.html#gi-gir-class"/>
+    <keyword type="" name="interface node" link="gi-gir-reference.html#gi-gir-interface"/>
+    <keyword type="" name="function node" link="gi-gir-reference.html#gi-gir-function"/>
     <keyword type="constant" name="G_IREPOSITORY_LOAD_FLAG_LAZY" link="GIRepository.html#G-IREPOSITORY-LOAD-FLAG-LAZY:CAPS"/>
     <keyword type="constant" name="G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND" link="GIRepository.html#G-IREPOSITORY-ERROR-TYPELIB-NOT-FOUND:CAPS"/>
     <keyword type="constant" name="G_IREPOSITORY_ERROR_NAMESPACE_MISMATCH" link="GIRepository.html#G-IREPOSITORY-ERROR-NAMESPACE-MISMATCH:CAPS"/>
     <keyword type="constant" name="G_TYPELIB_ERROR_INVALID_DIRECTORY" link="gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-DIRECTORY:CAPS"/>
     <keyword type="constant" name="G_TYPELIB_ERROR_INVALID_ENTRY" link="gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-ENTRY:CAPS"/>
     <keyword type="constant" name="G_TYPELIB_ERROR_INVALID_BLOB" link="gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-BLOB:CAPS"/>
-    <keyword type="member" name="Header.magic" link="gi-GITypelib.html#Header.magic"/>
-    <keyword type="member" name="Header.major-version" link="gi-GITypelib.html#Header.major-version"/>
-    <keyword type="member" name="Header.minor-version" link="gi-GITypelib.html#Header.minor-version"/>
-    <keyword type="member" name="Header.reserved" link="gi-GITypelib.html#Header.reserved"/>
-    <keyword type="member" name="Header.n-entries" link="gi-GITypelib.html#Header.n-entries"/>
-    <keyword type="member" name="Header.n-local-entries" link="gi-GITypelib.html#Header.n-local-entries"/>
-    <keyword type="member" name="Header.directory" link="gi-GITypelib.html#Header.directory"/>
-    <keyword type="member" name="Header.n-attributes" link="gi-GITypelib.html#Header.n-attributes"/>
-    <keyword type="member" name="Header.attributes" link="gi-GITypelib.html#Header.attributes"/>
-    <keyword type="member" name="Header.dependencies" link="gi-GITypelib.html#Header.dependencies"/>
-    <keyword type="member" name="Header.size" link="gi-GITypelib.html#Header.size"/>
-    <keyword type="member" name="Header.namespace" link="gi-GITypelib.html#Header.namespace"/>
-    <keyword type="member" name="Header.nsversion" link="gi-GITypelib.html#Header.nsversion"/>
-    <keyword type="member" name="Header.shared-library" link="gi-GITypelib.html#Header.shared-library"/>
-    <keyword type="member" name="Header.c-prefix" link="gi-GITypelib.html#Header.c-prefix"/>
-    <keyword type="member" name="Header.entry-blob-size" link="gi-GITypelib.html#Header.entry-blob-size"/>
-    <keyword type="member" name="Header.function-blob-size" link="gi-GITypelib.html#Header.function-blob-size"/>
-    <keyword type="member" name="Header.callback-blob-size" link="gi-GITypelib.html#Header.callback-blob-size"/>
-    <keyword type="member" name="Header.signal-blob-size" link="gi-GITypelib.html#Header.signal-blob-size"/>
-    <keyword type="member" name="Header.vfunc-blob-size" link="gi-GITypelib.html#Header.vfunc-blob-size"/>
-    <keyword type="member" name="Header.arg-blob-size" link="gi-GITypelib.html#Header.arg-blob-size"/>
-    <keyword type="member" name="Header.property-blob-size" link="gi-GITypelib.html#Header.property-blob-size"/>
-    <keyword type="member" name="Header.field-blob-size" link="gi-GITypelib.html#Header.field-blob-size"/>
-    <keyword type="member" name="Header.value-blob-size" link="gi-GITypelib.html#Header.value-blob-size"/>
-    <keyword type="member" name="Header.attribute-blob-size" link="gi-GITypelib.html#Header.attribute-blob-size"/>
-    <keyword type="member" name="Header.constant-blob-size" link="gi-GITypelib.html#Header.constant-blob-size"/>
-    <keyword type="member" name="Header.error-domain-blob-size" link="gi-GITypelib.html#Header.error-domain-blob-size"/>
-    <keyword type="member" name="Header.signature-blob-size" link="gi-GITypelib.html#Header.signature-blob-size"/>
-    <keyword type="member" name="Header.enum-blob-size" link="gi-GITypelib.html#Header.enum-blob-size"/>
-    <keyword type="member" name="Header.struct-blob-size" link="gi-GITypelib.html#Header.struct-blob-size"/>
-    <keyword type="member" name="Header.object-blob-size" link="gi-GITypelib.html#Header.object-blob-size"/>
-    <keyword type="member" name="Header.interface-blob-size" link="gi-GITypelib.html#Header.interface-blob-size"/>
-    <keyword type="member" name="Header.union-blob-size" link="gi-GITypelib.html#Header.union-blob-size"/>
-    <keyword type="member" name="Header.sections" link="gi-GITypelib.html#Header.sections"/>
-    <keyword type="member" name="Header.padding" link="gi-GITypelib.html#Header.padding"/>
-    <keyword type="member" name="Section.id" link="gi-GITypelib.html#Section.id"/>
-    <keyword type="member" name="Section.offset" link="gi-GITypelib.html#Section.offset"/>
-    <keyword type="member" name="DirEntry.blob-type" link="gi-GITypelib.html#DirEntry.blob-type"/>
-    <keyword type="member" name="DirEntry.local" link="gi-GITypelib.html#DirEntry.local"/>
-    <keyword type="member" name="DirEntry.reserved" link="gi-GITypelib.html#DirEntry.reserved"/>
-    <keyword type="member" name="DirEntry.name" link="gi-GITypelib.html#DirEntry.name"/>
-    <keyword type="member" name="DirEntry.offset" link="gi-GITypelib.html#DirEntry.offset"/>
-    <keyword type="member" name="SimpleTypeBlobFlags.reserved" link="gi-GITypelib.html#SimpleTypeBlobFlags.reserved"/>
-    <keyword type="member" name="SimpleTypeBlobFlags.reserved2" link="gi-GITypelib.html#SimpleTypeBlobFlags.reserved2"/>
-    <keyword type="member" name="SimpleTypeBlobFlags.pointer" link="gi-GITypelib.html#SimpleTypeBlobFlags.pointer"/>
-    <keyword type="member" name="SimpleTypeBlobFlags.reserved3" link="gi-GITypelib.html#SimpleTypeBlobFlags.reserved3"/>
-    <keyword type="member" name="SimpleTypeBlobFlags.tag" link="gi-GITypelib.html#SimpleTypeBlobFlags.tag"/>
-    <keyword type="member" name="ArgBlob.name" link="gi-GITypelib.html#ArgBlob.name"/>
-    <keyword type="member" name="ArgBlob.in" link="gi-GITypelib.html#ArgBlob.in"/>
-    <keyword type="member" name="ArgBlob.out" link="gi-GITypelib.html#ArgBlob.out"/>
-    <keyword type="member" name="ArgBlob.caller-allocates" link="gi-GITypelib.html#ArgBlob.caller-allocates"/>
-    <keyword type="member" name="ArgBlob.nullable" link="gi-GITypelib.html#ArgBlob.nullable"/>
-    <keyword type="member" name="ArgBlob.optional" link="gi-GITypelib.html#ArgBlob.optional"/>
-    <keyword type="member" name="ArgBlob.transfer-ownership" link="gi-GITypelib.html#ArgBlob.transfer-ownership"/>
-    <keyword type="member" name="ArgBlob.transfer-container-ownership" link="gi-GITypelib.html#ArgBlob.transfer-container-ownership"/>
-    <keyword type="member" name="ArgBlob.return-value" link="gi-GITypelib.html#ArgBlob.return-value"/>
-    <keyword type="member" name="ArgBlob.scope" link="gi-GITypelib.html#ArgBlob.scope"/>
-    <keyword type="member" name="ArgBlob.skip" link="gi-GITypelib.html#ArgBlob.skip"/>
-    <keyword type="member" name="ArgBlob.reserved" link="gi-GITypelib.html#ArgBlob.reserved"/>
-    <keyword type="member" name="ArgBlob.closure" link="gi-GITypelib.html#ArgBlob.closure"/>
-    <keyword type="member" name="ArgBlob.destroy" link="gi-GITypelib.html#ArgBlob.destroy"/>
-    <keyword type="member" name="ArgBlob.padding" link="gi-GITypelib.html#ArgBlob.padding"/>
-    <keyword type="member" name="ArgBlob.arg-type" link="gi-GITypelib.html#ArgBlob.arg-type"/>
-    <keyword type="member" name="SignatureBlob.return-type" link="gi-GITypelib.html#SignatureBlob.return-type"/>
-    <keyword type="member" name="SignatureBlob.may-return-null" link="gi-GITypelib.html#SignatureBlob.may-return-null"/>
-    <keyword type="member" name="SignatureBlob.caller-owns-return-value" link="gi-GITypelib.html#SignatureBlob.caller-owns-return-value"/>
-    <keyword type="member" name="SignatureBlob.caller-owns-return-container" link="gi-GITypelib.html#SignatureBlob.caller-owns-return-container"/>
-    <keyword type="member" name="SignatureBlob.skip-return" link="gi-GITypelib.html#SignatureBlob.skip-return"/>
-    <keyword type="member" name="SignatureBlob.instance-transfer-ownership" link="gi-GITypelib.html#SignatureBlob.instance-transfer-ownership"/>
-    <keyword type="member" name="SignatureBlob.throws" link="gi-GITypelib.html#SignatureBlob.throws"/>
-    <keyword type="member" name="SignatureBlob.reserved" link="gi-GITypelib.html#SignatureBlob.reserved"/>
-    <keyword type="member" name="SignatureBlob.n-arguments" link="gi-GITypelib.html#SignatureBlob.n-arguments"/>
-    <keyword type="member" name="SignatureBlob.arguments" link="gi-GITypelib.html#SignatureBlob.arguments"/>
-    <keyword type="member" name="CommonBlob.blob-type" link="gi-GITypelib.html#CommonBlob.blob-type"/>
-    <keyword type="member" name="CommonBlob.deprecated" link="gi-GITypelib.html#CommonBlob.deprecated"/>
-    <keyword type="member" name="CommonBlob.reserved" link="gi-GITypelib.html#CommonBlob.reserved"/>
-    <keyword type="member" name="CommonBlob.name" link="gi-GITypelib.html#CommonBlob.name"/>
-    <keyword type="member" name="FunctionBlob.blob-type" link="gi-GITypelib.html#FunctionBlob.blob-type"/>
-    <keyword type="member" name="FunctionBlob.deprecated" link="gi-GITypelib.html#FunctionBlob.deprecated"/>
-    <keyword type="member" name="FunctionBlob.setter" link="gi-GITypelib.html#FunctionBlob.setter"/>
-    <keyword type="member" name="FunctionBlob.getter" link="gi-GITypelib.html#FunctionBlob.getter"/>
-    <keyword type="member" name="FunctionBlob.constructor" link="gi-GITypelib.html#FunctionBlob.constructor"/>
-    <keyword type="member" name="FunctionBlob.wraps-vfunc" link="gi-GITypelib.html#FunctionBlob.wraps-vfunc"/>
-    <keyword type="member" name="FunctionBlob.throws" link="gi-GITypelib.html#FunctionBlob.throws"/>
-    <keyword type="member" name="FunctionBlob.index" link="gi-GITypelib.html#FunctionBlob.index"/>
-    <keyword type="member" name="FunctionBlob.name" link="gi-GITypelib.html#FunctionBlob.name"/>
-    <keyword type="member" name="FunctionBlob.symbol" link="gi-GITypelib.html#FunctionBlob.symbol"/>
-    <keyword type="member" name="FunctionBlob.signature" link="gi-GITypelib.html#FunctionBlob.signature"/>
-    <keyword type="member" name="FunctionBlob.is-static" link="gi-GITypelib.html#FunctionBlob.is-static"/>
-    <keyword type="member" name="FunctionBlob.reserved" link="gi-GITypelib.html#FunctionBlob.reserved"/>
-    <keyword type="member" name="FunctionBlob.reserved2" link="gi-GITypelib.html#FunctionBlob.reserved2"/>
-    <keyword type="member" name="CallbackBlob.blob-type" link="gi-GITypelib.html#CallbackBlob.blob-type"/>
-    <keyword type="member" name="CallbackBlob.deprecated" link="gi-GITypelib.html#CallbackBlob.deprecated"/>
-    <keyword type="member" name="CallbackBlob.reserved" link="gi-GITypelib.html#CallbackBlob.reserved"/>
-    <keyword type="member" name="CallbackBlob.name" link="gi-GITypelib.html#CallbackBlob.name"/>
-    <keyword type="member" name="CallbackBlob.signature" link="gi-GITypelib.html#CallbackBlob.signature"/>
-    <keyword type="member" name="InterfaceTypeBlob.pointer" link="gi-GITypelib.html#InterfaceTypeBlob.pointer"/>
-    <keyword type="member" name="InterfaceTypeBlob.reserved" link="gi-GITypelib.html#InterfaceTypeBlob.reserved"/>
-    <keyword type="member" name="InterfaceTypeBlob.tag" link="gi-GITypelib.html#InterfaceTypeBlob.tag"/>
-    <keyword type="member" name="InterfaceTypeBlob.reserved2" link="gi-GITypelib.html#InterfaceTypeBlob.reserved2"/>
-    <keyword type="member" name="InterfaceTypeBlob.interface" link="gi-GITypelib.html#InterfaceTypeBlob.interface"/>
-    <keyword type="member" name="ArrayTypeBlob.pointer" link="gi-GITypelib.html#ArrayTypeBlob.pointer"/>
-    <keyword type="member" name="ArrayTypeBlob.reserved" link="gi-GITypelib.html#ArrayTypeBlob.reserved"/>
-    <keyword type="member" name="ArrayTypeBlob.tag" link="gi-GITypelib.html#ArrayTypeBlob.tag"/>
-    <keyword type="member" name="ArrayTypeBlob.zero-terminated" link="gi-GITypelib.html#ArrayTypeBlob.zero-terminated"/>
-    <keyword type="member" name="ArrayTypeBlob.has-length" link="gi-GITypelib.html#ArrayTypeBlob.has-length"/>
-    <keyword type="member" name="ArrayTypeBlob.has-size" link="gi-GITypelib.html#ArrayTypeBlob.has-size"/>
-    <keyword type="member" name="ArrayTypeBlob.array-type" link="gi-GITypelib.html#ArrayTypeBlob.array-type"/>
-    <keyword type="member" name="ArrayTypeBlob.reserved2" link="gi-GITypelib.html#ArrayTypeBlob.reserved2"/>
-    <keyword type="member" name="ArrayTypeBlob.dimensions" link="gi-GITypelib.html#ArrayTypeBlob.dimensions"/>
-    <keyword type="member" name="ArrayTypeBlob.type" link="gi-GITypelib.html#ArrayTypeBlob.type"/>
-    <keyword type="member" name="ParamTypeBlob.pointer" link="gi-GITypelib.html#ParamTypeBlob.pointer"/>
-    <keyword type="member" name="ParamTypeBlob.reserved" link="gi-GITypelib.html#ParamTypeBlob.reserved"/>
-    <keyword type="member" name="ParamTypeBlob.tag" link="gi-GITypelib.html#ParamTypeBlob.tag"/>
-    <keyword type="member" name="ParamTypeBlob.reserved2" link="gi-GITypelib.html#ParamTypeBlob.reserved2"/>
-    <keyword type="member" name="ParamTypeBlob.n-types" link="gi-GITypelib.html#ParamTypeBlob.n-types"/>
-    <keyword type="member" name="ParamTypeBlob.type" link="gi-GITypelib.html#ParamTypeBlob.type"/>
-    <keyword type="member" name="ErrorTypeBlob.pointer" link="gi-GITypelib.html#ErrorTypeBlob.pointer"/>
-    <keyword type="member" name="ErrorTypeBlob.reserved" link="gi-GITypelib.html#ErrorTypeBlob.reserved"/>
-    <keyword type="member" name="ErrorTypeBlob.tag" link="gi-GITypelib.html#ErrorTypeBlob.tag"/>
-    <keyword type="member" name="ErrorTypeBlob.reserved2" link="gi-GITypelib.html#ErrorTypeBlob.reserved2"/>
-    <keyword type="member" name="ErrorTypeBlob.n-domains" link="gi-GITypelib.html#ErrorTypeBlob.n-domains"/>
-    <keyword type="member" name="ErrorTypeBlob.domains" link="gi-GITypelib.html#ErrorTypeBlob.domains"/>
-    <keyword type="member" name="ValueBlob.deprecated" link="gi-GITypelib.html#ValueBlob.deprecated"/>
-    <keyword type="member" name="ValueBlob.unsigned-value" link="gi-GITypelib.html#ValueBlob.unsigned-value"/>
-    <keyword type="member" name="ValueBlob.reserved" link="gi-GITypelib.html#ValueBlob.reserved"/>
-    <keyword type="member" name="ValueBlob.name" link="gi-GITypelib.html#ValueBlob.name"/>
-    <keyword type="member" name="ValueBlob.value" link="gi-GITypelib.html#ValueBlob.value"/>
-    <keyword type="member" name="FieldBlob.name" link="gi-GITypelib.html#FieldBlob.name"/>
-    <keyword type="member" name="FieldBlob.readable" link="gi-GITypelib.html#FieldBlob.readable"/>
-    <keyword type="member" name="FieldBlob.writable" link="gi-GITypelib.html#FieldBlob.writable"/>
-    <keyword type="member" name="FieldBlob.has-embedded-type" link="gi-GITypelib.html#FieldBlob.has-embedded-type"/>
-    <keyword type="member" name="FieldBlob.reserved" link="gi-GITypelib.html#FieldBlob.reserved"/>
-    <keyword type="member" name="FieldBlob.bits" link="gi-GITypelib.html#FieldBlob.bits"/>
-    <keyword type="member" name="FieldBlob.struct-offset" link="gi-GITypelib.html#FieldBlob.struct-offset"/>
-    <keyword type="member" name="FieldBlob.reserved2" link="gi-GITypelib.html#FieldBlob.reserved2"/>
-    <keyword type="member" name="FieldBlob.type" link="gi-GITypelib.html#FieldBlob.type"/>
-    <keyword type="member" name="RegisteredTypeBlob.blob-type" link="gi-GITypelib.html#RegisteredTypeBlob.blob-type"/>
-    <keyword type="member" name="RegisteredTypeBlob.deprecated" link="gi-GITypelib.html#RegisteredTypeBlob.deprecated"/>
-    <keyword type="member" name="RegisteredTypeBlob.unregistered" link="gi-GITypelib.html#RegisteredTypeBlob.unregistered"/>
-    <keyword type="member" name="RegisteredTypeBlob.reserved" link="gi-GITypelib.html#RegisteredTypeBlob.reserved"/>
-    <keyword type="member" name="RegisteredTypeBlob.name" link="gi-GITypelib.html#RegisteredTypeBlob.name"/>
-    <keyword type="member" name="RegisteredTypeBlob.gtype-name" link="gi-GITypelib.html#RegisteredTypeBlob.gtype-name"/>
-    <keyword type="member" name="RegisteredTypeBlob.gtype-init" link="gi-GITypelib.html#RegisteredTypeBlob.gtype-init"/>
-    <keyword type="member" name="StructBlob.blob-type" link="gi-GITypelib.html#StructBlob.blob-type"/>
-    <keyword type="member" name="StructBlob.deprecated" link="gi-GITypelib.html#StructBlob.deprecated"/>
-    <keyword type="member" name="StructBlob.unregistered" link="gi-GITypelib.html#StructBlob.unregistered"/>
-    <keyword type="member" name="StructBlob.is-gtype-struct" link="gi-GITypelib.html#StructBlob.is-gtype-struct"/>
-    <keyword type="member" name="StructBlob.alignment" link="gi-GITypelib.html#StructBlob.alignment"/>
-    <keyword type="member" name="StructBlob.foreign" link="gi-GITypelib.html#StructBlob.foreign"/>
-    <keyword type="member" name="StructBlob.reserved" link="gi-GITypelib.html#StructBlob.reserved"/>
-    <keyword type="member" name="StructBlob.name" link="gi-GITypelib.html#StructBlob.name"/>
-    <keyword type="member" name="StructBlob.gtype-name" link="gi-GITypelib.html#StructBlob.gtype-name"/>
-    <keyword type="member" name="StructBlob.gtype-init" link="gi-GITypelib.html#StructBlob.gtype-init"/>
-    <keyword type="member" name="StructBlob.size" link="gi-GITypelib.html#StructBlob.size"/>
-    <keyword type="member" name="StructBlob.n-fields" link="gi-GITypelib.html#StructBlob.n-fields"/>
-    <keyword type="member" name="StructBlob.n-methods" link="gi-GITypelib.html#StructBlob.n-methods"/>
-    <keyword type="member" name="StructBlob.reserved2" link="gi-GITypelib.html#StructBlob.reserved2"/>
-    <keyword type="member" name="StructBlob.reserved3" link="gi-GITypelib.html#StructBlob.reserved3"/>
-    <keyword type="member" name="UnionBlob.blob-type" link="gi-GITypelib.html#UnionBlob.blob-type"/>
-    <keyword type="member" name="UnionBlob.deprecated" link="gi-GITypelib.html#UnionBlob.deprecated"/>
-    <keyword type="member" name="UnionBlob.unregistered" link="gi-GITypelib.html#UnionBlob.unregistered"/>
-    <keyword type="member" name="UnionBlob.discriminated" link="gi-GITypelib.html#UnionBlob.discriminated"/>
-    <keyword type="member" name="UnionBlob.alignment" link="gi-GITypelib.html#UnionBlob.alignment"/>
-    <keyword type="member" name="UnionBlob.reserved" link="gi-GITypelib.html#UnionBlob.reserved"/>
-    <keyword type="member" name="UnionBlob.name" link="gi-GITypelib.html#UnionBlob.name"/>
-    <keyword type="member" name="UnionBlob.gtype-name" link="gi-GITypelib.html#UnionBlob.gtype-name"/>
-    <keyword type="member" name="UnionBlob.gtype-init" link="gi-GITypelib.html#UnionBlob.gtype-init"/>
-    <keyword type="member" name="UnionBlob.size" link="gi-GITypelib.html#UnionBlob.size"/>
-    <keyword type="member" name="UnionBlob.n-fields" link="gi-GITypelib.html#UnionBlob.n-fields"/>
-    <keyword type="member" name="UnionBlob.n-functions" link="gi-GITypelib.html#UnionBlob.n-functions"/>
-    <keyword type="member" name="UnionBlob.reserved2" link="gi-GITypelib.html#UnionBlob.reserved2"/>
-    <keyword type="member" name="UnionBlob.reserved3" link="gi-GITypelib.html#UnionBlob.reserved3"/>
-    <keyword type="member" name="UnionBlob.discriminator-offset" link="gi-GITypelib.html#UnionBlob.discriminator-offset"/>
-    <keyword type="member" name="UnionBlob.discriminator-type" link="gi-GITypelib.html#UnionBlob.discriminator-type"/>
-    <keyword type="member" name="EnumBlob.blob-type" link="gi-GITypelib.html#EnumBlob.blob-type"/>
-    <keyword type="member" name="EnumBlob.deprecated" link="gi-GITypelib.html#EnumBlob.deprecated"/>
-    <keyword type="member" name="EnumBlob.unregistered" link="gi-GITypelib.html#EnumBlob.unregistered"/>
-    <keyword type="member" name="EnumBlob.storage-type" link="gi-GITypelib.html#EnumBlob.storage-type"/>
-    <keyword type="member" name="EnumBlob.reserved" link="gi-GITypelib.html#EnumBlob.reserved"/>
-    <keyword type="member" name="EnumBlob.name" link="gi-GITypelib.html#EnumBlob.name"/>
-    <keyword type="member" name="EnumBlob.gtype-name" link="gi-GITypelib.html#EnumBlob.gtype-name"/>
-    <keyword type="member" name="EnumBlob.gtype-init" link="gi-GITypelib.html#EnumBlob.gtype-init"/>
-    <keyword type="member" name="EnumBlob.n-values" link="gi-GITypelib.html#EnumBlob.n-values"/>
-    <keyword type="member" name="EnumBlob.n-methods" link="gi-GITypelib.html#EnumBlob.n-methods"/>
-    <keyword type="member" name="EnumBlob.error-domain" link="gi-GITypelib.html#EnumBlob.error-domain"/>
-    <keyword type="member" name="EnumBlob.values" link="gi-GITypelib.html#EnumBlob.values"/>
-    <keyword type="member" name="PropertyBlob.name" link="gi-GITypelib.html#PropertyBlob.name"/>
-    <keyword type="member" name="PropertyBlob.deprecated" link="gi-GITypelib.html#PropertyBlob.deprecated"/>
-    <keyword type="member" name="PropertyBlob.readable" link="gi-GITypelib.html#PropertyBlob.readable"/>
-    <keyword type="member" name="PropertyBlob.writable" link="gi-GITypelib.html#PropertyBlob.writable"/>
-    <keyword type="member" name="PropertyBlob.construct" link="gi-GITypelib.html#PropertyBlob.construct"/>
-    <keyword type="member" name="PropertyBlob.construct-only" link="gi-GITypelib.html#PropertyBlob.construct-only"/>
-    <keyword type="member" name="PropertyBlob.transfer-ownership" link="gi-GITypelib.html#PropertyBlob.transfer-ownership"/>
-    <keyword type="member" name="PropertyBlob.transfer-container-ownership" link="gi-GITypelib.html#PropertyBlob.transfer-container-ownership"/>
-    <keyword type="member" name="PropertyBlob.reserved" link="gi-GITypelib.html#PropertyBlob.reserved"/>
-    <keyword type="member" name="PropertyBlob.reserved2" link="gi-GITypelib.html#PropertyBlob.reserved2"/>
-    <keyword type="member" name="PropertyBlob.type" link="gi-GITypelib.html#PropertyBlob.type"/>
-    <keyword type="member" name="SignalBlob.deprecated" link="gi-GITypelib.html#SignalBlob.deprecated"/>
-    <keyword type="member" name="SignalBlob.run-first" link="gi-GITypelib.html#SignalBlob.run-first"/>
-    <keyword type="member" name="SignalBlob.run-last" link="gi-GITypelib.html#SignalBlob.run-last"/>
-    <keyword type="member" name="SignalBlob.run-cleanup" link="gi-GITypelib.html#SignalBlob.run-cleanup"/>
-    <keyword type="member" name="SignalBlob.no-recurse" link="gi-GITypelib.html#SignalBlob.no-recurse"/>
-    <keyword type="member" name="SignalBlob.detailed" link="gi-GITypelib.html#SignalBlob.detailed"/>
-    <keyword type="member" name="SignalBlob.action" link="gi-GITypelib.html#SignalBlob.action"/>
-    <keyword type="member" name="SignalBlob.no-hooks" link="gi-GITypelib.html#SignalBlob.no-hooks"/>
-    <keyword type="member" name="SignalBlob.has-class-closure" link="gi-GITypelib.html#SignalBlob.has-class-closure"/>
-    <keyword type="member" name="SignalBlob.true-stops-emit" link="gi-GITypelib.html#SignalBlob.true-stops-emit"/>
-    <keyword type="member" name="SignalBlob.reserved" link="gi-GITypelib.html#SignalBlob.reserved"/>
-    <keyword type="member" name="SignalBlob.class-closure" link="gi-GITypelib.html#SignalBlob.class-closure"/>
-    <keyword type="member" name="SignalBlob.name" link="gi-GITypelib.html#SignalBlob.name"/>
-    <keyword type="member" name="SignalBlob.reserved2" link="gi-GITypelib.html#SignalBlob.reserved2"/>
-    <keyword type="member" name="SignalBlob.signature" link="gi-GITypelib.html#SignalBlob.signature"/>
-    <keyword type="member" name="VFuncBlob.name" link="gi-GITypelib.html#VFuncBlob.name"/>
-    <keyword type="member" name="VFuncBlob.must-chain-up" link="gi-GITypelib.html#VFuncBlob.must-chain-up"/>
-    <keyword type="member" name="VFuncBlob.must-be-implemented" link="gi-GITypelib.html#VFuncBlob.must-be-implemented"/>
-    <keyword type="member" name="VFuncBlob.must-not-be-implemented" link="gi-GITypelib.html#VFuncBlob.must-not-be-implemented"/>
-    <keyword type="member" name="VFuncBlob.class-closure" link="gi-GITypelib.html#VFuncBlob.class-closure"/>
-    <keyword type="member" name="VFuncBlob.throws" link="gi-GITypelib.html#VFuncBlob.throws"/>
-    <keyword type="member" name="VFuncBlob.reserved" link="gi-GITypelib.html#VFuncBlob.reserved"/>
-    <keyword type="member" name="VFuncBlob.signal" link="gi-GITypelib.html#VFuncBlob.signal"/>
-    <keyword type="member" name="VFuncBlob.struct-offset" link="gi-GITypelib.html#VFuncBlob.struct-offset"/>
-    <keyword type="member" name="VFuncBlob.invoker" link="gi-GITypelib.html#VFuncBlob.invoker"/>
-    <keyword type="member" name="VFuncBlob.reserved2" link="gi-GITypelib.html#VFuncBlob.reserved2"/>
-    <keyword type="member" name="VFuncBlob.reserved3" link="gi-GITypelib.html#VFuncBlob.reserved3"/>
-    <keyword type="member" name="VFuncBlob.signature" link="gi-GITypelib.html#VFuncBlob.signature"/>
-    <keyword type="member" name="ObjectBlob.blob-type" link="gi-GITypelib.html#ObjectBlob.blob-type"/>
-    <keyword type="member" name="ObjectBlob.deprecated" link="gi-GITypelib.html#ObjectBlob.deprecated"/>
-    <keyword type="member" name="ObjectBlob.abstract" link="gi-GITypelib.html#ObjectBlob.abstract"/>
-    <keyword type="member" name="ObjectBlob.fundamental" link="gi-GITypelib.html#ObjectBlob.fundamental"/>
-    <keyword type="member" name="ObjectBlob.reserved" link="gi-GITypelib.html#ObjectBlob.reserved"/>
-    <keyword type="member" name="ObjectBlob.name" link="gi-GITypelib.html#ObjectBlob.name"/>
-    <keyword type="member" name="ObjectBlob.gtype-name" link="gi-GITypelib.html#ObjectBlob.gtype-name"/>
-    <keyword type="member" name="ObjectBlob.gtype-init" link="gi-GITypelib.html#ObjectBlob.gtype-init"/>
-    <keyword type="member" name="ObjectBlob.parent" link="gi-GITypelib.html#ObjectBlob.parent"/>
-    <keyword type="member" name="ObjectBlob.gtype-struct" link="gi-GITypelib.html#ObjectBlob.gtype-struct"/>
-    <keyword type="member" name="ObjectBlob.n-interfaces" link="gi-GITypelib.html#ObjectBlob.n-interfaces"/>
-    <keyword type="member" name="ObjectBlob.n-fields" link="gi-GITypelib.html#ObjectBlob.n-fields"/>
-    <keyword type="member" name="ObjectBlob.n-properties" link="gi-GITypelib.html#ObjectBlob.n-properties"/>
-    <keyword type="member" name="ObjectBlob.n-methods" link="gi-GITypelib.html#ObjectBlob.n-methods"/>
-    <keyword type="member" name="ObjectBlob.n-signals" link="gi-GITypelib.html#ObjectBlob.n-signals"/>
-    <keyword type="member" name="ObjectBlob.n-vfuncs" link="gi-GITypelib.html#ObjectBlob.n-vfuncs"/>
-    <keyword type="member" name="ObjectBlob.n-constants" link="gi-GITypelib.html#ObjectBlob.n-constants"/>
-    <keyword type="member" name="ObjectBlob.reserved2" link="gi-GITypelib.html#ObjectBlob.reserved2"/>
-    <keyword type="member" name="ObjectBlob.ref-func" link="gi-GITypelib.html#ObjectBlob.ref-func"/>
-    <keyword type="member" name="ObjectBlob.unref-func" link="gi-GITypelib.html#ObjectBlob.unref-func"/>
-    <keyword type="member" name="ObjectBlob.set-value-func" link="gi-GITypelib.html#ObjectBlob.set-value-func"/>
-    <keyword type="member" name="ObjectBlob.get-value-func" link="gi-GITypelib.html#ObjectBlob.get-value-func"/>
-    <keyword type="member" name="ObjectBlob.reserved3" link="gi-GITypelib.html#ObjectBlob.reserved3"/>
-    <keyword type="member" name="ObjectBlob.reserved4" link="gi-GITypelib.html#ObjectBlob.reserved4"/>
-    <keyword type="member" name="ObjectBlob.interfaces" link="gi-GITypelib.html#ObjectBlob.interfaces"/>
-    <keyword type="member" name="InterfaceBlob.blob-type" link="gi-GITypelib.html#InterfaceBlob.blob-type"/>
-    <keyword type="member" name="InterfaceBlob.deprecated" link="gi-GITypelib.html#InterfaceBlob.deprecated"/>
-    <keyword type="member" name="InterfaceBlob.reserved" link="gi-GITypelib.html#InterfaceBlob.reserved"/>
-    <keyword type="member" name="InterfaceBlob.name" link="gi-GITypelib.html#InterfaceBlob.name"/>
-    <keyword type="member" name="InterfaceBlob.gtype-name" link="gi-GITypelib.html#InterfaceBlob.gtype-name"/>
-    <keyword type="member" name="InterfaceBlob.gtype-init" link="gi-GITypelib.html#InterfaceBlob.gtype-init"/>
-    <keyword type="member" name="InterfaceBlob.gtype-struct" link="gi-GITypelib.html#InterfaceBlob.gtype-struct"/>
-    <keyword type="member" name="InterfaceBlob.n-prerequisites" link="gi-GITypelib.html#InterfaceBlob.n-prerequisites"/>
-    <keyword type="member" name="InterfaceBlob.n-properties" link="gi-GITypelib.html#InterfaceBlob.n-properties"/>
-    <keyword type="member" name="InterfaceBlob.n-methods" link="gi-GITypelib.html#InterfaceBlob.n-methods"/>
-    <keyword type="member" name="InterfaceBlob.n-signals" link="gi-GITypelib.html#InterfaceBlob.n-signals"/>
-    <keyword type="member" name="InterfaceBlob.n-vfuncs" link="gi-GITypelib.html#InterfaceBlob.n-vfuncs"/>
-    <keyword type="member" name="InterfaceBlob.n-constants" link="gi-GITypelib.html#InterfaceBlob.n-constants"/>
-    <keyword type="member" name="InterfaceBlob.padding" link="gi-GITypelib.html#InterfaceBlob.padding"/>
-    <keyword type="member" name="InterfaceBlob.reserved2" link="gi-GITypelib.html#InterfaceBlob.reserved2"/>
-    <keyword type="member" name="InterfaceBlob.reserved3" link="gi-GITypelib.html#InterfaceBlob.reserved3"/>
-    <keyword type="member" name="InterfaceBlob.prerequisites" link="gi-GITypelib.html#InterfaceBlob.prerequisites"/>
-    <keyword type="member" name="ConstantBlob.blob-type" link="gi-GITypelib.html#ConstantBlob.blob-type"/>
-    <keyword type="member" name="ConstantBlob.deprecated" link="gi-GITypelib.html#ConstantBlob.deprecated"/>
-    <keyword type="member" name="ConstantBlob.reserved" link="gi-GITypelib.html#ConstantBlob.reserved"/>
-    <keyword type="member" name="ConstantBlob.name" link="gi-GITypelib.html#ConstantBlob.name"/>
-    <keyword type="member" name="ConstantBlob.type" link="gi-GITypelib.html#ConstantBlob.type"/>
-    <keyword type="member" name="ConstantBlob.size" link="gi-GITypelib.html#ConstantBlob.size"/>
-    <keyword type="member" name="ConstantBlob.offset" link="gi-GITypelib.html#ConstantBlob.offset"/>
-    <keyword type="member" name="ConstantBlob.reserved2" link="gi-GITypelib.html#ConstantBlob.reserved2"/>
-    <keyword type="member" name="AttributeBlob.offset" link="gi-GITypelib.html#AttributeBlob.offset"/>
-    <keyword type="member" name="AttributeBlob.name" link="gi-GITypelib.html#AttributeBlob.name"/>
-    <keyword type="member" name="AttributeBlob.value" link="gi-GITypelib.html#AttributeBlob.value"/>
-    <keyword type="member" name="GIFunctionInvoker.cif" link="gi-girffi.html#GIFunctionInvoker.cif"/>
-    <keyword type="member" name="GIFunctionInvoker.native-address" link="gi-girffi.html#GIFunctionInvoker.native-address"/>
   </functions>
 </book>
index d018d5a..9de93fc 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Part II. API Reference: GObject Introspection Reference Manual</title>
+<title>Part II. API Reference</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="gi-programming.html" title="Writing introspected libraries">
 <link rel="next" href="ch01.html" title="GIRepository">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="gi-programming.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="ch01.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="gi-programming.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="ch01.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="part">
 <div class="titlepage"><div><div><h1 class="title">
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
index 9346b33..1700361 100644 (file)
Binary files a/docs/reference/html/home.png and b/docs/reference/html/home.png differ
index ed94253..19b0b0c 100644 (file)
@@ -2,11 +2,11 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>GObject Introspection Reference Manual: GObject Introspection Reference Manual</title>
+<title>GObject Introspection Reference Manual</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="next" href="overview.html" title="Part I. GObject-Introspection Overview">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GObject Introspection Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      This document is for GObject Introspection version 1.46.0
+      This document is for GObject Introspection version 1.47.1
 .
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://developer.gnome.org/gi/unstable/" target="_top">http://developer.gnome.org/gi/unstable/</a>.
 </dl></div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/reference/html/index.sgml b/docs/reference/html/index.sgml
new file mode 100644 (file)
index 0000000..6776450
--- /dev/null
@@ -0,0 +1,520 @@
+<ANCHOR id="gi-building" href="gi/gi-building.html">
+<ANCHOR id="gi-buildtools" href="gi/gi-building.html#gi-buildtools">
+<ANCHOR id="dependencies" href="gi/gi-building.html#dependencies">
+<ANCHOR id="extra-configuration-options" href="gi/gi-building.html#extra-configuration-options">
+<ANCHOR id="gi-programming" href="gi/gi-programming.html">
+<ANCHOR id="GIRepository" href="gi/GIRepository.html">
+<ANCHOR id="GIRepository.synopsis" href="gi/GIRepository.html#GIRepository.synopsis">
+<ANCHOR id="GIRepository.object-hierarchy" href="gi/GIRepository.html#GIRepository.object-hierarchy">
+<ANCHOR id="GIRepository.description" href="gi/GIRepository.html#GIRepository.description">
+<ANCHOR id="GIRepository.details" href="gi/GIRepository.html#GIRepository.details">
+<ANCHOR id="GIRepository-struct" href="gi/GIRepository.html#GIRepository-struct">
+<ANCHOR id="GIRepositoryLoadFlags" href="gi/GIRepository.html#GIRepositoryLoadFlags">
+<ANCHOR id="G-IREPOSITORY-LOAD-FLAG-LAZY:CAPS" href="gi/GIRepository.html#G-IREPOSITORY-LOAD-FLAG-LAZY:CAPS">
+<ANCHOR id="g-irepository-get-default" href="gi/GIRepository.html#g-irepository-get-default">
+<ANCHOR id="g-irepository-get-dependencies" href="gi/GIRepository.html#g-irepository-get-dependencies">
+<ANCHOR id="g-irepository-get-immediate-dependencies" href="gi/GIRepository.html#g-irepository-get-immediate-dependencies">
+<ANCHOR id="g-irepository-get-loaded-namespaces" href="gi/GIRepository.html#g-irepository-get-loaded-namespaces">
+<ANCHOR id="g-irepository-get-n-infos" href="gi/GIRepository.html#g-irepository-get-n-infos">
+<ANCHOR id="g-irepository-get-info" href="gi/GIRepository.html#g-irepository-get-info">
+<ANCHOR id="g-irepository-get-option-group" href="gi/GIRepository.html#g-irepository-get-option-group">
+<ANCHOR id="g-irepository-enumerate-versions" href="gi/GIRepository.html#g-irepository-enumerate-versions">
+<ANCHOR id="g-irepository-prepend-library-path" href="gi/GIRepository.html#g-irepository-prepend-library-path">
+<ANCHOR id="g-irepository-prepend-search-path" href="gi/GIRepository.html#g-irepository-prepend-search-path">
+<ANCHOR id="g-irepository-get-search-path" href="gi/GIRepository.html#g-irepository-get-search-path">
+<ANCHOR id="g-irepository-load-typelib" href="gi/GIRepository.html#g-irepository-load-typelib">
+<ANCHOR id="g-irepository-get-typelib-path" href="gi/GIRepository.html#g-irepository-get-typelib-path">
+<ANCHOR id="g-irepository-is-registered" href="gi/GIRepository.html#g-irepository-is-registered">
+<ANCHOR id="g-irepository-require" href="gi/GIRepository.html#g-irepository-require">
+<ANCHOR id="g-irepository-require-private" href="gi/GIRepository.html#g-irepository-require-private">
+<ANCHOR id="g-irepository-get-c-prefix" href="gi/GIRepository.html#g-irepository-get-c-prefix">
+<ANCHOR id="g-irepository-get-shared-library" href="gi/GIRepository.html#g-irepository-get-shared-library">
+<ANCHOR id="g-irepository-get-version" href="gi/GIRepository.html#g-irepository-get-version">
+<ANCHOR id="g-irepository-find-by-gtype" href="gi/GIRepository.html#g-irepository-find-by-gtype">
+<ANCHOR id="g-irepository-find-by-error-domain" href="gi/GIRepository.html#g-irepository-find-by-error-domain">
+<ANCHOR id="g-irepository-find-by-name" href="gi/GIRepository.html#g-irepository-find-by-name">
+<ANCHOR id="g-irepository-dump" href="gi/GIRepository.html#g-irepository-dump">
+<ANCHOR id="gi-cclosure-marshal-generic" href="gi/GIRepository.html#gi-cclosure-marshal-generic">
+<ANCHOR id="G-IREPOSITORY-ERROR:CAPS" href="gi/GIRepository.html#G-IREPOSITORY-ERROR:CAPS">
+<ANCHOR id="GIRepositoryError" href="gi/GIRepository.html#GIRepositoryError">
+<ANCHOR id="G-IREPOSITORY-ERROR-TYPELIB-NOT-FOUND:CAPS" href="gi/GIRepository.html#G-IREPOSITORY-ERROR-TYPELIB-NOT-FOUND:CAPS">
+<ANCHOR id="G-IREPOSITORY-ERROR-NAMESPACE-MISMATCH:CAPS" href="gi/GIRepository.html#G-IREPOSITORY-ERROR-NAMESPACE-MISMATCH:CAPS">
+<ANCHOR id="G-IREPOSITORY-ERROR-NAMESPACE-VERSION-CONFLICT:CAPS" href="gi/GIRepository.html#G-IREPOSITORY-ERROR-NAMESPACE-VERSION-CONFLICT:CAPS">
+<ANCHOR id="G-IREPOSITORY-ERROR-LIBRARY-NOT-FOUND:CAPS" href="gi/GIRepository.html#G-IREPOSITORY-ERROR-LIBRARY-NOT-FOUND:CAPS">
+<ANCHOR id="gi-struct-hierarchy" href="gi/gi-struct-hierarchy.html">
+<ANCHOR id="gi-struct-hierarchy.synopsis" href="gi/gi-struct-hierarchy.html#gi-struct-hierarchy.synopsis">
+<ANCHOR id="gi-common-types" href="gi/gi-common-types.html">
+<ANCHOR id="gi-common-types.synopsis" href="gi/gi-common-types.html#gi-common-types.synopsis">
+<ANCHOR id="gi-common-types.description" href="gi/gi-common-types.html#gi-common-types.description">
+<ANCHOR id="gi-common-types.details" href="gi/gi-common-types.html#gi-common-types.details">
+<ANCHOR id="GIArgument" href="gi/gi-common-types.html#GIArgument">
+<ANCHOR id="GIUnresolvedInfo" href="gi/gi-common-types.html#GIUnresolvedInfo">
+<ANCHOR id="GITypeTag" href="gi/gi-common-types.html#GITypeTag">
+<ANCHOR id="GI-TYPE-TAG-VOID:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-VOID:CAPS">
+<ANCHOR id="GI-TYPE-TAG-BOOLEAN:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-BOOLEAN:CAPS">
+<ANCHOR id="GI-TYPE-TAG-INT8:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-INT8:CAPS">
+<ANCHOR id="GI-TYPE-TAG-UINT8:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-UINT8:CAPS">
+<ANCHOR id="GI-TYPE-TAG-INT16:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-INT16:CAPS">
+<ANCHOR id="GI-TYPE-TAG-UINT16:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-UINT16:CAPS">
+<ANCHOR id="GI-TYPE-TAG-INT32:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-INT32:CAPS">
+<ANCHOR id="GI-TYPE-TAG-UINT32:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-UINT32:CAPS">
+<ANCHOR id="GI-TYPE-TAG-INT64:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-INT64:CAPS">
+<ANCHOR id="GI-TYPE-TAG-UINT64:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-UINT64:CAPS">
+<ANCHOR id="GI-TYPE-TAG-FLOAT:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-FLOAT:CAPS">
+<ANCHOR id="GI-TYPE-TAG-DOUBLE:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-DOUBLE:CAPS">
+<ANCHOR id="GI-TYPE-TAG-GTYPE:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-GTYPE:CAPS">
+<ANCHOR id="GI-TYPE-TAG-UTF8:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-UTF8:CAPS">
+<ANCHOR id="GI-TYPE-TAG-FILENAME:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-FILENAME:CAPS">
+<ANCHOR id="GI-TYPE-TAG-ARRAY:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-ARRAY:CAPS">
+<ANCHOR id="GI-TYPE-TAG-INTERFACE:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-INTERFACE:CAPS">
+<ANCHOR id="GI-TYPE-TAG-GLIST:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-GLIST:CAPS">
+<ANCHOR id="GI-TYPE-TAG-GSLIST:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-GSLIST:CAPS">
+<ANCHOR id="GI-TYPE-TAG-GHASH:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-GHASH:CAPS">
+<ANCHOR id="GI-TYPE-TAG-ERROR:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-ERROR:CAPS">
+<ANCHOR id="GI-TYPE-TAG-UNICHAR:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-UNICHAR:CAPS">
+<ANCHOR id="GIArrayType" href="gi/gi-common-types.html#GIArrayType">
+<ANCHOR id="GI-ARRAY-TYPE-C:CAPS" href="gi/gi-common-types.html#GI-ARRAY-TYPE-C:CAPS">
+<ANCHOR id="GI-ARRAY-TYPE-ARRAY:CAPS" href="gi/gi-common-types.html#GI-ARRAY-TYPE-ARRAY:CAPS">
+<ANCHOR id="GI-ARRAY-TYPE-PTR-ARRAY:CAPS" href="gi/gi-common-types.html#GI-ARRAY-TYPE-PTR-ARRAY:CAPS">
+<ANCHOR id="GI-ARRAY-TYPE-BYTE-ARRAY:CAPS" href="gi/gi-common-types.html#GI-ARRAY-TYPE-BYTE-ARRAY:CAPS">
+<ANCHOR id="GI-TYPE-TAG-N-TYPES:CAPS" href="gi/gi-common-types.html#GI-TYPE-TAG-N-TYPES:CAPS">
+<ANCHOR id="G-TYPE-TAG-IS-BASIC:CAPS" href="gi/gi-common-types.html#G-TYPE-TAG-IS-BASIC:CAPS">
+<ANCHOR id="gi-GIBaseInfo" href="gi/gi-GIBaseInfo.html">
+<ANCHOR id="gi-GIBaseInfo.synopsis" href="gi/gi-GIBaseInfo.html#gi-GIBaseInfo.synopsis">
+<ANCHOR id="gi-GIBaseInfo.description" href="gi/gi-GIBaseInfo.html#gi-GIBaseInfo.description">
+<ANCHOR id="gi-gibaseinfo.struct-hierarchy" href="gi/gi-GIBaseInfo.html#gi-gibaseinfo.struct-hierarchy">
+<ANCHOR id="gi-GIBaseInfo.details" href="gi/gi-GIBaseInfo.html#gi-GIBaseInfo.details">
+<ANCHOR id="GIInfoType" href="gi/gi-GIBaseInfo.html#GIInfoType">
+<ANCHOR id="GI-INFO-TYPE-INVALID:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-INVALID:CAPS">
+<ANCHOR id="GI-INFO-TYPE-FUNCTION:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-FUNCTION:CAPS">
+<ANCHOR id="GI-INFO-TYPE-CALLBACK:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-CALLBACK:CAPS">
+<ANCHOR id="GI-INFO-TYPE-STRUCT:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-STRUCT:CAPS">
+<ANCHOR id="GI-INFO-TYPE-BOXED:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-BOXED:CAPS">
+<ANCHOR id="GI-INFO-TYPE-ENUM:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-ENUM:CAPS">
+<ANCHOR id="GI-INFO-TYPE-FLAGS:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-FLAGS:CAPS">
+<ANCHOR id="GI-INFO-TYPE-OBJECT:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-OBJECT:CAPS">
+<ANCHOR id="GI-INFO-TYPE-INTERFACE:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-INTERFACE:CAPS">
+<ANCHOR id="GI-INFO-TYPE-CONSTANT:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-CONSTANT:CAPS">
+<ANCHOR id="GI-INFO-TYPE-INVALID-0:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-INVALID-0:CAPS">
+<ANCHOR id="GI-INFO-TYPE-UNION:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-UNION:CAPS">
+<ANCHOR id="GI-INFO-TYPE-VALUE:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-VALUE:CAPS">
+<ANCHOR id="GI-INFO-TYPE-SIGNAL:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-SIGNAL:CAPS">
+<ANCHOR id="GI-INFO-TYPE-VFUNC:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-VFUNC:CAPS">
+<ANCHOR id="GI-INFO-TYPE-PROPERTY:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-PROPERTY:CAPS">
+<ANCHOR id="GI-INFO-TYPE-FIELD:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-FIELD:CAPS">
+<ANCHOR id="GI-INFO-TYPE-ARG:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-ARG:CAPS">
+<ANCHOR id="GI-INFO-TYPE-TYPE:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-TYPE:CAPS">
+<ANCHOR id="GI-INFO-TYPE-UNRESOLVED:CAPS" href="gi/gi-GIBaseInfo.html#GI-INFO-TYPE-UNRESOLVED:CAPS">
+<ANCHOR id="GIAttributeIter" href="gi/gi-GIBaseInfo.html#GIAttributeIter">
+<ANCHOR id="g-info-new" href="gi/gi-GIBaseInfo.html#g-info-new">
+<ANCHOR id="g-base-info-ref" href="gi/gi-GIBaseInfo.html#g-base-info-ref">
+<ANCHOR id="g-base-info-unref" href="gi/gi-GIBaseInfo.html#g-base-info-unref">
+<ANCHOR id="g-base-info-equal" href="gi/gi-GIBaseInfo.html#g-base-info-equal">
+<ANCHOR id="g-base-info-get-type" href="gi/gi-GIBaseInfo.html#g-base-info-get-type">
+<ANCHOR id="g-base-info-get-typelib" href="gi/gi-GIBaseInfo.html#g-base-info-get-typelib">
+<ANCHOR id="g-base-info-get-namespace" href="gi/gi-GIBaseInfo.html#g-base-info-get-namespace">
+<ANCHOR id="g-base-info-get-name" href="gi/gi-GIBaseInfo.html#g-base-info-get-name">
+<ANCHOR id="g-base-info-get-attribute" href="gi/gi-GIBaseInfo.html#g-base-info-get-attribute">
+<ANCHOR id="g-base-info-iterate-attributes" href="gi/gi-GIBaseInfo.html#g-base-info-iterate-attributes">
+<ANCHOR id="g-base-info-get-container" href="gi/gi-GIBaseInfo.html#g-base-info-get-container">
+<ANCHOR id="g-base-info-is-deprecated" href="gi/gi-GIBaseInfo.html#g-base-info-is-deprecated">
+<ANCHOR id="gi-GICallableInfo" href="gi/gi-GICallableInfo.html">
+<ANCHOR id="gi-GICallableInfo.synopsis" href="gi/gi-GICallableInfo.html#gi-GICallableInfo.synopsis">
+<ANCHOR id="gi-GICallableInfo.description" href="gi/gi-GICallableInfo.html#gi-GICallableInfo.description">
+<ANCHOR id="gi-gicallableinfo.struct-hierarchy" href="gi/gi-GICallableInfo.html#gi-gicallableinfo.struct-hierarchy">
+<ANCHOR id="gi-GICallableInfo.details" href="gi/gi-GICallableInfo.html#gi-GICallableInfo.details">
+<ANCHOR id="GI-IS-CALLABLE-INFO:CAPS" href="gi/gi-GICallableInfo.html#GI-IS-CALLABLE-INFO:CAPS">
+<ANCHOR id="GICallableInfo" href="gi/gi-GICallableInfo.html#GICallableInfo">
+<ANCHOR id="g-callable-info-can-throw-gerror" href="gi/gi-GICallableInfo.html#g-callable-info-can-throw-gerror">
+<ANCHOR id="g-callable-info-get-n-args" href="gi/gi-GICallableInfo.html#g-callable-info-get-n-args">
+<ANCHOR id="g-callable-info-get-arg" href="gi/gi-GICallableInfo.html#g-callable-info-get-arg">
+<ANCHOR id="g-callable-info-get-caller-owns" href="gi/gi-GICallableInfo.html#g-callable-info-get-caller-owns">
+<ANCHOR id="g-callable-info-get-return-attribute" href="gi/gi-GICallableInfo.html#g-callable-info-get-return-attribute">
+<ANCHOR id="g-callable-info-get-return-type" href="gi/gi-GICallableInfo.html#g-callable-info-get-return-type">
+<ANCHOR id="g-callable-info-invoke" href="gi/gi-GICallableInfo.html#g-callable-info-invoke">
+<ANCHOR id="g-callable-info-is-method" href="gi/gi-GICallableInfo.html#g-callable-info-is-method">
+<ANCHOR id="g-callable-info-iterate-return-attributes" href="gi/gi-GICallableInfo.html#g-callable-info-iterate-return-attributes">
+<ANCHOR id="g-callable-info-load-arg" href="gi/gi-GICallableInfo.html#g-callable-info-load-arg">
+<ANCHOR id="g-callable-info-load-return-type" href="gi/gi-GICallableInfo.html#g-callable-info-load-return-type">
+<ANCHOR id="g-callable-info-may-return-null" href="gi/gi-GICallableInfo.html#g-callable-info-may-return-null">
+<ANCHOR id="g-callable-info-skip-return" href="gi/gi-GICallableInfo.html#g-callable-info-skip-return">
+<ANCHOR id="gi-GIFunctionInfo" href="gi/gi-GIFunctionInfo.html">
+<ANCHOR id="gi-GIFunctionInfo.synopsis" href="gi/gi-GIFunctionInfo.html#gi-GIFunctionInfo.synopsis">
+<ANCHOR id="gi-GIFunctionInfo.description" href="gi/gi-GIFunctionInfo.html#gi-GIFunctionInfo.description">
+<ANCHOR id="gi-gifunctioninfo.struct-hierarchy" href="gi/gi-GIFunctionInfo.html#gi-gifunctioninfo.struct-hierarchy">
+<ANCHOR id="gi-GIFunctionInfo.details" href="gi/gi-GIFunctionInfo.html#gi-GIFunctionInfo.details">
+<ANCHOR id="GI-IS-FUNCTION-INFO:CAPS" href="gi/gi-GIFunctionInfo.html#GI-IS-FUNCTION-INFO:CAPS">
+<ANCHOR id="GIFunctionInfo" href="gi/gi-GIFunctionInfo.html#GIFunctionInfo">
+<ANCHOR id="GIFunctionInfoFlags" href="gi/gi-GIFunctionInfo.html#GIFunctionInfoFlags">
+<ANCHOR id="GI-FUNCTION-IS-METHOD:CAPS" href="gi/gi-GIFunctionInfo.html#GI-FUNCTION-IS-METHOD:CAPS">
+<ANCHOR id="GI-FUNCTION-IS-CONSTRUCTOR:CAPS" href="gi/gi-GIFunctionInfo.html#GI-FUNCTION-IS-CONSTRUCTOR:CAPS">
+<ANCHOR id="GI-FUNCTION-IS-GETTER:CAPS" href="gi/gi-GIFunctionInfo.html#GI-FUNCTION-IS-GETTER:CAPS">
+<ANCHOR id="GI-FUNCTION-IS-SETTER:CAPS" href="gi/gi-GIFunctionInfo.html#GI-FUNCTION-IS-SETTER:CAPS">
+<ANCHOR id="GI-FUNCTION-WRAPS-VFUNC:CAPS" href="gi/gi-GIFunctionInfo.html#GI-FUNCTION-WRAPS-VFUNC:CAPS">
+<ANCHOR id="GI-FUNCTION-THROWS:CAPS" href="gi/gi-GIFunctionInfo.html#GI-FUNCTION-THROWS:CAPS">
+<ANCHOR id="g-function-info-get-flags" href="gi/gi-GIFunctionInfo.html#g-function-info-get-flags">
+<ANCHOR id="g-function-info-get-property" href="gi/gi-GIFunctionInfo.html#g-function-info-get-property">
+<ANCHOR id="g-function-info-get-symbol" href="gi/gi-GIFunctionInfo.html#g-function-info-get-symbol">
+<ANCHOR id="g-function-info-get-vfunc" href="gi/gi-GIFunctionInfo.html#g-function-info-get-vfunc">
+<ANCHOR id="g-function-info-invoke" href="gi/gi-GIFunctionInfo.html#g-function-info-invoke">
+<ANCHOR id="G-INVOKE-ERROR:CAPS" href="gi/gi-GIFunctionInfo.html#G-INVOKE-ERROR:CAPS">
+<ANCHOR id="g-invoke-error-quark" href="gi/gi-GIFunctionInfo.html#g-invoke-error-quark">
+<ANCHOR id="GInvokeError" href="gi/gi-GIFunctionInfo.html#GInvokeError">
+<ANCHOR id="G-INVOKE-ERROR-FAILED:CAPS" href="gi/gi-GIFunctionInfo.html#G-INVOKE-ERROR-FAILED:CAPS">
+<ANCHOR id="G-INVOKE-ERROR-SYMBOL-NOT-FOUND:CAPS" href="gi/gi-GIFunctionInfo.html#G-INVOKE-ERROR-SYMBOL-NOT-FOUND:CAPS">
+<ANCHOR id="G-INVOKE-ERROR-ARGUMENT-MISMATCH:CAPS" href="gi/gi-GIFunctionInfo.html#G-INVOKE-ERROR-ARGUMENT-MISMATCH:CAPS">
+<ANCHOR id="gi-GICallbackInfo" href="gi/gi-GICallbackInfo.html">
+<ANCHOR id="gi-GICallbackInfo.synopsis" href="gi/gi-GICallbackInfo.html#gi-GICallbackInfo.synopsis">
+<ANCHOR id="gi-GICallbackInfo.description" href="gi/gi-GICallbackInfo.html#gi-GICallbackInfo.description">
+<ANCHOR id="gi-gicallbackinfo.struct-hierarchy" href="gi/gi-GICallbackInfo.html#gi-gicallbackinfo.struct-hierarchy">
+<ANCHOR id="gi-GICallbackInfo.details" href="gi/gi-GICallbackInfo.html#gi-GICallbackInfo.details">
+<ANCHOR id="GICallbackInfo" href="gi/gi-GICallbackInfo.html#GICallbackInfo">
+<ANCHOR id="gi-GISignalInfo" href="gi/gi-GISignalInfo.html">
+<ANCHOR id="gi-GISignalInfo.synopsis" href="gi/gi-GISignalInfo.html#gi-GISignalInfo.synopsis">
+<ANCHOR id="gi-GISignalInfo.description" href="gi/gi-GISignalInfo.html#gi-GISignalInfo.description">
+<ANCHOR id="gi-gisignalinfo.struct-hierarchy" href="gi/gi-GISignalInfo.html#gi-gisignalinfo.struct-hierarchy">
+<ANCHOR id="gi-GISignalInfo.details" href="gi/gi-GISignalInfo.html#gi-GISignalInfo.details">
+<ANCHOR id="GI-IS-SIGNAL-INFO:CAPS" href="gi/gi-GISignalInfo.html#GI-IS-SIGNAL-INFO:CAPS">
+<ANCHOR id="GISignalInfo" href="gi/gi-GISignalInfo.html#GISignalInfo">
+<ANCHOR id="g-signal-info-get-flags" href="gi/gi-GISignalInfo.html#g-signal-info-get-flags">
+<ANCHOR id="g-signal-info-get-class-closure" href="gi/gi-GISignalInfo.html#g-signal-info-get-class-closure">
+<ANCHOR id="g-signal-info-true-stops-emit" href="gi/gi-GISignalInfo.html#g-signal-info-true-stops-emit">
+<ANCHOR id="gi-GIVFuncInfo" href="gi/gi-GIVFuncInfo.html">
+<ANCHOR id="gi-GIVFuncInfo.synopsis" href="gi/gi-GIVFuncInfo.html#gi-GIVFuncInfo.synopsis">
+<ANCHOR id="gi-GIVFuncInfo.description" href="gi/gi-GIVFuncInfo.html#gi-GIVFuncInfo.description">
+<ANCHOR id="gi-givfuncinfo.struct-hierarchy" href="gi/gi-GIVFuncInfo.html#gi-givfuncinfo.struct-hierarchy">
+<ANCHOR id="gi-GIVFuncInfo.details" href="gi/gi-GIVFuncInfo.html#gi-GIVFuncInfo.details">
+<ANCHOR id="GIVFuncInfo" href="gi/gi-GIVFuncInfo.html#GIVFuncInfo">
+<ANCHOR id="GIVFuncInfoFlags" href="gi/gi-GIVFuncInfo.html#GIVFuncInfoFlags">
+<ANCHOR id="GI-VFUNC-MUST-CHAIN-UP:CAPS" href="gi/gi-GIVFuncInfo.html#GI-VFUNC-MUST-CHAIN-UP:CAPS">
+<ANCHOR id="GI-VFUNC-MUST-OVERRIDE:CAPS" href="gi/gi-GIVFuncInfo.html#GI-VFUNC-MUST-OVERRIDE:CAPS">
+<ANCHOR id="GI-VFUNC-MUST-NOT-OVERRIDE:CAPS" href="gi/gi-GIVFuncInfo.html#GI-VFUNC-MUST-NOT-OVERRIDE:CAPS">
+<ANCHOR id="GI-VFUNC-THROWS:CAPS" href="gi/gi-GIVFuncInfo.html#GI-VFUNC-THROWS:CAPS">
+<ANCHOR id="g-vfunc-info-get-flags" href="gi/gi-GIVFuncInfo.html#g-vfunc-info-get-flags">
+<ANCHOR id="g-vfunc-info-get-offset" href="gi/gi-GIVFuncInfo.html#g-vfunc-info-get-offset">
+<ANCHOR id="g-vfunc-info-get-signal" href="gi/gi-GIVFuncInfo.html#g-vfunc-info-get-signal">
+<ANCHOR id="g-vfunc-info-get-invoker" href="gi/gi-GIVFuncInfo.html#g-vfunc-info-get-invoker">
+<ANCHOR id="g-vfunc-info-get-address" href="gi/gi-GIVFuncInfo.html#g-vfunc-info-get-address">
+<ANCHOR id="g-vfunc-info-invoke" href="gi/gi-GIVFuncInfo.html#g-vfunc-info-invoke">
+<ANCHOR id="gi-GIRegisteredTypeInfo" href="gi/gi-GIRegisteredTypeInfo.html">
+<ANCHOR id="gi-GIRegisteredTypeInfo.synopsis" href="gi/gi-GIRegisteredTypeInfo.html#gi-GIRegisteredTypeInfo.synopsis">
+<ANCHOR id="gi-GIRegisteredTypeInfo.description" href="gi/gi-GIRegisteredTypeInfo.html#gi-GIRegisteredTypeInfo.description">
+<ANCHOR id="gi-giregisteredtypeinfo.struct-hierarchy" href="gi/gi-GIRegisteredTypeInfo.html#gi-giregisteredtypeinfo.struct-hierarchy">
+<ANCHOR id="gi-GIRegisteredTypeInfo.details" href="gi/gi-GIRegisteredTypeInfo.html#gi-GIRegisteredTypeInfo.details">
+<ANCHOR id="GI-IS-REGISTERED-TYPE-INFO:CAPS" href="gi/gi-GIRegisteredTypeInfo.html#GI-IS-REGISTERED-TYPE-INFO:CAPS">
+<ANCHOR id="GIRegisteredTypeInfo" href="gi/gi-GIRegisteredTypeInfo.html#GIRegisteredTypeInfo">
+<ANCHOR id="g-registered-type-info-get-type-name" href="gi/gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-name">
+<ANCHOR id="g-registered-type-info-get-type-init" href="gi/gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-type-init">
+<ANCHOR id="g-registered-type-info-get-g-type" href="gi/gi-GIRegisteredTypeInfo.html#g-registered-type-info-get-g-type">
+<ANCHOR id="gi-GIEnumInfo" href="gi/gi-GIEnumInfo.html">
+<ANCHOR id="gi-GIEnumInfo.synopsis" href="gi/gi-GIEnumInfo.html#gi-GIEnumInfo.synopsis">
+<ANCHOR id="gi-GIEnumInfo.description" href="gi/gi-GIEnumInfo.html#gi-GIEnumInfo.description">
+<ANCHOR id="gi-gienuminfo.struct-hierarchy" href="gi/gi-GIEnumInfo.html#gi-gienuminfo.struct-hierarchy">
+<ANCHOR id="gi-GIEnumInfo.details" href="gi/gi-GIEnumInfo.html#gi-GIEnumInfo.details">
+<ANCHOR id="GI-IS-ENUM-INFO:CAPS" href="gi/gi-GIEnumInfo.html#GI-IS-ENUM-INFO:CAPS">
+<ANCHOR id="GI-IS-VALUE-INFO:CAPS" href="gi/gi-GIEnumInfo.html#GI-IS-VALUE-INFO:CAPS">
+<ANCHOR id="GIEnumInfo" href="gi/gi-GIEnumInfo.html#GIEnumInfo">
+<ANCHOR id="g-enum-info-get-n-values" href="gi/gi-GIEnumInfo.html#g-enum-info-get-n-values">
+<ANCHOR id="g-enum-info-get-value" href="gi/gi-GIEnumInfo.html#g-enum-info-get-value">
+<ANCHOR id="g-enum-info-get-n-methods" href="gi/gi-GIEnumInfo.html#g-enum-info-get-n-methods">
+<ANCHOR id="g-enum-info-get-method" href="gi/gi-GIEnumInfo.html#g-enum-info-get-method">
+<ANCHOR id="g-enum-info-get-storage-type" href="gi/gi-GIEnumInfo.html#g-enum-info-get-storage-type">
+<ANCHOR id="g-enum-info-get-error-domain" href="gi/gi-GIEnumInfo.html#g-enum-info-get-error-domain">
+<ANCHOR id="g-value-info-get-value" href="gi/gi-GIEnumInfo.html#g-value-info-get-value">
+<ANCHOR id="gi-GIStructInfo" href="gi/gi-GIStructInfo.html">
+<ANCHOR id="gi-GIStructInfo.synopsis" href="gi/gi-GIStructInfo.html#gi-GIStructInfo.synopsis">
+<ANCHOR id="gi-GIStructInfo.description" href="gi/gi-GIStructInfo.html#gi-GIStructInfo.description">
+<ANCHOR id="gi-giobjectinfo.struct-hierarchy" href="gi/gi-GIStructInfo.html#gi-giobjectinfo.struct-hierarchy">
+<ANCHOR id="gi-GIStructInfo.details" href="gi/gi-GIStructInfo.html#gi-GIStructInfo.details">
+<ANCHOR id="GI-IS-STRUCT-INFO:CAPS" href="gi/gi-GIStructInfo.html#GI-IS-STRUCT-INFO:CAPS">
+<ANCHOR id="GIStructInfo" href="gi/gi-GIStructInfo.html#GIStructInfo">
+<ANCHOR id="g-struct-info-get-alignment" href="gi/gi-GIStructInfo.html#g-struct-info-get-alignment">
+<ANCHOR id="g-struct-info-get-size" href="gi/gi-GIStructInfo.html#g-struct-info-get-size">
+<ANCHOR id="g-struct-info-is-gtype-struct" href="gi/gi-GIStructInfo.html#g-struct-info-is-gtype-struct">
+<ANCHOR id="g-struct-info-is-foreign" href="gi/gi-GIStructInfo.html#g-struct-info-is-foreign">
+<ANCHOR id="g-struct-info-get-n-fields" href="gi/gi-GIStructInfo.html#g-struct-info-get-n-fields">
+<ANCHOR id="g-struct-info-get-field" href="gi/gi-GIStructInfo.html#g-struct-info-get-field">
+<ANCHOR id="g-struct-info-get-n-methods" href="gi/gi-GIStructInfo.html#g-struct-info-get-n-methods">
+<ANCHOR id="g-struct-info-get-method" href="gi/gi-GIStructInfo.html#g-struct-info-get-method">
+<ANCHOR id="g-struct-info-find-method" href="gi/gi-GIStructInfo.html#g-struct-info-find-method">
+<ANCHOR id="gi-GIUnionInfo" href="gi/gi-GIUnionInfo.html">
+<ANCHOR id="gi-GIUnionInfo.synopsis" href="gi/gi-GIUnionInfo.html#gi-GIUnionInfo.synopsis">
+<ANCHOR id="gi-GIUnionInfo.description" href="gi/gi-GIUnionInfo.html#gi-GIUnionInfo.description">
+<ANCHOR id="gi-giobjectinfo.struct-hierarchy" href="gi/gi-GIUnionInfo.html#gi-giobjectinfo.struct-hierarchy">
+<ANCHOR id="gi-GIUnionInfo.details" href="gi/gi-GIUnionInfo.html#gi-GIUnionInfo.details">
+<ANCHOR id="GIUnionInfo" href="gi/gi-GIUnionInfo.html#GIUnionInfo">
+<ANCHOR id="g-union-info-get-n-fields" href="gi/gi-GIUnionInfo.html#g-union-info-get-n-fields">
+<ANCHOR id="g-union-info-get-field" href="gi/gi-GIUnionInfo.html#g-union-info-get-field">
+<ANCHOR id="g-union-info-get-n-methods" href="gi/gi-GIUnionInfo.html#g-union-info-get-n-methods">
+<ANCHOR id="g-union-info-get-method" href="gi/gi-GIUnionInfo.html#g-union-info-get-method">
+<ANCHOR id="g-union-info-is-discriminated" href="gi/gi-GIUnionInfo.html#g-union-info-is-discriminated">
+<ANCHOR id="g-union-info-get-discriminator-offset" href="gi/gi-GIUnionInfo.html#g-union-info-get-discriminator-offset">
+<ANCHOR id="g-union-info-get-discriminator-type" href="gi/gi-GIUnionInfo.html#g-union-info-get-discriminator-type">
+<ANCHOR id="g-union-info-get-discriminator" href="gi/gi-GIUnionInfo.html#g-union-info-get-discriminator">
+<ANCHOR id="g-union-info-find-method" href="gi/gi-GIUnionInfo.html#g-union-info-find-method">
+<ANCHOR id="g-union-info-get-size" href="gi/gi-GIUnionInfo.html#g-union-info-get-size">
+<ANCHOR id="g-union-info-get-alignment" href="gi/gi-GIUnionInfo.html#g-union-info-get-alignment">
+<ANCHOR id="gi-GIObjectInfo" href="gi/gi-GIObjectInfo.html">
+<ANCHOR id="gi-GIObjectInfo.synopsis" href="gi/gi-GIObjectInfo.html#gi-GIObjectInfo.synopsis">
+<ANCHOR id="gi-GIObjectInfo.description" href="gi/gi-GIObjectInfo.html#gi-GIObjectInfo.description">
+<ANCHOR id="gi-giobjectinfo.struct-hierarchy" href="gi/gi-GIObjectInfo.html#gi-giobjectinfo.struct-hierarchy">
+<ANCHOR id="gi-GIObjectInfo.details" href="gi/gi-GIObjectInfo.html#gi-GIObjectInfo.details">
+<ANCHOR id="GI-IS-OBJECT-INFO:CAPS" href="gi/gi-GIObjectInfo.html#GI-IS-OBJECT-INFO:CAPS">
+<ANCHOR id="GIObjectInfo" href="gi/gi-GIObjectInfo.html#GIObjectInfo">
+<ANCHOR id="g-object-info-get-abstract" href="gi/gi-GIObjectInfo.html#g-object-info-get-abstract">
+<ANCHOR id="g-object-info-get-fundamental" href="gi/gi-GIObjectInfo.html#g-object-info-get-fundamental">
+<ANCHOR id="g-object-info-get-parent" href="gi/gi-GIObjectInfo.html#g-object-info-get-parent">
+<ANCHOR id="g-object-info-get-type-name" href="gi/gi-GIObjectInfo.html#g-object-info-get-type-name">
+<ANCHOR id="g-object-info-get-type-init" href="gi/gi-GIObjectInfo.html#g-object-info-get-type-init">
+<ANCHOR id="g-object-info-get-n-constants" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-constants">
+<ANCHOR id="g-object-info-get-constant" href="gi/gi-GIObjectInfo.html#g-object-info-get-constant">
+<ANCHOR id="g-object-info-get-n-fields" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-fields">
+<ANCHOR id="g-object-info-get-field" href="gi/gi-GIObjectInfo.html#g-object-info-get-field">
+<ANCHOR id="g-object-info-get-n-interfaces" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-interfaces">
+<ANCHOR id="g-object-info-get-interface" href="gi/gi-GIObjectInfo.html#g-object-info-get-interface">
+<ANCHOR id="g-object-info-get-n-methods" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-methods">
+<ANCHOR id="g-object-info-get-method" href="gi/gi-GIObjectInfo.html#g-object-info-get-method">
+<ANCHOR id="g-object-info-find-method" href="gi/gi-GIObjectInfo.html#g-object-info-find-method">
+<ANCHOR id="g-object-info-find-method-using-interfaces" href="gi/gi-GIObjectInfo.html#g-object-info-find-method-using-interfaces">
+<ANCHOR id="g-object-info-get-n-properties" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-properties">
+<ANCHOR id="g-object-info-get-property" href="gi/gi-GIObjectInfo.html#g-object-info-get-property">
+<ANCHOR id="g-object-info-get-n-signals" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-signals">
+<ANCHOR id="g-object-info-get-signal" href="gi/gi-GIObjectInfo.html#g-object-info-get-signal">
+<ANCHOR id="g-object-info-find-signal" href="gi/gi-GIObjectInfo.html#g-object-info-find-signal">
+<ANCHOR id="g-object-info-get-n-vfuncs" href="gi/gi-GIObjectInfo.html#g-object-info-get-n-vfuncs">
+<ANCHOR id="g-object-info-get-vfunc" href="gi/gi-GIObjectInfo.html#g-object-info-get-vfunc">
+<ANCHOR id="g-object-info-find-vfunc" href="gi/gi-GIObjectInfo.html#g-object-info-find-vfunc">
+<ANCHOR id="g-object-info-find-vfunc-using-interfaces" href="gi/gi-GIObjectInfo.html#g-object-info-find-vfunc-using-interfaces">
+<ANCHOR id="g-object-info-get-class-struct" href="gi/gi-GIObjectInfo.html#g-object-info-get-class-struct">
+<ANCHOR id="g-object-info-get-ref-function" href="gi/gi-GIObjectInfo.html#g-object-info-get-ref-function">
+<ANCHOR id="g-object-info-get-ref-function-pointer" href="gi/gi-GIObjectInfo.html#g-object-info-get-ref-function-pointer">
+<ANCHOR id="g-object-info-get-unref-function" href="gi/gi-GIObjectInfo.html#g-object-info-get-unref-function">
+<ANCHOR id="g-object-info-get-unref-function-pointer" href="gi/gi-GIObjectInfo.html#g-object-info-get-unref-function-pointer">
+<ANCHOR id="g-object-info-get-set-value-function" href="gi/gi-GIObjectInfo.html#g-object-info-get-set-value-function">
+<ANCHOR id="g-object-info-get-set-value-function-pointer" href="gi/gi-GIObjectInfo.html#g-object-info-get-set-value-function-pointer">
+<ANCHOR id="g-object-info-get-get-value-function" href="gi/gi-GIObjectInfo.html#g-object-info-get-get-value-function">
+<ANCHOR id="g-object-info-get-get-value-function-pointer" href="gi/gi-GIObjectInfo.html#g-object-info-get-get-value-function-pointer">
+<ANCHOR id="GIObjectInfoRefFunction" href="gi/gi-GIObjectInfo.html#GIObjectInfoRefFunction">
+<ANCHOR id="GIObjectInfoUnrefFunction" href="gi/gi-GIObjectInfo.html#GIObjectInfoUnrefFunction">
+<ANCHOR id="GIObjectInfoSetValueFunction" href="gi/gi-GIObjectInfo.html#GIObjectInfoSetValueFunction">
+<ANCHOR id="GIObjectInfoGetValueFunction" href="gi/gi-GIObjectInfo.html#GIObjectInfoGetValueFunction">
+<ANCHOR id="gi-GIInterfaceInfo" href="gi/gi-GIInterfaceInfo.html">
+<ANCHOR id="gi-GIInterfaceInfo.synopsis" href="gi/gi-GIInterfaceInfo.html#gi-GIInterfaceInfo.synopsis">
+<ANCHOR id="gi-GIInterfaceInfo.description" href="gi/gi-GIInterfaceInfo.html#gi-GIInterfaceInfo.description">
+<ANCHOR id="gi-giinterfaceinfo.struct-hierarchy" href="gi/gi-GIInterfaceInfo.html#gi-giinterfaceinfo.struct-hierarchy">
+<ANCHOR id="gi-GIInterfaceInfo.details" href="gi/gi-GIInterfaceInfo.html#gi-GIInterfaceInfo.details">
+<ANCHOR id="GI-IS-INTERFACE-INFO:CAPS" href="gi/gi-GIInterfaceInfo.html#GI-IS-INTERFACE-INFO:CAPS">
+<ANCHOR id="GIInterfaceInfo" href="gi/gi-GIInterfaceInfo.html#GIInterfaceInfo">
+<ANCHOR id="g-interface-info-get-n-prerequisites" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-n-prerequisites">
+<ANCHOR id="g-interface-info-get-prerequisite" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-prerequisite">
+<ANCHOR id="g-interface-info-get-n-properties" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-n-properties">
+<ANCHOR id="g-interface-info-get-property" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-property">
+<ANCHOR id="g-interface-info-get-n-methods" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-n-methods">
+<ANCHOR id="g-interface-info-get-method" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-method">
+<ANCHOR id="g-interface-info-find-method" href="gi/gi-GIInterfaceInfo.html#g-interface-info-find-method">
+<ANCHOR id="g-interface-info-get-n-signals" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-n-signals">
+<ANCHOR id="g-interface-info-get-signal" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-signal">
+<ANCHOR id="g-interface-info-find-signal" href="gi/gi-GIInterfaceInfo.html#g-interface-info-find-signal">
+<ANCHOR id="g-interface-info-get-n-vfuncs" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-n-vfuncs">
+<ANCHOR id="g-interface-info-get-vfunc" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-vfunc">
+<ANCHOR id="g-interface-info-find-vfunc" href="gi/gi-GIInterfaceInfo.html#g-interface-info-find-vfunc">
+<ANCHOR id="g-interface-info-get-n-constants" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-n-constants">
+<ANCHOR id="g-interface-info-get-constant" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-constant">
+<ANCHOR id="g-interface-info-get-iface-struct" href="gi/gi-GIInterfaceInfo.html#g-interface-info-get-iface-struct">
+<ANCHOR id="gi-GIArgInfo" href="gi/gi-GIArgInfo.html">
+<ANCHOR id="gi-GIArgInfo.synopsis" href="gi/gi-GIArgInfo.html#gi-GIArgInfo.synopsis">
+<ANCHOR id="gi-GIArgInfo.description" href="gi/gi-GIArgInfo.html#gi-GIArgInfo.description">
+<ANCHOR id="gi-giarginfo.struct-hierarchy" href="gi/gi-GIArgInfo.html#gi-giarginfo.struct-hierarchy">
+<ANCHOR id="gi-GIArgInfo.details" href="gi/gi-GIArgInfo.html#gi-GIArgInfo.details">
+<ANCHOR id="GI-IS-ARG-INFO:CAPS" href="gi/gi-GIArgInfo.html#GI-IS-ARG-INFO:CAPS">
+<ANCHOR id="GIArgInfo" href="gi/gi-GIArgInfo.html#GIArgInfo">
+<ANCHOR id="GIDirection" href="gi/gi-GIArgInfo.html#GIDirection">
+<ANCHOR id="GI-DIRECTION-IN:CAPS" href="gi/gi-GIArgInfo.html#GI-DIRECTION-IN:CAPS">
+<ANCHOR id="GI-DIRECTION-OUT:CAPS" href="gi/gi-GIArgInfo.html#GI-DIRECTION-OUT:CAPS">
+<ANCHOR id="GI-DIRECTION-INOUT:CAPS" href="gi/gi-GIArgInfo.html#GI-DIRECTION-INOUT:CAPS">
+<ANCHOR id="GIScopeType" href="gi/gi-GIArgInfo.html#GIScopeType">
+<ANCHOR id="GI-SCOPE-TYPE-INVALID:CAPS" href="gi/gi-GIArgInfo.html#GI-SCOPE-TYPE-INVALID:CAPS">
+<ANCHOR id="GI-SCOPE-TYPE-CALL:CAPS" href="gi/gi-GIArgInfo.html#GI-SCOPE-TYPE-CALL:CAPS">
+<ANCHOR id="GI-SCOPE-TYPE-ASYNC:CAPS" href="gi/gi-GIArgInfo.html#GI-SCOPE-TYPE-ASYNC:CAPS">
+<ANCHOR id="GI-SCOPE-TYPE-NOTIFIED:CAPS" href="gi/gi-GIArgInfo.html#GI-SCOPE-TYPE-NOTIFIED:CAPS">
+<ANCHOR id="GITransfer" href="gi/gi-GIArgInfo.html#GITransfer">
+<ANCHOR id="GI-TRANSFER-NOTHING:CAPS" href="gi/gi-GIArgInfo.html#GI-TRANSFER-NOTHING:CAPS">
+<ANCHOR id="GI-TRANSFER-CONTAINER:CAPS" href="gi/gi-GIArgInfo.html#GI-TRANSFER-CONTAINER:CAPS">
+<ANCHOR id="GI-TRANSFER-EVERYTHING:CAPS" href="gi/gi-GIArgInfo.html#GI-TRANSFER-EVERYTHING:CAPS">
+<ANCHOR id="g-arg-info-get-closure" href="gi/gi-GIArgInfo.html#g-arg-info-get-closure">
+<ANCHOR id="g-arg-info-get-destroy" href="gi/gi-GIArgInfo.html#g-arg-info-get-destroy">
+<ANCHOR id="g-arg-info-get-direction" href="gi/gi-GIArgInfo.html#g-arg-info-get-direction">
+<ANCHOR id="g-arg-info-get-ownership-transfer" href="gi/gi-GIArgInfo.html#g-arg-info-get-ownership-transfer">
+<ANCHOR id="g-arg-info-get-scope" href="gi/gi-GIArgInfo.html#g-arg-info-get-scope">
+<ANCHOR id="g-arg-info-get-type" href="gi/gi-GIArgInfo.html#g-arg-info-get-type">
+<ANCHOR id="g-arg-info-load-type" href="gi/gi-GIArgInfo.html#g-arg-info-load-type">
+<ANCHOR id="g-arg-info-may-be-null" href="gi/gi-GIArgInfo.html#g-arg-info-may-be-null">
+<ANCHOR id="g-arg-info-is-caller-allocates" href="gi/gi-GIArgInfo.html#g-arg-info-is-caller-allocates">
+<ANCHOR id="g-arg-info-is-optional" href="gi/gi-GIArgInfo.html#g-arg-info-is-optional">
+<ANCHOR id="g-arg-info-is-return-value" href="gi/gi-GIArgInfo.html#g-arg-info-is-return-value">
+<ANCHOR id="g-arg-info-is-skip" href="gi/gi-GIArgInfo.html#g-arg-info-is-skip">
+<ANCHOR id="gi-GIConstantInfo" href="gi/gi-GIConstantInfo.html">
+<ANCHOR id="gi-GIConstantInfo.synopsis" href="gi/gi-GIConstantInfo.html#gi-GIConstantInfo.synopsis">
+<ANCHOR id="gi-GIConstantInfo.description" href="gi/gi-GIConstantInfo.html#gi-GIConstantInfo.description">
+<ANCHOR id="gi-giconstantinfo.struct-hierarchy" href="gi/gi-GIConstantInfo.html#gi-giconstantinfo.struct-hierarchy">
+<ANCHOR id="gi-GIConstantInfo.details" href="gi/gi-GIConstantInfo.html#gi-GIConstantInfo.details">
+<ANCHOR id="GI-IS-CONSTANT-INFO:CAPS" href="gi/gi-GIConstantInfo.html#GI-IS-CONSTANT-INFO:CAPS">
+<ANCHOR id="GIConstantInfo" href="gi/gi-GIConstantInfo.html#GIConstantInfo">
+<ANCHOR id="g-constant-info-free-value" href="gi/gi-GIConstantInfo.html#g-constant-info-free-value">
+<ANCHOR id="g-constant-info-get-type" href="gi/gi-GIConstantInfo.html#g-constant-info-get-type">
+<ANCHOR id="g-constant-info-get-value" href="gi/gi-GIConstantInfo.html#g-constant-info-get-value">
+<ANCHOR id="gi-GIFieldInfo" href="gi/gi-GIFieldInfo.html">
+<ANCHOR id="gi-GIFieldInfo.synopsis" href="gi/gi-GIFieldInfo.html#gi-GIFieldInfo.synopsis">
+<ANCHOR id="gi-GIFieldInfo.description" href="gi/gi-GIFieldInfo.html#gi-GIFieldInfo.description">
+<ANCHOR id="gi-gifieldinfo.struct-hierarchy" href="gi/gi-GIFieldInfo.html#gi-gifieldinfo.struct-hierarchy">
+<ANCHOR id="gi-GIFieldInfo.details" href="gi/gi-GIFieldInfo.html#gi-GIFieldInfo.details">
+<ANCHOR id="GI-IS-FIELD-INFO:CAPS" href="gi/gi-GIFieldInfo.html#GI-IS-FIELD-INFO:CAPS">
+<ANCHOR id="GIFieldInfo" href="gi/gi-GIFieldInfo.html#GIFieldInfo">
+<ANCHOR id="GIFieldInfoFlags" href="gi/gi-GIFieldInfo.html#GIFieldInfoFlags">
+<ANCHOR id="GI-FIELD-IS-READABLE:CAPS" href="gi/gi-GIFieldInfo.html#GI-FIELD-IS-READABLE:CAPS">
+<ANCHOR id="GI-FIELD-IS-WRITABLE:CAPS" href="gi/gi-GIFieldInfo.html#GI-FIELD-IS-WRITABLE:CAPS">
+<ANCHOR id="g-field-info-get-field" href="gi/gi-GIFieldInfo.html#g-field-info-get-field">
+<ANCHOR id="g-field-info-set-field" href="gi/gi-GIFieldInfo.html#g-field-info-set-field">
+<ANCHOR id="g-field-info-get-flags" href="gi/gi-GIFieldInfo.html#g-field-info-get-flags">
+<ANCHOR id="g-field-info-get-offset" href="gi/gi-GIFieldInfo.html#g-field-info-get-offset">
+<ANCHOR id="g-field-info-get-size" href="gi/gi-GIFieldInfo.html#g-field-info-get-size">
+<ANCHOR id="g-field-info-get-type" href="gi/gi-GIFieldInfo.html#g-field-info-get-type">
+<ANCHOR id="gi-GIPropertyInfo" href="gi/gi-GIPropertyInfo.html">
+<ANCHOR id="gi-GIPropertyInfo.synopsis" href="gi/gi-GIPropertyInfo.html#gi-GIPropertyInfo.synopsis">
+<ANCHOR id="gi-GIPropertyInfo.description" href="gi/gi-GIPropertyInfo.html#gi-GIPropertyInfo.description">
+<ANCHOR id="gi-gipropertyinfo.struct-hierarchy" href="gi/gi-GIPropertyInfo.html#gi-gipropertyinfo.struct-hierarchy">
+<ANCHOR id="gi-GIPropertyInfo.details" href="gi/gi-GIPropertyInfo.html#gi-GIPropertyInfo.details">
+<ANCHOR id="GI-IS-PROPERTY-INFO:CAPS" href="gi/gi-GIPropertyInfo.html#GI-IS-PROPERTY-INFO:CAPS">
+<ANCHOR id="GIPropertyInfo" href="gi/gi-GIPropertyInfo.html#GIPropertyInfo">
+<ANCHOR id="g-property-info-get-flags" href="gi/gi-GIPropertyInfo.html#g-property-info-get-flags">
+<ANCHOR id="g-property-info-get-ownership-transfer" href="gi/gi-GIPropertyInfo.html#g-property-info-get-ownership-transfer">
+<ANCHOR id="g-property-info-get-type" href="gi/gi-GIPropertyInfo.html#g-property-info-get-type">
+<ANCHOR id="gi-GITypeInfo" href="gi/gi-GITypeInfo.html">
+<ANCHOR id="gi-GITypeInfo.synopsis" href="gi/gi-GITypeInfo.html#gi-GITypeInfo.synopsis">
+<ANCHOR id="gi-GITypeInfo.description" href="gi/gi-GITypeInfo.html#gi-GITypeInfo.description">
+<ANCHOR id="gi-gitypeinfo.struct-hierarchy" href="gi/gi-GITypeInfo.html#gi-gitypeinfo.struct-hierarchy">
+<ANCHOR id="gi-GITypeInfo.details" href="gi/gi-GITypeInfo.html#gi-GITypeInfo.details">
+<ANCHOR id="GI-IS-TYPE-INFO:CAPS" href="gi/gi-GITypeInfo.html#GI-IS-TYPE-INFO:CAPS">
+<ANCHOR id="GITypeInfo" href="gi/gi-GITypeInfo.html#GITypeInfo">
+<ANCHOR id="g-type-tag-to-string" href="gi/gi-GITypeInfo.html#g-type-tag-to-string">
+<ANCHOR id="g-info-type-to-string" href="gi/gi-GITypeInfo.html#g-info-type-to-string">
+<ANCHOR id="g-type-info-is-pointer" href="gi/gi-GITypeInfo.html#g-type-info-is-pointer">
+<ANCHOR id="g-type-info-get-tag" href="gi/gi-GITypeInfo.html#g-type-info-get-tag">
+<ANCHOR id="g-type-info-get-param-type" href="gi/gi-GITypeInfo.html#g-type-info-get-param-type">
+<ANCHOR id="g-type-info-get-interface" href="gi/gi-GITypeInfo.html#g-type-info-get-interface">
+<ANCHOR id="g-type-info-get-array-length" href="gi/gi-GITypeInfo.html#g-type-info-get-array-length">
+<ANCHOR id="g-type-info-get-array-fixed-size" href="gi/gi-GITypeInfo.html#g-type-info-get-array-fixed-size">
+<ANCHOR id="g-type-info-is-zero-terminated" href="gi/gi-GITypeInfo.html#g-type-info-is-zero-terminated">
+<ANCHOR id="g-type-info-get-array-type" href="gi/gi-GITypeInfo.html#g-type-info-get-array-type">
+<ANCHOR id="gi-GIValueInfo" href="gi/gi-GIValueInfo.html">
+<ANCHOR id="gi-GIValueInfo.synopsis" href="gi/gi-GIValueInfo.html#gi-GIValueInfo.synopsis">
+<ANCHOR id="gi-GIValueInfo.description" href="gi/gi-GIValueInfo.html#gi-GIValueInfo.description">
+<ANCHOR id="gi-givalueinfo.struct-hierarchy" href="gi/gi-GIValueInfo.html#gi-givalueinfo.struct-hierarchy">
+<ANCHOR id="gi-GIValueInfo.details" href="gi/gi-GIValueInfo.html#gi-GIValueInfo.details">
+<ANCHOR id="GIValueInfo" href="gi/gi-GIValueInfo.html#GIValueInfo">
+<ANCHOR id="gi-gitypelib" href="gi/gi-gitypelib.html">
+<ANCHOR id="gi-gitypelib.synopsis" href="gi/gi-gitypelib.html#gi-gitypelib.synopsis">
+<ANCHOR id="gi-gitypelib.description" href="gi/gi-gitypelib.html#gi-gitypelib.description">
+<ANCHOR id="gi-gitypelib.details" href="gi/gi-gitypelib.html#gi-gitypelib.details">
+<ANCHOR id="g-typelib-new-from-memory" href="gi/gi-gitypelib.html#g-typelib-new-from-memory">
+<ANCHOR id="g-typelib-new-from-const-memory" href="gi/gi-gitypelib.html#g-typelib-new-from-const-memory">
+<ANCHOR id="g-typelib-new-from-mapped-file" href="gi/gi-gitypelib.html#g-typelib-new-from-mapped-file">
+<ANCHOR id="g-typelib-free" href="gi/gi-gitypelib.html#g-typelib-free">
+<ANCHOR id="g-typelib-symbol" href="gi/gi-gitypelib.html#g-typelib-symbol">
+<ANCHOR id="g-typelib-get-namespace" href="gi/gi-gitypelib.html#g-typelib-get-namespace">
+<ANCHOR id="GITypelib" href="gi/gi-gitypelib.html#GITypelib">
+<ANCHOR id="gi-GITypelib" href="gi/gi-GITypelib.html">
+<ANCHOR id="gi-GITypelib.stability-level" href="gi/gi-GITypelib.html#gi-GITypelib.stability-level">
+<ANCHOR id="gi-GITypelib.synopsis" href="gi/gi-GITypelib.html#gi-GITypelib.synopsis">
+<ANCHOR id="gi-GITypelib.description" href="gi/gi-GITypelib.html#gi-GITypelib.description">
+<ANCHOR id="gi-GITypelib.details" href="gi/gi-GITypelib.html#gi-GITypelib.details">
+<ANCHOR id="G-IR-MAGIC:CAPS" href="gi/gi-GITypelib.html#G-IR-MAGIC:CAPS">
+<ANCHOR id="GTypelibBlobType" href="gi/gi-GITypelib.html#GTypelibBlobType">
+<ANCHOR id="BLOB-TYPE-INVALID:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-INVALID:CAPS">
+<ANCHOR id="BLOB-TYPE-FUNCTION:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-FUNCTION:CAPS">
+<ANCHOR id="BLOB-TYPE-CALLBACK:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-CALLBACK:CAPS">
+<ANCHOR id="BLOB-TYPE-STRUCT:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-STRUCT:CAPS">
+<ANCHOR id="BLOB-TYPE-BOXED:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-BOXED:CAPS">
+<ANCHOR id="BLOB-TYPE-ENUM:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-ENUM:CAPS">
+<ANCHOR id="BLOB-TYPE-FLAGS:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-FLAGS:CAPS">
+<ANCHOR id="BLOB-TYPE-OBJECT:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-OBJECT:CAPS">
+<ANCHOR id="BLOB-TYPE-INTERFACE:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-INTERFACE:CAPS">
+<ANCHOR id="BLOB-TYPE-CONSTANT:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-CONSTANT:CAPS">
+<ANCHOR id="BLOB-TYPE-INVALID-0:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-INVALID-0:CAPS">
+<ANCHOR id="BLOB-TYPE-UNION:CAPS" href="gi/gi-GITypelib.html#BLOB-TYPE-UNION:CAPS">
+<ANCHOR id="Header" href="gi/gi-GITypelib.html#Header">
+<ANCHOR id="SectionType" href="gi/gi-GITypelib.html#SectionType">
+<ANCHOR id="GI-SECTION-END:CAPS" href="gi/gi-GITypelib.html#GI-SECTION-END:CAPS">
+<ANCHOR id="GI-SECTION-DIRECTORY-INDEX:CAPS" href="gi/gi-GITypelib.html#GI-SECTION-DIRECTORY-INDEX:CAPS">
+<ANCHOR id="Section" href="gi/gi-GITypelib.html#Section">
+<ANCHOR id="DirEntry" href="gi/gi-GITypelib.html#DirEntry">
+<ANCHOR id="SimpleTypeBlobFlags" href="gi/gi-GITypelib.html#SimpleTypeBlobFlags">
+<ANCHOR id="SimpleTypeBlob" href="gi/gi-GITypelib.html#SimpleTypeBlob">
+<ANCHOR id="ArgBlob" href="gi/gi-GITypelib.html#ArgBlob">
+<ANCHOR id="SignatureBlob" href="gi/gi-GITypelib.html#SignatureBlob">
+<ANCHOR id="CommonBlob" href="gi/gi-GITypelib.html#CommonBlob">
+<ANCHOR id="FunctionBlob" href="gi/gi-GITypelib.html#FunctionBlob">
+<ANCHOR id="CallbackBlob" href="gi/gi-GITypelib.html#CallbackBlob">
+<ANCHOR id="InterfaceTypeBlob" href="gi/gi-GITypelib.html#InterfaceTypeBlob">
+<ANCHOR id="ArrayTypeDimension" href="gi/gi-GITypelib.html#ArrayTypeDimension">
+<ANCHOR id="ArrayTypeBlob" href="gi/gi-GITypelib.html#ArrayTypeBlob">
+<ANCHOR id="ParamTypeBlob" href="gi/gi-GITypelib.html#ParamTypeBlob">
+<ANCHOR id="ErrorTypeBlob" href="gi/gi-GITypelib.html#ErrorTypeBlob">
+<ANCHOR id="ValueBlob" href="gi/gi-GITypelib.html#ValueBlob">
+<ANCHOR id="FieldBlob" href="gi/gi-GITypelib.html#FieldBlob">
+<ANCHOR id="RegisteredTypeBlob" href="gi/gi-GITypelib.html#RegisteredTypeBlob">
+<ANCHOR id="StructBlob" href="gi/gi-GITypelib.html#StructBlob">
+<ANCHOR id="UnionBlob" href="gi/gi-GITypelib.html#UnionBlob">
+<ANCHOR id="EnumBlob" href="gi/gi-GITypelib.html#EnumBlob">
+<ANCHOR id="PropertyBlob" href="gi/gi-GITypelib.html#PropertyBlob">
+<ANCHOR id="SignalBlob" href="gi/gi-GITypelib.html#SignalBlob">
+<ANCHOR id="VFuncBlob" href="gi/gi-GITypelib.html#VFuncBlob">
+<ANCHOR id="ObjectBlob" href="gi/gi-GITypelib.html#ObjectBlob">
+<ANCHOR id="InterfaceBlob" href="gi/gi-GITypelib.html#InterfaceBlob">
+<ANCHOR id="ConstantBlob" href="gi/gi-GITypelib.html#ConstantBlob">
+<ANCHOR id="AttributeBlob" href="gi/gi-GITypelib.html#AttributeBlob">
+<ANCHOR id="g-typelib-get-dir-entry" href="gi/gi-GITypelib.html#g-typelib-get-dir-entry">
+<ANCHOR id="g-typelib-get-dir-entry-by-name" href="gi/gi-GITypelib.html#g-typelib-get-dir-entry-by-name">
+<ANCHOR id="g-typelib-get-dir-entry-by-gtype-name" href="gi/gi-GITypelib.html#g-typelib-get-dir-entry-by-gtype-name">
+<ANCHOR id="g-typelib-get-dir-entry-by-error-domain" href="gi/gi-GITypelib.html#g-typelib-get-dir-entry-by-error-domain">
+<ANCHOR id="g-typelib-matches-gtype-name-prefix" href="gi/gi-GITypelib.html#g-typelib-matches-gtype-name-prefix">
+<ANCHOR id="g-typelib-check-sanity" href="gi/gi-GITypelib.html#g-typelib-check-sanity">
+<ANCHOR id="g-typelib-get-string" href="gi/gi-GITypelib.html#g-typelib-get-string">
+<ANCHOR id="GITypelibError" href="gi/gi-GITypelib.html#GITypelibError">
+<ANCHOR id="G-TYPELIB-ERROR-INVALID:CAPS" href="gi/gi-GITypelib.html#G-TYPELIB-ERROR-INVALID:CAPS">
+<ANCHOR id="G-TYPELIB-ERROR-INVALID-HEADER:CAPS" href="gi/gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-HEADER:CAPS">
+<ANCHOR id="G-TYPELIB-ERROR-INVALID-DIRECTORY:CAPS" href="gi/gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-DIRECTORY:CAPS">
+<ANCHOR id="G-TYPELIB-ERROR-INVALID-ENTRY:CAPS" href="gi/gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-ENTRY:CAPS">
+<ANCHOR id="G-TYPELIB-ERROR-INVALID-BLOB:CAPS" href="gi/gi-GITypelib.html#G-TYPELIB-ERROR-INVALID-BLOB:CAPS">
+<ANCHOR id="G-TYPELIB-ERROR:CAPS" href="gi/gi-GITypelib.html#G-TYPELIB-ERROR:CAPS">
+<ANCHOR id="g-typelib-error-quark" href="gi/gi-GITypelib.html#g-typelib-error-quark">
+<ANCHOR id="g-typelib-validate" href="gi/gi-GITypelib.html#g-typelib-validate">
+<ANCHOR id="GITypelibHashBuilder" href="gi/gi-GITypelib.html#GITypelibHashBuilder">
+<ANCHOR id="gi-girffi" href="gi/gi-girffi.html">
+<ANCHOR id="gi-girffi.synopsis" href="gi/gi-girffi.html#gi-girffi.synopsis">
+<ANCHOR id="gi-girffi.description" href="gi/gi-girffi.html#gi-girffi.description">
+<ANCHOR id="gi-girffi.details" href="gi/gi-girffi.html#gi-girffi.details">
+<ANCHOR id="GIFFIClosureCallback" href="gi/gi-girffi.html#GIFFIClosureCallback">
+<ANCHOR id="GIFunctionInvoker" href="gi/gi-girffi.html#GIFunctionInvoker">
+<ANCHOR id="GIFFIReturnValue" href="gi/gi-girffi.html#GIFFIReturnValue">
+<ANCHOR id="gi-type-tag-get-ffi-type" href="gi/gi-girffi.html#gi-type-tag-get-ffi-type">
+<ANCHOR id="g-type-info-get-ffi-type" href="gi/gi-girffi.html#g-type-info-get-ffi-type">
+<ANCHOR id="gi-type-info-extract-ffi-return-value" href="gi/gi-girffi.html#gi-type-info-extract-ffi-return-value">
+<ANCHOR id="g-function-info-prep-invoker" href="gi/gi-girffi.html#g-function-info-prep-invoker">
+<ANCHOR id="g-function-invoker-new-for-address" href="gi/gi-girffi.html#g-function-invoker-new-for-address">
+<ANCHOR id="g-function-invoker-destroy" href="gi/gi-girffi.html#g-function-invoker-destroy">
+<ANCHOR id="g-callable-info-prepare-closure" href="gi/gi-girffi.html#g-callable-info-prepare-closure">
+<ANCHOR id="g-callable-info-free-closure" href="gi/gi-girffi.html#g-callable-info-free-closure">
+<ANCHOR id="gi-gir-reference" href="gi/gi-gir-reference.html">
+<ANCHOR id="gi-gir-api-node" href="gi/gi-gir-reference.html#gi-gir-api-node">
+<ANCHOR id="gi-gir-namespace" href="gi/gi-gir-reference.html#gi-gir-namespace">
+<ANCHOR id="gi-gir-class" href="gi/gi-gir-reference.html#gi-gir-class">
+<ANCHOR id="gi-gir-interface" href="gi/gi-gir-reference.html#gi-gir-interface">
+<ANCHOR id="gi-gir-function" href="gi/gi-gir-reference.html#gi-gir-function">
+<ANCHOR id="annotation-glossterm-allow-none" href="gi/annotation-glossary.html#annotation-glossterm-allow-none">
+<ANCHOR id="annotation-glossterm-element-type" href="gi/annotation-glossary.html#annotation-glossterm-element-type">
+<ANCHOR id="annotation-glossterm-out" href="gi/annotation-glossary.html#annotation-glossterm-out">
+<ANCHOR id="annotation-glossterm-out caller-allocates" href="gi/annotation-glossary.html#annotation-glossterm-out caller-allocates">
+<ANCHOR id="annotation-glossterm-transfer full" href="gi/annotation-glossary.html#annotation-glossterm-transfer full">
+<ANCHOR id="annotation-glossterm-transfer none" href="gi/annotation-glossary.html#annotation-glossterm-transfer none">
+<ANCHOR id="annotation-glossterm-type" href="gi/annotation-glossary.html#annotation-glossterm-type">
diff --git a/docs/reference/html/left-insensitive.png b/docs/reference/html/left-insensitive.png
deleted file mode 100644 (file)
index 3269393..0000000
Binary files a/docs/reference/html/left-insensitive.png and /dev/null differ
index 2abde03..2d05b3d 100644 (file)
Binary files a/docs/reference/html/left.png and b/docs/reference/html/left.png differ
index d7fb49f..c2ec223 100644 (file)
@@ -2,22 +2,22 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Part I. GObject-Introspection Overview: GObject Introspection Reference Manual</title>
+<title>Part I. GObject-Introspection Overview</title>
 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="up" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="prev" href="index.html" title="GObject Introspection Reference Manual">
 <link rel="next" href="gi-building.html" title="Compiling the GObject Introspection package">
-<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gi-building.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="index.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">GObject Introspection Reference Manual</th>
+<td><a accesskey="n" href="gi-building.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr></table>
 <div class="part">
 <div class="titlepage"><div><div><h1 class="title">
@@ -57,6 +57,7 @@
 <img src="overview.png">
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.24.1</div>
+<hr>
+          Generated by GTK-Doc V1.19</div>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/reference/html/right-insensitive.png b/docs/reference/html/right-insensitive.png
deleted file mode 100644 (file)
index 4c95785..0000000
Binary files a/docs/reference/html/right-insensitive.png and /dev/null differ
index 76260ec..92832e3 100644 (file)
Binary files a/docs/reference/html/right.png and b/docs/reference/html/right.png differ
index 3675420..d6f6c26 100644 (file)
@@ -1,23 +1,15 @@
-body
-{
-  font-family: cantarell, sans-serif;
-}
 .synopsis, .classsynopsis
 {
   /* tango:aluminium 1/2 */
   background: #eeeeec;
-  background: rgba(238, 238, 236, 0.5);
-  border: solid 1px rgb(238, 238, 236);
+  border: solid 1px #d3d7cf;
   padding: 0.5em;
 }
 .programlisting
 {
   /* tango:sky blue 0/1 */
-  /* fallback for no rgba support */
   background: #e6f3ff;
   border: solid 1px #729fcf;
-  background: rgba(114, 159, 207, 0.1);
-  border: solid 1px rgba(114, 159, 207, 0.2);
   padding: 0.5em;
 }
 .variablelist
@@ -30,6 +22,89 @@ body
   vertical-align: top;
 }
 
+@media screen {
+  sup a.footnote
+  {
+    position: relative;
+    top: 0em ! important;
+    
+  }
+  /* this is needed so that the local anchors are displayed below the naviagtion */
+  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
+  {
+    display: inline-block;
+    position: relative;
+    top:-5em;
+  }
+  /* this seems to be a bug in the xsl style sheets when generating indexes */
+  div.index div.index
+  {
+    top: 0em;
+  }
+  /* make space for the fixed navigation bar and add space at the bottom so that
+   * link targets appear somewhat close to top
+   */
+  body
+  {
+    padding-top: 3.2em;
+    padding-bottom: 20em;
+  }
+  /* style and size the navigation bar */
+  table.navigation#top
+  {
+    position: fixed;
+    /* tango:scarlet red 0/1 */
+    background: #ffe6e6;
+    border: solid 1px #ef2929;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    height: 3em;
+    z-index: 10;
+  }
+  .navigation a, .navigation a:visited
+  {
+    /* tango:scarlet red 3 */
+    color: #a40000;
+  }
+  .navigation a:hover
+  {
+    /* tango:scarlet red 1 */
+    color: #ef2929;
+  }
+  td.shortcuts
+  {
+    /* tango:scarlet red 1 */
+    color: #ef2929;
+    font-size: 80%;
+    white-space: nowrap;
+  }
+}
+@media print {
+  table.navigation {
+    visibility: collapse;
+    display: none;
+  }
+  div.titlepage table.navigation {
+    visibility: visible;
+    display: table;
+    /* tango:scarlet red 0/1 */
+    background: #ffe6e6;
+    border: solid 1px #ef2929;
+    margin-top: 0;
+    margin-bottom: 0;
+    top: 0;
+    left: 0;
+    height: 3em;
+  }
+}
+
+.navigation .title
+{
+  font-size: 200%;
+}
+
 div.gallery-float
 {
   float: left;
@@ -57,72 +132,6 @@ a:hover
   color: #729fcf;
 }
 
-div.informaltable table
-{
-  border-collapse: separate;
-  border-spacing: 1em 0.3em;
-  border: none;
-}
-
-div.informaltable table td, div.informaltable table th
-{
-  vertical-align: top;
-}
-
-.function_type,
-.variable_type,
-.property_type,
-.signal_type,
-.parameter_name,
-.struct_member_name,
-.union_member_name,
-.define_keyword,
-.datatype_keyword,
-.typedef_keyword
-{
-  text-align: right;
-}
-
-/* dim non-primary columns */
-.c_punctuation,
-.function_type,
-.variable_type,
-.property_type,
-.signal_type,
-.define_keyword,
-.datatype_keyword,
-.typedef_keyword,
-.property_flags,
-.signal_flags,
-.parameter_annotations,
-.enum_member_annotations,
-.struct_member_annotations,
-.union_member_annotations
-{
-  color: #888a85;
-}
-
-.function_type a,
-.function_type a:visited,
-.function_type a:hover,
-.property_type a,
-.property_type a:visited,
-.property_type a:hover,
-.signal_type a,
-.signal_type a:visited,
-.signal_type a:hover,
-.signal_flags a,
-.signal_flags a:visited,
-.signal_flags a:hover
-{
- color: #729fcf;
-}
-
-td p
-{
-  margin: 0.25em;
-}
-
 div.table table
 {
   border-collapse: collapse;
@@ -145,44 +154,14 @@ div.table table th
   background-color: #d3d7cf;
 }
 
-h4
-{
-  color: #555753;
-  margin-top: 1em;
-  margin-bottom: 1em;
-}
-
 hr
 {
-  /* tango:aluminium 1 */
-  color: #d3d7cf;
-  background: #d3d7cf;
+  /* tango:aluminium 3 */
+  color: #babdb6;
+  background: #babdb6;
   border: none 0px;
   height: 1px;
   clear: both;
-  margin: 2.0em 0em 2.0em 0em;
-}
-
-dl.toc dt
-{
-  padding-bottom: 0.25em;
-}
-
-dl.toc > dt
-{
-  padding-top: 0.25em;
-  padding-bottom: 0.25em;
-  font-weight: bold;
-}
-
-dl.toc > dl
-{
-  padding-bottom: 0.5em;
-}
-
-.parameter
-{
-  font-style: normal;
 }
 
 .footer
@@ -194,70 +173,31 @@ dl.toc > dl
   font-size: 80%;
 }
 
-.informalfigure,
-.figure
-{
-  margin: 1em;
-}
-
-.informalexample,
-.example
-{
-  margin-top: 1em;
-  margin-bottom: 1em;
-}
-
 .warning
 {
   /* tango:orange 0/1 */
   background: #ffeed9;
-  background: rgba(252, 175, 62, 0.1);
   border-color: #ffb04f;
-  border-color: rgba(252, 175, 62, 0.2);
 }
 .note
 {
   /* tango:chameleon 0/0.5 */
   background: #d8ffb2;
-  background: rgba(138, 226, 52, 0.1);
   border-color: #abf562;
-  border-color: rgba(138, 226, 52, 0.2);
 }
-div.blockquote
-{
-  border-color: #eeeeec;
-}
-.note, .warning, div.blockquote
+.note, .warning
 {
   padding: 0.5em;
   border-width: 1px;
   border-style: solid;
-  margin: 2em;
-}
-.note p, .warning p
-{
-  margin: 0;
-}
-
-div.warning h3.title,
-div.note h3.title
-{
-  display: none;
 }
-
-p + div.section
+.note h3, .warning h3
 {
-  margin-top: 1em;
+  margin-top: 0.0em
 }
-
-div.refnamediv,
-div.refsynopsisdiv,
-div.refsect1,
-div.refsect2,
-div.toc,
-div.section
+.note p, .warning p
 {
-  margin-bottom: 1em;
+  margin-bottom: 0.0em
 }
 
 /* blob links */
@@ -270,52 +210,33 @@ h2 .extralinks, h3 .extralinks
   font-weight: normal;
 }
 
-.lineart
-{
-  color: #d3d7cf;
-  font-weight: normal;
-}
-
 .annotation
 {
   /* tango:aluminium 5 */
   color: #555753;
+  font-size: 80%;
   font-weight: normal;
 }
 
-.structfield
-{
-  font-style: normal;
-  font-weight: normal;
-}
-
-acronym,abbr 
-{
-  border-bottom: 1px dotted gray;
-}
-
 /* code listings */
 
-.listing_code .programlisting .normal,
-.listing_code .programlisting .normal a,
-.listing_code .programlisting .number,
-.listing_code .programlisting .cbracket,
-.listing_code .programlisting .symbol     { color: #555753; }
-.listing_code .programlisting .comment,
+.listing_code .programlisting .cbracket   { color: #a40000; } /* tango: scarlet red 3 */
+.listing_code .programlisting .comment    { color: #a1a39d; } /* tango: aluminium 4 */
+.listing_code .programlisting .function   { color: #000000; font-weight: bold; }
+.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */
+.listing_code .programlisting .keyword    { color: #4e9a06; } /* tango: chameleon 3  */
 .listing_code .programlisting .linenum    { color: #babdb6; } /* tango: aluminium 3 */
-.listing_code .programlisting .function,
-.listing_code .programlisting .function a,
+.listing_code .programlisting .normal     { color: #000000; }
+.listing_code .programlisting .number     { color: #75507b; } /* tango: plum 2 */
 .listing_code .programlisting .preproc    { color: #204a87; } /* tango: sky blue 3  */
-.listing_code .programlisting .string     { color: #ad7fa8; } /* tango: plum */
-.listing_code .programlisting .keyword,
-.listing_code .programlisting .usertype,
-.listing_code .programlisting .type,
-.listing_code .programlisting .type a     { color: #4e9a06; } /* tango: chameleon 3  */
+.listing_code .programlisting .string     { color: #c17d11; } /* tango: chocolate 2 */
+.listing_code .programlisting .type       { color: #000000; }
+.listing_code .programlisting .type a     { color: #11326b; } /* tango: sky blue 4 */
+.listing_code .programlisting .symbol     { color: #ce5c00; } /* tango: orange 3 */
 
 .listing_frame {
   /* tango:sky blue 1 */
   border: solid 1px #729fcf;
-  border: solid 1px rgba(114, 159, 207, 0.2);
   padding: 0px;
 }
 
@@ -327,153 +248,19 @@ acronym,abbr
 .listing_lines {
   /* tango:sky blue 0.5 */
   background: #a6c5e3;
-  background: rgba(114, 159, 207, 0.2);
   /* tango:aluminium 6 */
   color: #2e3436;
 }
 .listing_code {
   /* tango:sky blue 0 */
   background: #e6f3ff;
-  background: rgba(114, 159, 207, 0.1);
 }
 .listing_code .programlisting {
   /* override from previous */
   border: none 0px;
   padding: 0px;
-  background: none;
 }
 .listing_lines pre, .listing_code pre {
   margin: 0px;
 }
 
-@media screen {
-  /* these have a <sup> as a first child, but since there are no parent selectors
-   * we can't use that. */
-  a.footnote
-  {
-    position: relative;
-    top: 0em ! important;
-  }
-  /* this is needed so that the local anchors are displayed below the naviagtion */
-  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
-  {
-    display: inline-block;
-    position: relative;
-    top:-5em;
-  }
-  /* this seems to be a bug in the xsl style sheets when generating indexes */
-  div.index div.index
-  {
-    top: 0em;
-  }
-  /* make space for the fixed navigation bar and add space at the bottom so that
-   * link targets appear somewhat close to top
-   */
-  body
-  {
-    padding-top: 2.5em;
-    padding-bottom: 500px;
-    max-width: 60em;
-  }
-  p
-  {
-    max-width: 60em;
-  }
-  /* style and size the navigation bar */
-  table.navigation#top
-  {
-    position: fixed;
-    background: #e2e2e2;
-    border-bottom: solid 1px #babdb6;
-    border-spacing: 5px;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    z-index: 10;
-  }
-  table.navigation#top td
-  {
-    padding-left: 6px;
-    padding-right: 6px;
-  }
-  .navigation a, .navigation a:visited
-  {
-    /* tango:sky blue 3 */
-    color: #204a87;
-  }
-  .navigation a:hover
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-  }
-  td.shortcuts
-  {
-    /* tango:sky blue 2 */
-    color: #3465a4;
-    font-size: 80%;
-    white-space: nowrap;
-  }
-  td.shortcuts .dim
-  {
-    color: #babdb6;
-  }
-  .navigation .title
-  {
-    font-size: 80%;
-    max-width: none;
-    margin: 0px;
-    font-weight: normal;
-  }
-}
-@media screen and (min-width: 60em) {
-  /* screen larger than 60em */
-  body { margin: auto; }
-}
-@media screen and (max-width: 60em) {
-  /* screen less than 60em */
-  #nav_hierarchy { display: none; }
-  #nav_interfaces { display: none; }
-  #nav_prerequisites { display: none; }
-  #nav_derived_interfaces { display: none; }
-  #nav_implementations { display: none; }
-  #nav_child_properties { display: none; }
-  #nav_style_properties { display: none; }
-  #nav_index { display: none; }
-  #nav_glossary { display: none; }
-  .gallery_image { display: none; }
-  .property_flags { display: none; }
-  .signal_flags { display: none; }
-  .parameter_annotations { display: none; }
-  .enum_member_annotations { display: none; }
-  .struct_member_annotations { display: none; }
-  .union_member_annotations { display: none; }
-  /* now that a column is hidden, optimize space */
-  col.parameters_name { width: auto; }
-  col.parameters_description { width: auto; }
-  col.struct_members_name { width: auto; }
-  col.struct_members_description { width: auto; }
-  col.enum_members_name { width: auto; }
-  col.enum_members_description { width: auto; }
-  col.union_members_name { width: auto; }
-  col.union_members_description { width: auto; }
-  .listing_lines { display: none; }
-}
-@media print {
-  table.navigation {
-    visibility: collapse;
-    display: none;
-  }
-  div.titlepage table.navigation {
-    visibility: visible;
-    display: table;
-    background: #e2e2e2;
-    border: solid 1px #babdb6;
-    margin-top: 0;
-    margin-bottom: 0;
-    top: 0;
-    left: 0;
-    height: 3em;
-  }
-}
-
diff --git a/docs/reference/html/up-insensitive.png b/docs/reference/html/up-insensitive.png
deleted file mode 100644 (file)
index f404986..0000000
Binary files a/docs/reference/html/up-insensitive.png and /dev/null differ
index 80b4b37..85b3e2a 100644 (file)
Binary files a/docs/reference/html/up.png and b/docs/reference/html/up.png differ
index fdcf9f8..ffb0161 100644 (file)
 
 
 /**
+ * SECTION:gdatagrambased
+ * @short_description: Low-level datagram communications interface
+ * @include: gio/gio.h
+ * @see_also: #GSocket, [<gnetworking.h>][gio-gnetworking.h]
+ *
+ * A #GDatagramBased is a networking interface for representing datagram-based
+ * communications. It is a more or less direct mapping of the core parts of the
+ * BSD socket API in a portable GObject interface. It is implemented by
+ * #GSocket, which wraps the UNIX socket API on UNIX and winsock2 on Windows.
+ *
+ * #GDatagramBased is entirely platform independent, and is intended to be used
+ * alongside higher-level networking APIs such as #GIOStream.
+ *
+ * It uses vectored scatter/gather I/O by default, allowing for many messages
+ * to be sent or received in a single call. Where possible, implementations of
+ * the interface should take advantage of vectored I/O to minimise processing
+ * or system calls. For example, #GSocket uses recvmmsg() and sendmmsg() where
+ * possible. Callers should take advantage of scatter/gather I/O (the use of
+ * multiple buffers per message) to avoid unnecessary copying of data to
+ * assemble or disassemble a message.
+ *
+ * Each #GDatagramBased operation has a timeout parameter which may be negative
+ * for blocking behaviour, zero for non-blocking behaviour, or positive for
+ * timeout behaviour. A blocking operation blocks until finished or there is an
+ * error. A non-blocking operation will return immediately with a
+ * %G_IO_ERROR_WOULD_BLOCK error if it cannot make progress. A timeout operation
+ * will block until the operation is complete or the timeout expires; if the
+ * timeout expires it will return what progress it made, or
+ * %G_IO_ERROR_TIMED_OUT if no progress was made. To know when a call would
+ * successfully run you can call g_datagram_based_condition_check() or
+ * g_datagram_based_condition_wait(). You can also use
+ * g_datagram_based_create_source() and attach it to a #GMainContext to get
+ * callbacks when I/O is possible.
+ *
+ * When running a non-blocking operation applications should always be able to
+ * handle getting a %G_IO_ERROR_WOULD_BLOCK error even when some other function
+ * said that I/O was possible. This can easily happen in case of a race
+ * condition in the application, but it can also happen for other reasons. For
+ * instance, on Windows a socket is always seen as writable until a write
+ * returns %G_IO_ERROR_WOULD_BLOCK.
+ *
+ * As with #GSocket, #GDatagramBaseds can be either connection oriented or
+ * connectionless. The interface does not cover connection establishment â€” use
+ * methods on the underlying type to establish a connection before sending and
+ * receiving data through the #GDatagramBased API. For connectionless socket
+ * types the target/source address is specified or received in each I/O
+ * operation.
+ *
+ * Like most other APIs in GLib, #GDatagramBased is not inherently thread safe.
+ * To use a #GDatagramBased concurrently from multiple threads, you must
+ * implement your own locking.
+ *
+ * Since: 2.48
+ */
+
+
+/**
  * SECTION:gdatainputstream
  * @short_description: Data Input Stream
  * @include: gio/gio.h
  * @see_also: #GInputStream, #GOutputStream
  *
  * GIOStream represents an object that has both read and write streams.
- * Generally the two streams acts as separate input and output streams,
+ * Generally the two streams act as separate input and output streams,
  * but they share some common resources and state. For instance, for
- * seekable streams they may use the same position in both streams.
+ * seekable streams, both streams may use the same position.
  *
- * Examples of #GIOStream objects are #GSocketConnection which represents
- * a two-way network connection, and #GFileIOStream which represent a
+ * Examples of #GIOStream objects are #GSocketConnection, which represents
+ * a two-way network connection; and #GFileIOStream, which represents a
  * file handle opened in read-write mode.
  *
  * To do the actual reading and writing you need to get the substreams
  * The #GIOStream object owns the input and the output streams, not the other
  * way around, so keeping the substreams alive will not keep the #GIOStream
  * object alive. If the #GIOStream object is freed it will be closed, thus
- * closing the substream, so even if the substreams stay alive they will
- * always just return a %G_IO_ERROR_CLOSED for all operations.
+ * closing the substreams, so even if the substreams stay alive they will
+ * always return %G_IO_ERROR_CLOSED for all operations.
  *
  * To close a stream use g_io_stream_close() which will close the common
  * stream object and also the individual substreams. You can also close
  * interface, in which case all objects in the list must implement it.
  *
  * The semantics are close to that of an array:
- * g_list_model_get_length() returns the number of items in the list and
+ * g_list_model_get_n_items() returns the number of items in the list and
  * g_list_model_get_item() returns an item at a (0-based) position. In
  * order to allow implementations to calculate the list length lazily,
  * you can also iterate over items: starting from 0, repeatedly call
  * %NULL.
  *
  * Sockets operate in two general modes, blocking or non-blocking. When
- * in blocking mode all operations block until the requested operation
+ * in blocking mode all operations (which don’t take an explicit blocking
+ * parameter) block until the requested operation
  * is finished or there is an error. In non-blocking mode all calls that
  * would block return immediately with a %G_IO_ERROR_WOULD_BLOCK error.
  * To know when a call would successfully run you can call g_socket_condition_check(),
 
 
 /**
+ * g_datagram_based_condition_check:
+ * @datagram_based: a #GDatagramBased
+ * @condition: a #GIOCondition mask to check
+ *
+ * Checks on the readiness of @datagram_based to perform operations. The
+ * operations specified in @condition are checked for and masked against the
+ * currently-satisfied conditions on @datagram_based. The result is returned.
+ *
+ * %G_IO_IN will be set in the return value if data is available to read with
+ * g_datagram_based_receive_messages(), or if the connection is closed remotely
+ * (EOS); and if the datagram_based has not been closed locally using some
+ * implementation-specific method (such as g_socket_close() or
+ * g_socket_shutdown() with @shutdown_read set, if it’s a #GSocket).
+ *
+ * If the connection is shut down or closed (by calling g_socket_close() or
+ * g_socket_shutdown() with @shutdown_read set, if it’s a #GSocket, for
+ * example), all calls to this function will return %G_IO_ERROR_CLOSED.
+ *
+ * %G_IO_OUT will be set if it is expected that at least one byte can be sent
+ * using g_datagram_based_send_messages() without blocking. It will not be set
+ * if the datagram_based has been closed locally.
+ *
+ * %G_IO_HUP will be set if the connection has been closed locally.
+ *
+ * %G_IO_ERR will be set if there was an asynchronous error in transmitting data
+ * previously enqueued using g_datagram_based_send_messages().
+ *
+ * Note that on Windows, it is possible for an operation to return
+ * %G_IO_ERROR_WOULD_BLOCK even immediately after
+ * g_datagram_based_condition_check() has claimed that the #GDatagramBased is
+ * ready for writing. Rather than calling g_datagram_based_condition_check() and
+ * then writing to the #GDatagramBased if it succeeds, it is generally better to
+ * simply try writing right away, and try again later if the initial attempt
+ * returns %G_IO_ERROR_WOULD_BLOCK.
+ *
+ * It is meaningless to specify %G_IO_ERR or %G_IO_HUP in @condition; these
+ * conditions will always be set in the output if they are true. Apart from
+ * these flags, the output is guaranteed to be masked by @condition.
+ *
+ * This call never blocks.
+ *
+ * Returns: the #GIOCondition mask of the current state
+ * Since: 2.48
+ */
+
+
+/**
+ * g_datagram_based_condition_wait:
+ * @datagram_based: a #GDatagramBased
+ * @condition: a #GIOCondition mask to wait for
+ * @timeout: the maximum time (in microseconds) to wait, 0 to not block, or -1
+ *   to block indefinitely
+ * @cancellable: (nullable): a #GCancellable
+ * @error: return location for a #GError
+ *
+ * Waits for up to @timeout microseconds for condition to become true on
+ * @datagram_based. If the condition is met, %TRUE is returned.
+ *
+ * If @cancellable is cancelled before the condition is met, or if @timeout is
+ * reached before the condition is met, then %FALSE is returned and @error is
+ * set appropriately (%G_IO_ERROR_CANCELLED or %G_IO_ERROR_TIMED_OUT).
+ *
+ * Returns: %TRUE if the condition was met, %FALSE otherwise
+ * Since: 2.48
+ */
+
+
+/**
+ * g_datagram_based_create_source:
+ * @datagram_based: a #GDatagramBased
+ * @condition: a #GIOCondition mask to monitor
+ * @cancellable: (nullable): a #GCancellable
+ *
+ * Creates a #GSource that can be attached to a #GMainContext to monitor for
+ * the availability of the specified @condition on the #GDatagramBased. The
+ * #GSource keeps a reference to the @datagram_based.
+ *
+ * The callback on the source is of the #GDatagramBasedSourceFunc type.
+ *
+ * It is meaningless to specify %G_IO_ERR or %G_IO_HUP in @condition; these
+ * conditions will always be reported in the callback if they are true.
+ *
+ * If non-%NULL, @cancellable can be used to cancel the source, which will
+ * cause the source to trigger, reporting the current condition (which is
+ * likely 0 unless cancellation happened at the same time as a condition
+ * change). You can check for this in the callback using
+ * g_cancellable_is_cancelled().
+ *
+ * Returns: (transfer full): a newly allocated #GSource
+ * Since: 2.48
+ */
+
+
+/**
+ * g_datagram_based_receive_messages:
+ * @datagram_based: a #GDatagramBased
+ * @messages: (array length=num_messages): an array of #GInputMessage structs
+ * @num_messages: the number of elements in @messages
+ * @flags: an int containing #GSocketMsgFlags flags for the overall operation
+ * @timeout: the maximum time (in microseconds) to wait, 0 to not block, or -1
+ *   to block indefinitely
+ * @cancellable: (allow-none): a %GCancellable
+ * @error: return location for a #GError
+ *
+ * Receive one or more data messages from @datagram_based in one go.
+ *
+ * @messages must point to an array of #GInputMessage structs and
+ * @num_messages must be the length of this array. Each #GInputMessage
+ * contains a pointer to an array of #GInputVector structs describing the
+ * buffers that the data received in each message will be written to.
+ *
+ * @flags modify how all messages are received. The commonly available
+ * arguments for this are available in the #GSocketMsgFlags enum, but the
+ * values there are the same as the system values, and the flags
+ * are passed in as-is, so you can pass in system-specific flags too. These
+ * flags affect the overall receive operation. Flags affecting individual
+ * messages are returned in #GInputMessage.flags.
+ *
+ * The other members of #GInputMessage are treated as described in its
+ * documentation.
+ *
+ * If @timeout is negative the call will block until @num_messages have been
+ * received, the connection is closed remotely (EOS), @cancellable is cancelled,
+ * or an error occurs.
+ *
+ * If @timeout is 0 the call will return up to @num_messages without blocking,
+ * or %G_IO_ERROR_WOULD_BLOCK if no messages are queued in the operating system
+ * to be received.
+ *
+ * If @timeout is positive the call will block on the same conditions as if
+ * @timeout were negative. If the timeout is reached
+ * before any messages are received, %G_IO_ERROR_TIMED_OUT is returned,
+ * otherwise it will return the number of messages received before timing out.
+ * (Note: This is effectively the behaviour of `MSG_WAITFORONE` with
+ * recvmmsg().)
+ *
+ * To be notified when messages are available, wait for the %G_IO_IN condition.
+ * Note though that you may still receive %G_IO_ERROR_WOULD_BLOCK from
+ * g_datagram_based_receive_messages() even if you were previously notified of a
+ * %G_IO_IN condition.
+ *
+ * If the remote peer closes the connection, any messages queued in the
+ * underlying receive buffer will be returned, and subsequent calls to
+ * g_datagram_based_receive_messages() will return 0 (with no error set).
+ *
+ * If the connection is shut down or closed (by calling g_socket_close() or
+ * g_socket_shutdown() with @shutdown_read set, if it’s a #GSocket, for
+ * example), all calls to this function will return %G_IO_ERROR_CLOSED.
+ *
+ * On error -1 is returned and @error is set accordingly. An error will only
+ * be returned if zero messages could be received; otherwise the number of
+ * messages successfully received before the error will be returned. If
+ * @cancellable is cancelled, %G_IO_ERROR_CANCELLED is returned as with any
+ * other error.
+ *
+ * Returns: number of messages received, or -1 on error. Note that the number
+ *     of messages received may be smaller than @num_messages if @timeout is
+ *     zero or positive, if the peer closed the connection, or if @num_messages
+ *     was larger than `UIO_MAXIOV` (1024), in which case the caller may re-try
+ *     to receive the remaining messages.
+ * Since: 2.48
+ */
+
+
+/**
+ * g_datagram_based_send_messages:
+ * @datagram_based: a #GDatagramBased
+ * @messages: (array length=num_messages): an array of #GOutputMessage structs
+ * @num_messages: the number of elements in @messages
+ * @flags: an int containing #GSocketMsgFlags flags
+ * @timeout: the maximum time (in microseconds) to wait, 0 to not block, or -1
+ *   to block indefinitely
+ * @cancellable: (nullable): a %GCancellable
+ * @error: return location for a #GError
+ *
+ * Send one or more data messages from @datagram_based in one go.
+ *
+ * @messages must point to an array of #GOutputMessage structs and
+ * @num_messages must be the length of this array. Each #GOutputMessage
+ * contains an address to send the data to, and a pointer to an array of
+ * #GOutputVector structs to describe the buffers that the data to be sent
+ * for each message will be gathered from.
+ *
+ * @flags modify how the message is sent. The commonly available arguments
+ * for this are available in the #GSocketMsgFlags enum, but the
+ * values there are the same as the system values, and the flags
+ * are passed in as-is, so you can pass in system-specific flags too.
+ *
+ * The other members of #GOutputMessage are treated as described in its
+ * documentation.
+ *
+ * If @timeout is negative the call will block until @num_messages have been
+ * sent, @cancellable is cancelled, or an error occurs.
+ *
+ * If @timeout is 0 the call will send up to @num_messages without blocking,
+ * or will return %G_IO_ERROR_WOULD_BLOCK if there is no space to send messages.
+ *
+ * If @timeout is positive the call will block on the same conditions as if
+ * @timeout were negative. If the timeout is reached before any messages are
+ * sent, %G_IO_ERROR_TIMED_OUT is returned, otherwise it will return the number
+ * of messages sent before timing out.
+ *
+ * To be notified when messages can be sent, wait for the %G_IO_OUT condition.
+ * Note though that you may still receive %G_IO_ERROR_WOULD_BLOCK from
+ * g_datagram_based_send_messages() even if you were previously notified of a
+ * %G_IO_OUT condition. (On Windows in particular, this is very common due to
+ * the way the underlying APIs work.)
+ *
+ * If the connection is shut down or closed (by calling g_socket_close() or
+ * g_socket_shutdown() with @shutdown_write set, if it’s a #GSocket, for
+ * example), all calls to this function will return %G_IO_ERROR_CLOSED.
+ *
+ * On error -1 is returned and @error is set accordingly. An error will only
+ * be returned if zero messages could be sent; otherwise the number of messages
+ * successfully sent before the error will be returned. If @cancellable is
+ * cancelled, %G_IO_ERROR_CANCELLED is returned as with any other error.
+ *
+ * Returns: number of messages sent, or -1 on error. Note that the number of
+ *     messages sent may be smaller than @num_messages if @timeout is zero
+ *     or positive, or if @num_messages was larger than `UIO_MAXIOV` (1024), in
+ *     which case the caller may re-try to send the remaining messages.
+ * Since: 2.48
+ */
+
+
+/**
  * g_dbus_action_group_get:
  * @connection: A #GDBusConnection
  * @bus_name: the bus name which exports the action group
  * each application is a client. So this method will always return
  * %NULL for message bus clients.
  *
- * Returns: (transfer none): a #GCredentials or %NULL if not available.
- *     Do not free this object, it is owned by @connection.
+ * Returns: (transfer none) (nullable): a #GCredentials or %NULL if not
+ *     available. Do not free this object, it is owned by @connection.
  * Since: 2.26
  */
 
  * @error: location to store the error occurring, or %NULL to ignore
  *
  * Closes the stream, releasing resources related to it. This will also
- * closes the individual input and output streams, if they are not already
+ * close the individual input and output streams, if they are not already
  * closed.
  *
  * Once the stream is closed, all other operations will return
 
 /**
  * g_native_socket_address_new:
- * @address: a #GNativeAddress
- * @port: a port number
+ * @native: a native address object
+ * @len: the length of @native, in bytes
  *
- * Creates a new #GNativeSocketAddress for @address and @port.
+ * Creates a new #GNativeSocketAddress for @native and @len.
  *
  * Returns: a new #GNativeSocketAddress
  * Since: 2.46
 
 
 /**
+ * g_socket_connectable_to_string:
+ * @connectable: a #GSocketConnectable
+ *
+ * Format a #GSocketConnectable as a string. This is a human-readable format for
+ * use in debugging output, and is not a stable serialization format. It is not
+ * suitable for use in user interfaces as it exposes too much information for a
+ * user.
+ *
+ * If the #GSocketConnectable implementation does not support string formatting,
+ * the implementation’s type name will be returned as a fallback.
+ *
+ * Returns: (transfer full): the formatted string
+ * Since: 2.48
+ */
+
+
+/**
  * g_socket_connection_connect:
  * @connection: a #GSocketConnection
  * @address: a #GSocketAddress specifying the remote address.
  * g_socket_get_available_bytes:
  * @socket: a #GSocket
  *
- * Get the amount of data pending in the OS input buffer.
+ * Get the amount of data pending in the OS input buffer, without blocking.
  *
  * If @socket is a UDP or SCTP socket, this will return the size of
  * just the next packet, even if additional packets are buffered after
  * Check whether the socket is connected. This is only useful for
  * connection-oriented sockets.
  *
+ * If using g_socket_shutdown(), this function will return %TRUE until the
+ * socket has been shut down for reading and writing. If you do a non-blocking
+ * connect, this function will not return %TRUE until after you call
+ * g_socket_check_connect_result().
+ *
  * Returns: %TRUE if socket is connected, %FALSE otherwise.
  * Since: 2.22
  */
  * @cancellable: (allow-none): a %GCancellable or %NULL
  * @error: a #GError pointer, or %NULL
  *
- * Receive data from a socket.  This is the most complicated and
- * fully-featured version of this call. For easier use, see
+ * Receive data from a socket.  For receiving multiple messages, see
+ * g_socket_receive_messages(); for easier use, see
  * g_socket_receive() and g_socket_receive_from().
  *
  * If @address is non-%NULL then @address will be set equal to the
  * values there are the same as the system values, and the flags
  * are passed in as-is, so you can pass in system-specific flags too
  * (and g_socket_receive_message() may pass system-specific flags out).
+ * Flags passed in to the parameter affect the receive operation; flags returned
+ * out of it are relevant to the specific returned message.
  *
  * As with g_socket_receive(), data may be discarded if @socket is
  * %G_SOCKET_TYPE_DATAGRAM or %G_SOCKET_TYPE_SEQPACKET and you do not
 
 
 /**
+ * g_socket_receive_messages:
+ * @socket: a #GSocket
+ * @messages: (array length=num_messages): an array of #GInputMessage structs
+ * @num_messages: the number of elements in @messages
+ * @flags: an int containing #GSocketMsgFlags flags for the overall operation
+ * @cancellable: (allow-none): a %GCancellable or %NULL
+ * @error: #GError for error reporting, or %NULL to ignore
+ *
+ * Receive multiple data messages from @socket in one go.  This is the most
+ * complicated and fully-featured version of this call. For easier use, see
+ * g_socket_receive(), g_socket_receive_from(), and g_socket_receive_message().
+ *
+ * @messages must point to an array of #GInputMessage structs and
+ * @num_messages must be the length of this array. Each #GInputMessage
+ * contains a pointer to an array of #GInputVector structs describing the
+ * buffers that the data received in each message will be written to. Using
+ * multiple #GInputVectors is more memory-efficient than manually copying data
+ * out of a single buffer to multiple sources, and more system-call-efficient
+ * than making multiple calls to g_socket_receive(), such as in scenarios where
+ * a lot of data packets need to be received (e.g. high-bandwidth video
+ * streaming over RTP/UDP).
+ *
+ * @flags modify how all messages are received. The commonly available
+ * arguments for this are available in the #GSocketMsgFlags enum, but the
+ * values there are the same as the system values, and the flags
+ * are passed in as-is, so you can pass in system-specific flags too. These
+ * flags affect the overall receive operation. Flags affecting individual
+ * messages are returned in #GInputMessage.flags.
+ *
+ * The other members of #GInputMessage are treated as described in its
+ * documentation.
+ *
+ * If #GSocket:blocking is %TRUE the call will block until @num_messages have
+ * been received, or the end of the stream is reached.
+ *
+ * If #GSocket:blocking is %FALSE the call will return up to @num_messages
+ * without blocking, or %G_IO_ERROR_WOULD_BLOCK if no messages are queued in the
+ * operating system to be received.
+ *
+ * In blocking mode, if #GSocket:timeout is positive and is reached before any
+ * messages are received, %G_IO_ERROR_TIMED_OUT is returned, otherwise up to
+ * @num_messages are returned. (Note: This is effectively the
+ * behaviour of `MSG_WAITFORONE` with recvmmsg().)
+ *
+ * To be notified when messages are available, wait for the
+ * %G_IO_IN condition. Note though that you may still receive
+ * %G_IO_ERROR_WOULD_BLOCK from g_socket_receive_messages() even if you were
+ * previously notified of a %G_IO_IN condition.
+ *
+ * If the remote peer closes the connection, any messages queued in the
+ * operating system will be returned, and subsequent calls to
+ * g_socket_receive_messages() will return 0 (with no error set).
+ *
+ * On error -1 is returned and @error is set accordingly. An error will only
+ * be returned if zero messages could be received; otherwise the number of
+ * messages successfully received before the error will be returned.
+ *
+ * Returns: number of messages received, or -1 on error. Note that the number
+ *     of messages received may be smaller than @num_messages if in non-blocking
+ *     mode, if the peer closed the connection, or if @num_messages
+ *     was larger than `UIO_MAXIOV` (1024), in which case the caller may re-try
+ *     to receive the remaining messages.
+ * Since: 2.48
+ */
+
+
+/**
  * g_socket_receive_with_blocking:
  * @socket: a #GSocket
  * @buffer: (array length=size) (element-type guint8): a buffer to
  * @cancellable: (allow-none): a %GCancellable or %NULL
  * @error: #GError for error reporting, or %NULL to ignore.
  *
- * Send data to @address on @socket.  This is the most complicated and
- * fully-featured version of this call. For easier use, see
+ * Send data to @address on @socket.  For sending multiple messages see
+ * g_socket_send_messages(); for easier use, see
  * g_socket_send() and g_socket_send_to().
  *
  * If @address is %NULL then the message is sent to the default receiver
  * notified of a %G_IO_OUT condition. (On Windows in particular, this is
  * very common due to the way the underlying APIs work.)
  *
- * On error -1 is returned and @error is set accordingly.
+ * On error -1 is returned and @error is set accordingly. An error will only
+ * be returned if zero messages could be sent; otherwise the number of messages
+ * successfully sent before the error will be returned.
  *
  * Returns: number of messages sent, or -1 on error. Note that the number of
  *     messages sent may be smaller than @num_messages if the socket is
  * @blocking: Whether to use blocking I/O or not.
  *
  * Sets the blocking mode of the socket. In blocking mode
- * all operations block until they succeed or there is an error. In
+ * all operations (which don’t take an explicit blocking parameter) block until
+ * they succeed or there is an error. In
  * non-blocking mode all functions return results immediately or
  * with a %G_IO_ERROR_WOULD_BLOCK error.
  *
  * @shutdown_write: whether to shut down the write side
  * @error: #GError for error reporting, or %NULL to ignore.
  *
- * Shut down part of a full-duplex connection.
+ * Shut down part or all of a full-duplex connection.
  *
  * If @shutdown_read is %TRUE then the receiving side of the connection
  * is shut down, and further reading is disallowed.
  *
  * It is allowed for both @shutdown_read and @shutdown_write to be %TRUE.
  *
- * One example where this is used is graceful disconnect for TCP connections
- * where you close the sending side, then wait for the other side to close
- * the connection, thus ensuring that the other side saw all sent data.
+ * One example where it is useful to shut down only one side of a connection is
+ * graceful disconnect for TCP connections where you close the sending side,
+ * then wait for the other side to close the connection, thus ensuring that the
+ * other side saw all sent data.
  *
  * Returns: %TRUE on success, %FALSE on error
  * Since: 2.22
  * If @type is %G_UNIX_SOCKET_ADDRESS_PATH, this is equivalent to
  * calling g_unix_socket_address_new().
  *
+ * If @type is %G_UNIX_SOCKET_ADDRESS_ANONYMOUS, @path and @path_len will be
+ * ignored.
+ *
  * If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT, then @path_len
  * bytes of @path will be copied to the socket's path, and only those
  * bytes will be considered part of the name. (If @path_len is -1,
  * @key: (in) (transfer none): a #GWin32RegistryKey
  * @watch_children: (in): %TRUE also watch the children of the @key, %FALSE
  *     to watch the key only.
- * @change_flags: (in): specifies the types of changes to watch for.
+ * @watch_flags: (in): specifies the types of changes to watch for.
  * @callback: (in) (nullable): a function to invoke when a change occurs.
  * @user_data: (in) (nullable): a pointer to pass to @callback on invocation.
  * @error: (nullable): a pointer to %NULL #GError, or %NULL
 /**
  * g_win32_registry_value_iter_get_data:
  * @iter: (in) (transfer none): a #GWin32RegistryValueIter
+ * @auto_expand: (in): %TRUE to automatically expand G_WIN32_REGISTRY_VALUE_EXPAND_STR to
+ *     G_WIN32_REGISTRY_VALUE_STR
  * @value_data: (out callee-allocates) (optional) (transfer none): Pointer to a
- *     location to store the data of the value (in UTF-8, if it's a string).
+ *     location to store the data of the value (in UTF-8, if it's a string)
  * @value_data_size: (out) (optional): Pointer to a location to store the length
- *     of @value_data, in bytes (including any NUL-terminators, if it's a
- *     string).
- *     %NULL if length is not needed.
+ *     of @value_data, in bytes (including any NUL-terminators, if it's a string).
+ *     %NULL if length is not needed
  * @error: (nullable): a pointer to %NULL #GError, or %NULL
  *
  * Stores the data of the value currently being iterated over in @value_data,
  * g_win32_registry_value_iter_get_data_w:
  * @iter: (in) (transfer none): a #GWin32RegistryValueIter
  * @auto_expand: (in): %TRUE to automatically expand G_WIN32_REGISTRY_VALUE_EXPAND_STR to
- *     G_WIN32_REGISTRY_VALUE_STR.
+ *     G_WIN32_REGISTRY_VALUE_STR
  * @value_data: (out callee-allocates) (optional) (transfer none): Pointer to a
- *     location to store the data of the value (in UTF-16, if it's a string).
- * @value_data_len: (out) (optional): Pointer to a location to store the size
- *     of @value_data, in bytes (including any NUL-terminators, if it's a
- *     string).
+ *     location to store the data of the value (in UTF-16, if it's a string)
+ * @value_data_size: (out) (optional): Pointer to a location to store the size
+ *     of @value_data, in bytes (including any NUL-terminators, if it's a string).
  *     %NULL if length is not needed.
  * @error: (nullable): a pointer to %NULL #GError, or %NULL
  *
index 0954815..be8b181 100644 (file)
 
 
 /**
+ * GStrv:
+ *
+ * A typedef alias for gchar**. This is mostly useful when used together with
+ * g_auto().
+ */
+
+
+/**
  * GTestCase:
  *
  * An opaque structure representing a test case.
  * GLib provides a standard method of reporting errors from a called
  * function to the calling code. (This is the same problem solved by
  * exceptions in other languages.) It's important to understand that
- * this method is both a data type (the #GError struct) and a set of
- * rules. If you use #GError incorrectly, then your code will not
+ * this method is both a data type (the #GError struct) and a [set of
+ * rules][gerror-rules]. If you use #GError incorrectly, then your code will not
  * properly interoperate with other code that uses #GError, and users
- * of your API will probably get confused.
+ * of your API will probably get confused. In most cases, [using #GError is
+ * preferred over numeric error codes][gerror-comparison], but there are
+ * situations where numeric error codes are useful for performance.
  *
  * First and foremost: #GError should only be used to report recoverable
  * runtime errors, never to report programming errors. If the programmer
  *   instead treat any unrecognized error code as equivalent to
  *   FAILED.
  *
+ * ## Comparison of #GError and traditional error handling # {#gerror-comparison}
+ *
+ * #GError has several advantages over traditional numeric error codes:
+ * importantly, tools like
+ * [gobject-introspection](https://developer.gnome.org/gi/stable/) understand
+ * #GErrors and convert them to exceptions in bindings; the message includes
+ * more information than just a code; and use of a domain helps prevent
+ * misinterpretation of error codes.
+ *
+ * #GError has disadvantages though: it requires a memory allocation, and
+ * formatting the error message string has a performance overhead. This makes it
+ * unsuitable for use in retry loops where errors are a common case, rather than
+ * being unusual. For example, using %G_IO_ERROR_WOULD_BLOCK means hitting these
+ * overheads in the normal control flow. String formatting overhead can be
+ * eliminated by using g_set_error_literal() in some cases.
+ *
+ * These performance issues can be compounded if a function wraps the #GErrors
+ * returned by the functions it calls: this multiplies the number of allocations
+ * and string formatting operations. This can be partially mitigated by using
+ * g_prefix_error().
+ *
+ * ## Rules for use of #GError # {#gerror-rules}
+ *
  * Summary of rules for use of #GError:
  *
  * - Do not report programming errors via #GError.
 /**
  * g_ascii_strtod:
  * @nptr: the string to convert to a numeric value.
- * @endptr: if non-%NULL, it returns the character after
- *           the last character used in the conversion.
+ * @endptr: (out) (transfer none) (optional): if non-%NULL, it returns the
+ *           character after the last character used in the conversion.
  *
  * Converts a string to a #gdouble value.
  *
 /**
  * g_ascii_strtoll:
  * @nptr: the string to convert to a numeric value.
- * @endptr: if non-%NULL, it returns the character after
- *           the last character used in the conversion.
+ * @endptr: (out) (transfer none) (optional): if non-%NULL, it returns the
+ *           character after the last character used in the conversion.
  * @base: to be used for the conversion, 2..36 or 0
  *
  * Converts a string to a #gint64 value.
 /**
  * g_ascii_strtoull:
  * @nptr: the string to convert to a numeric value.
- * @endptr: if non-%NULL, it returns the character after
- *           the last character used in the conversion.
+ * @endptr: (out) (transfer none) (optional): if non-%NULL, it returns the
+ *           character after the last character used in the conversion.
  * @base: to be used for the conversion, 2..36 or 0
  *
  * Converts a string to a #guint64 value.
 /**
  * g_async_queue_push_front:
  * @queue: a #GAsyncQueue
- * @data: @data to push into the @queue
+ * @item: data to push into the @queue
  *
- * Pushes the @data into the @queue. @data must not be %NULL.
+ * Pushes the @item into the @queue. @item must not be %NULL.
  * In contrast to g_async_queue_push(), this function
  * pushes the new item ahead of the items already in the queue,
  * so that it will be the next one to be popped off the queue.
 /**
  * g_async_queue_push_front_unlocked:
  * @queue: a #GAsyncQueue
- * @data: @data to push into the @queue
+ * @item: data to push into the @queue
  *
- * Pushes the @data into the @queue. @data must not be %NULL.
+ * Pushes the @item into the @queue. @item must not be %NULL.
  * In contrast to g_async_queue_push_unlocked(), this function
  * pushes the new item ahead of the items already in the queue,
  * so that it will be the next one to be popped off the queue.
 /**
  * g_async_queue_remove:
  * @queue: a #GAsyncQueue
- * @data: the @data to remove from the @queue
+ * @item: the data to remove from the @queue
  *
  * Remove an item from the queue.
  *
 /**
  * g_async_queue_remove_unlocked:
  * @queue: a #GAsyncQueue
- * @data: the @data to remove from the @queue
+ * @item: the data to remove from the @queue
  *
  * Remove an item from the queue.
  *
  * {
  *   g_auto(GQueue) queue = G_QUEUE_INIT;
  *   g_auto(GVariantBuilder) builder;
+ *   g_auto(GStrv) strv;
  *
  *   g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT);
+ *   strv = g_strsplit("a:b:c", ":", -1);
  *
  *   ...
  *
  * }
  * ]|
  *
- * You must initialise the variable in some way -- either by use of an
+ * You must initialize the variable in some way -- either by use of an
  * initialiser or by ensuring that an _init function will be called on
  * it unconditionally before it goes out of scope.
  *
  * gboolean
  * check_exists(GVariant *dict)
  * {
- *   g_autoptr(GVariant) dirname;
- *   g_autoptr(GVariant) basename = NULL;
- *   g_autoptr(gchar) path = NULL;
+ *   g_autoptr(GVariant) dirname, basename = NULL;
+ *   g_autofree gchar *path = NULL;
  *
  *   dirname = g_variant_lookup_value (dict, "dirname", G_VARIANT_TYPE_STRING);
  *
  * initialiser or by ensuring that it is assigned to unconditionally
  * before it goes out of scope.
  *
+ * See also g_auto(), g_autofree() and g_steal_pointer().
+ *
  * Since: 2.44
  */
 
 /**
  * g_bytes_get_data:
  * @bytes: a #GBytes
- * @size: (out) (allow-none): location to return size of byte data
+ * @size: (out) (optional): location to return size of byte data
  *
  * Get the byte data in the #GBytes. This data should not be modified.
  *
  * may represent an empty string with @data non-%NULL and @size as 0. %NULL will
  * not be returned if @size is non-zero.
  *
- * Returns: (transfer none) (array length=size) (type guint8) (allow-none): a pointer to the
- *          byte data, or %NULL
+ * Returns: (transfer none) (array length=size) (element-type guint8) (nullable):
+ *          a pointer to the byte data, or %NULL
  * Since: 2.32
  */
 
 
 /**
  * g_bytes_new:
- * @data: (transfer none) (array length=size) (element-type guint8) (allow-none):
+ * @data: (transfer none) (array length=size) (element-type guint8) (nullable):
  *        the data to be used for the bytes
  * @size: the size of @data
  *
 
 /**
  * g_bytes_new_static: (skip)
- * @data: (transfer full) (array length=size) (element-type guint8) (allow-none):
+ * @data: (transfer full) (array length=size) (element-type guint8) (nullable):
  *           the data to be used for the bytes
  * @size: the size of @data
  *
 
 /**
  * g_bytes_new_take:
- * @data: (transfer full) (array length=size) (element-type guint8) (allow-none):
+ * @data: (transfer full) (array length=size) (element-type guint8) (nullable):
  *           the data to be used for the bytes
  * @size: the size of @data
  *
 
 
 /**
- * g_bytes_new_with_free_func:
- * @data: (array length=size) (allow-none): the data to be used for the bytes
+ * g_bytes_new_with_free_func: (skip)
+ * @data: (array length=size) (element-type guint8) (nullable):
+ *           the data to be used for the bytes
  * @size: the size of @data
  * @free_func: the function to call to release the data
  * @user_data: data to pass to @free_func
 
 /**
  * g_bytes_unref:
- * @bytes: (allow-none): a #GBytes
+ * @bytes: (nullable): a #GBytes
  *
  * Releases a reference on @bytes.  This may result in the bytes being
  * freed.
 /**
  * g_bytes_unref_to_data:
  * @bytes: (transfer full): a #GBytes
- * @size: location to place the length of the returned data
+ * @size: (out): location to place the length of the returned data
  *
  * Unreferences the bytes, and returns a pointer the same byte data
  * contents.
  * g_bytes_new_take() or g_byte_array_free_to_bytes(). In all other cases the
  * data is copied.
  *
- * Returns: (transfer full): a pointer to the same byte data, which should
- *          be freed with g_free()
+ * Returns: (transfer full) (array length=size) (element-type guint8):
+ *          a pointer to the same byte data, which should be freed with g_free()
  * Since: 2.32
  */
 
  * @timeout_: (out): location to store timeout to be used in polling
  * @fds: (out caller-allocates) (array length=n_fds): location to
  *       store #GPollFD records that need to be polled.
- * @n_fds: length of @fds.
+ * @n_fds: (in): length of @fds.
  *
  * Determines information necessary to poll this main loop.
  *
 
 /**
  * g_propagate_error:
- * @dest: error return location
- * @src: error to move into the return location
+ * @dest: (out callee-allocates) (optional) (nullable): error return location
+ * @src: (transfer full): error to move into the return location
  *
  * If @dest is %NULL, free @src; otherwise, moves @src into *@dest.
  * The error variable @dest points to must be %NULL.
  *
+ * @src must be non-%NULL.
+ *
  * Note that @src is no longer valid after this call. If you want
  * to keep using the same GError*, you need to set it to %NULL
  * after calling this function on it.
 
 
 /**
+ * g_sequence_is_empty:
+ * @seq: a #GSequence
+ *
+ * Returns %TRUE if the sequence contains zero items.
+ *
+ * This function is functionally identical to checking the result of
+ * g_sequence_get_length() being equal to zero. However this function is
+ * implemented in O(1) running time.
+ *
+ * Returns: %TRUE if the sequence is empty, otherwise %FALSE.
+ * Since: 2.48
+ */
+
+
+/**
  * g_sequence_iter_compare:
  * @a: a #GSequenceIter
  * @b: a #GSequenceIter
 /**
  * g_strtod:
  * @nptr: the string to convert to a numeric value.
- * @endptr: if non-%NULL, it returns the character after
- *           the last character used in the conversion.
+ * @endptr: (out) (transfer none) (optional): if non-%NULL, it returns the
+ *           character after the last character used in the conversion.
  *
  * Converts a string to a #gdouble value.
  * It calls the standard strtod() function to handle the conversion, but
index 9302fa6..f9ab675 100644 (file)
 
 /**
  * g_cclosure_marshal_BOOLEAN__FLAGS:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: a #GValue which can store the returned #gboolean
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding instance and arg1
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with handlers that
- * take a flags type as an argument and return a boolean.  If you have
- * such a signal, you will probably also need to use an accumulator,
- * such as g_signal_accumulator_true_handled().
+ * A marshaller for a #GCClosure with a callback of type
+ * `gboolean (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter
+ * denotes a flags type.
  */
 
 
 
 /**
  * g_cclosure_marshal_BOOL__FLAGS:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
  *
- * An old alias for g_cclosure_marshal_BOOLEAN__FLAGS().
+ * Another name for g_cclosure_marshal_BOOLEAN__FLAGS().
  */
 
 
 /**
  * g_cclosure_marshal_STRING__OBJECT_POINTER:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: a #GValue, which can store the returned string
+ * @n_param_values: 3
+ * @param_values: a #GValue array holding instance, arg1 and arg2
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with handlers that
- * take a #GObject and a pointer and produce a string.  It is highly
- * unlikely that your signal handler fits this description.
+ * A marshaller for a #GCClosure with a callback of type
+ * `gchar* (*callback) (gpointer instance, GObject *arg1, gpointer arg2, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__BOOLEAN:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gboolean parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * boolean argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gboolean arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__BOXED:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #GBoxed* parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * argument which is any boxed pointer type.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, GBoxed *arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__CHAR:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gchar parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * character argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gchar arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__DOUBLE:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gdouble parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with one
- * double-precision floating point argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gdouble arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__ENUM:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the enumeration parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * argument with an enumerated type.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter denotes an enumeration type..
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__FLAGS:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the flags parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * argument with a flags types.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter denotes a flags type.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__FLOAT:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gfloat parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with one
- * single-precision floating point argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gfloat arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__INT:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gint parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * integer argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gint arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__LONG:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #glong parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with with a single
- * long integer argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, glong arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__OBJECT:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #GObject* parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * #GObject argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, GObject *arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__PARAM:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #GParamSpec* parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * argument of type #GParamSpec.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, GParamSpec *arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__POINTER:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
- *
- * A #GClosureMarshal function for use with signals with a single raw
- * pointer argument type.
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gpointer parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * If it is possible, it is better to use one of the more specific
- * functions such as g_cclosure_marshal_VOID__OBJECT() or
- * g_cclosure_marshal_VOID__OBJECT().
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gpointer arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__STRING:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gchar* parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single string
- * argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, const gchar *arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__UCHAR:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #guchar parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * unsigned character argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, guchar arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__UINT:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #guint parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with with a single
- * unsigned integer argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, guint arg1, gpointer user_data)`.
  */
 
 
 /**
  * g_cclosure_marshal_VOID__UINT_POINTER:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 3
+ * @param_values: a #GValue array holding instance, arg1 and arg2
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a unsigned int
- * and a pointer as arguments.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, guint arg1, gpointer arg2, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__ULONG:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #gulong parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with a single
- * unsigned long integer argument.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gulong arg1, gpointer user_data)`.
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__VARIANT:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 2
+ * @param_values: a #GValue array holding the instance and the #GVariant* parameter
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
+ *
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, GVariant *arg1, gpointer user_data)`.
  *
- * A #GClosureMarshal function for use with signals with a single
- * #GVariant argument.
+ * Since: 2.26
  */
 
 
 
 /**
  * g_cclosure_marshal_VOID__VOID:
- * @closure: A #GClosure.
- * @return_value: A #GValue to store the return value. May be %NULL
- *   if the callback of closure doesn't return a value.
- * @n_param_values: The length of the @param_values array.
- * @param_values: An array of #GValues holding the arguments
- *   on which to invoke the callback of closure.
- * @invocation_hint: The invocation hint given as the last argument to
- *   g_closure_invoke().
- * @marshal_data: Additional data specified when registering the
- *   marshaller, see g_closure_set_marshal() and
- *   g_closure_set_meta_marshal()
+ * @closure: the #GClosure to which the marshaller belongs
+ * @return_value: ignored
+ * @n_param_values: 1
+ * @param_values: a #GValue array holding only the instance
+ * @invocation_hint: the invocation hint given as the last argument
+ *  to g_closure_invoke()
+ * @marshal_data: additional data specified when registering the marshaller
  *
- * A #GClosureMarshal function for use with signals with no arguments.
+ * A marshaller for a #GCClosure with a callback of type
+ * `void (*callback) (gpointer instance, gpointer user_data)`.
  */
 
 
  * @name: canonical name of the property specified
  * @nick: nick name for the property specified
  * @blurb: description of the property specified
- * @default_value: default value for the property specified
+ * @default_value: (nullable): default value for the property specified
  * @flags: flags for the property specified
  *
  * Creates a new #GParamSpecString instance.
  * consistent with how a signal emitted with @detail would be delivered
  * to those handlers.
  *
+ * Since 2.46 this also checks for a non-default class closure being
+ * installed, as this is basically always what you want.
+ *
  * One example of when you might use this is when the arguments to the
  * signal are difficult to compute. A class implementor may opt to not
  * emit the signal if no one is attached anyway, thus saving the cost
  * g_value_unset:
  * @value: An initialized #GValue structure.
  *
- * Clears the current value in @value and "unsets" the type,
- * this releases all resources associated with this GValue.
- * An unset value is the same as an uninitialized (zero-filled)
- * #GValue structure.
+ * Clears the current value in @value (if any) and "unsets" the type,
+ * this releases all resources associated with this GValue. An unset
+ * value is the same as an uninitialized (zero-filled) #GValue
+ * structure.
  */
 
 
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 381f465..0991b80 100644 (file)
@@ -342,7 +342,10 @@ g_object_info_get_property (GIObjectInfo *info,
   header = (Header *)rinfo->typelib->data;
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size
+    + blob->n_field_callbacks * header->callback_blob_size
     + n * header->property_blob_size;
 
   return (GIPropertyInfo *) g_info_new (GI_INFO_TYPE_PROPERTY, (GIBaseInfo*)info,
@@ -397,7 +400,10 @@ g_object_info_get_method (GIObjectInfo *info,
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size
+    + blob->n_field_callbacks * header->callback_blob_size
     + blob->n_properties * header->property_blob_size
     + n * header->function_blob_size;
 
@@ -431,7 +437,10 @@ g_object_info_find_method (GIObjectInfo *info,
   header = (Header *)rinfo->typelib->data;
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size +
+    + blob->n_field_callbacks * header->callback_blob_size
     + blob->n_properties * header->property_blob_size;
 
   return _g_base_info_find_method ((GIBaseInfo*)info, offset, blob->n_methods, name);
@@ -541,7 +550,10 @@ g_object_info_get_signal (GIObjectInfo *info,
   header = (Header *)rinfo->typelib->data;
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size
+    + blob->n_field_callbacks * header->callback_blob_size
     + blob->n_properties * header->property_blob_size
     + blob->n_methods * header->function_blob_size
     + n * header->signal_blob_size;
@@ -630,7 +642,10 @@ g_object_info_get_vfunc (GIObjectInfo *info,
   header = (Header *)rinfo->typelib->data;
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size
+    + blob->n_field_callbacks * header->callback_blob_size
     + blob->n_properties * header->property_blob_size
     + blob->n_methods * header->function_blob_size
     + blob->n_signals * header->signal_blob_size
@@ -671,7 +686,10 @@ g_object_info_find_vfunc (GIObjectInfo *info,
   header = (Header *)rinfo->typelib->data;
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size
+    + blob->n_field_callbacks * header->callback_blob_size
     + blob->n_properties * header->property_blob_size
     + blob->n_methods * header->function_blob_size
     + blob->n_signals * header->signal_blob_size;
@@ -786,7 +804,10 @@ g_object_info_get_constant (GIObjectInfo *info,
   header = (Header *)rinfo->typelib->data;
   blob = (ObjectBlob *)&rinfo->typelib->data[rinfo->offset];
 
-  offset = g_object_info_get_field_offset(info, blob->n_fields)
+  offset = rinfo->offset + header->object_blob_size
+    + (blob->n_interfaces + blob->n_interfaces % 2) * 2
+    + blob->n_fields * header->field_blob_size
+    + blob->n_field_callbacks * header->callback_blob_size
     + blob->n_properties * header->property_blob_size
     + blob->n_methods * header->function_blob_size
     + blob->n_signals * header->signal_blob_size
index 4723c95..bb91977 100644 (file)
 #include <string.h>
 #include <stdlib.h>
 
+#ifdef HAVE_GETAUXVAL
+#include <unistd.h>
+#include <sys/auxv.h>
+#endif
+
 #include <glib.h>
 #include <glib/gprintf.h>
 #include <gmodule.h>
@@ -147,6 +152,14 @@ init_globals (void)
   if (!g_once_init_enter (&initialized))
     return;
 
+#ifdef HAVE_GETAUXVAL
+  if (getauxval (AT_SECURE))
+    {
+      g_printerr ("error: libgirepository.so (gobject-introspection) is not audited for use in setuid applications\nSee https://bugzilla.gnome.org/show_bug.cgi?id=755472\n");
+      _exit (1);
+    }
+#endif
+
   if (default_repository == NULL)
     default_repository = g_object_new (G_TYPE_IREPOSITORY, NULL);
 
index e3897c3..66b33fa 100644 (file)
@@ -508,7 +508,7 @@ _g_ir_module_build_typelib (GIrModule  *module)
          build.nodes_with_attributes = nodes_with_attributes;
          build.n_attributes = header->n_attributes;
          build.data = data;
-         _g_ir_node_build_typelib (node, NULL, &build, &offset, &offset2);
+         _g_ir_node_build_typelib (node, NULL, &build, &offset, &offset2, NULL);
 
          nodes_with_attributes = build.nodes_with_attributes;
          header->n_attributes = build.n_attributes;
index d0a18a3..455e9d6 100644 (file)
@@ -1326,7 +1326,8 @@ _g_ir_node_build_members (GList         **members,
                         GIrNode        *parent,
                          GIrTypelibBuild *build,
                         guint32        *offset,
-                        guint32        *offset2)
+                        guint32        *offset2,
+                        guint16        *count2)
 {
   GList *l = *members;
 
@@ -1338,7 +1339,7 @@ _g_ir_node_build_members (GList         **members,
       if (member->type == type)
        {
          (*count)++;
-         _g_ir_node_build_typelib (member, parent, build, offset, offset2);
+         _g_ir_node_build_typelib (member, parent, build, offset, offset2, count2);
          *members = g_list_delete_link (*members, l);
        }
       l = next;
@@ -1379,7 +1380,8 @@ _g_ir_node_build_typelib (GIrNode         *node,
                          GIrNode         *parent,
                          GIrTypelibBuild *build,
                          guint32         *offset,
-                         guint32         *offset2)
+                         guint32         *offset2,
+                         guint16         *count2)
 {
   gboolean appended_stack;
   GHashTable *strings = build->strings;
@@ -1480,7 +1482,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
                      *offset2 += sizeof (ArrayTypeBlob);
 
                      _g_ir_node_build_typelib ((GIrNode *)type->parameter_type1,
-                                              node, build, &pos, offset2);
+                                              node, build, &pos, offset2, NULL);
                    }
                    break;
 
@@ -1514,7 +1516,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
                      *offset2 += sizeof (ParamTypeBlob) + sizeof (SimpleTypeBlob);
 
                      _g_ir_node_build_typelib ((GIrNode *)type->parameter_type1,
-                                              node, build, &pos, offset2);
+                                              node, build, &pos, offset2, NULL);
                    }
                    break;
 
@@ -1533,9 +1535,9 @@ _g_ir_node_build_typelib (GIrNode         *node,
                      *offset2 += sizeof (ParamTypeBlob) + sizeof (SimpleTypeBlob)*2;
 
                      _g_ir_node_build_typelib ((GIrNode *)type->parameter_type1,
-                                              node, build, &pos, offset2);
+                                              node, build, &pos, offset2, NULL);
                      _g_ir_node_build_typelib ((GIrNode *)type->parameter_type2,
-                                              node, build, &pos, offset2);
+                                              node, build, &pos, offset2, NULL);
                    }
                    break;
 
@@ -1585,7 +1587,14 @@ _g_ir_node_build_typelib (GIrNode         *node,
             blob->type.offset = GI_INFO_TYPE_CALLBACK;
            *offset += sizeof (FieldBlob);
             _g_ir_node_build_typelib ((GIrNode *)field->callback,
-                                    node, build, offset, offset2);
+                                    node, build, offset, offset2, NULL);
+            /* Fields with callbacks are bigger than normal, update count2
+             * as an extra hint which represents the number of fields which are
+             * callbacks. This allows us to gain constant time performance in the
+             * repository for skipping over the fields section.
+             */
+            if (count2)
+              (*count2)++;
           }
         else
           {
@@ -1593,7 +1602,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
             /* We handle the size member specially below, so subtract it */
            *offset += sizeof (FieldBlob) - sizeof (SimpleTypeBlob);
             _g_ir_node_build_typelib ((GIrNode *)field->type,
-                                    node, build, offset, offset2);
+                                    node, build, offset, offset2, NULL);
           }
       }
       break;
@@ -1616,7 +1625,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
        blob->reserved = 0;
 
         _g_ir_node_build_typelib ((GIrNode *)prop->type,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
       }
       break;
 
@@ -1658,7 +1667,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
        g_debug ("building function '%s'", function->symbol);
 
         _g_ir_node_build_typelib ((GIrNode *)function->result->type,
-                                node, build, &signature, offset2);
+                                node, build, &signature, offset2, NULL);
 
        blob2->may_return_null = function->result->nullable;
        blob2->caller_owns_return_value = function->result->transfer;
@@ -1675,7 +1684,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
          {
            GIrNode *param = (GIrNode *)l->data;
 
-           _g_ir_node_build_typelib (param, node, build, &signature, offset2);
+           _g_ir_node_build_typelib (param, node, build, &signature, offset2, NULL);
          }
 
       }
@@ -1702,7 +1711,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
        blob->signature = signature;
 
         _g_ir_node_build_typelib ((GIrNode *)function->result->type,
-                                node, build, &signature, offset2);
+                                node, build, &signature, offset2, NULL);
 
        blob2->may_return_null = function->result->nullable;
        blob2->caller_owns_return_value = function->result->transfer;
@@ -1717,7 +1726,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
          {
            GIrNode *param = (GIrNode *)l->data;
 
-           _g_ir_node_build_typelib (param, node, build, &signature, offset2);
+           _g_ir_node_build_typelib (param, node, build, &signature, offset2, NULL);
          }
       }
       break;
@@ -1760,7 +1769,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
         ((GIrNode *) signal->result)->offset = signature;
 
         _g_ir_node_build_typelib ((GIrNode *)signal->result->type,
-                                node, build, &signature, offset2);
+                                node, build, &signature, offset2, NULL);
 
        blob2->may_return_null = signal->result->nullable;
        blob2->caller_owns_return_value = signal->result->transfer;
@@ -1775,7 +1784,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
          {
            GIrNode *param = (GIrNode *)l->data;
 
-           _g_ir_node_build_typelib (param, node, build, &signature, offset2);
+           _g_ir_node_build_typelib (param, node, build, &signature, offset2, NULL);
          }
       }
       break;
@@ -1819,7 +1828,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
        blob->signature = signature;
 
         _g_ir_node_build_typelib ((GIrNode *)vfunc->result->type,
-                                node, build, &signature, offset2);
+                                node, build, &signature, offset2, NULL);
 
        blob2->may_return_null = vfunc->result->nullable;
        blob2->caller_owns_return_value = vfunc->result->transfer;
@@ -1835,7 +1844,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
          {
            GIrNode *param = (GIrNode *)l->data;
 
-           _g_ir_node_build_typelib (param, node, build, &signature, offset2);
+           _g_ir_node_build_typelib (param, node, build, &signature, offset2, NULL);
          }
       }
       break;
@@ -1865,7 +1874,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
         blob->closure = param->closure;
         blob->destroy = param->destroy;
 
-        _g_ir_node_build_typelib ((GIrNode *)param->type, node, build, offset, offset2);
+        _g_ir_node_build_typelib ((GIrNode *)param->type, node, build, offset, offset2, NULL);
       }
       break;
 
@@ -1905,10 +1914,10 @@ _g_ir_node_build_typelib (GIrNode         *node,
        members = g_list_copy (struct_->members);
 
        _g_ir_node_build_members (&members, G_IR_NODE_FIELD, &blob->n_fields,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        _g_ir_node_build_members (&members, G_IR_NODE_FUNCTION, &blob->n_methods,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        _g_ir_node_check_unhandled_members (&members, node->type);
 
@@ -1940,10 +1949,10 @@ _g_ir_node_build_typelib (GIrNode         *node,
        members = g_list_copy (boxed->members);
 
        _g_ir_node_build_members (&members, G_IR_NODE_FIELD, &blob->n_fields,
-                                 node, build, offset, offset2);
+                                 node, build, offset, offset2, NULL);
 
        _g_ir_node_build_members (&members, G_IR_NODE_FUNCTION, &blob->n_methods,
-                                 node, build, offset, offset2);
+                                 node, build, offset, offset2, NULL);
 
        _g_ir_node_check_unhandled_members (&members, node->type);
 
@@ -1988,7 +1997,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
            *offset += 28;
            blob->discriminated = TRUE;
            _g_ir_node_build_typelib ((GIrNode *)union_->discriminator_type,
-                                    build, offset, offset2);
+                                    build, offset, offset2, NULL);
          }
        else
          {
@@ -2000,10 +2009,10 @@ _g_ir_node_build_typelib (GIrNode         *node,
        members = g_list_copy (union_->members);
 
        _g_ir_node_build_members (&members, G_IR_NODE_FIELD, &blob->n_fields,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        _g_ir_node_build_members (&members, G_IR_NODE_FUNCTION, &blob->n_functions,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        _g_ir_node_check_unhandled_members (&members, node->type);
 
@@ -2015,7 +2024,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
              {
                GIrNode *member = (GIrNode *)l->data;
 
-               _g_ir_node_build_typelib (member, node, build, offset, offset2);
+               _g_ir_node_build_typelib (member, node, build, offset, offset2, NULL);
              }
          }
       }
@@ -2063,7 +2072,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
            GIrNode *value = (GIrNode *)l->data;
 
            blob->n_values++;
-           _g_ir_node_build_typelib (value, node, build, offset, offset2);
+           _g_ir_node_build_typelib (value, node, build, offset, offset2, NULL);
          }
 
        for (l = enum_->methods; l; l = l->next)
@@ -2071,7 +2080,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
            GIrNode *method = (GIrNode *)l->data;
 
            blob->n_methods++;
-           _g_ir_node_build_typelib (method, node, build, offset, offset2);
+           _g_ir_node_build_typelib (method, node, build, offset, offset2, NULL);
          }
       }
       break;
@@ -2114,6 +2123,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
        blob->n_signals = 0;
        blob->n_vfuncs = 0;
        blob->n_constants = 0;
+       blob->n_field_callbacks = 0;
 
        *offset += sizeof(ObjectBlob);
        for (l = object->interfaces; l; l = l->next)
@@ -2127,27 +2137,27 @@ _g_ir_node_build_typelib (GIrNode         *node,
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_FIELD, &blob->n_fields,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, &blob->n_field_callbacks);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_PROPERTY, &blob->n_properties,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_FUNCTION, &blob->n_methods,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_SIGNAL, &blob->n_signals,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_VFUNC, &blob->n_vfuncs,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_CONSTANT, &blob->n_constants,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        _g_ir_node_check_unhandled_members (&members, node->type);
 
@@ -2190,23 +2200,23 @@ _g_ir_node_build_typelib (GIrNode         *node,
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_PROPERTY, &blob->n_properties,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_FUNCTION, &blob->n_methods,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_SIGNAL, &blob->n_signals,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_VFUNC, &blob->n_vfuncs,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        *offset = ALIGN_VALUE (*offset, 4);
        _g_ir_node_build_members (&members, G_IR_NODE_CONSTANT, &blob->n_constants,
-                                node, build, offset, offset2);
+                                node, build, offset, offset2, NULL);
 
        _g_ir_node_check_unhandled_members (&members, node->type);
 
@@ -2298,7 +2308,7 @@ _g_ir_node_build_typelib (GIrNode         *node,
          }
        *offset2 += ALIGN_VALUE (blob->size, 4);
 
-       _g_ir_node_build_typelib ((GIrNode *)constant->type, node, build, &pos, offset2);
+       _g_ir_node_build_typelib ((GIrNode *)constant->type, node, build, &pos, offset2, NULL);
       }
       break;
     default:
index 02196e7..e4ce85a 100644 (file)
@@ -358,7 +358,8 @@ void      _g_ir_node_build_typelib   (GIrNode         *node,
                                      GIrNode         *parent,
                                      GIrTypelibBuild *build,
                                      guint32         *offset,
-                                     guint32         *offset2);
+                                     guint32         *offset2,
+                                     guint16         *count2);
 int       _g_ir_node_cmp             (GIrNode    *node,
                                     GIrNode    *other);
 gboolean  _g_ir_node_can_have_member (GIrNode    *node);
index eb61e34..4c43e0a 100644 (file)
@@ -1066,9 +1066,9 @@ start_instance_parameter (GMarkupParseContext *context,
 
   state_switch (ctx, STATE_PASSTHROUGH);
 
-  if (strcmp (transfer, "full") == 0)
+  if (g_strcmp0 (transfer, "full") == 0)
     transfer_full = TRUE;
-  else if (strcmp (transfer, "none") == 0)
+  else if (g_strcmp0 (transfer, "none") == 0)
     transfer_full = FALSE;
   else
     {
index 1bc189c..8b2e3ec 100644 (file)
  *
  * Obtain if the type is passed as a reference.
  *
+ * Note that the types of %GI_DIRECTION_OUT and %GI_DIRECTION_INOUT parameters
+ * will only be pointers if the underlying type being transferred is a pointer
+ * (i.e. only if the type of the C function’s formal parameter is a pointer to a
+ * pointer).
+ *
  * Returns: %TRUE if it is a pointer
  */
 gboolean
index 5ccff71..0f10512 100644 (file)
@@ -1051,7 +1051,8 @@ typedef struct {
  * @n_constants: The lengths of the arrays.Up to 16bits of padding may be
  *   inserted between the arrays to ensure that they start on a 32bit
  *   boundary.
- * @reserved2: Reserved for future use.
+ * @n_field_callbacks: The number of n_fields which are also callbacks.
+ *   This is used to calculate the fields section size in constant time.
  * @ref_func: String pointing to a function which can be called to increase
  *   the reference count for an instance of this object type.
  * @unref_func: String pointing to a function which can be called to decrease
@@ -1088,7 +1089,7 @@ typedef struct {
   guint16   n_signals;
   guint16   n_vfuncs;
   guint16   n_constants;
-  guint16   reserved2;
+  guint16   n_field_callbacks;
 
   guint32   ref_func;
   guint32   unref_func;
index 09e74f1..aaa8355 100644 (file)
@@ -1645,6 +1645,7 @@ validate_object_blob (ValidateContext *ctx,
   ObjectBlob *blob;
   gint i;
   guint32 offset2;
+  guint16 n_field_callbacks;
 
   header = (Header *)typelib->data;
 
@@ -1774,6 +1775,7 @@ validate_object_blob (ValidateContext *ctx,
 
   push_context (ctx, get_string_nofail (typelib, blob->name));
 
+  n_field_callbacks = 0;
   for (i = 0; i < blob->n_fields; i++)
     {
       FieldBlob *blob = (FieldBlob*) &typelib->data[offset2];
@@ -1783,8 +1785,21 @@ validate_object_blob (ValidateContext *ctx,
 
       offset2 += sizeof (FieldBlob);
       /* Special case fields which are callbacks. */
-      if (blob->has_embedded_type)
+      if (blob->has_embedded_type) {
         offset2 += sizeof (CallbackBlob);
+        n_field_callbacks++;
+      }
+    }
+
+  if (blob->n_field_callbacks != n_field_callbacks)
+    {
+      g_set_error (error,
+                   G_TYPELIB_ERROR,
+                   G_TYPELIB_ERROR_INVALID_BLOB,
+                   "Incorrect number of field callbacks; expected "
+                   "%" G_GUINT16_FORMAT ", got %" G_GUINT16_FORMAT,
+                   blob->n_field_callbacks, n_field_callbacks);
+      return FALSE;
     }
 
   for (i = 0; i < blob->n_properties; i++, offset2 += sizeof (PropertyBlob))
index 5ab7a95..139b518 100644 (file)
@@ -17,7 +17,7 @@
 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 # Boston, MA 02111-1307, USA.
 #
-
+from __future__ import absolute_import
 import os
 builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
 if builddir is not None:
index 618cf47..b82ff81 100644 (file)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
+import sys
 import optparse
+import codecs
+from contextlib import contextmanager
 
 from giscanner import message
 from giscanner.annotationparser import GtkDocCommentBlockParser, GtkDocCommentBlockWriter
@@ -27,6 +35,24 @@ from giscanner.scannermain import (get_preprocessor_option_group,
                                    process_packages)
 
 
+@contextmanager
+def encode_stdout(encoding):
+    """Force stdout into a specific encoding."""
+    # Python 2 does not encode stdout writes so wrap it with 'encoding' encoded writer.
+    # Python 3 uses a io.TextIOBase wrapped stdout with the system default encoding.
+    # Re-wrap the underlying buffer with a new writer with the given 'encoding'.
+    # See: https://docs.python.org/3/library/sys.html#sys.stdout
+    old_stdout = sys.stdout
+    if sys.version_info.major < 3:
+        binary_stdout = sys.stdout
+    else:
+        binary_stdout = sys.stdout.buffer
+
+    sys.stdout = codecs.getwriter(encoding)(binary_stdout)
+    yield
+    sys.stdout = old_stdout
+
+
 def annotation_main(args):
     parser = optparse.OptionParser('%prog [options] sources')
 
@@ -61,16 +87,18 @@ def annotation_main(args):
         parser = GtkDocCommentBlockParser()
         writer = GtkDocCommentBlockWriter(indent=False)
         blocks = parser.parse_comment_blocks(ss.get_comments())
-        print '/' + ('*' * 60) + '/'
-        print '/* THIS FILE IS GENERATED DO NOT EDIT */'
-        print '/' + ('*' * 60) + '/'
-        print
-        for block in sorted(blocks.values()):
-            print writer.write(block)
-            print
-        print
-        print '/' + ('*' * 60) + '/'
-        print '/* THIS FILE IS GENERATED DO NOT EDIT */'
-        print '/' + ('*' * 60) + '/'
+
+        with encode_stdout('utf-8'):
+            print('/' + ('*' * 60) + '/')
+            print('/* THIS FILE IS GENERATED DO NOT EDIT */')
+            print('/' + ('*' * 60) + '/')
+            print('')
+            for block in sorted(blocks.values()):
+                print(writer.write(block))
+                print('')
+            print('')
+            print('/' + ('*' * 60) + '/')
+            print('/* THIS FILE IS GENERATED DO NOT EDIT */')
+            print('/' + ('*' * 60) + '/')
 
     return 0
index e1a1800..31a6292 100644 (file)
@@ -108,9 +108,13 @@ Refer to the `GTK-Doc manual`_ for more detailed usage information.
 
 
 from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 import os
 import re
+import operator
 
 from collections import namedtuple
 from operator import ne, gt, lt
@@ -204,6 +208,7 @@ ANN_INOUT = 'inout'
 ANN_METHOD = 'method'
 ANN_NULLABLE = 'nullable'
 ANN_OPTIONAL = 'optional'
+ANN_NOT = 'not'
 ANN_OUT = 'out'
 ANN_REF_FUNC = 'ref-func'
 ANN_RENAME_TO = 'rename-to'
@@ -219,6 +224,7 @@ ANN_VALUE = 'value'
 GI_ANNS = [ANN_ALLOW_NONE,
            ANN_NULLABLE,
            ANN_OPTIONAL,
+           ANN_NOT,
            ANN_ARRAY,
            ANN_ATTRIBUTES,
            ANN_CLOSURE,
@@ -269,6 +275,11 @@ OPT_OUT_CALLER_ALLOCATES = 'caller-allocates'
 OUT_OPTIONS = [OPT_OUT_CALLEE_ALLOCATES,
                OPT_OUT_CALLER_ALLOCATES]
 
+# (not) annotation options
+OPT_NOT_NULLABLE = 'nullable'
+
+NOT_OPTIONS = [OPT_NOT_NULLABLE]
+
 # (scope) annotation options
 OPT_SCOPE_ASYNC = 'async'
 OPT_SCOPE_CALL = 'call'
@@ -541,7 +552,7 @@ class GtkDocAnnotatable(object):
         self.annotations = GtkDocAnnotations()
 
     def __repr__(self):
-        return '<GtkDocAnnotatable %r %r>' % (self.annotations, )
+        return "<GtkDocAnnotatable '%s' %r>" % (self.annotations, )
 
     def validate(self):
         '''
@@ -564,6 +575,18 @@ class GtkDocAnnotatable(object):
                     # GObject-Instrospection version.
                     warn('unknown annotation: %s' % (ann_name, ), position)
 
+                # Validate that (nullable) and (not nullable) are not both
+                # present. Same for (allow-none) and (not nullable).
+                if ann_name == ANN_NOT and OPT_NOT_NULLABLE in options:
+                    if ANN_NULLABLE in self.annotations:
+                        warn('cannot have both "%s" and "%s" present' %
+                             (ANN_NOT + ' ' + OPT_NOT_NULLABLE, ANN_NULLABLE),
+                             position)
+                    if ANN_ALLOW_NONE in self.annotations:
+                        warn('cannot have both "%s" and "%s" present' %
+                             (ANN_NOT + ' ' + OPT_NOT_NULLABLE, ANN_ALLOW_NONE),
+                             position)
+
     def _validate_options(self, position, ann_name, n_options, expected_n_options, operator,
                           message):
         '''
@@ -825,6 +848,19 @@ class GtkDocAnnotatable(object):
 
         self._validate_annotation(position, ann_name, options, exact_n_options=0)
 
+    def _do_validate_not(self, position, ann_name, options):
+        '''
+        Validate the ``(not)`` annotation.
+
+        :param position: :class:`giscanner.message.Position` of the line in the source file
+                         containing the annotation to be validated
+        :param ann_name: name of the annotation holding the options to validate
+        :param options: annotation options held by the annotation
+        '''
+
+        self._validate_annotation(position, ann_name, options, exact_n_options=1,
+                                  choices=NOT_OPTIONS)
+
     def _do_validate_out(self, position, ann_name, options):
         '''
         Validate the ``(out)`` annotation.
@@ -970,7 +1006,7 @@ class GtkDocParameter(GtkDocAnnotatable):
 
     valid_annotations = (ANN_ALLOW_NONE, ANN_ARRAY, ANN_ATTRIBUTES, ANN_CLOSURE, ANN_DESTROY,
                          ANN_ELEMENT_TYPE, ANN_IN, ANN_INOUT, ANN_OUT, ANN_SCOPE, ANN_SKIP,
-                         ANN_TRANSFER, ANN_TYPE, ANN_OPTIONAL, ANN_NULLABLE)
+                         ANN_TRANSFER, ANN_TYPE, ANN_OPTIONAL, ANN_NULLABLE, ANN_NOT)
 
     def __init__(self, name, position=None):
         GtkDocAnnotatable.__init__(self, position)
@@ -982,7 +1018,7 @@ class GtkDocParameter(GtkDocAnnotatable):
         self.description = None
 
     def __repr__(self):
-        return '<GtkDocParameter %r %r>' % (self.name, self.annotations)
+        return "<GtkDocParameter '%s' %r>" % (self.name, self.annotations)
 
 
 class GtkDocTag(GtkDocAnnotatable):
@@ -993,7 +1029,7 @@ class GtkDocTag(GtkDocAnnotatable):
     __slots__ = ('name', 'value', 'description')
 
     valid_annotations = (ANN_ALLOW_NONE, ANN_ARRAY, ANN_ATTRIBUTES, ANN_ELEMENT_TYPE, ANN_SKIP,
-                         ANN_TRANSFER, ANN_TYPE, ANN_NULLABLE, ANN_OPTIONAL)
+                         ANN_TRANSFER, ANN_TYPE, ANN_NULLABLE, ANN_OPTIONAL, ANN_NOT)
 
     def __init__(self, name, position=None):
         GtkDocAnnotatable.__init__(self, position)
@@ -1008,7 +1044,7 @@ class GtkDocTag(GtkDocAnnotatable):
         self.description = None
 
     def __repr__(self):
-        return '<GtkDocTag %r %r>' % (self.name, self.annotations)
+        return "<GtkDocTag '%s' %r>" % (self.name, self.annotations)
 
 
 class GtkDocCommentBlock(GtkDocAnnotatable):
@@ -1051,14 +1087,35 @@ class GtkDocCommentBlock(GtkDocAnnotatable):
         #: applied to this :class:`GtkDocCommentBlock`.
         self.tags = OrderedDict()
 
-    def __cmp__(self, other):
+    def _compare(self, other, op):
         # Note: This is used by g-ir-annotation-tool, which does a ``sorted(blocks.values())``,
         #       meaning that keeping this around makes update-glib-annotations.py patches
         #       easier to review.
-        return cmp(self.name, other.name)
+        return op(self.name, other.name)
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
+
+    def __hash__(self):
+        return hash(self.name)
 
     def __repr__(self):
-        return '<GtkDocCommentBlock %r %r>' % (self.name, self.annotations)
+        return "<GtkDocCommentBlock '%s' %r>" % (self.name, self.annotations)
 
     def validate(self):
         '''
@@ -1123,9 +1180,10 @@ class GtkDocCommentBlockParser(object):
         for (comment, filename, lineno) in comments:
             try:
                 comment_block = self.parse_comment_block(comment, filename, lineno)
-            except Exception:
+            except Exception as e:
                 error('unrecoverable parse error, please file a GObject-Introspection bug'
-                      'report including the complete comment block at the indicated location.',
+                      'report including the complete comment block at the indicated location. %s' %
+                      str(e),
                       Position(filename, lineno))
                 continue
 
index c7ea2d7..99bbd3e 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import copy
+import operator
 from itertools import chain
 
 from . import message
@@ -118,15 +124,37 @@ in contrast to the other create_type() functions."""
         assert self.target_giname is not None
         return self.target_giname.split('.')[1]
 
-    def __cmp__(self, other):
+    def _compare(self, other, op):
         if self.target_fundamental:
-            return cmp(self.target_fundamental, other.target_fundamental)
+            return op(self.target_fundamental, other.target_fundamental)
         elif self.target_giname:
-            return cmp(self.target_giname, other.target_giname)
+            return op(self.target_giname, other.target_giname)
         elif self.target_foreign:
-            return cmp(self.target_foreign, other.target_foreign)
+            return op(self.target_foreign, other.target_foreign)
         else:
-            return cmp(self.ctype, other.ctype)
+            return op(self.ctype, other.ctype)
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
+
+    def __hash__(self):
+        return hash((self.target_fundamental, self.target_giname,
+                     self.target_foreign, self.ctype))
 
     def is_equiv(self, typeval):
         """Return True if the specified types are compatible at
@@ -214,13 +242,17 @@ TYPE_FILENAME = Type(target_fundamental='filename', ctype='gchar*')
 
 TYPE_VALIST = Type(target_fundamental='va_list', ctype='va_list')
 
-BASIC_GIR_TYPES = [TYPE_BOOLEAN, TYPE_INT8, TYPE_UINT8, TYPE_INT16,
-                   TYPE_UINT16, TYPE_INT32, TYPE_UINT32, TYPE_INT64,
-                   TYPE_UINT64, TYPE_CHAR, TYPE_SHORT, TYPE_USHORT, TYPE_INT,
-                   TYPE_UINT, TYPE_LONG, TYPE_ULONG, TYPE_SIZE, TYPE_SSIZE,
-                   TYPE_LONG_LONG, TYPE_LONG_ULONG, TYPE_INTPTR, TYPE_UINTPTR,
-                   TYPE_FLOAT, TYPE_DOUBLE,
-                   TYPE_LONG_DOUBLE, TYPE_UNICHAR, TYPE_GTYPE]
+BASIC_TYPES = [TYPE_BOOLEAN, TYPE_INT8, TYPE_UINT8, TYPE_INT16,
+               TYPE_UINT16, TYPE_INT32, TYPE_UINT32, TYPE_INT64,
+               TYPE_UINT64, TYPE_CHAR, TYPE_SHORT, TYPE_USHORT, TYPE_INT,
+               TYPE_UINT, TYPE_LONG, TYPE_ULONG, TYPE_SIZE, TYPE_SSIZE,
+               TYPE_LONG_LONG, TYPE_LONG_ULONG,
+               TYPE_FLOAT, TYPE_DOUBLE,
+               TYPE_LONG_DOUBLE, TYPE_UNICHAR, TYPE_GTYPE]
+
+BASIC_GIR_TYPES = [TYPE_INTPTR, TYPE_UINTPTR]
+BASIC_GIR_TYPES.extend(BASIC_TYPES)
+
 GIR_TYPES = [TYPE_NONE, TYPE_ANY]
 GIR_TYPES.extend(BASIC_GIR_TYPES)
 GIR_TYPES.extend([TYPE_STRING, TYPE_FILENAME, TYPE_VALIST])
@@ -312,6 +344,7 @@ type_names['FILE*'] = TYPE_ANY
 # the relevant methods, but on the other hand, since these types are just
 # integers it's easy enough to expand them.
 type_names['size_t'] = type_names['gsize']
+type_names['ssize_t'] = type_names['gssize']
 type_names['time_t'] = TYPE_LONG
 type_names['off_t'] = type_names['gsize']
 type_names['pid_t'] = TYPE_INT
@@ -319,8 +352,6 @@ type_names['uid_t'] = TYPE_UINT
 type_names['gid_t'] = TYPE_UINT
 type_names['dev_t'] = TYPE_INT
 type_names['socklen_t'] = TYPE_INT32
-type_names['size_t'] = TYPE_ULONG
-type_names['ssize_t'] = TYPE_LONG
 
 # Obj-C
 type_names['id'] = TYPE_ANY
@@ -459,11 +490,11 @@ functions via get_by_symbol()."""
     def __iter__(self):
         return iter(self.names)
 
-    def iteritems(self):
-        return self.names.iteritems()
+    def items(self):
+        return self.names.items()
 
-    def itervalues(self):
-        return self.names.itervalues()
+    def values(self):
+        return self.names.values()
 
     def get(self, name):
         return self.names.get(name)
@@ -475,7 +506,7 @@ functions via get_by_symbol()."""
         return self.symbols.get(symbol)
 
     def walk(self, callback):
-        for node in self.itervalues():
+        for node in self.values():
             node.walk(callback, [])
 
 
@@ -489,11 +520,26 @@ class Include(object):
     def from_string(cls, string):
         return cls(*string.split('-', 1))
 
-    def __cmp__(self, other):
-        namecmp = cmp(self.name, other.name)
-        if namecmp != 0:
-            return namecmp
-        return cmp(self.version, other.version)
+    def _compare(self, other, op):
+        return op((self.name, self.version), (other.name, other.version))
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
 
     def __hash__(self):
         return hash(str(self))
@@ -549,14 +595,32 @@ GIName.  It's possible for nodes to contain or point to other nodes."""
         assert self.namespace is not None
         return Type(target_giname=('%s.%s' % (self.namespace.name, self.name)))
 
-    def __cmp__(self, other):
-        nscmp = cmp(self.namespace, other.namespace)
-        if nscmp != 0:
-            return nscmp
-        return cmp(self.name, other.name)
+    def _compare(self, other, op):
+        return op((self.namespace, self.name), (other.namespace, other.name))
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
+
+    def __hash__(self):
+        return hash((self.namespace, self.name))
 
     def __repr__(self):
-        return '%s(%r)' % (self.__class__.__name__, self.name)
+        return "%s('%s')" % (self.__class__.__name__, self.name)
 
     def inherit_file_positions(self, node):
         self.file_positions.update(node.file_positions)
@@ -600,6 +664,34 @@ class Callable(Node):
         self.instance_parameter = None  # Parameter
         self.parent = None  # A Class or Interface
 
+    def _get_retval(self):
+        return self._retval
+
+    def _set_retval(self, value):
+        self._retval = value
+        if self._retval is not None:
+            self._retval.parent = self
+    retval = property(_get_retval, _set_retval)
+
+    def _get_instance_parameter(self):
+        return self._instance_parameter
+
+    def _set_instance_parameter(self, value):
+        self._instance_parameter = value
+        if value is not None:
+            value.parent = self
+    instance_parameter = property(_get_instance_parameter,
+                                  _set_instance_parameter)
+
+    def _get_parameters(self):
+        return self._parameters
+
+    def _set_parameters(self, value):
+        self._parameters = value
+        for param in self._parameters:
+            param.parent = self
+    parameters = property(_get_parameters, _set_parameters)
+
     # Returns all parameters, including the instance parameter
     @property
     def all_parameters(self):
@@ -638,6 +730,8 @@ class Function(Callable):
         # copy the parameters array so a change to self.parameters does not
         # influence clone.parameters.
         clone.parameters = self.parameters[:]
+        for param in clone.parameters:
+            param.parent = clone
         return clone
 
     def is_type_meta_function(self):
@@ -751,10 +845,12 @@ class Alias(Node):
 class TypeContainer(Annotated):
     """A fundamental base class for Return and Parameter."""
 
-    def __init__(self, typenode, nullable, transfer):
+    def __init__(self, typenode, nullable, not_nullable, transfer, direction):
         Annotated.__init__(self)
         self.type = typenode
         self.nullable = nullable
+        self.not_nullable = not_nullable
+        self.direction = direction
         if transfer is not None:
             self.transfer = transfer
         elif typenode.is_const:
@@ -769,11 +865,12 @@ class Parameter(TypeContainer):
     def __init__(self, argname, typenode, direction=None,
                  transfer=None, nullable=False, optional=False,
                  allow_none=False, scope=None,
-                 caller_allocates=False):
-        TypeContainer.__init__(self, typenode, nullable, transfer)
+                 caller_allocates=False, not_nullable=False):
+        TypeContainer.__init__(self, typenode, nullable, not_nullable,
+                               transfer, direction)
         self.argname = argname
-        self.direction = direction
         self.optional = optional
+        self.parent = None  # A Callable
 
         if allow_none:
             if self.direction == PARAM_DIRECTION_OUT:
@@ -786,13 +883,19 @@ class Parameter(TypeContainer):
         self.closure_name = None
         self.destroy_name = None
 
+    @property
+    def name(self):
+        return self.argname
+
 
 class Return(TypeContainer):
     """A return value from a function."""
 
-    def __init__(self, rtype, nullable=False, transfer=None):
-        TypeContainer.__init__(self, rtype, nullable, transfer)
-        self.direction = PARAM_DIRECTION_OUT
+    def __init__(self, rtype, nullable=False, not_nullable=False,
+                 transfer=None):
+        TypeContainer.__init__(self, rtype, nullable, not_nullable, transfer,
+                               direction=PARAM_DIRECTION_OUT)
+        self.parent = None  # A Callable
 
 
 class Enum(Node, Registered):
@@ -849,11 +952,32 @@ class Member(Annotated):
         self.nick = nick
         self.parent = None
 
-    def __cmp__(self, other):
-        return cmp(self.name, other.name)
+    def _compare(self, other, op):
+        return op(self.name, other.name)
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
+
+    def __hash__(self):
+        return hash(self.name)
 
     def __repr__(self):
-        return '%s(%r)' % (self.__class__.__name__, self.name)
+        return "%s('%s')" % (self.__class__.__name__, self.name)
 
 
 class Compound(Node, Registered):
@@ -922,11 +1046,32 @@ class Field(Annotated):
         self.namespace = None
         self.parent = None  # a compound
 
-    def __cmp__(self, other):
-        return cmp(self.name, other.name)
+    def _compare(self, other, op):
+        return op(self.name, other.name)
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
+
+    def __hash__(self):
+        return hash(self.name)
 
     def __repr__(self):
-        return '%s(%r)' % (self.__class__.__name__, self.name)
+        return "%s('%s')" % (self.__class__.__name__, self.name)
 
 
 class Record(Compound):
index bc5443d..007d992 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import errno
-import cPickle
 import glob
 import hashlib
 import os
@@ -27,6 +31,11 @@ import shutil
 import sys
 import tempfile
 
+try:
+    import cPickle as pickle
+except ImportError:
+    import pickle
+
 import giscanner
 
 from . import utils
@@ -41,7 +50,8 @@ def _get_versionhash():
     sources.append(sys.argv[0])
     # Using mtimes is a bit (5x) faster than hashing the file contents
     mtimes = (str(os.stat(source).st_mtime) for source in sources)
-    return hashlib.sha1(''.join(mtimes)).hexdigest()
+    # ASCII encoding is sufficient since we are only dealing with numbers.
+    return hashlib.sha1(''.join(mtimes).encode('ascii')).hexdigest()
 
 
 class CacheStore(object):
@@ -99,7 +109,9 @@ class CacheStore(object):
         # the cache all together.
         if self._directory is None:
             return
-        hexdigest = hashlib.sha1(filename).hexdigest()
+        # Assume UTF-8 encoding for the filenames. This doesn't matter so much
+        # as long as the results of this method always produce the same hash.
+        hexdigest = hashlib.sha1(filename.encode('utf-8')).hexdigest()
         return os.path.join(self._directory, hexdigest)
 
     def _cache_is_valid(self, store_filename, filename):
@@ -138,8 +150,8 @@ class CacheStore(object):
 
         tmp_fd, tmp_filename = tempfile.mkstemp(prefix='g-ir-scanner-cache-')
         try:
-            with os.fdopen(tmp_fd, 'w') as tmp_file:
-                cPickle.dump(data, tmp_file)
+            with os.fdopen(tmp_fd, 'wb') as tmp_file:
+                pickle.dump(data, tmp_file)
         except IOError as e:
             # No space left on device
             if e.errno == errno.ENOSPC:
@@ -162,7 +174,7 @@ class CacheStore(object):
         if store_filename is None:
             return
         try:
-            fd = open(store_filename)
+            fd = open(store_filename, 'rb')
         except IOError as e:
             if e.errno == errno.ENOENT:
                 return None
@@ -171,8 +183,8 @@ class CacheStore(object):
         if not self._cache_is_valid(store_filename, filename):
             return None
         try:
-            data = cPickle.load(fd)
-        except (AttributeError, EOFError, ValueError, cPickle.BadPickleGet):
+            data = pickle.load(fd)
+        except (AttributeError, EOFError, ValueError, pickle.BadPickleGet):
             # Broken cache entry, remove it
             self._remove_filename(store_filename)
             data = None
index a401cfd..9b27f0e 100644 (file)
@@ -128,11 +128,12 @@ class CCompiler(object):
                     self.compiler.add_runtime_library_dir('.')
 
                 # https://bugzilla.gnome.org/show_bug.cgi?id=625195
-                args.append('-Wl,-rpath=.')
+                args.append('-Wl,-rpath,.')
 
                 # Ensure libraries are always linked as we are going to use ldd to work
                 # out their names later
-                args.append('-Wl,--no-as-needed')
+                if sys.platform != 'darwin':
+                    args.append('-Wl,--no-as-needed')
 
             for library in libraries:
                 self.compiler.add_library(library)
@@ -140,7 +141,7 @@ class CCompiler(object):
                 for library_path in libpaths:
                     args.append('-L' + library_path)
                     if os.path.isabs(library_path):
-                        args.append('-Wl,-rpath=' + library_path)
+                        args.append('-Wl,-rpath,' + library_path)
 
         else:
             # libtool case: assemble linker command arguments, like we did before
@@ -235,8 +236,8 @@ class CCompiler(object):
                                      macros=macros,
                                      include_dirs=includes,
                                      extra_postargs=extra_postargs,
-                                     output_dir=source_str[tmpdir_idx + 1:
-                                                           source_str.rfind(os.sep)])
+                                     output_dir=str(source_str[tmpdir_idx + 1:
+                                                    source_str.rfind(os.sep)]))
 
     def link(self, output, objects, lib_args):
         # Note: This is used for non-libtool builds only!
@@ -284,7 +285,7 @@ class CCompiler(object):
             proc = subprocess.Popen([self.compiler_cmd, '-print-search-dirs'],
                                     stdout=subprocess.PIPE)
             o, e = proc.communicate()
-            for line in o.splitlines():
+            for line in o.decode('ascii').splitlines():
                 if line.startswith('libraries: '):
                     libsearch = line[len('libraries: '):].split(';')
 
@@ -312,7 +313,7 @@ class CCompiler(object):
                         proc = subprocess.Popen(args + [implib],
                                                 stdout=subprocess.PIPE)
                         o, e = proc.communicate()
-                        for line in o.splitlines():
+                        for line in o.decode('ascii').splitlines():
                             if self.check_is_msvc():
                                 # On Visual Studio, dumpbin -symbols something.lib gives the
                                 # filename of DLL without the '.dll' extension that something.lib
index e0eb182..0d4a8d8 100644 (file)
 #
 
 from __future__ import with_statement
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 from contextlib import contextmanager
 
@@ -84,28 +88,31 @@ class CCodeGenerator(object):
         self._write_prelude(self.out_h, func)
         self.out_h.write(";\n\n")
 
-    def _write_annotation_transfer(self, transfer):
-        self.out_c.write("(transfer %s)" % (transfer, ))
+    def _write_annotation_transfer(self, node):
+        if (node.type not in ast.BASIC_TYPES or
+                node.type.ctype.endswith('*')):
+            self.out_c.write(" (transfer %s)" % (node.transfer, ))
 
     def _write_docs(self, func):
         self.out_c.write("/**\n * %s:\n" % (func.symbol, ))
         for param in func.parameters:
-            self.out_c.write(" * @%s" % (param.argname, ))
+            self.out_c.write(" * @%s" % (param.argname, ))
             if param.direction in (ast.PARAM_DIRECTION_OUT,
                                    ast.PARAM_DIRECTION_INOUT):
                 if param.caller_allocates:
                     allocate_string = ' caller-allocates'
                 else:
                     allocate_string = ''
-                self.out_c.write("(%s%s) " % (param.direction,
-                                              allocate_string))
-                self._write_annotation_transfer(param.transfer)
+                self.out_c.write("(%s%s) " % (param.direction,
+                                                allocate_string))
+                self._write_annotation_transfer(param)
             self.out_c.write(":\n")
         self.out_c.write(' *\n')
-        self.out_c.write(' * Undocumented.\n')
-        self.out_c.write(' *\n')
-        self.out_c.write(' * Returns: ')
-        self._write_annotation_transfer(func.retval.transfer)
+        self.out_c.write(' * Undocumented.')
+        if func.retval.type != ast.TYPE_NONE:
+            self.out_c.write('\n *\n')
+            self.out_c.write(' * Returns: ')
+            self._write_annotation_transfer(func.retval)
         self.out_c.write('\n */')
 
     @contextmanager
@@ -162,7 +169,7 @@ class CCodeGenerator(object):
 
         self._codegen_start()
 
-        for node in self.namespace.itervalues():
+        for node in self.namespace.values():
             if isinstance(node, ast.Function):
                 with self._function(node):
                     body = self._function_bodies.get(node)
index aa3814a..6cfcc51 100644 (file)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 from .counter import Counter
 from .ordereddict import OrderedDict
index b5baf99..3bea542 100644 (file)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import argparse
 
index 86e11dd..cfc4172 100644 (file)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import re
 import tempfile
@@ -131,7 +136,7 @@ class TemplatedScanner(object):
         groupdict = match.groupdict()
         properties = {name: groupdict.pop(name)}
         name = name + "_"
-        for group, value in groupdict.iteritems():
+        for group, value in groupdict.items():
             if group.startswith(name):
                 key = group[len(name):]
                 properties[key] = value
@@ -349,7 +354,7 @@ class DocFormatter(object):
 
     def format_xref(self, node, **attrdict):
         if node is None or not hasattr(node, 'namespace'):
-            attrs = [('xref', 'index')] + attrdict.items()
+            attrs = [('xref', 'index')] + list(sorted(attrdict.items()))
             return xmlwriter.build_xml_tag('link', attrs)
         elif isinstance(node, ast.Member):
             # Enum/BitField members are linked to the main enum page.
@@ -360,14 +365,14 @@ class DocFormatter(object):
             return self.format_external_xref(node, attrdict)
 
     def format_internal_xref(self, node, attrdict):
-        attrs = [('xref', make_page_id(node))] + attrdict.items()
+        attrs = [('xref', make_page_id(node))] + list(sorted(attrdict.items()))
         return xmlwriter.build_xml_tag('link', attrs)
 
     def format_external_xref(self, node, attrdict):
         ns = node.namespace
         attrs = [('href', '../%s-%s/%s.html' % (ns.name, str(ns.version),
                                                 make_page_id(node)))]
-        attrs += attrdict.items()
+        attrs += list(sorted(attrdict.items()))
         return xmlwriter.build_xml_tag('link', attrs, self.format_page_name(node))
 
     def field_is_writable(self, field):
@@ -435,7 +440,7 @@ class DocFormatter(object):
         node_name = node.namespace.name + '.' + node.name
         impl = []
 
-        for c in node.namespace.itervalues():
+        for c in node.namespace.values():
             if not isinstance(c, ast.Class):
                 continue
             for implemented in c.interfaces:
@@ -601,8 +606,8 @@ class DocFormatterGjs(DocFormatterIntrospectableBase):
         default_constructor = None
 
         introspectable_constructors = \
-            filter(lambda c: getattr(c, 'introspectable', True),
-                   node.constructors)
+            list(filter(lambda c: getattr(c, 'introspectable', True),
+                   node.constructors))
         for c in introspectable_constructors:
             if zero_args_constructor is None and \
                len(c.parameters) == 0:
@@ -859,12 +864,11 @@ class DocFormatterGjs(DocFormatterIntrospectableBase):
             if isinstance(node, ast.Compound):
                 fields = filter(self.field_is_writable, node.fields)
                 out = ''
-                if len(fields) > 0:
-                    out += "{\n"
-                    for f in fields:
-                        out += "    <link xref='%s.%s-%s'>%s</link>: value\n" % \
-                               (node.namespace.name, node.name, f.name, f.name)
-                    out += "}"
+                for f in fields:
+                    out += "    <link xref='%s.%s-%s'>%s</link>: value\n" % \
+                           (node.namespace.name, node.name, f.name, f.name)
+                if out:
+                    out = "{\n" + out + "}"
                 return out
             else:
                 return ''
@@ -953,5 +957,5 @@ class DocWriter(object):
 
         output_file_name = os.path.join(os.path.abspath(output),
                                         page_id + '.page')
-        with open(output_file_name, 'w') as fp:
+        with open(output_file_name, 'wb') as fp:
             fp.write(result)
index 18725c8..3f72159 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import sys
 import subprocess
@@ -191,7 +196,8 @@ class DumpCompiler(object):
         proc = subprocess.Popen(
             cmd + self._packages,
             stdout=subprocess.PIPE)
-        return proc.communicate()[0].split()
+        out, err = proc.communicate()
+        return out.decode('ascii').split()
 
     def _compile(self, *sources):
         pkgconfig_flags = self._run_pkgconfig('--cflags')
@@ -276,12 +282,13 @@ class DumpCompiler(object):
             # this embedding is required, the build will fail anyway, as
             # the dumper program will likely fail to run, and this means
             # something went wrong with the build.
-            except LinkError, e:
+            except LinkError as e:
                 if self._compiler.check_is_msvc():
                     msg = str(e)
 
                     if msg[msg.rfind('mt.exe'):] == 'mt.exe\' failed with exit status 31':
-                        sys.exc_clear()
+                        if sys.version_info < (3, 0):
+                            sys.exc_clear()
                         pass
                     else:
                         raise LinkError(e)
@@ -291,8 +298,8 @@ class DumpCompiler(object):
             # libtool: Run the assembled link command, we don't use distutils
             # for linking here.
             if not self._options.quiet:
-                print "g-ir-scanner: link: %s" % (
-                    subprocess.list2cmdline(args), )
+                print("g-ir-scanner: link: %s" % (
+                    subprocess.list2cmdline(args), ))
                 sys.stdout.flush()
             msys = os.environ.get('MSYSTEM', None)
             if msys:
index 179bbd8..9bdc2bc 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import sys
 import tempfile
@@ -84,12 +89,12 @@ class GDumpParser(object):
         """
 
         # First pass: parsing
-        for node in self._namespace.itervalues():
+        for node in self._namespace.values():
             if isinstance(node, ast.Function):
                 self._initparse_function(node)
 
         if self._namespace.name == 'GObject' or self._namespace.name == 'GLib':
-            for node in self._namespace.itervalues():
+            for node in self._namespace.values():
                 if isinstance(node, ast.Record):
                     self._initparse_gobject_record(node)
 
@@ -116,16 +121,16 @@ class GDumpParser(object):
                 self._introspect_type(child)
 
         # Pair up boxed types and class records
-        for name, boxed in self._boxed_types.iteritems():
+        for name, boxed in self._boxed_types.items():
             self._pair_boxed_type(boxed)
-        for node in self._namespace.itervalues():
+        for node in self._namespace.values():
             if isinstance(node, (ast.Class, ast.Interface)):
                 self._find_class_record(node)
 
         # Clear the _get_type functions out of the namespace;
         # Anyone who wants them can get them from the ast.Class/Interface/Boxed
         to_remove = []
-        for name, node in self._namespace.iteritems():
+        for name, node in self._namespace.items():
             if isinstance(node, ast.Registered) and node.get_type is not None:
                 get_type_name = node.get_type
                 if get_type_name == 'intern':
@@ -296,7 +301,7 @@ blob containing data gleaned from GObject's primitive introspection."""
         (ns, name) = self._transformer.split_csymbol(get_type)
         assert ns is self._namespace
         if name in ('get_type', '_get_gtype'):
-            message.fatal("""The GObject name %r isn't compatible
+            message.fatal("""The GObject name '%s' isn't compatible
 with the configured identifier prefixes:
   %r
 The class would have no name.  Most likely you want to specify a
@@ -349,7 +354,7 @@ different --identifier-prefix.""" % (xmlnode.attrib['name'], self._namespace.ide
         if isinstance(record, ast.Record):
             node.ctype = record.ctype
         else:
-            message.warn_node(node, "Couldn't find associated structure for '%r'" % (node.name, ))
+            message.warn_node(node, "Couldn't find associated structure for '%s'" % (node.name, ))
 
         # GtkFileChooserEmbed is an example of a private interface, we
         # just filter them out
@@ -438,8 +443,8 @@ different --identifier-prefix.""" % (xmlnode.attrib['name'], self._namespace.ide
     def _parse_parents(self, xmlnode, node):
         parents_str = xmlnode.attrib.get('parents', '')
         if parents_str != '':
-            parent_types = map(lambda s: ast.Type.create_from_gtype_name(s),
-                               parents_str.split(','))
+            parent_types = list(map(lambda s: ast.Type.create_from_gtype_name(s),
+                                    parents_str.split(',')))
         else:
             parent_types = []
         node.parent_chain = parent_types
index 76dc5af..909e08d 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 
 from xml.etree.cElementTree import parse
@@ -313,7 +318,7 @@ class GIRParser(object):
             raise ValueError('node %r has no return-value' % (name, ))
         transfer = returnnode.attrib.get('transfer-ownership')
         nullable = returnnode.attrib.get('nullable') == '1'
-        retval = ast.Return(self._parse_type(returnnode), nullable, transfer)
+        retval = ast.Return(self._parse_type(returnnode), nullable, False, transfer)
         self._parse_generic_attribs(returnnode, retval)
         parameters = []
 
@@ -366,6 +371,9 @@ class GIRParser(object):
 
         self._parse_type_array_length(parameters, returnnode, retval.type)
 
+        # Re-set the function's parameters to notify it of changes to the list.
+        func.parameters = parameters
+
         self._parse_generic_attribs(node, func)
 
         self._namespace.track(func)
@@ -455,8 +463,8 @@ class GIRParser(object):
                 return ast.Type(ctype=ctype)
             elif name in ['GLib.List', 'GLib.SList']:
                 subchild = self._find_first_child(typenode,
-                                                  map(_corens, ('callback', 'array',
-                                                                'varargs', 'type')))
+                                                  list(map(_corens, ('callback', 'array',
+                                                                '    varargs', 'type'))))
                 if subchild is not None:
                     element_type = self._parse_type(typenode)
                 else:
@@ -464,7 +472,7 @@ class GIRParser(object):
                 return ast.List(name, element_type, ctype=ctype)
             elif name == 'GLib.HashTable':
                 subchildren = self._find_children(typenode, _corens('type'))
-                subchildren_types = map(self._parse_type_simple, subchildren)
+                subchildren_types = list(map(self._parse_type_simple, subchildren))
                 while len(subchildren_types) < 2:
                     subchildren_types.append(ast.TYPE_ANY)
                 return ast.Map(subchildren_types[0], subchildren_types[1], ctype=ctype)
index 3bea2a1..f637376 100644 (file)
 #
 
 from __future__ import with_statement
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 from . import ast
 from .xmlwriter import XMLWriter
@@ -78,17 +82,12 @@ class GIRWriter(XMLWriter):
             # We define a custom sorting function here because
             # we want aliases to be first.  They're a bit
             # special because the typelib compiler expands them.
-            def nscmp(a, b):
-                if isinstance(a, ast.Alias):
-                    if isinstance(b, ast.Alias):
-                        return cmp(a.name, b.name)
-                    else:
-                        return -1
-                elif isinstance(b, ast.Alias):
-                    return 1
+            def nscmp(val):
+                if isinstance(val, ast.Alias):
+                    return 0, val
                 else:
-                    return cmp(a, b)
-            for node in sorted(namespace.itervalues(), cmp=nscmp):
+                    return 1, val
+            for node in sorted(namespace.values(), key=nscmp):
                 self._write_node(node)
 
     def _write_node(self, node):
@@ -116,7 +115,7 @@ class GIRWriter(XMLWriter):
         elif isinstance(node, ast.Constant):
             self._write_constant(node)
         else:
-            print 'WRITER: Unhandled node', node
+            print('WRITER: Unhandled node', node)
 
     def _append_version(self, node, attrs):
         if node.version:
@@ -215,7 +214,7 @@ class GIRWriter(XMLWriter):
             attrs.append(('transfer-ownership', return_.transfer))
         if return_.skip:
             attrs.append(('skip', '1'))
-        if return_.nullable:
+        if return_.nullable and not return_.not_nullable:
             attrs.append(('nullable', '1'))
         with self.tagcontext('return-value', attrs):
             self._write_generic(return_)
@@ -241,7 +240,7 @@ class GIRWriter(XMLWriter):
         if parameter.transfer:
             attrs.append(('transfer-ownership',
                           parameter.transfer))
-        if parameter.nullable:
+        if parameter.nullable and not parameter.not_nullable:
             attrs.append(('nullable', '1'))
             if parameter.direction != ast.PARAM_DIRECTION_OUT:
                 attrs.append(('allow-none', '1'))
index b951227..845a72f 100644 (file)
 
 #include <glib-object.h>
 
-DL_EXPORT(void) init_giscanner(void);
+#ifndef Py_TYPE
+    #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type)
+#endif
+
+#if PY_MAJOR_VERSION >= 3
+    #define MOD_INIT(name) PyMODINIT_FUNC PyInit_##name(void)
+    #define MOD_ERROR_RETURN NULL
+    #define PyInt_FromLong PyLong_FromLong
+#else
+    #define MOD_INIT(name) DL_EXPORT(void) init##name(void)
+    #define MOD_ERROR_RETURN
+#endif
+
+/* forward declaration */
+MOD_INIT(_giscanner);
 
 #define NEW_CLASS(ctype, name, cname, num_methods)           \
 static const PyMethodDef _Py##cname##_methods[num_methods];    \
 PyTypeObject Py##cname##_Type = {             \
-    PyObject_HEAD_INIT(NULL)                  \
-    0,                                       \
+    PyVarObject_HEAD_INIT(NULL, 0)            \
     "scanner." name,                          \
-    sizeof(ctype),                           \
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,            \
-    0, 0, 0, 0,        0, 0,                         \
-    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, \
-    NULL, 0, 0, 0,                           \
-    0,       \
-    0, 0,                                     \
-    0,                                        \
-    0, 0, NULL, NULL, 0, 0,                  \
-    0             \
+    sizeof(ctype),                            \
+    0                                         \
 }
 
 #define REGISTER_TYPE(d, name, type)         \
-    type.ob_type = &PyType_Type;              \
+    Py_TYPE(&type) = &PyType_Type;             \
     type.tp_alloc = PyType_GenericAlloc;      \
     type.tp_new = PyType_GenericNew;          \
+    type.tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE; \
     if (PyType_Ready (&type))                 \
-       return;                               \
+        return MOD_ERROR_RETURN;              \
     PyDict_SetItemString (d, name, (PyObject *)&type); \
     Py_INCREF (&type);
 
@@ -141,7 +147,7 @@ symbol_get_ident (PyGISourceSymbol *self,
       return Py_None;
     }
 
-  return PyString_FromString (self->symbol->ident);
+  return PyUnicode_FromString (self->symbol->ident);
 }
 
 static PyObject *
@@ -189,7 +195,7 @@ symbol_get_const_string (PyGISourceSymbol *self,
       return Py_None;
     }
 
-  return PyString_FromString (self->symbol->const_string);
+  return PyUnicode_FromString (self->symbol->const_string);
 }
 
 static PyObject *
@@ -215,7 +221,7 @@ symbol_get_source_filename (PyGISourceSymbol *self,
       return Py_None;
     }
 
-  return PyString_FromString (self->symbol->source_filename);
+  return PyUnicode_FromString (self->symbol->source_filename);
 }
 
 static const PyGetSetDef _PyGISourceSymbol_getsets[] = {
@@ -296,7 +302,7 @@ type_get_name (PyGISourceType *self,
       return Py_None;
     }
 
-  return PyString_FromString (self->type->name);
+  return PyUnicode_FromString (self->type->name);
 }
 
 static PyObject *
@@ -402,16 +408,34 @@ pygi_source_scanner_parse_macros (PyGISourceScanner *self,
   for (i = 0; i < PyList_Size (list); ++i)
     {
       PyObject *obj;
-      char *filename;
+      char *filename = NULL;
 
       obj = PyList_GetItem (list, i);
-      filename = PyString_AsString (obj);
+      if (PyUnicode_Check (obj))
+        {
+          PyObject *s = PyUnicode_AsUTF8String (obj);
+          filename = g_strdup (PyBytes_AsString (s));
+          Py_DECREF (s);
+        }
+      else if (PyBytes_Check (obj))
+        {
+          filename = g_strdup (PyBytes_AsString (obj));
+        }
+
+      if (filename == NULL)
+        {
+          PyErr_Format (PyExc_RuntimeError,
+                        "Expected string but got %s",
+                        (Py_TYPE(obj))->tp_name);
+          g_list_free_full (filenames, g_free);
+          return NULL;
+        }
 
       filenames = g_list_append (filenames, filename);
     }
 
   gi_source_scanner_parse_macros (self->scanner, filenames);
-  g_list_free (filenames);
+  g_list_free_full (filenames, g_free);
 
   Py_INCREF (Py_None);
   return Py_None;
@@ -593,10 +617,35 @@ pygi_source_scanner_get_comments (PyGISourceScanner *self)
   for (l = comments; l; l = l->next)
     {
       GISourceComment *comment = l->data;
-      PyObject *item = Py_BuildValue ("(ssi)", comment->comment,
-                                      comment->filename,
-                                      comment->line);
+      PyObject *comment_obj;
+      PyObject *filename_obj;
+      PyObject *item;
+
+      if (comment->comment)
+        {
+          comment_obj = PyUnicode_FromString (comment->comment);
+        }
+      else
+        {
+          Py_INCREF (Py_None);
+          comment_obj = Py_None;
+        }
+
+      if (comment->filename)
+        {
+          filename_obj = PyUnicode_FromString (comment->filename);
+        }
+      else
+        {
+          Py_INCREF (Py_None);
+          filename_obj = Py_None;
+        }
+
+      item = Py_BuildValue ("(OOi)", comment_obj, filename_obj, comment->line);
       PyList_SetItem (list, i++, item);
+
+      Py_DECREF (comment_obj);
+      Py_DECREF (filename_obj);
     }
 
   g_slist_free (comments);
@@ -644,9 +693,9 @@ static int calc_attrs_length(PyObject *attributes, int indent,
         if (!s) {
           return -1;
         }
-        value = PyString_AsString(s);
-      } else if (PyString_Check(pyvalue)) {
-        value = PyString_AsString(pyvalue);
+        value = PyBytes_AsString(s);
+      } else if (PyBytes_Check(pyvalue)) {
+        value = PyBytes_AsString(pyvalue);
       } else {
         PyErr_SetString(PyExc_TypeError,
                         "value must be string or unicode");
@@ -731,9 +780,9 @@ pygi_collect_attributes (PyObject *self,
         s = PyUnicode_AsUTF8String(pyvalue);
         if (!s)
          goto out;
-        value = PyString_AsString(s);
-      } else if (PyString_Check(pyvalue)) {
-        value = PyString_AsString(pyvalue);
+        value = PyBytes_AsString(s);
+      } else if (PyBytes_Check(pyvalue)) {
+        value = PyBytes_AsString(pyvalue);
       } else {
         PyErr_SetString(PyExc_TypeError,
                         "value must be string or unicode");
@@ -767,25 +816,43 @@ pygi_collect_attributes (PyObject *self,
 
 /* Module */
 
-static const PyMethodDef pyscanner_functions[] = {
+static PyMethodDef pyscanner_functions[] = {
   { "collect_attributes",
     (PyCFunction) pygi_collect_attributes, METH_VARARGS },
   { NULL, NULL, 0, NULL }
 };
 
-DL_EXPORT(void)
-init_giscanner(void)
+#if PY_MAJOR_VERSION >= 3
+static struct PyModuleDef moduledef = {
+       PyModuleDef_HEAD_INIT,
+       NULL, /* m_name */
+       NULL, /* m_doc */
+       0,
+       pyscanner_functions,
+       NULL
+};
+#endif /* PY_MAJOR_VERSION >= 3 */
+
+
+MOD_INIT(_giscanner)
 {
     PyObject *m, *d;
     gboolean is_uninstalled;
+    const char *module_name;
 
     /* Hack to avoid having to create a fake directory structure; when
      * running uninstalled, the module will be in the top builddir,
      * with no _giscanner prefix.
      */
     is_uninstalled = g_getenv ("UNINSTALLED_INTROSPECTION_SRCDIR") != NULL;
-    m = Py_InitModule (is_uninstalled ? "_giscanner" : "giscanner._giscanner",
-                      (PyMethodDef*)pyscanner_functions);
+    module_name = is_uninstalled ? "_giscanner" : "giscanner._giscanner";
+
+#if PY_MAJOR_VERSION >= 3
+    moduledef.m_name = module_name;
+    m = PyModule_Create (&moduledef);
+#else
+    m = Py_InitModule (module_name, (PyMethodDef*)pyscanner_functions);
+#endif
     d = PyModule_GetDict (m);
 
     PyGISourceScanner_Type.tp_init = (initproc)pygi_source_scanner_init;
@@ -797,4 +864,8 @@ init_giscanner(void)
 
     PyGISourceType_Type.tp_getset = (PyGetSetDef*)_PyGISourceType_getsets;
     REGISTER_TYPE (d, "SourceType", PyGISourceType_Type);
+
+#if PY_MAJOR_VERSION >= 3
+    return m;
+#endif
 }
index ac68b9f..19d1388 100644 (file)
 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 # Boston, MA 02111-1307, USA.
 #
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 from . import ast
 from . import message
index c850103..0135bb8 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import imp
 import os
 import sys
index b138a12..b4b3934 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import re
 
 from . import ast
@@ -27,10 +32,11 @@ from .annotationparser import (ANN_ALLOW_NONE, ANN_ARRAY, ANN_ATTRIBUTES, ANN_CL
                                ANN_GET_VALUE_FUNC, ANN_IN, ANN_INOUT, ANN_METHOD, ANN_OUT,
                                ANN_REF_FUNC, ANN_RENAME_TO, ANN_SCOPE, ANN_SET_VALUE_FUNC,
                                ANN_SKIP, ANN_TRANSFER, ANN_TYPE, ANN_UNREF_FUNC, ANN_VALUE,
-                               ANN_VFUNC, ANN_NULLABLE, ANN_OPTIONAL)
+                               ANN_VFUNC, ANN_NULLABLE, ANN_OPTIONAL, ANN_NOT)
 from .annotationparser import (OPT_ARRAY_FIXED_SIZE, OPT_ARRAY_LENGTH, OPT_ARRAY_ZERO_TERMINATED,
                                OPT_OUT_CALLEE_ALLOCATES, OPT_OUT_CALLER_ALLOCATES,
-                               OPT_TRANSFER_FLOATING, OPT_TRANSFER_NONE)
+                               OPT_TRANSFER_CONTAINER, OPT_TRANSFER_FLOATING, OPT_TRANSFER_NONE,
+                               OPT_NOT_NULLABLE)
 
 from .utils import to_underscores_noprefix
 
@@ -74,14 +80,14 @@ class MainTransformer(object):
         self._namespace.walk(self._pass_type_resolution)
 
         # Generate a reverse mapping "bar_baz" -> BarBaz
-        for node in self._namespace.itervalues():
+        for node in self._namespace.values():
             if isinstance(node, ast.Registered) and node.get_type is not None:
                 self._uscore_type_names[node.c_symbol_prefix] = node
             elif isinstance(node, (ast.Record, ast.Union)):
                 uscored = to_underscores_noprefix(node.name).lower()
                 self._uscore_type_names[uscored] = node
 
-        for node in list(self._namespace.itervalues()):
+        for node in list(self._namespace.values()):
             if isinstance(node, ast.Function):
                 # Discover which toplevel functions are actually methods
                 self._pair_function(node)
@@ -126,7 +132,7 @@ class MainTransformer(object):
                 origin_name = 'return value'
             message.log_node(
                 message.FATAL, parent,
-                "can't find parameter %s referenced by %s of %r"
+                "can't find parameter %s referenced by %s of '%s'"
                 % (param_name, origin_name, parent.name))
 
         return param.argname
@@ -140,7 +146,7 @@ class MainTransformer(object):
             origin_name = 'field %s' % (origin.name, )
             message.log_node(
                 message.FATAL, parent,
-                "can't find field %s referenced by %s of %r"
+                "can't find field %s referenced by %s of '%s'"
                 % (field_name, origin_name, parent.name))
 
         return field.name
@@ -155,17 +161,17 @@ class MainTransformer(object):
         target = self._namespace.get_by_symbol(rename_to)
         if not target:
             message.warn_node(node,
-                "Can't find symbol %r referenced by \"rename-to\" annotation" % (rename_to, ))
+                "Can't find symbol '%s' referenced by \"rename-to\" annotation" % (rename_to, ))
         elif target.shadowed_by:
             message.warn_node(node,
-                "Function %r already shadowed by %r, can't overwrite "
-                "with %r" % (target.symbol,
+                "Function '%s' already shadowed by '%s', can't overwrite "
+                "with '%s'" % (target.symbol,
                              target.shadowed_by,
                              rename_to))
         elif target.shadows:
             message.warn_node(node,
-                "Function %r already shadows %r, can't multiply shadow "
-                "with %r" % (target.symbol,
+                "Function '%s' already shadows '%s', can't multiply shadow "
+                "with '%s'" % (target.symbol,
                              target.shadows,
                              rename_to))
         else:
@@ -203,7 +209,7 @@ class MainTransformer(object):
             elif isinstance(node, ast.Registered) and node.gtype_name is not None:
                 return node.gtype_name
             return node.c_name
-        raise AssertionError("Unhandled node %r" % (node, ))
+        raise AssertionError("Unhandled node '%s'" % (node, ))
 
     def _get_block(self, node):
         return self._blocks.get(self._get_annotation_name(node))
@@ -293,7 +299,7 @@ class MainTransformer(object):
             elif isinstance(base, ast.Map) and len(rest) == 2:
                 return ast.Map(*rest)
             message.warn(
-                "Too many parameters in type specification %r" % (type_str, ))
+                "Too many parameters in type specification '%s'" % (type_str, ))
             return base
 
         def top_combiner(base, *rest):
@@ -303,7 +309,7 @@ class MainTransformer(object):
 
         result, rest = grab_one(type_str, resolver, top_combiner, combiner)
         if rest:
-            message.warn("Trailing components in type specification %r" % (
+            message.warn("Trailing components in type specification '%s'" % (
                 type_str, ))
 
         if not result.resolved:
@@ -313,7 +319,7 @@ class MainTransformer(object):
                 position = self._get_position(parent, node)
             else:
                 text = type_str
-            message.warn_node(parent, "%s: Unknown type: %r" %
+            message.warn_node(parent, "%s: Unknown type: '%s'" %
                               (text, type_str), positions=position)
         return result
 
@@ -467,7 +473,7 @@ class MainTransformer(object):
     def _get_transfer_default_returntype_basic(self, typeval):
         if (typeval.is_equiv(ast.BASIC_GIR_TYPES)
         or typeval.is_const
-        or typeval.is_equiv(ast.TYPE_NONE)):
+        or typeval.is_equiv((ast.TYPE_ANY, ast.TYPE_NONE))):
             return ast.PARAM_TRANSFER_NONE
         elif typeval.is_equiv(ast.TYPE_STRING):
             # Non-const strings default to FULL
@@ -508,7 +514,11 @@ class MainTransformer(object):
         elif isinstance(parent, ast.Function) and parent.is_constructor:
             if isinstance(target, ast.Class):
                 initially_unowned_type = ast.Type(target_giname='GObject.InitiallyUnowned')
-                initially_unowned = self._transformer.lookup_typenode(initially_unowned_type)
+                try:
+                    initially_unowned = self._transformer.lookup_typenode(initially_unowned_type)
+                except KeyError as e:
+                    message.error_node(node, "constructor found but GObject is not in includes")
+                    return None
                 if initially_unowned and self._is_gi_subclass(typeval, initially_unowned_type):
                     return ast.PARAM_TRANSFER_NONE
                 else:
@@ -537,6 +547,63 @@ class MainTransformer(object):
         else:
             raise AssertionError(node)
 
+    def _is_pointer_type(self, node, annotations):
+        if (not isinstance(node, ast.Return) and
+                node.direction in (ast.PARAM_DIRECTION_OUT,
+                                   ast.PARAM_DIRECTION_INOUT)):
+            return True
+
+        target = self._transformer.lookup_typenode(node.type)
+        target = self._transformer.resolve_aliases(target)
+        target = node.type if target is None else target
+
+        return (not isinstance(target, ast.Type) or
+                target not in ast.BASIC_TYPES or
+                target.ctype.endswith('*'))
+
+    def _apply_transfer_annotation(self, parent, node, annotations):
+        transfer_annotation = annotations.get(ANN_TRANSFER)
+        if not transfer_annotation or len(transfer_annotation) != 1:
+            return
+
+        transfer = transfer_annotation[0]
+
+        target = self._transformer.lookup_typenode(node.type)
+        target = self._transformer.resolve_aliases(target)
+        target = node.type if target is None else target
+        node_type = target if isinstance(target, ast.Type) else node.type
+
+        if transfer == OPT_TRANSFER_FLOATING:
+            transfer = OPT_TRANSFER_NONE
+
+            if (not isinstance(target, (ast.Class, ast.Interface))
+                    and node_type.target_giname != 'GLib.Variant'):
+                message.warn('invalid "transfer" annotation for {0}: '
+                             'only valid for object and GVariant types'.format(target),
+                             annotations.position)
+                return
+
+        elif transfer == OPT_TRANSFER_CONTAINER:
+            if (ANN_ARRAY not in annotations and
+                    not isinstance(target, (ast.Array, ast.List, ast.Map))):
+                message.warn('invalid "transfer" annotation for {0}: '
+                             'only valid for container types'.format(target),
+                             annotations.position)
+                return
+
+        elif (not self._is_pointer_type(node, annotations) and
+              node_type not in (ast.TYPE_STRING, ast.TYPE_FILENAME) and
+              not isinstance(target, (ast.Array, ast.List, ast.Map,
+                                      ast.Record, ast.Compound, ast.Boxed,
+                                      ast.Class, ast.Interface))):
+            message.warn('invalid "transfer" annotation for {0}: '
+                         'only valid for array, struct, union, boxed, '
+                         'object and interface types'.format(target),
+                         annotations.position)
+            return
+
+        node.transfer = transfer
+
     def _apply_annotations_param_ret_common(self, parent, node, tag):
         annotations = tag.annotations if tag else {}
 
@@ -577,32 +644,54 @@ class MainTransformer(object):
             # Also reset the transfer default if we're toggling direction
             node.transfer = self._get_transfer_default(parent, node)
 
-        transfer_annotation = annotations.get(ANN_TRANSFER)
-        if transfer_annotation and len(transfer_annotation) == 1:
-            transfer = transfer_annotation[0]
-            if transfer == OPT_TRANSFER_FLOATING:
-                transfer = OPT_TRANSFER_NONE
-            node.transfer = transfer
-
+        self._apply_transfer_annotation(parent, node, annotations)
         self._adjust_container_type(parent, node, annotations)
 
-        if ANN_NULLABLE in annotations:
+        # gpointer parameters and return values are always nullable unless:
+        #  - annotated with (type) and not also with (nullable); or
+        #  - annotated (not nullable)
+        # See: https://bugzilla.gnome.org/show_bug.cgi?id=719966#c22
+        if node.type.is_equiv(ast.TYPE_ANY):
             node.nullable = True
+        if ANN_NULLABLE in annotations:
+            if self._is_pointer_type(node, annotations):
+                node.nullable = True
+                node.not_nullable = False
+            else:
+                message.warn('invalid "nullable" annotation: '
+                             'only valid for pointer types and out parameters',
+                             annotations.position)
 
         if ANN_OPTIONAL in annotations:
-            node.optional = True
+            if (not isinstance(node, ast.Return) and
+                    node.direction == ast.PARAM_DIRECTION_OUT):
+                node.optional = True
+            else:
+                message.warn('invalid "optional" annotation: '
+                             'only valid for out parameters',
+                             annotations.position)
 
         if ANN_ALLOW_NONE in annotations:
-            if node.direction == ast.PARAM_DIRECTION_OUT:
+            if (node.direction == ast.PARAM_DIRECTION_OUT and
+                    not isinstance(node, ast.Return)):
                 node.optional = True
-            else:
+            elif self._is_pointer_type(node, annotations):
                 node.nullable = True
+            else:
+                message.warn('invalid "allow-none" annotation: '
+                             'only valid for pointer types and out parameters',
+                             annotations.position)
 
         if (node.direction != ast.PARAM_DIRECTION_OUT and
                 (node.type.target_giname == 'Gio.AsyncReadyCallback' or
                  node.type.target_giname == 'Gio.Cancellable')):
             node.nullable = True
 
+        # Final override for nullability
+        if ANN_NOT in annotations:
+            node.nullable = False
+            node.not_nullable = True
+
         if tag and tag.description:
             node.doc = tag.description
 
@@ -708,6 +797,12 @@ class MainTransformer(object):
             tag = block.tags.get(TAG_RETURNS)
         else:
             tag = None
+
+        if tag is not None and return_.type == ast.TYPE_NONE:
+            message.warn('%s: invalid return annotation' % (block.name,),
+                         tag.position)
+            tag = None
+
         self._apply_annotations_param_ret_common(parent, return_, tag)
 
     def _apply_annotations_params(self, parent, params, block):
@@ -740,13 +835,14 @@ class MainTransformer(object):
                 text = ''
             elif len(unused) == 1:
                 (param, ) = unused
-                text = ', should be %r' % (param, )
+                text = ", should be '%s'" % (param, )
             else:
-                text = ', should be one of %s' % (', '.join(repr(p) for p in unused), )
+                text = ", should be one of %s" % \
+                       (', '.join("'%s'" % p for p in sorted(unused)), )
 
             param = block.params.get(doc_name)
-            message.warn('%s: unknown parameter %r in documentation '
-                         'comment%s' % (block.name, doc_name, text),
+            message.warn("%s: unknown parameter '%s' in documentation "
+                         "comment%s" % (block.name, doc_name, text),
                 param.position)
 
     def _apply_annotations_callable(self, node, chain, block):
@@ -767,7 +863,7 @@ class MainTransformer(object):
         try:
             self._adjust_container_type(parent, field, tag.annotations)
         except AttributeError as ex:
-            print ex
+            print(ex)
 
     def _apply_annotations_property(self, parent, prop):
         prefix = self._get_annotation_name(parent)
@@ -794,7 +890,6 @@ class MainTransformer(object):
 
         if block:
             self._apply_annotations_annotated(signal, block)
-
             # We're only attempting to name the signal parameters if
             # the number of parameters (@foo) is the same or greater
             # than the number of signal parameters
@@ -865,7 +960,7 @@ class MainTransformer(object):
                             break
                     if not matched:
                         message.warn_node(node,
-                            "Virtual slot %r not found for %r annotation" % (invoker_name,
+                            "Virtual slot '%s' not found for '%s' annotation" % (invoker_name,
                                                                              ANN_VFUNC))
         return True
 
@@ -925,14 +1020,14 @@ the ones that failed to resolve removed."""
         # but only covers enums that are registered as GObject enums.
         # Create a fallback mapping based on all known enums in this module.
         uscore_enums = {}
-        for enum in self._namespace.itervalues():
+        for enum in self._namespace.values():
             if not isinstance(enum, ast.Enum):
                 continue
             uscored = to_underscores_noprefix(enum.name).lower()
             uscore_enums[uscored] = enum
             uscore_enums[enum.name] = enum
 
-        for node in self._namespace.itervalues():
+        for node in self._namespace.values():
             if not isinstance(node, ast.ErrorQuarkFunction):
                 continue
             full = node.symbol[:-len('_quark')]
@@ -1196,7 +1291,7 @@ method or constructor of some type."""
             if func.is_constructor:
                 message.warn_node(
                     func,
-                    "Can't find matching type for constructor; symbol=%r" % (func.symbol, ))
+                    "Can't find matching type for constructor; symbol='%s'" % (func.symbol, ))
             return False
 
         # Some sanity checks; only objects and boxeds can have ctors
@@ -1229,7 +1324,7 @@ method or constructor of some type."""
                 if parent is None:
                     message.warn_node(func,
                                       "Return value is not superclass for constructor; "
-                                      "symbol=%r constructed=%r return=%r" %
+                                      "symbol='%s' constructed='%s' return='%s'" %
                                       (func.symbol,
                                        str(origin_node.create_type()),
                                        str(func.retval.type)))
@@ -1237,8 +1332,8 @@ method or constructor of some type."""
         else:
             if origin_node != target:
                 message.warn_node(func,
-                                  "Constructor return type mismatch symbol=%r "
-                                  "constructed=%r return=%r" %
+                                  "Constructor return type mismatch symbol='%s' "
+                                  "constructed='%s' return='%s'" %
                                   (func.symbol,
                                    str(origin_node.create_type()),
                                    str(func.retval.type)))
@@ -1251,7 +1346,7 @@ method or constructor of some type."""
         if not node.glib_type_struct:
             # https://bugzilla.gnome.org/show_bug.cgi?id=629080
             # message.warn_node(node,
-            #     "Failed to find class structure for %r" % (node.name, ))
+            #    "Failed to find class structure for '%s'" % (node.name, ))
             return
 
         node_type = node.create_type()
@@ -1357,6 +1452,15 @@ method or constructor of some type."""
                   param.argname.endswith('data')):
                 callback_param.closure_name = param.argname
 
+        for param in params:
+            # By convention, closure user_data parameters are always nullable.
+            if param.closure_name is not None:
+                idx = node.get_parameter_index(param.closure_name)
+                assert idx >= 0
+                closure_param = params[idx]
+                if not closure_param.not_nullable:
+                    closure_param.nullable = True
+
     def _pass3_callable_throws(self, node):
         """Check to see if we have anything that looks like a
         callback+user_data+GDestroyNotify set."""
index 6392dfc..0237789 100644 (file)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import sys
+import operator
 
 from . import utils
 
@@ -43,12 +49,34 @@ class Position(object):
         self.line = line
         self.column = column
 
-    def __cmp__(self, other):
-        return cmp((self.filename, self.line, self.column),
-                   (other.filename, other.line, other.column))
+    def _compare(self, other, op):
+        return op((self.filename, self.line, self.column),
+                  (other.filename, other.line, other.column))
+
+    def __lt__(self, other):
+        return self._compare(other, operator.lt)
+
+    def __gt__(self, other):
+        return self._compare(other, operator.gt)
+
+    def __ge__(self, other):
+        return self._compare(other, operator.ge)
+
+    def __le__(self, other):
+        return self._compare(other, operator.le)
+
+    def __eq__(self, other):
+        return self._compare(other, operator.eq)
+
+    def __ne__(self, other):
+        return self._compare(other, operator.ne)
+
+    def __hash__(self):
+        return hash((self.filename, self.line, self.column))
 
     def __repr__(self):
-        return '<Position %s:%d:%d>' % (os.path.basename(self.filename), self.line or -1,
+        return '<Position %s:%d:%d>' % (os.path.basename(self.filename),
+                                        self.line or -1,
                                         self.column or -1)
 
     def format(self, cwd):
@@ -69,7 +97,7 @@ class Position(object):
 class MessageLogger(object):
     _instance = None
 
-    def __init__(self, namespace, output=None):
+    def __init__(self, namespace=None, output=None):
         if output is None:
             output = sys.stderr
         self._cwd = os.getcwd()
@@ -130,8 +158,12 @@ class MessageLogger(object):
             text = '%s\n%s\n%s' % (text, marker_line, ' ' * marker_pos + '^')
 
         if prefix:
-            text = ('%s: %s: %s: %s: %s\n' % (last_position, error_type,
-                                              self._namespace.name, prefix, text))
+            if self._namespace:
+                text = ('%s: %s: %s: %s: %s\n' % (last_position, error_type,
+                                                  self._namespace.name, prefix, text))
+            else:
+                text = ('%s: %s: %s: %s\n' % (last_position, error_type,
+                                              prefix, text))
         else:
             if self._namespace:
                 text = ('%s: %s: %s: %s\n' % (last_position, error_type,
@@ -160,9 +192,7 @@ class MessageLogger(object):
         elif context and context.file_positions:
             positions = context.file_positions
         else:
-            positions = []
-            if not context:
-                text = "context=%r %s" % (node, text)
+            positions = set()
 
         if context:
             text = "%s: %s" % (getattr(context, 'symbol', context.name), text)
@@ -174,7 +204,7 @@ class MessageLogger(object):
     def log_symbol(self, log_type, symbol, text):
         """Log a warning in the context of the given symbol."""
         self.log(log_type, text, symbol.position,
-                 prefix="symbol=%r" % (symbol.ident, ))
+                 prefix="symbol='%s'" % (symbol.ident, ))
 
 
 def log_node(log_type, node, text, context=None, positions=None):
@@ -191,6 +221,10 @@ def warn_node(node, text, context=None, positions=None):
     log_node(WARNING, node, text, context=context, positions=positions)
 
 
+def error_node(node, text, context=None, positions=None):
+    log_node(ERROR, node, text, context=context, positions=positions)
+
+
 def warn_symbol(symbol, text):
     ml = MessageLogger.get()
     ml.log_symbol(WARNING, symbol, text)
index 6324809..d578577 100644 (file)
@@ -80,8 +80,8 @@ class MSVCCompiler(distutils.msvccompiler.MSVCCompiler):
         if self.force or output_file is None or newer(source, output_file):
             try:
                 self.spawn(cpp_args)
-            except DistutilsExecError, msg:
-                print msg
+            except (DistutilsExecError, msg):
+                print(msg)
                 raise CompileError
 
         # The /P option for the MSVC preprocessor will output the results
index 89ec193..628528f 100755 (executable)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import errno
 import optparse
 import os
@@ -250,7 +255,7 @@ def passthrough_gir(path, f):
     parser.parse(path)
 
     writer = GIRWriter(parser.get_namespace())
-    f.write(writer.get_xml())
+    f.write(writer.get_encoded_xml())
 
 
 def test_codegen(optstring,
@@ -271,7 +276,7 @@ def test_codegen(optstring,
                                       include_last_src)
         gen.write()
     else:
-        _error("Invaild namespace %r" % (namespace, ))
+        _error("Invaild namespace '%s'" % (namespace, ))
     return 0
 
 
@@ -293,6 +298,7 @@ def process_packages(options, packages):
         # the error output should have already appeared on our stderr,
         # so we just exit
         return 1
+    output = output.decode('ascii')
     # Some pkg-config files on Windows have options we don't understand,
     # so we explicitly filter to only the ones we need.
     options_whitelist = ['-I', '-D', '-U', '-l', '-L']
@@ -342,8 +348,8 @@ def extract_filelist(options):
 
 def create_namespace(options):
     if options.strip_prefix:
-        print """g-ir-scanner: warning: Option --strip-prefix has been deprecated;
-see --identifier-prefix and --symbol-prefix."""
+        print("""g-ir-scanner: warning: Option --strip-prefix has been deprecated;
+see --identifier-prefix and --symbol-prefix.""")
         options.identifier_prefixes.append(options.strip_prefix)
 
     # We do this dance because the empty list has different semantics from
@@ -381,11 +387,11 @@ def create_transformer(namespace, options):
 
     for include in options.includes:
         if os.sep in include:
-            _error("Invalid include path %r" % (include, ))
+            _error("Invalid include path '%s'" % (include, ))
         try:
             include_obj = Include.from_string(include)
         except:
-            _error("Malformed include %r\n" % (include, ))
+            _error("Malformed include '%s'\n" % (include, ))
         transformer.register_include(include_obj)
     for include_path in options.includes_uninstalled:
         transformer.register_include_uninstalled(include_path)
@@ -439,18 +445,19 @@ def create_source_scanner(options, args):
 
 
 def write_output(data, options):
+    """Write encoded XML 'data' to the filename specified in 'options'."""
     if options.output == "-":
         output = sys.stdout
     elif options.reparse_validate_gir:
         main_f, main_f_name = tempfile.mkstemp(suffix='.gir')
-        with os.fdopen(main_f, 'w') as main_f:
+        with os.fdopen(main_f, 'wb') as main_f:
             main_f.write(data)
 
         temp_f, temp_f_name = tempfile.mkstemp(suffix='.gir')
-        with os.fdopen(temp_f, 'w') as temp_f:
+        with os.fdopen(temp_f, 'wb') as temp_f:
             passthrough_gir(main_f_name, temp_f)
         if not utils.files_are_identical(main_f_name, temp_f_name):
-            _error("Failed to re-parse gir file; scanned=%r passthrough=%r" % (
+            _error("Failed to re-parse gir file; scanned='%s' passthrough='%s'" % (
                 main_f_name, temp_f_name))
         os.unlink(temp_f_name)
         try:
@@ -463,7 +470,7 @@ def write_output(data, options):
         return 0
     else:
         try:
-            output = open(options.output, "w")
+            output = open(options.output, 'wb')
         except IOError as e:
             _error("opening output for writing: %s" % (e.strerror, ))
 
@@ -546,8 +553,9 @@ def scanner_main(args):
         message.fatal("warnings configured as fatal")
         return 1
     elif warning_count > 0 and options.warn_all is False:
-        print ("g-ir-scanner: %s: warning: %d warnings suppressed (use --warn-all to see them)"
-               % (transformer.namespace.name, warning_count, ))
+        print("g-ir-scanner: %s: warning: %d warnings suppressed "
+              "(use --warn-all to see them)" %
+              (transformer.namespace.name, warning_count, ))
 
     # Write out AST
     if options.packages_export:
@@ -558,7 +566,7 @@ def scanner_main(args):
     transformer.namespace.c_includes = options.c_includes
     transformer.namespace.exported_packages = exported_packages
     writer = Writer(transformer.namespace)
-    data = writer.get_xml()
+    data = writer.get_encoded_xml()
 
     write_output(data, options)
 
index ffe41af..e8e584d 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import re
 from . import ast
 from .utils import to_underscores
@@ -134,7 +139,7 @@ def generate_sections_file(transformer):
 
     general_section = new_section("main", "Main")
 
-    for node in ns.itervalues():
+    for node in ns.values():
         if isinstance(node, ast.Function):
             append_symbol(general_section, node.symbol)
         elif isinstance(node, (ast.Class, ast.Interface)):
index 838d343..c93d20c 100644 (file)
 # 02110-1301, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import platform
 import re
@@ -111,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries):
 
         shlibs = []
         for line in proc.stdout:
-            for library, pattern in patterns.iteritems():
+            line = line.decode('ascii')
+            for library, pattern in patterns.items():
                 m = pattern.search(line)
                 if m:
                     del patterns[library]
index e66ed7d..049ae16 100644 (file)
 #
 
 from __future__ import with_statement
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import subprocess
 import tempfile
@@ -120,7 +125,7 @@ class SourceType(object):
         self._stype = stype
 
     def __repr__(self):
-        return '<%s type=%r name=%r>' % (
+        return "<%s type='%s' name='%s'>" % (
             self.__class__.__name__,
             ctype_name(self.type),
             self.name)
@@ -167,8 +172,8 @@ class SourceSymbol(object):
         if src:
             line = self.line
             if line:
-                src += ':%r' % (line, )
-        return '<%s type=%r ident=%r src=%r>' % (
+                src += ":'%s'" % (line, )
+        return "<%s type='%s' ident='%s' src='%s'>" % (
             self.__class__.__name__,
             symbol_type_name(self.type),
             self.ident,
@@ -270,9 +275,9 @@ class SourceScanner(object):
         return self._scanner.get_comments()
 
     def dump(self):
-        print '-' * 30
+        print('-' * 30)
         for symbol in self._scanner.get_symbols():
-            print symbol.ident, symbol.base_type.name, symbol.type
+            print(symbol.ident, symbol.base_type.name, symbol.type)
 
     # Private
 
@@ -286,9 +291,8 @@ class SourceScanner(object):
         cc = CCompiler()
 
         tmp_fd_cpp, tmp_name_cpp = tempfile.mkstemp(prefix='g-ir-cpp-', suffix='.c')
-        fp_cpp = os.fdopen(tmp_fd_cpp, 'w')
-        self._write_preprocess_src(fp_cpp, defines, undefs, filenames)
-        fp_cpp.close()
+        with os.fdopen(tmp_fd_cpp, 'wb') as fp_cpp:
+            self._write_preprocess_src(fp_cpp, defines, undefs, filenames)
 
         tmpfile_basename = os.path.basename(os.path.splitext(tmp_name_cpp)[0])
 
@@ -310,10 +314,10 @@ class SourceScanner(object):
     def _write_preprocess_src(self, fp, defines, undefs, filenames):
         # Write to the temp file for feeding into the preprocessor
         for define in defines:
-            fp.write('#ifndef %s\n' % (define, ))
-            fp.write('# define %s\n' % (define, ))
-            fp.write('#endif\n')
+            fp.write(('#ifndef %s\n' % (define, )).encode())
+            fp.write(('# define %s\n' % (define, )).encode())
+            fp.write('#endif\n'.encode())
         for undef in undefs:
-            fp.write('#undef %s\n' % (undef, ))
+            fp.write(('#undef %s\n' % (undef, )).encode())
         for filename in filenames:
-            fp.write('#include <%s>\n' % (filename, ))
+            fp.write(('#include <%s>\n' % (filename, )).encode())
index 32139e3..846e151 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
-from StringIO import StringIO
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
+import sys
+
 from . import ast
 from .codegen import CCodeGenerator
 
+if sys.version_info.major < 3:
+    from StringIO import StringIO
+else:
+    from io import StringIO
+
 DEFAULT_C_VALUES = {ast.TYPE_ANY: 'NULL',
                     ast.TYPE_STRING: '""',
                     ast.TYPE_FILENAME: '""',
@@ -65,6 +76,9 @@ class EverythingCodeGenerator(object):
                                   include_last_src)
 
     def write(self):
+        types = [ast.TYPE_ANY]
+        types.extend(ast.INTROSPECTABLE_BASIC)
+
         func = ast.Function('nullfunc',
                             ast.Return(ast.TYPE_NONE, transfer=ast.PARAM_TRANSFER_NONE),
                             [], False, self.gen.gen_symbol('nullfunc'))
@@ -74,7 +88,7 @@ class EverythingCodeGenerator(object):
 
         # First pass, generate constant returns
         prefix = 'const return '
-        for typeval in ast.INTROSPECTABLE_BASIC:
+        for typeval in types:
             name = prefix + uscore_from_type(typeval)
             sym = self.gen.gen_symbol(name)
             func = ast.Function(name,
@@ -87,7 +101,7 @@ class EverythingCodeGenerator(object):
 
         # Void return, one parameter
         prefix = 'oneparam '
-        for typeval in ast.INTROSPECTABLE_BASIC:
+        for typeval in types:
             if typeval is ast.TYPE_NONE:
                 continue
             name = prefix + uscore_from_type(typeval)
@@ -101,7 +115,7 @@ class EverythingCodeGenerator(object):
 
         # Void return, one (out) parameter
         prefix = 'one_outparam '
-        for typeval in ast.INTROSPECTABLE_BASIC:
+        for typeval in types:
             if typeval is ast.TYPE_NONE:
                 continue
             name = prefix + uscore_from_type(typeval)
@@ -119,7 +133,7 @@ class EverythingCodeGenerator(object):
 
         # Passthrough one parameter
         prefix = 'passthrough_one '
-        for typeval in ast.INTROSPECTABLE_BASIC:
+        for typeval in types:
             if typeval is ast.TYPE_NONE:
                 continue
             name = prefix + uscore_from_type(typeval)
index 7acca22..e8b1e04 100644 (file)
 # Boston, MA 02111-1307, USA.
 #
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import sys
 import subprocess
@@ -116,7 +121,7 @@ class Transformer(object):
         # Run through the tag namespace looking for structs that have not been
         # promoted into the main namespace. In this case we simply promote them
         # with their struct tag.
-        for tag_name, struct in self._tag_ns.iteritems():
+        for tag_name, struct in self._tag_ns.items():
             if not struct.name:
                 try:
                     name = self.strip_identifier(tag_name)
@@ -138,7 +143,7 @@ class Transformer(object):
     def register_include_uninstalled(self, include_path):
         basename = os.path.basename(include_path)
         if not basename.endswith('.gir'):
-            raise SystemExit("Include path %r must be a filename path "
+            raise SystemExit("Include path '%s' must be a filename path "
                              "ending in .gir" % (include_path, ))
         girname = basename[:-4]
         include = ast.Include.from_string(girname)
@@ -195,7 +200,8 @@ None."""
             path = os.path.join(d, girname)
             if os.path.exists(path):
                 return path
-        sys.stderr.write("Couldn't find include %r (search path: %r)\n" % (girname, searchdirs))
+        sys.stderr.write("Couldn't find include '%s' (search path: '%s')\n" %
+                         (girname, searchdirs))
         sys.exit(1)
 
     @classmethod
@@ -235,15 +241,18 @@ None."""
         """Return an iterator over all included namespaces; the
 currently-scanned namespace is first."""
         yield self._namespace
-        for ns in self._parsed_includes.itervalues():
+        for ns in self._parsed_includes.values():
             yield ns
 
-    def _sort_matches(self, x, y):
-        if x[0] is self._namespace:
-            return 1
-        elif y[0] is self._namespace:
-            return -1
-        return cmp(x[2], y[2])
+    def _sort_matches(self, val):
+        """Key sort which ensures items in self._namespace are last by returning
+        a tuple key starting with 1 for self._namespace entries and 0 for
+        everythin else.
+        """
+        if val[0] == self._namespace:
+            return 1, val[2]
+        else:
+            return 0, val[2]
 
     def _split_c_string_for_namespace_matches(self, name, is_identifier=False):
         if not is_identifier and self._symbol_filter_cmd:
@@ -277,8 +286,8 @@ currently-scanned namespace is first."""
             else:
                 unprefixed_namespaces.append(ns)
         if matches:
-            matches.sort(self._sort_matches)
-            return map(lambda x: (x[0], x[1]), matches)
+            matches.sort(key=self._sort_matches)
+            return list(map(lambda x: (x[0], x[1]), matches))
         elif self._accept_unprefixed:
             return [(self._namespace, name)]
         elif unprefixed_namespaces:
@@ -288,7 +297,7 @@ currently-scanned namespace is first."""
             for ns in unprefixed_namespaces:
                 if name in ns:
                     return [(ns, name)]
-        raise ValueError("Unknown namespace for %s %r"
+        raise ValueError("Unknown namespace for %s '%s'"
                          % ('identifier' if is_identifier else 'symbol', name, ))
 
     def split_ctype_namespaces(self, ident):
@@ -317,10 +326,11 @@ raise ValueError."""
                                     stdout=subprocess.PIPE,
                                     stderr=subprocess.PIPE,
                                     shell=True)
-            ident, err = proc.communicate(ident)
+            proc_ident, err = proc.communicate(ident.encode())
             if proc.returncode:
                 raise ValueError('filter: "%s" exited: %d with error: %s' %
                                  (self._identifier_filter_cmd, proc.returncode, err))
+            ident = proc_ident.decode('ascii')
 
         hidden = ident.startswith('_')
         if hidden:
@@ -336,7 +346,7 @@ raise ValueError."""
                 return name
         (ns, name) = matches[-1]
         raise TransformerException(
-            "Skipping foreign identifier %r from namespace %s" % (ident, ns.name, ))
+            "Skipping foreign identifier '%s' from namespace %s" % (ident, ns.name, ))
         return None
 
     def _strip_symbol(self, symbol):
@@ -378,7 +388,7 @@ raise ValueError."""
         elif stype == CSYMBOL_TYPE_OBJECT:
             pass
         else:
-            print 'transformer: unhandled symbol: %r' % (symbol, )
+            print("transformer: unhandled symbol: '%s'" % (symbol, ))
 
     def _enum_common_prefix(self, symbol):
         def common_prefix(a, b):
@@ -587,6 +597,8 @@ raise ValueError."""
         ctype = symbol.base_type.type
         if (ctype == CTYPE_POINTER and symbol.base_type.base_type.type == CTYPE_FUNCTION):
             node = self._create_typedef_callback(symbol)
+        elif (ctype == CTYPE_FUNCTION):
+            node = self._create_typedef_callback(symbol)
         elif (ctype == CTYPE_POINTER and symbol.base_type.base_type.type == CTYPE_STRUCT):
             node = self._create_typedef_compound(ast.Record, symbol, disguised=True)
         elif ctype == CTYPE_STRUCT:
@@ -608,10 +620,13 @@ raise ValueError."""
                 target = ast.TYPE_ANY
             if name in ast.type_names:
                 return None
+            # https://bugzilla.gnome.org/show_bug.cgi?id=755882
+            if name.endswith('_autoptr'):
+                return None
             return ast.Alias(name, target, ctype=symbol.ident)
         else:
             raise NotImplementedError(
-                "symbol %r of type %s" % (symbol.ident, ctype_name(ctype)))
+                "symbol '%s' of type %s" % (symbol.ident, ctype_name(ctype)))
         return node
 
     def _canonicalize_ctype(self, ctype):
@@ -725,7 +740,7 @@ raise ValueError."""
         name = self._strip_symbol(symbol)
         if symbol.const_string is not None:
             typeval = ast.TYPE_STRING
-            value = unicode(symbol.const_string, 'utf-8')
+            value = symbol.const_string
         elif symbol.const_int is not None:
             if symbol.base_type is not None:
                 typeval = self._create_type_from_base(symbol.base_type)
@@ -859,8 +874,14 @@ raise ValueError."""
             compound.fields.append(field)
 
     def _create_callback(self, symbol, member=False):
-        parameters = list(self._create_parameters(symbol, symbol.base_type.base_type))
-        retval = self._create_return(symbol.base_type.base_type.base_type)
+        if (symbol.base_type.type == CTYPE_FUNCTION):  # function
+            paramtype = symbol.base_type
+            retvaltype = symbol.base_type.base_type
+        elif (symbol.base_type.type == CTYPE_POINTER):  # function pointer
+            paramtype = symbol.base_type.base_type
+            retvaltype = symbol.base_type.base_type.base_type
+        parameters = list(self._create_parameters(symbol, paramtype))
+        retval = self._create_return(retvaltype)
 
         # Mark the 'user_data' arguments
         for i, param in enumerate(parameters):
@@ -906,7 +927,7 @@ Note that type resolution may not succeed."""
         # which has nominal namespace of "Meta", but a few classes are
         # "Mutter".  We don't export that data in introspection currently.
         # Basically the library should be fixed, but we'll hack around it here.
-        for namespace in self._parsed_includes.itervalues():
+        for namespace in self._parsed_includes.values():
             target = namespace.get_by_ctype(pointer_stripped)
             if target:
                 typeval.target_giname = '%s.%s' % (namespace.name, target.name)
@@ -979,7 +1000,7 @@ Note that type resolution may not succeed."""
             if typenode.target.target_giname is not None:
                 typenode = self.lookup_giname(typenode.target.target_giname)
             elif typenode.target.target_fundamental is not None:
-                typenode = ast.type_names[typenode.target.target_fundamental]
+                typenode = typenode.target
             else:
                 break
         return typenode
index 660081e..aff5393 100644 (file)
 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 # Boston, MA 02111-1307, USA.
 #
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 import errno
 import re
@@ -164,10 +168,10 @@ def get_libtool_command(options):
 
 
 def files_are_identical(path1, path2):
-    with open(path1) as f1, open(path2) as f2:
+    with open(path1, 'rb') as f1, open(path2, 'rb') as f2:
         buf1 = f1.read(8192)
         buf2 = f2.read(8192)
-        while buf1 == buf2 and buf1 != '':
+        while buf1 == buf2 and buf1 != b'':
             buf1 = f1.read(8192)
             buf2 = f2.read(8192)
         return buf1 == buf2
index 5fdcffe..54419f7 100755 (executable)
 #
 
 from __future__ import with_statement
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 import os
+import sys
 
 from contextlib import contextmanager
-from cStringIO import StringIO
 from xml.sax.saxutils import escape
 
 from .libtoolimporter import LibtoolImporter
 
+if sys.version_info.major < 3:
+    from StringIO import StringIO
+else:
+    from io import StringIO
+    unicode = str
+
 
 with LibtoolImporter(None, None):
     if 'UNINSTALLED_INTROSPECTION_SRCDIR' in os.environ:
@@ -40,13 +50,13 @@ def build_xml_tag(tag_name, attributes=None, data=None, self_indent=0,
                   self_indent_char=' '):
     if attributes is None:
         attributes = []
-    prefix = u'<%s' % (tag_name, )
+    prefix = '<%s' % (tag_name, )
     if data is not None:
-        if isinstance(data, str):
+        if isinstance(data, bytes):
             data = data.decode('UTF-8')
-        suffix = u'>%s</%s>' % (escape(data), tag_name)
+        suffix = '>%s</%s>' % (escape(data), tag_name)
     else:
-        suffix = u'/>'
+        suffix = '/>'
     attrs = collect_attributes(
         tag_name, attributes,
         self_indent,
@@ -58,6 +68,10 @@ def build_xml_tag(tag_name, attributes=None, data=None, self_indent=0,
 class XMLWriter(object):
 
     def __init__(self):
+        # Build up the XML buffer as unicode strings. When writing to disk,
+        # we can assume the lack of a Byte Order Mark (BOM) and lack
+        # of an "encoding" xml property means utf-8.
+        # See: http://www.opentag.com/xfaq_enc.htm#enc_default
         self._data = StringIO()
         self._data.write('<?xml version="1.0"?>\n')
         self._tag_stack = []
@@ -72,10 +86,10 @@ class XMLWriter(object):
             attributes = []
         attrs = collect_attributes(tag_name, attributes,
                                    self._indent, self._indent_char, len(tag_name) + 2)
-        self.write_line(u'<%s%s>' % (tag_name, attrs))
+        self.write_line('<%s%s>' % (tag_name, attrs))
 
     def _close_tag(self, tag_name):
-        self.write_line(u'</%s>' % (tag_name, ))
+        self.write_line('</%s>' % (tag_name, ))
 
     # Public API
 
@@ -88,20 +102,25 @@ class XMLWriter(object):
         self._newline_char = ''
 
     def get_xml(self):
+        """Returns a unicode string containing the XML."""
         return self._data.getvalue()
 
-    def write_line(self, line=u'', indent=True, do_escape=False):
-        if isinstance(line, str):
+    def get_encoded_xml(self):
+        """Returns a utf-8 encoded bytes object containing the XML."""
+        return self._data.getvalue().encode('utf-8')
+
+    def write_line(self, line='', indent=True, do_escape=False):
+        if isinstance(line, bytes):
             line = line.decode('utf-8')
         assert isinstance(line, unicode)
         if do_escape:
             line = escape(line)
         if indent:
             self._data.write('%s%s%s' % (self._indent_char * self._indent,
-                                         line.encode('utf-8'),
+                                         line,
                                          self._newline_char))
         else:
-            self._data.write('%s%s' % (line.encode('utf-8'), self._newline_char))
+            self._data.write('%s%s' % (line, self._newline_char))
 
     def write_comment(self, text):
         self.write_line('<!-- %s -->' % (text, ))
index df72540..fda22f4 100644 (file)
@@ -1,4 +1,4 @@
-prefix=/home/ebassi/gnome/install
+prefix=/home/walters/src/build/jhbuild
 exec_prefix=${prefix}
 libdir=${exec_prefix}/lib
 bindir=${exec_prefix}/bin
@@ -21,4 +21,4 @@ Libs.private:
 
 Name: gobject-introspection
 Description: GObject Introspection
-Version: 1.46.0
+Version: 1.47.1
index 54f5810..2133f83 100644 (file)
@@ -1,4 +1,4 @@
-prefix=/home/ebassi/gnome/install
+prefix=/home/walters/src/build/jhbuild
 exec_prefix=${prefix}
 libdir=${exec_prefix}/lib
 bindir=${exec_prefix}/bin
@@ -20,4 +20,4 @@ Libs.private:
 
 Name: gobject-introspection
 Description: GObject Introspection
-Version: 1.46.0
+Version: 1.47.1
index e4a12a5..104c399 100644 (file)
@@ -25,7 +25,6 @@ TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
 
 SETUP_FILES = \
        $(content_files)                \
-       $(expand_content_files)         \
        $(DOC_MAIN_SGML_FILE)           \
        $(DOC_MODULE)-sections.txt      \
        $(DOC_MODULE)-overrides.txt
@@ -50,13 +49,9 @@ REPORT_FILES = \
        $(DOC_MODULE)-undeclared.txt \
        $(DOC_MODULE)-unused.txt
 
-gtkdoc-check.test: Makefile
-       $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \
-               echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \
-               chmod +x $@
-
-CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test
+CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
 
+if ENABLE_GTK_DOC
 if GTK_DOC_BUILD_HTML
 HTML_BUILD_STAMP=html-build.stamp
 else
@@ -68,11 +63,9 @@ else
 PDF_BUILD_STAMP=
 endif
 
-all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
-.PHONY: all-gtk-doc
-
-if ENABLE_GTK_DOC
-all-local: all-gtk-doc
+all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
+else
+all-local:
 endif
 
 docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
@@ -87,13 +80,11 @@ GTK_DOC_V_SETUP_0=@echo "  DOC   Preparing build";
 
 setup-build.stamp:
        -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
-           files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \
+           files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
            if test "x$$files" != "x" ; then \
                for file in $$files ; do \
-                   destdir=`dirname $(abs_builddir)/$$file`; \
-                   test -d "$$destdir" || mkdir -p "$$destdir"; \
                    test -f $(abs_srcdir)/$$file && \
-                       cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
+                       cp -pu $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
                done; \
            fi; \
        fi
@@ -110,7 +101,7 @@ GTK_DOC_V_INTROSPECT=$(GTK_DOC_V_INTROSPECT_$(V))
 GTK_DOC_V_INTROSPECT_=$(GTK_DOC_V_INTROSPECT_$(AM_DEFAULT_VERBOSITY))
 GTK_DOC_V_INTROSPECT_0=@echo "  DOC   Introspecting gobjects";
 
-scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
+scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
        $(GTK_DOC_V_SCAN)_source_dir='' ; \
        for i in $(DOC_SOURCE_DIR) ; do \
            _source_dir="$${_source_dir} --source-dir=$$i" ; \
@@ -119,7 +110,7 @@ scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
        $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
            scanobj_options=""; \
            gtkdoc-scangobj 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
-           if test "$$?" = "0"; then \
+           if test "$(?)" = "0"; then \
                if test "x$(V)" = "x1"; then \
                    scanobj_options="--verbose"; \
                fi; \
@@ -142,7 +133,7 @@ GTK_DOC_V_XML=$(GTK_DOC_V_XML_$(V))
 GTK_DOC_V_XML_=$(GTK_DOC_V_XML_$(AM_DEFAULT_VERBOSITY))
 GTK_DOC_V_XML_0=@echo "  DOC   Building XML";
 
-sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files) xml/gtkdocentities.ent
+sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files)
        $(GTK_DOC_V_XML)_source_dir='' ; \
        for i in $(DOC_SOURCE_DIR) ; do \
            _source_dir="$${_source_dir} --source-dir=$$i" ; \
@@ -153,17 +144,6 @@ sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HF
 sgml.stamp: sgml-build.stamp
        @true
 
-xml/gtkdocentities.ent: Makefile
-       $(GTK_DOC_V_XML)$(MKDIR_P) $(@D) && ( \
-               echo "<!ENTITY package \"$(PACKAGE)\">"; \
-               echo "<!ENTITY package_bugreport \"$(PACKAGE_BUGREPORT)\">"; \
-               echo "<!ENTITY package_name \"$(PACKAGE_NAME)\">"; \
-               echo "<!ENTITY package_string \"$(PACKAGE_STRING)\">"; \
-               echo "<!ENTITY package_tarname \"$(PACKAGE_TARNAME)\">"; \
-               echo "<!ENTITY package_url \"$(PACKAGE_URL)\">"; \
-               echo "<!ENTITY package_version \"$(PACKAGE_VERSION)\">"; \
-       ) > $@
-
 #### html ####
 
 GTK_DOC_V_HTML=$(GTK_DOC_V_HTML_$(V))
@@ -174,17 +154,17 @@ GTK_DOC_V_XREF=$(GTK_DOC_V_XREF_$(V))
 GTK_DOC_V_XREF_=$(GTK_DOC_V_XREF_$(AM_DEFAULT_VERBOSITY))
 GTK_DOC_V_XREF_0=@echo "  DOC   Fixing cross-references";
 
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files)
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
        $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \
        mkhtml_options=""; \
        gtkdoc-mkhtml 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
-       if test "$$?" = "0"; then \
+       if test "$(?)" = "0"; then \
          if test "x$(V)" = "x1"; then \
            mkhtml_options="$$mkhtml_options --verbose"; \
          fi; \
        fi; \
        gtkdoc-mkhtml 2>&1 --help | grep  >/dev/null "\-\-path"; \
-       if test "$$?" = "0"; then \
+       if test "$(?)" = "0"; then \
          mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
        fi; \
        cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
@@ -206,11 +186,11 @@ GTK_DOC_V_PDF=$(GTK_DOC_V_PDF_$(V))
 GTK_DOC_V_PDF_=$(GTK_DOC_V_PDF_$(AM_DEFAULT_VERBOSITY))
 GTK_DOC_V_PDF_0=@echo "  DOC   Building PDF";
 
-pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files)
+pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
        $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \
        mkpdf_options=""; \
        gtkdoc-mkpdf 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
-       if test "$$?" = "0"; then \
+       if test "$(?)" = "0"; then \
          if test "x$(V)" = "x1"; then \
            mkpdf_options="$$mkpdf_options --verbose"; \
          fi; \
@@ -232,18 +212,12 @@ pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_cont
 clean-local:
        @rm -f *~ *.bak
        @rm -rf .libs
-       @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \
-         rm -f $(DOC_MODULE).types; \
-       fi
-       @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-sections" ; then \
-         rm -f $(DOC_MODULE)-sections.txt; \
-       fi
 
 distclean-local:
        @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
            $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
        @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
-           rm -f $(SETUP_FILES) $(DOC_MODULE).types; \
+           rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
        fi
 
 maintainer-clean-local:
@@ -282,17 +256,15 @@ uninstall-local:
 #
 # Require gtk-doc when making dist
 #
-if HAVE_GTK_DOC
+if ENABLE_GTK_DOC
 dist-check-gtkdoc: docs
 else
 dist-check-gtkdoc:
-       @echo "*** gtk-doc is needed to run 'make dist'.         ***"
-       @echo "*** gtk-doc was not found when 'configure' ran.   ***"
-       @echo "*** please install gtk-doc and rerun 'configure'. ***"
+       @echo "*** gtk-doc must be installed and enabled in order to make dist"
        @false
 endif
 
-dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local
+dist-hook: dist-check-gtkdoc dist-hook-local
        @mkdir $(distdir)/html
        @cp ./html/* $(distdir)/html
        @-cp ./$(DOC_MODULE).pdf $(distdir)/
index 3675543..ac2eccb 100644 (file)
@@ -1,6 +1,6 @@
 dnl -*- mode: autoconf -*-
 
-# serial 2
+# serial 1
 
 dnl Usage:
 dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
@@ -10,24 +10,8 @@ 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
 
-  ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"])
-  AC_MSG_CHECKING([for gtk-doc])
-  PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
-  AC_MSG_RESULT($have_gtk_doc)
-
-  if test "$have_gtk_doc" = "no"; then
-      AC_MSG_WARN([
-  You will not be able to create source packages with 'make dist'
-  because $gtk_doc_requires is not found.])
-  fi
-
   dnl check for tools we added during development
-  dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that
-  dnl may not be writable by the user. Currently, automake requires that the
-  dnl test name must end in '.test'.
-  dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638
-  AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test])
-  AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check])
+  AC_PATH_PROG([GTKDOC_CHECK],[gtkdoc-check])
   AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true])
   AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf])
 
@@ -44,21 +28,21 @@ AC_DEFUN([GTK_DOC_CHECK],
                    [use gtk-doc to build documentation [[default=no]]]),,
     [enable_gtk_doc=no])
 
-  AC_MSG_CHECKING([whether to build gtk-doc documentation])
-  AC_MSG_RESULT($enable_gtk_doc)
-
-  if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then
-    AC_MSG_ERROR([
-  You must have $gtk_doc_requires installed to build documentation for
-  $PACKAGE_NAME. Please install gtk-doc or disable building the
-  documentation by adding '--disable-gtk-doc' to '[$]0'.])
+  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]))])
+    dnl don't check for glib if we build glib
+    if test "x$PACKAGE_NAME" != "xglib"; then
+      dnl don't fail if someone does not have glib
+      PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0  >= 2.10.0,,[:])
+    fi
   fi
 
-  dnl don't check for glib if we build glib
-  if test "x$PACKAGE_NAME" != "xglib"; then
-    dnl don't fail if someone does not have glib
-    PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0  >= 2.10.0,,[:])
-  fi
+  AC_MSG_CHECKING([whether to build gtk-doc documentation])
+  AC_MSG_RESULT($enable_gtk_doc)
 
   dnl enable/disable output formats
   AC_ARG_ENABLE([gtk-doc-html],
@@ -79,7 +63,6 @@ AC_DEFUN([GTK_DOC_CHECK],
   fi
   AC_SUBST([AM_DEFAULT_VERBOSITY])
 
-  AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes])
   AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
   AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes])
   AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes])
index f12cfdf..56666f0 100644 (file)
@@ -1312,7 +1312,7 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
@@ -1326,10 +1326,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_i386"
            ;;
-         powerpc64le-*linux*)
-           LD="${LD-ld} -m elf32lppclinux"
-           ;;
-         powerpc64-*linux*)
+         ppc64-*linux*|powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -1348,10 +1345,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         powerpcle-*linux*)
-           LD="${LD-ld} -m elf64lppc"
-           ;;
-         powerpc-*linux*)
+         ppc*-*linux*|powerpc*-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
index ba1e24d..e415ad8 100755 (executable)
@@ -1,8 +1,12 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # Scan glib sources.
 # e.g.:
 #   ./update-glib-annotations.py ../../glib ../../glib/_build
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 import os
 import sys
@@ -16,14 +20,6 @@ for k in ['UNINSTALLED_INTROSPECTION_SRCDIR',
         os.environ[k] = path
 
 possible_builddirs = ['../_build/', '..', '../../build/']
-builddir = None
-for d in possible_builddirs:
-    if os.path.isfile(os.path.join(d, 'g-ir-annotation-tool')):
-        builddir = d
-        break
-assert builddir is not None
-annotation_tool_base_args = [os.path.join(builddir, 'g-ir-annotation-tool'),
-                             '--extract']
 
 
 def directory_includes(dirs, srcdir, builddir):
@@ -51,6 +47,9 @@ def extract_annotations(module, srcdir, builddir, outfile):
         if sourcename.endswith('.c'):
             sources.append(os.path.join(subdir, sourcename))
 
+    annotation_tool_base_args = [
+        os.path.join(builddir, 'g-ir-annotation-tool'), '--extract']
+
     return subprocess.check_call(annotation_tool_base_args +
                                  module['defines'] +
                                  includes +
@@ -63,9 +62,13 @@ if __name__ == '__main__':
     if len(sys.argv) == 3:
         builddir = sys.argv[2]
     else:
-        builddir = srcdir
+        for d in possible_builddirs:
+            if os.path.isfile(os.path.join(d, 'g-ir-annotation-tool')):
+                builddir = d
+                break
+        assert builddir is not None
 
-    print "Using source directory: %r build directory: %r" % (srcdir, builddir)
+    print("Using source directory: '%s' build directory: '%s'" % (srcdir, builddir))
 
     modules = [{'name':         'glib',
                 'srcname':      '../gir/glib-2.0.c',
@@ -97,11 +100,14 @@ if __name__ == '__main__':
         if os.path.isfile(srcname):
             os.unlink(srcname)
 
-        srcfile = open(tmpname, 'w')
+        # Extract annotations into a file opened in binary mode.
+        # Since g-ir-scanner-tool outputs utf-8 encoded data, we simply pass
+        # that directly into this file via. the underlying subprocess call.
+        srcfile = open(tmpname, 'wb')
         extract_annotations(module, srcdir, builddir, srcfile)
         srcfile.close()
         os.rename(tmpname, srcname)
 
-        print "Updated %r" % (srcname, )
+        print("Updated '%s'" % (srcname, ))
 
-    print "Done; run \"git diff\" to see any changes."
+    print("Done; run \"git diff\" to see any changes.")
index 0c7d593..b8a8f4f 100644 (file)
@@ -3,6 +3,11 @@
 # * Create a git tag
 # * Bump version in configure.ac and commit it
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import re
 import os
 import sys
@@ -35,13 +40,13 @@ for line in f:
     continue
   v = int(m.group(1))
   newv = v+1
-  print "Will update micro version from %s to %s" % (v, newv)
+  print("Will update micro version from %s to %s" % (v, newv))
   newf.write(micro_version_replace % (newv, ))
 newf.close()
 
 os.rename(configure_path + '.tmp', configure_path)
-print "Successfully wrote new 'configure.ac' with post-release version bump"
+print("Successfully wrote new 'configure.ac' with post-release version bump")
 
 args=['git', 'commit', '-m', "configure: Post-release version bump", configure_path]
-print "Running: %r" % (args, )
+print("Running: %r" % (args, ))
 subprocess.check_call(args)
index 14f73c6..90ad80b 100644 (file)
@@ -2906,7 +2906,7 @@ YY_BUFFER_STATE yy_scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len
        YY_BUFFER_STATE b;
        char *buf;
        yy_size_t n;
-       yy_size_t i;
+       int i;
     
        /* Get memory for full buffer, including space for trailing EOB's. */
        n = _yybytes_len + 2;
index 6c29b08..299ba71 100644 (file)
@@ -1,19 +1,19 @@
-/* A Bison parser, made by GNU Bison 3.0.2.  */
+/* A Bison parser, made by GNU Bison 2.7.  */
 
 /* Bison implementation for Yacc-like parsers in C
-
-   Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
-
+   
+      Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
+   
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-
+   
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-
+   
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
@@ -26,7 +26,7 @@
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-
+   
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
@@ -44,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "3.0.2"
+#define YYBISON_VERSION "2.7"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
@@ -62,7 +62,8 @@
 
 
 /* Copy the first part of user declarations.  */
-#line 29 "giscanner/scannerparser.y" /* yacc.c:339  */
+/* Line 371 of yacc.c  */
+#line 29 "giscanner/scannerparser.y"
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -244,13 +245,14 @@ toggle_conditional (GISourceScanner *scanner)
 }
 
 
-#line 248 "scannerparser.c" /* yacc.c:339  */
+/* Line 371 of yacc.c  */
+#line 250 "scannerparser.c"
 
-# ifndef YY_NULLPTR
+# ifndef YY_NULL
 #  if defined __cplusplus && 201103L <= __cplusplus
-#   define YY_NULLPTR nullptr
+#   define YY_NULL nullptr
 #  else
-#   define YY_NULLPTR 0
+#   define YY_NULL 0
 #  endif
 # endif
 
@@ -266,7 +268,7 @@ toggle_conditional (GISourceScanner *scanner)
    by #include "y.tab.h".  */
 #ifndef YY_YY_SCANNERPARSER_H_INCLUDED
 # define YY_YY_SCANNERPARSER_H_INCLUDED
-/* Debug traces.  */
+/* Enabling traces.  */
 #ifndef YYDEBUG
 # define YYDEBUG 1
 #endif
@@ -274,89 +276,90 @@ toggle_conditional (GISourceScanner *scanner)
 extern int yydebug;
 #endif
 
-/* Token type.  */
+/* Tokens.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
-  enum yytokentype
-  {
-    IDENTIFIER = 258,
-    TYPEDEF_NAME = 259,
-    INTEGER = 260,
-    FLOATING = 261,
-    BOOLEAN = 262,
-    CHARACTER = 263,
-    STRING = 264,
-    INTL_CONST = 265,
-    INTUL_CONST = 266,
-    ELLIPSIS = 267,
-    ADDEQ = 268,
-    SUBEQ = 269,
-    MULEQ = 270,
-    DIVEQ = 271,
-    MODEQ = 272,
-    XOREQ = 273,
-    ANDEQ = 274,
-    OREQ = 275,
-    SL = 276,
-    SR = 277,
-    SLEQ = 278,
-    SREQ = 279,
-    EQ = 280,
-    NOTEQ = 281,
-    LTEQ = 282,
-    GTEQ = 283,
-    ANDAND = 284,
-    OROR = 285,
-    PLUSPLUS = 286,
-    MINUSMINUS = 287,
-    ARROW = 288,
-    AUTO = 289,
-    BOOL = 290,
-    BREAK = 291,
-    CASE = 292,
-    CHAR = 293,
-    CONST = 294,
-    CONTINUE = 295,
-    DEFAULT = 296,
-    DO = 297,
-    DOUBLE = 298,
-    ELSE = 299,
-    ENUM = 300,
-    EXTENSION = 301,
-    EXTERN = 302,
-    FLOAT = 303,
-    FOR = 304,
-    GOTO = 305,
-    IF = 306,
-    INLINE = 307,
-    INT = 308,
-    LONG = 309,
-    REGISTER = 310,
-    RESTRICT = 311,
-    RETURN = 312,
-    SHORT = 313,
-    SIGNED = 314,
-    SIZEOF = 315,
-    STATIC = 316,
-    STRUCT = 317,
-    SWITCH = 318,
-    TYPEDEF = 319,
-    UNION = 320,
-    UNSIGNED = 321,
-    VOID = 322,
-    VOLATILE = 323,
-    WHILE = 324,
-    FUNCTION_MACRO = 325,
-    OBJECT_MACRO = 326,
-    IFDEF_GI_SCANNER = 327,
-    IFNDEF_GI_SCANNER = 328,
-    IFDEF_COND = 329,
-    IFNDEF_COND = 330,
-    IF_COND = 331,
-    ELIF_COND = 332,
-    ELSE_COND = 333,
-    ENDIF_COND = 334
-  };
+   /* Put the tokens into the symbol table, so that GDB and other debuggers
+      know about them.  */
+   enum yytokentype {
+     IDENTIFIER = 258,
+     TYPEDEF_NAME = 259,
+     INTEGER = 260,
+     FLOATING = 261,
+     BOOLEAN = 262,
+     CHARACTER = 263,
+     STRING = 264,
+     INTL_CONST = 265,
+     INTUL_CONST = 266,
+     ELLIPSIS = 267,
+     ADDEQ = 268,
+     SUBEQ = 269,
+     MULEQ = 270,
+     DIVEQ = 271,
+     MODEQ = 272,
+     XOREQ = 273,
+     ANDEQ = 274,
+     OREQ = 275,
+     SL = 276,
+     SR = 277,
+     SLEQ = 278,
+     SREQ = 279,
+     EQ = 280,
+     NOTEQ = 281,
+     LTEQ = 282,
+     GTEQ = 283,
+     ANDAND = 284,
+     OROR = 285,
+     PLUSPLUS = 286,
+     MINUSMINUS = 287,
+     ARROW = 288,
+     AUTO = 289,
+     BOOL = 290,
+     BREAK = 291,
+     CASE = 292,
+     CHAR = 293,
+     CONST = 294,
+     CONTINUE = 295,
+     DEFAULT = 296,
+     DO = 297,
+     DOUBLE = 298,
+     ELSE = 299,
+     ENUM = 300,
+     EXTENSION = 301,
+     EXTERN = 302,
+     FLOAT = 303,
+     FOR = 304,
+     GOTO = 305,
+     IF = 306,
+     INLINE = 307,
+     INT = 308,
+     LONG = 309,
+     REGISTER = 310,
+     RESTRICT = 311,
+     RETURN = 312,
+     SHORT = 313,
+     SIGNED = 314,
+     SIZEOF = 315,
+     STATIC = 316,
+     STRUCT = 317,
+     SWITCH = 318,
+     TYPEDEF = 319,
+     UNION = 320,
+     UNSIGNED = 321,
+     VOID = 322,
+     VOLATILE = 323,
+     WHILE = 324,
+     FUNCTION_MACRO = 325,
+     OBJECT_MACRO = 326,
+     IFDEF_GI_SCANNER = 327,
+     IFNDEF_GI_SCANNER = 328,
+     IFDEF_COND = 329,
+     IFNDEF_COND = 330,
+     IF_COND = 331,
+     ELIF_COND = 332,
+     ELSE_COND = 333,
+     ENDIF_COND = 334
+   };
 #endif
 /* Tokens.  */
 #define IDENTIFIER 258
@@ -437,12 +440,13 @@ extern int yydebug;
 #define ELSE_COND 333
 #define ENDIF_COND 334
 
-/* Value type.  */
+
+
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE YYSTYPE;
-union YYSTYPE
+typedef union YYSTYPE
 {
-#line 212 "giscanner/scannerparser.y" /* yacc.c:355  */
+/* Line 387 of yacc.c  */
+#line 212 "giscanner/scannerparser.y"
 
   char *str;
   GList *list;
@@ -453,22 +457,37 @@ union YYSTYPE
   FunctionSpecifier function_specifier;
   UnaryOperator unary_operator;
 
-#line 457 "scannerparser.c" /* yacc.c:355  */
-};
+
+/* Line 387 of yacc.c  */
+#line 463 "scannerparser.c"
+} YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 #endif
 
-
 extern YYSTYPE yylval;
 
+#ifdef YYPARSE_PARAM
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void *YYPARSE_PARAM);
+#else
+int yyparse ();
+#endif
+#else /* ! YYPARSE_PARAM */
+#if defined __STDC__ || defined __cplusplus
 int yyparse (GISourceScanner* scanner);
+#else
+int yyparse ();
+#endif
+#endif /* ! YYPARSE_PARAM */
 
 #endif /* !YY_YY_SCANNERPARSER_H_INCLUDED  */
 
 /* Copy the second part of user declarations.  */
 
-#line 472 "scannerparser.c" /* yacc.c:358  */
+/* Line 390 of yacc.c  */
+#line 491 "scannerparser.c"
 
 #ifdef short
 # undef short
@@ -482,8 +501,11 @@ typedef unsigned char yytype_uint8;
 
 #ifdef YYTYPE_INT8
 typedef YYTYPE_INT8 yytype_int8;
-#else
+#elif (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 typedef signed char yytype_int8;
+#else
+typedef short int yytype_int8;
 #endif
 
 #ifdef YYTYPE_UINT16
@@ -503,7 +525,8 @@ typedef short int yytype_int16;
 #  define YYSIZE_T __SIZE_TYPE__
 # elif defined size_t
 #  define YYSIZE_T size_t
-# elif ! defined YYSIZE_T
+# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
 #  define YYSIZE_T size_t
 # else
@@ -525,33 +548,6 @@ typedef short int yytype_int16;
 # endif
 #endif
 
-#ifndef YY_ATTRIBUTE
-# if (defined __GNUC__                                               \
-      && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \
-     || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
-#  define YY_ATTRIBUTE(Spec) __attribute__(Spec)
-# else
-#  define YY_ATTRIBUTE(Spec) /* empty */
-# endif
-#endif
-
-#ifndef YY_ATTRIBUTE_PURE
-# define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
-#endif
-
-#ifndef YY_ATTRIBUTE_UNUSED
-# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
-#endif
-
-#if !defined _Noreturn \
-     && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
-# if defined _MSC_VER && 1200 <= _MSC_VER
-#  define _Noreturn __declspec (noreturn)
-# else
-#  define _Noreturn YY_ATTRIBUTE ((__noreturn__))
-# endif
-#endif
-
 /* Suppress unused-variable warnings by "using" E.  */
 #if ! defined lint || defined __GNUC__
 # define YYUSE(E) ((void) (E))
@@ -559,26 +555,24 @@ typedef short int yytype_int16;
 # define YYUSE(E) /* empty */
 #endif
 
-#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
-/* Suppress an incorrect diagnostic about yylval being uninitialized.  */
-# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
-    _Pragma ("GCC diagnostic push") \
-    _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
-    _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
-# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
-    _Pragma ("GCC diagnostic pop")
+/* Identity function, used to suppress warnings about constant conditions.  */
+#ifndef lint
+# define YYID(N) (N)
 #else
-# define YY_INITIAL_VALUE(Value) Value
-#endif
-#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
-# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
-# define YY_IGNORE_MAYBE_UNINITIALIZED_END
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
+static int
+YYID (int yyi)
+#else
+static int
+YYID (yyi)
+    int yyi;
 #endif
-#ifndef YY_INITIAL_VALUE
-# define YY_INITIAL_VALUE(Value) /* Nothing. */
+{
+  return yyi;
+}
 #endif
 
-
 #if ! defined yyoverflow || YYERROR_VERBOSE
 
 /* The parser invokes alloca or malloc; define the necessary symbols.  */
@@ -596,7 +590,8 @@ typedef short int yytype_int16;
 #    define alloca _alloca
 #   else
 #    define YYSTACK_ALLOC alloca
-#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
+#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
 #     ifndef EXIT_SUCCESS
@@ -608,8 +603,8 @@ typedef short int yytype_int16;
 # endif
 
 # ifdef YYSTACK_ALLOC
-   /* Pacify GCC's 'empty if-body' warning.  */
-#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
+   /* Pacify GCC's `empty if-body' warning.  */
+#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
 #  ifndef YYSTACK_ALLOC_MAXIMUM
     /* The OS might guarantee only one guard page at the bottom of the stack,
        and a page size can be as small as 4096 bytes.  So we cannot safely
@@ -625,7 +620,7 @@ typedef short int yytype_int16;
 #  endif
 #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
        && ! ((defined YYMALLOC || defined malloc) \
-             && (defined YYFREE || defined free)))
+            && (defined YYFREE || defined free)))
 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
 #   ifndef EXIT_SUCCESS
 #    define EXIT_SUCCESS 0
@@ -633,13 +628,15 @@ typedef short int yytype_int16;
 #  endif
 #  ifndef YYMALLOC
 #   define YYMALLOC malloc
-#   if ! defined malloc && ! defined EXIT_SUCCESS
+#   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
 #  ifndef YYFREE
 #   define YYFREE free
-#   if ! defined free && ! defined EXIT_SUCCESS
+#   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 void free (void *); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
@@ -649,7 +646,7 @@ void free (void *); /* INFRINGES ON USER NAME SPACE */
 
 #if (! defined yyoverflow \
      && (! defined __cplusplus \
-         || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
+        || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
 
 /* A type that is properly aligned for any stack member.  */
 union yyalloc
@@ -674,16 +671,16 @@ union yyalloc
    elements in the stack, and YYPTR gives the new location of the
    stack.  Advance YYPTR to a properly aligned location for the next
    stack.  */
-# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
-    do                                                                  \
-      {                                                                 \
-        YYSIZE_T yynewbytes;                                            \
-        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
-        Stack = &yyptr->Stack_alloc;                                    \
-        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
-        yyptr += yynewbytes / sizeof (*yyptr);                          \
-      }                                                                 \
-    while (0)
+# define YYSTACK_RELOCATE(Stack_alloc, Stack)                          \
+    do                                                                 \
+      {                                                                        \
+       YYSIZE_T yynewbytes;                                            \
+       YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
+       Stack = &yyptr->Stack_alloc;                                    \
+       yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
+       yyptr += yynewbytes / sizeof (*yyptr);                          \
+      }                                                                        \
+    while (YYID (0))
 
 #endif
 
@@ -702,7 +699,7 @@ union yyalloc
           for (yyi = 0; yyi < (Count); yyi++)   \
             (Dst)[yyi] = (Src)[yyi];            \
         }                                       \
-      while (0)
+      while (YYID (0))
 #  endif
 # endif
 #endif /* !YYCOPY_NEEDED */
@@ -718,19 +715,17 @@ union yyalloc
 #define YYNNTS  77
 /* YYNRULES -- Number of rules.  */
 #define YYNRULES  256
-/* YYNSTATES -- Number of states.  */
+/* YYNRULES -- Number of states.  */
 #define YYNSTATES  426
 
-/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
-   by yylex, with out-of-bounds checking.  */
+/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
 #define YYMAXUTOK   334
 
-#define YYTRANSLATE(YYX)                                                \
+#define YYTRANSLATE(YYX)                                               \
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
-/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
-   as returned by yylex, without out-of-bounds checking.  */
+/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
 static const yytype_uint8 yytranslate[] =
 {
        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -770,7 +765,125 @@ static const yytype_uint8 yytranslate[] =
 };
 
 #if YYDEBUG
-  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
+/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
+   YYRHS.  */
+static const yytype_uint16 yyprhs[] =
+{
+       0,     0,     3,     5,     7,     9,    11,    13,    15,    19,
+      26,    28,    31,    33,    35,    37,    39,    44,    49,    53,
+      57,    61,    64,    67,    69,    73,    75,    78,    81,    84,
+      89,    94,    97,   102,   104,   106,   108,   110,   112,   114,
+     116,   121,   123,   127,   131,   135,   137,   141,   145,   147,
+     151,   155,   157,   161,   165,   169,   173,   175,   179,   183,
+     185,   189,   191,   195,   197,   201,   203,   207,   209,   213,
+     215,   221,   223,   227,   229,   231,   233,   235,   237,   239,
+     241,   243,   245,   247,   249,   251,   255,   258,   260,   264,
+     267,   270,   272,   275,   277,   280,   282,   285,   287,   289,
+     293,   295,   299,   301,   303,   305,   307,   309,   311,   313,
+     315,   317,   319,   321,   323,   325,   327,   329,   331,   333,
+     335,   341,   346,   349,   351,   353,   355,   358,   362,   365,
+     367,   370,   372,   374,   378,   379,   381,   384,   388,   394,
+     399,   406,   412,   415,   417,   418,   421,   425,   427,   431,
+     433,   435,   437,   439,   441,   444,   446,   448,   452,   457,
+     461,   466,   471,   475,   478,   480,   484,   487,   489,   492,
+     494,   498,   501,   504,   506,   508,   510,   514,   516,   519,
+     521,   523,   526,   530,   533,   537,   541,   546,   549,   553,
+     557,   562,   564,   566,   570,   575,   577,   581,   583,   585,
+     587,   589,   591,   593,   597,   602,   606,   609,   613,   615,
+     618,   620,   622,   624,   627,   633,   641,   647,   653,   661,
+     668,   676,   684,   693,   701,   710,   719,   729,   733,   736,
+     739,   742,   746,   748,   751,   753,   755,   757,   762,   766,
+     768,   771,   773,   775,   780,   783,   785,   787,   789,   791,
+     793,   795,   797,   799,   801,   803,   805
+};
+
+/* YYRHS -- A `-1'-separated list of the rules' RHS.  */
+static const yytype_int16 yyrhs[] =
+{
+     171,     0,    -1,   107,    -1,     5,    -1,     7,    -1,     8,
+      -1,     6,    -1,   106,    -1,    80,   127,    81,    -1,    46,
+      80,    82,   165,    83,    81,    -1,     9,    -1,   106,     9,
+      -1,     3,    -1,   107,    -1,   159,    -1,   105,    -1,   109,
+      84,   127,    85,    -1,   109,    80,   110,    81,    -1,   109,
+      80,    81,    -1,   109,    86,   108,    -1,   109,    33,   108,
+      -1,   109,    31,    -1,   109,    32,    -1,   125,    -1,   110,
+      87,   125,    -1,   109,    -1,    31,   111,    -1,    32,   111,
+      -1,   112,   113,    -1,    10,    80,   111,    81,    -1,    11,
+      80,   111,    81,    -1,    60,   111,    -1,    60,    80,   156,
+      81,    -1,    88,    -1,    89,    -1,    90,    -1,    91,    -1,
+      92,    -1,    93,    -1,   111,    -1,    80,   156,    81,   113,
+      -1,   113,    -1,   114,    89,   113,    -1,   114,    94,   113,
+      -1,   114,    95,   113,    -1,   114,    -1,   115,    90,   114,
+      -1,   115,    91,   114,    -1,   115,    -1,   116,    21,   115,
+      -1,   116,    22,   115,    -1,   116,    -1,   117,    96,   116,
+      -1,   117,    97,   116,    -1,   117,    27,   116,    -1,   117,
+      28,   116,    -1,   117,    -1,   118,    25,   117,    -1,   118,
+      26,   117,    -1,   118,    -1,   119,    88,   118,    -1,   119,
+      -1,   120,    98,   119,    -1,   120,    -1,   121,    99,   120,
+      -1,   121,    -1,   122,    29,   121,    -1,   122,    -1,   123,
+      30,   122,    -1,   123,    -1,   123,   100,   127,   101,   127,
+      -1,   124,    -1,   111,   126,   125,    -1,   102,    -1,    15,
+      -1,    16,    -1,    17,    -1,    13,    -1,    14,    -1,    23,
+      -1,    24,    -1,    19,    -1,    18,    -1,    20,    -1,   125,
+      -1,   127,    87,   125,    -1,    46,   127,    -1,   124,    -1,
+     130,   131,   103,    -1,   130,   103,    -1,   133,   130,    -1,
+     133,    -1,   134,   130,    -1,   134,    -1,   147,   130,    -1,
+     147,    -1,   148,   130,    -1,   148,    -1,   132,    -1,   131,
+      87,   132,    -1,   149,    -1,   149,   102,   160,    -1,    64,
+      -1,    47,    -1,    61,    -1,    34,    -1,    55,    -1,    67,
+      -1,    38,    -1,    58,    -1,    53,    -1,    54,    -1,    48,
+      -1,    43,    -1,    59,    -1,    66,    -1,    35,    -1,   135,
+      -1,   142,    -1,   159,    -1,   136,   108,    82,   137,    83,
+      -1,   136,    82,   137,    83,    -1,   136,   108,    -1,    62,
+      -1,    65,    -1,   138,    -1,   137,   138,    -1,   139,   140,
+     103,    -1,   134,   139,    -1,   134,    -1,   147,   139,    -1,
+     147,    -1,   141,    -1,   140,    87,   141,    -1,    -1,   149,
+      -1,   101,   128,    -1,   149,   101,   128,    -1,   143,   108,
+      82,   144,    83,    -1,   143,    82,   144,    83,    -1,   143,
+     108,    82,   144,    87,    83,    -1,   143,    82,   144,    87,
+      83,    -1,   143,   108,    -1,    45,    -1,    -1,   145,   146,
+      -1,   144,    87,   146,    -1,   107,    -1,   107,   102,   128,
+      -1,    39,    -1,    56,    -1,    46,    -1,    68,    -1,    52,
+      -1,   151,   150,    -1,   150,    -1,   107,    -1,    80,   149,
+      81,    -1,   150,    84,   125,    85,    -1,   150,    84,    85,
+      -1,   150,    80,   153,    81,    -1,   150,    80,   155,    81,
+      -1,   150,    80,    81,    -1,    89,   152,    -1,    89,    -1,
+      89,   152,   151,    -1,    89,   151,    -1,   147,    -1,   152,
+     147,    -1,   154,    -1,   153,    87,   154,    -1,   130,   149,
+      -1,   130,   157,    -1,   130,    -1,    12,    -1,   107,    -1,
+     155,    87,   107,    -1,   139,    -1,   139,   157,    -1,   151,
+      -1,   158,    -1,   151,   158,    -1,    80,   157,    81,    -1,
+      84,    85,    -1,    84,   125,    85,    -1,   158,    84,    85,
+      -1,   158,    84,   125,    85,    -1,    80,    81,    -1,    80,
+     153,    81,    -1,   158,    80,    81,    -1,   158,    80,   153,
+      81,    -1,     4,    -1,   125,    -1,    82,   161,    83,    -1,
+      82,   161,    87,    83,    -1,   160,    -1,   161,    87,   160,
+      -1,   163,    -1,   164,    -1,   167,    -1,   168,    -1,   169,
+      -1,   170,    -1,   108,   101,   162,    -1,    37,   128,   101,
+     162,    -1,    41,   101,   162,    -1,    82,    83,    -1,    82,
+     165,    83,    -1,   166,    -1,   165,   166,    -1,   129,    -1,
+     162,    -1,   103,    -1,   127,   103,    -1,    51,    80,   127,
+      81,   162,    -1,    51,    80,   127,    81,   162,    44,   162,
+      -1,    63,    80,   127,    81,   162,    -1,    69,    80,   127,
+      81,   162,    -1,    42,   162,    69,    80,   127,    81,   103,
+      -1,    49,    80,   103,   103,    81,   162,    -1,    49,    80,
+     127,   103,   103,    81,   162,    -1,    49,    80,   103,   127,
+     103,    81,   162,    -1,    49,    80,   127,   103,   127,   103,
+      81,   162,    -1,    49,    80,   103,   103,   127,    81,   162,
+      -1,    49,    80,   127,   103,   103,   127,    81,   162,    -1,
+      49,    80,   103,   127,   103,   127,    81,   162,    -1,    49,
+      80,   127,   103,   127,   103,   127,    81,   162,    -1,    50,
+     108,   103,    -1,    40,   103,    -1,    36,   103,    -1,    57,
+     103,    -1,    57,   127,   103,    -1,   172,    -1,   171,   172,
+      -1,   173,    -1,   129,    -1,   180,    -1,   130,   149,   174,
+     164,    -1,   130,   149,   164,    -1,   129,    -1,   174,   129,
+      -1,    70,    -1,    71,    -1,   175,    80,   155,    81,    -1,
+     176,   128,    -1,    72,    -1,    73,    -1,    74,    -1,    75,
+      -1,    76,    -1,    77,    -1,    78,    -1,    79,    -1,   177,
+      -1,   178,    -1,   179,    -1,     1,    -1
+};
+
+/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
 static const yytype_uint16 yyrline[] =
 {
        0,   304,   304,   313,   329,   335,   341,   348,   349,   353,
@@ -845,13 +958,13 @@ static const char *const yytname[] =
   "iteration_statement", "jump_statement", "translation_unit",
   "external_declaration", "function_definition", "declaration_list",
   "function_macro", "object_macro", "function_macro_define",
-  "object_macro_define", "preproc_conditional", "macro", YY_NULLPTR
+  "object_macro_define", "preproc_conditional", "macro", YY_NULL
 };
 #endif
 
 # ifdef YYPRINT
-/* YYTOKNUM[NUM] -- (External) token number corresponding to the
-   (internal) symbol number NUM (which must be that of a token).  */
+/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
+   token YYLEX-NUM.  */
 static const yytype_uint16 yytoknum[] =
 {
        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
@@ -868,68 +981,71 @@ static const yytype_uint16 yytoknum[] =
 };
 # endif
 
-#define YYPACT_NINF -234
-
-#define yypact_value_is_default(Yystate) \
-  (!!((Yystate) == (-234)))
-
-#define YYTABLE_NINF -15
-
-#define yytable_value_is_error(Yytable_value) \
-  0
+/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
+static const yytype_uint8 yyr1[] =
+{
+       0,   104,   105,   105,   105,   105,   105,   105,   105,   105,
+     106,   106,   107,   108,   108,   109,   109,   109,   109,   109,
+     109,   109,   109,   110,   110,   111,   111,   111,   111,   111,
+     111,   111,   111,   112,   112,   112,   112,   112,   112,   113,
+     113,   114,   114,   114,   114,   115,   115,   115,   116,   116,
+     116,   117,   117,   117,   117,   117,   118,   118,   118,   119,
+     119,   120,   120,   121,   121,   122,   122,   123,   123,   124,
+     124,   125,   125,   126,   126,   126,   126,   126,   126,   126,
+     126,   126,   126,   126,   127,   127,   127,   128,   129,   129,
+     130,   130,   130,   130,   130,   130,   130,   130,   131,   131,
+     132,   132,   133,   133,   133,   133,   133,   134,   134,   134,
+     134,   134,   134,   134,   134,   134,   134,   134,   134,   134,
+     135,   135,   135,   136,   136,   137,   137,   138,   139,   139,
+     139,   139,   140,   140,   141,   141,   141,   141,   142,   142,
+     142,   142,   142,   143,   145,   144,   144,   146,   146,   147,
+     147,   147,   147,   148,   149,   149,   150,   150,   150,   150,
+     150,   150,   150,   151,   151,   151,   151,   152,   152,   153,
+     153,   154,   154,   154,   154,   155,   155,   156,   156,   157,
+     157,   157,   158,   158,   158,   158,   158,   158,   158,   158,
+     158,   159,   160,   160,   160,   161,   161,   162,   162,   162,
+     162,   162,   162,   163,   163,   163,   164,   164,   165,   165,
+     166,   166,   167,   167,   168,   168,   168,   169,   169,   169,
+     169,   169,   169,   169,   169,   169,   169,   170,   170,   170,
+     170,   170,   171,   171,   172,   172,   172,   173,   173,   174,
+     174,   175,   176,   177,   178,   179,   179,   179,   179,   179,
+     179,   179,   179,   180,   180,   180,   180
+};
 
-  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
-     STATE-NUM.  */
-static const yytype_int16 yypact[] =
+/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
+static const yytype_uint8 yyr2[] =
 {
-    2506,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,  -234,  -234,    33,  2731,  2731,
-    -234,    39,  -234,    46,  2731,  2731,  -234,  2373,  -234,  -234,
-     -63,  1962,  -234,  -234,  -234,  -234,  -234,    35,   120,  -234,
-    -234,   -48,  -234,  1134,   -20,    15,  -234,  -234,  1083,  -234,
-     -55,  -234,  -234,   -45,  -234,  -234,  -234,  -234,    31,  -234,
-    -234,  -234,  -234,  -234,    10,    34,  2025,  2025,    40,  2088,
-    1266,  -234,  -234,  -234,  -234,  -234,  -234,  -234,    56,  -234,
-     184,  -234,  1962,  -234,    80,   213,   279,    41,   282,    44,
-      59,    69,   114,     3,  -234,  -234,    98,  -234,  -234,   120,
-      35,  -234,   468,  1395,  -234,    33,  -234,  2620,  2583,  1458,
-     -20,  1083,  2419,  -234,    45,  1083,  1083,    -1,    31,  -234,
-    -234,    90,  2025,  2025,  2151,  -234,  -234,   110,  1266,  -234,
-    2214,   571,  -234,  -234,   100,   109,   122,  -234,  -234,  -234,
-     311,  1521,  2151,   311,  -234,  1962,  1962,  1962,  1962,  1962,
-    1962,  1962,  1962,  1962,  1962,  1962,  1962,  1962,  1962,  1962,
-    1962,  1962,  1962,  2151,  -234,  -234,  -234,  -234,   112,   153,
-    1962,   156,   140,   819,   191,   311,   194,   884,   208,   211,
-    -234,  -234,   193,   204,   -40,  -234,   218,  -234,  -234,  -234,
-     569,  -234,  -234,  -234,  -234,  -234,  1395,  -234,  -234,  -234,
-    -234,  -234,  -234,    64,   123,  -234,   125,  -234,   238,  -234,
-    -234,  -234,  1962,   -29,  -234,   225,  -234,  2455,  -234,    16,
-     228,  -234,   107,  -234,    31,   215,   250,  2214,   751,   253,
-    1200,   249,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
-    -234,  -234,  -234,  1962,  -234,  1962,  2333,  1584,   121,  -234,
-     199,  1962,  -234,  -234,   157,  -234,    22,  -234,  -234,  -234,
-    -234,    80,    80,   213,   213,   279,   279,   279,   279,    41,
-      41,   282,    44,    59,    69,   114,    30,  -234,   236,  -234,
-     819,   269,   947,   237,  2151,  -234,   -28,  2151,  2151,   819,
-    -234,  -234,  -234,  -234,   210,  2274,  -234,    12,  -234,  -234,
-    2695,  -234,  -234,  -234,    45,  -234,  1962,  -234,  -234,  -234,
-    1962,  -234,    23,  -234,  -234,  -234,   660,  -234,  -234,  -234,
-    -234,   159,   258,  -234,   256,   199,  2658,  1647,  -234,  -234,
-    1962,  -234,  2151,   819,  -234,   264,  1010,   -25,  -234,   161,
-    -234,   164,   168,  -234,  -234,  1332,  -234,  -234,  -234,  -234,
-    -234,   265,  -234,  -234,  -234,  -234,   179,  -234,   260,  -234,
-     249,  -234,  2151,  1710,    58,  1073,   819,   819,   819,  -234,
-    -234,  -234,  -234,  -234,   180,   819,   188,  1773,  1836,    77,
-     310,  -234,  -234,   252,  -234,   819,   819,   195,   819,   203,
-    1899,   819,  -234,  -234,  -234,   819,  -234,   819,   819,   205,
-    -234,  -234,  -234,  -234,   819,  -234
+       0,     2,     1,     1,     1,     1,     1,     1,     3,     6,
+       1,     2,     1,     1,     1,     1,     4,     4,     3,     3,
+       3,     2,     2,     1,     3,     1,     2,     2,     2,     4,
+       4,     2,     4,     1,     1,     1,     1,     1,     1,     1,
+       4,     1,     3,     3,     3,     1,     3,     3,     1,     3,
+       3,     1,     3,     3,     3,     3,     1,     3,     3,     1,
+       3,     1,     3,     1,     3,     1,     3,     1,     3,     1,
+       5,     1,     3,     1,     1,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     3,     2,     1,     3,     2,
+       2,     1,     2,     1,     2,     1,     2,     1,     1,     3,
+       1,     3,     1,     1,     1,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
+       5,     4,     2,     1,     1,     1,     2,     3,     2,     1,
+       2,     1,     1,     3,     0,     1,     2,     3,     5,     4,
+       6,     5,     2,     1,     0,     2,     3,     1,     3,     1,
+       1,     1,     1,     1,     2,     1,     1,     3,     4,     3,
+       4,     4,     3,     2,     1,     3,     2,     1,     2,     1,
+       3,     2,     2,     1,     1,     1,     3,     1,     2,     1,
+       1,     2,     3,     2,     3,     3,     4,     2,     3,     3,
+       4,     1,     1,     3,     4,     1,     3,     1,     1,     1,
+       1,     1,     1,     3,     4,     3,     2,     3,     1,     2,
+       1,     1,     1,     2,     5,     7,     5,     5,     7,     6,
+       7,     7,     8,     7,     8,     8,     9,     3,     2,     2,
+       2,     3,     1,     2,     1,     1,     1,     4,     3,     1,
+       2,     1,     1,     4,     2,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     1
 };
 
-  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
-     Performed when YYTABLE does not specify something else to do.  Zero
-     means the default is an error.  */
+/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
+   Performed when YYTABLE doesn't specify something else to do.  Zero
+   means the default is an error.  */
 static const yytype_uint16 yydefact[] =
 {
        0,   256,   191,   105,   116,   108,   149,   113,   143,   151,
@@ -977,20 +1093,7 @@ static const yytype_uint16 yydefact[] =
      215,   225,   224,   222,     0,   226
 };
 
-  /* YYPGOTO[NTERM-NUM].  */
-static const yytype_int16 yypgoto[] =
-{
-    -234,  -234,  -234,   -37,   -33,  -234,  -234,    53,  -234,   -86,
-     149,   150,   138,   152,   178,   182,   177,   181,   183,  -234,
-     -49,  -100,  -234,   -50,  -176,    24,     7,  -234,   239,  -234,
-     -59,  -234,  -234,   227,  -119,   -78,  -234,    42,  -234,  -234,
-     231,  -234,   226,   333,  -234,   -15,   -64,   -53,  -234,  -107,
-      47,   244,   234,  -130,  -233,   -11,  -205,  -234,    43,  -234,
-     -19,   137,  -207,  -234,  -234,  -234,  -234,  -234,   326,  -234,
-    -234,  -234,  -234,  -234,  -234,  -234,  -234
-};
-
-  /* YYDEFGOTO[NTERM-NUM].  */
+/* YYDEFGOTO[NTERM-NUM].  */
 static const yytype_int16 yydefgoto[] =
 {
       -1,    97,    98,    99,   203,   100,   274,   151,   102,   103,
@@ -1003,9 +1106,73 @@ static const yytype_int16 yydefgoto[] =
      127,    50,    51,    52,    53,    54,    55
 };
 
-  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
-     positive, shift that token.  If negative, reduce the rule whose
-     number is the opposite.  If YYTABLE_NINF, syntax error.  */
+/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+   STATE-NUM.  */
+#define YYPACT_NINF -234
+static const yytype_int16 yypact[] =
+{
+    2506,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
+    -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
+    -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
+    -234,  -234,  -234,  -234,  -234,  -234,  -234,    33,  2731,  2731,
+    -234,    39,  -234,    46,  2731,  2731,  -234,  2373,  -234,  -234,
+     -63,  1962,  -234,  -234,  -234,  -234,  -234,    35,   120,  -234,
+    -234,   -48,  -234,  1134,   -20,    15,  -234,  -234,  1083,  -234,
+     -55,  -234,  -234,   -45,  -234,  -234,  -234,  -234,    31,  -234,
+    -234,  -234,  -234,  -234,    10,    34,  2025,  2025,    40,  2088,
+    1266,  -234,  -234,  -234,  -234,  -234,  -234,  -234,    56,  -234,
+     184,  -234,  1962,  -234,    80,   213,   279,    41,   282,    44,
+      59,    69,   114,     3,  -234,  -234,    98,  -234,  -234,   120,
+      35,  -234,   468,  1395,  -234,    33,  -234,  2620,  2583,  1458,
+     -20,  1083,  2419,  -234,    45,  1083,  1083,    -1,    31,  -234,
+    -234,    90,  2025,  2025,  2151,  -234,  -234,   110,  1266,  -234,
+    2214,   571,  -234,  -234,   100,   109,   122,  -234,  -234,  -234,
+     311,  1521,  2151,   311,  -234,  1962,  1962,  1962,  1962,  1962,
+    1962,  1962,  1962,  1962,  1962,  1962,  1962,  1962,  1962,  1962,
+    1962,  1962,  1962,  2151,  -234,  -234,  -234,  -234,   112,   153,
+    1962,   156,   140,   819,   191,   311,   194,   884,   208,   211,
+    -234,  -234,   193,   204,   -40,  -234,   218,  -234,  -234,  -234,
+     569,  -234,  -234,  -234,  -234,  -234,  1395,  -234,  -234,  -234,
+    -234,  -234,  -234,    64,   123,  -234,   125,  -234,   238,  -234,
+    -234,  -234,  1962,   -29,  -234,   225,  -234,  2455,  -234,    16,
+     228,  -234,   107,  -234,    31,   215,   250,  2214,   751,   253,
+    1200,   249,  -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
+    -234,  -234,  -234,  1962,  -234,  1962,  2333,  1584,   121,  -234,
+     199,  1962,  -234,  -234,   157,  -234,    22,  -234,  -234,  -234,
+    -234,    80,    80,   213,   213,   279,   279,   279,   279,    41,
+      41,   282,    44,    59,    69,   114,    30,  -234,   236,  -234,
+     819,   269,   947,   237,  2151,  -234,   -28,  2151,  2151,   819,
+    -234,  -234,  -234,  -234,   210,  2274,  -234,    12,  -234,  -234,
+    2695,  -234,  -234,  -234,    45,  -234,  1962,  -234,  -234,  -234,
+    1962,  -234,    23,  -234,  -234,  -234,   660,  -234,  -234,  -234,
+    -234,   159,   258,  -234,   256,   199,  2658,  1647,  -234,  -234,
+    1962,  -234,  2151,   819,  -234,   264,  1010,   -25,  -234,   161,
+    -234,   164,   168,  -234,  -234,  1332,  -234,  -234,  -234,  -234,
+    -234,   265,  -234,  -234,  -234,  -234,   179,  -234,   260,  -234,
+     249,  -234,  2151,  1710,    58,  1073,   819,   819,   819,  -234,
+    -234,  -234,  -234,  -234,   180,   819,   188,  1773,  1836,    77,
+     310,  -234,  -234,   252,  -234,   819,   819,   195,   819,   203,
+    1899,   819,  -234,  -234,  -234,   819,  -234,   819,   819,   205,
+    -234,  -234,  -234,  -234,   819,  -234
+};
+
+/* YYPGOTO[NTERM-NUM].  */
+static const yytype_int16 yypgoto[] =
+{
+    -234,  -234,  -234,   -37,   -33,  -234,  -234,    53,  -234,   -86,
+     149,   150,   138,   152,   178,   182,   177,   181,   183,  -234,
+     -49,  -100,  -234,   -50,  -176,    24,     7,  -234,   239,  -234,
+     -59,  -234,  -234,   227,  -119,   -78,  -234,    42,  -234,  -234,
+     231,  -234,   226,   333,  -234,   -15,   -64,   -53,  -234,  -107,
+      47,   244,   234,  -130,  -233,   -11,  -205,  -234,    43,  -234,
+     -19,   137,  -207,  -234,  -234,  -234,  -234,  -234,   326,  -234,
+    -234,  -234,  -234,  -234,  -234,  -234,  -234
+};
+
+/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
+   positive, shift that token.  If negative, reduce the rule which
+   number is the opposite.  If YYTABLE_NINF, syntax error.  */
+#define YYTABLE_NINF -15
 static const yytype_int16 yytable[] =
 {
       60,   130,   114,   312,    69,   118,    69,    37,    70,   131,
@@ -1290,6 +1457,12 @@ static const yytype_int16 yytable[] =
       18,     0,    19,    20,     0,    21,    22,    23,    24,    25
 };
 
+#define yypact_value_is_default(Yystate) \
+  (!!((Yystate) == (-234)))
+
+#define yytable_value_is_error(Yytable_value) \
+  YYID (0)
+
 static const yytype_int16 yycheck[] =
 {
       37,    65,    51,   210,    41,    58,    43,     0,    41,    68,
@@ -1574,8 +1747,8 @@ static const yytype_int16 yycheck[] =
       59,    -1,    61,    62,    -1,    64,    65,    66,    67,    68
 };
 
-  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
-     symbol of state STATE-NUM.  */
+/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
+   symbol of state STATE-NUM.  */
 static const yytype_uint8 yystos[] =
 {
        0,     1,     4,    34,    35,    38,    39,    43,    45,    46,
@@ -1623,78 +1796,30 @@ static const yytype_uint8 yystos[] =
      162,   162,   162,   162,    81,   162
 };
 
-  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
-static const yytype_uint8 yyr1[] =
-{
-       0,   104,   105,   105,   105,   105,   105,   105,   105,   105,
-     106,   106,   107,   108,   108,   109,   109,   109,   109,   109,
-     109,   109,   109,   110,   110,   111,   111,   111,   111,   111,
-     111,   111,   111,   112,   112,   112,   112,   112,   112,   113,
-     113,   114,   114,   114,   114,   115,   115,   115,   116,   116,
-     116,   117,   117,   117,   117,   117,   118,   118,   118,   119,
-     119,   120,   120,   121,   121,   122,   122,   123,   123,   124,
-     124,   125,   125,   126,   126,   126,   126,   126,   126,   126,
-     126,   126,   126,   126,   127,   127,   127,   128,   129,   129,
-     130,   130,   130,   130,   130,   130,   130,   130,   131,   131,
-     132,   132,   133,   133,   133,   133,   133,   134,   134,   134,
-     134,   134,   134,   134,   134,   134,   134,   134,   134,   134,
-     135,   135,   135,   136,   136,   137,   137,   138,   139,   139,
-     139,   139,   140,   140,   141,   141,   141,   141,   142,   142,
-     142,   142,   142,   143,   145,   144,   144,   146,   146,   147,
-     147,   147,   147,   148,   149,   149,   150,   150,   150,   150,
-     150,   150,   150,   151,   151,   151,   151,   152,   152,   153,
-     153,   154,   154,   154,   154,   155,   155,   156,   156,   157,
-     157,   157,   158,   158,   158,   158,   158,   158,   158,   158,
-     158,   159,   160,   160,   160,   161,   161,   162,   162,   162,
-     162,   162,   162,   163,   163,   163,   164,   164,   165,   165,
-     166,   166,   167,   167,   168,   168,   168,   169,   169,   169,
-     169,   169,   169,   169,   169,   169,   169,   170,   170,   170,
-     170,   170,   171,   171,   172,   172,   172,   173,   173,   174,
-     174,   175,   176,   177,   178,   179,   179,   179,   179,   179,
-     179,   179,   179,   180,   180,   180,   180
-};
-
-  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
-static const yytype_uint8 yyr2[] =
-{
-       0,     2,     1,     1,     1,     1,     1,     1,     3,     6,
-       1,     2,     1,     1,     1,     1,     4,     4,     3,     3,
-       3,     2,     2,     1,     3,     1,     2,     2,     2,     4,
-       4,     2,     4,     1,     1,     1,     1,     1,     1,     1,
-       4,     1,     3,     3,     3,     1,     3,     3,     1,     3,
-       3,     1,     3,     3,     3,     3,     1,     3,     3,     1,
-       3,     1,     3,     1,     3,     1,     3,     1,     3,     1,
-       5,     1,     3,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     3,     2,     1,     3,     2,
-       2,     1,     2,     1,     2,     1,     2,     1,     1,     3,
-       1,     3,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       5,     4,     2,     1,     1,     1,     2,     3,     2,     1,
-       2,     1,     1,     3,     0,     1,     2,     3,     5,     4,
-       6,     5,     2,     1,     0,     2,     3,     1,     3,     1,
-       1,     1,     1,     1,     2,     1,     1,     3,     4,     3,
-       4,     4,     3,     2,     1,     3,     2,     1,     2,     1,
-       3,     2,     2,     1,     1,     1,     3,     1,     2,     1,
-       1,     2,     3,     2,     3,     3,     4,     2,     3,     3,
-       4,     1,     1,     3,     4,     1,     3,     1,     1,     1,
-       1,     1,     1,     3,     4,     3,     2,     3,     1,     2,
-       1,     1,     1,     2,     5,     7,     5,     5,     7,     6,
-       7,     7,     8,     7,     8,     8,     9,     3,     2,     2,
-       2,     3,     1,     2,     1,     1,     1,     4,     3,     1,
-       2,     1,     1,     4,     2,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1
-};
-
-
-#define yyerrok         (yyerrstatus = 0)
-#define yyclearin       (yychar = YYEMPTY)
-#define YYEMPTY         (-2)
-#define YYEOF           0
-
-#define YYACCEPT        goto yyacceptlab
-#define YYABORT         goto yyabortlab
-#define YYERROR         goto yyerrorlab
-
+#define yyerrok                (yyerrstatus = 0)
+#define yyclearin      (yychar = YYEMPTY)
+#define YYEMPTY                (-2)
+#define YYEOF          0
+
+#define YYACCEPT       goto yyacceptlab
+#define YYABORT                goto yyabortlab
+#define YYERROR                goto yyerrorlab
+
+
+/* Like YYERROR except do call yyerror.  This remains here temporarily
+   to ease the transition to the new meaning of YYERROR, for GCC.
+   Once GCC version 2 has supplanted version 1, this can go.  However,
+   YYFAIL appears to be in use.  Nevertheless, it is formally deprecated
+   in Bison 2.4.2's NEWS entry, where a plan to phase it out is
+   discussed.  */
+
+#define YYFAIL         goto yyerrlab
+#if defined YYFAIL
+  /* This is here to suppress warnings from the GCC cpp's
+     -Wunused-macros.  Normally we don't worry about that warning, but
+     some users do, and we want to make it easy for users to remove
+     YYFAIL uses, which will produce warnings from Bison 2.5.  */
+#endif
 
 #define YYRECOVERING()  (!!yyerrstatus)
 
@@ -1711,15 +1836,27 @@ do                                                              \
   else                                                          \
     {                                                           \
       yyerror (scanner, YY_("syntax error: cannot back up")); \
-      YYERROR;                                                  \
-    }                                                           \
-while (0)
+      YYERROR;                                                 \
+    }                                                          \
+while (YYID (0))
 
 /* Error token number */
-#define YYTERROR        1
-#define YYERRCODE       256
+#define YYTERROR       1
+#define YYERRCODE      256
+
+
+/* This macro is provided for backward compatibility. */
+#ifndef YY_LOCATION_PRINT
+# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
+#endif
 
 
+/* YYLEX -- calling `yylex' with the right arguments.  */
+#ifdef YYLEX_PARAM
+# define YYLEX yylex (YYLEX_PARAM)
+#else
+# define YYLEX yylex (scanner)
+#endif
 
 /* Enable debugging if requested.  */
 #if YYDEBUG
@@ -1729,47 +1866,58 @@ while (0)
 #  define YYFPRINTF fprintf
 # endif
 
-# define YYDPRINTF(Args)                        \
-do {                                            \
-  if (yydebug)                                  \
-    YYFPRINTF Args;                             \
-} while (0)
-
-/* This macro is provided for backward compatibility. */
-#ifndef YY_LOCATION_PRINT
-# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
-#endif
-
+# define YYDPRINTF(Args)                       \
+do {                                           \
+  if (yydebug)                                 \
+    YYFPRINTF Args;                            \
+} while (YYID (0))
 
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
-do {                                                                      \
-  if (yydebug)                                                            \
-    {                                                                     \
-      YYFPRINTF (stderr, "%s ", Title);                                   \
-      yy_symbol_print (stderr,                                            \
-                  Type, Value, scanner); \
-      YYFPRINTF (stderr, "\n");                                           \
-    }                                                                     \
-} while (0)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                   \
+do {                                                                     \
+  if (yydebug)                                                           \
+    {                                                                    \
+      YYFPRINTF (stderr, "%s ", Title);                                          \
+      yy_symbol_print (stderr,                                           \
+                 Type, Value, scanner); \
+      YYFPRINTF (stderr, "\n");                                                  \
+    }                                                                    \
+} while (YYID (0))
 
 
-/*----------------------------------------.
-| Print this symbol's value on YYOUTPUT.  |
-`----------------------------------------*/
+/*--------------------------------.
+| Print this symbol on YYOUTPUT.  |
+`--------------------------------*/
 
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 static void
 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, GISourceScanner* scanner)
+#else
+static void
+yy_symbol_value_print (yyoutput, yytype, yyvaluep, scanner)
+    FILE *yyoutput;
+    int yytype;
+    YYSTYPE const * const yyvaluep;
+    GISourceScanner* scanner;
+#endif
 {
   FILE *yyo = yyoutput;
   YYUSE (yyo);
-  YYUSE (scanner);
   if (!yyvaluep)
     return;
+  YYUSE (scanner);
 # ifdef YYPRINT
   if (yytype < YYNTOKENS)
     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# else
+  YYUSE (yyoutput);
 # endif
-  YYUSE (yytype);
+  switch (yytype)
+    {
+      default:
+        break;
+    }
 }
 
 
@@ -1777,11 +1925,23 @@ yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvalue
 | Print this symbol on YYOUTPUT.  |
 `--------------------------------*/
 
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 static void
 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, GISourceScanner* scanner)
+#else
+static void
+yy_symbol_print (yyoutput, yytype, yyvaluep, scanner)
+    FILE *yyoutput;
+    int yytype;
+    YYSTYPE const * const yyvaluep;
+    GISourceScanner* scanner;
+#endif
 {
-  YYFPRINTF (yyoutput, "%s %s (",
-             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
+  if (yytype < YYNTOKENS)
+    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+  else
+    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
 
   yy_symbol_value_print (yyoutput, yytype, yyvaluep, scanner);
   YYFPRINTF (yyoutput, ")");
@@ -1792,8 +1952,16 @@ yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, GIS
 | TOP (included).                                                   |
 `------------------------------------------------------------------*/
 
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 static void
 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
+#else
+static void
+yy_stack_print (yybottom, yytop)
+    yytype_int16 *yybottom;
+    yytype_int16 *yytop;
+#endif
 {
   YYFPRINTF (stderr, "Stack now");
   for (; yybottom <= yytop; yybottom++)
@@ -1804,42 +1972,50 @@ yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
   YYFPRINTF (stderr, "\n");
 }
 
-# define YY_STACK_PRINT(Bottom, Top)                            \
-do {                                                            \
-  if (yydebug)                                                  \
-    yy_stack_print ((Bottom), (Top));                           \
-} while (0)
+# define YY_STACK_PRINT(Bottom, Top)                           \
+do {                                                           \
+  if (yydebug)                                                 \
+    yy_stack_print ((Bottom), (Top));                          \
+} while (YYID (0))
 
 
 /*------------------------------------------------.
 | Report that the YYRULE is going to be reduced.  |
 `------------------------------------------------*/
 
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
+static void
+yy_reduce_print (YYSTYPE *yyvsp, int yyrule, GISourceScanner* scanner)
+#else
 static void
-yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule, GISourceScanner* scanner)
+yy_reduce_print (yyvsp, yyrule, scanner)
+    YYSTYPE *yyvsp;
+    int yyrule;
+    GISourceScanner* scanner;
+#endif
 {
-  unsigned long int yylno = yyrline[yyrule];
   int yynrhs = yyr2[yyrule];
   int yyi;
+  unsigned long int yylno = yyrline[yyrule];
   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
-             yyrule - 1, yylno);
+            yyrule - 1, yylno);
   /* The symbols being reduced.  */
   for (yyi = 0; yyi < yynrhs; yyi++)
     {
       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
-      yy_symbol_print (stderr,
-                       yystos[yyssp[yyi + 1 - yynrhs]],
-                       &(yyvsp[(yyi + 1) - (yynrhs)])
-                                              , scanner);
+      yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
+                      &(yyvsp[(yyi + 1) - (yynrhs)])
+                                      , scanner);
       YYFPRINTF (stderr, "\n");
     }
 }
 
-# define YY_REDUCE_PRINT(Rule)          \
-do {                                    \
-  if (yydebug)                          \
-    yy_reduce_print (yyssp, yyvsp, Rule, scanner); \
-} while (0)
+# define YY_REDUCE_PRINT(Rule)         \
+do {                                   \
+  if (yydebug)                         \
+    yy_reduce_print (yyvsp, Rule, scanner); \
+} while (YYID (0))
 
 /* Nonzero means print parse trace.  It is left uninitialized so that
    multiple parsers can coexist.  */
@@ -1853,7 +2029,7 @@ int yydebug;
 
 
 /* YYINITDEPTH -- initial size of the parser's stacks.  */
-#ifndef YYINITDEPTH
+#ifndef        YYINITDEPTH
 # define YYINITDEPTH 200
 #endif
 
@@ -1876,8 +2052,15 @@ int yydebug;
 #   define yystrlen strlen
 #  else
 /* Return the length of YYSTR.  */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 static YYSIZE_T
 yystrlen (const char *yystr)
+#else
+static YYSIZE_T
+yystrlen (yystr)
+    const char *yystr;
+#endif
 {
   YYSIZE_T yylen;
   for (yylen = 0; yystr[yylen]; yylen++)
@@ -1893,8 +2076,16 @@ yystrlen (const char *yystr)
 #  else
 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
    YYDEST.  */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 static char *
 yystpcpy (char *yydest, const char *yysrc)
+#else
+static char *
+yystpcpy (yydest, yysrc)
+    char *yydest;
+    const char *yysrc;
+#endif
 {
   char *yyd = yydest;
   const char *yys = yysrc;
@@ -1924,27 +2115,27 @@ yytnamerr (char *yyres, const char *yystr)
       char const *yyp = yystr;
 
       for (;;)
-        switch (*++yyp)
-          {
-          case '\'':
-          case ',':
-            goto do_not_strip_quotes;
-
-          case '\\':
-            if (*++yyp != '\\')
-              goto do_not_strip_quotes;
-            /* Fall through.  */
-          default:
-            if (yyres)
-              yyres[yyn] = *yyp;
-            yyn++;
-            break;
-
-          case '"':
-            if (yyres)
-              yyres[yyn] = '\0';
-            return yyn;
-          }
+       switch (*++yyp)
+         {
+         case '\'':
+         case ',':
+           goto do_not_strip_quotes;
+
+         case '\\':
+           if (*++yyp != '\\')
+             goto do_not_strip_quotes;
+           /* Fall through.  */
+         default:
+           if (yyres)
+             yyres[yyn] = *yyp;
+           yyn++;
+           break;
+
+         case '"':
+           if (yyres)
+             yyres[yyn] = '\0';
+           return yyn;
+         }
     do_not_strip_quotes: ;
     }
 
@@ -1967,11 +2158,11 @@ static int
 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
                 yytype_int16 *yyssp, int yytoken)
 {
-  YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
+  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
   YYSIZE_T yysize = yysize0;
   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
   /* Internationalized format string. */
-  const char *yyformat = YY_NULLPTR;
+  const char *yyformat = YY_NULL;
   /* Arguments of yyformat. */
   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
   /* Number of reported tokens (one for the "unexpected", one per
@@ -1979,6 +2170,10 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
   int yycount = 0;
 
   /* There are many possibilities here to consider:
+     - Assume YYFAIL is not used.  It's too flawed to consider.  See
+       <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
+       for details.  YYERROR is fine as it does not invoke this
+       function.
      - If this state is a consistent state with a default action, then
        the only way this function was invoked is if the default action
        is an error action.  In that case, don't check for expected
@@ -2028,7 +2223,7 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
                   }
                 yyarg[yycount++] = yytname[yyx];
                 {
-                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
+                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
                   if (! (yysize <= yysize1
                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
                     return 2;
@@ -2095,18 +2290,33 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
 | Release the memory associated to this symbol.  |
 `-----------------------------------------------*/
 
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 static void
 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, GISourceScanner* scanner)
+#else
+static void
+yydestruct (yymsg, yytype, yyvaluep, scanner)
+    const char *yymsg;
+    int yytype;
+    YYSTYPE *yyvaluep;
+    GISourceScanner* scanner;
+#endif
 {
   YYUSE (yyvaluep);
   YYUSE (scanner);
+
   if (!yymsg)
     yymsg = "Deleting";
   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
 
-  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
-  YYUSE (yytype);
-  YY_IGNORE_MAYBE_UNINITIALIZED_END
+  switch (yytype)
+    {
+
+      default:
+        break;
+    }
 }
 
 
@@ -2115,8 +2325,18 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, GISourceScanner* s
 /* The lookahead symbol.  */
 int yychar;
 
+
+#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_END
+#endif
+#ifndef YY_INITIAL_VALUE
+# define YY_INITIAL_VALUE(Value) /* Nothing. */
+#endif
+
 /* The semantic value of the lookahead symbol.  */
-YYSTYPE yylval;
+YYSTYPE yylval YY_INITIAL_VALUE(yyval_default);
+
 /* Number of syntax errors so far.  */
 int yynerrs;
 
@@ -2125,16 +2345,35 @@ int yynerrs;
 | yyparse.  |
 `----------*/
 
+#ifdef YYPARSE_PARAM
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
+int
+yyparse (void *YYPARSE_PARAM)
+#else
+int
+yyparse (YYPARSE_PARAM)
+    void *YYPARSE_PARAM;
+#endif
+#else /* ! YYPARSE_PARAM */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+     || defined __cplusplus || defined _MSC_VER)
 int
 yyparse (GISourceScanner* scanner)
+#else
+int
+yyparse (scanner)
+    GISourceScanner* scanner;
+#endif
+#endif
 {
     int yystate;
     /* Number of tokens to shift before error messages enabled.  */
     int yyerrstatus;
 
     /* The stacks and their tools:
-       'yyss': related to states.
-       'yyvs': related to semantic values.
+       `yyss': related to states.
+       `yyvs': related to semantic values.
 
        Refer to the stacks through separate pointers, to allow yyoverflow
        to reallocate them elsewhere.  */
@@ -2202,23 +2441,23 @@ yyparse (GISourceScanner* scanner)
 
 #ifdef yyoverflow
       {
-        /* Give user a chance to reallocate the stack.  Use copies of
-           these so that the &'s don't force the real ones into
-           memory.  */
-        YYSTYPE *yyvs1 = yyvs;
-        yytype_int16 *yyss1 = yyss;
-
-        /* Each stack pointer address is followed by the size of the
-           data in use in that stack, in bytes.  This used to be a
-           conditional around just the two extra args, but that might
-           be undefined if yyoverflow is a macro.  */
-        yyoverflow (YY_("memory exhausted"),
-                    &yyss1, yysize * sizeof (*yyssp),
-                    &yyvs1, yysize * sizeof (*yyvsp),
-                    &yystacksize);
-
-        yyss = yyss1;
-        yyvs = yyvs1;
+       /* Give user a chance to reallocate the stack.  Use copies of
+          these so that the &'s don't force the real ones into
+          memory.  */
+       YYSTYPE *yyvs1 = yyvs;
+       yytype_int16 *yyss1 = yyss;
+
+       /* Each stack pointer address is followed by the size of the
+          data in use in that stack, in bytes.  This used to be a
+          conditional around just the two extra args, but that might
+          be undefined if yyoverflow is a macro.  */
+       yyoverflow (YY_("memory exhausted"),
+                   &yyss1, yysize * sizeof (*yyssp),
+                   &yyvs1, yysize * sizeof (*yyvsp),
+                   &yystacksize);
+
+       yyss = yyss1;
+       yyvs = yyvs1;
       }
 #else /* no yyoverflow */
 # ifndef YYSTACK_RELOCATE
@@ -2226,22 +2465,22 @@ yyparse (GISourceScanner* scanner)
 # else
       /* Extend the stack our own way.  */
       if (YYMAXDEPTH <= yystacksize)
-        goto yyexhaustedlab;
+       goto yyexhaustedlab;
       yystacksize *= 2;
       if (YYMAXDEPTH < yystacksize)
-        yystacksize = YYMAXDEPTH;
+       yystacksize = YYMAXDEPTH;
 
       {
-        yytype_int16 *yyss1 = yyss;
-        union yyalloc *yyptr =
-          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
-        if (! yyptr)
-          goto yyexhaustedlab;
-        YYSTACK_RELOCATE (yyss_alloc, yyss);
-        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
+       yytype_int16 *yyss1 = yyss;
+       union yyalloc *yyptr =
+         (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
+       if (! yyptr)
+         goto yyexhaustedlab;
+       YYSTACK_RELOCATE (yyss_alloc, yyss);
+       YYSTACK_RELOCATE (yyvs_alloc, yyvs);
 #  undef YYSTACK_RELOCATE
-        if (yyss1 != yyssa)
-          YYSTACK_FREE (yyss1);
+       if (yyss1 != yyssa)
+         YYSTACK_FREE (yyss1);
       }
 # endif
 #endif /* no yyoverflow */
@@ -2250,10 +2489,10 @@ yyparse (GISourceScanner* scanner)
       yyvsp = yyvs + yysize - 1;
 
       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
-                  (unsigned long int) yystacksize));
+                 (unsigned long int) yystacksize));
 
       if (yyss + yystacksize - 1 <= yyssp)
-        YYABORT;
+       YYABORT;
     }
 
   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
@@ -2282,7 +2521,7 @@ yybackup:
   if (yychar == YYEMPTY)
     {
       YYDPRINTF ((stderr, "Reading a token: "));
-      yychar = yylex (scanner);
+      yychar = YYLEX;
     }
 
   if (yychar <= YYEOF)
@@ -2347,7 +2586,7 @@ yyreduce:
   yylen = yyr2[yyn];
 
   /* If YYLEN is nonzero, implement the default value of the action:
-     '$$ = $1'.
+     `$$ = $1'.
 
      Otherwise, the following line sets YYVAL to garbage.
      This behavior is undocumented and Bison
@@ -2361,20 +2600,21 @@ yyreduce:
   switch (yyn)
     {
         case 2:
-#line 305 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 305 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = g_hash_table_lookup (const_table, (yyvsp[0].str));
+               (yyval.symbol) = g_hash_table_lookup (const_table, (yyvsp[(1) - (1)].str));
                if ((yyval.symbol) == NULL) {
                        (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
                } else {
                        (yyval.symbol) = gi_source_symbol_ref ((yyval.symbol));
                }
          }
-#line 2374 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 3:
-#line 314 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 314 "giscanner/scannerparser.y"
     {
                char *rest;
                guint64 value;
@@ -2390,58 +2630,58 @@ yyreduce:
                (yyval.symbol)->const_int = value;
                (yyval.symbol)->const_int_is_unsigned = (rest && (rest[0] == 'U'));
          }
-#line 2394 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 4:
-#line 330 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 330 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_boolean_set = TRUE;
                (yyval.symbol)->const_boolean = g_ascii_strcasecmp (yytext, "true") == 0 ? TRUE : FALSE;
          }
-#line 2404 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 5:
-#line 336 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 336 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
                (yyval.symbol)->const_int = g_utf8_get_char(yytext + 1);
          }
-#line 2414 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 6:
-#line 342 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 342 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_double_set = TRUE;
                (yyval.symbol)->const_double = 0.0;
         sscanf (yytext, "%lf", &((yyval.symbol)->const_double));
          }
-#line 2425 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 8:
-#line 350 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 350 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-1].symbol);
+               (yyval.symbol) = (yyvsp[(2) - (3)].symbol);
          }
-#line 2433 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 9:
-#line 354 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 354 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2441 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 10:
-#line 362 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 362 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                yytext[strlen (yytext) - 1] = '\0';
@@ -2456,14 +2696,14 @@ yyreduce:
                   }
 
          }
-#line 2460 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 11:
-#line 377 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 377 "giscanner/scannerparser.y"
     {
                char *strings, *string2;
-               (yyval.symbol) = (yyvsp[-1].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (2)].symbol);
                yytext[strlen (yytext) - 1] = '\0';
                string2 = parse_c_string_literal (yytext + 1);
                strings = g_strconcat ((yyval.symbol)->const_string, string2, NULL);
@@ -2471,276 +2711,276 @@ yyreduce:
                g_free (string2);
                (yyval.symbol)->const_string = strings;
          }
-#line 2475 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 12:
-#line 391 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 391 "giscanner/scannerparser.y"
     {
                (yyval.str) = g_strdup (yytext);
          }
-#line 2483 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 16:
-#line 404 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 404 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2491 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 17:
-#line 408 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 408 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2499 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 18:
-#line 412 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 412 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2507 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 19:
-#line 416 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 416 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2515 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 20:
-#line 420 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 420 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2523 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 21:
-#line 424 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 424 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2531 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 22:
-#line 428 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 428 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2539 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 26:
-#line 441 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 441 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2547 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 27:
-#line 445 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 445 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2555 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 28:
-#line 449 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 449 "giscanner/scannerparser.y"
     {
-               switch ((yyvsp[-1].unary_operator)) {
+               switch ((yyvsp[(1) - (2)].unary_operator)) {
                case UNARY_PLUS:
-                       (yyval.symbol) = (yyvsp[0].symbol);
+                       (yyval.symbol) = (yyvsp[(2) - (2)].symbol);
                        break;
                case UNARY_MINUS:
-                       (yyval.symbol) = gi_source_symbol_copy ((yyvsp[0].symbol));
-                       (yyval.symbol)->const_int = -(yyvsp[0].symbol)->const_int;
+                       (yyval.symbol) = gi_source_symbol_copy ((yyvsp[(2) - (2)].symbol));
+                       (yyval.symbol)->const_int = -(yyvsp[(2) - (2)].symbol)->const_int;
                        break;
                case UNARY_BITWISE_COMPLEMENT:
-                       (yyval.symbol) = gi_source_symbol_copy ((yyvsp[0].symbol));
-                       (yyval.symbol)->const_int = ~(yyvsp[0].symbol)->const_int;
+                       (yyval.symbol) = gi_source_symbol_copy ((yyvsp[(2) - (2)].symbol));
+                       (yyval.symbol)->const_int = ~(yyvsp[(2) - (2)].symbol)->const_int;
                        break;
                case UNARY_LOGICAL_NEGATION:
-                       (yyval.symbol) = gi_source_symbol_copy ((yyvsp[0].symbol));
-                       (yyval.symbol)->const_int = !gi_source_symbol_get_const_boolean ((yyvsp[0].symbol));
+                       (yyval.symbol) = gi_source_symbol_copy ((yyvsp[(2) - (2)].symbol));
+                       (yyval.symbol)->const_int = !gi_source_symbol_get_const_boolean ((yyvsp[(2) - (2)].symbol));
                        break;
                default:
                        (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
                        break;
                }
          }
-#line 2582 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 29:
-#line 472 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 472 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-1].symbol);
+               (yyval.symbol) = (yyvsp[(3) - (4)].symbol);
                if ((yyval.symbol)->const_int_set) {
                        (yyval.symbol)->base_type = gi_source_basic_type_new ((yyval.symbol)->const_int_is_unsigned ? "guint64" : "gint64");
                }
          }
-#line 2593 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 30:
-#line 479 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 479 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-1].symbol);
+               (yyval.symbol) = (yyvsp[(3) - (4)].symbol);
                if ((yyval.symbol)->const_int_set) {
                        (yyval.symbol)->base_type = gi_source_basic_type_new ("guint64");
                }
          }
-#line 2604 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 31:
-#line 486 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 486 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2612 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 32:
-#line 490 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 490 "giscanner/scannerparser.y"
     {
-               ctype_free ((yyvsp[-1].ctype));
+               ctype_free ((yyvsp[(3) - (4)].ctype));
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2621 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 33:
-#line 498 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 498 "giscanner/scannerparser.y"
     {
                (yyval.unary_operator) = UNARY_ADDRESS_OF;
          }
-#line 2629 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 34:
-#line 502 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 502 "giscanner/scannerparser.y"
     {
                (yyval.unary_operator) = UNARY_POINTER_INDIRECTION;
          }
-#line 2637 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 35:
-#line 506 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 506 "giscanner/scannerparser.y"
     {
                (yyval.unary_operator) = UNARY_PLUS;
          }
-#line 2645 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 36:
-#line 510 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 510 "giscanner/scannerparser.y"
     {
                (yyval.unary_operator) = UNARY_MINUS;
          }
-#line 2653 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 37:
-#line 514 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 514 "giscanner/scannerparser.y"
     {
                (yyval.unary_operator) = UNARY_BITWISE_COMPLEMENT;
          }
-#line 2661 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 38:
-#line 518 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 518 "giscanner/scannerparser.y"
     {
                (yyval.unary_operator) = UNARY_LOGICAL_NEGATION;
          }
-#line 2669 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 40:
-#line 526 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 526 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[0].symbol);
+               (yyval.symbol) = (yyvsp[(4) - (4)].symbol);
                if ((yyval.symbol)->const_int_set || (yyval.symbol)->const_double_set || (yyval.symbol)->const_string != NULL) {
-                       (yyval.symbol)->base_type = (yyvsp[-2].ctype);
+                       (yyval.symbol)->base_type = (yyvsp[(2) - (4)].ctype);
                } else {
-                       ctype_free ((yyvsp[-2].ctype));
+                       ctype_free ((yyvsp[(2) - (4)].ctype));
                }
          }
-#line 2682 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 42:
-#line 539 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 539 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int * (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int * (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2692 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 43:
-#line 545 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 545 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               if ((yyvsp[0].symbol)->const_int != 0) {
-                       (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int / (yyvsp[0].symbol)->const_int;
+               if ((yyvsp[(3) - (3)].symbol)->const_int != 0) {
+                       (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int / (yyvsp[(3) - (3)].symbol)->const_int;
                }
          }
-#line 2704 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 44:
-#line 553 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 553 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               if ((yyvsp[0].symbol)->const_int != 0) {
-                       (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int % (yyvsp[0].symbol)->const_int;
+               if ((yyvsp[(3) - (3)].symbol)->const_int != 0) {
+                       (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int % (yyvsp[(3) - (3)].symbol)->const_int;
                }
          }
-#line 2716 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 46:
-#line 565 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 565 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int + (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int + (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2726 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 47:
-#line 571 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 571 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int - (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int - (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2736 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 49:
-#line 581 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 581 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int << (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int << (yyvsp[(3) - (3)].symbol)->const_int;
 
                /* assume this is a bitfield/flags declaration
                 * if a left shift operator is sued in an enum value
@@ -2748,165 +2988,165 @@ yyreduce:
                 */
                is_bitfield = TRUE;
          }
-#line 2752 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 50:
-#line 593 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 593 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int >> (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int >> (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2762 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 52:
-#line 603 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 603 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int < (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int < (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2772 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 53:
-#line 609 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 609 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int > (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int > (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2782 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 54:
-#line 615 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 615 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int <= (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int <= (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2792 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 55:
-#line 621 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 621 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int >= (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int >= (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2802 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 57:
-#line 631 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 631 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int == (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int == (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2812 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 58:
-#line 637 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 637 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int != (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int != (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2822 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 60:
-#line 647 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 647 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int & (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int & (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2832 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 62:
-#line 657 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 657 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int ^ (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int ^ (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2842 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 64:
-#line 667 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 667 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[-2].symbol)->const_int | (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(1) - (3)].symbol)->const_int | (yyvsp[(3) - (3)].symbol)->const_int;
          }
-#line 2852 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 66:
-#line 677 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 677 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
                (yyval.symbol)->const_int =
-                 gi_source_symbol_get_const_boolean ((yyvsp[-2].symbol)) &&
-                 gi_source_symbol_get_const_boolean ((yyvsp[0].symbol));
+                 gi_source_symbol_get_const_boolean ((yyvsp[(1) - (3)].symbol)) &&
+                 gi_source_symbol_get_const_boolean ((yyvsp[(3) - (3)].symbol));
          }
-#line 2864 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 68:
-#line 689 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 689 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_CONST, scanner->current_file, lineno);
                (yyval.symbol)->const_int_set = TRUE;
                (yyval.symbol)->const_int =
-                 gi_source_symbol_get_const_boolean ((yyvsp[-2].symbol)) ||
-                 gi_source_symbol_get_const_boolean ((yyvsp[0].symbol));
+                 gi_source_symbol_get_const_boolean ((yyvsp[(1) - (3)].symbol)) ||
+                 gi_source_symbol_get_const_boolean ((yyvsp[(3) - (3)].symbol));
          }
-#line 2876 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 70:
-#line 701 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 701 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = gi_source_symbol_get_const_boolean ((yyvsp[-4].symbol)) ? (yyvsp[-2].symbol) : (yyvsp[0].symbol);
+               (yyval.symbol) = gi_source_symbol_get_const_boolean ((yyvsp[(1) - (5)].symbol)) ? (yyvsp[(3) - (5)].symbol) : (yyvsp[(5) - (5)].symbol);
          }
-#line 2884 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 72:
-#line 709 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 709 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2892 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 86:
-#line 732 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 732 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 2900 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 88:
-#line 745 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 745 "giscanner/scannerparser.y"
     {
                GList *l;
-               for (l = (yyvsp[-1].list); l != NULL; l = l->next) {
+               for (l = (yyvsp[(2) - (3)].list); l != NULL; l = l->next) {
                        GISourceSymbol *sym = l->data;
-                       gi_source_symbol_merge_type (sym, gi_source_type_copy ((yyvsp[-2].ctype)));
-                       if ((yyvsp[-2].ctype)->storage_class_specifier & STORAGE_CLASS_TYPEDEF) {
+                       gi_source_symbol_merge_type (sym, gi_source_type_copy ((yyvsp[(1) - (3)].ctype)));
+                       if ((yyvsp[(1) - (3)].ctype)->storage_class_specifier & STORAGE_CLASS_TYPEDEF) {
                                sym->type = CSYMBOL_TYPE_TYPEDEF;
                        } else if (sym->base_type->type == CTYPE_FUNCTION) {
                                sym->type = CSYMBOL_TYPE_FUNCTION;
@@ -2916,242 +3156,242 @@ yyreduce:
                        gi_source_scanner_add_symbol (scanner, sym);
                        gi_source_symbol_unref (sym);
                }
-               ctype_free ((yyvsp[-2].ctype));
+               ctype_free ((yyvsp[(1) - (3)].ctype));
          }
-#line 2922 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 89:
-#line 763 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 763 "giscanner/scannerparser.y"
     {
-               ctype_free ((yyvsp[-1].ctype));
+               ctype_free ((yyvsp[(1) - (2)].ctype));
          }
-#line 2930 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 90:
-#line 770 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 770 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[0].ctype);
-               (yyval.ctype)->storage_class_specifier |= (yyvsp[-1].storage_class_specifier);
+               (yyval.ctype) = (yyvsp[(2) - (2)].ctype);
+               (yyval.ctype)->storage_class_specifier |= (yyvsp[(1) - (2)].storage_class_specifier);
          }
-#line 2939 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 91:
-#line 775 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 775 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_type_new (CTYPE_INVALID);
-               (yyval.ctype)->storage_class_specifier |= (yyvsp[0].storage_class_specifier);
+               (yyval.ctype)->storage_class_specifier |= (yyvsp[(1) - (1)].storage_class_specifier);
          }
-#line 2948 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 92:
-#line 780 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 780 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[-1].ctype);
+               (yyval.ctype) = (yyvsp[(1) - (2)].ctype);
                /* combine basic types like unsigned int and long long */
-               if ((yyval.ctype)->type == CTYPE_BASIC_TYPE && (yyvsp[0].ctype)->type == CTYPE_BASIC_TYPE) {
-                       char *name = g_strdup_printf ("%s %s", (yyval.ctype)->name, (yyvsp[0].ctype)->name);
+               if ((yyval.ctype)->type == CTYPE_BASIC_TYPE && (yyvsp[(2) - (2)].ctype)->type == CTYPE_BASIC_TYPE) {
+                       char *name = g_strdup_printf ("%s %s", (yyval.ctype)->name, (yyvsp[(2) - (2)].ctype)->name);
                        g_free ((yyval.ctype)->name);
                        (yyval.ctype)->name = name;
-                       ctype_free ((yyvsp[0].ctype));
+                       ctype_free ((yyvsp[(2) - (2)].ctype));
                } else {
-                       (yyval.ctype)->base_type = (yyvsp[0].ctype);
+                       (yyval.ctype)->base_type = (yyvsp[(2) - (2)].ctype);
                }
          }
-#line 2965 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 94:
-#line 794 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 794 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[0].ctype);
-               (yyval.ctype)->type_qualifier |= (yyvsp[-1].type_qualifier);
+               (yyval.ctype) = (yyvsp[(2) - (2)].ctype);
+               (yyval.ctype)->type_qualifier |= (yyvsp[(1) - (2)].type_qualifier);
          }
-#line 2974 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 95:
-#line 799 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 799 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_type_new (CTYPE_INVALID);
-               (yyval.ctype)->type_qualifier |= (yyvsp[0].type_qualifier);
+               (yyval.ctype)->type_qualifier |= (yyvsp[(1) - (1)].type_qualifier);
          }
-#line 2983 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 96:
-#line 804 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 804 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[0].ctype);
-               (yyval.ctype)->function_specifier |= (yyvsp[-1].function_specifier);
+               (yyval.ctype) = (yyvsp[(2) - (2)].ctype);
+               (yyval.ctype)->function_specifier |= (yyvsp[(1) - (2)].function_specifier);
          }
-#line 2992 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 97:
-#line 809 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 809 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_type_new (CTYPE_INVALID);
-               (yyval.ctype)->function_specifier |= (yyvsp[0].function_specifier);
+               (yyval.ctype)->function_specifier |= (yyvsp[(1) - (1)].function_specifier);
          }
-#line 3001 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 98:
-#line 817 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 817 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_append (NULL, (yyvsp[0].symbol));
+               (yyval.list) = g_list_append (NULL, (yyvsp[(1) - (1)].symbol));
          }
-#line 3009 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 99:
-#line 821 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 821 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_append ((yyvsp[-2].list), (yyvsp[0].symbol));
+               (yyval.list) = g_list_append ((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].symbol));
          }
-#line 3017 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 102:
-#line 833 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 833 "giscanner/scannerparser.y"
     {
                (yyval.storage_class_specifier) = STORAGE_CLASS_TYPEDEF;
          }
-#line 3025 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 103:
-#line 837 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 837 "giscanner/scannerparser.y"
     {
                (yyval.storage_class_specifier) = STORAGE_CLASS_EXTERN;
          }
-#line 3033 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 104:
-#line 841 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 841 "giscanner/scannerparser.y"
     {
                (yyval.storage_class_specifier) = STORAGE_CLASS_STATIC;
          }
-#line 3041 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 105:
-#line 845 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 845 "giscanner/scannerparser.y"
     {
                (yyval.storage_class_specifier) = STORAGE_CLASS_AUTO;
          }
-#line 3049 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 106:
-#line 849 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 849 "giscanner/scannerparser.y"
     {
                (yyval.storage_class_specifier) = STORAGE_CLASS_REGISTER;
          }
-#line 3057 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 107:
-#line 856 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 856 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_type_new (CTYPE_VOID);
          }
-#line 3065 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 108:
-#line 860 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 860 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("char");
          }
-#line 3073 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 109:
-#line 864 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 864 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("short");
          }
-#line 3081 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 110:
-#line 868 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 868 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("int");
          }
-#line 3089 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 111:
-#line 872 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 872 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("long");
          }
-#line 3097 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 112:
-#line 876 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 876 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("float");
          }
-#line 3105 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 113:
-#line 880 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 880 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("double");
          }
-#line 3113 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 114:
-#line 884 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 884 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("signed");
          }
-#line 3121 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 115:
-#line 888 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 888 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("unsigned");
          }
-#line 3129 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 116:
-#line 892 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 892 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_basic_type_new ("bool");
          }
-#line 3137 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 119:
-#line 898 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 898 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = gi_source_typedef_new ((yyvsp[0].str));
-               g_free ((yyvsp[0].str));
+               (yyval.ctype) = gi_source_typedef_new ((yyvsp[(1) - (1)].str));
+               g_free ((yyvsp[(1) - (1)].str));
          }
-#line 3146 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 120:
-#line 906 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 906 "giscanner/scannerparser.y"
     {
                GISourceSymbol *sym;
-               (yyval.ctype) = (yyvsp[-4].ctype);
-               (yyval.ctype)->name = (yyvsp[-3].str);
-               (yyval.ctype)->child_list = (yyvsp[-1].list);
+               (yyval.ctype) = (yyvsp[(1) - (5)].ctype);
+               (yyval.ctype)->name = (yyvsp[(2) - (5)].str);
+               (yyval.ctype)->child_list = (yyvsp[(4) - (5)].list);
 
                sym = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
                if ((yyval.ctype)->type == CTYPE_STRUCT) {
@@ -3166,724 +3406,724 @@ yyreduce:
                gi_source_scanner_add_symbol (scanner, sym);
                gi_source_symbol_unref (sym);
          }
-#line 3170 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 121:
-#line 926 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 926 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[-3].ctype);
-               (yyval.ctype)->child_list = (yyvsp[-1].list);
+               (yyval.ctype) = (yyvsp[(1) - (4)].ctype);
+               (yyval.ctype)->child_list = (yyvsp[(3) - (4)].list);
          }
-#line 3179 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 122:
-#line 931 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 931 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[-1].ctype);
-               (yyval.ctype)->name = (yyvsp[0].str);
+               (yyval.ctype) = (yyvsp[(1) - (2)].ctype);
+               (yyval.ctype)->name = (yyvsp[(2) - (2)].str);
          }
-#line 3188 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 123:
-#line 939 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 939 "giscanner/scannerparser.y"
     {
                 scanner->private = FALSE;
                (yyval.ctype) = gi_source_struct_new (NULL);
          }
-#line 3197 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 124:
-#line 944 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 944 "giscanner/scannerparser.y"
     {
                 scanner->private = FALSE;
                (yyval.ctype) = gi_source_union_new (NULL);
          }
-#line 3206 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 126:
-#line 953 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 953 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_concat ((yyvsp[-1].list), (yyvsp[0].list));
+               (yyval.list) = g_list_concat ((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list));
          }
-#line 3214 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 127:
-#line 960 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 960 "giscanner/scannerparser.y"
     {
            GList *l;
            (yyval.list) = NULL;
-           for (l = (yyvsp[-1].list); l != NULL; l = l->next)
+           for (l = (yyvsp[(2) - (3)].list); l != NULL; l = l->next)
              {
                GISourceSymbol *sym = l->data;
-               if ((yyvsp[-2].ctype)->storage_class_specifier & STORAGE_CLASS_TYPEDEF)
+               if ((yyvsp[(1) - (3)].ctype)->storage_class_specifier & STORAGE_CLASS_TYPEDEF)
                    sym->type = CSYMBOL_TYPE_TYPEDEF;
                else
                    sym->type = CSYMBOL_TYPE_MEMBER;
-               gi_source_symbol_merge_type (sym, gi_source_type_copy ((yyvsp[-2].ctype)));
+               gi_source_symbol_merge_type (sym, gi_source_type_copy ((yyvsp[(1) - (3)].ctype)));
                 sym->private = scanner->private;
                 (yyval.list) = g_list_append ((yyval.list), sym);
              }
-           ctype_free ((yyvsp[-2].ctype));
+           ctype_free ((yyvsp[(1) - (3)].ctype));
          }
-#line 3235 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 128:
-#line 980 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 980 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[-1].ctype);
-               (yyval.ctype)->base_type = (yyvsp[0].ctype);
+               (yyval.ctype) = (yyvsp[(1) - (2)].ctype);
+               (yyval.ctype)->base_type = (yyvsp[(2) - (2)].ctype);
          }
-#line 3244 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 130:
-#line 986 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 986 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = (yyvsp[0].ctype);
-               (yyval.ctype)->type_qualifier |= (yyvsp[-1].type_qualifier);
+               (yyval.ctype) = (yyvsp[(2) - (2)].ctype);
+               (yyval.ctype)->type_qualifier |= (yyvsp[(1) - (2)].type_qualifier);
          }
-#line 3253 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 131:
-#line 991 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 991 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_type_new (CTYPE_INVALID);
-               (yyval.ctype)->type_qualifier |= (yyvsp[0].type_qualifier);
+               (yyval.ctype)->type_qualifier |= (yyvsp[(1) - (1)].type_qualifier);
          }
-#line 3262 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 132:
-#line 999 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 999 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_append (NULL, (yyvsp[0].symbol));
+               (yyval.list) = g_list_append (NULL, (yyvsp[(1) - (1)].symbol));
          }
-#line 3270 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 133:
-#line 1003 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1003 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_append ((yyvsp[-2].list), (yyvsp[0].symbol));
+               (yyval.list) = g_list_append ((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].symbol));
          }
-#line 3278 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 134:
-#line 1010 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1010 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 3286 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 136:
-#line 1015 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1015 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
          }
-#line 3294 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 137:
-#line 1019 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1019 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-2].symbol);
-               if ((yyvsp[0].symbol)->const_int_set) {
+               (yyval.symbol) = (yyvsp[(1) - (3)].symbol);
+               if ((yyvsp[(3) - (3)].symbol)->const_int_set) {
                  (yyval.symbol)->const_int_set = TRUE;
-                 (yyval.symbol)->const_int = (yyvsp[0].symbol)->const_int;
+                 (yyval.symbol)->const_int = (yyvsp[(3) - (3)].symbol)->const_int;
                }
          }
-#line 3306 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 138:
-#line 1030 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1030 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = gi_source_enum_new ((yyvsp[-3].str));
-               (yyval.ctype)->child_list = (yyvsp[-1].list);
+               (yyval.ctype) = gi_source_enum_new ((yyvsp[(2) - (5)].str));
+               (yyval.ctype)->child_list = (yyvsp[(4) - (5)].list);
                (yyval.ctype)->is_bitfield = is_bitfield || scanner->flags;
                last_enum_value = -1;
          }
-#line 3317 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 139:
-#line 1037 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1037 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_enum_new (NULL);
-               (yyval.ctype)->child_list = (yyvsp[-1].list);
+               (yyval.ctype)->child_list = (yyvsp[(3) - (4)].list);
                (yyval.ctype)->is_bitfield = is_bitfield || scanner->flags;
                last_enum_value = -1;
          }
-#line 3328 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 140:
-#line 1044 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1044 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = gi_source_enum_new ((yyvsp[-4].str));
-               (yyval.ctype)->child_list = (yyvsp[-2].list);
+               (yyval.ctype) = gi_source_enum_new ((yyvsp[(2) - (6)].str));
+               (yyval.ctype)->child_list = (yyvsp[(4) - (6)].list);
                (yyval.ctype)->is_bitfield = is_bitfield || scanner->flags;
                last_enum_value = -1;
          }
-#line 3339 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 141:
-#line 1051 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1051 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_enum_new (NULL);
-               (yyval.ctype)->child_list = (yyvsp[-2].list);
+               (yyval.ctype)->child_list = (yyvsp[(3) - (5)].list);
                (yyval.ctype)->is_bitfield = is_bitfield || scanner->flags;
                last_enum_value = -1;
          }
-#line 3350 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 142:
-#line 1058 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1058 "giscanner/scannerparser.y"
     {
-               (yyval.ctype) = gi_source_enum_new ((yyvsp[0].str));
+               (yyval.ctype) = gi_source_enum_new ((yyvsp[(2) - (2)].str));
          }
-#line 3358 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 143:
-#line 1065 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1065 "giscanner/scannerparser.y"
     {
                 scanner->flags = FALSE;
                 scanner->private = FALSE;
           }
-#line 3367 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 144:
-#line 1073 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1073 "giscanner/scannerparser.y"
     {
                /* reset flag before the first enum value */
                is_bitfield = FALSE;
          }
-#line 3376 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 145:
-#line 1078 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1078 "giscanner/scannerparser.y"
     {
-            (yyvsp[0].symbol)->private = scanner->private;
-            (yyval.list) = g_list_append (NULL, (yyvsp[0].symbol));
+            (yyvsp[(2) - (2)].symbol)->private = scanner->private;
+            (yyval.list) = g_list_append (NULL, (yyvsp[(2) - (2)].symbol));
          }
-#line 3385 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 146:
-#line 1083 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1083 "giscanner/scannerparser.y"
     {
-            (yyvsp[0].symbol)->private = scanner->private;
-            (yyval.list) = g_list_append ((yyvsp[-2].list), (yyvsp[0].symbol));
+            (yyvsp[(3) - (3)].symbol)->private = scanner->private;
+            (yyval.list) = g_list_append ((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].symbol));
          }
-#line 3394 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 147:
-#line 1091 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1091 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_OBJECT, scanner->current_file, lineno);
-               (yyval.symbol)->ident = (yyvsp[0].str);
+               (yyval.symbol)->ident = (yyvsp[(1) - (1)].str);
                (yyval.symbol)->const_int_set = TRUE;
                (yyval.symbol)->const_int = ++last_enum_value;
                g_hash_table_insert (const_table, g_strdup ((yyval.symbol)->ident), gi_source_symbol_ref ((yyval.symbol)));
          }
-#line 3406 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 148:
-#line 1099 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1099 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_OBJECT, scanner->current_file, lineno);
-               (yyval.symbol)->ident = (yyvsp[-2].str);
+               (yyval.symbol)->ident = (yyvsp[(1) - (3)].str);
                (yyval.symbol)->const_int_set = TRUE;
-               (yyval.symbol)->const_int = (yyvsp[0].symbol)->const_int;
+               (yyval.symbol)->const_int = (yyvsp[(3) - (3)].symbol)->const_int;
                last_enum_value = (yyval.symbol)->const_int;
                g_hash_table_insert (const_table, g_strdup ((yyval.symbol)->ident), gi_source_symbol_ref ((yyval.symbol)));
          }
-#line 3419 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 149:
-#line 1111 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1111 "giscanner/scannerparser.y"
     {
                (yyval.type_qualifier) = TYPE_QUALIFIER_CONST;
          }
-#line 3427 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 150:
-#line 1115 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1115 "giscanner/scannerparser.y"
     {
                (yyval.type_qualifier) = TYPE_QUALIFIER_RESTRICT;
          }
-#line 3435 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 151:
-#line 1119 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1119 "giscanner/scannerparser.y"
     {
                (yyval.type_qualifier) = TYPE_QUALIFIER_EXTENSION;
          }
-#line 3443 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 152:
-#line 1123 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1123 "giscanner/scannerparser.y"
     {
                (yyval.type_qualifier) = TYPE_QUALIFIER_VOLATILE;
          }
-#line 3451 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 153:
-#line 1130 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1130 "giscanner/scannerparser.y"
     {
                (yyval.function_specifier) = FUNCTION_INLINE;
          }
-#line 3459 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 154:
-#line 1137 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1137 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[0].symbol);
-               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[-1].ctype));
+               (yyval.symbol) = (yyvsp[(2) - (2)].symbol);
+               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[(1) - (2)].ctype));
          }
-#line 3468 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 156:
-#line 1146 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1146 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
-               (yyval.symbol)->ident = (yyvsp[0].str);
+               (yyval.symbol)->ident = (yyvsp[(1) - (1)].str);
          }
-#line 3477 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 157:
-#line 1151 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1151 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-1].symbol);
+               (yyval.symbol) = (yyvsp[(2) - (3)].symbol);
          }
-#line 3485 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 158:
-#line 1155 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1155 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-3].symbol);
-               gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new ((yyvsp[-1].symbol)));
+               (yyval.symbol) = (yyvsp[(1) - (4)].symbol);
+               gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new ((yyvsp[(3) - (4)].symbol)));
          }
-#line 3494 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 159:
-#line 1160 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1160 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-2].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (3)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new (NULL));
          }
-#line 3503 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 160:
-#line 1165 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1165 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
                // ignore (void) parameter list
-               if ((yyvsp[-1].list) != NULL && ((yyvsp[-1].list)->next != NULL || ((GISourceSymbol *) (yyvsp[-1].list)->data)->base_type->type != CTYPE_VOID)) {
-                       func->child_list = (yyvsp[-1].list);
+               if ((yyvsp[(3) - (4)].list) != NULL && ((yyvsp[(3) - (4)].list)->next != NULL || ((GISourceSymbol *) (yyvsp[(3) - (4)].list)->data)->base_type->type != CTYPE_VOID)) {
+                       func->child_list = (yyvsp[(3) - (4)].list);
                }
-               (yyval.symbol) = (yyvsp[-3].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (4)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3517 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 161:
-#line 1175 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1175 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
-               func->child_list = (yyvsp[-1].list);
-               (yyval.symbol) = (yyvsp[-3].symbol);
+               func->child_list = (yyvsp[(3) - (4)].list);
+               (yyval.symbol) = (yyvsp[(1) - (4)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3528 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 162:
-#line 1182 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1182 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
-               (yyval.symbol) = (yyvsp[-2].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (3)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3538 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 163:
-#line 1191 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1191 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_pointer_new (NULL);
-               (yyval.ctype)->type_qualifier = (yyvsp[0].type_qualifier);
+               (yyval.ctype)->type_qualifier = (yyvsp[(2) - (2)].type_qualifier);
          }
-#line 3547 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 164:
-#line 1196 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1196 "giscanner/scannerparser.y"
     {
                (yyval.ctype) = gi_source_pointer_new (NULL);
          }
-#line 3555 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 165:
-#line 1200 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1200 "giscanner/scannerparser.y"
     {
-               GISourceType **base = &((yyvsp[0].ctype)->base_type);
+               GISourceType **base = &((yyvsp[(3) - (3)].ctype)->base_type);
 
                while (*base != NULL) {
                        base = &((*base)->base_type);
                }
                *base = gi_source_pointer_new (NULL);
-               (*base)->type_qualifier = (yyvsp[-1].type_qualifier);
-               (yyval.ctype) = (yyvsp[0].ctype);
+               (*base)->type_qualifier = (yyvsp[(2) - (3)].type_qualifier);
+               (yyval.ctype) = (yyvsp[(3) - (3)].ctype);
          }
-#line 3570 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 166:
-#line 1211 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1211 "giscanner/scannerparser.y"
     {
-               GISourceType **base = &((yyvsp[0].ctype)->base_type);
+               GISourceType **base = &((yyvsp[(2) - (2)].ctype)->base_type);
 
                while (*base != NULL) {
                        base = &((*base)->base_type);
                }
                *base = gi_source_pointer_new (NULL);
-               (yyval.ctype) = (yyvsp[0].ctype);
+               (yyval.ctype) = (yyvsp[(2) - (2)].ctype);
          }
-#line 3584 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 168:
-#line 1225 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1225 "giscanner/scannerparser.y"
     {
-               (yyval.type_qualifier) = (yyvsp[-1].type_qualifier) | (yyvsp[0].type_qualifier);
+               (yyval.type_qualifier) = (yyvsp[(1) - (2)].type_qualifier) | (yyvsp[(2) - (2)].type_qualifier);
          }
-#line 3592 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 169:
-#line 1232 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1232 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_append (NULL, (yyvsp[0].symbol));
+               (yyval.list) = g_list_append (NULL, (yyvsp[(1) - (1)].symbol));
          }
-#line 3600 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 170:
-#line 1236 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1236 "giscanner/scannerparser.y"
     {
-               (yyval.list) = g_list_append ((yyvsp[-2].list), (yyvsp[0].symbol));
+               (yyval.list) = g_list_append ((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].symbol));
          }
-#line 3608 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 171:
-#line 1243 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1243 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[0].symbol);
-               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[-1].ctype));
+               (yyval.symbol) = (yyvsp[(2) - (2)].symbol);
+               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[(1) - (2)].ctype));
          }
-#line 3617 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 172:
-#line 1248 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1248 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[0].symbol);
-               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[-1].ctype));
+               (yyval.symbol) = (yyvsp[(2) - (2)].symbol);
+               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[(1) - (2)].ctype));
          }
-#line 3626 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 173:
-#line 1253 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1253 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
-               (yyval.symbol)->base_type = (yyvsp[0].ctype);
+               (yyval.symbol)->base_type = (yyvsp[(1) - (1)].ctype);
          }
-#line 3635 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 174:
-#line 1258 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1258 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_ELLIPSIS, scanner->current_file, lineno);
          }
-#line 3643 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 175:
-#line 1265 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1265 "giscanner/scannerparser.y"
     {
                GISourceSymbol *sym = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
-               sym->ident = (yyvsp[0].str);
+               sym->ident = (yyvsp[(1) - (1)].str);
                (yyval.list) = g_list_append (NULL, sym);
          }
-#line 3653 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 176:
-#line 1271 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1271 "giscanner/scannerparser.y"
     {
                GISourceSymbol *sym = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
-               sym->ident = (yyvsp[0].str);
-               (yyval.list) = g_list_append ((yyvsp[-2].list), sym);
+               sym->ident = (yyvsp[(3) - (3)].str);
+               (yyval.list) = g_list_append ((yyvsp[(1) - (3)].list), sym);
          }
-#line 3663 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 179:
-#line 1285 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1285 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
-               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[0].ctype));
+               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[(1) - (1)].ctype));
          }
-#line 3672 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 181:
-#line 1291 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1291 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[0].symbol);
-               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[-1].ctype));
+               (yyval.symbol) = (yyvsp[(2) - (2)].symbol);
+               gi_source_symbol_merge_type ((yyval.symbol), (yyvsp[(1) - (2)].ctype));
          }
-#line 3681 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 182:
-#line 1299 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1299 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-1].symbol);
+               (yyval.symbol) = (yyvsp[(2) - (3)].symbol);
          }
-#line 3689 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 183:
-#line 1303 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1303 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
                gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new (NULL));
          }
-#line 3698 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 184:
-#line 1308 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1308 "giscanner/scannerparser.y"
     {
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
-               gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new ((yyvsp[-1].symbol)));
+               gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new ((yyvsp[(2) - (3)].symbol)));
          }
-#line 3707 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 185:
-#line 1313 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1313 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-2].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (3)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new (NULL));
          }
-#line 3716 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 186:
-#line 1318 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1318 "giscanner/scannerparser.y"
     {
-               (yyval.symbol) = (yyvsp[-3].symbol);
-               gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new ((yyvsp[-1].symbol)));
+               (yyval.symbol) = (yyvsp[(1) - (4)].symbol);
+               gi_source_symbol_merge_type ((yyval.symbol), gi_source_array_new ((yyvsp[(3) - (4)].symbol)));
          }
-#line 3725 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 187:
-#line 1323 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1323 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3735 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 188:
-#line 1329 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1329 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
                // ignore (void) parameter list
-               if ((yyvsp[-1].list) != NULL && ((yyvsp[-1].list)->next != NULL || ((GISourceSymbol *) (yyvsp[-1].list)->data)->base_type->type != CTYPE_VOID)) {
-                       func->child_list = (yyvsp[-1].list);
+               if ((yyvsp[(2) - (3)].list) != NULL && ((yyvsp[(2) - (3)].list)->next != NULL || ((GISourceSymbol *) (yyvsp[(2) - (3)].list)->data)->base_type->type != CTYPE_VOID)) {
+                       func->child_list = (yyvsp[(2) - (3)].list);
                }
                (yyval.symbol) = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, scanner->current_file, lineno);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3749 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 189:
-#line 1339 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1339 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
-               (yyval.symbol) = (yyvsp[-2].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (3)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3759 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 190:
-#line 1345 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1345 "giscanner/scannerparser.y"
     {
                GISourceType *func = gi_source_function_new ();
                // ignore (void) parameter list
-               if ((yyvsp[-1].list) != NULL && ((yyvsp[-1].list)->next != NULL || ((GISourceSymbol *) (yyvsp[-1].list)->data)->base_type->type != CTYPE_VOID)) {
-                       func->child_list = (yyvsp[-1].list);
+               if ((yyvsp[(3) - (4)].list) != NULL && ((yyvsp[(3) - (4)].list)->next != NULL || ((GISourceSymbol *) (yyvsp[(3) - (4)].list)->data)->base_type->type != CTYPE_VOID)) {
+                       func->child_list = (yyvsp[(3) - (4)].list);
                }
-               (yyval.symbol) = (yyvsp[-3].symbol);
+               (yyval.symbol) = (yyvsp[(1) - (4)].symbol);
                gi_source_symbol_merge_type ((yyval.symbol), func);
          }
-#line 3773 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 191:
-#line 1358 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1358 "giscanner/scannerparser.y"
     {
                (yyval.str) = g_strdup (yytext);
          }
-#line 3781 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 241:
-#line 1465 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1465 "giscanner/scannerparser.y"
     {
                (yyval.str) = g_strdup (yytext + strlen ("#define "));
          }
-#line 3789 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 242:
-#line 1472 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1472 "giscanner/scannerparser.y"
     {
                (yyval.str) = g_strdup (yytext + strlen ("#define "));
          }
-#line 3797 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 244:
-#line 1483 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1483 "giscanner/scannerparser.y"
     {
-               if ((yyvsp[0].symbol)->const_int_set || (yyvsp[0].symbol)->const_boolean_set || (yyvsp[0].symbol)->const_double_set || (yyvsp[0].symbol)->const_string != NULL) {
-                       (yyvsp[0].symbol)->ident = (yyvsp[-1].str);
-                       gi_source_scanner_add_symbol (scanner, (yyvsp[0].symbol));
-                       gi_source_symbol_unref ((yyvsp[0].symbol));
+               if ((yyvsp[(2) - (2)].symbol)->const_int_set || (yyvsp[(2) - (2)].symbol)->const_boolean_set || (yyvsp[(2) - (2)].symbol)->const_double_set || (yyvsp[(2) - (2)].symbol)->const_string != NULL) {
+                       (yyvsp[(2) - (2)].symbol)->ident = (yyvsp[(1) - (2)].str);
+                       gi_source_scanner_add_symbol (scanner, (yyvsp[(2) - (2)].symbol));
+                       gi_source_symbol_unref ((yyvsp[(2) - (2)].symbol));
                }
          }
-#line 3809 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 245:
-#line 1494 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1494 "giscanner/scannerparser.y"
     {
                push_conditional (scanner, FOR_GI_SCANNER);
                update_skipping (scanner);
          }
-#line 3818 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 246:
-#line 1499 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1499 "giscanner/scannerparser.y"
     {
                push_conditional (scanner, NOT_GI_SCANNER);
                update_skipping (scanner);
          }
-#line 3827 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 247:
-#line 1504 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1504 "giscanner/scannerparser.y"
     {
                warn_if_cond_has_gi_scanner (scanner, yytext);
                push_conditional (scanner, IRRELEVANT);
          }
-#line 3836 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 248:
-#line 1509 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1509 "giscanner/scannerparser.y"
     {
                warn_if_cond_has_gi_scanner (scanner, yytext);
                push_conditional (scanner, IRRELEVANT);
          }
-#line 3845 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 249:
-#line 1514 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1514 "giscanner/scannerparser.y"
     {
                warn_if_cond_has_gi_scanner (scanner, yytext);
                push_conditional (scanner, IRRELEVANT);
          }
-#line 3854 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 250:
-#line 1519 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1519 "giscanner/scannerparser.y"
     {
                warn_if_cond_has_gi_scanner (scanner, yytext);
                pop_conditional (scanner);
                push_conditional (scanner, IRRELEVANT);
                update_skipping (scanner);
          }
-#line 3865 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 251:
-#line 1526 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1526 "giscanner/scannerparser.y"
     {
                toggle_conditional (scanner);
                update_skipping (scanner);
          }
-#line 3874 "scannerparser.c" /* yacc.c:1646  */
     break;
 
   case 252:
-#line 1531 "giscanner/scannerparser.y" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 1531 "giscanner/scannerparser.y"
     {
                pop_conditional (scanner);
                update_skipping (scanner);
          }
-#line 3883 "scannerparser.c" /* yacc.c:1646  */
     break;
 
 
-#line 3887 "scannerparser.c" /* yacc.c:1646  */
+/* Line 1792 of yacc.c  */
+#line 4127 "scannerparser.c"
       default: break;
     }
   /* User semantic actions sometimes alter yychar, and that requires
@@ -3905,7 +4145,7 @@ yyreduce:
 
   *++yyvsp = yyval;
 
-  /* Now 'shift' the result of the reduction.  Determine what state
+  /* Now `shift' the result of the reduction.  Determine what state
      that goes to, based on the state we popped back to and the rule
      number reduced by.  */
 
@@ -3920,9 +4160,9 @@ yyreduce:
   goto yynewstate;
 
 
-/*--------------------------------------.
-| yyerrlab -- here on detecting error |
-`--------------------------------------*/
+/*------------------------------------.
+| yyerrlab -- here on detecting error |
+`------------------------------------*/
 yyerrlab:
   /* Make sure we have latest lookahead translation.  See comments at
      user semantic actions for why this is necessary.  */
@@ -3973,20 +4213,20 @@ yyerrlab:
   if (yyerrstatus == 3)
     {
       /* If just tried and failed to reuse lookahead token after an
-         error, discard it.  */
+        error, discard it.  */
 
       if (yychar <= YYEOF)
-        {
-          /* Return failure if at end of input.  */
-          if (yychar == YYEOF)
-            YYABORT;
-        }
+       {
+         /* Return failure if at end of input.  */
+         if (yychar == YYEOF)
+           YYABORT;
+       }
       else
-        {
-          yydestruct ("Error: discarding",
-                      yytoken, &yylval, scanner);
-          yychar = YYEMPTY;
-        }
+       {
+         yydestruct ("Error: discarding",
+                     yytoken, &yylval, scanner);
+         yychar = YYEMPTY;
+       }
     }
 
   /* Else will try to reuse lookahead token after shifting the error
@@ -4005,7 +4245,7 @@ yyerrorlab:
   if (/*CONSTCOND*/ 0)
      goto yyerrorlab;
 
-  /* Do not reclaim the symbols of the rule whose action triggered
+  /* Do not reclaim the symbols of the rule which action triggered
      this YYERROR.  */
   YYPOPSTACK (yylen);
   yylen = 0;
@@ -4018,29 +4258,29 @@ yyerrorlab:
 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
 `-------------------------------------------------------------*/
 yyerrlab1:
-  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
+  yyerrstatus = 3;     /* Each real token shifted decrements this.  */
 
   for (;;)
     {
       yyn = yypact[yystate];
       if (!yypact_value_is_default (yyn))
-        {
-          yyn += YYTERROR;
-          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
-            {
-              yyn = yytable[yyn];
-              if (0 < yyn)
-                break;
-            }
-        }
+       {
+         yyn += YYTERROR;
+         if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
+           {
+             yyn = yytable[yyn];
+             if (0 < yyn)
+               break;
+           }
+       }
 
       /* Pop the current state because it cannot handle the error token.  */
       if (yyssp == yyss)
-        YYABORT;
+       YYABORT;
 
 
       yydestruct ("Error: popping",
-                  yystos[yystate], yyvsp, scanner);
+                 yystos[yystate], yyvsp, scanner);
       YYPOPSTACK (1);
       yystate = *yyssp;
       YY_STACK_PRINT (yyss, yyssp);
@@ -4091,14 +4331,14 @@ yyreturn:
       yydestruct ("Cleanup: discarding lookahead",
                   yytoken, &yylval, scanner);
     }
-  /* Do not reclaim the symbols of the rule whose action triggered
+  /* Do not reclaim the symbols of the rule which action triggered
      this YYABORT or YYACCEPT.  */
   YYPOPSTACK (yylen);
   YY_STACK_PRINT (yyss, yyssp);
   while (yyssp != yyss)
     {
       yydestruct ("Cleanup: popping",
-                  yystos[*yyssp], yyvsp, scanner);
+                 yystos[*yyssp], yyvsp, scanner);
       YYPOPSTACK (1);
     }
 #ifndef yyoverflow
@@ -4109,9 +4349,13 @@ yyreturn:
   if (yymsg != yymsgbuf)
     YYSTACK_FREE (yymsg);
 #endif
-  return yyresult;
+  /* Make sure YYID is used.  */
+  return YYID (yyresult);
 }
-#line 1544 "giscanner/scannerparser.y" /* yacc.c:1906  */
+
+
+/* Line 2055 of yacc.c  */
+#line 1544 "giscanner/scannerparser.y"
 
 static void
 yyerror (GISourceScanner *scanner, const char *s)
index 798fcfd..bb4d360 100644 (file)
@@ -1,19 +1,19 @@
-/* A Bison parser, made by GNU Bison 3.0.2.  */
+/* A Bison parser, made by GNU Bison 2.7.  */
 
 /* Bison interface for Yacc-like parsers in C
-
-   Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
-
+   
+      Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
+   
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-
+   
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-
+   
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-
+   
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
 #ifndef YY_YY_SCANNERPARSER_H_INCLUDED
 # define YY_YY_SCANNERPARSER_H_INCLUDED
-/* Debug traces.  */
+/* Enabling traces.  */
 #ifndef YYDEBUG
 # define YYDEBUG 1
 #endif
 extern int yydebug;
 #endif
 
-/* Token type.  */
+/* Tokens.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
-  enum yytokentype
-  {
-    IDENTIFIER = 258,
-    TYPEDEF_NAME = 259,
-    INTEGER = 260,
-    FLOATING = 261,
-    BOOLEAN = 262,
-    CHARACTER = 263,
-    STRING = 264,
-    INTL_CONST = 265,
-    INTUL_CONST = 266,
-    ELLIPSIS = 267,
-    ADDEQ = 268,
-    SUBEQ = 269,
-    MULEQ = 270,
-    DIVEQ = 271,
-    MODEQ = 272,
-    XOREQ = 273,
-    ANDEQ = 274,
-    OREQ = 275,
-    SL = 276,
-    SR = 277,
-    SLEQ = 278,
-    SREQ = 279,
-    EQ = 280,
-    NOTEQ = 281,
-    LTEQ = 282,
-    GTEQ = 283,
-    ANDAND = 284,
-    OROR = 285,
-    PLUSPLUS = 286,
-    MINUSMINUS = 287,
-    ARROW = 288,
-    AUTO = 289,
-    BOOL = 290,
-    BREAK = 291,
-    CASE = 292,
-    CHAR = 293,
-    CONST = 294,
-    CONTINUE = 295,
-    DEFAULT = 296,
-    DO = 297,
-    DOUBLE = 298,
-    ELSE = 299,
-    ENUM = 300,
-    EXTENSION = 301,
-    EXTERN = 302,
-    FLOAT = 303,
-    FOR = 304,
-    GOTO = 305,
-    IF = 306,
-    INLINE = 307,
-    INT = 308,
-    LONG = 309,
-    REGISTER = 310,
-    RESTRICT = 311,
-    RETURN = 312,
-    SHORT = 313,
-    SIGNED = 314,
-    SIZEOF = 315,
-    STATIC = 316,
-    STRUCT = 317,
-    SWITCH = 318,
-    TYPEDEF = 319,
-    UNION = 320,
-    UNSIGNED = 321,
-    VOID = 322,
-    VOLATILE = 323,
-    WHILE = 324,
-    FUNCTION_MACRO = 325,
-    OBJECT_MACRO = 326,
-    IFDEF_GI_SCANNER = 327,
-    IFNDEF_GI_SCANNER = 328,
-    IFDEF_COND = 329,
-    IFNDEF_COND = 330,
-    IF_COND = 331,
-    ELIF_COND = 332,
-    ELSE_COND = 333,
-    ENDIF_COND = 334
-  };
+   /* Put the tokens into the symbol table, so that GDB and other debuggers
+      know about them.  */
+   enum yytokentype {
+     IDENTIFIER = 258,
+     TYPEDEF_NAME = 259,
+     INTEGER = 260,
+     FLOATING = 261,
+     BOOLEAN = 262,
+     CHARACTER = 263,
+     STRING = 264,
+     INTL_CONST = 265,
+     INTUL_CONST = 266,
+     ELLIPSIS = 267,
+     ADDEQ = 268,
+     SUBEQ = 269,
+     MULEQ = 270,
+     DIVEQ = 271,
+     MODEQ = 272,
+     XOREQ = 273,
+     ANDEQ = 274,
+     OREQ = 275,
+     SL = 276,
+     SR = 277,
+     SLEQ = 278,
+     SREQ = 279,
+     EQ = 280,
+     NOTEQ = 281,
+     LTEQ = 282,
+     GTEQ = 283,
+     ANDAND = 284,
+     OROR = 285,
+     PLUSPLUS = 286,
+     MINUSMINUS = 287,
+     ARROW = 288,
+     AUTO = 289,
+     BOOL = 290,
+     BREAK = 291,
+     CASE = 292,
+     CHAR = 293,
+     CONST = 294,
+     CONTINUE = 295,
+     DEFAULT = 296,
+     DO = 297,
+     DOUBLE = 298,
+     ELSE = 299,
+     ENUM = 300,
+     EXTENSION = 301,
+     EXTERN = 302,
+     FLOAT = 303,
+     FOR = 304,
+     GOTO = 305,
+     IF = 306,
+     INLINE = 307,
+     INT = 308,
+     LONG = 309,
+     REGISTER = 310,
+     RESTRICT = 311,
+     RETURN = 312,
+     SHORT = 313,
+     SIGNED = 314,
+     SIZEOF = 315,
+     STATIC = 316,
+     STRUCT = 317,
+     SWITCH = 318,
+     TYPEDEF = 319,
+     UNION = 320,
+     UNSIGNED = 321,
+     VOID = 322,
+     VOLATILE = 323,
+     WHILE = 324,
+     FUNCTION_MACRO = 325,
+     OBJECT_MACRO = 326,
+     IFDEF_GI_SCANNER = 327,
+     IFNDEF_GI_SCANNER = 328,
+     IFDEF_COND = 329,
+     IFNDEF_COND = 330,
+     IF_COND = 331,
+     ELIF_COND = 332,
+     ELSE_COND = 333,
+     ENDIF_COND = 334
+   };
 #endif
 /* Tokens.  */
 #define IDENTIFIER 258
@@ -203,12 +204,13 @@ extern int yydebug;
 #define ELSE_COND 333
 #define ENDIF_COND 334
 
-/* Value type.  */
+
+
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE YYSTYPE;
-union YYSTYPE
+typedef union YYSTYPE
 {
-#line 212 "giscanner/scannerparser.y" /* yacc.c:1909  */
+/* Line 2058 of yacc.c  */
+#line 212 "giscanner/scannerparser.y"
 
   char *str;
   GList *list;
@@ -219,15 +221,29 @@ union YYSTYPE
   FunctionSpecifier function_specifier;
   UnaryOperator unary_operator;
 
-#line 223 "scannerparser.h" /* yacc.c:1909  */
-};
+
+/* Line 2058 of yacc.c  */
+#line 227 "scannerparser.h"
+} YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 #endif
 
-
 extern YYSTYPE yylval;
 
+#ifdef YYPARSE_PARAM
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void *YYPARSE_PARAM);
+#else
+int yyparse ();
+#endif
+#else /* ! YYPARSE_PARAM */
+#if defined __STDC__ || defined __cplusplus
 int yyparse (GISourceScanner* scanner);
+#else
+int yyparse ();
+#endif
+#endif /* ! YYPARSE_PARAM */
 
 #endif /* !YY_YY_SCANNERPARSER_H_INCLUDED  */
index a1b80ef..f4ebe73 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #
 
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -96,6 +86,9 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/common.mk $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(top_srcdir)/build-aux/depcomp \
+       $(top_srcdir)/build-aux/test-driver
 subdir = tests
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
@@ -105,7 +98,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -405,9 +397,6 @@ TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
 DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/build-aux/depcomp \
-       $(top_srcdir)/build-aux/test-driver $(top_srcdir)/common.mk
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 am__relativize = \
   dir0=`pwd`; \
@@ -495,7 +484,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -693,6 +681,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign tests/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -701,7 +690,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/common.mk $(am__empty):
+$(top_srcdir)/common.mk:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -732,14 +721,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -904,7 +893,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -1233,8 +1222,6 @@ uninstall-am: uninstall-testsDATA
        mostlyclean-libtool pdf pdf-am ps ps-am recheck tags tags-am \
        uninstall uninstall-am uninstall-testsDATA
 
-.PRECIOUS: Makefile
-
 
 everything-stamp.h: Makefile
        $(AM_V_GEN) $(INTROSPECTION_SCANNER) $(INTROSPECTION_SCANNER_ARGS)      \
index e460469..102df88 100644 (file)
@@ -7,8 +7,6 @@
  * everything_nullfunc:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -18,11 +16,53 @@ everything_nullfunc (void)
 }
 
 /**
+ * everything_const_return_gpointer:
+ *
+ * Undocumented.
+ *
+ * Returns:  (transfer none)
+ */
+_GI_TEST_EXTERN
+gpointer
+everything_const_return_gpointer (void)
+{
+  return NULL;
+}
+
+/**
+ * everything_const_return_gintptr:
+ *
+ * Undocumented.
+ *
+ * Returns:  (transfer none)
+ */
+_GI_TEST_EXTERN
+gintptr
+everything_const_return_gintptr (void)
+{
+  return 0;
+}
+
+/**
+ * everything_const_return_guintptr:
+ *
+ * Undocumented.
+ *
+ * Returns:  (transfer none)
+ */
+_GI_TEST_EXTERN
+guintptr
+everything_const_return_guintptr (void)
+{
+  return 0;
+}
+
+/**
  * everything_const_return_gboolean:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gboolean
@@ -36,7 +76,7 @@ everything_const_return_gboolean (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint8
@@ -50,7 +90,7 @@ everything_const_return_gint8 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint8
@@ -64,7 +104,7 @@ everything_const_return_guint8 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint16
@@ -78,7 +118,7 @@ everything_const_return_gint16 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint16
@@ -92,7 +132,7 @@ everything_const_return_guint16 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint32
@@ -106,7 +146,7 @@ everything_const_return_gint32 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint32
@@ -120,7 +160,7 @@ everything_const_return_guint32 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint64
@@ -134,7 +174,7 @@ everything_const_return_gint64 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint64
@@ -148,7 +188,7 @@ everything_const_return_guint64 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gchar
@@ -162,7 +202,7 @@ everything_const_return_gchar (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gshort
@@ -176,7 +216,7 @@ everything_const_return_gshort (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gushort
@@ -190,7 +230,7 @@ everything_const_return_gushort (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint
@@ -204,7 +244,7 @@ everything_const_return_gint (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint
@@ -218,7 +258,7 @@ everything_const_return_guint (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 glong
@@ -232,7 +272,7 @@ everything_const_return_glong (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gulong
@@ -246,7 +286,7 @@ everything_const_return_gulong (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gsize
@@ -260,7 +300,7 @@ everything_const_return_gsize (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gssize
@@ -270,39 +310,11 @@ everything_const_return_gssize (void)
 }
 
 /**
- * everything_const_return_gintptr:
- *
- * Undocumented.
- *
- * Returns: (transfer none)
- */
-_GI_TEST_EXTERN
-gintptr
-everything_const_return_gintptr (void)
-{
-  return 0;
-}
-
-/**
- * everything_const_return_guintptr:
- *
- * Undocumented.
- *
- * Returns: (transfer none)
- */
-_GI_TEST_EXTERN
-guintptr
-everything_const_return_guintptr (void)
-{
-  return 0;
-}
-
-/**
  * everything_const_return_gfloat:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gfloat
@@ -316,7 +328,7 @@ everything_const_return_gfloat (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gdouble
@@ -330,7 +342,7 @@ everything_const_return_gdouble (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gunichar
@@ -344,7 +356,7 @@ everything_const_return_gunichar (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 GType
@@ -358,7 +370,7 @@ everything_const_return_GType (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns:  (transfer none)
  */
 _GI_TEST_EXTERN
 const gchar*
@@ -372,7 +384,7 @@ everything_const_return_utf8 (void)
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns:  (transfer none)
  */
 _GI_TEST_EXTERN
 const gchar*
@@ -382,12 +394,49 @@ everything_const_return_filename (void)
 }
 
 /**
- * everything_oneparam_gboolean:
- * @arg0: :
+ * everything_oneparam_gpointer:
+ * @arg0:
+ *
+ * Undocumented.
+ */
+_GI_TEST_EXTERN
+void
+everything_oneparam_gpointer (gpointer arg0)
+{
+  return;
+}
+
+/**
+ * everything_oneparam_gintptr:
+ * @arg0:
+ *
+ * Undocumented.
+ */
+_GI_TEST_EXTERN
+void
+everything_oneparam_gintptr (gintptr arg0)
+{
+  return;
+}
+
+/**
+ * everything_oneparam_guintptr:
+ * @arg0:
  *
  * Undocumented.
+ */
+_GI_TEST_EXTERN
+void
+everything_oneparam_guintptr (guintptr arg0)
+{
+  return;
+}
+
+/**
+ * everything_oneparam_gboolean:
+ * @arg0:
  *
- * Returns: (transfer none)
+ * Undocumented.
  */
 _GI_TEST_EXTERN
 void
@@ -398,11 +447,9 @@ everything_oneparam_gboolean (gboolean arg0)
 
 /**
  * everything_oneparam_gint8:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -413,11 +460,9 @@ everything_oneparam_gint8 (gint8 arg0)
 
 /**
  * everything_oneparam_guint8:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -428,11 +473,9 @@ everything_oneparam_guint8 (guint8 arg0)
 
 /**
  * everything_oneparam_gint16:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -443,11 +486,9 @@ everything_oneparam_gint16 (gint16 arg0)
 
 /**
  * everything_oneparam_guint16:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -458,11 +499,9 @@ everything_oneparam_guint16 (guint16 arg0)
 
 /**
  * everything_oneparam_gint32:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -473,11 +512,9 @@ everything_oneparam_gint32 (gint32 arg0)
 
 /**
  * everything_oneparam_guint32:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -488,11 +525,9 @@ everything_oneparam_guint32 (guint32 arg0)
 
 /**
  * everything_oneparam_gint64:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -503,11 +538,9 @@ everything_oneparam_gint64 (gint64 arg0)
 
 /**
  * everything_oneparam_guint64:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -518,11 +551,9 @@ everything_oneparam_guint64 (guint64 arg0)
 
 /**
  * everything_oneparam_gchar:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -533,11 +564,9 @@ everything_oneparam_gchar (gchar arg0)
 
 /**
  * everything_oneparam_gshort:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -548,11 +577,9 @@ everything_oneparam_gshort (gshort arg0)
 
 /**
  * everything_oneparam_gushort:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -563,11 +590,9 @@ everything_oneparam_gushort (gushort arg0)
 
 /**
  * everything_oneparam_gint:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -578,11 +603,9 @@ everything_oneparam_gint (gint arg0)
 
 /**
  * everything_oneparam_guint:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -593,11 +616,9 @@ everything_oneparam_guint (guint arg0)
 
 /**
  * everything_oneparam_glong:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -608,11 +629,9 @@ everything_oneparam_glong (glong arg0)
 
 /**
  * everything_oneparam_gulong:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -623,11 +642,9 @@ everything_oneparam_gulong (gulong arg0)
 
 /**
  * everything_oneparam_gsize:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -638,11 +655,9 @@ everything_oneparam_gsize (gsize arg0)
 
 /**
  * everything_oneparam_gssize:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -652,132 +667,130 @@ everything_oneparam_gssize (gssize arg0)
 }
 
 /**
- * everything_oneparam_gintptr:
- * @arg0: :
+ * everything_oneparam_gfloat:
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_gintptr (gintptr arg0)
+everything_oneparam_gfloat (gfloat arg0)
 {
   return;
 }
 
 /**
- * everything_oneparam_guintptr:
- * @arg0: :
+ * everything_oneparam_gdouble:
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_guintptr (guintptr arg0)
+everything_oneparam_gdouble (gdouble arg0)
 {
   return;
 }
 
 /**
- * everything_oneparam_gfloat:
- * @arg0: :
+ * everything_oneparam_gunichar:
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_gfloat (gfloat arg0)
+everything_oneparam_gunichar (gunichar arg0)
 {
   return;
 }
 
 /**
- * everything_oneparam_gdouble:
- * @arg0: :
+ * everything_oneparam_GType:
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_gdouble (gdouble arg0)
+everything_oneparam_GType (GType arg0)
 {
   return;
 }
 
 /**
- * everything_oneparam_gunichar:
- * @arg0: :
+ * everything_oneparam_utf8:
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_gunichar (gunichar arg0)
+everything_oneparam_utf8 (const gchar* arg0)
 {
   return;
 }
 
 /**
- * everything_oneparam_GType:
- * @arg0: :
+ * everything_oneparam_filename:
+ * @arg0:
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_GType (GType arg0)
+everything_oneparam_filename (const gchar* arg0)
 {
   return;
 }
 
 /**
- * everything_oneparam_utf8:
- * @arg0: :
+ * everything_one_outparam_gpointer:
+ * @arg0: (out)  (transfer none):
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_utf8 (const gchar* arg0)
+everything_one_outparam_gpointer (gpointer* arg0)
 {
+  *arg0 = 0;
   return;
 }
 
 /**
- * everything_oneparam_filename:
- * @arg0: :
+ * everything_one_outparam_gintptr:
+ * @arg0: (out)  (transfer none):
  *
  * Undocumented.
+ */
+_GI_TEST_EXTERN
+void
+everything_one_outparam_gintptr (gintptr* arg0)
+{
+  *arg0 = 0;
+  return;
+}
+
+/**
+ * everything_one_outparam_guintptr:
+ * @arg0: (out)  (transfer none):
  *
- * Returns: (transfer none)
+ * Undocumented.
  */
 _GI_TEST_EXTERN
 void
-everything_oneparam_filename (const gchar* arg0)
+everything_one_outparam_guintptr (guintptr* arg0)
 {
+  *arg0 = 0;
   return;
 }
 
 /**
  * everything_one_outparam_gboolean:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -789,11 +802,9 @@ everything_one_outparam_gboolean (gboolean* arg0)
 
 /**
  * everything_one_outparam_gint8:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -805,11 +816,9 @@ everything_one_outparam_gint8 (gint8* arg0)
 
 /**
  * everything_one_outparam_guint8:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -821,11 +830,9 @@ everything_one_outparam_guint8 (guint8* arg0)
 
 /**
  * everything_one_outparam_gint16:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -837,11 +844,9 @@ everything_one_outparam_gint16 (gint16* arg0)
 
 /**
  * everything_one_outparam_guint16:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -853,11 +858,9 @@ everything_one_outparam_guint16 (guint16* arg0)
 
 /**
  * everything_one_outparam_gint32:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -869,11 +872,9 @@ everything_one_outparam_gint32 (gint32* arg0)
 
 /**
  * everything_one_outparam_guint32:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -885,11 +886,9 @@ everything_one_outparam_guint32 (guint32* arg0)
 
 /**
  * everything_one_outparam_gint64:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -901,11 +900,9 @@ everything_one_outparam_gint64 (gint64* arg0)
 
 /**
  * everything_one_outparam_guint64:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -917,11 +914,9 @@ everything_one_outparam_guint64 (guint64* arg0)
 
 /**
  * everything_one_outparam_gchar:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -933,11 +928,9 @@ everything_one_outparam_gchar (gchar* arg0)
 
 /**
  * everything_one_outparam_gshort:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -949,11 +942,9 @@ everything_one_outparam_gshort (gshort* arg0)
 
 /**
  * everything_one_outparam_gushort:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -965,11 +956,9 @@ everything_one_outparam_gushort (gushort* arg0)
 
 /**
  * everything_one_outparam_gint:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -981,11 +970,9 @@ everything_one_outparam_gint (gint* arg0)
 
 /**
  * everything_one_outparam_guint:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -997,11 +984,9 @@ everything_one_outparam_guint (guint* arg0)
 
 /**
  * everything_one_outparam_glong:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -1013,11 +998,9 @@ everything_one_outparam_glong (glong* arg0)
 
 /**
  * everything_one_outparam_gulong:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -1029,11 +1012,9 @@ everything_one_outparam_gulong (gulong* arg0)
 
 /**
  * everything_one_outparam_gsize:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -1045,11 +1026,9 @@ everything_one_outparam_gsize (gsize* arg0)
 
 /**
  * everything_one_outparam_gssize:
- * @arg0: (out) (transfer none):
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
@@ -1060,140 +1039,141 @@ everything_one_outparam_gssize (gssize* arg0)
 }
 
 /**
- * everything_one_outparam_gintptr:
- * @arg0: (out) (transfer none):
+ * everything_one_outparam_gfloat:
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_one_outparam_gintptr (gintptr* arg0)
+everything_one_outparam_gfloat (gfloat* arg0)
 {
   *arg0 = 0;
   return;
 }
 
 /**
- * everything_one_outparam_guintptr:
- * @arg0: (out) (transfer none):
+ * everything_one_outparam_gdouble:
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_one_outparam_guintptr (guintptr* arg0)
+everything_one_outparam_gdouble (gdouble* arg0)
 {
   *arg0 = 0;
   return;
 }
 
 /**
- * everything_one_outparam_gfloat:
- * @arg0: (out) (transfer none):
+ * everything_one_outparam_gunichar:
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_one_outparam_gfloat (gfloat* arg0)
+everything_one_outparam_gunichar (gunichar* arg0)
 {
   *arg0 = 0;
   return;
 }
 
 /**
- * everything_one_outparam_gdouble:
- * @arg0: (out) (transfer none):
+ * everything_one_outparam_GType:
+ * @arg0: (out) :
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_one_outparam_gdouble (gdouble* arg0)
+everything_one_outparam_GType (GType* arg0)
 {
   *arg0 = 0;
   return;
 }
 
 /**
- * everything_one_outparam_gunichar:
- * @arg0: (out) (transfer none):
+ * everything_one_outparam_utf8:
+ * @arg0: (out)  (transfer none):
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_one_outparam_gunichar (gunichar* arg0)
+everything_one_outparam_utf8 (const gchar** arg0)
 {
   *arg0 = 0;
   return;
 }
 
 /**
- * everything_one_outparam_GType:
- * @arg0: (out) (transfer none):
+ * everything_one_outparam_filename:
+ * @arg0: (out)  (transfer none):
  *
  * Undocumented.
- *
- * Returns: (transfer none)
  */
 _GI_TEST_EXTERN
 void
-everything_one_outparam_GType (GType* arg0)
+everything_one_outparam_filename (const gchar** arg0)
 {
   *arg0 = 0;
   return;
 }
 
 /**
- * everything_one_outparam_utf8:
- * @arg0: (out) (transfer none):
+ * everything_passthrough_one_gpointer:
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns:  (transfer none)
  */
 _GI_TEST_EXTERN
-void
-everything_one_outparam_utf8 (const gchar** arg0)
+gpointer
+everything_passthrough_one_gpointer (gpointer arg0)
 {
-  *arg0 = 0;
-  return;
+  return arg0;
 }
 
 /**
- * everything_one_outparam_filename:
- * @arg0: (out) (transfer none):
+ * everything_passthrough_one_gintptr:
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns:  (transfer none)
  */
 _GI_TEST_EXTERN
-void
-everything_one_outparam_filename (const gchar** arg0)
+gintptr
+everything_passthrough_one_gintptr (gintptr arg0)
 {
-  *arg0 = 0;
-  return;
+  return arg0;
+}
+
+/**
+ * everything_passthrough_one_guintptr:
+ * @arg0:
+ *
+ * Undocumented.
+ *
+ * Returns:  (transfer none)
+ */
+_GI_TEST_EXTERN
+guintptr
+everything_passthrough_one_guintptr (guintptr arg0)
+{
+  return arg0;
 }
 
 /**
  * everything_passthrough_one_gboolean:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gboolean
@@ -1204,11 +1184,11 @@ everything_passthrough_one_gboolean (gboolean arg0)
 
 /**
  * everything_passthrough_one_gint8:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint8
@@ -1219,11 +1199,11 @@ everything_passthrough_one_gint8 (gint8 arg0)
 
 /**
  * everything_passthrough_one_guint8:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint8
@@ -1234,11 +1214,11 @@ everything_passthrough_one_guint8 (guint8 arg0)
 
 /**
  * everything_passthrough_one_gint16:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint16
@@ -1249,11 +1229,11 @@ everything_passthrough_one_gint16 (gint16 arg0)
 
 /**
  * everything_passthrough_one_guint16:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint16
@@ -1264,11 +1244,11 @@ everything_passthrough_one_guint16 (guint16 arg0)
 
 /**
  * everything_passthrough_one_gint32:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint32
@@ -1279,11 +1259,11 @@ everything_passthrough_one_gint32 (gint32 arg0)
 
 /**
  * everything_passthrough_one_guint32:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint32
@@ -1294,11 +1274,11 @@ everything_passthrough_one_guint32 (guint32 arg0)
 
 /**
  * everything_passthrough_one_gint64:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint64
@@ -1309,11 +1289,11 @@ everything_passthrough_one_gint64 (gint64 arg0)
 
 /**
  * everything_passthrough_one_guint64:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint64
@@ -1324,11 +1304,11 @@ everything_passthrough_one_guint64 (guint64 arg0)
 
 /**
  * everything_passthrough_one_gchar:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gchar
@@ -1339,11 +1319,11 @@ everything_passthrough_one_gchar (gchar arg0)
 
 /**
  * everything_passthrough_one_gshort:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gshort
@@ -1354,11 +1334,11 @@ everything_passthrough_one_gshort (gshort arg0)
 
 /**
  * everything_passthrough_one_gushort:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gushort
@@ -1369,11 +1349,11 @@ everything_passthrough_one_gushort (gushort arg0)
 
 /**
  * everything_passthrough_one_gint:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gint
@@ -1384,11 +1364,11 @@ everything_passthrough_one_gint (gint arg0)
 
 /**
  * everything_passthrough_one_guint:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 guint
@@ -1399,11 +1379,11 @@ everything_passthrough_one_guint (guint arg0)
 
 /**
  * everything_passthrough_one_glong:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 glong
@@ -1414,11 +1394,11 @@ everything_passthrough_one_glong (glong arg0)
 
 /**
  * everything_passthrough_one_gulong:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gulong
@@ -1429,11 +1409,11 @@ everything_passthrough_one_gulong (gulong arg0)
 
 /**
  * everything_passthrough_one_gsize:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gsize
@@ -1444,11 +1424,11 @@ everything_passthrough_one_gsize (gsize arg0)
 
 /**
  * everything_passthrough_one_gssize:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gssize
@@ -1458,42 +1438,12 @@ everything_passthrough_one_gssize (gssize arg0)
 }
 
 /**
- * everything_passthrough_one_gintptr:
- * @arg0: :
- *
- * Undocumented.
- *
- * Returns: (transfer none)
- */
-_GI_TEST_EXTERN
-gintptr
-everything_passthrough_one_gintptr (gintptr arg0)
-{
-  return arg0;
-}
-
-/**
- * everything_passthrough_one_guintptr:
- * @arg0: :
- *
- * Undocumented.
- *
- * Returns: (transfer none)
- */
-_GI_TEST_EXTERN
-guintptr
-everything_passthrough_one_guintptr (guintptr arg0)
-{
-  return arg0;
-}
-
-/**
  * everything_passthrough_one_gfloat:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gfloat
@@ -1504,11 +1454,11 @@ everything_passthrough_one_gfloat (gfloat arg0)
 
 /**
  * everything_passthrough_one_gdouble:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gdouble
@@ -1519,11 +1469,11 @@ everything_passthrough_one_gdouble (gdouble arg0)
 
 /**
  * everything_passthrough_one_gunichar:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 gunichar
@@ -1534,11 +1484,11 @@ everything_passthrough_one_gunichar (gunichar arg0)
 
 /**
  * everything_passthrough_one_GType:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns: 
  */
 _GI_TEST_EXTERN
 GType
@@ -1549,11 +1499,11 @@ everything_passthrough_one_GType (GType arg0)
 
 /**
  * everything_passthrough_one_utf8:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns:  (transfer none)
  */
 _GI_TEST_EXTERN
 const gchar*
@@ -1564,11 +1514,11 @@ everything_passthrough_one_utf8 (const gchar* arg0)
 
 /**
  * everything_passthrough_one_filename:
- * @arg0: :
+ * @arg0:
  *
  * Undocumented.
  *
- * Returns: (transfer none)
+ * Returns:  (transfer none)
  */
 _GI_TEST_EXTERN
 const gchar*
index 76beb92..69311de 100644 (file)
@@ -3409,7 +3409,7 @@ glong
 /**
  * gi_marshalling_tests_pointer_in_return:
  *
- * Returns: (transfer none): The same pointer
+ * Returns: The same pointer
  */
 gpointer
 gi_marshalling_tests_pointer_in_return (gpointer pointer)
index 3166dcb..b21a4ee 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #   CLEANFILES = $(dist_gir_DATA) $(typelib_DATA)
 #
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -135,6 +125,10 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/common.mk \
+       $(top_srcdir)/Makefile.introspection $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(top_srcdir)/build-aux/depcomp \
+       $(top_srcdir)/build-aux/test-driver
 EXTRA_PROGRAMS = gitestoffsets$(EXEEXT)
 TESTS = gitestoffsets$(EXEEXT)
 subdir = tests/offsets
@@ -146,7 +140,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -430,10 +423,6 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log)
 TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/Makefile.introspection \
-       $(top_srcdir)/build-aux/depcomp \
-       $(top_srcdir)/build-aux/test-driver $(top_srcdir)/common.mk
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -496,7 +485,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -737,6 +725,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/offsets/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign tests/offsets/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -745,7 +734,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/common.mk $(top_srcdir)/Makefile.introspection $(am__empty):
+$(top_srcdir)/common.mk $(top_srcdir)/Makefile.introspection:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -777,14 +766,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -902,7 +891,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -1193,8 +1182,6 @@ uninstall-am:
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        recheck tags tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Make sure the required variables are set, these should under normal
 # circumstances come from introspection.m4
index 7735106..94a2062 100755 (executable)
@@ -19,6 +19,8 @@
 # 02110-1301, USA.
 #
 
+from __future__ import print_function
+
 # The idea here is that we want to compare offset information two ways:
 #
 #  1) As generated by the compiler
@@ -34,7 +36,7 @@ import re
 import sys
 
 if len(sys.argv) != 2:
-    print >>sys.stderr, "Usage: gen-gitestoffsets INPUT > OUTPUT"
+    print("Usage: gen-gitestoffsets INPUT > OUTPUT", file=sys.stderr)
     sys.exit(1)
 
 # Helper function that we use to generate source. It does substitions
@@ -86,7 +88,7 @@ for m in STRUCT_DEF_RE.finditer(input):
             continue
         n = FIELD_RE.match(line)
         if not n:
-            print sys.stderr, "Can't parse structure line '%s'" % line
+            print("Can't parse structure line '%s'" % line, file=sys.stderr)
             sys.exit(1)
         fields.append(n.group(1))
 
index 3d2329f..65be262 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -92,6 +82,9 @@ EXTRA_PROGRAMS = gitestrepo$(EXEEXT) giteststructinfo$(EXEEXT) \
 TESTS = gitestrepo$(EXEEXT) giteststructinfo$(EXEEXT) \
        gitestthrows$(EXEEXT) gitypelibtest$(EXEEXT)
 subdir = tests/repository
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/build-aux/depcomp \
+       $(top_srcdir)/build-aux/test-driver
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
@@ -100,7 +93,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -393,9 +385,6 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log)
 TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/build-aux/depcomp \
-       $(top_srcdir)/build-aux/test-driver
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -458,7 +447,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -611,6 +599,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/repository/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign tests/repository/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -661,14 +650,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -821,7 +810,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -1130,8 +1119,6 @@ uninstall-am:
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        recheck tags tags-am uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index a477a85..0abd09f 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #
 
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -136,6 +126,10 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/common.mk \
+       $(top_srcdir)/Makefile.introspection $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(top_srcdir)/build-aux/depcomp \
+       $(top_srcdir)/build-aux/test-driver
 @HAVE_CAIRO_TRUE@am__append_1 = $(CAIRO_LIBS)
 @HAVE_CAIRO_FALSE@am__append_2 = -D_GI_DISABLE_CAIRO
 @HAVE_CAIRO_TRUE@am__append_3 = $(CAIRO_CFLAGS)
@@ -155,7 +149,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -506,10 +499,6 @@ TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
 DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/Makefile.introspection \
-       $(top_srcdir)/build-aux/depcomp \
-       $(top_srcdir)/build-aux/test-driver $(top_srcdir)/common.mk
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 am__relativize = \
   dir0=`pwd`; \
@@ -597,7 +586,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -934,6 +922,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/scanner/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign tests/scanner/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -942,7 +931,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/common.mk $(top_srcdir)/Makefile.introspection $(am__empty):
+$(top_srcdir)/common.mk $(top_srcdir)/Makefile.introspection:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -1001,14 +990,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -1257,7 +1246,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -1743,8 +1732,6 @@ uninstall-am: uninstall-testsDATA
        mostlyclean-libtool pdf pdf-am ps ps-am recheck tags tags-am \
        uninstall uninstall-am uninstall-testsDATA
 
-.PRECIOUS: Makefile
-
 NULL ?=
 
 # Make sure the required variables are set, these should under normal
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestNoPtrCallback.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestNoPtrCallback.page
new file mode 100644 (file)
index 0000000..02140c2
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<page id="Regress.TestNoPtrCallback"
+      type="topic"
+      style="callback"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="callback" type="guide"/>
+    </info>
+  <title>Regress.TestNoPtrCallback</title>
+  <synopsis><code mime="text/x-csrc">
+void TestNoPtrCallback (void);
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.get_variant.page b/tests/scanner/Regress-1.0-C-expected/Regress.get_variant.page
new file mode 100644 (file)
index 0000000..239c750
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<page id="Regress.get_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>GVariant*</api:type>
+      </api:returns>
+      <api:name>regress_get_variant</api:name>
+    </api:function>
+  </info>
+  <title>regress_get_variant</title>
+  <synopsis><code mime="text/x-csrc">
+GVariant* regress_get_variant (void);
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+  <p>A new variant</p>
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_noptr_callback.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_noptr_callback.page
new file mode 100644 (file)
index 0000000..c760265
--- /dev/null
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<page id="Regress.test_noptr_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_noptr_callback</api:name>
+      <api:arg>
+        <api:type>RegressTestNoPtrCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+  </info>
+  <title>regress_test_noptr_callback</title>
+  <synopsis><code mime="text/x-csrc">
+void regress_test_noptr_callback (RegressTestNoPtrCallback callback);
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>callback</code></title>
+
+</item>
+<item>
+<title><code>Returns</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_return_allow_none.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_return_allow_none.page
new file mode 100644 (file)
index 0000000..f39dcf2
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<page id="Regress.test_return_allow_none"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_test_return_allow_none</api:name>
+    </api:function>
+  </info>
+  <title>regress_test_return_allow_none</title>
+  <synopsis><code mime="text/x-csrc">
+char* regress_test_return_allow_none (void);
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_return_nullable.page b/tests/scanner/Regress-1.0-C-expected/Regress.test_return_nullable.page
new file mode 100644 (file)
index 0000000..098f8d4
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<page id="Regress.test_return_nullable"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>char*</api:type>
+      </api:returns>
+      <api:name>regress_test_return_nullable</api:name>
+    </api:function>
+  </info>
+  <title>regress_test_return_nullable</title>
+  <synopsis><code mime="text/x-csrc">
+char* regress_test_return_nullable (void);
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestNoPtrCallback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestNoPtrCallback.page
new file mode 100644 (file)
index 0000000..7dd66f4
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<page id="Regress.TestNoPtrCallback"
+      type="topic"
+      style="callback"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="callback" type="guide"/>
+  </info>
+  <title>Regress.TestNoPtrCallback</title>
+  <synopsis><code mime="text/x-gjs">
+function onTestNoPtrCallback(): void {
+}
+  </code></synopsis>
+
+
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.get_variant.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.get_variant.page
new file mode 100644 (file)
index 0000000..47e3ff0
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.get_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_get_variant</api:name>
+    </api:function>
+  </info>
+  <title>Regress.get_variant</title>
+  <synopsis><code mime="text/x-gjs">
+function get_variant(): <link href="../GLib-2.0/GLib.Variant.html">GLib.Variant</link> {
+    // Gjs wrapper for regress_get_variant()
+}
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+  <p>A new variant</p>
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_noptr_callback.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_noptr_callback.page
new file mode 100644 (file)
index 0000000..a7cec65
--- /dev/null
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<page id="Regress.test_noptr_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>void</api:type>
+      </api:returns>
+      <api:name>regress_test_noptr_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestNoPtrCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+  </info>
+  <title>Regress.test_noptr_callback</title>
+  <synopsis><code mime="text/x-gjs">
+function test_noptr_callback(callback: <link xref="Regress.TestNoPtrCallback">Regress.TestNoPtrCallback</link>): void {
+    // Gjs wrapper for regress_test_noptr_callback()
+}
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>callback</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_return_allow_none.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_return_allow_none.page
new file mode 100644 (file)
index 0000000..c682230
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.test_return_allow_none"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_return_allow_none</api:name>
+    </api:function>
+  </info>
+  <title>Regress.test_return_allow_none</title>
+  <synopsis><code mime="text/x-gjs">
+function test_return_allow_none(): String {
+    // Gjs wrapper for regress_test_return_allow_none()
+}
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_return_nullable.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_return_nullable.page
new file mode 100644 (file)
index 0000000..e6f2a3c
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.test_return_nullable"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>String</api:type>
+      </api:returns>
+      <api:name>regress_test_return_nullable</api:name>
+    </api:function>
+  </info>
+  <title>Regress.test_return_nullable</title>
+  <synopsis><code mime="text/x-gjs">
+function test_return_nullable(): String {
+    // Gjs wrapper for regress_test_return_nullable()
+}
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestNoPtrCallback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestNoPtrCallback.page
new file mode 100644 (file)
index 0000000..b7f04f5
--- /dev/null
@@ -0,0 +1,21 @@
+<?xml version="1.0"?>
+<page id="Regress.TestNoPtrCallback"
+      type="topic"
+      style="callback"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="callback" type="guide"/>
+  </info>
+  <title>Regress.TestNoPtrCallback</title>
+  <synopsis><code mime="text/x-python">
+@returns(none)
+def on_TestNoPtrCallback():
+  </code></synopsis>
+
+
+<terms>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.get_variant.page b/tests/scanner/Regress-1.0-Python-expected/Regress.get_variant.page
new file mode 100644 (file)
index 0000000..a6e410d
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.get_variant"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>GLib.Variant</api:type>
+      </api:returns>
+      <api:name>regress_get_variant</api:name>
+    </api:function>
+  </info>
+  <title>Regress.get_variant</title>
+  <synopsis><code mime="text/x-python">
+@returns(GLib.Variant)
+def get_variant():
+    # Python wrapper for regress_get_variant()
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+{formatter.format(node, node.retval.doc)}
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_noptr_callback.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_noptr_callback.page
new file mode 100644 (file)
index 0000000..e376446
--- /dev/null
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<page id="Regress.test_noptr_callback"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>none</api:type>
+      </api:returns>
+      <api:name>regress_test_noptr_callback</api:name>
+      <api:arg>
+        <api:type>Regress.TestNoPtrCallback</api:type>
+        <api:name>callback</api:name>
+      </api:arg>
+    </api:function>
+  </info>
+  <title>Regress.test_noptr_callback</title>
+  <synopsis><code mime="text/x-python">
+@accepts(Regress.TestNoPtrCallback)
+@returns(none)
+def test_noptr_callback(callback):
+    # Python wrapper for regress_test_noptr_callback()
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>callback</code></title>
+
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_return_allow_none.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_return_allow_none.page
new file mode 100644 (file)
index 0000000..708af8f
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.test_return_allow_none"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_return_allow_none</api:name>
+    </api:function>
+  </info>
+  <title>Regress.test_return_allow_none</title>
+  <synopsis><code mime="text/x-python">
+@returns(unicode)
+def test_return_allow_none():
+    # Python wrapper for regress_test_return_allow_none()
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+{formatter.format(node, node.retval.doc)}
+</item>
+</terms>
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_return_nullable.page b/tests/scanner/Regress-1.0-Python-expected/Regress.test_return_nullable.page
new file mode 100644 (file)
index 0000000..cda2b1d
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<page id="Regress.test_return_nullable"
+      type="topic"
+      style="function"
+      xmlns="http://projectmallard.org/1.0/"
+      xmlns:api="http://projectmallard.org/experimental/api/"
+      xmlns:ui="http://projectmallard.org/1.0/ui/">
+  <info>
+    <link xref="index" group="function" type="guide"/>
+    <api:function>
+      <api:returns>
+        <api:type>unicode</api:type>
+      </api:returns>
+      <api:name>regress_test_return_nullable</api:name>
+    </api:function>
+  </info>
+  <title>Regress.test_return_nullable</title>
+  <synopsis><code mime="text/x-python">
+@returns(unicode)
+def test_return_nullable():
+    # Python wrapper for regress_test_return_nullable()
+  </code></synopsis>
+
+
+<terms>
+<item>
+<title><code>Returns</code></title>
+{formatter.format(node, node.retval.doc)}
+</item>
+</terms>
+
+</page>
index aeb3fdb..6f991b7 100644 (file)
@@ -136,7 +136,11 @@ and/or use gtk-doc annotations.  -->
         <parameter name="item" transfer-ownership="none">
           <type name="utf8" c:type="const char*"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none" closure="2">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1"
+                   closure="2">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -166,7 +170,11 @@ and/or use gtk-doc annotations.  -->
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
-        <parameter name="data" transfer-ownership="none" closure="0">
+        <parameter name="data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1"
+                   closure="0">
           <doc xml:space="preserve">The user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
@@ -376,7 +384,10 @@ are zero-terminated</doc>
             <type name="AnnotationForeachFunc"
                   c:type="RegressAnnotationForeachFunc"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <doc xml:space="preserve">Callback user data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
@@ -724,7 +735,10 @@ regress_annotation_object_watch_full().</doc>
             <type name="AnnotationForeachFunc"
                   c:type="RegressAnnotationForeachFunc"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <doc xml:space="preserve">The callback data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
@@ -751,7 +765,10 @@ regress_annotation_object_watch_full().</doc>
             <type name="AnnotationForeachFunc"
                   c:type="RegressAnnotationForeachFunc"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <doc xml:space="preserve">The callback data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
@@ -770,7 +787,10 @@ regress_annotation_object_watch_full().</doc>
           <instance-parameter name="object" transfer-ownership="none">
             <type name="AnnotationObject" c:type="RegressAnnotationObject*"/>
           </instance-parameter>
-          <parameter name="data" transfer-ownership="none">
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <doc xml:space="preserve">Opaque pointer handle</doc>
             <type name="gpointer" c:type="void*"/>
           </parameter>
@@ -831,7 +851,10 @@ of tabs and strings to test the tab handling capabilities of the scanner.</doc>
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
-          <parameter name="arg1" transfer-ownership="none">
+          <parameter name="arg1"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -1051,7 +1074,10 @@ it says it's pointer but it's actually a string.</doc>
         <parameter name="b" transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
-        <parameter name="data" transfer-ownership="none">
+        <parameter name="data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -1461,7 +1487,7 @@ uses a C sugar return type.</doc>
               c:identifier="regress_foo_object_new_cookie"
               introspectable="0">
         <doc xml:space="preserve">Not sure why this test is here...</doc>
-        <return-value>
+        <return-value transfer-ownership="none">
           <type name="FooObjectCookie" c:type="RegressFooObjectCookie"/>
         </return-value>
         <parameters>
@@ -1533,7 +1559,10 @@ uses a C sugar return type.</doc>
           <instance-parameter name="object" transfer-ownership="none">
             <type name="FooObject" c:type="RegressFooObject*"/>
           </instance-parameter>
-          <parameter name="data" transfer-ownership="none">
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="void*"/>
           </parameter>
           <parameter name="some_type" transfer-ownership="none">
@@ -1582,7 +1611,10 @@ uses a C sugar return type.</doc>
           <parameter name="object" transfer-ownership="none">
             <type name="GObject.Object"/>
           </parameter>
-          <parameter name="p0" transfer-ownership="none">
+          <parameter name="p0"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -1797,7 +1829,11 @@ exposed to language bindings.</doc>
                      closure="1">
             <type name="GObject.Callback" c:type="GCallback"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none" closure="1">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1"
+                     closure="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -1826,7 +1862,10 @@ exposed to language bindings.</doc>
                      closure="1">
             <type name="GObject.Callback" c:type="GCallback"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -1882,7 +1921,11 @@ exposed to language bindings.</doc>
                        closure="2">
               <type name="GObject.Callback" c:type="GCallback"/>
             </parameter>
-            <parameter name="user_data" transfer-ownership="none" closure="2">
+            <parameter name="user_data"
+                       transfer-ownership="none"
+                       nullable="1"
+                       allow-none="1"
+                       closure="2">
               <type name="gpointer" c:type="gpointer"/>
             </parameter>
           </parameters>
@@ -2402,7 +2445,11 @@ use it should be.</doc>
         <type name="gint" c:type="int"/>
       </return-value>
       <parameters>
-        <parameter name="user_data" transfer-ownership="none" closure="0">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1"
+                   closure="0">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -2836,6 +2883,11 @@ use it should be.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
     </record>
+    <callback name="TestNoPtrCallback" c:type="RegressTestNoPtrCallback">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </callback>
     <class name="TestObj"
            c:symbol-prefix="test_obj"
            c:type="RegressTestObj"
@@ -2873,7 +2925,10 @@ use it should be.</doc>
             <type name="TestCallbackUserData"
                   c:type="RegressTestCallbackUserData"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
@@ -4251,7 +4306,10 @@ detection, and fixing it via annotations.</doc>
           <type name="AnnotationNotifyFunc"
                 c:type="RegressAnnotationNotifyFunc"/>
         </parameter>
-        <parameter name="data" transfer-ownership="none">
+        <parameter name="data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -4445,7 +4503,10 @@ detection, and fixing it via annotations.</doc>
                    closure="2">
           <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -4463,7 +4524,10 @@ detection, and fixing it via annotations.</doc>
                    destroy="2">
           <type name="FooCallback" c:type="RegressFooCallback"/>
         </parameter>
-        <parameter name="data" transfer-ownership="none">
+        <parameter name="data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="destroy" transfer-ownership="none" scope="async">
@@ -4776,6 +4840,12 @@ exposed to language bindings.</doc>
         </parameter>
       </parameters>
     </function>
+    <function name="get_variant" c:identifier="regress_get_variant">
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve">A new variant</doc>
+        <type name="GLib.Variant" c:type="GVariant*"/>
+      </return-value>
+    </function>
     <function name="global_get_flags_out"
               c:identifier="regress_global_get_flags_out">
       <return-value transfer-ownership="none">
@@ -5328,7 +5398,10 @@ libgnome-keyring.</doc>
           <type name="TestCallbackUserData"
                 c:type="RegressTestCallbackUserData"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -5349,7 +5422,10 @@ is invoked.</doc>
           <type name="TestCallbackUserData"
                 c:type="RegressTestCallbackUserData"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="notify" transfer-ownership="none" scope="async">
@@ -5710,7 +5786,7 @@ element-type annotation.</doc>
     </function>
     <function name="test_ghash_null_return"
               c:identifier="regress_test_ghash_null_return">
-      <return-value transfer-ownership="none">
+      <return-value transfer-ownership="none" nullable="1">
         <type name="GLib.HashTable" c:type="const GHashTable*">
           <type name="utf8"/>
           <type name="utf8"/>
@@ -6153,6 +6229,21 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d
         </parameter>
       </parameters>
     </function>
+    <function name="test_noptr_callback"
+              c:identifier="regress_test_noptr_callback">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="callback"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1"
+                   scope="call">
+          <type name="TestNoPtrCallback" c:type="RegressTestNoPtrCallback"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="test_null_gerror_callback"
               c:identifier="regress_test_null_gerror_callback">
       <return-value transfer-ownership="none">
@@ -6176,6 +6267,18 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d
         </parameter>
       </parameters>
     </function>
+    <function name="test_return_allow_none"
+              c:identifier="regress_test_return_allow_none">
+      <return-value transfer-ownership="full" nullable="1">
+        <type name="utf8" c:type="char*"/>
+      </return-value>
+    </function>
+    <function name="test_return_nullable"
+              c:identifier="regress_test_return_nullable">
+      <return-value transfer-ownership="full" nullable="1">
+        <type name="utf8" c:type="char*"/>
+      </return-value>
+    </function>
     <function name="test_short" c:identifier="regress_test_short">
       <return-value transfer-ownership="none">
         <type name="gshort" c:type="gshort"/>
@@ -6417,7 +6520,10 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc>
           <type name="TestCallbackUserData"
                 c:type="RegressTestCallbackUserData"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="notify" transfer-ownership="none" scope="async">
index 665c7be..e0f9a1b 100644 (file)
@@ -47,6 +47,7 @@ regress_foo_test_varargs_callback2
 regress_foo_test_varargs_callback3
 regress_func_obj_null_in
 regress_func_obj_nullable_in
+regress_get_variant
 regress_global_get_flags_out
 regress_has_parameter_named_attrs
 regress_introspectable_via_alias
@@ -154,8 +155,11 @@ regress_test_multi_callback
 regress_test_multi_double_args
 regress_test_multiline_doc_comments
 regress_test_nested_parameter
+regress_test_noptr_callback
 regress_test_null_gerror_callback
 regress_test_owned_gerror_callback
+regress_test_return_allow_none
+regress_test_return_nullable
 regress_test_short
 regress_test_simple_boxed_a_const_return
 regress_test_simple_callback
index 0bd3829..7eea9f7 100644 (file)
@@ -55,7 +55,11 @@ and/or use gtk-doc annotations.  -->
         <parameter name="path" transfer-ownership="none">
           <type name="utf8" c:type="const char*"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none" closure="1">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1"
+                   closure="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -93,7 +97,10 @@ and/or use gtk-doc annotations.  -->
                      destroy="3">
             <type name="FileFunc" c:type="UtilityFileFunc"/>
           </parameter>
-          <parameter name="user_data" transfer-ownership="none">
+          <parameter name="user_data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy" transfer-ownership="none" scope="async">
@@ -169,7 +176,10 @@ and/or use gtk-doc annotations.  -->
                    closure="2">
           <type name="FileFunc" c:type="UtilityFileFunc"/>
         </parameter>
-        <parameter name="user_data" transfer-ownership="none">
+        <parameter name="user_data"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
index 47e3666..007ec86 100644 (file)
@@ -33,7 +33,10 @@ and/or use gtk-doc annotations.  -->
             <doc xml:space="preserve">x parameter</doc>
             <type name="gint" c:type="int"/>
           </parameter>
-          <parameter name="y" transfer-ownership="none">
+          <parameter name="y"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <doc xml:space="preserve">y parameter</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
@@ -50,7 +53,10 @@ and/or use gtk-doc annotations.  -->
           <parameter name="arg1" transfer-ownership="none">
             <type name="gint" c:type="int"/>
           </parameter>
-          <parameter name="arg2" transfer-ownership="none">
+          <parameter name="arg2"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -68,7 +74,10 @@ and/or use gtk-doc annotations.  -->
           <parameter name="arg1" transfer-ownership="none">
             <type name="gint" c:type="int"/>
           </parameter>
-          <parameter name="arg2" transfer-ownership="none">
+          <parameter name="arg2"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -84,7 +93,10 @@ and/or use gtk-doc annotations.  -->
           <parameter name="arg1" transfer-ownership="none">
             <type name="gint" c:type="int"/>
           </parameter>
-          <parameter name="arg2" transfer-ownership="none">
+          <parameter name="arg2"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -108,7 +120,10 @@ and/or use gtk-doc annotations.  -->
             <parameter name="arg1" transfer-ownership="none">
               <type name="gint" c:type="int"/>
             </parameter>
-            <parameter name="arg2" transfer-ownership="none">
+            <parameter name="arg2"
+                       transfer-ownership="none"
+                       nullable="1"
+                       allow-none="1">
               <type name="gpointer" c:type="gpointer"/>
             </parameter>
           </parameters>
@@ -128,7 +143,10 @@ and/or use gtk-doc annotations.  -->
               <doc xml:space="preserve">x parameter</doc>
               <type name="gint" c:type="int"/>
             </parameter>
-            <parameter name="y" transfer-ownership="none">
+            <parameter name="y"
+                       transfer-ownership="none"
+                       nullable="1"
+                       allow-none="1">
               <doc xml:space="preserve">y parameter</doc>
               <type name="gpointer" c:type="gpointer"/>
             </parameter>
index 37676ce..c00f109 100644 (file)
@@ -24,6 +24,7 @@ EXTRA_DIST = \
        gi/annotation_in.xml                    \
        gi/annotation_in_out.xml                \
        gi/annotation_method.xml                \
+       gi/annotation_not_nullable.xml          \
        gi/annotation_out.xml                   \
        gi/annotation_ref_func.xml              \
        gi/annotation_rename_to.xml             \
index 909d707..865c6ea 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # module itself.
 #
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -95,6 +85,9 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/common.mk $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(top_srcdir)/build-aux/test-driver \
+       README
 subdir = tests/scanner/annotationparser
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
@@ -104,7 +97,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -333,9 +325,6 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log)
 TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/build-aux/test-driver $(top_srcdir)/common.mk \
-       README
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -398,7 +387,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -582,6 +570,7 @@ EXTRA_DIST = \
        gi/annotation_in.xml                    \
        gi/annotation_in_out.xml                \
        gi/annotation_method.xml                \
+       gi/annotation_not_nullable.xml          \
        gi/annotation_out.xml                   \
        gi/annotation_ref_func.xml              \
        gi/annotation_rename_to.xml             \
@@ -641,6 +630,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/scanner/annotationparser/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign tests/scanner/annotationparser/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -649,7 +639,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/common.mk $(am__empty):
+$(top_srcdir)/common.mk:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -702,7 +692,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -991,8 +981,6 @@ uninstall-am:
        mostlyclean-libtool pdf pdf-am ps ps-am recheck tags-am \
        uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/scanner/annotationparser/gi/annotation_not_nullable.xml b/tests/scanner/annotationparser/gi/annotation_not_nullable.xml
new file mode 100644 (file)
index 0000000..d63ec94
--- /dev/null
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<tests xmlns="http://schemas.gnome.org/gobject-introspection/2013/test">
+
+<test>
+  <input>/**
+ * annotation_object_not_nullable:
+ * @object: a #GObject
+ * @closurearg: (closure) (not nullable): This is an argument test
+ *
+ * This is a test for not-nullable arguments which would otherwise be nullable
+ * by convention.
+ *
+ * Return value: (not nullable): a pointer
+ */</input>
+  <parser>
+    <docblock>
+      <identifier>
+        <name>annotation_object_not_nullable</name>
+      </identifier>
+      <parameters>
+        <parameter>
+          <name>object</name>
+          <description>a #GObject</description>
+        </parameter>
+        <parameter>
+          <name>closurearg</name>
+          <annotations>
+            <annotation>
+              <name>closure</name>
+            </annotation>
+            <annotation>
+              <name>not</name>
+              <options>
+                <option>
+                  <name>nullable</name>
+                </option>
+              </options>
+            </annotation>
+          </annotations>
+          <description>This is an argument test</description>
+        </parameter>
+      </parameters>
+      <description>This is a test for not-nullable arguments which would otherwise be nullable
+by convention.</description>
+      <tags>
+        <tag>
+          <name>returns</name>
+          <annotations>
+            <annotation>
+              <name>not</name>
+              <options>
+                <option>
+                  <name>nullable</name>
+                </option>
+              </options>
+            </annotation>
+          </annotations>
+          <description>a pointer</description>
+        </tag>
+      </tags>
+    </docblock>
+  </parser>
+  <output>/**
+ * annotation_object_not_nullable:
+ * @object: a #GObject
+ * @closurearg: (closure) (not nullable): This is an argument test
+ *
+ * This is a test for not-nullable arguments which would otherwise be nullable
+ * by convention.
+ *
+ * Returns: (not nullable): a pointer
+ */</output>
+</test>
+
+</tests>
index 99c5da7..b676a50 100644 (file)
@@ -25,9 +25,14 @@ test_parser.py
 Tests ensuring annotationparser.py continues to function correctly.
 '''
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 import difflib
 import os
+import sys
 import subprocess
 import unittest
 import xml.etree.ElementTree as etree
@@ -36,6 +41,11 @@ from giscanner.annotationparser import GtkDocCommentBlockParser, GtkDocCommentBl
 from giscanner.ast import Namespace
 from giscanner.message import MessageLogger, WARNING, ERROR, FATAL
 
+if sys.version_info.major < 3:
+    encode_name = lambda s: s.encode('ascii')
+else:
+    encode_name = lambda s: s
+
 
 XML_NS = 'http://schemas.gnome.org/gobject-introspection/2013/test'
 XML_SCHEMA = os.path.abspath(os.path.join(os.path.dirname(__file__), 'tests.xsd'))
@@ -396,7 +406,7 @@ def create_test_case(logger, tests_dir, tests_file):
     for counter, test in enumerate(tests_tree.findall(ns('{}test'))):
         test_name = 'test_%03d' % (counter + 1)
         test_method = TestCommentBlock.__create_test__(logger, test)
-        test_method.__name__ = test_name
+        test_method.__name__ = encode_name(test_name)
         test_methods[test_name] = test_method
 
     # Dynamically generate a new subclass of TestCommentBlock in TitleCase
@@ -404,7 +414,7 @@ def create_test_case(logger, tests_dir, tests_file):
     test_class_name = os.path.relpath(tests_file[:-4], tests_dir)
     test_class_name = test_class_name.replace('/', ' ').replace('\\', ' ').replace('.', ' ')
     test_class_name = 'Test' + test_class_name.title().replace(' ', '')
-    return type(test_class_name, (TestCommentBlock,), test_methods)
+    return type(encode_name(test_class_name), (TestCommentBlock,), test_methods)
 
 
 def create_test_cases():
index 738a83f..0a0e317 100644 (file)
@@ -18,7 +18,6 @@
 # 02110-1301, USA.
 #
 
-
 '''
 test_patterns.py
 
@@ -30,13 +29,24 @@ should match, resulting symbolic groups are verified
 against the expected output.
 '''
 
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
+import sys
+import unittest
 
 from giscanner.annotationparser import (COMMENT_BLOCK_START_RE, COMMENT_BLOCK_END_RE,
                                         COMMENT_ASTERISK_RE, INDENTATION_RE, EMPTY_LINE_RE,
                                         SECTION_RE, SYMBOL_RE, PROPERTY_RE,
                                         SIGNAL_RE, PARAMETER_RE, TAG_RE,
                                         TAG_VALUE_VERSION_RE, TAG_VALUE_STABILITY_RE)
-import unittest
+
+if sys.version_info.major < 3:
+    encode_name = lambda s: s.encode('ascii')
+else:
+    encode_name = lambda s: s
 
 
 comment_start_tests = [
@@ -892,10 +902,10 @@ def create_test_case(tests_class_name, testcases):
     for counter, test in enumerate(testcases):
         test_name = 'test_%03d' % (counter + 1)
         test_method = create_test_method(test)
-        test_method.__name__ = test_name
+        test_method.__name__ = encode_name(test_name)
         test_methods[test_name] = test_method
 
-    return type(tests_class_name, (unittest.TestCase,), test_methods)
+    return type(encode_name(tests_class_name), (unittest.TestCase,), test_methods)
 
 
 def create_test_cases():
index 626b132..9a9ee67 100644 (file)
@@ -25,6 +25,30 @@ regress_set_abort_on_error (gboolean in)
   abort_on_error = in;
 }
 
+/* return annotations */
+
+/**
+ * regress_test_return_allow_none:
+ *
+ * Returns: (allow-none):
+ */
+char *
+regress_test_return_allow_none (void)
+{
+  return NULL;
+}
+
+/**
+ * regress_test_return_nullable:
+ *
+ * Returns: (nullable):
+ */
+char *
+regress_test_return_nullable (void)
+{
+  return NULL;
+}
+
 /* basic types */
 gboolean
 regress_test_boolean (gboolean in)
@@ -496,6 +520,7 @@ regress_test_utf8_inout (char **inout)
 {
   /* inout parameter, transfer mode full */
   g_assert (strcmp (*inout, utf8_const) == 0);
+  g_free (*inout);
   *inout = g_strdup (utf8_nonconst);
 }
 
@@ -639,6 +664,8 @@ regress_test_array_int_inout (int *n_ints, int **ints)
       new_ints = g_malloc(sizeof(**ints) * *n_ints);
       for (i = 0; i < *n_ints; i++)
        new_ints[i] = (*ints)[i + 1] + 1;
+
+      g_free (*ints);
       *ints = new_ints;
     }
 }
@@ -1272,34 +1299,38 @@ static const gchar *string_array[] = {
 GHashTable *
 regress_test_ghash_gvalue_return (void)
 {
-  GHashTable *hash;
-  GValue *value;
-  hash = g_hash_table_new_full(g_str_hash, g_str_equal,
-                               g_free, (GDestroyNotify)g_value_free);
+  static GHashTable *hash = NULL;
 
-  value = g_value_new(G_TYPE_INT);
-  g_value_set_int(value, 12);
-  g_hash_table_insert(hash, g_strdup("integer"), value);
+  if (hash == NULL)
+    {
+      GValue *value;
+      hash = g_hash_table_new_full(g_str_hash, g_str_equal,
+                                   g_free, (GDestroyNotify)g_value_free);
 
-  value = g_value_new(G_TYPE_BOOLEAN);
-  g_value_set_boolean(value, TRUE);
-  g_hash_table_insert(hash, g_strdup("boolean"), value);
+      value = g_value_new(G_TYPE_INT);
+      g_value_set_int(value, 12);
+      g_hash_table_insert(hash, g_strdup("integer"), value);
 
-  value = g_value_new(G_TYPE_STRING);
-  g_value_set_string(value, "some text");
-  g_hash_table_insert(hash, g_strdup("string"), value);
+      value = g_value_new(G_TYPE_BOOLEAN);
+      g_value_set_boolean(value, TRUE);
+      g_hash_table_insert(hash, g_strdup("boolean"), value);
 
-  value = g_value_new(G_TYPE_STRV);
-  g_value_set_boxed(value, string_array);
-  g_hash_table_insert(hash, g_strdup("strings"), value);
+      value = g_value_new(G_TYPE_STRING);
+      g_value_set_string(value, "some text");
+      g_hash_table_insert(hash, g_strdup("string"), value);
 
-  value = g_value_new(REGRESS_TEST_TYPE_FLAGS);
-  g_value_set_flags(value, REGRESS_TEST_FLAG1 | REGRESS_TEST_FLAG3);
-  g_hash_table_insert(hash, g_strdup("flags"), value);
+      value = g_value_new(G_TYPE_STRV);
+      g_value_set_boxed(value, string_array);
+      g_hash_table_insert(hash, g_strdup("strings"), value);
 
-  value = g_value_new(regress_test_enum_get_type());
-  g_value_set_enum(value, REGRESS_TEST_VALUE2);
-  g_hash_table_insert(hash, g_strdup("enum"), value);
+      value = g_value_new(REGRESS_TEST_TYPE_FLAGS);
+      g_value_set_flags(value, REGRESS_TEST_FLAG1 | REGRESS_TEST_FLAG3);
+      g_hash_table_insert(hash, g_strdup("flags"), value);
+
+      value = g_value_new(regress_test_enum_get_type());
+      g_value_set_enum(value, REGRESS_TEST_VALUE2);
+      g_hash_table_insert(hash, g_strdup("enum"), value);
+    }
 
   return hash;
 }
@@ -3452,8 +3483,23 @@ regress_test_simple_callback (RegressTestSimpleCallback callback)
 }
 
 /**
+ * regress_test_noptr_callback:
+ * @callback: (scope call) (allow-none):
+ *
+ **/
+void
+regress_test_noptr_callback (RegressTestNoPtrCallback callback)
+{
+    if (callback != NULL)
+        callback();
+
+    return;
+}
+
+/**
  * regress_test_callback_user_data:
  * @callback: (scope call):
+ * @user_data: (not nullable):
  *
  * Call - callback parameter persists for the duration of the method
  * call and can be released on return.
@@ -3600,6 +3646,7 @@ regress_test_async_ready_callback (GAsyncReadyCallback callback)
   GSimpleAsyncResult *result = g_simple_async_result_new (NULL, callback, NULL,
     regress_test_async_ready_callback);
   g_simple_async_result_complete_in_idle (result);
+  g_object_unref (result);
   G_GNUC_END_IGNORE_DEPRECATIONS
 }
 
@@ -4112,3 +4159,14 @@ regress_like_xkl_config_item_set_name (RegressLikeXklConfigItem *self,
   strncpy (self->name, name, sizeof (self->name) - 1);
   self->name[sizeof(self->name)-1] = '\0';
 }
+
+/**
+ * regress_get_variant:
+ *
+ * Returns: (transfer floating): A new variant
+ */
+GVariant *
+regress_get_variant (void)
+{
+  return g_variant_new_int32 (42);
+}
index a06a236..d77a7a9 100644 (file)
 _GI_TEST_EXTERN
 void regress_set_abort_on_error (gboolean abort_on_error);
 
+/* return annotations */
+_GI_TEST_EXTERN
+char *regress_test_return_allow_none (void);
+
+_GI_TEST_EXTERN
+char *regress_test_return_nullable (void);
+
 /* basic types */
 _GI_TEST_EXTERN
 gboolean regress_test_boolean (gboolean in);
@@ -1026,6 +1033,7 @@ regress_test_fundamental_sub_object_new (const char *data);
 
 /* callback */
 typedef void (*RegressTestSimpleCallback) (void);
+typedef void RegressTestNoPtrCallback (void);
 typedef int (*RegressTestCallback) (void);
 typedef int (*RegressTestCallbackUserData) (gpointer user_data);
 /**
@@ -1070,6 +1078,9 @@ _GI_TEST_EXTERN
 void regress_test_simple_callback (RegressTestSimpleCallback callback);
 
 _GI_TEST_EXTERN
+void regress_test_noptr_callback (RegressTestNoPtrCallback callback);
+
+_GI_TEST_EXTERN
 int regress_test_callback (RegressTestCallback callback);
 
 _GI_TEST_EXTERN
@@ -1425,4 +1436,7 @@ typedef struct {
   };
 } RegressAnAnonymousUnion;
 
+GVariant *
+regress_get_variant (void);
+
 #endif /* __GITESTTYPES_H__ */
index 3963683..831af48 100644 (file)
@@ -1,3 +1,8 @@
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import unittest
 import tempfile
 import os
index 37dbce9..b45f532 100644 (file)
@@ -1,8 +1,17 @@
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import unittest
 import tempfile
 import os
 import sys
-import __builtin__
+
+if sys.version_info.major < 3:
+    import __builtin__ as builtins
+else:
+    import builtins
 
 
 os.environ['GI_SCANNER_DISABLE_CACHE'] = '1'
@@ -11,7 +20,7 @@ assert path is not None
 sys.path.insert(0, path)
 
 # Not correct, but enough to get the tests going uninstalled
-__builtin__.__dict__['DATADIR'] = path
+builtins.__dict__['DATADIR'] = path
 
 from giscanner import ast
 from giscanner.sourcescanner import SourceScanner
@@ -42,7 +51,7 @@ class TestIdentifierFilter(unittest.TestCase):
               r"-e 's/^test_t$/TestContext/' " \
               r"-e 's/\(.*\)_t$/\1/' " \
               r"-e 's/^test_/Test_/' " \
-              r"-e 's/_\([a-z]\)/\u\1/g'"
+              r"-e 's/_\([a-z]\)/" + '\\u' + r"\1/g'"
 
         namespace = ast.Namespace('Test', '1.0')
         xformer = Transformer(namespace, identifier_filter_cmd=cmd)
index e7a3934..5f47df0 100644 (file)
@@ -4,13 +4,17 @@ TESTS = \
        annotationparser.h \
        callback-invalid-scope.h \
        callback-missing-scope.h \
+       invalid-allow-none.h \
        invalid-array.h \
        invalid-closure.h \
        invalid-constructor.h \
        invalid-element-type.h \
        invalid-method.h \
+       invalid-nullable.h \
        invalid-option.h \
+       invalid-optional.h \
        invalid-out.h \
+       invalid-return.h \
        invalid-transfer.h \
        missing-element-type.h \
        return-gobject.h \
index 0aeebaa..e56efe6 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # module itself.
 #
 VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -95,6 +85,8 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(top_srcdir)/common.mk $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(top_srcdir)/build-aux/test-driver
 subdir = tests/warn
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
@@ -104,7 +96,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
        $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -333,8 +324,6 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log)
 TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
-am__DIST_COMMON = $(srcdir)/Makefile.in \
-       $(top_srcdir)/build-aux/test-driver $(top_srcdir)/common.mk
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -397,7 +386,6 @@ GOBJECT_INTROSPECTION_LIBDIR = @GOBJECT_INTROSPECTION_LIBDIR@
 GOBJECT_LIBS = @GOBJECT_LIBS@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
 GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
 GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
 GTKDOC_MKPDF = @GTKDOC_MKPDF@
@@ -561,13 +549,17 @@ TESTS = \
        annotationparser.h \
        callback-invalid-scope.h \
        callback-missing-scope.h \
+       invalid-allow-none.h \
        invalid-array.h \
        invalid-closure.h \
        invalid-constructor.h \
        invalid-element-type.h \
        invalid-method.h \
+       invalid-nullable.h \
        invalid-option.h \
+       invalid-optional.h \
        invalid-out.h \
+       invalid-return.h \
        invalid-transfer.h \
        missing-element-type.h \
        return-gobject.h \
@@ -594,6 +586,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/warn/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign tests/warn/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -602,7 +595,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
        esac;
-$(top_srcdir)/common.mk $(am__empty):
+$(top_srcdir)/common.mk:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -655,7 +648,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -787,6 +780,13 @@ callback-missing-scope.h.log: callback-missing-scope.h
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+invalid-allow-none.h.log: invalid-allow-none.h
+       @p='invalid-allow-none.h'; \
+       b='invalid-allow-none.h'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 invalid-array.h.log: invalid-array.h
        @p='invalid-array.h'; \
        b='invalid-array.h'; \
@@ -822,6 +822,13 @@ invalid-method.h.log: invalid-method.h
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+invalid-nullable.h.log: invalid-nullable.h
+       @p='invalid-nullable.h'; \
+       b='invalid-nullable.h'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 invalid-option.h.log: invalid-option.h
        @p='invalid-option.h'; \
        b='invalid-option.h'; \
@@ -829,6 +836,13 @@ invalid-option.h.log: invalid-option.h
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+invalid-optional.h.log: invalid-optional.h
+       @p='invalid-optional.h'; \
+       b='invalid-optional.h'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 invalid-out.h.log: invalid-out.h
        @p='invalid-out.h'; \
        b='invalid-out.h'; \
@@ -836,6 +850,13 @@ invalid-out.h.log: invalid-out.h
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+invalid-return.h.log: invalid-return.h
+       @p='invalid-return.h'; \
+       b='invalid-return.h'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 invalid-transfer.h.log: invalid-transfer.h
        @p='invalid-transfer.h'; \
        b='invalid-transfer.h'; \
@@ -1035,8 +1056,6 @@ uninstall-am:
        mostlyclean-libtool pdf pdf-am ps ps-am recheck tags-am \
        uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/warn/invalid-allow-none.h b/tests/warn/invalid-allow-none.h
new file mode 100644 (file)
index 0000000..adea755
--- /dev/null
@@ -0,0 +1,14 @@
+#include "common.h"
+
+/**
+ * test_invalid_allow_none:
+ * @param: (allow-none):
+ * @param2: (allow-none):
+ *
+ * Returns: (allow-none):
+ */
+int test_invalid_allow_none(int param, GType param2);
+
+// EXPECT:5: Warning: Test: invalid "allow-none" annotation: only valid for pointer types and out parameters
+// EXPECT:6: Warning: Test: invalid "allow-none" annotation: only valid for pointer types and out parameters
+// EXPECT:8: Warning: Test: invalid "allow-none" annotation: only valid for pointer types and out parameters
diff --git a/tests/warn/invalid-nullable.h b/tests/warn/invalid-nullable.h
new file mode 100644 (file)
index 0000000..8a9174a
--- /dev/null
@@ -0,0 +1,14 @@
+#include "common.h"
+
+/**
+ * test_invalid_nullable:
+ * @param: (nullable):
+ * @param2: (nullable):
+ *
+ * Returns: (nullable):
+ */
+int test_invalid_nullable(int param, GType param2);
+
+// EXPECT:5: Warning: Test: invalid "nullable" annotation: only valid for pointer types and out parameters
+// EXPECT:6: Warning: Test: invalid "nullable" annotation: only valid for pointer types and out parameters
+// EXPECT:8: Warning: Test: invalid "nullable" annotation: only valid for pointer types and out parameters
diff --git a/tests/warn/invalid-optional.h b/tests/warn/invalid-optional.h
new file mode 100644 (file)
index 0000000..bcd8df6
--- /dev/null
@@ -0,0 +1,16 @@
+#include "common.h"
+
+/**
+ * test_invalid_optional:
+ * @param: (optional):
+ * @param2: (optional):
+ * @param3: (optional) (inout):
+ *
+ * Returns: (optional):
+ */
+int *test_invalid_optional(int param, GObject *param2, int *param3);
+
+// EXPECT:5: Warning: Test: invalid "optional" annotation: only valid for out parameters
+// EXPECT:6: Warning: Test: invalid "optional" annotation: only valid for out parameters
+// EXPECT:7: Warning: Test: invalid "optional" annotation: only valid for out parameters
+// EXPECT:9: Warning: Test: invalid "optional" annotation: only valid for out parameters
diff --git a/tests/warn/invalid-return.h b/tests/warn/invalid-return.h
new file mode 100644 (file)
index 0000000..c033b76
--- /dev/null
@@ -0,0 +1,19 @@
+#include "common.h"
+
+/**
+ * TestInvalidReturnCallback:
+ *
+ * Returns:
+ */
+typedef void (*TestInvalidReturnCallback) (void);
+
+// EXPECT:6: Warning: Test: TestInvalidReturnCallback: invalid return annotation
+
+/**
+ * test_invalid_return:
+ *
+ * Returns:
+ */
+void test_invalid_return (void);
+
+// EXPECT:15: Warning: Test: test_invalid_return: invalid return annotation
index ec43f2a..7f526b4 100644 (file)
@@ -1,12 +1,36 @@
+#include "common.h"
+
+typedef char TestChar;
 
 /**
  * test_transfer_invalid:
  * @param: (transfer):
  * @param2: (transfer invalid):
  * @param3: (transfer full foo):
+ * @param4: (transfer full):
+ * @param5: (transfer full):
+ * @param6: (transfer full):
+ * @param7: (transfer container):
+ * @param8: (transfer floating):
+ */
+void test_transfer_invalid(GObject *param, GObject *param2, GObject *param3,
+                           char param4, TestChar param5, GType param6,
+                           GObject *param7, GDateTime *param8);
+
+// EXPECT:7: Warning: Test: "transfer" annotation needs one option, none given
+// EXPECT:8: Warning: Test: invalid "transfer" annotation option: "invalid"
+// EXPECT:9: Warning: Test: "transfer" annotation needs one option, 2 given
+// EXPECT:10: Warning: Test: invalid "transfer" annotation for gchar: only valid for array, struct, union, boxed, object and interface types
+// EXPECT:11: Warning: Test: invalid "transfer" annotation for gchar: only valid for array, struct, union, boxed, object and interface types
+// EXPECT:12: Warning: Test: invalid "transfer" annotation for GType: only valid for array, struct, union, boxed, object and interface types
+// EXPECT:13: Warning: Test: invalid "transfer" annotation for Class('Object'): only valid for container types
+// EXPECT:14: Warning: Test: invalid "transfer" annotation for Record('DateTime'): only valid for object and GVariant types
+
+/**
+ * test_transfer_return_invalid:
+ *
+ * Returns: (transfer full):
  */
-void test_transfer_invalid(int param, int param2, int param3);
+char test_transfer_return_invalid (void);
 
-// EXPECT:4: Warning: Test: "transfer" annotation needs one option, none given
-// EXPECT:5: Warning: Test: invalid "transfer" annotation option: "invalid"
-// EXPECT:6: Warning: Test: "transfer" annotation needs one option, 2 given
+// EXPECT:32: Warning: Test: invalid "transfer" annotation for gchar: only valid for array, struct, union, boxed, object and interface types
index b211791..1f7f91e 100644 (file)
@@ -1,14 +1,23 @@
-import __builtin__
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+
 import os
 import sys
 import difflib
 
+if sys.version_info.major < 3:
+    import __builtin__ as builtins
+else:
+    import builtins
+
 path = os.getenv('UNINSTALLED_INTROSPECTION_SRCDIR', None)
 assert path is not None
 sys.path.insert(0, path)
 
 # Not correct, but enough to get the tests going uninstalled
-__builtin__.__dict__['DATADIR'] = path
+builtins.__dict__['DATADIR'] = path
 
 from giscanner.annotationparser import GtkDocCommentBlockParser
 from giscanner.ast import Include, Namespace
@@ -132,16 +141,16 @@ def check(args):
     emitted_warnings.sort(key=sortkey)
 
     if len(expected_warnings) != len(emitted_warnings):
-        raise SystemExit('ERROR in %r: %d warnings were emitted, '
-                         'expected %d:\n%s' % (os.path.basename(filename),
+        raise SystemExit("ERROR in '%s': %d warnings were emitted, "
+                         "expected %d:\n%s" % (os.path.basename(filename),
                                                len(emitted_warnings),
                                                len(expected_warnings),
                                                _diff(expected_warnings, emitted_warnings)))
 
     for emitted_warning, expected_warning in zip(emitted_warnings, expected_warnings):
         if expected_warning != emitted_warning:
-            raise SystemExit('ERROR in %r: expected warning does not match emitted '
-                             'warning:\n%s' % (filename,
+            raise SystemExit("ERROR in '%s': expected warning does not match emitted "
+                             "warning:\n%s" % (filename,
                                                _diff([expected_warning], [emitted_warning])))
 
 sys.exit(check(sys.argv[1:]))
index 88b59a0..9485761 100644 (file)
@@ -40,7 +40,7 @@ gchar **includedirs = NULL;
 gchar **input = NULL;
 gchar *output = NULL;
 gchar *mname = NULL;
-gchar *shlib = NULL;
+gchar **shlibs = NULL;
 gboolean include_cwd = FALSE;
 gboolean debug = FALSE;
 gboolean verbose = FALSE;
@@ -131,7 +131,7 @@ static GOptionEntry options[] =
   { "includedir", 0, 0, G_OPTION_ARG_FILENAME_ARRAY, &includedirs, "include directories in GIR search path", NULL }, 
   { "output", 'o', 0, G_OPTION_ARG_FILENAME, &output, "output file", "FILE" }, 
   { "module", 'm', 0, G_OPTION_ARG_STRING, &mname, "module to compile", "NAME" }, 
-  { "shared-library", 'l', 0, G_OPTION_ARG_FILENAME, &shlib, "shared library", "FILE" }, 
+  { "shared-library", 'l', 0, G_OPTION_ARG_FILENAME_ARRAY, &shlibs, "shared library", "FILE" }, 
   { "debug", 0, 0, G_OPTION_ARG_NONE, &debug, "show debug messages", NULL }, 
   { "verbose", 0, 0, G_OPTION_ARG_NONE, &verbose, "show verbose messages", NULL }, 
   { G_OPTION_REMAINING, 0, 0, G_OPTION_ARG_FILENAME_ARRAY, &input, NULL, NULL },
@@ -205,11 +205,11 @@ main (int argc, char ** argv)
   {
       GITypelib *typelib;
 
-      if (shlib)
+      if (shlibs)
        {
           if (module->shared_library)
            g_free (module->shared_library);
-          module->shared_library = g_strdup (shlib);
+          module->shared_library = g_strjoinv (",", shlibs);
        }
 
       g_debug ("[building] module %s", module->name);
index 43eea46..f80730e 100644 (file)
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 # 02110-1301, USA.
 #
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
 
 import os
 import sys
-import __builtin__
 
+if sys.version_info.major < 3:
+    import __builtin__ as builtins
+else:
+    import builtins
 
 debug = os.getenv('GI_SCANNER_DEBUG', '').split(',')
 if debug:
@@ -35,7 +42,7 @@ if debug:
             pydevd.settrace()
     else:
         def on_exception(exctype, value, tb):
-            print "Caught exception: %r %r" % (exctype, value)
+            print("Caught exception: %r %r" % (exctype, value))
             import pdb
             pdb.pm()
         sys.excepthook = on_exception
@@ -47,11 +54,12 @@ else:
     datadir = "@datarootdir@"
     pylibdir = os.path.join('@libdir@', 'gobject-introspection')
 
+builtins.__dict__['DATADIR'] = datadir
+
 srcdir = os.getenv('UNINSTALLED_INTROSPECTION_SRCDIR', None)
 if srcdir is not None:
     pylibdir = srcdir
 
-__builtin__.__dict__['DATADIR'] = datadir
 sys.path.insert(0, pylibdir)
 
 from giscanner.@TOOL_MODULE@ import @TOOL_FUNCTION@