gio2 0.90.3-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +60 -0
- data/README +34 -0
- data/Rakefile +76 -0
- data/ext/gio2/depend +5 -0
- data/ext/gio2/extconf.rb +91 -0
- data/ext/gio2/gappinfo.c +318 -0
- data/ext/gio2/gapplaunchcontext.c +79 -0
- data/ext/gio2/gasyncinitable.c +244 -0
- data/ext/gio2/gasyncresult.c +39 -0
- data/ext/gio2/gbufferedinputstream.c +184 -0
- data/ext/gio2/gbufferedoutputstream.c +82 -0
- data/ext/gio2/gcancellable.c +177 -0
- data/ext/gio2/gcharsetconverter.c +72 -0
- data/ext/gio2/gcontenttype.c +135 -0
- data/ext/gio2/gconverter.c +117 -0
- data/ext/gio2/gconverterinputstream.c +48 -0
- data/ext/gio2/gconverteroutputstream.c +48 -0
- data/ext/gio2/gdatainputstream.c +341 -0
- data/ext/gio2/gdataoutputstream.c +202 -0
- data/ext/gio2/gdesktopappinfo.c +90 -0
- data/ext/gio2/gdrive.c +267 -0
- data/ext/gio2/gemblem.c +71 -0
- data/ext/gio2/gemblemedicon.c +63 -0
- data/ext/gio2/gfile.c +2058 -0
- data/ext/gio2/gfileattribute.c +263 -0
- data/ext/gio2/gfileattributematcher.c +90 -0
- data/ext/gio2/gfiledescriptorbased.c +42 -0
- data/ext/gio2/gfileenumerator.c +167 -0
- data/ext/gio2/gfileicon.c +46 -0
- data/ext/gio2/gfileinfo.c +641 -0
- data/ext/gio2/gfileinputstream.c +92 -0
- data/ext/gio2/gfileiostream.c +98 -0
- data/ext/gio2/gfilemonitor.c +63 -0
- data/ext/gio2/gfilenamecompleter.c +72 -0
- data/ext/gio2/gfileoutputstream.c +100 -0
- data/ext/gio2/gfilterinputstream.c +56 -0
- data/ext/gio2/gfilteroutputstream.c +56 -0
- data/ext/gio2/gicon.c +69 -0
- data/ext/gio2/ginetaddress.c +188 -0
- data/ext/gio2/ginetsocketaddress.c +54 -0
- data/ext/gio2/ginitable.c +195 -0
- data/ext/gio2/ginputstream.c +341 -0
- data/ext/gio2/gio2.c +120 -0
- data/ext/gio2/gio2.def +2 -0
- data/ext/gio2/gio2.h +343 -0
- data/ext/gio2/gioerror.c +67 -0
- data/ext/gio2/giomodule.c +63 -0
- data/ext/gio2/gioscheduler.c +195 -0
- data/ext/gio2/giostream.c +129 -0
- data/ext/gio2/gloadableicon.c +91 -0
- data/ext/gio2/gmemoryinputstream.c +65 -0
- data/ext/gio2/gmemoryoutputstream.c +65 -0
- data/ext/gio2/gmount.c +283 -0
- data/ext/gio2/gmountoperation.c +168 -0
- data/ext/gio2/gnetworkaddress.c +71 -0
- data/ext/gio2/gnetworkservice.c +64 -0
- data/ext/gio2/goutputstream.c +343 -0
- data/ext/gio2/gresolver.c +230 -0
- data/ext/gio2/gseekable.c +89 -0
- data/ext/gio2/gsimpleasyncresult.c +153 -0
- data/ext/gio2/gsocket.c +451 -0
- data/ext/gio2/gsocketaddress.c +45 -0
- data/ext/gio2/gsocketclient.c +273 -0
- data/ext/gio2/gsocketconnectable.c +97 -0
- data/ext/gio2/gsocketconnection.c +82 -0
- data/ext/gio2/gsocketcontrolmessage.c +82 -0
- data/ext/gio2/gsocketlistener.c +239 -0
- data/ext/gio2/gsocketservice.c +64 -0
- data/ext/gio2/gsrvtarget.c +77 -0
- data/ext/gio2/gtcpconnection.c +48 -0
- data/ext/gio2/gthemedicon.c +86 -0
- data/ext/gio2/gthreadedsocketservice.c +39 -0
- data/ext/gio2/gunixconnection.c +69 -0
- data/ext/gio2/gunixfdlist.c +112 -0
- data/ext/gio2/gunixfdmessage.c +81 -0
- data/ext/gio2/gunixinputstream.c +73 -0
- data/ext/gio2/gunixmounts.c +346 -0
- data/ext/gio2/gunixoutputstream.c +73 -0
- data/ext/gio2/gunixsocketaddress.c +79 -0
- data/ext/gio2/gvfs.c +84 -0
- data/ext/gio2/gvolume.c +191 -0
- data/ext/gio2/gvolumemonitor.c +77 -0
- data/ext/gio2/gzlibcompressor.c +47 -0
- data/ext/gio2/gzlibdecompressor.c +43 -0
- data/ext/gio2/util.c +323 -0
- data/extconf.rb +49 -0
- data/lib/1.8/gio2.so +0 -0
- data/lib/1.9/gio2.so +0 -0
- data/lib/gio2.rb +141 -0
- data/vendor/local/bin/envsubst.exe +0 -0
- data/vendor/local/bin/gettext.exe +0 -0
- data/vendor/local/bin/gettext.sh +123 -0
- data/vendor/local/bin/glib-genmarshal.exe +0 -0
- data/vendor/local/bin/glib-gettextize +188 -0
- data/vendor/local/bin/glib-mkenums +537 -0
- 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 +66 -0
- data/vendor/local/include/glib-2.0/gio/gappinfo.h +236 -0
- data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
- data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
- data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
- data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +81 -0
- data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
- data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
- data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
- data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
- data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +79 -0
- data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +79 -0
- data/vendor/local/include/glib-2.0/gio/gcredentials.h +76 -0
- data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +150 -0
- data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +115 -0
- data/vendor/local/include/glib-2.0/gio/gdbusaddress.h +58 -0
- data/vendor/local/include/glib-2.0/gio/gdbusauthobserver.h +46 -0
- data/vendor/local/include/glib-2.0/gio/gdbusconnection.h +562 -0
- data/vendor/local/include/glib-2.0/gio/gdbuserror.h +100 -0
- data/vendor/local/include/glib-2.0/gio/gdbusintrospection.h +286 -0
- data/vendor/local/include/glib-2.0/gio/gdbusmessage.h +149 -0
- data/vendor/local/include/glib-2.0/gio/gdbusmethodinvocation.h +73 -0
- data/vendor/local/include/glib-2.0/gio/gdbusnameowning.h +112 -0
- data/vendor/local/include/glib-2.0/gio/gdbusnamewatching.h +94 -0
- data/vendor/local/include/glib-2.0/gio/gdbusproxy.h +167 -0
- data/vendor/local/include/glib-2.0/gio/gdbusserver.h +54 -0
- data/vendor/local/include/glib-2.0/gio/gdbusutils.h +44 -0
- data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
- data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
- data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
- data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
- data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
- data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +132 -0
- data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
- data/vendor/local/include/glib-2.0/gio/gfileinfo.h +952 -0
- data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
- data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
- data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
- data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
- data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
- data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
- data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
- data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
- data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
- data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
- data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
- data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
- data/vendor/local/include/glib-2.0/gio/gio.h +122 -0
- data/vendor/local/include/glib-2.0/gio/gioenums.h +1221 -0
- data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +121 -0
- data/vendor/local/include/glib-2.0/gio/gioerror.h +52 -0
- data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
- data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
- data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
- data/vendor/local/include/glib-2.0/gio/giotypes.h +375 -0
- data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
- data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
- data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +98 -0
- data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
- data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
- data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
- data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +73 -0
- data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +71 -0
- data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
- data/vendor/local/include/glib-2.0/gio/gpermission.h +118 -0
- data/vendor/local/include/glib-2.0/gio/gproxy.h +123 -0
- data/vendor/local/include/glib-2.0/gio/gproxyaddress.h +76 -0
- data/vendor/local/include/glib-2.0/gio/gproxyaddressenumerator.h +75 -0
- data/vendor/local/include/glib-2.0/gio/gproxyresolver.h +96 -0
- data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
- data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
- data/vendor/local/include/glib-2.0/gio/gsettings.h +258 -0
- data/vendor/local/include/glib-2.0/gio/gsettingsbackend.h +138 -0
- data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
- data/vendor/local/include/glib-2.0/gio/gsimplepermission.h +45 -0
- data/vendor/local/include/glib-2.0/gio/gsocket.h +194 -0
- data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
- data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
- data/vendor/local/include/glib-2.0/gio/gsocketclient.h +152 -0
- data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +74 -0
- data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
- data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
- data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
- data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
- data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
- data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
- data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
- data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
- data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
- data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
- data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +150 -0
- data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +60 -0
- data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +57 -0
- data/vendor/local/include/glib-2.0/glib-object.h +42 -0
- data/vendor/local/include/glib-2.0/glib.h +99 -0
- data/vendor/local/include/glib-2.0/glib/galloca.h +110 -0
- data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
- data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
- data/vendor/local/include/glib-2.0/glib/gatomic.h +105 -0
- data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
- data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
- data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
- data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +215 -0
- data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
- data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
- data/vendor/local/include/glib-2.0/glib/gcompletion.h +81 -0
- data/vendor/local/include/glib-2.0/glib/gconvert.h +162 -0
- data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
- data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
- data/vendor/local/include/glib-2.0/glib/gdatetime.h +217 -0
- data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
- data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
- data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
- data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
- data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
- data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
- data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
- data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
- data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
- data/vendor/local/include/glib-2.0/glib/gkeyfile.h +266 -0
- data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
- data/vendor/local/include/glib-2.0/glib/gmacros.h +284 -0
- data/vendor/local/include/glib-2.0/glib/gmain.h +531 -0
- data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
- data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
- data/vendor/local/include/glib-2.0/glib/gmem.h +309 -0
- data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
- data/vendor/local/include/glib-2.0/glib/gnode.h +290 -0
- data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
- data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
- data/vendor/local/include/glib-2.0/glib/gpoll.h +117 -0
- data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
- data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
- data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
- data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
- data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
- data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
- data/vendor/local/include/glib-2.0/glib/gregex.h +471 -0
- data/vendor/local/include/glib-2.0/glib/grel.h +101 -0
- data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
- data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
- data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
- data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
- data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
- data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
- data/vendor/local/include/glib-2.0/glib/gstdio.h +147 -0
- data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +269 -0
- data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
- data/vendor/local/include/glib-2.0/glib/gtestutils.h +297 -0
- data/vendor/local/include/glib-2.0/glib/gthread.h +407 -0
- data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
- data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
- data/vendor/local/include/glib-2.0/glib/gtimezone.h +44 -0
- data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
- data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
- data/vendor/local/include/glib-2.0/glib/gunicode.h +421 -0
- data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
- data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
- data/vendor/local/include/glib-2.0/glib/gvariant.h +248 -0
- data/vendor/local/include/glib-2.0/glib/gvarianttype.h +334 -0
- data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
- data/vendor/local/include/glib-2.0/gmodule.h +101 -0
- data/vendor/local/include/glib-2.0/gobject/gbinding.h +136 -0
- data/vendor/local/include/glib-2.0/gobject/gboxed.h +248 -0
- data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
- data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
- data/vendor/local/include/glib-2.0/gobject/gmarshal.h +186 -0
- data/vendor/local/include/glib-2.0/gobject/gobject.h +567 -0
- data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +193 -0
- data/vendor/local/include/glib-2.0/gobject/gparam.h +415 -0
- data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1137 -0
- data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
- data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
- data/vendor/local/include/glib-2.0/gobject/gtype.h +1736 -0
- data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
- data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
- data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
- data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
- data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +227 -0
- data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +260 -0
- data/vendor/local/include/libintl.h +464 -0
- data/vendor/local/lib/GNU.Gettext.dll +0 -0
- data/vendor/local/lib/gio-2.0.def +1143 -0
- data/vendor/local/lib/gio-2.0.lib +0 -0
- data/vendor/local/lib/glib-2.0.def +1452 -0
- data/vendor/local/lib/glib-2.0.lib +0 -0
- data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
- data/vendor/local/lib/gmodule-2.0.def +11 -0
- data/vendor/local/lib/gmodule-2.0.lib +0 -0
- data/vendor/local/lib/gobject-2.0.def +370 -0
- data/vendor/local/lib/gobject-2.0.lib +0 -0
- data/vendor/local/lib/gthread-2.0.def +3 -0
- 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 +31 -0
- data/vendor/local/lib/libintl.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/gio-2.0.pc +15 -0
- data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +11 -0
- data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
- data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
- data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
- data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
- data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
- data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
- data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
- data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
- data/vendor/local/manifest/glib-dev_2.26.0-2_win32.mft +570 -0
- data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
- data/vendor/local/manifest/glib_2.26.0-2_win32.mft +102 -0
- data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
- data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
- data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
- data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
- data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
- data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
- data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
- data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
- data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
- data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
- data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
- data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
- data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
- data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
- data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
- data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
- data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
- data/vendor/local/share/doc/glib-2.26.0/COPYING +482 -0
- data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
- data/vendor/local/share/doc/glib-dev-2.26.0/COPYING +482 -0
- data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
- data/vendor/local/share/glib-2.0/gdb/glib.py +249 -0
- data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
- data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
- data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +279 -0
- data/vendor/local/share/glib-2.0/schemas/gschema.dtd +60 -0
- data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1403 -0
- data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +733 -0
- data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
- data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +563 -0
- data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +291 -0
- data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
- data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
- data/vendor/local/share/gtk-doc/html/gio/GConverter.html +423 -0
- data/vendor/local/share/gtk-doc/html/gio/GCredentials.html +398 -0
- data/vendor/local/share/gtk-doc/html/gio/GDBusAuthObserver.html +254 -0
- data/vendor/local/share/gtk-doc/html/gio/GDBusConnection.html +6211 -0
- data/vendor/local/share/gtk-doc/html/gio/GDBusMessage.html +1833 -0
- data/vendor/local/share/gtk-doc/html/gio/GDBusMethodInvocation.html +618 -0
- data/vendor/local/share/gtk-doc/html/gio/GDBusProxy.html +2050 -0
- data/vendor/local/share/gtk-doc/html/gio/GDBusServer.html +1124 -0
- data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +1215 -0
- data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +540 -0
- data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
- data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
- data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
- data/vendor/local/share/gtk-doc/html/gio/GFile.html +7462 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +120 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +516 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3144 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
- data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
- data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
- data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +188 -0
- data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +189 -0
- data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
- data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
- data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
- data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
- data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +196 -0
- data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
- data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
- data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
- data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
- data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +393 -0
- data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
- data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
- data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +343 -0
- data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +311 -0
- data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1012 -0
- data/vendor/local/share/gtk-doc/html/gio/GPermission.html +560 -0
- data/vendor/local/share/gtk-doc/html/gio/GProxy.html +312 -0
- data/vendor/local/share/gtk-doc/html/gio/GProxyAddress.html +348 -0
- data/vendor/local/share/gtk-doc/html/gio/GProxyResolver.html +301 -0
- data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
- data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
- data/vendor/local/share/gtk-doc/html/gio/GSettings.html +2424 -0
- data/vendor/local/share/gtk-doc/html/gio/GSettingsBackend.html +609 -0
- data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +1193 -0
- data/vendor/local/share/gtk-doc/html/gio/GSimplePermission.html +107 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2438 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +1292 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +513 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +337 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +275 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +745 -0
- data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
- data/vendor/local/share/gtk-doc/html/gio/GTcpConnection.html +165 -0
- data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
- data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixConnection.html +298 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixCredentialsMessage.html +222 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +389 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +288 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
- data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +491 -0
- data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
- data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
- data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +705 -0
- data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +252 -0
- data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +170 -0
- data/vendor/local/share/gtk-doc/html/gio/annotation-glossary.html +65 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1084 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +223 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-2-26.html +1598 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +112 -0
- data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +6250 -0
- data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
- data/vendor/local/share/gtk-doc/html/gio/ch01.html +207 -0
- data/vendor/local/share/gtk-doc/html/gio/ch02.html +50 -0
- data/vendor/local/share/gtk-doc/html/gio/ch03.html +180 -0
- data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
- data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
- data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
- data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
- data/vendor/local/share/gtk-doc/html/gio/ch24.html +75 -0
- data/vendor/local/share/gtk-doc/html/gio/ch25.html +217 -0
- data/vendor/local/share/gtk-doc/html/gio/ch25s02.html +41 -0
- data/vendor/local/share/gtk-doc/html/gio/ch25s03.html +39 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26.html +57 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26s02.html +59 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26s03.html +159 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26s04.html +46 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26s05.html +48 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26s06.html +277 -0
- data/vendor/local/share/gtk-doc/html/gio/ch26s07.html +95 -0
- data/vendor/local/share/gtk-doc/html/gio/ch27.html +70 -0
- data/vendor/local/share/gtk-doc/html/gio/ch27s02.html +130 -0
- data/vendor/local/share/gtk-doc/html/gio/ch27s03.html +202 -0
- data/vendor/local/share/gtk-doc/html/gio/ch27s04.html +96 -0
- data/vendor/local/share/gtk-doc/html/gio/ch27s05.html +823 -0
- data/vendor/local/share/gtk-doc/html/gio/ch27s06.html +828 -0
- data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
- data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +109 -0
- data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
- data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
- data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
- data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
- data/vendor/local/share/gtk-doc/html/gio/gdbus-convenience.html +41 -0
- data/vendor/local/share/gtk-doc/html/gio/gdbus-lowlevel.html +59 -0
- data/vendor/local/share/gtk-doc/html/gio/gdbus.html +243 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Addresses.html +316 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +1117 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Utilities.html +216 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +473 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +391 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +159 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +159 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GDBusError.html +908 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +933 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +409 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-Owning-Bus-Names.html +736 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +909 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-Watching-Bus-Names.html +666 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +123 -0
- data/vendor/local/share/gtk-doc/html/gio/gio-querymodules.html +53 -0
- data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1736 -0
- data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +2006 -0
- data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +102 -0
- data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +53 -0
- data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
- data/vendor/local/share/gtk-doc/html/gio/index.html +435 -0
- data/vendor/local/share/gtk-doc/html/gio/index.sgml +2513 -0
- data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/migrating.html +62 -0
- data/vendor/local/share/gtk-doc/html/gio/networking.html +69 -0
- data/vendor/local/share/gtk-doc/html/gio/permissions.html +39 -0
- data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
- data/vendor/local/share/gtk-doc/html/gio/pt02.html +390 -0
- data/vendor/local/share/gtk-doc/html/gio/resolver.html +50 -0
- data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/settings.html +38 -0
- data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
- data/vendor/local/share/gtk-doc/html/gio/style.css +265 -0
- data/vendor/local/share/gtk-doc/html/gio/tools.html +44 -0
- data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
- data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
- data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
- data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
- data/vendor/local/share/gtk-doc/html/glib/annotation-glossary.html +77 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +559 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +420 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-26.html +359 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +396 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +417 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +419 -0
- data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +8214 -0
- 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 +893 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +414 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +466 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2056 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1094 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1671 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2045 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1026 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1852 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-GDateTime.html +2201 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-GTimeZone.html +239 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +4278 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1864 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +692 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2740 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1033 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +748 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1105 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1552 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1468 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +194 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2745 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +532 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1282 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1213 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +470 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2960 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1291 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1805 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3478 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +400 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3448 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +253 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-building.html +466 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2217 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-running.html +319 -0
- data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +118 -0
- data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2183 -0
- data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2671 -0
- data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
- data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
- data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
- data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1288 -0
- data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/glib/index.html +344 -0
- data/vendor/local/share/gtk-doc/html/glib/index.sgml +2846 -0
- 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 +265 -0
- data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
- data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/GBinding.html +803 -0
- data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
- data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
- data/vendor/local/share/gtk-doc/html/gobject/annotation-glossary.html +47 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +73 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-26.html +201 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
- data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2721 -0
- data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
- data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
- data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
- data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
- data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
- data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
- data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +361 -0
- data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +307 -0
- data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +417 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2412 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1433 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5555 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2875 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4460 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +416 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +260 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +762 -0
- data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +801 -0
- data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
- data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
- data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
- data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
- data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
- data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
- data/vendor/local/share/gtk-doc/html/gobject/index.html +192 -0
- data/vendor/local/share/gtk-doc/html/gobject/index.sgml +786 -0
- data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
- data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
- data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
- data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
- data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/gobject/rn01.html +85 -0
- data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
- data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
- data/vendor/local/share/gtk-doc/html/gobject/style.css +265 -0
- data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
- data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
- data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
- data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
- data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
- 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 +77 -0
- 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 +54 -0
- data/vendor/local/share/man/man1/gettext.1 +69 -0
- data/vendor/local/share/man/man1/glib-genmarshal.1 +312 -0
- data/vendor/local/share/man/man1/glib-mkenums.1 +246 -0
- data/vendor/local/share/man/man1/gobject-query.1 +83 -0
- data/vendor/local/share/man/man1/ngettext.1 +68 -0
- data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
- data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
- data/vendor/local/share/man/man3/dcgettext.3 +1 -0
- data/vendor/local/share/man/man3/dcngettext.3 +1 -0
- data/vendor/local/share/man/man3/dgettext.3 +1 -0
- data/vendor/local/share/man/man3/dngettext.3 +1 -0
- data/vendor/local/share/man/man3/gettext.3 +99 -0
- data/vendor/local/share/man/man3/ngettext.3 +60 -0
- data/vendor/local/share/man/man3/textdomain.3 +57 -0
- data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
- data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
- data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
- data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
- data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.log +2867 -0
- data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.sh +64 -0
- metadata +952 -0
@@ -0,0 +1,174 @@
|
|
1
|
+
<HTML>
|
2
|
+
<HEAD>
|
3
|
+
<!-- This HTML file has been created by texi2html 1.52b
|
4
|
+
from autosprintf.texi on 1 September 2007 -->
|
5
|
+
|
6
|
+
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
|
7
|
+
<TITLE>GNU autosprintf</TITLE>
|
8
|
+
</HEAD>
|
9
|
+
<BODY>
|
10
|
+
<H1>GNU autosprintf, version 1.0</H1>
|
11
|
+
<H2>Formatted Output to Strings in C++</H2>
|
12
|
+
<ADDRESS>Bruno Haible</ADDRESS>
|
13
|
+
<P>
|
14
|
+
<P><HR><P>
|
15
|
+
<H1>Table of Contents</H1>
|
16
|
+
<UL>
|
17
|
+
<LI><A NAME="TOC1" HREF="autosprintf.html#SEC1">1 Introduction</A>
|
18
|
+
<LI><A NAME="TOC2" HREF="autosprintf.html#SEC2">2 The <CODE>autosprintf</CODE> class</A>
|
19
|
+
<LI><A NAME="TOC3" HREF="autosprintf.html#SEC3">3 Using <CODE>autosprintf</CODE> in own programs</A>
|
20
|
+
</UL>
|
21
|
+
<P><HR><P>
|
22
|
+
|
23
|
+
<P>
|
24
|
+
Copyright (C) 2002-2003, 2006-2007 Free Software Foundation, Inc.
|
25
|
+
|
26
|
+
</P>
|
27
|
+
<P>
|
28
|
+
This manual is free documentation. It is dually licensed under the
|
29
|
+
GNU FDL and the GNU GPL. This means that you can redistribute this
|
30
|
+
manual under either of these two licenses, at your choice.
|
31
|
+
|
32
|
+
</P>
|
33
|
+
<P>
|
34
|
+
This manual is covered by the GNU FDL. Permission is granted to copy,
|
35
|
+
distribute and/or modify this document under the terms of the
|
36
|
+
GNU Free Documentation License (FDL), either version 1.2 of the
|
37
|
+
License, or (at your option) any later version published by the
|
38
|
+
Free Software Foundation (FSF); with no Invariant Sections, with no
|
39
|
+
Front-Cover Text, and with no Back-Cover Texts.
|
40
|
+
A copy of the license is at <A HREF="http://www.gnu.org/licenses/fdl.html">http://www.gnu.org/licenses/fdl.html</A>.
|
41
|
+
|
42
|
+
</P>
|
43
|
+
<P>
|
44
|
+
This manual is covered by the GNU GPL. You can redistribute it and/or
|
45
|
+
modify it under the terms of the GNU General Public License (GPL), either
|
46
|
+
version 2 of the License, or (at your option) any later version published
|
47
|
+
by the Free Software Foundation (FSF).
|
48
|
+
A copy of the license is at <A HREF="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</A>.
|
49
|
+
|
50
|
+
</P>
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
<H1><A NAME="SEC1" HREF="autosprintf.html#TOC1">1 Introduction</A></H1>
|
55
|
+
|
56
|
+
<P>
|
57
|
+
This package makes the C formatted output routines (<CODE>fprintf</CODE> et al.)
|
58
|
+
usable in C++ programs, for use with the <CODE><string></CODE> strings and the
|
59
|
+
<CODE><iostream></CODE> streams.
|
60
|
+
|
61
|
+
</P>
|
62
|
+
<P>
|
63
|
+
It allows to write code like
|
64
|
+
|
65
|
+
</P>
|
66
|
+
|
67
|
+
<PRE>
|
68
|
+
cerr << autosprintf ("syntax error in %s:%d: %s", filename, line, errstring);
|
69
|
+
</PRE>
|
70
|
+
|
71
|
+
<P>
|
72
|
+
instead of
|
73
|
+
|
74
|
+
</P>
|
75
|
+
|
76
|
+
<PRE>
|
77
|
+
cerr << "syntax error in " << filename << ":" << line << ": " << errstring;
|
78
|
+
</PRE>
|
79
|
+
|
80
|
+
<P>
|
81
|
+
The benefits of the autosprintf syntax are:
|
82
|
+
|
83
|
+
</P>
|
84
|
+
|
85
|
+
<UL>
|
86
|
+
<LI>
|
87
|
+
|
88
|
+
It reuses the standard POSIX printf facility. Easy migration from C to C++.
|
89
|
+
|
90
|
+
<LI>
|
91
|
+
|
92
|
+
English sentences are kept together.
|
93
|
+
|
94
|
+
<LI>
|
95
|
+
|
96
|
+
It makes internationalization possible. Internationalization requires format
|
97
|
+
strings, because in some cases the translator needs to change the order of a
|
98
|
+
sentence, and more generally it is easier for the translator to work with a
|
99
|
+
single string for a sentence than with multiple string pieces.
|
100
|
+
|
101
|
+
<LI>
|
102
|
+
|
103
|
+
It reduces the risk of programming errors due to forgotten state in the
|
104
|
+
output stream (e.g. <CODE>cout << hex;</CODE> not followed by <CODE>cout << dec;</CODE>).
|
105
|
+
</UL>
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
<H1><A NAME="SEC2" HREF="autosprintf.html#TOC2">2 The <CODE>autosprintf</CODE> class</A></H1>
|
110
|
+
|
111
|
+
<P>
|
112
|
+
An instance of class <CODE>autosprintf</CODE> just contains a string with the
|
113
|
+
formatted output result. Such an instance is usually allocated as an
|
114
|
+
automatic storage variable, i.e. on the stack, not with <CODE>new</CODE> on the
|
115
|
+
heap.
|
116
|
+
|
117
|
+
</P>
|
118
|
+
<P>
|
119
|
+
The constructor <CODE>autosprintf (const char *format, ...)</CODE> takes a format
|
120
|
+
string and additional arguments, like the C function <CODE>printf</CODE>.
|
121
|
+
|
122
|
+
</P>
|
123
|
+
<P>
|
124
|
+
Conversions to <CODE>char *</CODE> and <CODE>std::string</CODE> are defined that return
|
125
|
+
the encapsulated string. The conversion to <CODE>char *</CODE> returns a freshly
|
126
|
+
allocated copy of the encapsulated string; it needs to be freed using
|
127
|
+
<CODE>delete[]</CODE>. The conversion to <CODE>std::string</CODE> returns a copy of
|
128
|
+
the encapsulated string, with automatic memory management.
|
129
|
+
|
130
|
+
</P>
|
131
|
+
<P>
|
132
|
+
The destructor <CODE>~autosprintf ()</CODE> destroys the encapsulated string.
|
133
|
+
|
134
|
+
</P>
|
135
|
+
<P>
|
136
|
+
An <CODE>operator <<</CODE> is provided that outputs the encapsulated string to the
|
137
|
+
given <CODE>ostream</CODE>.
|
138
|
+
|
139
|
+
</P>
|
140
|
+
|
141
|
+
|
142
|
+
<H1><A NAME="SEC3" HREF="autosprintf.html#TOC3">3 Using <CODE>autosprintf</CODE> in own programs</A></H1>
|
143
|
+
|
144
|
+
<P>
|
145
|
+
To use the <CODE>autosprintf</CODE> class in your programs, you need to add
|
146
|
+
|
147
|
+
</P>
|
148
|
+
|
149
|
+
<PRE>
|
150
|
+
#include "autosprintf.h"
|
151
|
+
using gnu::autosprintf;
|
152
|
+
</PRE>
|
153
|
+
|
154
|
+
<P>
|
155
|
+
to your source code.
|
156
|
+
The include file defines the class <CODE>autosprintf</CODE>, in a namespace called
|
157
|
+
<CODE>gnu</CODE>. The <SAMP>‘using’</SAMP> statement makes it possible to use the class
|
158
|
+
without the (otherwise natural) <CODE>gnu::</CODE> prefix.
|
159
|
+
|
160
|
+
</P>
|
161
|
+
<P>
|
162
|
+
When linking your program, you need to link with <CODE>libasprintf</CODE>, because
|
163
|
+
that's where the class is defined. In projects using GNU <CODE>autoconf</CODE>,
|
164
|
+
this means adding <SAMP>‘AC_LIB_LINKFLAGS([asprintf])’</SAMP> to <CODE>configure.in</CODE>
|
165
|
+
or <CODE>configure.ac</CODE>, and using the @LIBASPRINTF@ Makefile variable that
|
166
|
+
it provides.
|
167
|
+
|
168
|
+
</P>
|
169
|
+
<P><HR><P>
|
170
|
+
This document was generated on 1 September 2007 using the
|
171
|
+
<A HREF="http://wwwinfo.cern.ch/dis/texi2html/">texi2html</A>
|
172
|
+
translator version 1.52b.</P>
|
173
|
+
</BODY>
|
174
|
+
</HTML>
|
@@ -0,0 +1,249 @@
|
|
1
|
+
import gdb
|
2
|
+
|
3
|
+
# This is not quite right, as local vars may override symname
|
4
|
+
def read_global_var (symname):
|
5
|
+
return gdb.selected_frame().read_var(symname)
|
6
|
+
|
7
|
+
def g_quark_to_string (quark):
|
8
|
+
if quark == None:
|
9
|
+
return None
|
10
|
+
quark = long(quark)
|
11
|
+
if quark == 0:
|
12
|
+
return None
|
13
|
+
val = read_global_var ("g_quarks")
|
14
|
+
max_q = long(read_global_var ("g_quark_seq_id"))
|
15
|
+
if quark < max_q:
|
16
|
+
return val[quark].string()
|
17
|
+
return None
|
18
|
+
|
19
|
+
# We override the node printers too, so that node->next is not expanded
|
20
|
+
class GListNodePrinter:
|
21
|
+
"Prints a GList node"
|
22
|
+
|
23
|
+
def __init__ (self, val):
|
24
|
+
self.val = val
|
25
|
+
|
26
|
+
def to_string (self):
|
27
|
+
return "{data=%s, next=0x%x, prev=0x%x}" % (str(self.val["data"]), long(self.val["next"]), long(self.val["prev"]))
|
28
|
+
|
29
|
+
class GSListNodePrinter:
|
30
|
+
"Prints a GSList node"
|
31
|
+
|
32
|
+
def __init__ (self, val):
|
33
|
+
self.val = val
|
34
|
+
|
35
|
+
def to_string (self):
|
36
|
+
return "{data=%s, next=0x%x}" % (str(self.val["data"]), long(self.val["next"]))
|
37
|
+
|
38
|
+
class GListPrinter:
|
39
|
+
"Prints a GList"
|
40
|
+
|
41
|
+
class _iterator:
|
42
|
+
def __init__(self, head, listtype):
|
43
|
+
self.link = head
|
44
|
+
self.listtype = listtype
|
45
|
+
self.count = 0
|
46
|
+
|
47
|
+
def __iter__(self):
|
48
|
+
return self
|
49
|
+
|
50
|
+
def next(self):
|
51
|
+
if self.link == 0:
|
52
|
+
raise StopIteration
|
53
|
+
data = self.link['data']
|
54
|
+
self.link = self.link['next']
|
55
|
+
count = self.count
|
56
|
+
self.count = self.count + 1
|
57
|
+
return ('[%d]' % count, data)
|
58
|
+
|
59
|
+
def __init__ (self, val, listtype):
|
60
|
+
self.val = val
|
61
|
+
self.listtype = listtype
|
62
|
+
|
63
|
+
def children(self):
|
64
|
+
return self._iterator(self.val, self.listtype)
|
65
|
+
|
66
|
+
def to_string (self):
|
67
|
+
return "0x%x" % (long(self.val))
|
68
|
+
|
69
|
+
def display_hint (self):
|
70
|
+
return "array"
|
71
|
+
|
72
|
+
class GHashPrinter:
|
73
|
+
"Prints a GHashTable"
|
74
|
+
|
75
|
+
class _iterator:
|
76
|
+
def __init__(self, ht, keys_are_strings):
|
77
|
+
self.ht = ht
|
78
|
+
if ht != 0:
|
79
|
+
self.array = ht["nodes"]
|
80
|
+
self.size = ht["size"]
|
81
|
+
self.pos = 0
|
82
|
+
self.keys_are_strings = keys_are_strings
|
83
|
+
self.value = None
|
84
|
+
|
85
|
+
def __iter__(self):
|
86
|
+
return self
|
87
|
+
|
88
|
+
def next(self):
|
89
|
+
if self.ht == 0:
|
90
|
+
raise StopIteration
|
91
|
+
if self.value != None:
|
92
|
+
v = self.value
|
93
|
+
self.value = None
|
94
|
+
return v
|
95
|
+
while long(self.pos) < long(self.size):
|
96
|
+
node = self.array[self.pos]
|
97
|
+
self.pos = self.pos + 1
|
98
|
+
if long (node["key_hash"]) >= 2:
|
99
|
+
key = node["key"]
|
100
|
+
val = node["value"]
|
101
|
+
|
102
|
+
if self.keys_are_strings:
|
103
|
+
key = key.cast (gdb.lookup_type("char").pointer())
|
104
|
+
|
105
|
+
# Queue value for next result
|
106
|
+
self.value = ('[%dv]'% (self.pos), val)
|
107
|
+
|
108
|
+
# Return key
|
109
|
+
return ('[%dk]'% (self.pos), key)
|
110
|
+
raise StopIteration
|
111
|
+
|
112
|
+
def __init__ (self, val):
|
113
|
+
self.val = val
|
114
|
+
self.keys_are_strings = False
|
115
|
+
try:
|
116
|
+
string_hash = read_global_var ("g_str_hash")
|
117
|
+
except:
|
118
|
+
string_hash = None
|
119
|
+
if self.val != 0 and string_hash != None and self.val["hash_func"] == string_hash:
|
120
|
+
self.keys_are_strings = True
|
121
|
+
|
122
|
+
def children(self):
|
123
|
+
return self._iterator(self.val, self.keys_are_strings)
|
124
|
+
|
125
|
+
def to_string (self):
|
126
|
+
return "0x%x" % (long(self.val))
|
127
|
+
|
128
|
+
def display_hint (self):
|
129
|
+
return "map"
|
130
|
+
|
131
|
+
def pretty_printer_lookup (val):
|
132
|
+
if is_g_type_instance (val):
|
133
|
+
return GTypePrettyPrinter (val)
|
134
|
+
|
135
|
+
def pretty_printer_lookup (val):
|
136
|
+
# None yet, want things like hash table and list
|
137
|
+
|
138
|
+
type = val.type.unqualified()
|
139
|
+
|
140
|
+
# If it points to a reference, get the reference.
|
141
|
+
if type.code == gdb.TYPE_CODE_REF:
|
142
|
+
type = type.target ()
|
143
|
+
|
144
|
+
if type.code == gdb.TYPE_CODE_PTR:
|
145
|
+
type = type.target().unqualified()
|
146
|
+
t = str(type)
|
147
|
+
if t == "GList":
|
148
|
+
return GListPrinter(val, "GList")
|
149
|
+
if t == "GSList":
|
150
|
+
return GListPrinter(val, "GSList")
|
151
|
+
if t == "GHashTable":
|
152
|
+
return GHashPrinter(val)
|
153
|
+
else:
|
154
|
+
t = str(type)
|
155
|
+
if t == "GList":
|
156
|
+
return GListNodePrinter(val)
|
157
|
+
if t == "GSList *":
|
158
|
+
return GListPrinter(val, "GSList")
|
159
|
+
return None
|
160
|
+
|
161
|
+
def register (obj):
|
162
|
+
if obj == None:
|
163
|
+
obj = gdb
|
164
|
+
|
165
|
+
obj.pretty_printers.append(pretty_printer_lookup)
|
166
|
+
|
167
|
+
class ForeachCommand (gdb.Command):
|
168
|
+
"""Foreach on list"""
|
169
|
+
|
170
|
+
def __init__ (self):
|
171
|
+
super (ForeachCommand, self).__init__ ("gforeach",
|
172
|
+
gdb.COMMAND_DATA,
|
173
|
+
gdb.COMPLETE_SYMBOL)
|
174
|
+
|
175
|
+
def valid_name (self, name):
|
176
|
+
if not name[0].isalpha():
|
177
|
+
return False
|
178
|
+
return True
|
179
|
+
|
180
|
+
def parse_args (self, arg):
|
181
|
+
i = arg.find(" ")
|
182
|
+
if i <= 0:
|
183
|
+
raise Exception ("No var specified")
|
184
|
+
var = arg[:i]
|
185
|
+
if not self.valid_name(var):
|
186
|
+
raise Exception ("Invalid variable name")
|
187
|
+
|
188
|
+
while i < len (arg) and arg[i].isspace():
|
189
|
+
i = i + 1
|
190
|
+
|
191
|
+
if arg[i:i+2] != "in":
|
192
|
+
raise Exception ("Invalid syntax, missing in")
|
193
|
+
|
194
|
+
i = i + 2
|
195
|
+
|
196
|
+
while i < len (arg) and arg[i].isspace():
|
197
|
+
i = i + 1
|
198
|
+
|
199
|
+
colon = arg.find (":", i)
|
200
|
+
if colon == -1:
|
201
|
+
raise Exception ("Invalid syntax, missing colon")
|
202
|
+
|
203
|
+
val = arg[i:colon]
|
204
|
+
|
205
|
+
colon = colon + 1
|
206
|
+
while colon < len (arg) and arg[colon].isspace():
|
207
|
+
colon = colon + 1
|
208
|
+
|
209
|
+
command = arg[colon:]
|
210
|
+
|
211
|
+
return (var, val, command)
|
212
|
+
|
213
|
+
def do_iter(self, arg, item, command):
|
214
|
+
item = item.cast (gdb.lookup_type("void").pointer())
|
215
|
+
item = long(item)
|
216
|
+
to_eval = "set $%s = (void *)0x%x\n"%(arg, item)
|
217
|
+
gdb.execute(to_eval)
|
218
|
+
gdb.execute(command)
|
219
|
+
|
220
|
+
def slist_iterator (self, arg, container, command):
|
221
|
+
l = container.cast (gdb.lookup_type("GSList").pointer())
|
222
|
+
while long(l) != 0:
|
223
|
+
self.do_iter (arg, l["data"], command)
|
224
|
+
l = l["next"]
|
225
|
+
|
226
|
+
def list_iterator (self, arg, container, command):
|
227
|
+
l = container.cast (gdb.lookup_type("GList").pointer())
|
228
|
+
while long(l) != 0:
|
229
|
+
self.do_iter (arg, l["data"], command)
|
230
|
+
l = l["next"]
|
231
|
+
|
232
|
+
def pick_iterator (self, container):
|
233
|
+
t = container.type.unqualified()
|
234
|
+
if t.code == gdb.TYPE_CODE_PTR:
|
235
|
+
t = t.target().unqualified()
|
236
|
+
t = str(t)
|
237
|
+
if t == "GSList":
|
238
|
+
return self.slist_iterator
|
239
|
+
if t == "GList":
|
240
|
+
return self.list_iterator
|
241
|
+
raise Exception("Invalid container type %s"%(str(container.type)))
|
242
|
+
|
243
|
+
def invoke (self, arg, from_tty):
|
244
|
+
(var, container, command) = self.parse_args(arg)
|
245
|
+
container = gdb.parse_and_eval (container)
|
246
|
+
func = self.pick_iterator(container)
|
247
|
+
func(var, container, command)
|
248
|
+
|
249
|
+
ForeachCommand ()
|
@@ -0,0 +1,305 @@
|
|
1
|
+
import gdb
|
2
|
+
import glib
|
3
|
+
import gdb.backtrace
|
4
|
+
import gdb.command.backtrace
|
5
|
+
|
6
|
+
# This is not quite right, as local vars may override symname
|
7
|
+
def read_global_var (symname):
|
8
|
+
return gdb.selected_frame().read_var(symname)
|
9
|
+
|
10
|
+
def g_type_to_name (gtype):
|
11
|
+
def lookup_fundamental_type (typenode):
|
12
|
+
if typenode == 0:
|
13
|
+
return None
|
14
|
+
val = read_global_var ("static_fundamental_type_nodes")
|
15
|
+
if val == None:
|
16
|
+
return None
|
17
|
+
return val[typenode >> 2].address()
|
18
|
+
|
19
|
+
gtype = long(gtype)
|
20
|
+
typenode = gtype - gtype % 4
|
21
|
+
if typenode > (255 << 2):
|
22
|
+
typenode = gdb.Value(typenode).cast (gdb.lookup_type("TypeNode").pointer())
|
23
|
+
else:
|
24
|
+
typenode = lookup_fundamental_type (typenode)
|
25
|
+
if typenode != None:
|
26
|
+
return glib.g_quark_to_string (typenode["qname"])
|
27
|
+
return None
|
28
|
+
|
29
|
+
def is_g_type_instance (val):
|
30
|
+
def is_g_type_instance_helper (type):
|
31
|
+
if str(type) == "GTypeInstance":
|
32
|
+
return True
|
33
|
+
|
34
|
+
while type.code == gdb.TYPE_CODE_TYPEDEF:
|
35
|
+
type = type.target()
|
36
|
+
|
37
|
+
if type.code != gdb.TYPE_CODE_STRUCT:
|
38
|
+
return False
|
39
|
+
|
40
|
+
fields = type.fields()
|
41
|
+
if len (fields) < 1:
|
42
|
+
return False
|
43
|
+
|
44
|
+
first_field = fields[0]
|
45
|
+
return is_g_type_instance_helper(first_field.type)
|
46
|
+
|
47
|
+
type = val.type
|
48
|
+
if type.code != gdb.TYPE_CODE_PTR:
|
49
|
+
return False
|
50
|
+
type = type.target()
|
51
|
+
return is_g_type_instance_helper (type)
|
52
|
+
|
53
|
+
def g_type_name_from_instance (instance):
|
54
|
+
if long(instance) != 0:
|
55
|
+
try:
|
56
|
+
inst = instance.cast (gdb.lookup_type("GTypeInstance").pointer())
|
57
|
+
klass = inst["g_class"]
|
58
|
+
gtype = klass["g_type"]
|
59
|
+
name = g_type_to_name (gtype)
|
60
|
+
return name
|
61
|
+
except RuntimeError:
|
62
|
+
pass
|
63
|
+
return None
|
64
|
+
|
65
|
+
class GTypePrettyPrinter:
|
66
|
+
"Prints a GType instance pointer"
|
67
|
+
|
68
|
+
def __init__ (self, val):
|
69
|
+
self.val = val
|
70
|
+
|
71
|
+
def to_string (self):
|
72
|
+
name = g_type_name_from_instance (self.val)
|
73
|
+
if name:
|
74
|
+
return ("0x%x [%s]")% (long(self.val), name)
|
75
|
+
return ("0x%x") % (long(self.val))
|
76
|
+
|
77
|
+
def pretty_printer_lookup (val):
|
78
|
+
if is_g_type_instance (val):
|
79
|
+
return GTypePrettyPrinter (val)
|
80
|
+
|
81
|
+
return None
|
82
|
+
|
83
|
+
def get_signal_name (id):
|
84
|
+
if id == None:
|
85
|
+
return None
|
86
|
+
id = long(id)
|
87
|
+
if id == 0:
|
88
|
+
return None
|
89
|
+
val = read_global_var ("g_signal_nodes")
|
90
|
+
max_s = read_global_var ("g_n_signal_nodes")
|
91
|
+
max_s = long(max_s)
|
92
|
+
if id < max_s:
|
93
|
+
return val[id]["name"].string()
|
94
|
+
return None
|
95
|
+
|
96
|
+
class GFrameWrapper:
|
97
|
+
def __init__ (self, frame):
|
98
|
+
self.frame = frame;
|
99
|
+
|
100
|
+
def name (self):
|
101
|
+
name = self.frame.name()
|
102
|
+
if name and name.startswith("IA__"):
|
103
|
+
return name[4:]
|
104
|
+
return name
|
105
|
+
|
106
|
+
def __getattr__ (self, name):
|
107
|
+
return getattr (self.frame, name)
|
108
|
+
|
109
|
+
# Monkey patch FrameWrapper to avoid IA__ in symbol names
|
110
|
+
old__init__ = gdb.command.backtrace.FrameWrapper.__init__
|
111
|
+
def monkey_patched_init(self, frame):
|
112
|
+
name = frame.name()
|
113
|
+
if name and name.startswith("IA__"):
|
114
|
+
frame = GFrameWrapper(frame)
|
115
|
+
old__init__(self,frame)
|
116
|
+
gdb.command.backtrace.FrameWrapper.__init__ = monkey_patched_init
|
117
|
+
|
118
|
+
class DummyFrame:
|
119
|
+
def __init__ (self, frame):
|
120
|
+
self.frame = frame
|
121
|
+
|
122
|
+
def name (self):
|
123
|
+
return "signal-emission-dummy"
|
124
|
+
|
125
|
+
def describe (self, stream, full):
|
126
|
+
stream.write (" <...>\n")
|
127
|
+
|
128
|
+
def __getattr__ (self, name):
|
129
|
+
return getattr (self.frame, name)
|
130
|
+
|
131
|
+
class SignalFrame:
|
132
|
+
def __init__ (self, frames):
|
133
|
+
self.frame = frames[-1]
|
134
|
+
self.frames = frames;
|
135
|
+
|
136
|
+
def name (self):
|
137
|
+
return "signal-emission"
|
138
|
+
|
139
|
+
def read_var (self, frame, name, array = None):
|
140
|
+
try:
|
141
|
+
v = frame.read_var (name)
|
142
|
+
if v == None or v.is_optimized_out:
|
143
|
+
return None
|
144
|
+
if array != None:
|
145
|
+
array.append (v)
|
146
|
+
return v
|
147
|
+
except ValueError:
|
148
|
+
return None
|
149
|
+
|
150
|
+
def read_object (self, frame, name, array = None):
|
151
|
+
try:
|
152
|
+
v = frame.read_var (name)
|
153
|
+
if v == None or v.is_optimized_out:
|
154
|
+
return None
|
155
|
+
v = v.cast (gdb.lookup_type("GObject").pointer())
|
156
|
+
# Ensure this is a somewhat correct object pointer
|
157
|
+
if v != None and g_type_name_from_instance (v):
|
158
|
+
if array != None:
|
159
|
+
array.append (v)
|
160
|
+
return v
|
161
|
+
return None
|
162
|
+
except ValueError:
|
163
|
+
return None
|
164
|
+
|
165
|
+
def append (self, array, obj):
|
166
|
+
if obj != None:
|
167
|
+
array.append (obj)
|
168
|
+
|
169
|
+
def or_join_array (self, array):
|
170
|
+
if len(array) == 0:
|
171
|
+
return "???"
|
172
|
+
|
173
|
+
v = {}
|
174
|
+
for i in range(len(array)):
|
175
|
+
v[str(array[i])] = 1
|
176
|
+
array = v.keys()
|
177
|
+
s = array[0]
|
178
|
+
for i in range(1, len(array)):
|
179
|
+
s = s + " or %s"%array[i]
|
180
|
+
|
181
|
+
return s
|
182
|
+
|
183
|
+
def describe (self, stream, full):
|
184
|
+
instances = []
|
185
|
+
signals = []
|
186
|
+
|
187
|
+
for frame in self.frames:
|
188
|
+
name = frame.name()
|
189
|
+
if name == "signal_emit_unlocked_R":
|
190
|
+
self.read_object (frame, "instance", instances)
|
191
|
+
node = self.read_var (frame, "node")
|
192
|
+
if node:
|
193
|
+
signal = node["name"].string()
|
194
|
+
detail = self.read_var (frame, "detail")
|
195
|
+
detail = glib.g_quark_to_string (detail)
|
196
|
+
if detail != None:
|
197
|
+
signal = signal + ":" + detail
|
198
|
+
self.append (signals, signal)
|
199
|
+
|
200
|
+
if name == "g_signal_emitv":
|
201
|
+
instance_and_params = self.read_var (frame, "instance_and_params")
|
202
|
+
if instance_and_params:
|
203
|
+
instance = instance_and_params[0]["v_pointer"].cast (gdb.Type("GObject").pointer())
|
204
|
+
self.append (instances, instance)
|
205
|
+
id = self.read_var (frame, "signal_id")
|
206
|
+
signal = get_signal_name (id)
|
207
|
+
if signal:
|
208
|
+
detail = self.read_var (frame, "detail")
|
209
|
+
detail = glib.g_quark_to_string (detail)
|
210
|
+
if detail != None:
|
211
|
+
signal = signal + ":" + detail
|
212
|
+
self.append (signals, signal)
|
213
|
+
|
214
|
+
if name == "g_signal_emit_valist" or name == "g_signal_emit":
|
215
|
+
self.read_object (frame, "instance", instances)
|
216
|
+
id = self.read_var (frame, "signal_id")
|
217
|
+
signal = get_signal_name (id)
|
218
|
+
if signal:
|
219
|
+
detail = self.read_var (frame, "detail")
|
220
|
+
detail = glib.g_quark_to_string (detail)
|
221
|
+
if detail != None:
|
222
|
+
signal = signal + ":" + detail
|
223
|
+
self.append (signals, signal)
|
224
|
+
|
225
|
+
if name == "g_signal_emit_by_name":
|
226
|
+
self.read_object (frame, "instance", instances)
|
227
|
+
self.read_var (frame, "detailed_signal", signals)
|
228
|
+
break
|
229
|
+
|
230
|
+
instance = self.or_join_array (instances)
|
231
|
+
signal = self.or_join_array (signals)
|
232
|
+
|
233
|
+
stream.write (" <emit signal %s on instance %s>\n" % (signal, instance))
|
234
|
+
|
235
|
+
def __getattr__ (self, name):
|
236
|
+
return getattr (self.frame, name)
|
237
|
+
|
238
|
+
class GFrameFilter:
|
239
|
+
def __init__ (self, iter):
|
240
|
+
self.queue = []
|
241
|
+
self.iter = iter
|
242
|
+
|
243
|
+
def __iter__ (self):
|
244
|
+
return self
|
245
|
+
|
246
|
+
def fill (self):
|
247
|
+
while len(self.queue) <= 6:
|
248
|
+
try:
|
249
|
+
f = self.iter.next ()
|
250
|
+
self.queue.append (f)
|
251
|
+
except StopIteration:
|
252
|
+
return
|
253
|
+
|
254
|
+
def find_signal_emission (self):
|
255
|
+
for i in range (min (len(self.queue), 3)):
|
256
|
+
if self.queue[i].name() == "signal_emit_unlocked_R":
|
257
|
+
return i
|
258
|
+
return -1
|
259
|
+
|
260
|
+
def next (self):
|
261
|
+
# Ensure we have enough frames for a full signal emission
|
262
|
+
self.fill()
|
263
|
+
|
264
|
+
# Are we at the end?
|
265
|
+
if len(self.queue) == 0:
|
266
|
+
raise StopIteration
|
267
|
+
|
268
|
+
emission = self.find_signal_emission ()
|
269
|
+
if emission > 0:
|
270
|
+
start = emission
|
271
|
+
while True:
|
272
|
+
if start == 0:
|
273
|
+
break
|
274
|
+
prev_name = self.queue[start-1].name()
|
275
|
+
if prev_name.find("_marshal_") or prev_name == "g_closure_invoke":
|
276
|
+
start = start - 1
|
277
|
+
else:
|
278
|
+
break
|
279
|
+
end = emission + 1
|
280
|
+
while end < len(self.queue):
|
281
|
+
if self.queue[end].name() in ["g_signal_emitv",
|
282
|
+
"g_signal_emit_valist",
|
283
|
+
"g_signal_emit",
|
284
|
+
"g_signal_emit_by_name"]:
|
285
|
+
end = end + 1
|
286
|
+
else:
|
287
|
+
break
|
288
|
+
|
289
|
+
signal_frames = self.queue[start:end]
|
290
|
+
new_frames = []
|
291
|
+
for i in range(len(signal_frames)-1):
|
292
|
+
new_frames.append(DummyFrame(signal_frames[i]))
|
293
|
+
new_frames.append(SignalFrame(signal_frames))
|
294
|
+
|
295
|
+
self.queue[start:end] = new_frames
|
296
|
+
|
297
|
+
return self.queue.pop(0)
|
298
|
+
|
299
|
+
|
300
|
+
def register (obj):
|
301
|
+
if obj == None:
|
302
|
+
obj = gdb
|
303
|
+
|
304
|
+
gdb.backtrace.push_frame_filter (GFrameFilter)
|
305
|
+
obj.pretty_printers.append(pretty_printer_lookup)
|