gio2 0.90.5-x86-mingw32 → 0.90.6-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +41 -0
- data/Rakefile +9 -70
- data/ext/gio2/extconf.rb +9 -9
- data/ext/gio2/gasyncinitable.c +0 -1
- data/ext/gio2/gbufferedinputstream.c +0 -19
- data/ext/gio2/gbufferedoutputstream.c +0 -34
- data/ext/gio2/gcharsetconverter.c +0 -17
- data/ext/gio2/gcontenttype.c +1 -8
- data/ext/gio2/gconverterinputstream.c +0 -7
- data/ext/gio2/gconverteroutputstream.c +0 -7
- data/ext/gio2/gdatainputstream.c +34 -57
- data/ext/gio2/gdataoutputstream.c +0 -18
- data/ext/gio2/gdesktopappinfo.c +0 -2
- data/ext/gio2/gemblem.c +0 -19
- data/ext/gio2/gfile.c +4 -6
- data/ext/gio2/gfileattribute.c +3 -155
- data/ext/gio2/gfileattributeinfo.c +89 -0
- data/ext/gio2/gfileattributeinfolist.c +109 -0
- data/ext/gio2/gfileenumerator.c +0 -2
- data/ext/gio2/gfileicon.c +0 -7
- data/ext/gio2/gfileinfo.c +4 -11
- data/ext/gio2/gfileinputstream.c +0 -2
- data/ext/gio2/gfileiostream.c +0 -2
- data/ext/gio2/gfilemonitor.c +0 -19
- data/ext/gio2/gfileoutputstream.c +1 -5
- data/ext/gio2/gfilterinputstream.c +1 -30
- data/ext/gio2/gfilteroutputstream.c +1 -30
- data/ext/gio2/gicon.c +0 -2
- data/ext/gio2/ginetaddress.c +0 -72
- data/ext/gio2/ginetsocketaddress.c +0 -16
- data/ext/gio2/ginputstream.c +0 -2
- data/ext/gio2/gio2.c +11 -1
- data/ext/gio2/gio2.h +9 -1
- data/ext/gio2/gioerror.c +4 -1
- data/ext/gio2/giomodule.c +2 -2
- data/ext/gio2/gioscheduler.c +4 -6
- data/ext/gio2/giostream.c +0 -23
- data/ext/gio2/gloadableicon.c +0 -1
- data/ext/gio2/gmemoryoutputstream.c +0 -24
- data/ext/gio2/gmount.c +1 -0
- data/ext/gio2/gmountoperation.c +1 -103
- data/ext/gio2/gnetworkaddress.c +0 -14
- data/ext/gio2/gnetworkservice.c +0 -21
- data/ext/gio2/goutputstream.c +8 -18
- data/ext/gio2/gresolver.c +0 -2
- data/ext/gio2/gsocket.c +2 -80
- data/ext/gio2/gsocketaddress.c +1 -13
- data/ext/gio2/gsocketclient.c +0 -68
- data/ext/gio2/gsocketconnection.c +1 -8
- data/ext/gio2/gsocketcontrolmessage.c +0 -2
- data/ext/gio2/gsocketlistener.c +27 -21
- data/ext/gio2/gtcpconnection.c +1 -22
- data/ext/gio2/gthreadedsocketservice.c +6 -5
- data/ext/gio2/gunixfdlist.c +1 -1
- data/ext/gio2/gunixfdmessage.c +0 -9
- data/ext/gio2/gunixinputstream.c +0 -24
- data/ext/gio2/gunixmounts.c +1 -4
- data/ext/gio2/gunixoutputstream.c +0 -24
- data/ext/gio2/gunixsocketaddress.c +5 -17
- data/ext/gio2/gvfs.c +0 -2
- data/ext/gio2/gvolumemonitor.c +0 -2
- data/ext/gio2/gzlibcompressor.c +3 -0
- data/ext/gio2/util.c +3 -0
- data/lib/1.8/gio2.so +0 -0
- data/lib/1.9/gio2.so +0 -0
- data/lib/gio2.rb +19 -1
- data/test/load-test.rb +14 -0
- data/test/test_bufferedinputstream.rb +2 -0
- data/test/test_charsetconverter.rb +2 -0
- data/test/test_datainputstream.rb +7 -0
- data/test/test_fileenumerator.rb +8 -0
- data/test/test_filemonitor.rb +2 -0
- data/test/test_inetaddress.rb +8 -0
- metadata +90 -835
- data/vendor/local/bin/envsubst.exe +0 -0
- data/vendor/local/bin/gettext.exe +0 -0
- data/vendor/local/bin/gettext.sh +0 -123
- data/vendor/local/bin/glib-genmarshal.exe +0 -0
- data/vendor/local/bin/glib-gettextize +0 -188
- data/vendor/local/bin/glib-mkenums +0 -537
- data/vendor/local/bin/gobject-query.exe +0 -0
- data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
- data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
- data/vendor/local/bin/intl.dll +0 -0
- data/vendor/local/bin/libasprintf-0.dll +0 -0
- data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
- data/vendor/local/bin/libgio-2.0-0.dll +0 -0
- data/vendor/local/bin/libglib-2.0-0.dll +0 -0
- data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
- data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
- data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
- data/vendor/local/bin/ngettext.exe +0 -0
- data/vendor/local/include/autosprintf.h +0 -66
- data/vendor/local/include/glib-2.0/gio/gappinfo.h +0 -236
- data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +0 -119
- data/vendor/local/include/glib-2.0/gio/gasyncresult.h +0 -73
- data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +0 -123
- data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +0 -81
- data/vendor/local/include/glib-2.0/gio/gcancellable.h +0 -103
- data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +0 -60
- data/vendor/local/include/glib-2.0/gio/gcontenttype.h +0 -57
- data/vendor/local/include/glib-2.0/gio/gconverter.h +0 -95
- data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +0 -79
- data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +0 -79
- data/vendor/local/include/glib-2.0/gio/gcredentials.h +0 -76
- data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +0 -150
- data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +0 -115
- data/vendor/local/include/glib-2.0/gio/gdbusaddress.h +0 -58
- data/vendor/local/include/glib-2.0/gio/gdbusauthobserver.h +0 -46
- data/vendor/local/include/glib-2.0/gio/gdbusconnection.h +0 -562
- data/vendor/local/include/glib-2.0/gio/gdbuserror.h +0 -100
- data/vendor/local/include/glib-2.0/gio/gdbusintrospection.h +0 -286
- data/vendor/local/include/glib-2.0/gio/gdbusmessage.h +0 -149
- data/vendor/local/include/glib-2.0/gio/gdbusmethodinvocation.h +0 -73
- data/vendor/local/include/glib-2.0/gio/gdbusnameowning.h +0 -112
- data/vendor/local/include/glib-2.0/gio/gdbusnamewatching.h +0 -94
- data/vendor/local/include/glib-2.0/gio/gdbusproxy.h +0 -167
- data/vendor/local/include/glib-2.0/gio/gdbusserver.h +0 -54
- data/vendor/local/include/glib-2.0/gio/gdbusutils.h +0 -44
- data/vendor/local/include/glib-2.0/gio/gdrive.h +0 -225
- data/vendor/local/include/glib-2.0/gio/gemblem.h +0 -58
- data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +0 -62
- data/vendor/local/include/glib-2.0/gio/gfile.h +0 -1017
- data/vendor/local/include/glib-2.0/gio/gfileattribute.h +0 -77
- data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +0 -132
- data/vendor/local/include/glib-2.0/gio/gfileicon.h +0 -56
- data/vendor/local/include/glib-2.0/gio/gfileinfo.h +0 -952
- data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +0 -112
- data/vendor/local/include/glib-2.0/gio/gfileiostream.h +0 -118
- data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +0 -95
- data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +0 -76
- data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +0 -119
- data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +0 -76
- data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +0 -76
- data/vendor/local/include/glib-2.0/gio/gicon.h +0 -91
- data/vendor/local/include/glib-2.0/gio/ginetaddress.h +0 -103
- data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +0 -69
- data/vendor/local/include/glib-2.0/gio/ginitable.h +0 -96
- data/vendor/local/include/glib-2.0/gio/ginputstream.h +0 -172
- data/vendor/local/include/glib-2.0/gio/gio.h +0 -122
- data/vendor/local/include/glib-2.0/gio/gioenums.h +0 -1221
- data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +0 -121
- data/vendor/local/include/glib-2.0/gio/gioerror.h +0 -52
- data/vendor/local/include/glib-2.0/gio/giomodule.h +0 -132
- data/vendor/local/include/glib-2.0/gio/gioscheduler.h +0 -52
- data/vendor/local/include/glib-2.0/gio/giostream.h +0 -112
- data/vendor/local/include/glib-2.0/gio/giotypes.h +0 -375
- data/vendor/local/include/glib-2.0/gio/gloadableicon.h +0 -97
- data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +0 -82
- data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +0 -98
- data/vendor/local/include/glib-2.0/gio/gmount.h +0 -242
- data/vendor/local/include/glib-2.0/gio/gmountoperation.h +0 -123
- data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +0 -62
- data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +0 -73
- data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +0 -71
- data/vendor/local/include/glib-2.0/gio/goutputstream.h +0 -207
- data/vendor/local/include/glib-2.0/gio/gpermission.h +0 -118
- data/vendor/local/include/glib-2.0/gio/gproxy.h +0 -123
- data/vendor/local/include/glib-2.0/gio/gproxyaddress.h +0 -76
- data/vendor/local/include/glib-2.0/gio/gproxyaddressenumerator.h +0 -75
- data/vendor/local/include/glib-2.0/gio/gproxyresolver.h +0 -96
- data/vendor/local/include/glib-2.0/gio/gresolver.h +0 -167
- data/vendor/local/include/glib-2.0/gio/gseekable.h +0 -99
- data/vendor/local/include/glib-2.0/gio/gsettings.h +0 -258
- data/vendor/local/include/glib-2.0/gio/gsettingsbackend.h +0 -138
- data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +0 -125
- data/vendor/local/include/glib-2.0/gio/gsimplepermission.h +0 -45
- data/vendor/local/include/glib-2.0/gio/gsocket.h +0 -194
- data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +0 -79
- data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +0 -89
- data/vendor/local/include/glib-2.0/gio/gsocketclient.h +0 -152
- data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +0 -74
- data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +0 -91
- data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +0 -105
- data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +0 -138
- data/vendor/local/include/glib-2.0/gio/gsocketservice.h +0 -88
- data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +0 -52
- data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +0 -68
- data/vendor/local/include/glib-2.0/gio/gthemedicon.h +0 -63
- data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +0 -81
- data/vendor/local/include/glib-2.0/gio/gvfs.h +0 -125
- data/vendor/local/include/glib-2.0/gio/gvolume.h +0 -211
- data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +0 -150
- data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +0 -60
- data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +0 -57
- data/vendor/local/include/glib-2.0/glib-object.h +0 -42
- data/vendor/local/include/glib-2.0/glib.h +0 -99
- data/vendor/local/include/glib-2.0/glib/galloca.h +0 -110
- data/vendor/local/include/glib-2.0/glib/garray.h +0 -179
- data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +0 -120
- data/vendor/local/include/glib-2.0/glib/gatomic.h +0 -105
- data/vendor/local/include/glib-2.0/glib/gbacktrace.h +0 -68
- data/vendor/local/include/glib-2.0/glib/gbase64.h +0 -57
- data/vendor/local/include/glib-2.0/glib/gbitlock.h +0 -43
- data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +0 -215
- data/vendor/local/include/glib-2.0/glib/gcache.h +0 -69
- data/vendor/local/include/glib-2.0/glib/gchecksum.h +0 -86
- data/vendor/local/include/glib-2.0/glib/gcompletion.h +0 -81
- data/vendor/local/include/glib-2.0/glib/gconvert.h +0 -162
- data/vendor/local/include/glib-2.0/glib/gdataset.h +0 -122
- data/vendor/local/include/glib-2.0/glib/gdate.h +0 -263
- data/vendor/local/include/glib-2.0/glib/gdatetime.h +0 -217
- data/vendor/local/include/glib-2.0/glib/gdir.h +0 -52
- data/vendor/local/include/glib-2.0/glib/gerror.h +0 -98
- data/vendor/local/include/glib-2.0/glib/gfileutils.h +0 -128
- data/vendor/local/include/glib-2.0/glib/ghash.h +0 -166
- data/vendor/local/include/glib-2.0/glib/ghook.h +0 -181
- data/vendor/local/include/glib-2.0/glib/ghostutils.h +0 -40
- data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +0 -38
- data/vendor/local/include/glib-2.0/glib/gi18n.h +0 -34
- data/vendor/local/include/glib-2.0/glib/giochannel.h +0 -366
- data/vendor/local/include/glib-2.0/glib/gkeyfile.h +0 -266
- data/vendor/local/include/glib-2.0/glib/glist.h +0 -120
- data/vendor/local/include/glib-2.0/glib/gmacros.h +0 -284
- data/vendor/local/include/glib-2.0/glib/gmain.h +0 -531
- data/vendor/local/include/glib-2.0/glib/gmappedfile.h +0 -49
- data/vendor/local/include/glib-2.0/glib/gmarkup.h +0 -163
- data/vendor/local/include/glib-2.0/glib/gmem.h +0 -309
- data/vendor/local/include/glib-2.0/glib/gmessages.h +0 -343
- data/vendor/local/include/glib-2.0/glib/gnode.h +0 -290
- data/vendor/local/include/glib-2.0/glib/goption.h +0 -370
- data/vendor/local/include/glib-2.0/glib/gpattern.h +0 -49
- data/vendor/local/include/glib-2.0/glib/gpoll.h +0 -117
- data/vendor/local/include/glib-2.0/glib/gprimes.h +0 -51
- data/vendor/local/include/glib-2.0/glib/gprintf.h +0 -52
- data/vendor/local/include/glib-2.0/glib/gqsort.h +0 -46
- data/vendor/local/include/glib-2.0/glib/gquark.h +0 -52
- data/vendor/local/include/glib-2.0/glib/gqueue.h +0 -127
- data/vendor/local/include/glib-2.0/glib/grand.h +0 -85
- data/vendor/local/include/glib-2.0/glib/gregex.h +0 -471
- data/vendor/local/include/glib-2.0/glib/grel.h +0 -101
- data/vendor/local/include/glib-2.0/glib/gscanner.h +0 -278
- data/vendor/local/include/glib-2.0/glib/gsequence.h +0 -128
- data/vendor/local/include/glib-2.0/glib/gshell.h +0 -55
- data/vendor/local/include/glib-2.0/glib/gslice.h +0 -86
- data/vendor/local/include/glib-2.0/glib/gslist.h +0 -114
- data/vendor/local/include/glib-2.0/glib/gspawn.h +0 -139
- data/vendor/local/include/glib-2.0/glib/gstdio.h +0 -147
- data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +0 -269
- data/vendor/local/include/glib-2.0/glib/gstring.h +0 -178
- data/vendor/local/include/glib-2.0/glib/gtestutils.h +0 -297
- data/vendor/local/include/glib-2.0/glib/gthread.h +0 -407
- data/vendor/local/include/glib-2.0/glib/gthreadpool.h +0 -114
- data/vendor/local/include/glib-2.0/glib/gtimer.h +0 -65
- data/vendor/local/include/glib-2.0/glib/gtimezone.h +0 -44
- data/vendor/local/include/glib-2.0/glib/gtree.h +0 -91
- data/vendor/local/include/glib-2.0/glib/gtypes.h +0 -451
- data/vendor/local/include/glib-2.0/glib/gunicode.h +0 -421
- data/vendor/local/include/glib-2.0/glib/gurifuncs.h +0 -81
- data/vendor/local/include/glib-2.0/glib/gutils.h +0 -490
- data/vendor/local/include/glib-2.0/glib/gvariant.h +0 -248
- data/vendor/local/include/glib-2.0/glib/gvarianttype.h +0 -334
- data/vendor/local/include/glib-2.0/glib/gwin32.h +0 -114
- data/vendor/local/include/glib-2.0/gmodule.h +0 -101
- data/vendor/local/include/glib-2.0/gobject/gbinding.h +0 -136
- data/vendor/local/include/glib-2.0/gobject/gboxed.h +0 -248
- data/vendor/local/include/glib-2.0/gobject/gclosure.h +0 -251
- data/vendor/local/include/glib-2.0/gobject/genums.h +0 -261
- data/vendor/local/include/glib-2.0/gobject/gmarshal.h +0 -186
- data/vendor/local/include/glib-2.0/gobject/gobject.h +0 -567
- data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +0 -193
- data/vendor/local/include/glib-2.0/gobject/gparam.h +0 -415
- data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +0 -1137
- data/vendor/local/include/glib-2.0/gobject/gsignal.h +0 -509
- data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +0 -51
- data/vendor/local/include/glib-2.0/gobject/gtype.h +0 -1736
- data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +0 -263
- data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +0 -134
- data/vendor/local/include/glib-2.0/gobject/gvalue.h +0 -159
- data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +0 -77
- data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +0 -227
- data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +0 -260
- data/vendor/local/include/libintl.h +0 -464
- data/vendor/local/lib/GNU.Gettext.dll +0 -0
- data/vendor/local/lib/gio-2.0.def +0 -1143
- data/vendor/local/lib/gio-2.0.lib +0 -0
- data/vendor/local/lib/glib-2.0.def +0 -1452
- data/vendor/local/lib/glib-2.0.lib +0 -0
- data/vendor/local/lib/glib-2.0/include/glibconfig.h +0 -284
- data/vendor/local/lib/gmodule-2.0.def +0 -11
- data/vendor/local/lib/gmodule-2.0.lib +0 -0
- data/vendor/local/lib/gobject-2.0.def +0 -370
- data/vendor/local/lib/gobject-2.0.lib +0 -0
- data/vendor/local/lib/gthread-2.0.def +0 -3
- data/vendor/local/lib/gthread-2.0.lib +0 -0
- data/vendor/local/lib/intl.lib +0 -0
- data/vendor/local/lib/libasprintf.dll.a +0 -0
- data/vendor/local/lib/libgio-2.0.dll.a +0 -0
- data/vendor/local/lib/libglib-2.0.dll.a +0 -0
- data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
- data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
- data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
- data/vendor/local/lib/libintl.def +0 -31
- data/vendor/local/lib/libintl.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/gio-2.0.pc +0 -15
- data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +0 -11
- data/vendor/local/lib/pkgconfig/glib-2.0.pc +0 -15
- data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +0 -14
- data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +0 -14
- data/vendor/local/lib/pkgconfig/gobject-2.0.pc +0 -11
- data/vendor/local/lib/pkgconfig/gthread-2.0.pc +0 -11
- data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +0 -81
- data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +0 -3
- data/vendor/local/manifest/glib-dev_2.26.0-2_win32.mft +0 -570
- data/vendor/local/manifest/glib_2.26.0-2_win32.mft +0 -102
- data/vendor/local/share/aclocal/glib-2.0.m4 +0 -211
- data/vendor/local/share/aclocal/glib-gettext.m4 +0 -432
- data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +0 -165
- data/vendor/local/share/doc/gettext/bindtextdomain.3.html +0 -160
- data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +0 -8
- data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +0 -305
- data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +0 -356
- data/vendor/local/share/doc/gettext/csharpdoc/begin.html +0 -11
- data/vendor/local/share/doc/gettext/csharpdoc/index.html +0 -10
- data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +0 -6
- data/vendor/local/share/doc/gettext/envsubst.1.html +0 -213
- data/vendor/local/share/doc/gettext/gettext.1.html +0 -266
- data/vendor/local/share/doc/gettext/gettext.3.html +0 -186
- data/vendor/local/share/doc/gettext/ngettext.1.html +0 -280
- data/vendor/local/share/doc/gettext/ngettext.3.html +0 -143
- data/vendor/local/share/doc/gettext/textdomain.3.html +0 -150
- data/vendor/local/share/doc/glib-2.26.0/COPYING +0 -482
- data/vendor/local/share/doc/glib-dev-2.26.0/COPYING +0 -482
- data/vendor/local/share/doc/libasprintf/autosprintf_all.html +0 -174
- data/vendor/local/share/glib-2.0/gdb/glib.py +0 -249
- data/vendor/local/share/glib-2.0/gdb/gobject.py +0 -305
- data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +0 -111
- data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +0 -279
- data/vendor/local/share/glib-2.0/schemas/gschema.dtd +0 -60
- data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +0 -1403
- data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +0 -733
- data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +0 -343
- data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +0 -563
- data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +0 -291
- data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +0 -620
- data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +0 -245
- data/vendor/local/share/gtk-doc/html/gio/GConverter.html +0 -423
- data/vendor/local/share/gtk-doc/html/gio/GCredentials.html +0 -398
- data/vendor/local/share/gtk-doc/html/gio/GDBusAuthObserver.html +0 -254
- data/vendor/local/share/gtk-doc/html/gio/GDBusConnection.html +0 -6211
- data/vendor/local/share/gtk-doc/html/gio/GDBusMessage.html +0 -1833
- data/vendor/local/share/gtk-doc/html/gio/GDBusMethodInvocation.html +0 -618
- data/vendor/local/share/gtk-doc/html/gio/GDBusProxy.html +0 -2050
- data/vendor/local/share/gtk-doc/html/gio/GDBusServer.html +0 -1124
- data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +0 -1215
- data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +0 -540
- data/vendor/local/share/gtk-doc/html/gio/GDrive.html +0 -1416
- data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +0 -272
- data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +0 -206
- data/vendor/local/share/gtk-doc/html/gio/GFile.html +0 -7462
- data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +0 -120
- data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +0 -516
- data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +0 -312
- data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +0 -155
- data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +0 -3144
- data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +0 -262
- data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +0 -353
- data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +0 -301
- data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +0 -217
- data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +0 -188
- data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +0 -189
- data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +0 -261
- data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +0 -479
- data/vendor/local/share/gtk-doc/html/gio/GIcon.html +0 -331
- data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +0 -717
- data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +0 -196
- data/vendor/local/share/gtk-doc/html/gio/GInitable.html +0 -388
- data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +0 -808
- data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +0 -301
- data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +0 -185
- data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +0 -393
- data/vendor/local/share/gtk-doc/html/gio/GMount.html +0 -1465
- data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +0 -848
- data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +0 -343
- data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +0 -311
- data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +0 -1012
- data/vendor/local/share/gtk-doc/html/gio/GPermission.html +0 -560
- data/vendor/local/share/gtk-doc/html/gio/GProxy.html +0 -312
- data/vendor/local/share/gtk-doc/html/gio/GProxyAddress.html +0 -348
- data/vendor/local/share/gtk-doc/html/gio/GProxyResolver.html +0 -301
- data/vendor/local/share/gtk-doc/html/gio/GResolver.html +0 -787
- data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +0 -350
- data/vendor/local/share/gtk-doc/html/gio/GSettings.html +0 -2424
- data/vendor/local/share/gtk-doc/html/gio/GSettingsBackend.html +0 -609
- data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +0 -1193
- data/vendor/local/share/gtk-doc/html/gio/GSimplePermission.html +0 -107
- data/vendor/local/share/gtk-doc/html/gio/GSocket.html +0 -2438
- data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +0 -297
- data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +0 -1292
- data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +0 -513
- data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +0 -337
- data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +0 -275
- data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +0 -745
- data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +0 -258
- data/vendor/local/share/gtk-doc/html/gio/GTcpConnection.html +0 -165
- data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +0 -377
- data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +0 -197
- data/vendor/local/share/gtk-doc/html/gio/GUnixConnection.html +0 -298
- data/vendor/local/share/gtk-doc/html/gio/GUnixCredentialsMessage.html +0 -222
- data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +0 -389
- data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +0 -288
- data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +0 -237
- data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +0 -237
- data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +0 -491
- data/vendor/local/share/gtk-doc/html/gio/GVfs.html +0 -274
- data/vendor/local/share/gtk-doc/html/gio/GVolume.html +0 -1028
- data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +0 -705
- data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +0 -252
- data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +0 -170
- data/vendor/local/share/gtk-doc/html/gio/annotation-glossary.html +0 -65
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +0 -153
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +0 -155
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +0 -1084
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +0 -223
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-26.html +0 -1598
- data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +0 -112
- data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +0 -6250
- data/vendor/local/share/gtk-doc/html/gio/async.html +0 -44
- data/vendor/local/share/gtk-doc/html/gio/ch01.html +0 -207
- data/vendor/local/share/gtk-doc/html/gio/ch02.html +0 -50
- data/vendor/local/share/gtk-doc/html/gio/ch03.html +0 -180
- data/vendor/local/share/gtk-doc/html/gio/ch24.html +0 -75
- data/vendor/local/share/gtk-doc/html/gio/ch25.html +0 -217
- data/vendor/local/share/gtk-doc/html/gio/ch25s02.html +0 -41
- data/vendor/local/share/gtk-doc/html/gio/ch25s03.html +0 -39
- data/vendor/local/share/gtk-doc/html/gio/ch26.html +0 -57
- data/vendor/local/share/gtk-doc/html/gio/ch26s02.html +0 -59
- data/vendor/local/share/gtk-doc/html/gio/ch26s03.html +0 -159
- data/vendor/local/share/gtk-doc/html/gio/ch26s04.html +0 -46
- data/vendor/local/share/gtk-doc/html/gio/ch26s05.html +0 -48
- data/vendor/local/share/gtk-doc/html/gio/ch26s06.html +0 -277
- data/vendor/local/share/gtk-doc/html/gio/ch26s07.html +0 -95
- data/vendor/local/share/gtk-doc/html/gio/ch27.html +0 -70
- data/vendor/local/share/gtk-doc/html/gio/ch27s02.html +0 -130
- data/vendor/local/share/gtk-doc/html/gio/ch27s03.html +0 -202
- data/vendor/local/share/gtk-doc/html/gio/ch27s04.html +0 -96
- data/vendor/local/share/gtk-doc/html/gio/ch27s05.html +0 -823
- data/vendor/local/share/gtk-doc/html/gio/ch27s06.html +0 -828
- data/vendor/local/share/gtk-doc/html/gio/conversion.html +0 -44
- data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +0 -109
- data/vendor/local/share/gtk-doc/html/gio/extending.html +0 -41
- data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +0 -38
- data/vendor/local/share/gtk-doc/html/gio/file_mon.html +0 -33
- data/vendor/local/share/gtk-doc/html/gio/file_ops.html +0 -50
- data/vendor/local/share/gtk-doc/html/gio/gdbus-convenience.html +0 -41
- data/vendor/local/share/gtk-doc/html/gio/gdbus-lowlevel.html +0 -59
- data/vendor/local/share/gtk-doc/html/gio/gdbus.html +0 -243
- data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Addresses.html +0 -316
- data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +0 -1117
- data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Utilities.html +0 -216
- data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +0 -339
- data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +0 -473
- data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +0 -391
- data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +0 -159
- data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +0 -159
- data/vendor/local/share/gtk-doc/html/gio/gio-GDBusError.html +0 -908
- data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +0 -933
- data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +0 -409
- data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +0 -297
- data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +0 -313
- data/vendor/local/share/gtk-doc/html/gio/gio-Owning-Bus-Names.html +0 -736
- data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +0 -909
- data/vendor/local/share/gtk-doc/html/gio/gio-Watching-Bus-Names.html +0 -666
- data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +0 -123
- data/vendor/local/share/gtk-doc/html/gio/gio-querymodules.html +0 -53
- data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +0 -1736
- data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +0 -2006
- data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +0 -102
- data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +0 -53
- data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/icons.html +0 -50
- data/vendor/local/share/gtk-doc/html/gio/index.html +0 -435
- data/vendor/local/share/gtk-doc/html/gio/index.sgml +0 -2513
- data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/migrating.html +0 -62
- data/vendor/local/share/gtk-doc/html/gio/networking.html +0 -69
- data/vendor/local/share/gtk-doc/html/gio/permissions.html +0 -39
- data/vendor/local/share/gtk-doc/html/gio/pt01.html +0 -39
- data/vendor/local/share/gtk-doc/html/gio/pt02.html +0 -390
- data/vendor/local/share/gtk-doc/html/gio/resolver.html +0 -50
- data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/settings.html +0 -38
- data/vendor/local/share/gtk-doc/html/gio/streaming.html +0 -92
- data/vendor/local/share/gtk-doc/html/gio/style.css +0 -265
- data/vendor/local/share/gtk-doc/html/gio/tools.html +0 -44
- data/vendor/local/share/gtk-doc/html/gio/types.html +0 -41
- data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/utils.html +0 -33
- data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +0 -47
- data/vendor/local/share/gtk-doc/html/glib/annotation-glossary.html +0 -77
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +0 -180
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +0 -312
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +0 -559
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +0 -362
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +0 -102
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +0 -124
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +0 -83
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +0 -194
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +0 -420
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-26.html +0 -359
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +0 -396
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +0 -417
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +0 -158
- data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +0 -419
- data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +0 -8214
- data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +0 -893
- data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +0 -818
- data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +0 -414
- data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +0 -466
- data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +0 -802
- data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +0 -372
- data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +0 -500
- data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +0 -2056
- data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +0 -560
- data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +0 -1686
- data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +0 -398
- data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +0 -1094
- data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +0 -1671
- data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +0 -460
- data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +0 -528
- data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +0 -2045
- data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +0 -1278
- data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +0 -1406
- data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +0 -548
- data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +0 -1026
- data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +0 -1852
- data/vendor/local/share/gtk-doc/html/glib/glib-GDateTime.html +0 -2201
- data/vendor/local/share/gtk-doc/html/glib/glib-GTimeZone.html +0 -239
- data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +0 -4278
- data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +0 -1864
- data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +0 -295
- data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +0 -1512
- data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +0 -1367
- data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +0 -229
- data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +0 -692
- data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +0 -2196
- data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +0 -2740
- data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +0 -612
- data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +0 -1451
- data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +0 -389
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +0 -1033
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +0 -141
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +0 -706
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +0 -510
- data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +0 -748
- data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +0 -1105
- data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +0 -1552
- data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +0 -1468
- data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +0 -194
- data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +0 -2745
- data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +0 -752
- data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +0 -269
- data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +0 -578
- data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +0 -532
- data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +0 -1353
- data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +0 -238
- data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +0 -1282
- data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +0 -1213
- data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +0 -924
- data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +0 -470
- data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +0 -301
- data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +0 -2960
- data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +0 -1291
- data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +0 -1805
- data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +0 -3478
- data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +0 -606
- data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +0 -3411
- data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +0 -245
- data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +0 -188
- data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +0 -263
- data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +0 -400
- data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +0 -3448
- data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +0 -253
- data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +0 -438
- data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +0 -476
- data/vendor/local/share/gtk-doc/html/glib/glib-building.html +0 -466
- data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +0 -159
- data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +0 -118
- data/vendor/local/share/gtk-doc/html/glib/glib-core.html +0 -64
- data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +0 -160
- data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +0 -120
- data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +0 -59
- data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +0 -93
- data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +0 -2217
- data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +0 -121
- data/vendor/local/share/gtk-doc/html/glib/glib-running.html +0 -319
- data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +0 -118
- data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +0 -2183
- data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +0 -2671
- data/vendor/local/share/gtk-doc/html/glib/glib.html +0 -80
- data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +0 -72
- data/vendor/local/share/gtk-doc/html/glib/gtester.html +0 -131
- data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +0 -1288
- data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/glib/index.html +0 -344
- data/vendor/local/share/gtk-doc/html/glib/index.sgml +0 -2846
- data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
- data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/glib/style.css +0 -265
- data/vendor/local/share/gtk-doc/html/glib/tools.html +0 -41
- data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/GBinding.html +0 -803
- data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +0 -710
- data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +0 -453
- data/vendor/local/share/gtk-doc/html/gobject/annotation-glossary.html +0 -47
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +0 -85
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +0 -55
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +0 -51
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +0 -46
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +0 -38
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +0 -46
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +0 -73
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-26.html +0 -201
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +0 -178
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +0 -42
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +0 -42
- data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +0 -50
- data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +0 -2721
- data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +0 -136
- data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +0 -113
- data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +0 -293
- data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +0 -263
- data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +0 -92
- data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +0 -214
- data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +0 -361
- data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +0 -307
- data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +0 -417
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +0 -2412
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +0 -847
- data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +0 -1433
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +0 -776
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +0 -2741
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +0 -5555
- data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +0 -2875
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +0 -4460
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +0 -416
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +0 -260
- data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +0 -234
- data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +0 -270
- data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +0 -117
- data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +0 -762
- data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +0 -801
- data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +0 -143
- data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +0 -287
- data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +0 -316
- data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +0 -76
- data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +0 -100
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +0 -86
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +0 -113
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +0 -122
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +0 -257
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +0 -283
- data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +0 -125
- data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +0 -167
- data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +0 -160
- data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +0 -121
- data/vendor/local/share/gtk-doc/html/gobject/index.html +0 -192
- data/vendor/local/share/gtk-doc/html/gobject/index.sgml +0 -786
- data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/pr01.html +0 -72
- data/vendor/local/share/gtk-doc/html/gobject/pt01.html +0 -80
- data/vendor/local/share/gtk-doc/html/gobject/pt02.html +0 -66
- data/vendor/local/share/gtk-doc/html/gobject/pt03.html +0 -55
- data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/rn01.html +0 -85
- data/vendor/local/share/gtk-doc/html/gobject/rn02.html +0 -47
- data/vendor/local/share/gtk-doc/html/gobject/signal.html +0 -377
- data/vendor/local/share/gtk-doc/html/gobject/style.css +0 -265
- data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +0 -35
- data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +0 -40
- data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +0 -63
- data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +0 -55
- data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +0 -43
- data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
- data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/kk/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/locale.alias +0 -77
- data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
- data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
- data/vendor/local/share/man/man1/envsubst.1 +0 -54
- data/vendor/local/share/man/man1/gettext.1 +0 -69
- data/vendor/local/share/man/man1/glib-genmarshal.1 +0 -312
- data/vendor/local/share/man/man1/glib-mkenums.1 +0 -246
- data/vendor/local/share/man/man1/gobject-query.1 +0 -83
- data/vendor/local/share/man/man1/ngettext.1 +0 -68
- data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +0 -72
- data/vendor/local/share/man/man3/bindtextdomain.3 +0 -69
- data/vendor/local/share/man/man3/dcgettext.3 +0 -1
- data/vendor/local/share/man/man3/dcngettext.3 +0 -1
- data/vendor/local/share/man/man3/dgettext.3 +0 -1
- data/vendor/local/share/man/man3/dngettext.3 +0 -1
- data/vendor/local/share/man/man3/gettext.3 +0 -99
- data/vendor/local/share/man/man3/ngettext.3 +0 -60
- data/vendor/local/share/man/man3/textdomain.3 +0 -57
- data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +0 -10423
- data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +0 -457
- data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.log +0 -2867
- data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.sh +0 -64
@@ -1,136 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
5
|
-
<title>Exporting a C API</title>
|
6
|
-
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
|
7
|
-
<link rel="home" href="index.html" title="GObject Reference Manual">
|
8
|
-
<link rel="up" href="chapter-intro.html" title="Background">
|
9
|
-
<link rel="prev" href="chapter-intro.html" title="Background">
|
10
|
-
<link rel="next" href="chapter-gtype.html" title="The GLib Dynamic Type System">
|
11
|
-
<meta name="generator" content="GTK-Doc V1.15.1 (XML mode)">
|
12
|
-
<link rel="stylesheet" href="style.css" type="text/css">
|
13
|
-
</head>
|
14
|
-
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
15
|
-
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
|
16
|
-
<td><a accesskey="p" href="chapter-intro.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
|
17
|
-
<td><a accesskey="u" href="chapter-intro.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
|
18
|
-
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
|
19
|
-
<th width="100%" align="center">GObject Reference Manual</th>
|
20
|
-
<td><a accesskey="n" href="chapter-gtype.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
|
21
|
-
</tr></table>
|
22
|
-
<div class="sect1">
|
23
|
-
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
24
|
-
<a name="id353634"></a>Exporting a C API</h2></div></div></div>
|
25
|
-
<p>
|
26
|
-
C APIs are defined by a set of functions and global variables which are usually exported from a
|
27
|
-
binary. C functions have an arbitrary number of arguments and one return value. Each function is thus
|
28
|
-
uniquely identified by the function name and the set of C types which describe the function arguments
|
29
|
-
and return value. The global variables exported by the API are similarly identified by their name and
|
30
|
-
their type.
|
31
|
-
</p>
|
32
|
-
<p>
|
33
|
-
A C API is thus merely defined by a set of names to which a set of types are associated. If you know the
|
34
|
-
function calling convention and the mapping of the C types to the machine types used by the platform you
|
35
|
-
are on, you can resolve the name of each function to find where the code associated to this function
|
36
|
-
is located in memory, and then construct a valid argument list for the function. Finally, all you have to
|
37
|
-
do is trigger a call to the target C function with the argument list.
|
38
|
-
</p>
|
39
|
-
<p>
|
40
|
-
For the sake of discussion, here is a sample C function and the associated 32 bit x86
|
41
|
-
assembly code generated by GCC on my Linux box:
|
42
|
-
</p>
|
43
|
-
<pre class="programlisting">
|
44
|
-
static void function_foo (int foo)
|
45
|
-
{}
|
46
|
-
|
47
|
-
int main (int argc, char *argv[])
|
48
|
-
{
|
49
|
-
|
50
|
-
function_foo (10);
|
51
|
-
|
52
|
-
return 0;
|
53
|
-
}
|
54
|
-
|
55
|
-
push $0xa
|
56
|
-
call 0x80482f4 <function_foo>
|
57
|
-
</pre>
|
58
|
-
<p>
|
59
|
-
The assembly code shown above is pretty straightforward: the first instruction pushes
|
60
|
-
the hexadecimal value 0xa (decimal value 10) as a 32-bit integer on the stack and calls
|
61
|
-
<code class="function">function_foo</code>. As you can see, C function calls are implemented by
|
62
|
-
gcc by native function calls (this is probably the fastest implementation possible).
|
63
|
-
</p>
|
64
|
-
<p>
|
65
|
-
Now, let's say we want to call the C function <code class="function">function_foo</code> from
|
66
|
-
a Python program. To do this, the Python interpreter needs to:
|
67
|
-
</p>
|
68
|
-
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
|
69
|
-
<li class="listitem"><p>Find where the function is located. This probably means finding the binary generated by the C compiler
|
70
|
-
which exports this function.</p></li>
|
71
|
-
<li class="listitem"><p>Load the code of the function in executable memory.</p></li>
|
72
|
-
<li class="listitem"><p>Convert the Python parameters to C-compatible parameters before calling
|
73
|
-
the function.</p></li>
|
74
|
-
<li class="listitem"><p>Call the function with the right calling convention.</p></li>
|
75
|
-
<li class="listitem"><p>Convert the return values of the C function to Python-compatible
|
76
|
-
variables to return them to the Python code.</p></li>
|
77
|
-
</ul></div>
|
78
|
-
<p>
|
79
|
-
</p>
|
80
|
-
<p>
|
81
|
-
The process described above is pretty complex and there are a lot of ways to make it entirely automatic
|
82
|
-
and transparent to C and Python programmers:
|
83
|
-
</p>
|
84
|
-
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
|
85
|
-
<li class="listitem"><p>The first solution is to write by hand a lot of glue code, once for each function exported or imported,
|
86
|
-
which does the Python-to-C parameter conversion and the C-to-Python return value conversion. This glue code is then
|
87
|
-
linked with the interpreter which allows Python programs to call Python functions which delegate work to
|
88
|
-
C functions.</p></li>
|
89
|
-
<li class="listitem"><p>Another, nicer solution is to automatically generate the glue code, once for each function exported or
|
90
|
-
imported, with a special compiler which
|
91
|
-
reads the original function signature.</p></li>
|
92
|
-
<li class="listitem"><p>The solution used by GLib is to use the GType library which holds at runtime a description of
|
93
|
-
all the objects manipulated by the programmer. This so-called <span class="emphasis"><em>dynamic type</em></span>
|
94
|
-
<sup>[<a name="id353740" href="#ftn.id353740" class="footnote">1</a>]</sup>
|
95
|
-
library is then used by special generic glue code to automatically convert function parameters and
|
96
|
-
function calling conventions between different runtime domains.</p></li>
|
97
|
-
</ul></div>
|
98
|
-
<p>
|
99
|
-
The greatest advantage of the solution implemented by GType is that the glue code sitting at the runtime domain
|
100
|
-
boundaries is written once: the figure below states this more clearly.
|
101
|
-
</p>
|
102
|
-
<div class="figure">
|
103
|
-
<a name="id353758"></a><p class="title"><b>Figure 1. </b></p>
|
104
|
-
<div class="figure-contents"><div class="mediaobject" align="center"><img src="glue.png" align="middle"></div></div>
|
105
|
-
</div>
|
106
|
-
<p><br class="figure-break">
|
107
|
-
|
108
|
-
Currently, there exist at least Python and Perl generic glue code which makes it possible to use
|
109
|
-
C objects written with GType directly in Python or Perl, with a minimum amount of work: there
|
110
|
-
is no need to generate huge amounts of glue code either automatically or by hand.
|
111
|
-
</p>
|
112
|
-
<p>
|
113
|
-
Although that goal was arguably laudable, its pursuit has had a major influence on
|
114
|
-
the whole GType/GObject library. C programmers are likely to be puzzled at the complexity
|
115
|
-
of the features exposed in the following chapters if they forget that the GType/GObject library
|
116
|
-
was not only designed to offer OO-like features to C programmers but also transparent
|
117
|
-
cross-language interoperability.
|
118
|
-
</p>
|
119
|
-
<div class="footnotes">
|
120
|
-
<br><hr width="100" align="left">
|
121
|
-
<div class="footnote"><p><sup>[<a name="ftn.id353740" href="#id353740" class="para">1</a>] </sup>
|
122
|
-
There are numerous different implementations of dynamic type systems: all C++
|
123
|
-
compilers have one, Java and .NET have one too. A dynamic type system allows you
|
124
|
-
to get information about every instantiated object at runtime. It can be implemented
|
125
|
-
by a process-specific database: every new object created registers the characteristics
|
126
|
-
of its associated type in the type system. It can also be implemented by introspection
|
127
|
-
interfaces. The common point between all these different type systems and implementations
|
128
|
-
is that they all allow you to query for object metadata at runtime.
|
129
|
-
</p></div>
|
130
|
-
</div>
|
131
|
-
</div>
|
132
|
-
<div class="footer">
|
133
|
-
<hr>
|
134
|
-
Generated by GTK-Doc V1.15.1</div>
|
135
|
-
</body>
|
136
|
-
</html>
|
@@ -1,113 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
5
|
-
<title>Interface definition prerequisites</title>
|
6
|
-
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
|
7
|
-
<link rel="home" href="index.html" title="GObject Reference Manual">
|
8
|
-
<link rel="up" href="howto-interface.html" title="How to define and implement interfaces">
|
9
|
-
<link rel="prev" href="howto-interface-implement.html" title="How To define implement an Interface?">
|
10
|
-
<link rel="next" href="howto-interface-properties.html" title="Interface Properties">
|
11
|
-
<meta name="generator" content="GTK-Doc V1.15.1 (XML mode)">
|
12
|
-
<link rel="stylesheet" href="style.css" type="text/css">
|
13
|
-
</head>
|
14
|
-
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
15
|
-
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
|
16
|
-
<td><a accesskey="p" href="howto-interface-implement.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
|
17
|
-
<td><a accesskey="u" href="howto-interface.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
|
18
|
-
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
|
19
|
-
<th width="100%" align="center">GObject Reference Manual</th>
|
20
|
-
<td><a accesskey="n" href="howto-interface-properties.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
|
21
|
-
</tr></table>
|
22
|
-
<div class="sect1">
|
23
|
-
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
24
|
-
<a name="id471594"></a>Interface definition prerequisites</h2></div></div></div>
|
25
|
-
<p>
|
26
|
-
To specify that an interface requires the presence of other interfaces
|
27
|
-
when implemented, GObject introduces the concept of
|
28
|
-
<span class="emphasis"><em>prerequisites</em></span>: it is possible to associate
|
29
|
-
a list of prerequisite interfaces to an interface. For example, if
|
30
|
-
object A wishes to implement interface I1, and if interface I1 has a
|
31
|
-
prerequisite on interface I2, A has to implement both I1 and I2.
|
32
|
-
</p>
|
33
|
-
<p>
|
34
|
-
The mechanism described above is, in practice, very similar to
|
35
|
-
Java's interface I1 extends interface I2. The example below shows
|
36
|
-
the GObject equivalent:
|
37
|
-
</p>
|
38
|
-
<pre class="programlisting">
|
39
|
-
/* inside the GType function of the MamanIbar interface */
|
40
|
-
type = g_type_register_static (G_TYPE_INTERFACE, "MamanIbar", &info, 0);
|
41
|
-
|
42
|
-
/* Make the MamanIbar interface require MamanIbaz interface. */
|
43
|
-
g_type_interface_add_prerequisite (type, MAMAN_TYPE_IBAZ);
|
44
|
-
</pre>
|
45
|
-
<p>
|
46
|
-
The code shown above adds the MamanIbaz interface to the list of
|
47
|
-
prerequisites of MamanIbar while the code below shows how an
|
48
|
-
implementation can implement both interfaces and register their
|
49
|
-
implementations:
|
50
|
-
</p>
|
51
|
-
<pre class="programlisting">
|
52
|
-
static void
|
53
|
-
maman_ibar_do_another_action (MamanIbar *ibar)
|
54
|
-
{
|
55
|
-
MamanBar *self = MAMAN_BAR (ibar);
|
56
|
-
|
57
|
-
g_print ("Bar implementation of IBar interface Another Action: 0x%x.\n",
|
58
|
-
self->instance_member);
|
59
|
-
}
|
60
|
-
|
61
|
-
static void
|
62
|
-
maman_ibar_interface_init (MamanIbarInterface *iface)
|
63
|
-
{
|
64
|
-
iface->do_another_action = maman_ibar_do_another_action;
|
65
|
-
}
|
66
|
-
|
67
|
-
static void
|
68
|
-
maman_ibaz_do_action (MamanIbaz *ibaz)
|
69
|
-
{
|
70
|
-
MamanBar *self = MAMAN_BAR (ibaz);
|
71
|
-
|
72
|
-
g_print ("Bar implementation of IBaz interface Action: 0x%x.\n",
|
73
|
-
self->instance_member);
|
74
|
-
}
|
75
|
-
|
76
|
-
static void
|
77
|
-
maman_ibaz_interface_init (MamanIbazInterface *iface)
|
78
|
-
{
|
79
|
-
iface->do_action = maman_ibaz_do_action;
|
80
|
-
}
|
81
|
-
|
82
|
-
static void
|
83
|
-
maman_bar_class_init (MamanBarClass *klass)
|
84
|
-
{
|
85
|
-
|
86
|
-
}
|
87
|
-
|
88
|
-
static void
|
89
|
-
maman_bar_init (MamanBar *self)
|
90
|
-
{
|
91
|
-
self->instance_member = 0x666;
|
92
|
-
}
|
93
|
-
|
94
|
-
G_DEFINE_TYPE_WITH_CODE (MamanBar, maman_bar, G_TYPE_OBJECT,
|
95
|
-
G_IMPLEMENT_INTERFACE (MAMAN_TYPE_IBAZ,
|
96
|
-
maman_ibaz_interface_init)
|
97
|
-
G_IMPLEMENT_INTERFACE (MAMAN_TYPE_IBAR,
|
98
|
-
maman_ibar_interface_init));
|
99
|
-
</pre>
|
100
|
-
<p>
|
101
|
-
It is very important to notice that the order in which interface
|
102
|
-
implementations are added to the main object is not random:
|
103
|
-
<code class="function"><a class="link" href="gobject-Type-Information.html#g-type-add-interface-static" title="g_type_add_interface_static ()">g_type_add_interface_static</a></code>,
|
104
|
-
which is called by <code class="function">G_IMPLEMENT_INTERFACE</code>, must be
|
105
|
-
invoked first on the interfaces which have no prerequisites and then on
|
106
|
-
the others.
|
107
|
-
</p>
|
108
|
-
</div>
|
109
|
-
<div class="footer">
|
110
|
-
<hr>
|
111
|
-
Generated by GTK-Doc V1.15.1</div>
|
112
|
-
</body>
|
113
|
-
</html>
|
@@ -1,293 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
5
|
-
<title>The GObject base class</title>
|
6
|
-
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
|
7
|
-
<link rel="home" href="index.html" title="GObject Reference Manual">
|
8
|
-
<link rel="up" href="pt01.html" title="Part I. Concepts">
|
9
|
-
<link rel="prev" href="gtype-non-instantiable-classed.html" title="Non-instantiable classed types: interfaces">
|
10
|
-
<link rel="next" href="gobject-memory.html" title="Object memory management">
|
11
|
-
<meta name="generator" content="GTK-Doc V1.15.1 (XML mode)">
|
12
|
-
<link rel="stylesheet" href="style.css" type="text/css">
|
13
|
-
</head>
|
14
|
-
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
15
|
-
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
|
16
|
-
<td><a accesskey="p" href="gtype-non-instantiable-classed.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
|
17
|
-
<td><a accesskey="u" href="pt01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
|
18
|
-
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
|
19
|
-
<th width="100%" align="center">GObject Reference Manual</th>
|
20
|
-
<td><a accesskey="n" href="gobject-memory.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
|
21
|
-
</tr></table>
|
22
|
-
<div class="chapter">
|
23
|
-
<div class="titlepage"><div><div><h2 class="title">
|
24
|
-
<a name="chapter-gobject"></a>The GObject base class</h2></div></div></div>
|
25
|
-
<div class="toc"><dl>
|
26
|
-
<dt><span class="sect1"><a href="chapter-gobject.html#gobject-instantiation">Object instantiation</a></span></dt>
|
27
|
-
<dt><span class="sect1"><a href="gobject-memory.html">Object memory management</a></span></dt>
|
28
|
-
<dd><dl>
|
29
|
-
<dt><span class="sect2"><a href="gobject-memory.html#gobject-memory-refcount">Reference count</a></span></dt>
|
30
|
-
<dt><span class="sect2"><a href="gobject-memory.html#gobject-memory-weakref">Weak References</a></span></dt>
|
31
|
-
<dt><span class="sect2"><a href="gobject-memory.html#gobject-memory-cycles">Reference counts and cycles</a></span></dt>
|
32
|
-
</dl></dd>
|
33
|
-
<dt><span class="sect1"><a href="gobject-properties.html">Object properties</a></span></dt>
|
34
|
-
<dd><dl><dt><span class="sect2"><a href="gobject-properties.html#gobject-multi-properties">Accessing multiple properties at once</a></span></dt></dl></dd>
|
35
|
-
</dl></div>
|
36
|
-
<p>
|
37
|
-
The two previous chapters discussed the details of GLib's Dynamic Type System
|
38
|
-
and its signal control system. The GObject library also contains an implementation
|
39
|
-
for a base fundamental type named <span class="type"><a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a></span>.
|
40
|
-
</p>
|
41
|
-
<p>
|
42
|
-
<span class="type"><a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a></span> is a fundamental classed instantiable type. It implements:
|
43
|
-
</p>
|
44
|
-
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
|
45
|
-
<li class="listitem"><p>Memory management with reference counting</p></li>
|
46
|
-
<li class="listitem"><p>Construction/Destruction of instances</p></li>
|
47
|
-
<li class="listitem"><p>Generic per-object properties with set/get function pairs</p></li>
|
48
|
-
<li class="listitem"><p>Easy use of signals</p></li>
|
49
|
-
</ul></div>
|
50
|
-
<p>
|
51
|
-
All the GNOME libraries which use the GLib type system (like GTK+ and GStreamer)
|
52
|
-
inherit from <span class="type"><a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a></span> which is why it is important to understand
|
53
|
-
the details of how it works.
|
54
|
-
</p>
|
55
|
-
<div class="sect1">
|
56
|
-
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
57
|
-
<a name="gobject-instantiation"></a>Object instantiation</h2></div></div></div>
|
58
|
-
<p>
|
59
|
-
The <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code>
|
60
|
-
family of functions can be used to instantiate any GType which inherits
|
61
|
-
from the GObject base type. All these functions make sure the class and
|
62
|
-
instance structures have been correctly initialized by GLib's type system
|
63
|
-
and then invoke at one point or another the constructor class method
|
64
|
-
which is used to:
|
65
|
-
</p>
|
66
|
-
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
|
67
|
-
<li class="listitem"><p>
|
68
|
-
Allocate and clear memory through <code class="function"><a class="link" href="gobject-Type-Information.html#g-type-create-instance" title="g_type_create_instance ()">g_type_create_instance</a></code>,
|
69
|
-
</p></li>
|
70
|
-
<li class="listitem"><p>
|
71
|
-
Initialize the object's instance with the construction properties.
|
72
|
-
</p></li>
|
73
|
-
</ul></div>
|
74
|
-
<p>
|
75
|
-
Although one can expect all class and instance members (except the fields
|
76
|
-
pointing to the parents) to be set to zero, some consider it good practice
|
77
|
-
to explicitly set them.
|
78
|
-
</p>
|
79
|
-
<p>
|
80
|
-
Objects which inherit from GObject are allowed to override this
|
81
|
-
constructor class method: they should however chain to their parent
|
82
|
-
constructor method before doing so:
|
83
|
-
</p>
|
84
|
-
<pre class="programlisting">
|
85
|
-
GObject *(* constructor) (GType gtype,
|
86
|
-
guint n_properties,
|
87
|
-
GObjectConstructParam *properties);
|
88
|
-
</pre>
|
89
|
-
<p>
|
90
|
-
</p>
|
91
|
-
<p>
|
92
|
-
The example below shows how <span class="type">MamanBar</span> overrides the parent's constructor:
|
93
|
-
</p>
|
94
|
-
<pre class="programlisting">
|
95
|
-
#define MAMAN_TYPE_BAR (maman_bar_get_type ())
|
96
|
-
#define MAMAN_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MAMAN_TYPE_BAR, MamanBar))
|
97
|
-
#define MAMAN_IS_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MAMAN_TYPE_BAR))
|
98
|
-
#define MAMAN_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MAMAN_TYPE_BAR, MamanBarClass))
|
99
|
-
#define MAMAN_IS_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MAMAN_TYPE_BAR))
|
100
|
-
#define MAMAN_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MAMAN_TYPE_BAR, MamanBarClass))
|
101
|
-
|
102
|
-
typedef struct _MamanBar MamanBar;
|
103
|
-
typedef struct _MamanBarClass MamanBarClass;
|
104
|
-
|
105
|
-
struct _MamanBar
|
106
|
-
{
|
107
|
-
GObject parent_instance;
|
108
|
-
|
109
|
-
/* instance members */
|
110
|
-
};
|
111
|
-
|
112
|
-
struct _MamanBarClass
|
113
|
-
{
|
114
|
-
GObjectClass parent_class;
|
115
|
-
|
116
|
-
/* class members */
|
117
|
-
};
|
118
|
-
|
119
|
-
/* will create maman_bar_get_type and set maman_bar_parent_class */
|
120
|
-
G_DEFINE_TYPE (MamanBar, maman_bar, G_TYPE_OBJECT);
|
121
|
-
|
122
|
-
static GObject *
|
123
|
-
maman_bar_constructor (GType gtype,
|
124
|
-
guint n_properties,
|
125
|
-
GObjectConstructParam *properties)
|
126
|
-
{
|
127
|
-
GObject *obj;
|
128
|
-
|
129
|
-
{
|
130
|
-
/* Always chain up to the parent constructor */
|
131
|
-
MamanBarClass *klass;
|
132
|
-
GObjectClass *parent_class;
|
133
|
-
parent_class = G_OBJECT_CLASS (maman_bar_parent_class);
|
134
|
-
obj = parent_class->constructor (gtype, n_properties, properties);
|
135
|
-
}
|
136
|
-
|
137
|
-
/* update the object state depending on constructor properties */
|
138
|
-
|
139
|
-
return obj;
|
140
|
-
}
|
141
|
-
|
142
|
-
static void
|
143
|
-
maman_bar_class_init (MamanBarClass *klass)
|
144
|
-
{
|
145
|
-
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
|
146
|
-
|
147
|
-
gobject_class->constructor = maman_bar_constructor;
|
148
|
-
}
|
149
|
-
|
150
|
-
static void
|
151
|
-
maman_bar_init (MamanBar *self)
|
152
|
-
{
|
153
|
-
/* initialize the object */
|
154
|
-
}
|
155
|
-
|
156
|
-
</pre>
|
157
|
-
<p>
|
158
|
-
If the user instantiates an object <span class="type">MamanBar</span> with:
|
159
|
-
</p>
|
160
|
-
<pre class="programlisting">
|
161
|
-
MamanBar *bar = g_object_new (MAMAN_TYPE_BAR, NULL);
|
162
|
-
</pre>
|
163
|
-
<p>
|
164
|
-
If this is the first instantiation of such an object, the
|
165
|
-
<code class="function">maman_bar_class_init</code> function will be invoked
|
166
|
-
after any <code class="function">maman_bar_base_class_init</code> function.
|
167
|
-
This will make sure the class structure of this new object is
|
168
|
-
correctly initialized. Here, <code class="function">maman_bar_class_init</code>
|
169
|
-
is expected to override the object's class methods and setup the
|
170
|
-
class' own methods. In the example above, the constructor method is
|
171
|
-
the only overridden method: it is set to
|
172
|
-
<code class="function">maman_bar_constructor</code>.
|
173
|
-
</p>
|
174
|
-
<p>
|
175
|
-
Once <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code> has obtained a reference to an initialized
|
176
|
-
class structure, it invokes its constructor method to create an instance of the new
|
177
|
-
object. Since it has just been overridden by <code class="function">maman_bar_class_init</code>
|
178
|
-
to <code class="function">maman_bar_constructor</code>, the latter is called and, because it
|
179
|
-
was implemented correctly, it chains up to its parent's constructor. In
|
180
|
-
order to find the parent class and chain up to the parent class
|
181
|
-
constructor, we can use the <code class="literal">maman_bar_parent_class</code>
|
182
|
-
pointer that has been set up for us by the
|
183
|
-
<code class="literal">G_DEFINE_TYPE</code> macro.
|
184
|
-
</p>
|
185
|
-
<p>
|
186
|
-
Finally, at one point or another, <code class="function">g_object_constructor</code> is invoked
|
187
|
-
by the last constructor in the chain. This function allocates the object's instance' buffer
|
188
|
-
through <code class="function"><a class="link" href="gobject-Type-Information.html#g-type-create-instance" title="g_type_create_instance ()">g_type_create_instance</a></code>
|
189
|
-
which means that the instance_init function is invoked at this point if one
|
190
|
-
was registered. After instance_init returns, the object is fully initialized and should be
|
191
|
-
ready to answer any user-request. When <code class="function"><a class="link" href="gobject-Type-Information.html#g-type-create-instance" title="g_type_create_instance ()">g_type_create_instance</a></code>
|
192
|
-
returns, <code class="function">g_object_constructor</code> sets the construction properties
|
193
|
-
(i.e. the properties which were given to <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code>) and returns
|
194
|
-
to the user's constructor which is then allowed to do useful instance initialization...
|
195
|
-
</p>
|
196
|
-
<p>
|
197
|
-
The process described above might seem a bit complicated, but it can be
|
198
|
-
summarized easily by the table below which lists the functions invoked
|
199
|
-
by <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code>
|
200
|
-
and their order of invocation:
|
201
|
-
</p>
|
202
|
-
<p>
|
203
|
-
</p>
|
204
|
-
<div class="table">
|
205
|
-
<a name="gobject-construction-table"></a><p class="title"><b>Table 4. <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code></b></p>
|
206
|
-
<div class="table-contents"><table summary="g_object_new" border="1">
|
207
|
-
<colgroup>
|
208
|
-
<col align="left">
|
209
|
-
<col align="left">
|
210
|
-
<col align="left">
|
211
|
-
</colgroup>
|
212
|
-
<thead><tr>
|
213
|
-
<th align="left">Invocation time</th>
|
214
|
-
<th align="left">Function Invoked</th>
|
215
|
-
<th align="left">Function's parameters</th>
|
216
|
-
<th>Remark</th>
|
217
|
-
</tr></thead>
|
218
|
-
<tbody>
|
219
|
-
<tr>
|
220
|
-
<td rowspan="4" align="left">First call to <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code> for target type</td>
|
221
|
-
<td align="left">target type's base_init function</td>
|
222
|
-
<td align="left">On the inheritance tree of classes from fundamental type to target type.
|
223
|
-
base_init is invoked once for each class structure.</td>
|
224
|
-
<td>
|
225
|
-
I have no real idea on how this can be used. If you have a good real-life
|
226
|
-
example of how a class' base_init can be used, please, let me know.
|
227
|
-
</td>
|
228
|
-
</tr>
|
229
|
-
<tr>
|
230
|
-
<td align="left">target type's class_init function</td>
|
231
|
-
<td align="left">On target type's class structure</td>
|
232
|
-
<td>
|
233
|
-
Here, you should make sure to initialize or override class methods (that is,
|
234
|
-
assign to each class' method its function pointer) and create the signals and
|
235
|
-
the properties associated to your object.
|
236
|
-
</td>
|
237
|
-
</tr>
|
238
|
-
<tr>
|
239
|
-
<td align="left">interface' base_init function</td>
|
240
|
-
<td align="left">On interface' vtable</td>
|
241
|
-
<td> </td>
|
242
|
-
</tr>
|
243
|
-
<tr>
|
244
|
-
<td align="left">interface' interface_init function</td>
|
245
|
-
<td align="left">On interface' vtable</td>
|
246
|
-
<td> </td>
|
247
|
-
</tr>
|
248
|
-
<tr>
|
249
|
-
<td rowspan="2" align="left">Each call to <code class="function"><a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a></code> for target type</td>
|
250
|
-
<td align="left">target type's class constructor method: GObjectClass->constructor</td>
|
251
|
-
<td align="left">On object's instance</td>
|
252
|
-
<td>
|
253
|
-
If you need to complete the object initialization after all the construction properties
|
254
|
-
are set, override the constructor method and make sure to chain up to the object's
|
255
|
-
parent class before doing your own initialization.
|
256
|
-
In doubt, do not override the constructor method.
|
257
|
-
</td>
|
258
|
-
</tr>
|
259
|
-
<tr>
|
260
|
-
<td align="left">type's instance_init function</td>
|
261
|
-
<td align="left">On the inheritance tree of classes from fundamental type to target type.
|
262
|
-
the instance_init provided for each type is invoked once for each instance
|
263
|
-
structure.</td>
|
264
|
-
<td>
|
265
|
-
Provide an instance_init function to initialize your object before its construction
|
266
|
-
properties are set. This is the preferred way to initialize a GObject instance.
|
267
|
-
This function is equivalent to C++ constructors.
|
268
|
-
</td>
|
269
|
-
</tr>
|
270
|
-
</tbody>
|
271
|
-
</table></div>
|
272
|
-
</div>
|
273
|
-
<p><br class="table-break">
|
274
|
-
</p>
|
275
|
-
<p>
|
276
|
-
Readers should feel concerned about one little twist in the order in
|
277
|
-
which functions are invoked: while, technically, the class' constructor
|
278
|
-
method is called <span class="emphasis"><em>before</em></span> the GType's instance_init
|
279
|
-
function (since <code class="function"><a class="link" href="gobject-Type-Information.html#g-type-create-instance" title="g_type_create_instance ()">g_type_create_instance</a></code> which calls instance_init is called by
|
280
|
-
<code class="function">g_object_constructor</code> which is the top-level class
|
281
|
-
constructor method and to which users are expected to chain to), the
|
282
|
-
user's code which runs in a user-provided constructor will always
|
283
|
-
run <span class="emphasis"><em>after</em></span> GType's instance_init function since the
|
284
|
-
user-provided constructor <span class="emphasis"><em>must</em></span> (you've been warned)
|
285
|
-
chain up <span class="emphasis"><em>before</em></span> doing anything useful.
|
286
|
-
</p>
|
287
|
-
</div>
|
288
|
-
</div>
|
289
|
-
<div class="footer">
|
290
|
-
<hr>
|
291
|
-
Generated by GTK-Doc V1.15.1</div>
|
292
|
-
</body>
|
293
|
-
</html>
|