glib2 0.90.2-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (875) hide show
  1. data/ChangeLog +3115 -0
  2. data/README +40 -0
  3. data/Rakefile +69 -0
  4. data/ext/glib2/depend +10 -0
  5. data/ext/glib2/extconf.rb +61 -0
  6. data/ext/glib2/glib2.def +89 -0
  7. data/ext/glib2/rbgcompat.h +30 -0
  8. data/ext/glib2/rbglib.c +330 -0
  9. data/ext/glib2/rbglib.h +96 -0
  10. data/ext/glib2/rbglib_bookmarkfile.c +595 -0
  11. data/ext/glib2/rbglib_completion.c +192 -0
  12. data/ext/glib2/rbglib_convert.c +195 -0
  13. data/ext/glib2/rbglib_error.c +95 -0
  14. data/ext/glib2/rbglib_fileutils.c +83 -0
  15. data/ext/glib2/rbglib_i18n.c +44 -0
  16. data/ext/glib2/rbglib_int64.c +157 -0
  17. data/ext/glib2/rbglib_iochannel.c +883 -0
  18. data/ext/glib2/rbglib_keyfile.c +846 -0
  19. data/ext/glib2/rbglib_maincontext.c +915 -0
  20. data/ext/glib2/rbglib_mainloop.c +87 -0
  21. data/ext/glib2/rbglib_messages.c +150 -0
  22. data/ext/glib2/rbglib_pollfd.c +111 -0
  23. data/ext/glib2/rbglib_shell.c +68 -0
  24. data/ext/glib2/rbglib_source.c +190 -0
  25. data/ext/glib2/rbglib_spawn.c +345 -0
  26. data/ext/glib2/rbglib_threads.c +51 -0
  27. data/ext/glib2/rbglib_timer.c +127 -0
  28. data/ext/glib2/rbglib_unicode.c +611 -0
  29. data/ext/glib2/rbglib_utils.c +386 -0
  30. data/ext/glib2/rbglib_win32.c +136 -0
  31. data/ext/glib2/rbgobj_boxed.c +251 -0
  32. data/ext/glib2/rbgobj_closure.c +337 -0
  33. data/ext/glib2/rbgobj_convert.c +167 -0
  34. data/ext/glib2/rbgobj_enums.c +961 -0
  35. data/ext/glib2/rbgobj_fundamental.c +30 -0
  36. data/ext/glib2/rbgobj_object.c +892 -0
  37. data/ext/glib2/rbgobj_param.c +390 -0
  38. data/ext/glib2/rbgobj_paramspecs.c +305 -0
  39. data/ext/glib2/rbgobj_signal.c +963 -0
  40. data/ext/glib2/rbgobj_strv.c +61 -0
  41. data/ext/glib2/rbgobj_type.c +851 -0
  42. data/ext/glib2/rbgobj_typeinstance.c +121 -0
  43. data/ext/glib2/rbgobj_typeinterface.c +148 -0
  44. data/ext/glib2/rbgobj_typemodule.c +66 -0
  45. data/ext/glib2/rbgobj_typeplugin.c +49 -0
  46. data/ext/glib2/rbgobj_value.c +313 -0
  47. data/ext/glib2/rbgobj_valuearray.c +59 -0
  48. data/ext/glib2/rbgobj_valuetypes.c +298 -0
  49. data/ext/glib2/rbgobject.c +406 -0
  50. data/ext/glib2/rbgobject.h +265 -0
  51. data/ext/glib2/rbgprivate.h +88 -0
  52. data/ext/glib2/rbgutil.c +316 -0
  53. data/ext/glib2/rbgutil.h +82 -0
  54. data/ext/glib2/rbgutil_callback.c +231 -0
  55. data/extconf.rb +49 -0
  56. data/lib/1.8/glib2.so +0 -0
  57. data/lib/1.9/glib2.so +0 -0
  58. data/lib/glib-mkenums.rb +199 -0
  59. data/lib/glib2.rb +239 -0
  60. data/lib/gnome2-win32-binary-downloader.rb +92 -0
  61. data/lib/mkmf-gnome2.rb +377 -0
  62. data/sample/bookmarkfile.rb +66 -0
  63. data/sample/completion.rb +45 -0
  64. data/sample/idle.rb +41 -0
  65. data/sample/iochannel.rb +44 -0
  66. data/sample/keyfile.rb +62 -0
  67. data/sample/shell.rb +36 -0
  68. data/sample/spawn.rb +25 -0
  69. data/sample/timeout.rb +28 -0
  70. data/sample/timeout2.rb +35 -0
  71. data/sample/timer.rb +40 -0
  72. data/sample/type-register.rb +103 -0
  73. data/sample/type-register2.rb +104 -0
  74. data/sample/utils.rb +54 -0
  75. data/test/glib-test-init.rb +6 -0
  76. data/test/glib-test-utils.rb +12 -0
  77. data/test/run-test.rb +21 -0
  78. data/test/test_enum.rb +99 -0
  79. data/test/test_file_utils.rb +15 -0
  80. data/test/test_glib2.rb +120 -0
  81. data/test/test_iochannel.rb +275 -0
  82. data/test/test_key_file.rb +38 -0
  83. data/test/test_mkenums.rb +25 -0
  84. data/test/test_signal.rb +20 -0
  85. data/test/test_timeout.rb +28 -0
  86. data/test/test_unicode.rb +369 -0
  87. data/test/test_utils.rb +37 -0
  88. data/test/test_win32.rb +13 -0
  89. data/test-unit/COPYING +56 -0
  90. data/test-unit/GPL +340 -0
  91. data/test-unit/History.txt +232 -0
  92. data/test-unit/Manifest.txt +110 -0
  93. data/test-unit/PSFL +271 -0
  94. data/test-unit/README.txt +75 -0
  95. data/test-unit/Rakefile +53 -0
  96. data/test-unit/TODO +5 -0
  97. data/test-unit/bin/testrb +5 -0
  98. data/test-unit/html/bar.png +0 -0
  99. data/test-unit/html/bar.svg +153 -0
  100. data/test-unit/html/developer.png +0 -0
  101. data/test-unit/html/developer.svg +469 -0
  102. data/test-unit/html/famfamfam-logo.png +0 -0
  103. data/test-unit/html/favicon.ico +0 -0
  104. data/test-unit/html/favicon.png +0 -0
  105. data/test-unit/html/favicon.svg +82 -0
  106. data/test-unit/html/heading-mark.png +0 -0
  107. data/test-unit/html/heading-mark.svg +393 -0
  108. data/test-unit/html/index.html +247 -0
  109. data/test-unit/html/index.html.ja +270 -0
  110. data/test-unit/html/install.png +0 -0
  111. data/test-unit/html/install.svg +636 -0
  112. data/test-unit/html/jp.png +0 -0
  113. data/test-unit/html/kinotan-failure.png +0 -0
  114. data/test-unit/html/kinotan-pass.png +0 -0
  115. data/test-unit/html/logo.png +0 -0
  116. data/test-unit/html/logo.svg +483 -0
  117. data/test-unit/html/reference.png +0 -0
  118. data/test-unit/html/rubyforge.png +0 -0
  119. data/test-unit/html/tango-logo.png +0 -0
  120. data/test-unit/html/test-unit.css +339 -0
  121. data/test-unit/html/tutorial.png +0 -0
  122. data/test-unit/html/tutorial.svg +559 -0
  123. data/test-unit/html/us.png +0 -0
  124. data/test-unit/images/color-diff.png +0 -0
  125. data/test-unit/lib/test/unit/assertionfailederror.rb +25 -0
  126. data/test-unit/lib/test/unit/assertions.rb +1334 -0
  127. data/test-unit/lib/test/unit/attribute.rb +125 -0
  128. data/test-unit/lib/test/unit/autorunner.rb +363 -0
  129. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  130. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  131. data/test-unit/lib/test/unit/collector/load.rb +144 -0
  132. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  133. data/test-unit/lib/test/unit/collector.rb +36 -0
  134. data/test-unit/lib/test/unit/color-scheme.rb +106 -0
  135. data/test-unit/lib/test/unit/color.rb +96 -0
  136. data/test-unit/lib/test/unit/diff.rb +740 -0
  137. data/test-unit/lib/test/unit/error.rb +130 -0
  138. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  139. data/test-unit/lib/test/unit/failure.rb +136 -0
  140. data/test-unit/lib/test/unit/fixture.rb +176 -0
  141. data/test-unit/lib/test/unit/notification.rb +129 -0
  142. data/test-unit/lib/test/unit/omission.rb +191 -0
  143. data/test-unit/lib/test/unit/pending.rb +150 -0
  144. data/test-unit/lib/test/unit/priority.rb +180 -0
  145. data/test-unit/lib/test/unit/runner/console.rb +52 -0
  146. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  147. data/test-unit/lib/test/unit/runner/tap.rb +8 -0
  148. data/test-unit/lib/test/unit/testcase.rb +483 -0
  149. data/test-unit/lib/test/unit/testresult.rb +121 -0
  150. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  151. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  152. data/test-unit/lib/test/unit/ui/console/testrunner.rb +430 -0
  153. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +63 -0
  154. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +82 -0
  155. data/test-unit/lib/test/unit/ui/testrunner.rb +53 -0
  156. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  157. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  158. data/test-unit/lib/test/unit/util/backtracefilter.rb +42 -0
  159. data/test-unit/lib/test/unit/util/method-owner-finder.rb +28 -0
  160. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  161. data/test-unit/lib/test/unit/util/output.rb +31 -0
  162. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  163. data/test-unit/lib/test/unit/version.rb +7 -0
  164. data/test-unit/lib/test/unit.rb +328 -0
  165. data/test-unit/sample/adder.rb +13 -0
  166. data/test-unit/sample/subtracter.rb +12 -0
  167. data/test-unit/sample/test_adder.rb +20 -0
  168. data/test-unit/sample/test_subtracter.rb +20 -0
  169. data/test-unit/sample/test_user.rb +23 -0
  170. data/test-unit/test/collector/test-descendant.rb +133 -0
  171. data/test-unit/test/collector/test-load.rb +442 -0
  172. data/test-unit/test/collector/test_dir.rb +406 -0
  173. data/test-unit/test/collector/test_objectspace.rb +100 -0
  174. data/test-unit/test/run-test.rb +15 -0
  175. data/test-unit/test/test-attribute.rb +86 -0
  176. data/test-unit/test/test-color-scheme.rb +69 -0
  177. data/test-unit/test/test-color.rb +47 -0
  178. data/test-unit/test/test-diff.rb +518 -0
  179. data/test-unit/test/test-emacs-runner.rb +60 -0
  180. data/test-unit/test/test-fixture.rb +287 -0
  181. data/test-unit/test/test-notification.rb +33 -0
  182. data/test-unit/test/test-omission.rb +81 -0
  183. data/test-unit/test/test-pending.rb +70 -0
  184. data/test-unit/test/test-priority.rb +119 -0
  185. data/test-unit/test/test-testcase.rb +544 -0
  186. data/test-unit/test/test_assertions.rb +1197 -0
  187. data/test-unit/test/test_error.rb +26 -0
  188. data/test-unit/test/test_failure.rb +33 -0
  189. data/test-unit/test/test_testresult.rb +113 -0
  190. data/test-unit/test/test_testsuite.rb +129 -0
  191. data/test-unit/test/testunit-test-util.rb +14 -0
  192. data/test-unit/test/ui/test_tap.rb +33 -0
  193. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  194. data/test-unit/test/util/test-method-owner-finder.rb +38 -0
  195. data/test-unit/test/util/test-output.rb +11 -0
  196. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  197. data/test-unit/test/util/test_observable.rb +102 -0
  198. data/test-unit/test/util/test_procwrapper.rb +36 -0
  199. data/vendor/local/bin/envsubst.exe +0 -0
  200. data/vendor/local/bin/gettext.exe +0 -0
  201. data/vendor/local/bin/gettext.sh +123 -0
  202. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  203. data/vendor/local/bin/glib-gettextize +188 -0
  204. data/vendor/local/bin/glib-mkenums +511 -0
  205. data/vendor/local/bin/gobject-query.exe +0 -0
  206. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  207. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  208. data/vendor/local/bin/intl.dll +0 -0
  209. data/vendor/local/bin/libasprintf-0.dll +0 -0
  210. data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
  211. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  212. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  213. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  214. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  215. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  216. data/vendor/local/bin/ngettext.exe +0 -0
  217. data/vendor/local/include/autosprintf.h +66 -0
  218. data/vendor/local/include/glib-2.0/gio/gappinfo.h +237 -0
  219. data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
  220. data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
  221. data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
  222. data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +82 -0
  223. data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
  224. data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
  225. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
  226. data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
  227. data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +80 -0
  228. data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +80 -0
  229. data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +133 -0
  230. data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +116 -0
  231. data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
  232. data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
  233. data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
  234. data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
  235. data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
  236. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +133 -0
  237. data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
  238. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +951 -0
  239. data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
  240. data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
  241. data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
  242. data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
  243. data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
  244. data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
  245. data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
  246. data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
  247. data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
  248. data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
  249. data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
  250. data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
  251. data/vendor/local/include/glib-2.0/gio/gio.h +101 -0
  252. data/vendor/local/include/glib-2.0/gio/gioenums.h +703 -0
  253. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +79 -0
  254. data/vendor/local/include/glib-2.0/gio/gioerror.h +48 -0
  255. data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
  256. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
  257. data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
  258. data/vendor/local/include/glib-2.0/gio/giotypes.h +339 -0
  259. data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
  260. data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
  261. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +97 -0
  262. data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
  263. data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
  264. data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
  265. data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +69 -0
  266. data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +69 -0
  267. data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
  268. data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
  269. data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
  270. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
  271. data/vendor/local/include/glib-2.0/gio/gsocket.h +176 -0
  272. data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
  273. data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
  274. data/vendor/local/include/glib-2.0/gio/gsocketclient.h +130 -0
  275. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +68 -0
  276. data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
  277. data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
  278. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
  279. data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
  280. data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
  281. data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
  282. data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
  283. data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
  284. data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
  285. data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
  286. data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +151 -0
  287. data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +55 -0
  288. data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +54 -0
  289. data/vendor/local/include/glib-2.0/glib/galloca.h +63 -0
  290. data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
  291. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
  292. data/vendor/local/include/glib-2.0/glib/gatomic.h +85 -0
  293. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
  294. data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
  295. data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
  296. data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +191 -0
  297. data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
  298. data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
  299. data/vendor/local/include/glib-2.0/glib/gcompletion.h +77 -0
  300. data/vendor/local/include/glib-2.0/glib/gconvert.h +138 -0
  301. data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
  302. data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
  303. data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
  304. data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
  305. data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
  306. data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
  307. data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
  308. data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
  309. data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
  310. data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
  311. data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
  312. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +250 -0
  313. data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
  314. data/vendor/local/include/glib-2.0/glib/gmacros.h +277 -0
  315. data/vendor/local/include/glib-2.0/glib/gmain.h +304 -0
  316. data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
  317. data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
  318. data/vendor/local/include/glib-2.0/glib/gmem.h +203 -0
  319. data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
  320. data/vendor/local/include/glib-2.0/glib/gnode.h +288 -0
  321. data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
  322. data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
  323. data/vendor/local/include/glib-2.0/glib/gpoll.h +93 -0
  324. data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
  325. data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
  326. data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
  327. data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
  328. data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
  329. data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
  330. data/vendor/local/include/glib-2.0/glib/gregex.h +243 -0
  331. data/vendor/local/include/glib-2.0/glib/grel.h +97 -0
  332. data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
  333. data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
  334. data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
  335. data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
  336. data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
  337. data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
  338. data/vendor/local/include/glib-2.0/glib/gstdio.h +159 -0
  339. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +267 -0
  340. data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
  341. data/vendor/local/include/glib-2.0/glib/gtestutils.h +292 -0
  342. data/vendor/local/include/glib-2.0/glib/gthread.h +408 -0
  343. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
  344. data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
  345. data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
  346. data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
  347. data/vendor/local/include/glib-2.0/glib/gunicode.h +404 -0
  348. data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
  349. data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
  350. data/vendor/local/include/glib-2.0/glib/gvariant.h +224 -0
  351. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +305 -0
  352. data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
  353. data/vendor/local/include/glib-2.0/glib-object.h +41 -0
  354. data/vendor/local/include/glib-2.0/glib.h +97 -0
  355. data/vendor/local/include/glib-2.0/gmodule.h +101 -0
  356. data/vendor/local/include/glib-2.0/gobject/gboxed.h +236 -0
  357. data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
  358. data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
  359. data/vendor/local/include/glib-2.0/gobject/gmarshal.h +169 -0
  360. data/vendor/local/include/glib-2.0/gobject/gobject.h +562 -0
  361. data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +166 -0
  362. data/vendor/local/include/glib-2.0/gobject/gparam.h +410 -0
  363. data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1083 -0
  364. data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
  365. data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
  366. data/vendor/local/include/glib-2.0/gobject/gtype.h +1608 -0
  367. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
  368. data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
  369. data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
  370. data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
  371. data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +222 -0
  372. data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +243 -0
  373. data/vendor/local/include/libintl.h +464 -0
  374. data/vendor/local/lib/GNU.Gettext.dll +0 -0
  375. data/vendor/local/lib/gio-2.0.def +800 -0
  376. data/vendor/local/lib/gio-2.0.lib +0 -0
  377. data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
  378. data/vendor/local/lib/glib-2.0.def +1381 -0
  379. data/vendor/local/lib/glib-2.0.lib +0 -0
  380. data/vendor/local/lib/gmodule-2.0.def +11 -0
  381. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  382. data/vendor/local/lib/gobject-2.0.def +349 -0
  383. data/vendor/local/lib/gobject-2.0.lib +0 -0
  384. data/vendor/local/lib/gthread-2.0.def +3 -0
  385. data/vendor/local/lib/gthread-2.0.lib +0 -0
  386. data/vendor/local/lib/intl.lib +0 -0
  387. data/vendor/local/lib/libasprintf.dll.a +0 -0
  388. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  389. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  390. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  391. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  392. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  393. data/vendor/local/lib/libintl.def +31 -0
  394. data/vendor/local/lib/libintl.dll.a +0 -0
  395. data/vendor/local/lib/pkgconfig/gio-2.0.pc +14 -0
  396. data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
  397. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
  398. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
  399. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
  400. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
  401. data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
  402. data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
  403. data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
  404. data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
  405. data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
  406. data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
  407. data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
  408. data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
  409. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
  410. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
  411. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
  412. data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
  413. data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
  414. data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
  415. data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
  416. data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
  417. data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
  418. data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
  419. data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
  420. data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
  421. data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
  422. data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
  423. data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
  424. data/vendor/local/share/glib-2.0/gdb/glib.py +252 -0
  425. data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
  426. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
  427. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +277 -0
  428. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1390 -0
  429. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +531 -0
  430. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
  431. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +568 -0
  432. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +295 -0
  433. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
  434. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
  435. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +388 -0
  436. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +993 -0
  437. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +544 -0
  438. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
  439. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
  440. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
  441. data/vendor/local/share/gtk-doc/html/gio/GFile.html +7450 -0
  442. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +115 -0
  443. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +520 -0
  444. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
  445. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
  446. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3116 -0
  447. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
  448. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
  449. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
  450. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
  451. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +182 -0
  452. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +183 -0
  453. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
  454. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
  455. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
  456. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
  457. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +195 -0
  458. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
  459. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
  460. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
  461. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
  462. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +362 -0
  463. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
  464. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
  465. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +263 -0
  466. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +248 -0
  467. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1006 -0
  468. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
  469. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
  470. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +979 -0
  471. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2152 -0
  472. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
  473. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +930 -0
  474. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +428 -0
  475. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +548 -0
  476. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +274 -0
  477. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +741 -0
  478. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
  479. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
  480. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
  481. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +381 -0
  482. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +280 -0
  483. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
  484. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
  485. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +306 -0
  486. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
  487. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
  488. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +709 -0
  489. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +180 -0
  490. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +128 -0
  491. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
  492. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
  493. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1088 -0
  494. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +206 -0
  495. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +97 -0
  496. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +4499 -0
  497. data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
  498. data/vendor/local/share/gtk-doc/html/gio/ch01.html +171 -0
  499. data/vendor/local/share/gtk-doc/html/gio/ch02.html +45 -0
  500. data/vendor/local/share/gtk-doc/html/gio/ch03.html +80 -0
  501. data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
  502. data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
  503. data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
  504. data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
  505. data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
  506. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +96 -0
  507. data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
  508. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
  509. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
  510. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
  511. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
  512. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +465 -0
  513. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +381 -0
  514. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +163 -0
  515. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +163 -0
  516. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +927 -0
  517. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +328 -0
  518. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
  519. data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
  520. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +918 -0
  521. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +107 -0
  522. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1235 -0
  523. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +1384 -0
  524. data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
  525. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +47 -0
  526. data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
  527. data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
  528. data/vendor/local/share/gtk-doc/html/gio/index.html +318 -0
  529. data/vendor/local/share/gtk-doc/html/gio/index.sgml +1795 -0
  530. data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
  531. data/vendor/local/share/gtk-doc/html/gio/migrating.html +42 -0
  532. data/vendor/local/share/gtk-doc/html/gio/networking.html +57 -0
  533. data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
  534. data/vendor/local/share/gtk-doc/html/gio/pt02.html +293 -0
  535. data/vendor/local/share/gtk-doc/html/gio/resolver.html +47 -0
  536. data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
  537. data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
  538. data/vendor/local/share/gtk-doc/html/gio/style.css +257 -0
  539. data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
  540. data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
  541. data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
  542. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
  543. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
  544. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
  545. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +563 -0
  546. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
  547. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
  548. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
  549. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
  550. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
  551. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +419 -0
  552. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +389 -0
  553. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +413 -0
  554. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
  555. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +340 -0
  556. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +7835 -0
  557. data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
  558. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +893 -0
  559. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
  560. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +413 -0
  561. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +430 -0
  562. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
  563. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
  564. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
  565. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2054 -0
  566. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
  567. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
  568. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
  569. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1187 -0
  570. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1665 -0
  571. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
  572. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
  573. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2042 -0
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1023 -0
  578. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1810 -0
  579. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +3798 -0
  580. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1815 -0
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
  585. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +629 -0
  586. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
  587. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2556 -0
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
  590. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1029 -0
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +703 -0
  596. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1045 -0
  597. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1523 -0
  598. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1466 -0
  599. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +204 -0
  600. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2648 -0
  601. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
  602. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
  603. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
  604. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +483 -0
  605. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
  606. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
  607. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1283 -0
  608. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1212 -0
  609. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
  610. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +466 -0
  611. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
  612. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2947 -0
  613. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1290 -0
  614. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1719 -0
  615. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3379 -0
  616. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
  617. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
  618. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
  619. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
  620. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
  621. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +314 -0
  622. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3356 -0
  623. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +150 -0
  624. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
  625. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
  626. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +438 -0
  627. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
  628. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
  629. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
  630. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
  631. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
  632. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
  633. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
  634. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2395 -0
  635. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
  636. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +302 -0
  637. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +112 -0
  638. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2084 -0
  639. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2556 -0
  640. data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
  641. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
  642. data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
  643. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1171 -0
  644. data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
  645. data/vendor/local/share/gtk-doc/html/glib/index.html +336 -0
  646. data/vendor/local/share/gtk-doc/html/glib/index.sgml +2717 -0
  647. data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
  648. data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
  649. data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
  650. data/vendor/local/share/gtk-doc/html/glib/style.css +257 -0
  651. data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
  652. data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
  653. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
  654. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
  655. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
  656. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
  657. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
  658. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
  659. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
  660. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
  661. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +72 -0
  662. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
  663. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
  664. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
  665. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
  666. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2577 -0
  667. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
  668. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
  669. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
  670. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
  671. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
  672. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
  673. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +355 -0
  674. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +295 -0
  675. data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
  676. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +406 -0
  677. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2355 -0
  678. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
  679. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1423 -0
  680. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
  681. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
  682. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5242 -0
  683. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2609 -0
  684. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4227 -0
  685. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +413 -0
  686. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +230 -0
  687. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
  688. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
  689. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +723 -0
  691. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +757 -0
  692. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
  693. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
  694. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
  695. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
  696. data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
  697. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
  698. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
  699. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
  700. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
  701. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
  702. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
  703. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
  704. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
  705. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
  706. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
  707. data/vendor/local/share/gtk-doc/html/gobject/index.html +187 -0
  708. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +734 -0
  709. data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
  710. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
  711. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
  712. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
  713. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
  714. data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
  715. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +82 -0
  716. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
  717. data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
  718. data/vendor/local/share/gtk-doc/html/gobject/style.css +257 -0
  719. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
  720. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
  721. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
  722. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
  723. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
  724. data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
  725. data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
  726. data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
  727. data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
  728. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  729. data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
  730. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  731. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  732. data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
  733. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  734. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  735. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  736. data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
  737. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
  738. data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
  739. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  740. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  741. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  742. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  743. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  744. data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
  745. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  746. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  747. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  748. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  749. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  750. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  751. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  752. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  753. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  754. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  755. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  756. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  757. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  758. data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
  759. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  760. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  761. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  762. data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
  763. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  764. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  765. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  766. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  767. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  768. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  769. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  770. data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
  771. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  772. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  773. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  774. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  775. data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
  776. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  777. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  778. data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
  779. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  780. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  781. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  782. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  783. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  784. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  785. data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
  786. data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
  787. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  789. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
  791. data/vendor/local/share/locale/locale.alias +77 -0
  792. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  793. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  794. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  795. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  796. data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
  797. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  798. data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
  799. data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  801. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  802. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  803. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  804. data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
  805. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  806. data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
  807. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  808. data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
  809. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  810. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  811. data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  813. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  814. data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  816. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  817. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  818. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  819. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  820. data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  822. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  823. data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
  825. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  826. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  828. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  830. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  831. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  832. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  834. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  835. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  836. data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
  837. data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
  838. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  839. data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
  840. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  841. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  842. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  843. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  844. data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
  845. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  846. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  847. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  848. data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
  849. data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
  850. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  851. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  852. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  853. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  854. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  855. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  856. data/vendor/local/share/man/man1/envsubst.1 +54 -0
  857. data/vendor/local/share/man/man1/gettext.1 +69 -0
  858. data/vendor/local/share/man/man1/glib-genmarshal.1 +307 -0
  859. data/vendor/local/share/man/man1/glib-mkenums.1 +234 -0
  860. data/vendor/local/share/man/man1/gobject-query.1 +83 -0
  861. data/vendor/local/share/man/man1/ngettext.1 +68 -0
  862. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
  863. data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
  864. data/vendor/local/share/man/man3/dcgettext.3 +1 -0
  865. data/vendor/local/share/man/man3/dcngettext.3 +1 -0
  866. data/vendor/local/share/man/man3/dgettext.3 +1 -0
  867. data/vendor/local/share/man/man3/dngettext.3 +1 -0
  868. data/vendor/local/share/man/man3/gettext.3 +99 -0
  869. data/vendor/local/share/man/man3/ngettext.3 +60 -0
  870. data/vendor/local/share/man/man3/textdomain.3 +57 -0
  871. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
  872. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
  873. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
  874. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
  875. metadata +940 -0
@@ -0,0 +1,2947 @@
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>String Utility Functions</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
+ <link rel="home" href="index.html" title="GLib Reference Manual">
8
+ <link rel="up" href="glib-utilities.html" title="GLib Utilities">
9
+ <link rel="prev" href="glib-utilities.html" title="GLib Utilities">
10
+ <link rel="next" href="glib-Character-Set-Conversion.html" title="Character Set Conversion">
11
+ <meta name="generator" content="GTK-Doc V1.14 (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">
16
+ <tr valign="middle">
17
+ <td><a accesskey="p" href="glib-utilities.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="glib-utilities.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">GLib Reference Manual</th>
21
+ <td><a accesskey="n" href="glib-Character-Set-Conversion.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22
+ </tr>
23
+ <tr><td colspan="5" class="shortcuts">
24
+ <a href="#glib-String-Utility-Functions.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#glib-String-Utility-Functions.description" class="shortcut">Description</a>
27
+ </td></tr>
28
+ </table>
29
+ <div class="refentry" title="String Utility Functions">
30
+ <a name="glib-String-Utility-Functions"></a><div class="titlepage"></div>
31
+ <div class="refnamediv"><table width="100%"><tr>
32
+ <td valign="top">
33
+ <h2><span class="refentrytitle"><a name="glib-String-Utility-Functions.top_of_page"></a>String Utility Functions</span></h2>
34
+ <p>String Utility Functions — various string-related functions</p>
35
+ </td>
36
+ <td valign="top" align="right"></td>
37
+ </tr></table></div>
38
+ <div class="refsynopsisdiv" title="Synopsis">
39
+ <a name="glib-String-Utility-Functions.synopsis"></a><h2>Synopsis</h2>
40
+ <pre class="synopsis">
41
+ #include &lt;glib.h&gt;
42
+ #include &lt;glib/gprintf.h&gt;
43
+
44
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strdup" title="g_strdup ()">g_strdup</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>);
45
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strndup" title="g_strndup ()">g_strndup</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
46
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> n</code></em>);
47
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>** <a class="link" href="glib-String-Utility-Functions.html#g-strdupv" title="g_strdupv ()">g_strdupv</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);
48
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strnfill" title="g_strnfill ()">g_strnfill</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> length</code></em>,
49
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> fill_char</code></em>);
50
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-stpcpy" title="g_stpcpy ()">g_stpcpy</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
51
+ <em class="parameter"><code>const <span class="type">char</span> *src</code></em>);
52
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-String-Utility-Functions.html#g-strstr-len" title="g_strstr_len ()">g_strstr_len</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *haystack</code></em>,
53
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> haystack_len</code></em>,
54
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *needle</code></em>);
55
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-String-Utility-Functions.html#g-strrstr" title="g_strrstr ()">g_strrstr</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *haystack</code></em>,
56
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *needle</code></em>);
57
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-String-Utility-Functions.html#g-strrstr-len" title="g_strrstr_len ()">g_strrstr_len</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *haystack</code></em>,
58
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> haystack_len</code></em>,
59
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *needle</code></em>);
60
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-str-has-prefix" title="g_str_has_prefix ()">g_str_has_prefix</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
61
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *prefix</code></em>);
62
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-str-has-suffix" title="g_str_has_suffix ()">g_str_has_suffix</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
63
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *suffix</code></em>);
64
+ <span class="returnvalue">int</span> <a class="link" href="glib-String-Utility-Functions.html#g-strcmp0" title="g_strcmp0 ()">g_strcmp0</a> (<em class="parameter"><code>const <span class="type">char</span> *str1</code></em>,
65
+ <em class="parameter"><code>const <span class="type">char</span> *str2</code></em>);
66
+
67
+ <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-strlcpy" title="g_strlcpy ()">g_strlcpy</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
68
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *src</code></em>,
69
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> dest_size</code></em>);
70
+ <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-strlcat" title="g_strlcat ()">g_strlcat</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
71
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *src</code></em>,
72
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> dest_size</code></em>);
73
+
74
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strdup-printf" title="g_strdup_printf ()">g_strdup_printf</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
75
+ <em class="parameter"><code>...</code></em>);
76
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strdup-vprintf" title="g_strdup_vprintf ()">g_strdup_vprintf</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
77
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
78
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-printf" title="g_printf ()">g_printf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
79
+ <em class="parameter"><code>...</code></em>);
80
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-vprintf" title="g_vprintf ()">g_vprintf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
81
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
82
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-fprintf" title="g_fprintf ()">g_fprintf</a> (<em class="parameter"><code><span class="type">FILE</span> *file</code></em>,
83
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
84
+ <em class="parameter"><code>...</code></em>);
85
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-vfprintf" title="g_vfprintf ()">g_vfprintf</a> (<em class="parameter"><code><span class="type">FILE</span> *file</code></em>,
86
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
87
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
88
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-sprintf" title="g_sprintf ()">g_sprintf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
89
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
90
+ <em class="parameter"><code>...</code></em>);
91
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-vsprintf" title="g_vsprintf ()">g_vsprintf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
92
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
93
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
94
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-snprintf" title="g_snprintf ()">g_snprintf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
95
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gulong" title="gulong"><span class="type">gulong</span></a> n</code></em>,
96
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
97
+ <em class="parameter"><code>...</code></em>);
98
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-vsnprintf" title="g_vsnprintf ()">g_vsnprintf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
99
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gulong" title="gulong"><span class="type">gulong</span></a> n</code></em>,
100
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
101
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
102
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-vasprintf" title="g_vasprintf ()">g_vasprintf</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **string</code></em>,
103
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
104
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
105
+ <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-printf-string-upper-bound" title="g_printf_string_upper_bound ()">g_printf_string_upper_bound</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
106
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);
107
+
108
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isalnum" title="g_ascii_isalnum ()">g_ascii_isalnum</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
109
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isalpha" title="g_ascii_isalpha ()">g_ascii_isalpha</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
110
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-iscntrl" title="g_ascii_iscntrl ()">g_ascii_iscntrl</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
111
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isdigit" title="g_ascii_isdigit ()">g_ascii_isdigit</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
112
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isgraph" title="g_ascii_isgraph ()">g_ascii_isgraph</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
113
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-islower" title="g_ascii_islower ()">g_ascii_islower</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
114
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isprint" title="g_ascii_isprint ()">g_ascii_isprint</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
115
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-ispunct" title="g_ascii_ispunct ()">g_ascii_ispunct</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
116
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isspace" title="g_ascii_isspace ()">g_ascii_isspace</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
117
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isupper" title="g_ascii_isupper ()">g_ascii_isupper</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
118
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isxdigit" title="g_ascii_isxdigit ()">g_ascii_isxdigit</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
119
+
120
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-digit-value" title="g_ascii_digit_value ()">g_ascii_digit_value</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
121
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-xdigit-value" title="g_ascii_xdigit_value ()">g_ascii_xdigit_value</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
122
+
123
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strcasecmp" title="g_ascii_strcasecmp ()">g_ascii_strcasecmp</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
124
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>);
125
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strncasecmp" title="g_ascii_strncasecmp ()">g_ascii_strncasecmp</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
126
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>,
127
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> n</code></em>);
128
+
129
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strup" title="g_ascii_strup ()">g_ascii_strup</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
130
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
131
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strdown" title="g_ascii_strdown ()">g_ascii_strdown</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
132
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
133
+
134
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-tolower" title="g_ascii_tolower ()">g_ascii_tolower</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
135
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-toupper" title="g_ascii_toupper ()">g_ascii_toupper</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);
136
+
137
+ <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-string-ascii-up" title="g_string_ascii_up ()">g_string_ascii_up</a> (<em class="parameter"><code><a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> *string</code></em>);
138
+ <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-string-ascii-down" title="g_string_ascii_down ()">g_string_ascii_down</a> (<em class="parameter"><code><a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> *string</code></em>);
139
+
140
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strup" title="g_strup ()">g_strup</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);
141
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strdown" title="g_strdown ()">g_strdown</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);
142
+
143
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-strcasecmp" title="g_strcasecmp ()">g_strcasecmp</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
144
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>);
145
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-strncasecmp" title="g_strncasecmp ()">g_strncasecmp</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
146
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>,
147
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="type">guint</span></a> n</code></em>);
148
+
149
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strreverse" title="g_strreverse ()">g_strreverse</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);
150
+
151
+ <a class="link" href="glib-Basic-Types.html#gint64" title="gint64"><span class="returnvalue">gint64</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strtoll" title="g_ascii_strtoll ()">g_ascii_strtoll</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
152
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>,
153
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="type">guint</span></a> base</code></em>);
154
+ <a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="returnvalue">guint64</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strtoull" title="g_ascii_strtoull ()">g_ascii_strtoull</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
155
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>,
156
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="type">guint</span></a> base</code></em>);
157
+ #define <a class="link" href="glib-String-Utility-Functions.html#G-ASCII-DTOSTR-BUF-SIZE:CAPS" title="G_ASCII_DTOSTR_BUF_SIZE">G_ASCII_DTOSTR_BUF_SIZE</a>
158
+ <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="returnvalue">gdouble</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strtod" title="g_ascii_strtod ()">g_ascii_strtod</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
159
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>);
160
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-String-Utility-Functions.html#g-ascii-dtostr" title="g_ascii_dtostr ()">g_ascii_dtostr</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *buffer</code></em>,
161
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> buf_len</code></em>,
162
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> d</code></em>);
163
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-String-Utility-Functions.html#g-ascii-formatd" title="g_ascii_formatd ()">g_ascii_formatd</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *buffer</code></em>,
164
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> buf_len</code></em>,
165
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
166
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> d</code></em>);
167
+ <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="returnvalue">gdouble</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-strtod" title="g_strtod ()">g_strtod</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
168
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>);
169
+
170
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strchug" title="g_strchug ()">g_strchug</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);
171
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strchomp" title="g_strchomp ()">g_strchomp</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);
172
+ #define <a class="link" href="glib-String-Utility-Functions.html#g-strstrip" title="g_strstrip()">g_strstrip</a> (string)
173
+
174
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strdelimit" title="g_strdelimit ()">g_strdelimit</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
175
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *delimiters</code></em>,
176
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> new_delimiter</code></em>);
177
+ #define <a class="link" href="glib-String-Utility-Functions.html#G-STR-DELIMITERS:CAPS" title="G_STR_DELIMITERS">G_STR_DELIMITERS</a>
178
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strescape" title="g_strescape ()">g_strescape</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *source</code></em>,
179
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *exceptions</code></em>);
180
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strcompress" title="g_strcompress ()">g_strcompress</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *source</code></em>);
181
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strcanon" title="g_strcanon ()">g_strcanon</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
182
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *valid_chars</code></em>,
183
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> substitutor</code></em>);
184
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>** <a class="link" href="glib-String-Utility-Functions.html#g-strsplit" title="g_strsplit ()">g_strsplit</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
185
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *delimiter</code></em>,
186
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> max_tokens</code></em>);
187
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** <a class="link" href="glib-String-Utility-Functions.html#g-strsplit-set" title="g_strsplit_set ()">g_strsplit_set</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
188
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *delimiters</code></em>,
189
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> max_tokens</code></em>);
190
+ <span class="returnvalue">void</span> <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()">g_strfreev</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);
191
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strconcat" title="g_strconcat ()">g_strconcat</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string1</code></em>,
192
+ <em class="parameter"><code>...</code></em>);
193
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strjoin" title="g_strjoin ()">g_strjoin</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *separator</code></em>,
194
+ <em class="parameter"><code>...</code></em>);
195
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strjoinv" title="g_strjoinv ()">g_strjoinv</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *separator</code></em>,
196
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);
197
+ <a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="returnvalue">guint</span></a> <a class="link" href="glib-String-Utility-Functions.html#g-strv-length" title="g_strv_length ()">g_strv_length</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);
198
+
199
+ const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strerror" title="g_strerror ()">g_strerror</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> errnum</code></em>);
200
+ const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-String-Utility-Functions.html#g-strsignal" title="g_strsignal ()">g_strsignal</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> signum</code></em>);
201
+ </pre>
202
+ </div>
203
+ <div class="refsect1" title="Description">
204
+ <a name="glib-String-Utility-Functions.description"></a><h2>Description</h2>
205
+ <p>
206
+ This section describes a number of utility functions for creating,
207
+ duplicating, and manipulating strings.
208
+ </p>
209
+ <p>
210
+ Note that the functions <a class="link" href="glib-String-Utility-Functions.html#g-printf" title="g_printf ()"><code class="function">g_printf()</code></a>, <a class="link" href="glib-String-Utility-Functions.html#g-fprintf" title="g_fprintf ()"><code class="function">g_fprintf()</code></a>, <a class="link" href="glib-String-Utility-Functions.html#g-sprintf" title="g_sprintf ()"><code class="function">g_sprintf()</code></a>, <a class="link" href="glib-String-Utility-Functions.html#g-snprintf" title="g_snprintf ()"><code class="function">g_snprintf()</code></a>,
211
+ <a class="link" href="glib-String-Utility-Functions.html#g-vprintf" title="g_vprintf ()"><code class="function">g_vprintf()</code></a>, <a class="link" href="glib-String-Utility-Functions.html#g-vfprintf" title="g_vfprintf ()"><code class="function">g_vfprintf()</code></a>, <a class="link" href="glib-String-Utility-Functions.html#g-vsprintf" title="g_vsprintf ()"><code class="function">g_vsprintf()</code></a> and <a class="link" href="glib-String-Utility-Functions.html#g-vsnprintf" title="g_vsnprintf ()"><code class="function">g_vsnprintf()</code></a> are declared in
212
+ the header <code class="filename">gprintf.h</code> which is <span class="emphasis"><em>not</em></span>
213
+ included in <code class="filename">glib.h</code> (otherwise using
214
+ <code class="filename">glib.h</code> would drag in <code class="filename">stdio.h</code>), so
215
+ you'll have to explicitly include <code class="literal">&lt;glib/gprintf.h&gt;</code>
216
+ in order to use the GLib <code class="function">printf()</code> functions.
217
+ </p>
218
+ <p><a name="string-precision"></a>
219
+ While you may use the <code class="function">printf()</code> functions to format UTF-8 strings, notice that
220
+ the precision of a <code class="literal">%Ns</code> parameter is interpreted as the
221
+ number of <span class="emphasis"><em>bytes</em></span>, not <span class="emphasis"><em>characters</em></span> to print.
222
+ On top of that, the GNU libc implementation of the <code class="function">printf()</code> functions has the "feature"
223
+ that it checks that the string given for the <code class="literal">%Ns</code> parameter
224
+ consists of a whole number of characters in the current encoding. So, unless you
225
+ are sure you are always going to be in an UTF-8 locale or your know your text is restricted
226
+ to ASCII, avoid using <code class="literal">%Ns</code>.
227
+ If your intention is to format strings for a certain number of columns, then
228
+ <code class="literal">%Ns</code> is not a correct solution anyway, since it fails to take
229
+ wide characters (see <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide" title="g_unichar_iswide ()"><code class="function">g_unichar_iswide()</code></a>) into account.
230
+ </p>
231
+ </div>
232
+ <div class="refsect1" title="Details">
233
+ <a name="glib-String-Utility-Functions.details"></a><h2>Details</h2>
234
+ <div class="refsect2" title="g_strdup ()">
235
+ <a name="g-strdup"></a><h3>g_strdup ()</h3>
236
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strdup (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>);</pre>
237
+ <p>
238
+ Duplicates a string. If <em class="parameter"><code>str</code></em> is <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> it returns <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
239
+ The returned string should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>
240
+ when no longer needed.
241
+ </p>
242
+ <div class="variablelist"><table border="0">
243
+ <col align="left" valign="top">
244
+ <tbody>
245
+ <tr>
246
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
247
+ <td>the string to duplicate
248
+ </td>
249
+ </tr>
250
+ <tr>
251
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
252
+ <td> a newly-allocated copy of <em class="parameter"><code>str</code></em>
253
+ </td>
254
+ </tr>
255
+ </tbody>
256
+ </table></div>
257
+ </div>
258
+ <hr>
259
+ <div class="refsect2" title="g_strndup ()">
260
+ <a name="g-strndup"></a><h3>g_strndup ()</h3>
261
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strndup (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
262
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> n</code></em>);</pre>
263
+ <p>
264
+ Duplicates the first <em class="parameter"><code>n</code></em> bytes of a string, returning a newly-allocated
265
+ buffer <em class="parameter"><code>n</code></em> + 1 bytes long which will always be nul-terminated.
266
+ If <em class="parameter"><code>str</code></em> is less than <em class="parameter"><code>n</code></em> bytes long the buffer is padded with nuls.
267
+ If <em class="parameter"><code>str</code></em> is <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> it returns <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
268
+ The returned value should be freed when no longer needed.
269
+ </p>
270
+ <p>
271
+ </p>
272
+ <div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;">
273
+ <h3 class="title">Note</h3>
274
+ <p>
275
+ To copy a number of characters from a UTF-8 encoded string, use
276
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strncpy" title="g_utf8_strncpy ()"><code class="function">g_utf8_strncpy()</code></a> instead.
277
+ </p>
278
+ </div>
279
+ <p>
280
+ </p>
281
+ <div class="variablelist"><table border="0">
282
+ <col align="left" valign="top">
283
+ <tbody>
284
+ <tr>
285
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
286
+ <td>the string to duplicate
287
+ </td>
288
+ </tr>
289
+ <tr>
290
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
291
+ <td>the maximum number of bytes to copy from <em class="parameter"><code>str</code></em>
292
+ </td>
293
+ </tr>
294
+ <tr>
295
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
296
+ <td> a newly-allocated buffer containing the first <em class="parameter"><code>n</code></em> bytes
297
+ of <em class="parameter"><code>str</code></em>, nul-terminated
298
+ </td>
299
+ </tr>
300
+ </tbody>
301
+ </table></div>
302
+ </div>
303
+ <hr>
304
+ <div class="refsect2" title="g_strdupv ()">
305
+ <a name="g-strdupv"></a><h3>g_strdupv ()</h3>
306
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>** g_strdupv (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);</pre>
307
+ <p>
308
+ Copies <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings. The copy is a deep copy;
309
+ the new array should be freed by first freeing each string, then
310
+ the array itself. <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a> does this for you. If called
311
+ on a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> value, <a class="link" href="glib-String-Utility-Functions.html#g-strdupv" title="g_strdupv ()"><code class="function">g_strdupv()</code></a> simply returns <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
312
+ </p>
313
+ <div class="variablelist"><table border="0">
314
+ <col align="left" valign="top">
315
+ <tbody>
316
+ <tr>
317
+ <td><p><span class="term"><em class="parameter"><code>str_array</code></em> :</span></p></td>
318
+ <td>
319
+ <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings.
320
+ </td>
321
+ </tr>
322
+ <tr>
323
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
324
+ <td> a new <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings.
325
+ </td>
326
+ </tr>
327
+ </tbody>
328
+ </table></div>
329
+ </div>
330
+ <hr>
331
+ <div class="refsect2" title="g_strnfill ()">
332
+ <a name="g-strnfill"></a><h3>g_strnfill ()</h3>
333
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strnfill (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> length</code></em>,
334
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> fill_char</code></em>);</pre>
335
+ <p>
336
+ Creates a new string <em class="parameter"><code>length</code></em> bytes long filled with <em class="parameter"><code>fill_char</code></em>.
337
+ The returned string should be freed when no longer needed.
338
+ </p>
339
+ <div class="variablelist"><table border="0">
340
+ <col align="left" valign="top">
341
+ <tbody>
342
+ <tr>
343
+ <td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
344
+ <td>the length of the new string
345
+ </td>
346
+ </tr>
347
+ <tr>
348
+ <td><p><span class="term"><em class="parameter"><code>fill_char</code></em> :</span></p></td>
349
+ <td>the byte to fill the string with
350
+ </td>
351
+ </tr>
352
+ <tr>
353
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
354
+ <td> a newly-allocated string filled the <em class="parameter"><code>fill_char</code></em>
355
+ </td>
356
+ </tr>
357
+ </tbody>
358
+ </table></div>
359
+ </div>
360
+ <hr>
361
+ <div class="refsect2" title="g_stpcpy ()">
362
+ <a name="g-stpcpy"></a><h3>g_stpcpy ()</h3>
363
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_stpcpy (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
364
+ <em class="parameter"><code>const <span class="type">char</span> *src</code></em>);</pre>
365
+ <p>
366
+ Copies a nul-terminated string into the dest buffer, include the
367
+ trailing nul, and return a pointer to the trailing nul byte.
368
+ This is useful for concatenating multiple strings together
369
+ without having to repeatedly scan for the end.
370
+ </p>
371
+ <div class="variablelist"><table border="0">
372
+ <col align="left" valign="top">
373
+ <tbody>
374
+ <tr>
375
+ <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
376
+ <td>destination buffer.
377
+ </td>
378
+ </tr>
379
+ <tr>
380
+ <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td>
381
+ <td>source string.
382
+ </td>
383
+ </tr>
384
+ <tr>
385
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
386
+ <td> a pointer to trailing nul byte.
387
+ </td>
388
+ </tr>
389
+ </tbody>
390
+ </table></div>
391
+ </div>
392
+ <hr>
393
+ <div class="refsect2" title="g_strstr_len ()">
394
+ <a name="g-strstr-len"></a><h3>g_strstr_len ()</h3>
395
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_strstr_len (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *haystack</code></em>,
396
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> haystack_len</code></em>,
397
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *needle</code></em>);</pre>
398
+ <p>
399
+ Searches the string <em class="parameter"><code>haystack</code></em> for the first occurrence
400
+ of the string <em class="parameter"><code>needle</code></em>, limiting the length of the search
401
+ to <em class="parameter"><code>haystack_len</code></em>.
402
+ </p>
403
+ <div class="variablelist"><table border="0">
404
+ <col align="left" valign="top">
405
+ <tbody>
406
+ <tr>
407
+ <td><p><span class="term"><em class="parameter"><code>haystack</code></em> :</span></p></td>
408
+ <td>a string.
409
+ </td>
410
+ </tr>
411
+ <tr>
412
+ <td><p><span class="term"><em class="parameter"><code>haystack_len</code></em> :</span></p></td>
413
+ <td>the maximum length of <em class="parameter"><code>haystack</code></em>. Note that -1 is
414
+ a valid length, if <em class="parameter"><code>haystack</code></em> is nul-terminated, meaning it will
415
+ search through the whole string.
416
+ </td>
417
+ </tr>
418
+ <tr>
419
+ <td><p><span class="term"><em class="parameter"><code>needle</code></em> :</span></p></td>
420
+ <td>the string to search for.
421
+ </td>
422
+ </tr>
423
+ <tr>
424
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
425
+ <td> a pointer to the found occurrence, or
426
+ <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if not found.
427
+ </td>
428
+ </tr>
429
+ </tbody>
430
+ </table></div>
431
+ </div>
432
+ <hr>
433
+ <div class="refsect2" title="g_strrstr ()">
434
+ <a name="g-strrstr"></a><h3>g_strrstr ()</h3>
435
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_strrstr (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *haystack</code></em>,
436
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *needle</code></em>);</pre>
437
+ <p>
438
+ Searches the string <em class="parameter"><code>haystack</code></em> for the last occurrence
439
+ of the string <em class="parameter"><code>needle</code></em>.
440
+ </p>
441
+ <div class="variablelist"><table border="0">
442
+ <col align="left" valign="top">
443
+ <tbody>
444
+ <tr>
445
+ <td><p><span class="term"><em class="parameter"><code>haystack</code></em> :</span></p></td>
446
+ <td>a nul-terminated string.
447
+ </td>
448
+ </tr>
449
+ <tr>
450
+ <td><p><span class="term"><em class="parameter"><code>needle</code></em> :</span></p></td>
451
+ <td>the nul-terminated string to search for.
452
+ </td>
453
+ </tr>
454
+ <tr>
455
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
456
+ <td> a pointer to the found occurrence, or
457
+ <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if not found.
458
+ </td>
459
+ </tr>
460
+ </tbody>
461
+ </table></div>
462
+ </div>
463
+ <hr>
464
+ <div class="refsect2" title="g_strrstr_len ()">
465
+ <a name="g-strrstr-len"></a><h3>g_strrstr_len ()</h3>
466
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_strrstr_len (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *haystack</code></em>,
467
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> haystack_len</code></em>,
468
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *needle</code></em>);</pre>
469
+ <p>
470
+ Searches the string <em class="parameter"><code>haystack</code></em> for the last occurrence
471
+ of the string <em class="parameter"><code>needle</code></em>, limiting the length of the search
472
+ to <em class="parameter"><code>haystack_len</code></em>.
473
+ </p>
474
+ <div class="variablelist"><table border="0">
475
+ <col align="left" valign="top">
476
+ <tbody>
477
+ <tr>
478
+ <td><p><span class="term"><em class="parameter"><code>haystack</code></em> :</span></p></td>
479
+ <td>a nul-terminated string.
480
+ </td>
481
+ </tr>
482
+ <tr>
483
+ <td><p><span class="term"><em class="parameter"><code>haystack_len</code></em> :</span></p></td>
484
+ <td>the maximum length of <em class="parameter"><code>haystack</code></em>.
485
+ </td>
486
+ </tr>
487
+ <tr>
488
+ <td><p><span class="term"><em class="parameter"><code>needle</code></em> :</span></p></td>
489
+ <td>the nul-terminated string to search for.
490
+ </td>
491
+ </tr>
492
+ <tr>
493
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
494
+ <td> a pointer to the found occurrence, or
495
+ <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if not found.
496
+ </td>
497
+ </tr>
498
+ </tbody>
499
+ </table></div>
500
+ </div>
501
+ <hr>
502
+ <div class="refsect2" title="g_str_has_prefix ()">
503
+ <a name="g-str-has-prefix"></a><h3>g_str_has_prefix ()</h3>
504
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_str_has_prefix (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
505
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *prefix</code></em>);</pre>
506
+ <p>
507
+ Looks whether the string <em class="parameter"><code>str</code></em> begins with <em class="parameter"><code>prefix</code></em>.
508
+ </p>
509
+ <div class="variablelist"><table border="0">
510
+ <col align="left" valign="top">
511
+ <tbody>
512
+ <tr>
513
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
514
+ <td>a nul-terminated string.
515
+ </td>
516
+ </tr>
517
+ <tr>
518
+ <td><p><span class="term"><em class="parameter"><code>prefix</code></em> :</span></p></td>
519
+ <td>the nul-terminated prefix to look for.
520
+ </td>
521
+ </tr>
522
+ <tr>
523
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
524
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>str</code></em> begins with <em class="parameter"><code>prefix</code></em>, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise.
525
+
526
+ </td>
527
+ </tr>
528
+ </tbody>
529
+ </table></div>
530
+ <p class="since">Since 2.2</p>
531
+ </div>
532
+ <hr>
533
+ <div class="refsect2" title="g_str_has_suffix ()">
534
+ <a name="g-str-has-suffix"></a><h3>g_str_has_suffix ()</h3>
535
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_str_has_suffix (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
536
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *suffix</code></em>);</pre>
537
+ <p>
538
+ Looks whether the string <em class="parameter"><code>str</code></em> ends with <em class="parameter"><code>suffix</code></em>.
539
+ </p>
540
+ <div class="variablelist"><table border="0">
541
+ <col align="left" valign="top">
542
+ <tbody>
543
+ <tr>
544
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
545
+ <td>a nul-terminated string.
546
+ </td>
547
+ </tr>
548
+ <tr>
549
+ <td><p><span class="term"><em class="parameter"><code>suffix</code></em> :</span></p></td>
550
+ <td>the nul-terminated suffix to look for.
551
+ </td>
552
+ </tr>
553
+ <tr>
554
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
555
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>str</code></em> end with <em class="parameter"><code>suffix</code></em>, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise.
556
+
557
+ </td>
558
+ </tr>
559
+ </tbody>
560
+ </table></div>
561
+ <p class="since">Since 2.2</p>
562
+ </div>
563
+ <hr>
564
+ <div class="refsect2" title="g_strcmp0 ()">
565
+ <a name="g-strcmp0"></a><h3>g_strcmp0 ()</h3>
566
+ <pre class="programlisting"><span class="returnvalue">int</span> g_strcmp0 (<em class="parameter"><code>const <span class="type">char</span> *str1</code></em>,
567
+ <em class="parameter"><code>const <span class="type">char</span> *str2</code></em>);</pre>
568
+ <p>
569
+ Compares <em class="parameter"><code>str1</code></em> and <em class="parameter"><code>str2</code></em> like <code class="function">strcmp()</code>. Handles <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
570
+ gracefully by sorting it before non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> strings.
571
+ </p>
572
+ <div class="variablelist"><table border="0">
573
+ <col align="left" valign="top">
574
+ <tbody>
575
+ <tr>
576
+ <td><p><span class="term"><em class="parameter"><code>str1</code></em> :</span></p></td>
577
+ <td>a C string or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
578
+ </td>
579
+ </tr>
580
+ <tr>
581
+ <td><p><span class="term"><em class="parameter"><code>str2</code></em> :</span></p></td>
582
+ <td>another C string or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
583
+ </td>
584
+ </tr>
585
+ <tr>
586
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
587
+ <td> -1, 0 or 1, if <em class="parameter"><code>str1</code></em> is &lt;, == or &gt; than <em class="parameter"><code>str2</code></em>.
588
+
589
+ </td>
590
+ </tr>
591
+ </tbody>
592
+ </table></div>
593
+ <p class="since">Since 2.16</p>
594
+ </div>
595
+ <hr>
596
+ <div class="refsect2" title="g_strlcpy ()">
597
+ <a name="g-strlcpy"></a><h3>g_strlcpy ()</h3>
598
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> g_strlcpy (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
599
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *src</code></em>,
600
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> dest_size</code></em>);</pre>
601
+ <p>
602
+ Portability wrapper that calls <code class="function">strlcpy()</code> on systems which have it,
603
+ and emulates <code class="function">strlcpy()</code> otherwise. Copies <em class="parameter"><code>src</code></em> to <em class="parameter"><code>dest</code></em>; <em class="parameter"><code>dest</code></em> is
604
+ guaranteed to be nul-terminated; <em class="parameter"><code>src</code></em> must be nul-terminated;
605
+ <em class="parameter"><code>dest_size</code></em> is the buffer size, not the number of chars to copy.
606
+ </p>
607
+ <p>
608
+ At most dest_size - 1 characters will be copied. Always nul-terminates
609
+ (unless dest_size == 0). This function does <span class="emphasis"><em>not</em></span>
610
+ allocate memory. Unlike <code class="function">strncpy()</code>, this function doesn't pad dest (so
611
+ it's often faster). It returns the size of the attempted result,
612
+ strlen (src), so if <em class="parameter"><code>retval</code></em> &gt;= <em class="parameter"><code>dest_size</code></em>, truncation occurred.
613
+ </p>
614
+ <p>
615
+ </p>
616
+ <div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;">
617
+ <h3 class="title">Note</h3>
618
+ <p>Caveat: <code class="function">strlcpy()</code> is supposedly more secure than
619
+ <code class="function">strcpy()</code> or <code class="function">strncpy()</code>, but if you really want to avoid screwups,
620
+ <a class="link" href="glib-String-Utility-Functions.html#g-strdup" title="g_strdup ()"><code class="function">g_strdup()</code></a> is an even better idea.</p>
621
+ </div>
622
+ <p>
623
+ </p>
624
+ <div class="variablelist"><table border="0">
625
+ <col align="left" valign="top">
626
+ <tbody>
627
+ <tr>
628
+ <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
629
+ <td>destination buffer
630
+ </td>
631
+ </tr>
632
+ <tr>
633
+ <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td>
634
+ <td>source buffer
635
+ </td>
636
+ </tr>
637
+ <tr>
638
+ <td><p><span class="term"><em class="parameter"><code>dest_size</code></em> :</span></p></td>
639
+ <td>length of <em class="parameter"><code>dest</code></em> in bytes
640
+ </td>
641
+ </tr>
642
+ <tr>
643
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
644
+ <td> length of <em class="parameter"><code>src</code></em>
645
+ </td>
646
+ </tr>
647
+ </tbody>
648
+ </table></div>
649
+ </div>
650
+ <hr>
651
+ <div class="refsect2" title="g_strlcat ()">
652
+ <a name="g-strlcat"></a><h3>g_strlcat ()</h3>
653
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> g_strlcat (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
654
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *src</code></em>,
655
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> dest_size</code></em>);</pre>
656
+ <p>
657
+ Portability wrapper that calls <code class="function">strlcat()</code> on systems which have it,
658
+ and emulates it otherwise. Appends nul-terminated <em class="parameter"><code>src</code></em> string to <em class="parameter"><code>dest</code></em>,
659
+ guaranteeing nul-termination for <em class="parameter"><code>dest</code></em>. The total size of <em class="parameter"><code>dest</code></em> won't
660
+ exceed <em class="parameter"><code>dest_size</code></em>.
661
+ </p>
662
+ <p>
663
+ At most dest_size - 1 characters will be copied.
664
+ Unlike strncat, dest_size is the full size of dest, not the space left over.
665
+ This function does NOT allocate memory.
666
+ This always NUL terminates (unless siz == 0 or there were no NUL characters
667
+ in the dest_size characters of dest to start with).
668
+ </p>
669
+ <p>
670
+ </p>
671
+ <div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;">
672
+ <h3 class="title">Note</h3>
673
+ <p>Caveat: this is supposedly a more secure alternative to
674
+ <code class="function">strcat()</code> or <code class="function">strncat()</code>, but for real security <a class="link" href="glib-String-Utility-Functions.html#g-strconcat" title="g_strconcat ()"><code class="function">g_strconcat()</code></a> is harder
675
+ to mess up.</p>
676
+ </div>
677
+ <p>
678
+ </p>
679
+ <div class="variablelist"><table border="0">
680
+ <col align="left" valign="top">
681
+ <tbody>
682
+ <tr>
683
+ <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
684
+ <td>destination buffer, already containing one nul-terminated string
685
+ </td>
686
+ </tr>
687
+ <tr>
688
+ <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td>
689
+ <td>source buffer
690
+ </td>
691
+ </tr>
692
+ <tr>
693
+ <td><p><span class="term"><em class="parameter"><code>dest_size</code></em> :</span></p></td>
694
+ <td>length of <em class="parameter"><code>dest</code></em> buffer in bytes (not length of existing string
695
+ inside <em class="parameter"><code>dest</code></em>)
696
+ </td>
697
+ </tr>
698
+ <tr>
699
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
700
+ <td>size of attempted result, which is
701
+ MIN (dest_size, strlen (original dest)) + strlen (src),
702
+ so if retval &gt;= dest_size, truncation occurred.
703
+ </td>
704
+ </tr>
705
+ </tbody>
706
+ </table></div>
707
+ </div>
708
+ <hr>
709
+ <div class="refsect2" title="g_strdup_printf ()">
710
+ <a name="g-strdup-printf"></a><h3>g_strdup_printf ()</h3>
711
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strdup_printf (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
712
+ <em class="parameter"><code>...</code></em>);</pre>
713
+ <p>
714
+ Similar to the standard C <code class="function">sprintf()</code> function but safer, since it
715
+ calculates the maximum space required and allocates memory to hold
716
+ the result. The returned string should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> when no
717
+ longer needed.
718
+ </p>
719
+ <div class="variablelist"><table border="0">
720
+ <col align="left" valign="top">
721
+ <tbody>
722
+ <tr>
723
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
724
+ <td>a standard <code class="function">printf()</code> format string, but notice
725
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>
726
+ </td>
727
+ </tr>
728
+ <tr>
729
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
730
+ <td>the parameters to insert into the format string
731
+ </td>
732
+ </tr>
733
+ <tr>
734
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
735
+ <td> a newly-allocated string holding the result
736
+ </td>
737
+ </tr>
738
+ </tbody>
739
+ </table></div>
740
+ </div>
741
+ <hr>
742
+ <div class="refsect2" title="g_strdup_vprintf ()">
743
+ <a name="g-strdup-vprintf"></a><h3>g_strdup_vprintf ()</h3>
744
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strdup_vprintf (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
745
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
746
+ <p>
747
+ Similar to the standard C <code class="function">vsprintf()</code> function but safer, since it
748
+ calculates the maximum space required and allocates memory to hold
749
+ the result. The returned string should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> when
750
+ no longer needed.
751
+ </p>
752
+ <p>
753
+ See also <a class="link" href="glib-String-Utility-Functions.html#g-vasprintf" title="g_vasprintf ()"><code class="function">g_vasprintf()</code></a>, which offers the same functionality, but
754
+ additionally returns the length of the allocated string.
755
+ </p>
756
+ <div class="variablelist"><table border="0">
757
+ <col align="left" valign="top">
758
+ <tbody>
759
+ <tr>
760
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
761
+ <td>a standard <code class="function">printf()</code> format string, but notice
762
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>
763
+ </td>
764
+ </tr>
765
+ <tr>
766
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
767
+ <td>the list of parameters to insert into the format string
768
+ </td>
769
+ </tr>
770
+ <tr>
771
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
772
+ <td> a newly-allocated string holding the result
773
+ </td>
774
+ </tr>
775
+ </tbody>
776
+ </table></div>
777
+ </div>
778
+ <hr>
779
+ <div class="refsect2" title="g_printf ()">
780
+ <a name="g-printf"></a><h3>g_printf ()</h3>
781
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_printf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
782
+ <em class="parameter"><code>...</code></em>);</pre>
783
+ <p>
784
+ An implementation of the standard <code class="function">printf()</code> function which supports
785
+ positional parameters, as specified in the Single Unix Specification.
786
+ </p>
787
+ <div class="variablelist"><table border="0">
788
+ <col align="left" valign="top">
789
+ <tbody>
790
+ <tr>
791
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
792
+ <td>a standard <code class="function">printf()</code> format string, but notice
793
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
794
+ </td>
795
+ </tr>
796
+ <tr>
797
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
798
+ <td>the arguments to insert in the output.
799
+ </td>
800
+ </tr>
801
+ <tr>
802
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
803
+ <td> the number of bytes printed.
804
+
805
+ </td>
806
+ </tr>
807
+ </tbody>
808
+ </table></div>
809
+ <p class="since">Since 2.2</p>
810
+ </div>
811
+ <hr>
812
+ <div class="refsect2" title="g_vprintf ()">
813
+ <a name="g-vprintf"></a><h3>g_vprintf ()</h3>
814
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_vprintf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
815
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
816
+ <p>
817
+ An implementation of the standard <code class="function">vprintf()</code> function which supports
818
+ positional parameters, as specified in the Single Unix Specification.
819
+ </p>
820
+ <div class="variablelist"><table border="0">
821
+ <col align="left" valign="top">
822
+ <tbody>
823
+ <tr>
824
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
825
+ <td>a standard <code class="function">printf()</code> format string, but notice
826
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
827
+ </td>
828
+ </tr>
829
+ <tr>
830
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
831
+ <td>the list of arguments to insert in the output.
832
+ </td>
833
+ </tr>
834
+ <tr>
835
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
836
+ <td> the number of bytes printed.
837
+
838
+ </td>
839
+ </tr>
840
+ </tbody>
841
+ </table></div>
842
+ <p class="since">Since 2.2</p>
843
+ </div>
844
+ <hr>
845
+ <div class="refsect2" title="g_fprintf ()">
846
+ <a name="g-fprintf"></a><h3>g_fprintf ()</h3>
847
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_fprintf (<em class="parameter"><code><span class="type">FILE</span> *file</code></em>,
848
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
849
+ <em class="parameter"><code>...</code></em>);</pre>
850
+ <p>
851
+ An implementation of the standard <code class="function">fprintf()</code> function which supports
852
+ positional parameters, as specified in the Single Unix Specification.
853
+ </p>
854
+ <div class="variablelist"><table border="0">
855
+ <col align="left" valign="top">
856
+ <tbody>
857
+ <tr>
858
+ <td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
859
+ <td>the stream to write to.
860
+ </td>
861
+ </tr>
862
+ <tr>
863
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
864
+ <td>a standard <code class="function">printf()</code> format string, but notice
865
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
866
+ </td>
867
+ </tr>
868
+ <tr>
869
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
870
+ <td>the arguments to insert in the output.
871
+ </td>
872
+ </tr>
873
+ <tr>
874
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
875
+ <td> the number of bytes printed.
876
+
877
+ </td>
878
+ </tr>
879
+ </tbody>
880
+ </table></div>
881
+ <p class="since">Since 2.2</p>
882
+ </div>
883
+ <hr>
884
+ <div class="refsect2" title="g_vfprintf ()">
885
+ <a name="g-vfprintf"></a><h3>g_vfprintf ()</h3>
886
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_vfprintf (<em class="parameter"><code><span class="type">FILE</span> *file</code></em>,
887
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
888
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
889
+ <p>
890
+ An implementation of the standard <code class="function">fprintf()</code> function which supports
891
+ positional parameters, as specified in the Single Unix Specification.
892
+ </p>
893
+ <div class="variablelist"><table border="0">
894
+ <col align="left" valign="top">
895
+ <tbody>
896
+ <tr>
897
+ <td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
898
+ <td>the stream to write to.
899
+ </td>
900
+ </tr>
901
+ <tr>
902
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
903
+ <td>a standard <code class="function">printf()</code> format string, but notice
904
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
905
+ </td>
906
+ </tr>
907
+ <tr>
908
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
909
+ <td>the list of arguments to insert in the output.
910
+ </td>
911
+ </tr>
912
+ <tr>
913
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
914
+ <td> the number of bytes printed.
915
+
916
+ </td>
917
+ </tr>
918
+ </tbody>
919
+ </table></div>
920
+ <p class="since">Since 2.2</p>
921
+ </div>
922
+ <hr>
923
+ <div class="refsect2" title="g_sprintf ()">
924
+ <a name="g-sprintf"></a><h3>g_sprintf ()</h3>
925
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_sprintf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
926
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
927
+ <em class="parameter"><code>...</code></em>);</pre>
928
+ <p>
929
+ An implementation of the standard <code class="function">sprintf()</code> function which supports
930
+ positional parameters, as specified in the Single Unix Specification.
931
+ </p>
932
+ <div class="variablelist"><table border="0">
933
+ <col align="left" valign="top">
934
+ <tbody>
935
+ <tr>
936
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
937
+ <td>A pointer to a memory buffer to contain the resulting string. It
938
+ is up to the caller to ensure that the allocated buffer is large
939
+ enough to hold the formatted result
940
+ </td>
941
+ </tr>
942
+ <tr>
943
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
944
+ <td>a standard <code class="function">printf()</code> format string, but notice
945
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
946
+ </td>
947
+ </tr>
948
+ <tr>
949
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
950
+ <td>the arguments to insert in the output.
951
+ </td>
952
+ </tr>
953
+ <tr>
954
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
955
+ <td> the number of bytes printed.
956
+
957
+ </td>
958
+ </tr>
959
+ </tbody>
960
+ </table></div>
961
+ <p class="since">Since 2.2</p>
962
+ </div>
963
+ <hr>
964
+ <div class="refsect2" title="g_vsprintf ()">
965
+ <a name="g-vsprintf"></a><h3>g_vsprintf ()</h3>
966
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_vsprintf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
967
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
968
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
969
+ <p>
970
+ An implementation of the standard <code class="function">vsprintf()</code> function which supports
971
+ positional parameters, as specified in the Single Unix Specification.
972
+ </p>
973
+ <div class="variablelist"><table border="0">
974
+ <col align="left" valign="top">
975
+ <tbody>
976
+ <tr>
977
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
978
+ <td>the buffer to hold the output.
979
+ </td>
980
+ </tr>
981
+ <tr>
982
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
983
+ <td>a standard <code class="function">printf()</code> format string, but notice
984
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
985
+ </td>
986
+ </tr>
987
+ <tr>
988
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
989
+ <td>the list of arguments to insert in the output.
990
+ </td>
991
+ </tr>
992
+ <tr>
993
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
994
+ <td> the number of bytes printed.
995
+
996
+ </td>
997
+ </tr>
998
+ </tbody>
999
+ </table></div>
1000
+ <p class="since">Since 2.2</p>
1001
+ </div>
1002
+ <hr>
1003
+ <div class="refsect2" title="g_snprintf ()">
1004
+ <a name="g-snprintf"></a><h3>g_snprintf ()</h3>
1005
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_snprintf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
1006
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gulong" title="gulong"><span class="type">gulong</span></a> n</code></em>,
1007
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
1008
+ <em class="parameter"><code>...</code></em>);</pre>
1009
+ <p>
1010
+ A safer form of the standard <code class="function">sprintf()</code> function. The output is guaranteed
1011
+ to not exceed <em class="parameter"><code>n</code></em> characters (including the terminating nul character), so
1012
+ it is easy to ensure that a buffer overflow cannot occur.
1013
+ </p>
1014
+ <p>
1015
+ See also <a class="link" href="glib-String-Utility-Functions.html#g-strdup-printf" title="g_strdup_printf ()"><code class="function">g_strdup_printf()</code></a>.
1016
+ </p>
1017
+ <p>
1018
+ In versions of GLib prior to 1.2.3, this function may return -1 if the
1019
+ output was truncated, and the truncated string may not be nul-terminated.
1020
+ In versions prior to 1.3.12, this function returns the length of the output
1021
+ string.
1022
+ </p>
1023
+ <p>
1024
+ The return value of <a class="link" href="glib-String-Utility-Functions.html#g-snprintf" title="g_snprintf ()"><code class="function">g_snprintf()</code></a> conforms to the <code class="function">snprintf()</code>
1025
+ function as standardized in ISO C99. Note that this is different from
1026
+ traditional <code class="function">snprintf()</code>, which returns the length of the output string.
1027
+ </p>
1028
+ <p>
1029
+ The format string may contain positional parameters, as specified in
1030
+ the Single Unix Specification.
1031
+ </p>
1032
+ <div class="variablelist"><table border="0">
1033
+ <col align="left" valign="top">
1034
+ <tbody>
1035
+ <tr>
1036
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1037
+ <td>the buffer to hold the output.
1038
+ </td>
1039
+ </tr>
1040
+ <tr>
1041
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
1042
+ <td>the maximum number of bytes to produce (including the
1043
+ terminating nul character).
1044
+ </td>
1045
+ </tr>
1046
+ <tr>
1047
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
1048
+ <td>a standard <code class="function">printf()</code> format string, but notice
1049
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
1050
+ </td>
1051
+ </tr>
1052
+ <tr>
1053
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
1054
+ <td>the arguments to insert in the output.
1055
+ </td>
1056
+ </tr>
1057
+ <tr>
1058
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1059
+ <td> the number of bytes which would be produced if the buffer
1060
+ was large enough.
1061
+ </td>
1062
+ </tr>
1063
+ </tbody>
1064
+ </table></div>
1065
+ </div>
1066
+ <hr>
1067
+ <div class="refsect2" title="g_vsnprintf ()">
1068
+ <a name="g-vsnprintf"></a><h3>g_vsnprintf ()</h3>
1069
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_vsnprintf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
1070
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gulong" title="gulong"><span class="type">gulong</span></a> n</code></em>,
1071
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
1072
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
1073
+ <p>
1074
+ A safer form of the standard <code class="function">vsprintf()</code> function. The output is guaranteed
1075
+ to not exceed <em class="parameter"><code>n</code></em> characters (including the terminating nul character), so
1076
+ it is easy to ensure that a buffer overflow cannot occur.
1077
+ </p>
1078
+ <p>
1079
+ See also <a class="link" href="glib-String-Utility-Functions.html#g-strdup-vprintf" title="g_strdup_vprintf ()"><code class="function">g_strdup_vprintf()</code></a>.
1080
+ </p>
1081
+ <p>
1082
+ In versions of GLib prior to 1.2.3, this function may return -1 if the
1083
+ output was truncated, and the truncated string may not be nul-terminated.
1084
+ In versions prior to 1.3.12, this function returns the length of the output
1085
+ string.
1086
+ </p>
1087
+ <p>
1088
+ The return value of <a class="link" href="glib-String-Utility-Functions.html#g-vsnprintf" title="g_vsnprintf ()"><code class="function">g_vsnprintf()</code></a> conforms to the <code class="function">vsnprintf()</code> function
1089
+ as standardized in ISO C99. Note that this is different from traditional
1090
+ <code class="function">vsnprintf()</code>, which returns the length of the output string.
1091
+ </p>
1092
+ <p>
1093
+ The format string may contain positional parameters, as specified in
1094
+ the Single Unix Specification.
1095
+ </p>
1096
+ <div class="variablelist"><table border="0">
1097
+ <col align="left" valign="top">
1098
+ <tbody>
1099
+ <tr>
1100
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1101
+ <td>the buffer to hold the output.
1102
+ </td>
1103
+ </tr>
1104
+ <tr>
1105
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
1106
+ <td>the maximum number of bytes to produce (including the
1107
+ terminating nul character).
1108
+ </td>
1109
+ </tr>
1110
+ <tr>
1111
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
1112
+ <td>a standard <code class="function">printf()</code> format string, but notice
1113
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
1114
+ </td>
1115
+ </tr>
1116
+ <tr>
1117
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
1118
+ <td>the list of arguments to insert in the output.
1119
+ </td>
1120
+ </tr>
1121
+ <tr>
1122
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1123
+ <td> the number of bytes which would be produced if the buffer
1124
+ was large enough.
1125
+ </td>
1126
+ </tr>
1127
+ </tbody>
1128
+ </table></div>
1129
+ </div>
1130
+ <hr>
1131
+ <div class="refsect2" title="g_vasprintf ()">
1132
+ <a name="g-vasprintf"></a><h3>g_vasprintf ()</h3>
1133
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_vasprintf (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **string</code></em>,
1134
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> const *format</code></em>,
1135
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
1136
+ <p>
1137
+ An implementation of the GNU <code class="function">vasprintf()</code> function which supports
1138
+ positional parameters, as specified in the Single Unix Specification.
1139
+ This function is similar to <a class="link" href="glib-String-Utility-Functions.html#g-vsprintf" title="g_vsprintf ()"><code class="function">g_vsprintf()</code></a>, except that it allocates a
1140
+ string to hold the output, instead of putting the output in a buffer
1141
+ you allocate in advance.
1142
+ </p>
1143
+ <div class="variablelist"><table border="0">
1144
+ <col align="left" valign="top">
1145
+ <tbody>
1146
+ <tr>
1147
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1148
+ <td>the return location for the newly-allocated string.
1149
+ </td>
1150
+ </tr>
1151
+ <tr>
1152
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
1153
+ <td>a standard <code class="function">printf()</code> format string, but notice
1154
+ <a class="link" href="glib-String-Utility-Functions.html#string-precision">string precision pitfalls</a>.
1155
+ </td>
1156
+ </tr>
1157
+ <tr>
1158
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
1159
+ <td>the list of arguments to insert in the output.
1160
+ </td>
1161
+ </tr>
1162
+ <tr>
1163
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1164
+ <td> the number of bytes printed.
1165
+
1166
+ </td>
1167
+ </tr>
1168
+ </tbody>
1169
+ </table></div>
1170
+ <p class="since">Since 2.4</p>
1171
+ </div>
1172
+ <hr>
1173
+ <div class="refsect2" title="g_printf_string_upper_bound ()">
1174
+ <a name="g-printf-string-upper-bound"></a><h3>g_printf_string_upper_bound ()</h3>
1175
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> g_printf_string_upper_bound (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
1176
+ <em class="parameter"><code><span class="type">va_list</span> args</code></em>);</pre>
1177
+ <p>
1178
+ Calculates the maximum space needed to store the output of the <code class="function">sprintf()</code>
1179
+ function.
1180
+ </p>
1181
+ <div class="variablelist"><table border="0">
1182
+ <col align="left" valign="top">
1183
+ <tbody>
1184
+ <tr>
1185
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
1186
+ <td>the format string. See the <code class="function">printf()</code> documentation.
1187
+ </td>
1188
+ </tr>
1189
+ <tr>
1190
+ <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
1191
+ <td>the parameters to be inserted into the format string.
1192
+ </td>
1193
+ </tr>
1194
+ <tr>
1195
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1196
+ <td>the maximum space needed to store the formatted string.
1197
+ </td>
1198
+ </tr>
1199
+ </tbody>
1200
+ </table></div>
1201
+ </div>
1202
+ <hr>
1203
+ <div class="refsect2" title="g_ascii_isalnum ()">
1204
+ <a name="g-ascii-isalnum"></a><h3>g_ascii_isalnum ()</h3>
1205
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isalnum (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1206
+ <p>
1207
+ Determines whether a character is alphanumeric.
1208
+ </p>
1209
+ <p>
1210
+ Unlike the standard C library <code class="function">isalnum()</code> function, this only
1211
+ recognizes standard ASCII letters and ignores the locale, returning
1212
+ <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1213
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1214
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1215
+ possibly non-ASCII character in.
1216
+ </p>
1217
+ <div class="variablelist"><table border="0">
1218
+ <col align="left" valign="top">
1219
+ <tbody>
1220
+ <tr>
1221
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1222
+ <td>any character
1223
+ </td>
1224
+ </tr>
1225
+ <tr>
1226
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1227
+ <td>
1228
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII alphanumeric character
1229
+ </td>
1230
+ </tr>
1231
+ </tbody>
1232
+ </table></div>
1233
+ </div>
1234
+ <hr>
1235
+ <div class="refsect2" title="g_ascii_isalpha ()">
1236
+ <a name="g-ascii-isalpha"></a><h3>g_ascii_isalpha ()</h3>
1237
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isalpha (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1238
+ <p>
1239
+ Determines whether a character is alphabetic (i.e. a letter).
1240
+ </p>
1241
+ <p>
1242
+ Unlike the standard C library <code class="function">isalpha()</code> function, this only
1243
+ recognizes standard ASCII letters and ignores the locale, returning
1244
+ <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1245
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1246
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1247
+ possibly non-ASCII character in.
1248
+ </p>
1249
+ <div class="variablelist"><table border="0">
1250
+ <col align="left" valign="top">
1251
+ <tbody>
1252
+ <tr>
1253
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1254
+ <td>any character
1255
+ </td>
1256
+ </tr>
1257
+ <tr>
1258
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1259
+ <td>
1260
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII alphabetic character
1261
+ </td>
1262
+ </tr>
1263
+ </tbody>
1264
+ </table></div>
1265
+ </div>
1266
+ <hr>
1267
+ <div class="refsect2" title="g_ascii_iscntrl ()">
1268
+ <a name="g-ascii-iscntrl"></a><h3>g_ascii_iscntrl ()</h3>
1269
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_iscntrl (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1270
+ <p>
1271
+ Determines whether a character is a control character.
1272
+ </p>
1273
+ <p>
1274
+ Unlike the standard C library <code class="function">iscntrl()</code> function, this only
1275
+ recognizes standard ASCII control characters and ignores the locale,
1276
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1277
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1278
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1279
+ possibly non-ASCII character in.
1280
+ </p>
1281
+ <div class="variablelist"><table border="0">
1282
+ <col align="left" valign="top">
1283
+ <tbody>
1284
+ <tr>
1285
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1286
+ <td>any character
1287
+ </td>
1288
+ </tr>
1289
+ <tr>
1290
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1291
+ <td>
1292
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII control character.
1293
+ </td>
1294
+ </tr>
1295
+ </tbody>
1296
+ </table></div>
1297
+ </div>
1298
+ <hr>
1299
+ <div class="refsect2" title="g_ascii_isdigit ()">
1300
+ <a name="g-ascii-isdigit"></a><h3>g_ascii_isdigit ()</h3>
1301
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isdigit (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1302
+ <p>
1303
+ Determines whether a character is digit (0-9).
1304
+ </p>
1305
+ <p>
1306
+ Unlike the standard C library <code class="function">isdigit()</code> function,
1307
+ this takes a <span class="type">char</span>, not an <span class="type">int</span>, so don't call it
1308
+ on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a possibly
1309
+ non-ASCII character in.
1310
+ </p>
1311
+ <div class="variablelist"><table border="0">
1312
+ <col align="left" valign="top">
1313
+ <tbody>
1314
+ <tr>
1315
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1316
+ <td>any character
1317
+ </td>
1318
+ </tr>
1319
+ <tr>
1320
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1321
+ <td>
1322
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII digit.
1323
+ </td>
1324
+ </tr>
1325
+ </tbody>
1326
+ </table></div>
1327
+ </div>
1328
+ <hr>
1329
+ <div class="refsect2" title="g_ascii_isgraph ()">
1330
+ <a name="g-ascii-isgraph"></a><h3>g_ascii_isgraph ()</h3>
1331
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isgraph (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1332
+ <p>
1333
+ Determines whether a character is a printing character and not a space.
1334
+ </p>
1335
+ <p>
1336
+ Unlike the standard C library <code class="function">isgraph()</code> function,
1337
+ this only recognizes standard ASCII characters and ignores the locale,
1338
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1339
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1340
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1341
+ possibly non-ASCII character in.
1342
+ </p>
1343
+ <div class="variablelist"><table border="0">
1344
+ <col align="left" valign="top">
1345
+ <tbody>
1346
+ <tr>
1347
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1348
+ <td>any character
1349
+ </td>
1350
+ </tr>
1351
+ <tr>
1352
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1353
+ <td>
1354
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII printing character other than space.
1355
+ </td>
1356
+ </tr>
1357
+ </tbody>
1358
+ </table></div>
1359
+ </div>
1360
+ <hr>
1361
+ <div class="refsect2" title="g_ascii_islower ()">
1362
+ <a name="g-ascii-islower"></a><h3>g_ascii_islower ()</h3>
1363
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_islower (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1364
+ <p>
1365
+ Determines whether a character is an ASCII lower case letter.
1366
+ </p>
1367
+ <p>
1368
+ Unlike the standard C library <code class="function">islower()</code> function,
1369
+ this only recognizes standard ASCII letters and ignores the locale,
1370
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1371
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1372
+ so don't call it on <code class="literal">EOF</code> but no need to worry about casting to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a>
1373
+ before passing a possibly non-ASCII character in.
1374
+ </p>
1375
+ <div class="variablelist"><table border="0">
1376
+ <col align="left" valign="top">
1377
+ <tbody>
1378
+ <tr>
1379
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1380
+ <td>any character
1381
+ </td>
1382
+ </tr>
1383
+ <tr>
1384
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1385
+ <td>
1386
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII lower case letter
1387
+ </td>
1388
+ </tr>
1389
+ </tbody>
1390
+ </table></div>
1391
+ </div>
1392
+ <hr>
1393
+ <div class="refsect2" title="g_ascii_isprint ()">
1394
+ <a name="g-ascii-isprint"></a><h3>g_ascii_isprint ()</h3>
1395
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isprint (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1396
+ <p>
1397
+ Determines whether a character is a printing character.
1398
+ </p>
1399
+ <p>
1400
+ Unlike the standard C library <code class="function">isprint()</code> function,
1401
+ this only recognizes standard ASCII characters and ignores the locale,
1402
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1403
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1404
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1405
+ possibly non-ASCII character in.
1406
+ </p>
1407
+ <div class="variablelist"><table border="0">
1408
+ <col align="left" valign="top">
1409
+ <tbody>
1410
+ <tr>
1411
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1412
+ <td>any character
1413
+ </td>
1414
+ </tr>
1415
+ <tr>
1416
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1417
+ <td>
1418
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII printing character.
1419
+ </td>
1420
+ </tr>
1421
+ </tbody>
1422
+ </table></div>
1423
+ </div>
1424
+ <hr>
1425
+ <div class="refsect2" title="g_ascii_ispunct ()">
1426
+ <a name="g-ascii-ispunct"></a><h3>g_ascii_ispunct ()</h3>
1427
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_ispunct (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1428
+ <p>
1429
+ Determines whether a character is a punctuation character.
1430
+ </p>
1431
+ <p>
1432
+ Unlike the standard C library <code class="function">ispunct()</code> function,
1433
+ this only recognizes standard ASCII letters and ignores the locale,
1434
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1435
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1436
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1437
+ possibly non-ASCII character in.
1438
+ </p>
1439
+ <div class="variablelist"><table border="0">
1440
+ <col align="left" valign="top">
1441
+ <tbody>
1442
+ <tr>
1443
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1444
+ <td>any character
1445
+ </td>
1446
+ </tr>
1447
+ <tr>
1448
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1449
+ <td>
1450
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII punctuation character.
1451
+ </td>
1452
+ </tr>
1453
+ </tbody>
1454
+ </table></div>
1455
+ </div>
1456
+ <hr>
1457
+ <div class="refsect2" title="g_ascii_isspace ()">
1458
+ <a name="g-ascii-isspace"></a><h3>g_ascii_isspace ()</h3>
1459
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isspace (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1460
+ <p>
1461
+ Determines whether a character is a white-space character.
1462
+ </p>
1463
+ <p>
1464
+ Unlike the standard C library <code class="function">isspace()</code> function,
1465
+ this only recognizes standard ASCII white-space and ignores the locale,
1466
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1467
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1468
+ so don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1469
+ possibly non-ASCII character in.
1470
+ </p>
1471
+ <div class="variablelist"><table border="0">
1472
+ <col align="left" valign="top">
1473
+ <tbody>
1474
+ <tr>
1475
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1476
+ <td>any character
1477
+ </td>
1478
+ </tr>
1479
+ <tr>
1480
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1481
+ <td>
1482
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII white-space character
1483
+ </td>
1484
+ </tr>
1485
+ </tbody>
1486
+ </table></div>
1487
+ </div>
1488
+ <hr>
1489
+ <div class="refsect2" title="g_ascii_isupper ()">
1490
+ <a name="g-ascii-isupper"></a><h3>g_ascii_isupper ()</h3>
1491
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isupper (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1492
+ <p>
1493
+ Determines whether a character is an ASCII upper case letter.
1494
+ </p>
1495
+ <p>
1496
+ Unlike the standard C library <code class="function">isupper()</code> function,
1497
+ this only recognizes standard ASCII letters and ignores the locale,
1498
+ returning <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for all non-ASCII characters. Also unlike the standard
1499
+ library function, this takes a <span class="type">char</span>, not an <span class="type">int</span>,
1500
+ so don't call it on <code class="literal">EOF</code> but no need to worry about casting to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a>
1501
+ before passing a possibly non-ASCII character in.
1502
+ </p>
1503
+ <div class="variablelist"><table border="0">
1504
+ <col align="left" valign="top">
1505
+ <tbody>
1506
+ <tr>
1507
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1508
+ <td>any character
1509
+ </td>
1510
+ </tr>
1511
+ <tr>
1512
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1513
+ <td>
1514
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII upper case letter
1515
+ </td>
1516
+ </tr>
1517
+ </tbody>
1518
+ </table></div>
1519
+ </div>
1520
+ <hr>
1521
+ <div class="refsect2" title="g_ascii_isxdigit ()">
1522
+ <a name="g-ascii-isxdigit"></a><h3>g_ascii_isxdigit ()</h3>
1523
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_ascii_isxdigit (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1524
+ <p>
1525
+ Determines whether a character is a hexadecimal-digit character.
1526
+ </p>
1527
+ <p>
1528
+ Unlike the standard C library <code class="function">isxdigit()</code> function,
1529
+ this takes a <span class="type">char</span>, not an <span class="type">int</span>, so
1530
+ don't call it on <code class="literal">EOF</code> but no need to cast to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a> before passing a
1531
+ possibly non-ASCII character in.
1532
+ </p>
1533
+ <div class="variablelist"><table border="0">
1534
+ <col align="left" valign="top">
1535
+ <tbody>
1536
+ <tr>
1537
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1538
+ <td>any character
1539
+ </td>
1540
+ </tr>
1541
+ <tr>
1542
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1543
+ <td>
1544
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an ASCII hexadecimal-digit character.
1545
+ </td>
1546
+ </tr>
1547
+ </tbody>
1548
+ </table></div>
1549
+ </div>
1550
+ <hr>
1551
+ <div class="refsect2" title="g_ascii_digit_value ()">
1552
+ <a name="g-ascii-digit-value"></a><h3>g_ascii_digit_value ()</h3>
1553
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_ascii_digit_value (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1554
+ <p>
1555
+ Determines the numeric value of a character as a decimal
1556
+ digit. Differs from <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-digit-value" title="g_unichar_digit_value ()"><code class="function">g_unichar_digit_value()</code></a> because it takes
1557
+ a char, so there's no worry about sign extension if characters
1558
+ are signed.
1559
+ </p>
1560
+ <div class="variablelist"><table border="0">
1561
+ <col align="left" valign="top">
1562
+ <tbody>
1563
+ <tr>
1564
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1565
+ <td>an ASCII character.
1566
+ </td>
1567
+ </tr>
1568
+ <tr>
1569
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1570
+ <td> If <em class="parameter"><code>c</code></em> is a decimal digit (according to
1571
+ <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isdigit" title="g_ascii_isdigit ()"><code class="function">g_ascii_isdigit()</code></a>), its numeric value. Otherwise, -1.
1572
+ </td>
1573
+ </tr>
1574
+ </tbody>
1575
+ </table></div>
1576
+ </div>
1577
+ <hr>
1578
+ <div class="refsect2" title="g_ascii_xdigit_value ()">
1579
+ <a name="g-ascii-xdigit-value"></a><h3>g_ascii_xdigit_value ()</h3>
1580
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_ascii_xdigit_value (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1581
+ <p>
1582
+ Determines the numeric value of a character as a hexidecimal
1583
+ digit. Differs from <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-xdigit-value" title="g_unichar_xdigit_value ()"><code class="function">g_unichar_xdigit_value()</code></a> because it takes
1584
+ a char, so there's no worry about sign extension if characters
1585
+ are signed.
1586
+ </p>
1587
+ <div class="variablelist"><table border="0">
1588
+ <col align="left" valign="top">
1589
+ <tbody>
1590
+ <tr>
1591
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1592
+ <td>an ASCII character.
1593
+ </td>
1594
+ </tr>
1595
+ <tr>
1596
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1597
+ <td> If <em class="parameter"><code>c</code></em> is a hex digit (according to
1598
+ <a class="link" href="glib-String-Utility-Functions.html#g-ascii-isxdigit" title="g_ascii_isxdigit ()"><code class="function">g_ascii_isxdigit()</code></a>), its numeric value. Otherwise, -1.
1599
+ </td>
1600
+ </tr>
1601
+ </tbody>
1602
+ </table></div>
1603
+ </div>
1604
+ <hr>
1605
+ <div class="refsect2" title="g_ascii_strcasecmp ()">
1606
+ <a name="g-ascii-strcasecmp"></a><h3>g_ascii_strcasecmp ()</h3>
1607
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_ascii_strcasecmp (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
1608
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>);</pre>
1609
+ <p>
1610
+ Compare two strings, ignoring the case of ASCII characters.
1611
+ </p>
1612
+ <p>
1613
+ Unlike the BSD <code class="function">strcasecmp()</code> function, this only recognizes standard
1614
+ ASCII letters and ignores the locale, treating all non-ASCII
1615
+ bytes as if they are not letters.
1616
+ </p>
1617
+ <p>
1618
+ This function should be used only on strings that are known to be
1619
+ in encodings where the bytes corresponding to ASCII letters always
1620
+ represent themselves. This includes UTF-8 and the ISO-8859-*
1621
+ charsets, but not for instance double-byte encodings like the
1622
+ Windows Codepage 932, where the trailing bytes of double-byte
1623
+ characters include all ASCII letters. If you compare two CP932
1624
+ strings using this function, you will get false matches.
1625
+ </p>
1626
+ <div class="variablelist"><table border="0">
1627
+ <col align="left" valign="top">
1628
+ <tbody>
1629
+ <tr>
1630
+ <td><p><span class="term"><em class="parameter"><code>s1</code></em> :</span></p></td>
1631
+ <td>string to compare with <em class="parameter"><code>s2</code></em>.
1632
+ </td>
1633
+ </tr>
1634
+ <tr>
1635
+ <td><p><span class="term"><em class="parameter"><code>s2</code></em> :</span></p></td>
1636
+ <td>string to compare with <em class="parameter"><code>s1</code></em>.
1637
+ </td>
1638
+ </tr>
1639
+ <tr>
1640
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1641
+ <td> 0 if the strings match, a negative value if <em class="parameter"><code>s1</code></em> &lt; <em class="parameter"><code>s2</code></em>,
1642
+ or a positive value if <em class="parameter"><code>s1</code></em> &gt; <em class="parameter"><code>s2</code></em>.
1643
+ </td>
1644
+ </tr>
1645
+ </tbody>
1646
+ </table></div>
1647
+ </div>
1648
+ <hr>
1649
+ <div class="refsect2" title="g_ascii_strncasecmp ()">
1650
+ <a name="g-ascii-strncasecmp"></a><h3>g_ascii_strncasecmp ()</h3>
1651
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_ascii_strncasecmp (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
1652
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>,
1653
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> n</code></em>);</pre>
1654
+ <p>
1655
+ Compare <em class="parameter"><code>s1</code></em> and <em class="parameter"><code>s2</code></em>, ignoring the case of ASCII characters and any
1656
+ characters after the first <em class="parameter"><code>n</code></em> in each string.
1657
+ </p>
1658
+ <p>
1659
+ Unlike the BSD <code class="function">strcasecmp()</code> function, this only recognizes standard
1660
+ ASCII letters and ignores the locale, treating all non-ASCII
1661
+ characters as if they are not letters.
1662
+ </p>
1663
+ <p>
1664
+ The same warning as in <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strcasecmp" title="g_ascii_strcasecmp ()"><code class="function">g_ascii_strcasecmp()</code></a> applies: Use this
1665
+ function only on strings known to be in encodings where bytes
1666
+ corresponding to ASCII letters always represent themselves.
1667
+ </p>
1668
+ <div class="variablelist"><table border="0">
1669
+ <col align="left" valign="top">
1670
+ <tbody>
1671
+ <tr>
1672
+ <td><p><span class="term"><em class="parameter"><code>s1</code></em> :</span></p></td>
1673
+ <td>string to compare with <em class="parameter"><code>s2</code></em>.
1674
+ </td>
1675
+ </tr>
1676
+ <tr>
1677
+ <td><p><span class="term"><em class="parameter"><code>s2</code></em> :</span></p></td>
1678
+ <td>string to compare with <em class="parameter"><code>s1</code></em>.
1679
+ </td>
1680
+ </tr>
1681
+ <tr>
1682
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
1683
+ <td>number of characters to compare.
1684
+ </td>
1685
+ </tr>
1686
+ <tr>
1687
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1688
+ <td> 0 if the strings match, a negative value if <em class="parameter"><code>s1</code></em> &lt; <em class="parameter"><code>s2</code></em>,
1689
+ or a positive value if <em class="parameter"><code>s1</code></em> &gt; <em class="parameter"><code>s2</code></em>.
1690
+ </td>
1691
+ </tr>
1692
+ </tbody>
1693
+ </table></div>
1694
+ </div>
1695
+ <hr>
1696
+ <div class="refsect2" title="g_ascii_strup ()">
1697
+ <a name="g-ascii-strup"></a><h3>g_ascii_strup ()</h3>
1698
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_ascii_strup (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
1699
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
1700
+ <p>
1701
+ Converts all lower case ASCII letters to upper case ASCII letters.
1702
+ </p>
1703
+ <div class="variablelist"><table border="0">
1704
+ <col align="left" valign="top">
1705
+ <tbody>
1706
+ <tr>
1707
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1708
+ <td>a string.
1709
+ </td>
1710
+ </tr>
1711
+ <tr>
1712
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1713
+ <td>length of <em class="parameter"><code>str</code></em> in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
1714
+ </td>
1715
+ </tr>
1716
+ <tr>
1717
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1718
+ <td> a newly allocated string, with all the lower case
1719
+ characters in <em class="parameter"><code>str</code></em> converted to upper case, with
1720
+ semantics that exactly match <a class="link" href="glib-String-Utility-Functions.html#g-ascii-toupper" title="g_ascii_toupper ()"><code class="function">g_ascii_toupper()</code></a>. (Note
1721
+ that this is unlike the old <a class="link" href="glib-String-Utility-Functions.html#g-strup" title="g_strup ()"><code class="function">g_strup()</code></a>, which modified
1722
+ the string in place.)
1723
+ </td>
1724
+ </tr>
1725
+ </tbody>
1726
+ </table></div>
1727
+ </div>
1728
+ <hr>
1729
+ <div class="refsect2" title="g_ascii_strdown ()">
1730
+ <a name="g-ascii-strdown"></a><h3>g_ascii_strdown ()</h3>
1731
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_ascii_strdown (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
1732
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
1733
+ <p>
1734
+ Converts all upper case ASCII letters to lower case ASCII letters.
1735
+ </p>
1736
+ <div class="variablelist"><table border="0">
1737
+ <col align="left" valign="top">
1738
+ <tbody>
1739
+ <tr>
1740
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1741
+ <td>a string.
1742
+ </td>
1743
+ </tr>
1744
+ <tr>
1745
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1746
+ <td>length of <em class="parameter"><code>str</code></em> in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
1747
+ </td>
1748
+ </tr>
1749
+ <tr>
1750
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1751
+ <td> a newly-allocated string, with all the upper case
1752
+ characters in <em class="parameter"><code>str</code></em> converted to lower case, with
1753
+ semantics that exactly match <a class="link" href="glib-String-Utility-Functions.html#g-ascii-tolower" title="g_ascii_tolower ()"><code class="function">g_ascii_tolower()</code></a>. (Note
1754
+ that this is unlike the old <a class="link" href="glib-String-Utility-Functions.html#g-strdown" title="g_strdown ()"><code class="function">g_strdown()</code></a>, which modified
1755
+ the string in place.)
1756
+ </td>
1757
+ </tr>
1758
+ </tbody>
1759
+ </table></div>
1760
+ </div>
1761
+ <hr>
1762
+ <div class="refsect2" title="g_ascii_tolower ()">
1763
+ <a name="g-ascii-tolower"></a><h3>g_ascii_tolower ()</h3>
1764
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> g_ascii_tolower (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1765
+ <p>
1766
+ Convert a character to ASCII lower case.
1767
+ </p>
1768
+ <p>
1769
+ Unlike the standard C library <code class="function">tolower()</code> function, this only
1770
+ recognizes standard ASCII letters and ignores the locale, returning
1771
+ all non-ASCII characters unchanged, even if they are lower case
1772
+ letters in a particular character set. Also unlike the standard
1773
+ library function, this takes and returns a char, not an int, so
1774
+ don't call it on <code class="literal">EOF</code> but no need to worry about casting to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a>
1775
+ before passing a possibly non-ASCII character in.
1776
+ </p>
1777
+ <div class="variablelist"><table border="0">
1778
+ <col align="left" valign="top">
1779
+ <tbody>
1780
+ <tr>
1781
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1782
+ <td>any character.
1783
+ </td>
1784
+ </tr>
1785
+ <tr>
1786
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1787
+ <td> the result of converting <em class="parameter"><code>c</code></em> to lower case.
1788
+ If <em class="parameter"><code>c</code></em> is not an ASCII upper case letter,
1789
+ <em class="parameter"><code>c</code></em> is returned unchanged.
1790
+ </td>
1791
+ </tr>
1792
+ </tbody>
1793
+ </table></div>
1794
+ </div>
1795
+ <hr>
1796
+ <div class="refsect2" title="g_ascii_toupper ()">
1797
+ <a name="g-ascii-toupper"></a><h3>g_ascii_toupper ()</h3>
1798
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> g_ascii_toupper (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> c</code></em>);</pre>
1799
+ <p>
1800
+ Convert a character to ASCII upper case.
1801
+ </p>
1802
+ <p>
1803
+ Unlike the standard C library <code class="function">toupper()</code> function, this only
1804
+ recognizes standard ASCII letters and ignores the locale, returning
1805
+ all non-ASCII characters unchanged, even if they are upper case
1806
+ letters in a particular character set. Also unlike the standard
1807
+ library function, this takes and returns a char, not an int, so
1808
+ don't call it on <code class="literal">EOF</code> but no need to worry about casting to <a class="link" href="glib-Basic-Types.html#guchar" title="guchar"><span class="type">guchar</span></a>
1809
+ before passing a possibly non-ASCII character in.
1810
+ </p>
1811
+ <div class="variablelist"><table border="0">
1812
+ <col align="left" valign="top">
1813
+ <tbody>
1814
+ <tr>
1815
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1816
+ <td>any character.
1817
+ </td>
1818
+ </tr>
1819
+ <tr>
1820
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1821
+ <td> the result of converting <em class="parameter"><code>c</code></em> to upper case.
1822
+ If <em class="parameter"><code>c</code></em> is not an ASCII lower case letter,
1823
+ <em class="parameter"><code>c</code></em> is returned unchanged.
1824
+ </td>
1825
+ </tr>
1826
+ </tbody>
1827
+ </table></div>
1828
+ </div>
1829
+ <hr>
1830
+ <div class="refsect2" title="g_string_ascii_up ()">
1831
+ <a name="g-string-ascii-up"></a><h3>g_string_ascii_up ()</h3>
1832
+ <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>* g_string_ascii_up (<em class="parameter"><code><a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> *string</code></em>);</pre>
1833
+ <p>
1834
+ Converts all lower case ASCII letters to upper case ASCII letters.
1835
+ </p>
1836
+ <div class="variablelist"><table border="0">
1837
+ <col align="left" valign="top">
1838
+ <tbody>
1839
+ <tr>
1840
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1841
+ <td>a GString
1842
+ </td>
1843
+ </tr>
1844
+ <tr>
1845
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1846
+ <td> passed-in <em class="parameter"><code>string</code></em> pointer, with all the lower case
1847
+ characters converted to upper case in place, with
1848
+ semantics that exactly match <a class="link" href="glib-String-Utility-Functions.html#g-ascii-toupper" title="g_ascii_toupper ()"><code class="function">g_ascii_toupper()</code></a>.
1849
+ </td>
1850
+ </tr>
1851
+ </tbody>
1852
+ </table></div>
1853
+ </div>
1854
+ <hr>
1855
+ <div class="refsect2" title="g_string_ascii_down ()">
1856
+ <a name="g-string-ascii-down"></a><h3>g_string_ascii_down ()</h3>
1857
+ <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>* g_string_ascii_down (<em class="parameter"><code><a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> *string</code></em>);</pre>
1858
+ <p>
1859
+ Converts all upper case ASCII letters to lower case ASCII letters.
1860
+ </p>
1861
+ <div class="variablelist"><table border="0">
1862
+ <col align="left" valign="top">
1863
+ <tbody>
1864
+ <tr>
1865
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1866
+ <td>a GString
1867
+ </td>
1868
+ </tr>
1869
+ <tr>
1870
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1871
+ <td> passed-in <em class="parameter"><code>string</code></em> pointer, with all the upper case
1872
+ characters converted to lower case in place, with
1873
+ semantics that exactly match <a class="link" href="glib-String-Utility-Functions.html#g-ascii-tolower" title="g_ascii_tolower ()"><code class="function">g_ascii_tolower()</code></a>.
1874
+ </td>
1875
+ </tr>
1876
+ </tbody>
1877
+ </table></div>
1878
+ </div>
1879
+ <hr>
1880
+ <div class="refsect2" title="g_strup ()">
1881
+ <a name="g-strup"></a><h3>g_strup ()</h3>
1882
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strup (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
1883
+ <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1884
+ <h3 class="title">Warning</h3>
1885
+ <p><code class="literal">g_strup</code> has been deprecated since version 2.2 and should not be used in newly-written code. This function is totally broken for the reasons discussed
1886
+ in the <a class="link" href="glib-String-Utility-Functions.html#g-strncasecmp" title="g_strncasecmp ()"><code class="function">g_strncasecmp()</code></a> docs - use <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strup" title="g_ascii_strup ()"><code class="function">g_ascii_strup()</code></a> or <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strup" title="g_utf8_strup ()"><code class="function">g_utf8_strup()</code></a> instead.</p>
1887
+ </div>
1888
+ <p>
1889
+ Converts a string to upper case.
1890
+ </p>
1891
+ <div class="variablelist"><table border="0">
1892
+ <col align="left" valign="top">
1893
+ <tbody>
1894
+ <tr>
1895
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1896
+ <td>the string to convert.
1897
+ </td>
1898
+ </tr>
1899
+ <tr>
1900
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1901
+ <td> the string
1902
+
1903
+ </td>
1904
+ </tr>
1905
+ </tbody>
1906
+ </table></div>
1907
+ </div>
1908
+ <hr>
1909
+ <div class="refsect2" title="g_strdown ()">
1910
+ <a name="g-strdown"></a><h3>g_strdown ()</h3>
1911
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strdown (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
1912
+ <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1913
+ <h3 class="title">Warning</h3>
1914
+ <p><code class="literal">g_strdown</code> has been deprecated since version 2.2 and should not be used in newly-written code. This function is totally broken for the reasons discussed
1915
+ in the <a class="link" href="glib-String-Utility-Functions.html#g-strncasecmp" title="g_strncasecmp ()"><code class="function">g_strncasecmp()</code></a> docs - use <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strdown" title="g_ascii_strdown ()"><code class="function">g_ascii_strdown()</code></a> or <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strdown" title="g_utf8_strdown ()"><code class="function">g_utf8_strdown()</code></a>
1916
+ instead.</p>
1917
+ </div>
1918
+ <p>
1919
+ Converts a string to lower case.
1920
+ </p>
1921
+ <div class="variablelist"><table border="0">
1922
+ <col align="left" valign="top">
1923
+ <tbody>
1924
+ <tr>
1925
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1926
+ <td>the string to convert.
1927
+ </td>
1928
+ </tr>
1929
+ <tr>
1930
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1931
+ <td> the string
1932
+
1933
+ </td>
1934
+ </tr>
1935
+ </tbody>
1936
+ </table></div>
1937
+ </div>
1938
+ <hr>
1939
+ <div class="refsect2" title="g_strcasecmp ()">
1940
+ <a name="g-strcasecmp"></a><h3>g_strcasecmp ()</h3>
1941
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_strcasecmp (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
1942
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>);</pre>
1943
+ <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1944
+ <h3 class="title">Warning</h3>
1945
+ <p><code class="literal">g_strcasecmp</code> has been deprecated since version 2.2 and should not be used in newly-written code. See <a class="link" href="glib-String-Utility-Functions.html#g-strncasecmp" title="g_strncasecmp ()"><code class="function">g_strncasecmp()</code></a> for a discussion of why this function
1946
+ is deprecated and how to replace it.</p>
1947
+ </div>
1948
+ <p>
1949
+ A case-insensitive string comparison, corresponding to the standard
1950
+ <code class="function">strcasecmp()</code> function on platforms which support it.
1951
+ </p>
1952
+ <div class="variablelist"><table border="0">
1953
+ <col align="left" valign="top">
1954
+ <tbody>
1955
+ <tr>
1956
+ <td><p><span class="term"><em class="parameter"><code>s1</code></em> :</span></p></td>
1957
+ <td>a string.
1958
+ </td>
1959
+ </tr>
1960
+ <tr>
1961
+ <td><p><span class="term"><em class="parameter"><code>s2</code></em> :</span></p></td>
1962
+ <td>a string to compare with <em class="parameter"><code>s1</code></em>.
1963
+ </td>
1964
+ </tr>
1965
+ <tr>
1966
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1967
+ <td> 0 if the strings match, a negative value if <em class="parameter"><code>s1</code></em> &lt; <em class="parameter"><code>s2</code></em>,
1968
+ or a positive value if <em class="parameter"><code>s1</code></em> &gt; <em class="parameter"><code>s2</code></em>.
1969
+
1970
+ </td>
1971
+ </tr>
1972
+ </tbody>
1973
+ </table></div>
1974
+ </div>
1975
+ <hr>
1976
+ <div class="refsect2" title="g_strncasecmp ()">
1977
+ <a name="g-strncasecmp"></a><h3>g_strncasecmp ()</h3>
1978
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_strncasecmp (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s1</code></em>,
1979
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *s2</code></em>,
1980
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="type">guint</span></a> n</code></em>);</pre>
1981
+ <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1982
+ <h3 class="title">Warning</h3>
1983
+ <p><code class="literal">g_strncasecmp</code> has been deprecated since version 2.2 and should not be used in newly-written code. The problem with <a class="link" href="glib-String-Utility-Functions.html#g-strncasecmp" title="g_strncasecmp ()"><code class="function">g_strncasecmp()</code></a> is that it does the
1984
+ comparison by calling <code class="function">toupper()</code>/<code class="function">tolower()</code>. These functions are
1985
+ locale-specific and operate on single bytes. However, it is impossible
1986
+ to handle things correctly from an I18N standpoint by operating on
1987
+ bytes, since characters may be multibyte. Thus <a class="link" href="glib-String-Utility-Functions.html#g-strncasecmp" title="g_strncasecmp ()"><code class="function">g_strncasecmp()</code></a> is
1988
+ broken if your string is guaranteed to be ASCII, since it's
1989
+ locale-sensitive, and it's broken if your string is localized, since
1990
+ it doesn't work on many encodings at all, including UTF-8, EUC-JP,
1991
+ etc.
1992
+ </p>
1993
+ <p>
1994
+ There are therefore two replacement functions: <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strncasecmp" title="g_ascii_strncasecmp ()"><code class="function">g_ascii_strncasecmp()</code></a>,
1995
+ which only works on ASCII and is not locale-sensitive, and
1996
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-casefold" title="g_utf8_casefold ()"><code class="function">g_utf8_casefold()</code></a>, which is good for case-insensitive sorting of UTF-8.</p>
1997
+ </div>
1998
+ <p>
1999
+ A case-insensitive string comparison, corresponding to the standard
2000
+ <code class="function">strncasecmp()</code> function on platforms which support it.
2001
+ It is similar to <a class="link" href="glib-String-Utility-Functions.html#g-strcasecmp" title="g_strcasecmp ()"><code class="function">g_strcasecmp()</code></a> except it only compares the first <em class="parameter"><code>n</code></em>
2002
+ characters of the strings.
2003
+ </p>
2004
+ <div class="variablelist"><table border="0">
2005
+ <col align="left" valign="top">
2006
+ <tbody>
2007
+ <tr>
2008
+ <td><p><span class="term"><em class="parameter"><code>s1</code></em> :</span></p></td>
2009
+ <td>a string.
2010
+ </td>
2011
+ </tr>
2012
+ <tr>
2013
+ <td><p><span class="term"><em class="parameter"><code>s2</code></em> :</span></p></td>
2014
+ <td>a string to compare with <em class="parameter"><code>s1</code></em>.
2015
+ </td>
2016
+ </tr>
2017
+ <tr>
2018
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
2019
+ <td>the maximum number of characters to compare.
2020
+ </td>
2021
+ </tr>
2022
+ <tr>
2023
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2024
+ <td> 0 if the strings match, a negative value if <em class="parameter"><code>s1</code></em> &lt; <em class="parameter"><code>s2</code></em>,
2025
+ or a positive value if <em class="parameter"><code>s1</code></em> &gt; <em class="parameter"><code>s2</code></em>.
2026
+
2027
+ </td>
2028
+ </tr>
2029
+ </tbody>
2030
+ </table></div>
2031
+ </div>
2032
+ <hr>
2033
+ <div class="refsect2" title="g_strreverse ()">
2034
+ <a name="g-strreverse"></a><h3>g_strreverse ()</h3>
2035
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strreverse (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
2036
+ <p>
2037
+ Reverses all of the bytes in a string. For example,
2038
+ <code class="literal">g_strreverse ("abcdef")</code> will result
2039
+ in "fedcba".
2040
+ </p>
2041
+ <p>
2042
+ Note that <a class="link" href="glib-String-Utility-Functions.html#g-strreverse" title="g_strreverse ()"><code class="function">g_strreverse()</code></a> doesn't work on UTF-8 strings
2043
+ containing multibyte characters. For that purpose, use
2044
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strreverse" title="g_utf8_strreverse ()"><code class="function">g_utf8_strreverse()</code></a>.
2045
+ </p>
2046
+ <div class="variablelist"><table border="0">
2047
+ <col align="left" valign="top">
2048
+ <tbody>
2049
+ <tr>
2050
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2051
+ <td>the string to reverse
2052
+ </td>
2053
+ </tr>
2054
+ <tr>
2055
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2056
+ <td> the same pointer passed in as <em class="parameter"><code>string</code></em>
2057
+ </td>
2058
+ </tr>
2059
+ </tbody>
2060
+ </table></div>
2061
+ </div>
2062
+ <hr>
2063
+ <div class="refsect2" title="g_ascii_strtoll ()">
2064
+ <a name="g-ascii-strtoll"></a><h3>g_ascii_strtoll ()</h3>
2065
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint64" title="gint64"><span class="returnvalue">gint64</span></a> g_ascii_strtoll (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
2066
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>,
2067
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="type">guint</span></a> base</code></em>);</pre>
2068
+ <p>
2069
+ Converts a string to a <a class="link" href="glib-Basic-Types.html#gint64" title="gint64"><span class="type">gint64</span></a> value.
2070
+ This function behaves like the standard <code class="function">strtoll()</code> function
2071
+ does in the C locale. It does this without actually
2072
+ changing the current locale, since that would not be
2073
+ thread-safe.
2074
+ </p>
2075
+ <p>
2076
+ This function is typically used when reading configuration
2077
+ files or other non-user input that should be locale independent.
2078
+ To handle input from the user you should normally use the
2079
+ locale-sensitive system <code class="function">strtoll()</code> function.
2080
+ </p>
2081
+ <p>
2082
+ If the correct value would cause overflow, <a class="link" href="glib-Limits-of-Basic-Types.html#G-MAXINT64:CAPS" title="G_MAXINT64"><code class="literal">G_MAXINT64</code></a> or <a class="link" href="glib-Limits-of-Basic-Types.html#G-MININT64:CAPS" title="G_MININT64"><code class="literal">G_MININT64</code></a>
2083
+ is returned, and <code class="literal">ERANGE</code> is stored in <code class="literal">errno</code>. If the base is
2084
+ outside the valid range, zero is returned, and <code class="literal">EINVAL</code> is stored
2085
+ in <code class="literal">errno</code>. If the string conversion fails, zero is returned, and
2086
+ <em class="parameter"><code>endptr</code></em> returns <em class="parameter"><code>nptr</code></em> (if <em class="parameter"><code>endptr</code></em> is non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>).
2087
+ </p>
2088
+ <div class="variablelist"><table border="0">
2089
+ <col align="left" valign="top">
2090
+ <tbody>
2091
+ <tr>
2092
+ <td><p><span class="term"><em class="parameter"><code>nptr</code></em> :</span></p></td>
2093
+ <td>the string to convert to a numeric value.
2094
+ </td>
2095
+ </tr>
2096
+ <tr>
2097
+ <td><p><span class="term"><em class="parameter"><code>endptr</code></em> :</span></p></td>
2098
+ <td>if non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, it returns the character after
2099
+ the last character used in the conversion.
2100
+ </td>
2101
+ </tr>
2102
+ <tr>
2103
+ <td><p><span class="term"><em class="parameter"><code>base</code></em> :</span></p></td>
2104
+ <td>to be used for the conversion, 2..36 or 0
2105
+ </td>
2106
+ </tr>
2107
+ <tr>
2108
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2109
+ <td> the <a class="link" href="glib-Basic-Types.html#gint64" title="gint64"><span class="type">gint64</span></a> value or zero on error.
2110
+
2111
+ </td>
2112
+ </tr>
2113
+ </tbody>
2114
+ </table></div>
2115
+ <p class="since">Since 2.12</p>
2116
+ </div>
2117
+ <hr>
2118
+ <div class="refsect2" title="g_ascii_strtoull ()">
2119
+ <a name="g-ascii-strtoull"></a><h3>g_ascii_strtoull ()</h3>
2120
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="returnvalue">guint64</span></a> g_ascii_strtoull (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
2121
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>,
2122
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="type">guint</span></a> base</code></em>);</pre>
2123
+ <p>
2124
+ Converts a string to a <a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="type">guint64</span></a> value.
2125
+ This function behaves like the standard <code class="function">strtoull()</code> function
2126
+ does in the C locale. It does this without actually
2127
+ changing the current locale, since that would not be
2128
+ thread-safe.
2129
+ </p>
2130
+ <p>
2131
+ This function is typically used when reading configuration
2132
+ files or other non-user input that should be locale independent.
2133
+ To handle input from the user you should normally use the
2134
+ locale-sensitive system <code class="function">strtoull()</code> function.
2135
+ </p>
2136
+ <p>
2137
+ If the correct value would cause overflow, <a class="link" href="glib-Limits-of-Basic-Types.html#G-MAXUINT64:CAPS" title="G_MAXUINT64"><code class="literal">G_MAXUINT64</code></a>
2138
+ is returned, and <code class="literal">ERANGE</code> is stored in <code class="literal">errno</code>. If the base is
2139
+ outside the valid range, zero is returned, and <code class="literal">EINVAL</code> is stored
2140
+ in <code class="literal">errno</code>. If the string conversion fails, zero is returned, and
2141
+ <em class="parameter"><code>endptr</code></em> returns <em class="parameter"><code>nptr</code></em> (if <em class="parameter"><code>endptr</code></em> is non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>).
2142
+ </p>
2143
+ <div class="variablelist"><table border="0">
2144
+ <col align="left" valign="top">
2145
+ <tbody>
2146
+ <tr>
2147
+ <td><p><span class="term"><em class="parameter"><code>nptr</code></em> :</span></p></td>
2148
+ <td>the string to convert to a numeric value.
2149
+ </td>
2150
+ </tr>
2151
+ <tr>
2152
+ <td><p><span class="term"><em class="parameter"><code>endptr</code></em> :</span></p></td>
2153
+ <td>if non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, it returns the character after
2154
+ the last character used in the conversion.
2155
+ </td>
2156
+ </tr>
2157
+ <tr>
2158
+ <td><p><span class="term"><em class="parameter"><code>base</code></em> :</span></p></td>
2159
+ <td>to be used for the conversion, 2..36 or 0
2160
+ </td>
2161
+ </tr>
2162
+ <tr>
2163
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2164
+ <td> the <a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="type">guint64</span></a> value or zero on error.
2165
+
2166
+ </td>
2167
+ </tr>
2168
+ </tbody>
2169
+ </table></div>
2170
+ <p class="since">Since 2.2</p>
2171
+ </div>
2172
+ <hr>
2173
+ <div class="refsect2" title="G_ASCII_DTOSTR_BUF_SIZE">
2174
+ <a name="G-ASCII-DTOSTR-BUF-SIZE:CAPS"></a><h3>G_ASCII_DTOSTR_BUF_SIZE</h3>
2175
+ <pre class="programlisting">#define G_ASCII_DTOSTR_BUF_SIZE (29 + 10)
2176
+ </pre>
2177
+ <p>
2178
+ A good size for a buffer to be passed into <a class="link" href="glib-String-Utility-Functions.html#g-ascii-dtostr" title="g_ascii_dtostr ()"><code class="function">g_ascii_dtostr()</code></a>.
2179
+ It is guaranteed to be enough for all output of that function on systems with
2180
+ 64bit IEEE-compatible doubles.
2181
+ </p>
2182
+ <p>
2183
+ The typical usage would be something like:
2184
+ </p>
2185
+ <div class="informalexample">
2186
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
2187
+ <tbody>
2188
+ <tr>
2189
+ <td class="listing_lines" align="right"><pre>1
2190
+ 2</pre></td>
2191
+ <td class="listing_code"><pre class="programlisting"><span class="type">char</span><span class="normal"> buf</span><span class="symbol">[</span><span class="normal"><a href="glib-String-Utility-Functions.html#G-ASCII-DTOSTR-BUF-SIZE:CAPS">G_ASCII_DTOSTR_BUF_SIZE</a></span><span class="symbol">];</span>
2192
+ <span class="function">fprintf</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">out</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"value=%s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> </span><span class="function"><a href="glib-String-Utility-Functions.html#g-ascii-dtostr">g_ascii_dtostr</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">buf</span><span class="symbol">,</span><span class="normal"> </span><span class="keyword">sizeof</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">buf</span><span class="symbol">),</span><span class="normal"> value</span><span class="symbol">));</span></pre></td>
2193
+ </tr>
2194
+ </tbody>
2195
+ </table>
2196
+ </div>
2197
+
2198
+ <p>
2199
+ </p>
2200
+ </div>
2201
+ <hr>
2202
+ <div class="refsect2" title="g_ascii_strtod ()">
2203
+ <a name="g-ascii-strtod"></a><h3>g_ascii_strtod ()</h3>
2204
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="returnvalue">gdouble</span></a> g_ascii_strtod (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
2205
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>);</pre>
2206
+ <p>
2207
+ Converts a string to a <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> value.
2208
+ </p>
2209
+ <p>
2210
+ This function behaves like the standard <code class="function">strtod()</code> function
2211
+ does in the C locale. It does this without actually changing
2212
+ the current locale, since that would not be thread-safe.
2213
+ A limitation of the implementation is that this function
2214
+ will still accept localized versions of infinities and NANs.
2215
+ </p>
2216
+ <p>
2217
+ This function is typically used when reading configuration
2218
+ files or other non-user input that should be locale independent.
2219
+ To handle input from the user you should normally use the
2220
+ locale-sensitive system <code class="function">strtod()</code> function.
2221
+ </p>
2222
+ <p>
2223
+ To convert from a <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> to a string in a locale-insensitive
2224
+ way, use <a class="link" href="glib-String-Utility-Functions.html#g-ascii-dtostr" title="g_ascii_dtostr ()"><code class="function">g_ascii_dtostr()</code></a>.
2225
+ </p>
2226
+ <p>
2227
+ If the correct value would cause overflow, plus or minus <code class="literal">HUGE_VAL</code>
2228
+ is returned (according to the sign of the value), and <code class="literal">ERANGE</code> is
2229
+ stored in <code class="literal">errno</code>. If the correct value would cause underflow,
2230
+ zero is returned and <code class="literal">ERANGE</code> is stored in <code class="literal">errno</code>.
2231
+ </p>
2232
+ <p>
2233
+ This function resets <code class="literal">errno</code> before calling <code class="function">strtod()</code> so that
2234
+ you can reliably detect overflow and underflow.
2235
+ </p>
2236
+ <div class="variablelist"><table border="0">
2237
+ <col align="left" valign="top">
2238
+ <tbody>
2239
+ <tr>
2240
+ <td><p><span class="term"><em class="parameter"><code>nptr</code></em> :</span></p></td>
2241
+ <td>the string to convert to a numeric value.
2242
+ </td>
2243
+ </tr>
2244
+ <tr>
2245
+ <td><p><span class="term"><em class="parameter"><code>endptr</code></em> :</span></p></td>
2246
+ <td>if non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, it returns the character after
2247
+ the last character used in the conversion.
2248
+ </td>
2249
+ </tr>
2250
+ <tr>
2251
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2252
+ <td> the <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> value.
2253
+ </td>
2254
+ </tr>
2255
+ </tbody>
2256
+ </table></div>
2257
+ </div>
2258
+ <hr>
2259
+ <div class="refsect2" title="g_ascii_dtostr ()">
2260
+ <a name="g-ascii-dtostr"></a><h3>g_ascii_dtostr ()</h3>
2261
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_ascii_dtostr (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *buffer</code></em>,
2262
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> buf_len</code></em>,
2263
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> d</code></em>);</pre>
2264
+ <p>
2265
+ Converts a <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> to a string, using the '.' as
2266
+ decimal point.
2267
+ </p>
2268
+ <p>
2269
+ This functions generates enough precision that converting
2270
+ the string back using <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strtod" title="g_ascii_strtod ()"><code class="function">g_ascii_strtod()</code></a> gives the same machine-number
2271
+ (on machines with IEEE compatible 64bit doubles). It is
2272
+ guaranteed that the size of the resulting string will never
2273
+ be larger than <em class="parameter"><code>G_ASCII_DTOSTR_BUF_SIZE</code></em> bytes.
2274
+ </p>
2275
+ <div class="variablelist"><table border="0">
2276
+ <col align="left" valign="top">
2277
+ <tbody>
2278
+ <tr>
2279
+ <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
2280
+ <td>A buffer to place the resulting string in
2281
+ </td>
2282
+ </tr>
2283
+ <tr>
2284
+ <td><p><span class="term"><em class="parameter"><code>buf_len</code></em> :</span></p></td>
2285
+ <td>The length of the buffer.
2286
+ </td>
2287
+ </tr>
2288
+ <tr>
2289
+ <td><p><span class="term"><em class="parameter"><code>d</code></em> :</span></p></td>
2290
+ <td>The <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> to convert
2291
+ </td>
2292
+ </tr>
2293
+ <tr>
2294
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2295
+ <td> The pointer to the buffer with the converted string.
2296
+ </td>
2297
+ </tr>
2298
+ </tbody>
2299
+ </table></div>
2300
+ </div>
2301
+ <hr>
2302
+ <div class="refsect2" title="g_ascii_formatd ()">
2303
+ <a name="g-ascii-formatd"></a><h3>g_ascii_formatd ()</h3>
2304
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_ascii_formatd (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *buffer</code></em>,
2305
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> buf_len</code></em>,
2306
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *format</code></em>,
2307
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> d</code></em>);</pre>
2308
+ <p>
2309
+ Converts a <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> to a string, using the '.' as
2310
+ decimal point. To format the number you pass in
2311
+ a <code class="function">printf()</code>-style format string. Allowed conversion
2312
+ specifiers are 'e', 'E', 'f', 'F', 'g' and 'G'.
2313
+ </p>
2314
+ <p>
2315
+ If you just want to want to serialize the value into a
2316
+ string, use <a class="link" href="glib-String-Utility-Functions.html#g-ascii-dtostr" title="g_ascii_dtostr ()"><code class="function">g_ascii_dtostr()</code></a>.
2317
+ </p>
2318
+ <div class="variablelist"><table border="0">
2319
+ <col align="left" valign="top">
2320
+ <tbody>
2321
+ <tr>
2322
+ <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
2323
+ <td>A buffer to place the resulting string in
2324
+ </td>
2325
+ </tr>
2326
+ <tr>
2327
+ <td><p><span class="term"><em class="parameter"><code>buf_len</code></em> :</span></p></td>
2328
+ <td>The length of the buffer.
2329
+ </td>
2330
+ </tr>
2331
+ <tr>
2332
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
2333
+ <td>The <code class="function">printf()</code>-style format to use for the
2334
+ code to use for converting.
2335
+ </td>
2336
+ </tr>
2337
+ <tr>
2338
+ <td><p><span class="term"><em class="parameter"><code>d</code></em> :</span></p></td>
2339
+ <td>The <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> to convert
2340
+ </td>
2341
+ </tr>
2342
+ <tr>
2343
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2344
+ <td> The pointer to the buffer with the converted string.
2345
+ </td>
2346
+ </tr>
2347
+ </tbody>
2348
+ </table></div>
2349
+ </div>
2350
+ <hr>
2351
+ <div class="refsect2" title="g_strtod ()">
2352
+ <a name="g-strtod"></a><h3>g_strtod ()</h3>
2353
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="returnvalue">gdouble</span></a> g_strtod (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *nptr</code></em>,
2354
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **endptr</code></em>);</pre>
2355
+ <p>
2356
+ Converts a string to a <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> value.
2357
+ It calls the standard <code class="function">strtod()</code> function to handle the conversion, but
2358
+ if the string is not completely converted it attempts the conversion
2359
+ again with <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strtod" title="g_ascii_strtod ()"><code class="function">g_ascii_strtod()</code></a>, and returns the best match.
2360
+ </p>
2361
+ <p>
2362
+ This function should seldomly be used. The normal situation when reading
2363
+ numbers not for human consumption is to use <a class="link" href="glib-String-Utility-Functions.html#g-ascii-strtod" title="g_ascii_strtod ()"><code class="function">g_ascii_strtod()</code></a>. Only when
2364
+ you know that you must expect both locale formatted and C formatted numbers
2365
+ should you use this. Make sure that you don't pass strings such as comma
2366
+ separated lists of values, since the commas may be interpreted as a decimal
2367
+ point in some locales, causing unexpected results.
2368
+ </p>
2369
+ <div class="variablelist"><table border="0">
2370
+ <col align="left" valign="top">
2371
+ <tbody>
2372
+ <tr>
2373
+ <td><p><span class="term"><em class="parameter"><code>nptr</code></em> :</span></p></td>
2374
+ <td>the string to convert to a numeric value.
2375
+ </td>
2376
+ </tr>
2377
+ <tr>
2378
+ <td><p><span class="term"><em class="parameter"><code>endptr</code></em> :</span></p></td>
2379
+ <td>if non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, it returns the character after
2380
+ the last character used in the conversion.
2381
+ </td>
2382
+ </tr>
2383
+ <tr>
2384
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2385
+ <td> the <a class="link" href="glib-Basic-Types.html#gdouble" title="gdouble"><span class="type">gdouble</span></a> value.
2386
+ </td>
2387
+ </tr>
2388
+ </tbody>
2389
+ </table></div>
2390
+ </div>
2391
+ <hr>
2392
+ <div class="refsect2" title="g_strchug ()">
2393
+ <a name="g-strchug"></a><h3>g_strchug ()</h3>
2394
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strchug (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
2395
+ <p>
2396
+ Removes leading whitespace from a string, by moving the rest of the
2397
+ characters forward.
2398
+ </p>
2399
+ <p>
2400
+ This function doesn't allocate or reallocate any memory; it modifies <em class="parameter"><code>string</code></em>
2401
+ in place. The pointer to <em class="parameter"><code>string</code></em> is returned to allow the nesting of functions.
2402
+ </p>
2403
+ <p>
2404
+ Also see <a class="link" href="glib-String-Utility-Functions.html#g-strchomp" title="g_strchomp ()"><code class="function">g_strchomp()</code></a> and <a class="link" href="glib-String-Utility-Functions.html#g-strstrip" title="g_strstrip()"><code class="function">g_strstrip()</code></a>.
2405
+ </p>
2406
+ <div class="variablelist"><table border="0">
2407
+ <col align="left" valign="top">
2408
+ <tbody>
2409
+ <tr>
2410
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2411
+ <td>a string to remove the leading whitespace from.
2412
+ </td>
2413
+ </tr>
2414
+ <tr>
2415
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2416
+ <td>
2417
+ <em class="parameter"><code>string</code></em>.
2418
+ </td>
2419
+ </tr>
2420
+ </tbody>
2421
+ </table></div>
2422
+ </div>
2423
+ <hr>
2424
+ <div class="refsect2" title="g_strchomp ()">
2425
+ <a name="g-strchomp"></a><h3>g_strchomp ()</h3>
2426
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strchomp (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>);</pre>
2427
+ <p>
2428
+ Removes trailing whitespace from a string.
2429
+ </p>
2430
+ <p>
2431
+ This function doesn't allocate or reallocate any memory; it modifies <em class="parameter"><code>string</code></em> in
2432
+ place. The pointer to <em class="parameter"><code>string</code></em> is returned to allow the nesting of functions.
2433
+ </p>
2434
+ <p>
2435
+ Also see <a class="link" href="glib-String-Utility-Functions.html#g-strchug" title="g_strchug ()"><code class="function">g_strchug()</code></a> and <a class="link" href="glib-String-Utility-Functions.html#g-strstrip" title="g_strstrip()"><code class="function">g_strstrip()</code></a>.
2436
+ </p>
2437
+ <div class="variablelist"><table border="0">
2438
+ <col align="left" valign="top">
2439
+ <tbody>
2440
+ <tr>
2441
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2442
+ <td>a string to remove the trailing whitespace from.
2443
+ </td>
2444
+ </tr>
2445
+ <tr>
2446
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2447
+ <td>
2448
+ <em class="parameter"><code>string</code></em>.
2449
+ </td>
2450
+ </tr>
2451
+ </tbody>
2452
+ </table></div>
2453
+ </div>
2454
+ <hr>
2455
+ <div class="refsect2" title="g_strstrip()">
2456
+ <a name="g-strstrip"></a><h3>g_strstrip()</h3>
2457
+ <pre class="programlisting">#define g_strstrip( string )</pre>
2458
+ <p>
2459
+ Removes leading and trailing whitespace from a string. See <a class="link" href="glib-String-Utility-Functions.html#g-strchomp" title="g_strchomp ()"><code class="function">g_strchomp()</code></a> and
2460
+ <a class="link" href="glib-String-Utility-Functions.html#g-strchug" title="g_strchug ()"><code class="function">g_strchug()</code></a>.
2461
+ </p>
2462
+ <div class="variablelist"><table border="0">
2463
+ <col align="left" valign="top">
2464
+ <tbody><tr>
2465
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2466
+ <td>a string to remove the leading and trailing whitespace from.
2467
+ </td>
2468
+ </tr></tbody>
2469
+ </table></div>
2470
+ </div>
2471
+ <hr>
2472
+ <div class="refsect2" title="g_strdelimit ()">
2473
+ <a name="g-strdelimit"></a><h3>g_strdelimit ()</h3>
2474
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strdelimit (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
2475
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *delimiters</code></em>,
2476
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> new_delimiter</code></em>);</pre>
2477
+ <p>
2478
+ Converts any delimiter characters in <em class="parameter"><code>string</code></em> to <em class="parameter"><code>new_delimiter</code></em>.
2479
+ Any characters in <em class="parameter"><code>string</code></em> which are found in <em class="parameter"><code>delimiters</code></em> are changed
2480
+ to the <em class="parameter"><code>new_delimiter</code></em> character. Modifies <em class="parameter"><code>string</code></em> in place, and returns
2481
+ <em class="parameter"><code>string</code></em> itself, not a copy. The return value is to allow nesting such as
2482
+ <code class="literal">g_ascii_strup (g_strdelimit (str, "abc", '?'))</code>.
2483
+ </p>
2484
+ <div class="variablelist"><table border="0">
2485
+ <col align="left" valign="top">
2486
+ <tbody>
2487
+ <tr>
2488
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2489
+ <td>the string to convert.
2490
+ </td>
2491
+ </tr>
2492
+ <tr>
2493
+ <td><p><span class="term"><em class="parameter"><code>delimiters</code></em> :</span></p></td>
2494
+ <td>a string containing the current delimiters, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to use the
2495
+ standard delimiters defined in <a class="link" href="glib-String-Utility-Functions.html#G-STR-DELIMITERS:CAPS" title="G_STR_DELIMITERS"><span class="type">G_STR_DELIMITERS</span></a>.
2496
+ </td>
2497
+ </tr>
2498
+ <tr>
2499
+ <td><p><span class="term"><em class="parameter"><code>new_delimiter</code></em> :</span></p></td>
2500
+ <td>the new delimiter character.
2501
+ </td>
2502
+ </tr>
2503
+ <tr>
2504
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2505
+ <td>
2506
+ <em class="parameter"><code>string</code></em>.
2507
+ </td>
2508
+ </tr>
2509
+ </tbody>
2510
+ </table></div>
2511
+ </div>
2512
+ <hr>
2513
+ <div class="refsect2" title="G_STR_DELIMITERS">
2514
+ <a name="G-STR-DELIMITERS:CAPS"></a><h3>G_STR_DELIMITERS</h3>
2515
+ <pre class="programlisting">#define G_STR_DELIMITERS "_-|&gt; &lt;."
2516
+ </pre>
2517
+ <p>
2518
+ The standard delimiters, used in <a class="link" href="glib-String-Utility-Functions.html#g-strdelimit" title="g_strdelimit ()"><code class="function">g_strdelimit()</code></a>.
2519
+ </p>
2520
+ </div>
2521
+ <hr>
2522
+ <div class="refsect2" title="g_strescape ()">
2523
+ <a name="g-strescape"></a><h3>g_strescape ()</h3>
2524
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strescape (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *source</code></em>,
2525
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *exceptions</code></em>);</pre>
2526
+ <p>
2527
+ Escapes the special characters '\b', '\f', '\n', '\r', '\t', '\' and
2528
+ '"' in the string <em class="parameter"><code>source</code></em> by inserting a '\' before
2529
+ them. Additionally all characters in the range 0x01-0x1F (everything
2530
+ below SPACE) and in the range 0x7F-0xFF (all non-ASCII chars) are
2531
+ replaced with a '\' followed by their octal representation. Characters
2532
+ supplied in <em class="parameter"><code>exceptions</code></em> are not escaped.
2533
+ </p>
2534
+ <p>
2535
+ <a class="link" href="glib-String-Utility-Functions.html#g-strcompress" title="g_strcompress ()"><code class="function">g_strcompress()</code></a> does the reverse conversion.
2536
+ </p>
2537
+ <div class="variablelist"><table border="0">
2538
+ <col align="left" valign="top">
2539
+ <tbody>
2540
+ <tr>
2541
+ <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
2542
+ <td>a string to escape.
2543
+ </td>
2544
+ </tr>
2545
+ <tr>
2546
+ <td><p><span class="term"><em class="parameter"><code>exceptions</code></em> :</span></p></td>
2547
+ <td>a string of characters not to escape in <em class="parameter"><code>source</code></em>.
2548
+ </td>
2549
+ </tr>
2550
+ <tr>
2551
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2552
+ <td>a newly-allocated copy of <em class="parameter"><code>source</code></em> with certain
2553
+ characters escaped. See above.
2554
+ </td>
2555
+ </tr>
2556
+ </tbody>
2557
+ </table></div>
2558
+ </div>
2559
+ <hr>
2560
+ <div class="refsect2" title="g_strcompress ()">
2561
+ <a name="g-strcompress"></a><h3>g_strcompress ()</h3>
2562
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strcompress (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *source</code></em>);</pre>
2563
+ <p>
2564
+ Replaces all escaped characters with their one byte equivalent. It
2565
+ does the reverse conversion of <a class="link" href="glib-String-Utility-Functions.html#g-strescape" title="g_strescape ()"><code class="function">g_strescape()</code></a>.
2566
+ </p>
2567
+ <div class="variablelist"><table border="0">
2568
+ <col align="left" valign="top">
2569
+ <tbody>
2570
+ <tr>
2571
+ <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
2572
+ <td>a string to compress.
2573
+ </td>
2574
+ </tr>
2575
+ <tr>
2576
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2577
+ <td>a newly-allocated copy of <em class="parameter"><code>source</code></em> with all escaped
2578
+ character compressed.
2579
+ </td>
2580
+ </tr>
2581
+ </tbody>
2582
+ </table></div>
2583
+ </div>
2584
+ <hr>
2585
+ <div class="refsect2" title="g_strcanon ()">
2586
+ <a name="g-strcanon"></a><h3>g_strcanon ()</h3>
2587
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strcanon (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
2588
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *valid_chars</code></em>,
2589
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> substitutor</code></em>);</pre>
2590
+ <p>
2591
+ For each character in <em class="parameter"><code>string</code></em>, if the character is not in <em class="parameter"><code>valid_chars</code></em>,
2592
+ replaces the character with <em class="parameter"><code>substitutor</code></em>. Modifies <em class="parameter"><code>string</code></em> in place,
2593
+ and return <em class="parameter"><code>string</code></em> itself, not a copy. The return value is to allow
2594
+ nesting such as <code class="literal">g_ascii_strup (g_strcanon (str, "abc", '?'))</code>.
2595
+ </p>
2596
+ <div class="variablelist"><table border="0">
2597
+ <col align="left" valign="top">
2598
+ <tbody>
2599
+ <tr>
2600
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2601
+ <td>a nul-terminated array of bytes.
2602
+ </td>
2603
+ </tr>
2604
+ <tr>
2605
+ <td><p><span class="term"><em class="parameter"><code>valid_chars</code></em> :</span></p></td>
2606
+ <td>bytes permitted in <em class="parameter"><code>string</code></em>.
2607
+ </td>
2608
+ </tr>
2609
+ <tr>
2610
+ <td><p><span class="term"><em class="parameter"><code>substitutor</code></em> :</span></p></td>
2611
+ <td>replacement character for disallowed bytes.
2612
+ </td>
2613
+ </tr>
2614
+ <tr>
2615
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2616
+ <td>
2617
+ <em class="parameter"><code>string</code></em>.
2618
+ </td>
2619
+ </tr>
2620
+ </tbody>
2621
+ </table></div>
2622
+ </div>
2623
+ <hr>
2624
+ <div class="refsect2" title="g_strsplit ()">
2625
+ <a name="g-strsplit"></a><h3>g_strsplit ()</h3>
2626
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>** g_strsplit (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
2627
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *delimiter</code></em>,
2628
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> max_tokens</code></em>);</pre>
2629
+ <p>
2630
+ Splits a string into a maximum of <em class="parameter"><code>max_tokens</code></em> pieces, using the given
2631
+ <em class="parameter"><code>delimiter</code></em>. If <em class="parameter"><code>max_tokens</code></em> is reached, the remainder of <em class="parameter"><code>string</code></em> is appended
2632
+ to the last token.
2633
+ </p>
2634
+ <p>
2635
+ As a special case, the result of splitting the empty string "" is an empty
2636
+ vector, not a vector containing a single string. The reason for this
2637
+ special case is that being able to represent a empty vector is typically
2638
+ more useful than consistent handling of empty elements. If you do need
2639
+ to represent empty elements, you'll need to check for the empty string
2640
+ before calling <a class="link" href="glib-String-Utility-Functions.html#g-strsplit" title="g_strsplit ()"><code class="function">g_strsplit()</code></a>.
2641
+ </p>
2642
+ <div class="variablelist"><table border="0">
2643
+ <col align="left" valign="top">
2644
+ <tbody>
2645
+ <tr>
2646
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2647
+ <td>a string to split.
2648
+ </td>
2649
+ </tr>
2650
+ <tr>
2651
+ <td><p><span class="term"><em class="parameter"><code>delimiter</code></em> :</span></p></td>
2652
+ <td>a string which specifies the places at which to split the string.
2653
+ The delimiter is not included in any of the resulting strings, unless
2654
+ <em class="parameter"><code>max_tokens</code></em> is reached.
2655
+ </td>
2656
+ </tr>
2657
+ <tr>
2658
+ <td><p><span class="term"><em class="parameter"><code>max_tokens</code></em> :</span></p></td>
2659
+ <td>the maximum number of pieces to split <em class="parameter"><code>string</code></em> into. If this is
2660
+ less than 1, the string is split completely.
2661
+ </td>
2662
+ </tr>
2663
+ <tr>
2664
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2665
+ <td> a newly-allocated <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings. Use
2666
+ <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a> to free it.
2667
+ </td>
2668
+ </tr>
2669
+ </tbody>
2670
+ </table></div>
2671
+ </div>
2672
+ <hr>
2673
+ <div class="refsect2" title="g_strsplit_set ()">
2674
+ <a name="g-strsplit-set"></a><h3>g_strsplit_set ()</h3>
2675
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** g_strsplit_set (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string</code></em>,
2676
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *delimiters</code></em>,
2677
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> max_tokens</code></em>);</pre>
2678
+ <p>
2679
+ Splits <em class="parameter"><code>string</code></em> into a number of tokens not containing any of the characters
2680
+ in <em class="parameter"><code>delimiter</code></em>. A token is the (possibly empty) longest string that does not
2681
+ contain any of the characters in <em class="parameter"><code>delimiters</code></em>. If <em class="parameter"><code>max_tokens</code></em> is reached, the
2682
+ remainder is appended to the last token.
2683
+ </p>
2684
+ <p>
2685
+ For example the result of g_strsplit_set ("abc:def/ghi", ":/", -1) is a
2686
+ <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated vector containing the three strings "abc", "def",
2687
+ and "ghi".
2688
+ </p>
2689
+ <p>
2690
+ The result if g_strsplit_set (":def/ghi:", ":/", -1) is a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated
2691
+ vector containing the four strings "", "def", "ghi", and "".
2692
+ </p>
2693
+ <p>
2694
+ As a special case, the result of splitting the empty string "" is an empty
2695
+ vector, not a vector containing a single string. The reason for this
2696
+ special case is that being able to represent a empty vector is typically
2697
+ more useful than consistent handling of empty elements. If you do need
2698
+ to represent empty elements, you'll need to check for the empty string
2699
+ before calling <a class="link" href="glib-String-Utility-Functions.html#g-strsplit-set" title="g_strsplit_set ()"><code class="function">g_strsplit_set()</code></a>.
2700
+ </p>
2701
+ <p>
2702
+ Note that this function works on bytes not characters, so it can't be used
2703
+ to delimit UTF-8 strings for anything but ASCII characters.
2704
+ </p>
2705
+ <div class="variablelist"><table border="0">
2706
+ <col align="left" valign="top">
2707
+ <tbody>
2708
+ <tr>
2709
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2710
+ <td>The string to be tokenized
2711
+ </td>
2712
+ </tr>
2713
+ <tr>
2714
+ <td><p><span class="term"><em class="parameter"><code>delimiters</code></em> :</span></p></td>
2715
+ <td>A nul-terminated string containing bytes that are used
2716
+ to split the string.
2717
+ </td>
2718
+ </tr>
2719
+ <tr>
2720
+ <td><p><span class="term"><em class="parameter"><code>max_tokens</code></em> :</span></p></td>
2721
+ <td>The maximum number of tokens to split <em class="parameter"><code>string</code></em> into.
2722
+ If this is less than 1, the string is split completely
2723
+ </td>
2724
+ </tr>
2725
+ <tr>
2726
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2727
+ <td> a newly-allocated <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings. Use
2728
+ <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a> to free it.
2729
+
2730
+ </td>
2731
+ </tr>
2732
+ </tbody>
2733
+ </table></div>
2734
+ <p class="since">Since 2.4</p>
2735
+ </div>
2736
+ <hr>
2737
+ <div class="refsect2" title="g_strfreev ()">
2738
+ <a name="g-strfreev"></a><h3>g_strfreev ()</h3>
2739
+ <pre class="programlisting"><span class="returnvalue">void</span> g_strfreev (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);</pre>
2740
+ <p>
2741
+ Frees a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings, and the array itself.
2742
+ If called on a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> value, <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a> simply returns.
2743
+ </p>
2744
+ <div class="variablelist"><table border="0">
2745
+ <col align="left" valign="top">
2746
+ <tbody><tr>
2747
+ <td><p><span class="term"><em class="parameter"><code>str_array</code></em> :</span></p></td>
2748
+ <td>a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings to free.
2749
+ </td>
2750
+ </tr></tbody>
2751
+ </table></div>
2752
+ </div>
2753
+ <hr>
2754
+ <div class="refsect2" title="g_strconcat ()">
2755
+ <a name="g-strconcat"></a><h3>g_strconcat ()</h3>
2756
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strconcat (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string1</code></em>,
2757
+ <em class="parameter"><code>...</code></em>);</pre>
2758
+ <p>
2759
+ Concatenates all of the given strings into one long string.
2760
+ The returned string should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> when no longer needed.
2761
+ </p>
2762
+ <p>
2763
+ </p>
2764
+ <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
2765
+ <h3 class="title">Warning</h3>
2766
+ <p>The variable argument list <span class="emphasis"><em>must</em></span> end
2767
+ with <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. If you forget the <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, <a class="link" href="glib-String-Utility-Functions.html#g-strconcat" title="g_strconcat ()"><code class="function">g_strconcat()</code></a> will start appending
2768
+ random memory junk to your string.</p>
2769
+ </div>
2770
+ <p>
2771
+ </p>
2772
+ <div class="variablelist"><table border="0">
2773
+ <col align="left" valign="top">
2774
+ <tbody>
2775
+ <tr>
2776
+ <td><p><span class="term"><em class="parameter"><code>string1</code></em> :</span></p></td>
2777
+ <td>the first string to add, which must not be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
2778
+ </td>
2779
+ </tr>
2780
+ <tr>
2781
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
2782
+ <td>a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated list of strings to append to the string
2783
+ </td>
2784
+ </tr>
2785
+ <tr>
2786
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2787
+ <td> a newly-allocated string containing all the string arguments
2788
+ </td>
2789
+ </tr>
2790
+ </tbody>
2791
+ </table></div>
2792
+ </div>
2793
+ <hr>
2794
+ <div class="refsect2" title="g_strjoin ()">
2795
+ <a name="g-strjoin"></a><h3>g_strjoin ()</h3>
2796
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strjoin (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *separator</code></em>,
2797
+ <em class="parameter"><code>...</code></em>);</pre>
2798
+ <p>
2799
+ Joins a number of strings together to form one long string, with the
2800
+ optional <em class="parameter"><code>separator</code></em> inserted between each of them. The returned string
2801
+ should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>.
2802
+ </p>
2803
+ <div class="variablelist"><table border="0">
2804
+ <col align="left" valign="top">
2805
+ <tbody>
2806
+ <tr>
2807
+ <td><p><span class="term"><em class="parameter"><code>separator</code></em> :</span></p></td>
2808
+ <td>a string to insert between each of the strings, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
2809
+ </td>
2810
+ </tr>
2811
+ <tr>
2812
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
2813
+ <td>a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated list of strings to join
2814
+ </td>
2815
+ </tr>
2816
+ <tr>
2817
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2818
+ <td> a newly-allocated string containing all of the strings joined
2819
+ together, with <em class="parameter"><code>separator</code></em> between them
2820
+ </td>
2821
+ </tr>
2822
+ </tbody>
2823
+ </table></div>
2824
+ </div>
2825
+ <hr>
2826
+ <div class="refsect2" title="g_strjoinv ()">
2827
+ <a name="g-strjoinv"></a><h3>g_strjoinv ()</h3>
2828
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strjoinv (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *separator</code></em>,
2829
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);</pre>
2830
+ <p>
2831
+ Joins a number of strings together to form one long string, with the
2832
+ optional <em class="parameter"><code>separator</code></em> inserted between each of them. The returned string
2833
+ should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>.
2834
+ </p>
2835
+ <div class="variablelist"><table border="0">
2836
+ <col align="left" valign="top">
2837
+ <tbody>
2838
+ <tr>
2839
+ <td><p><span class="term"><em class="parameter"><code>separator</code></em> :</span></p></td>
2840
+ <td>a string to insert between each of the strings, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
2841
+ </td>
2842
+ </tr>
2843
+ <tr>
2844
+ <td><p><span class="term"><em class="parameter"><code>str_array</code></em> :</span></p></td>
2845
+ <td>a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings to join
2846
+ </td>
2847
+ </tr>
2848
+ <tr>
2849
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2850
+ <td> a newly-allocated string containing all of the strings joined
2851
+ together, with <em class="parameter"><code>separator</code></em> between them
2852
+ </td>
2853
+ </tr>
2854
+ </tbody>
2855
+ </table></div>
2856
+ </div>
2857
+ <hr>
2858
+ <div class="refsect2" title="g_strv_length ()">
2859
+ <a name="g-strv-length"></a><h3>g_strv_length ()</h3>
2860
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="returnvalue">guint</span></a> g_strv_length (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **str_array</code></em>);</pre>
2861
+ <p>
2862
+ Returns the length of the given <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated
2863
+ string array <em class="parameter"><code>str_array</code></em>.
2864
+ </p>
2865
+ <div class="variablelist"><table border="0">
2866
+ <col align="left" valign="top">
2867
+ <tbody>
2868
+ <tr>
2869
+ <td><p><span class="term"><em class="parameter"><code>str_array</code></em> :</span></p></td>
2870
+ <td>a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings.
2871
+ </td>
2872
+ </tr>
2873
+ <tr>
2874
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2875
+ <td> length of <em class="parameter"><code>str_array</code></em>.
2876
+
2877
+ </td>
2878
+ </tr>
2879
+ </tbody>
2880
+ </table></div>
2881
+ <p class="since">Since 2.6</p>
2882
+ </div>
2883
+ <hr>
2884
+ <div class="refsect2" title="g_strerror ()">
2885
+ <a name="g-strerror"></a><h3>g_strerror ()</h3>
2886
+ <pre class="programlisting">const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strerror (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> errnum</code></em>);</pre>
2887
+ <p>
2888
+ Returns a string corresponding to the given error code, e.g.
2889
+ "no such process". You should use this function in preference to
2890
+ <code class="function">strerror()</code>, because it returns a string in UTF-8 encoding, and since
2891
+ not all platforms support the <code class="function">strerror()</code> function.
2892
+ </p>
2893
+ <div class="variablelist"><table border="0">
2894
+ <col align="left" valign="top">
2895
+ <tbody>
2896
+ <tr>
2897
+ <td><p><span class="term"><em class="parameter"><code>errnum</code></em> :</span></p></td>
2898
+ <td>the system error number. See the standard C <code class="literal">errno</code>
2899
+ documentation
2900
+ </td>
2901
+ </tr>
2902
+ <tr>
2903
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2904
+ <td> a UTF-8 string describing the error code. If the error code
2905
+ is unknown, it returns "unknown error (&lt;code&gt;)". The string
2906
+ can only be used until the next call to <a class="link" href="glib-String-Utility-Functions.html#g-strerror" title="g_strerror ()"><code class="function">g_strerror()</code></a>
2907
+ </td>
2908
+ </tr>
2909
+ </tbody>
2910
+ </table></div>
2911
+ </div>
2912
+ <hr>
2913
+ <div class="refsect2" title="g_strsignal ()">
2914
+ <a name="g-strsignal"></a><h3>g_strsignal ()</h3>
2915
+ <pre class="programlisting">const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_strsignal (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> signum</code></em>);</pre>
2916
+ <p>
2917
+ Returns a string describing the given signal, e.g. "Segmentation fault".
2918
+ You should use this function in preference to <code class="function">strsignal()</code>, because it
2919
+ returns a string in UTF-8 encoding, and since not all platforms support
2920
+ the <code class="function">strsignal()</code> function.
2921
+ </p>
2922
+ <div class="variablelist"><table border="0">
2923
+ <col align="left" valign="top">
2924
+ <tbody>
2925
+ <tr>
2926
+ <td><p><span class="term"><em class="parameter"><code>signum</code></em> :</span></p></td>
2927
+ <td>the signal number. See the <code class="literal">signal</code>
2928
+ documentation
2929
+ </td>
2930
+ </tr>
2931
+ <tr>
2932
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2933
+ <td> a UTF-8 string describing the signal. If the signal is unknown,
2934
+ it returns "unknown signal (&lt;signum&gt;)". The string can only be
2935
+ used until the next call to <a class="link" href="glib-String-Utility-Functions.html#g-strsignal" title="g_strsignal ()"><code class="function">g_strsignal()</code></a>
2936
+ </td>
2937
+ </tr>
2938
+ </tbody>
2939
+ </table></div>
2940
+ </div>
2941
+ </div>
2942
+ </div>
2943
+ <div class="footer">
2944
+ <hr>
2945
+ Generated by GTK-Doc V1.14</div>
2946
+ </body>
2947
+ </html>