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,2648 @@
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>Perl-compatible regular expressions</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-Glob-style-pattern-matching.html" title="Glob-style pattern matching">
10
+ <link rel="next" href="glib-Simple-XML-Subset-Parser.html" title="Simple XML Subset Parser">
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-Glob-style-pattern-matching.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-Simple-XML-Subset-Parser.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-Perl-compatible-regular-expressions.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#glib-Perl-compatible-regular-expressions.description" class="shortcut">Description</a>
27
+ </td></tr>
28
+ </table>
29
+ <div class="refentry" title="Perl-compatible regular expressions">
30
+ <a name="glib-Perl-compatible-regular-expressions"></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-Perl-compatible-regular-expressions.top_of_page"></a>Perl-compatible regular expressions</span></h2>
34
+ <p>Perl-compatible regular expressions — matches strings against regular expressions</p>
35
+ </td>
36
+ <td valign="top" align="right"></td>
37
+ </tr></table></div>
38
+ <div class="refsynopsisdiv" title="Synopsis">
39
+ <a name="glib-Perl-compatible-regular-expressions.synopsis"></a><h2>Synopsis</h2>
40
+ <pre class="synopsis">
41
+ #include &lt;glib.h&gt;
42
+
43
+ enum <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexError" title="enum GRegexError">GRegexError</a>;
44
+ #define <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-ERROR:CAPS" title="G_REGEX_ERROR">G_REGEX_ERROR</a>
45
+ enum <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags">GRegexCompileFlags</a>;
46
+ enum <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags">GRegexMatchFlags</a>;
47
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex">GRegex</a>;
48
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexEvalCallback" title="GRegexEvalCallback ()">*GRegexEvalCallback</a>) (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
49
+ <em class="parameter"><code><a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> *result</code></em>,
50
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
51
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="returnvalue">GRegex</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()">g_regex_new</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pattern</code></em>,
52
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags"><span class="type">GRegexCompileFlags</span></a> compile_options</code></em>,
53
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
54
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
55
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="returnvalue">GRegex</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-ref" title="g_regex_ref ()">g_regex_ref</a> (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);
56
+ <span class="returnvalue">void</span> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-unref" title="g_regex_unref ()">g_regex_unref</a> (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);
57
+ const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-get-pattern" title="g_regex_get_pattern ()">g_regex_get_pattern</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);
58
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-get-max-backref" title="g_regex_get_max_backref ()">g_regex_get_max_backref</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);
59
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-get-capture-count" title="g_regex_get_capture_count ()">g_regex_get_capture_count</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);
60
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-get-string-number" title="g_regex_get_string_number ()">g_regex_get_string_number</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</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> *name</code></em>);
62
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-escape-string" title="g_regex_escape_string ()">g_regex_escape_string</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>,
63
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> length</code></em>);
64
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-simple" title="g_regex_match_simple ()">g_regex_match_simple</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pattern</code></em>,
65
+ <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>,
66
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags"><span class="type">GRegexCompileFlags</span></a> compile_options</code></em>,
67
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>);
68
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()">g_regex_match</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
69
+ <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>,
70
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
71
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>);
72
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-full" title="g_regex_match_full ()">g_regex_match_full</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
73
+ <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>,
74
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
75
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
76
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
77
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>,
78
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
79
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all" title="g_regex_match_all ()">g_regex_match_all</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
80
+ <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>,
81
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
82
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>);
83
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all-full" title="g_regex_match_all_full ()">g_regex_match_all_full</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
84
+ <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>,
85
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
86
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
87
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
88
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>,
89
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
90
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-split-simple" title="g_regex_split_simple ()">g_regex_split_simple</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pattern</code></em>,
91
+ <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>,
92
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags"><span class="type">GRegexCompileFlags</span></a> compile_options</code></em>,
93
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>);
94
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-split" title="g_regex_split ()">g_regex_split</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
95
+ <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>,
96
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>);
97
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-split-full" title="g_regex_split_full ()">g_regex_split_full</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
98
+ <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>,
99
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
100
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
101
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
102
+ <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>,
103
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
104
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace" title="g_regex_replace ()">g_regex_replace</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
105
+ <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>,
106
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
107
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
108
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *replacement</code></em>,
109
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
110
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
111
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-literal" title="g_regex_replace_literal ()">g_regex_replace_literal</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
112
+ <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>,
113
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
114
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
115
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *replacement</code></em>,
116
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
117
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
118
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval" title="g_regex_replace_eval ()">g_regex_replace_eval</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
119
+ <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>,
120
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
121
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
122
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
123
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexEvalCallback" title="GRegexEvalCallback ()"><span class="type">GRegexEvalCallback</span></a> eval</code></em>,
124
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
125
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
126
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-check-replacement" title="g_regex_check_replacement ()">g_regex_check_replacement</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *replacement</code></em>,
127
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="type">gboolean</span></a> *has_references</code></em>,
128
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
129
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo">GMatchInfo</a>;
130
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="returnvalue">GRegex</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-get-regex" title="g_match_info_get_regex ()">g_match_info_get_regex</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
131
+ const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-get-string" title="g_match_info_get_string ()">g_match_info_get_string</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
132
+ <span class="returnvalue">void</span> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()">g_match_info_free</a> (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
133
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches" title="g_match_info_matches ()">g_match_info_matches</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
134
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-next" title="g_match_info_next ()">g_match_info_next</a> (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
135
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
136
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-get-match-count" title="g_match_info_get_match_count ()">g_match_info_get_match_count</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
137
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-is-partial-match" title="g_match_info_is_partial_match ()">g_match_info_is_partial_match</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
138
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-expand-references" title="g_match_info_expand_references ()">g_match_info_expand_references</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
139
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string_to_expand</code></em>,
140
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</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-Perl-compatible-regular-expressions.html#g-match-info-fetch" title="g_match_info_fetch ()">g_match_info_fetch</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
142
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> match_num</code></em>);
143
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch-pos" title="g_match_info_fetch_pos ()">g_match_info_fetch_pos</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
144
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> match_num</code></em>,
145
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *start_pos</code></em>,
146
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *end_pos</code></em>);
147
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch-named" title="g_match_info_fetch_named ()">g_match_info_fetch_named</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
148
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *name</code></em>);
149
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch-named-pos" title="g_match_info_fetch_named_pos ()">g_match_info_fetch_named_pos</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
150
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *name</code></em>,
151
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *start_pos</code></em>,
152
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *end_pos</code></em>);
153
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch-all" title="g_match_info_fetch_all ()">g_match_info_fetch_all</a> (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);
154
+ </pre>
155
+ </div>
156
+ <div class="refsect1" title="Description">
157
+ <a name="glib-Perl-compatible-regular-expressions.description"></a><h2>Description</h2>
158
+ <p>
159
+ The <code class="function">g_regex_*()</code> functions implement regular
160
+ expression pattern matching using syntax and semantics similar to
161
+ Perl regular expression.
162
+ </p>
163
+ <p>
164
+ Some functions accept a <em class="parameter"><code>start_position</code></em> argument,
165
+ setting it differs from just passing over a shortened string and setting
166
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern that begins with any kind
167
+ of lookbehind assertion.
168
+ For example, consider the pattern "\Biss\B" which finds occurrences of "iss"
169
+ in the middle of words. ("\B" matches only if the current position in the
170
+ subject is not a word boundary.) When applied to the string "Mississipi"
171
+ from the fourth byte, namely "issipi", it does not match, because "\B" is
172
+ always false at the start of the subject, which is deemed to be a word
173
+ boundary. However, if the entire string is passed , but with
174
+ <em class="parameter"><code>start_position</code></em> set to 4, it finds the second
175
+ occurrence of "iss" because it is able to look behind the starting point
176
+ to discover that it is preceded by a letter.
177
+ </p>
178
+ <p>
179
+ Note that, unless you set the <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-RAW:CAPS"><span class="type">G_REGEX_RAW</span></a> flag, all the strings passed
180
+ to these functions must be encoded in UTF-8. The lengths and the positions
181
+ inside the strings are in bytes and not in characters, so, for instance,
182
+ "\xc3\xa0" (i.e. "à") is two bytes long but it is treated as a single
183
+ character. If you set <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-RAW:CAPS"><span class="type">G_REGEX_RAW</span></a> the strings can be non-valid UTF-8
184
+ strings and a byte is treated as a character, so "\xc3\xa0" is two bytes
185
+ and two characters long.
186
+ </p>
187
+ <p>
188
+ When matching a pattern, "\n" matches only against a "\n" character in the
189
+ string, and "\r" matches only a "\r" character. To match any newline sequence
190
+ use "\R". This particular group matches either the two-character sequence
191
+ CR + LF ("\r\n"), or one of the single characters LF (linefeed, U+000A, "\n"), VT
192
+ (vertical tab, U+000B, "\v"), FF (formfeed, U+000C, "\f"), CR (carriage return,
193
+ U+000D, "\r"), NEL (next line, U+0085), LS (line separator, U+2028), or PS
194
+ (paragraph separator, U+2029).
195
+ </p>
196
+ <p>
197
+ The behaviour of the dot, circumflex, and dollar metacharacters are affected by
198
+ newline characters, the default is to recognize any newline character (the same
199
+ characters recognized by "\R"). This can be changed with <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-NEWLINE-CR:CAPS"><span class="type">G_REGEX_NEWLINE_CR</span></a>,
200
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-NEWLINE-LF:CAPS"><span class="type">G_REGEX_NEWLINE_LF</span></a> and <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-NEWLINE-CRLF:CAPS"><span class="type">G_REGEX_NEWLINE_CRLF</span></a> compile options,
201
+ and with <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NEWLINE-ANY:CAPS"><span class="type">G_REGEX_MATCH_NEWLINE_ANY</span></a>, <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NEWLINE-CR:CAPS"><span class="type">G_REGEX_MATCH_NEWLINE_CR</span></a>,
202
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NEWLINE-LF:CAPS"><span class="type">G_REGEX_MATCH_NEWLINE_LF</span></a> and <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NEWLINE-CRLF:CAPS"><span class="type">G_REGEX_MATCH_NEWLINE_CRLF</span></a> match options.
203
+ These settings are also relevant when compiling a pattern if
204
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-EXTENDED:CAPS"><span class="type">G_REGEX_EXTENDED</span></a> is set, and an unescaped "#" outside a character class is
205
+ encountered. This indicates a comment that lasts until after the next
206
+ newline.
207
+ </p>
208
+ <p>
209
+ Creating and manipulating the same <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure from different
210
+ threads is not a problem as <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> does not modify its internal
211
+ state between creation and destruction, on the other hand <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> is
212
+ not threadsafe.
213
+ </p>
214
+ <p>
215
+ The regular expressions low level functionalities are obtained through
216
+ the excellent <a class="ulink" href="http://www.pcre.org/" target="_top">PCRE</a> library
217
+ written by Philip Hazel.
218
+ </p>
219
+ </div>
220
+ <div class="refsect1" title="Details">
221
+ <a name="glib-Perl-compatible-regular-expressions.details"></a><h2>Details</h2>
222
+ <div class="refsect2" title="enum GRegexError">
223
+ <a name="GRegexError"></a><h3>enum GRegexError</h3>
224
+ <pre class="programlisting">typedef enum
225
+ {
226
+ G_REGEX_ERROR_COMPILE,
227
+ G_REGEX_ERROR_OPTIMIZE,
228
+ G_REGEX_ERROR_REPLACE,
229
+ G_REGEX_ERROR_MATCH,
230
+ G_REGEX_ERROR_INTERNAL,
231
+
232
+ /* These are the error codes from PCRE + 100 */
233
+ G_REGEX_ERROR_STRAY_BACKSLASH = 101,
234
+ G_REGEX_ERROR_MISSING_CONTROL_CHAR = 102,
235
+ G_REGEX_ERROR_UNRECOGNIZED_ESCAPE = 103,
236
+ G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER = 104,
237
+ G_REGEX_ERROR_QUANTIFIER_TOO_BIG = 105,
238
+ G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS = 106,
239
+ G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS = 107,
240
+ G_REGEX_ERROR_RANGE_OUT_OF_ORDER = 108,
241
+ G_REGEX_ERROR_NOTHING_TO_REPEAT = 109,
242
+ G_REGEX_ERROR_UNRECOGNIZED_CHARACTER = 112,
243
+ G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS = 113,
244
+ G_REGEX_ERROR_UNMATCHED_PARENTHESIS = 114,
245
+ G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE = 115,
246
+ G_REGEX_ERROR_UNTERMINATED_COMMENT = 118,
247
+ G_REGEX_ERROR_EXPRESSION_TOO_LARGE = 120,
248
+ G_REGEX_ERROR_MEMORY_ERROR = 121,
249
+ G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND = 125,
250
+ G_REGEX_ERROR_MALFORMED_CONDITION = 126,
251
+ G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES = 127,
252
+ G_REGEX_ERROR_ASSERTION_EXPECTED = 128,
253
+ G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME = 130,
254
+ G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED = 131,
255
+ G_REGEX_ERROR_HEX_CODE_TOO_LARGE = 134,
256
+ G_REGEX_ERROR_INVALID_CONDITION = 135,
257
+ G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND = 136,
258
+ G_REGEX_ERROR_INFINITE_LOOP = 140,
259
+ G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR = 142,
260
+ G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME = 143,
261
+ G_REGEX_ERROR_MALFORMED_PROPERTY = 146,
262
+ G_REGEX_ERROR_UNKNOWN_PROPERTY = 147,
263
+ G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG = 148,
264
+ G_REGEX_ERROR_TOO_MANY_SUBPATTERNS = 149,
265
+ G_REGEX_ERROR_INVALID_OCTAL_VALUE = 151,
266
+ G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE = 154,
267
+ G_REGEX_ERROR_DEFINE_REPETION = 155,
268
+ G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS = 156,
269
+ G_REGEX_ERROR_MISSING_BACK_REFERENCE = 157
270
+ } GRegexError;
271
+ </pre>
272
+ <p>
273
+ Error codes returned by regular expressions functions.
274
+ </p>
275
+ <div class="variablelist"><table border="0">
276
+ <col align="left" valign="top">
277
+ <tbody>
278
+ <tr>
279
+ <td><p><a name="G-REGEX-ERROR-COMPILE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_COMPILE</code></span></p></td>
280
+ <td>Compilation of the regular expression failed.
281
+ </td>
282
+ </tr>
283
+ <tr>
284
+ <td><p><a name="G-REGEX-ERROR-OPTIMIZE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_OPTIMIZE</code></span></p></td>
285
+ <td>Optimization of the regular expression failed.
286
+ </td>
287
+ </tr>
288
+ <tr>
289
+ <td><p><a name="G-REGEX-ERROR-REPLACE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_REPLACE</code></span></p></td>
290
+ <td>Replacement failed due to an ill-formed replacement string.
291
+ </td>
292
+ </tr>
293
+ <tr>
294
+ <td><p><a name="G-REGEX-ERROR-MATCH:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MATCH</code></span></p></td>
295
+ <td>The match process failed.
296
+ </td>
297
+ </tr>
298
+ <tr>
299
+ <td><p><a name="G-REGEX-ERROR-INTERNAL:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INTERNAL</code></span></p></td>
300
+ <td>Internal error of the regular expression engine. Since 2.16
301
+ </td>
302
+ </tr>
303
+ <tr>
304
+ <td><p><a name="G-REGEX-ERROR-STRAY-BACKSLASH:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_STRAY_BACKSLASH</code></span></p></td>
305
+ <td>"\\" at end of pattern. Since 2.16
306
+ </td>
307
+ </tr>
308
+ <tr>
309
+ <td><p><a name="G-REGEX-ERROR-MISSING-CONTROL-CHAR:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MISSING_CONTROL_CHAR</code></span></p></td>
310
+ <td>"\\c" at end of pattern. Since 2.16
311
+ </td>
312
+ </tr>
313
+ <tr>
314
+ <td><p><a name="G-REGEX-ERROR-UNRECOGNIZED-ESCAPE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNRECOGNIZED_ESCAPE</code></span></p></td>
315
+ <td>Unrecognized character follows "\\". Since 2.16
316
+ </td>
317
+ </tr>
318
+ <tr>
319
+ <td><p><a name="G-REGEX-ERROR-QUANTIFIERS-OUT-OF-ORDER:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER</code></span></p></td>
320
+ <td>Numbers out of order in "{}" quantifier. Since 2.16
321
+ </td>
322
+ </tr>
323
+ <tr>
324
+ <td><p><a name="G-REGEX-ERROR-QUANTIFIER-TOO-BIG:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_QUANTIFIER_TOO_BIG</code></span></p></td>
325
+ <td>Number too big in "{}" quantifier. Since 2.16
326
+ </td>
327
+ </tr>
328
+ <tr>
329
+ <td><p><a name="G-REGEX-ERROR-UNTERMINATED-CHARACTER-CLASS:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS</code></span></p></td>
330
+ <td>Missing terminating "]" for character class. Since 2.16
331
+ </td>
332
+ </tr>
333
+ <tr>
334
+ <td><p><a name="G-REGEX-ERROR-INVALID-ESCAPE-IN-CHARACTER-CLASS:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS</code></span></p></td>
335
+ <td>Invalid escape sequence in character class. Since 2.16
336
+ </td>
337
+ </tr>
338
+ <tr>
339
+ <td><p><a name="G-REGEX-ERROR-RANGE-OUT-OF-ORDER:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_RANGE_OUT_OF_ORDER</code></span></p></td>
340
+ <td>Range out of order in character class. Since 2.16
341
+ </td>
342
+ </tr>
343
+ <tr>
344
+ <td><p><a name="G-REGEX-ERROR-NOTHING-TO-REPEAT:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_NOTHING_TO_REPEAT</code></span></p></td>
345
+ <td>Nothing to repeat. Since 2.16
346
+ </td>
347
+ </tr>
348
+ <tr>
349
+ <td><p><a name="G-REGEX-ERROR-UNRECOGNIZED-CHARACTER:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNRECOGNIZED_CHARACTER</code></span></p></td>
350
+ <td>Unrecognized character after "(?", "(?&lt;" or "(?P". Since 2.16
351
+ </td>
352
+ </tr>
353
+ <tr>
354
+ <td><p><a name="G-REGEX-ERROR-POSIX-NAMED-CLASS-OUTSIDE-CLASS:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS</code></span></p></td>
355
+ <td>POSIX named classes are supported only within a class. Since 2.16
356
+ </td>
357
+ </tr>
358
+ <tr>
359
+ <td><p><a name="G-REGEX-ERROR-UNMATCHED-PARENTHESIS:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNMATCHED_PARENTHESIS</code></span></p></td>
360
+ <td>Missing terminating ")" or ")" without opening "(". Since 2.16
361
+ </td>
362
+ </tr>
363
+ <tr>
364
+ <td><p><a name="G-REGEX-ERROR-INEXISTENT-SUBPATTERN-REFERENCE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE</code></span></p></td>
365
+ <td>Reference to non-existent subpattern. Since 2.16
366
+ </td>
367
+ </tr>
368
+ <tr>
369
+ <td><p><a name="G-REGEX-ERROR-UNTERMINATED-COMMENT:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNTERMINATED_COMMENT</code></span></p></td>
370
+ <td>Missing terminating ")" after comment. Since 2.16
371
+ </td>
372
+ </tr>
373
+ <tr>
374
+ <td><p><a name="G-REGEX-ERROR-EXPRESSION-TOO-LARGE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_EXPRESSION_TOO_LARGE</code></span></p></td>
375
+ <td>Regular expression too large. Since 2.16
376
+ </td>
377
+ </tr>
378
+ <tr>
379
+ <td><p><a name="G-REGEX-ERROR-MEMORY-ERROR:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MEMORY_ERROR</code></span></p></td>
380
+ <td>Failed to get memory. Since 2.16
381
+ </td>
382
+ </tr>
383
+ <tr>
384
+ <td><p><a name="G-REGEX-ERROR-VARIABLE-LENGTH-LOOKBEHIND:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND</code></span></p></td>
385
+ <td>Lookbehind assertion is not fixed length. Since 2.16
386
+ </td>
387
+ </tr>
388
+ <tr>
389
+ <td><p><a name="G-REGEX-ERROR-MALFORMED-CONDITION:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MALFORMED_CONDITION</code></span></p></td>
390
+ <td>Malformed number or name after "(?(". Since 2.16
391
+ </td>
392
+ </tr>
393
+ <tr>
394
+ <td><p><a name="G-REGEX-ERROR-TOO-MANY-CONDITIONAL-BRANCHES:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES</code></span></p></td>
395
+ <td>Conditional group contains more than two branches. Since 2.16
396
+ </td>
397
+ </tr>
398
+ <tr>
399
+ <td><p><a name="G-REGEX-ERROR-ASSERTION-EXPECTED:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_ASSERTION_EXPECTED</code></span></p></td>
400
+ <td>Assertion expected after "(?(". Since 2.16
401
+ </td>
402
+ </tr>
403
+ <tr>
404
+ <td><p><a name="G-REGEX-ERROR-UNKNOWN-POSIX-CLASS-NAME:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME</code></span></p></td>
405
+ <td>Unknown POSIX class name. Since 2.16
406
+ </td>
407
+ </tr>
408
+ <tr>
409
+ <td><p><a name="G-REGEX-ERROR-POSIX-COLLATING-ELEMENTS-NOT-SUPPORTED:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED</code></span></p></td>
410
+ <td>POSIX collating elements are not supported. Since 2.16
411
+ </td>
412
+ </tr>
413
+ <tr>
414
+ <td><p><a name="G-REGEX-ERROR-HEX-CODE-TOO-LARGE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_HEX_CODE_TOO_LARGE</code></span></p></td>
415
+ <td>Character value in "\\x{...}" sequence is too large. Since 2.16
416
+ </td>
417
+ </tr>
418
+ <tr>
419
+ <td><p><a name="G-REGEX-ERROR-INVALID-CONDITION:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INVALID_CONDITION</code></span></p></td>
420
+ <td>Invalid condition "(?(0)". Since 2.16
421
+ </td>
422
+ </tr>
423
+ <tr>
424
+ <td><p><a name="G-REGEX-ERROR-SINGLE-BYTE-MATCH-IN-LOOKBEHIND:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND</code></span></p></td>
425
+ <td>\\C not allowed in lookbehind assertion. Since 2.16
426
+ </td>
427
+ </tr>
428
+ <tr>
429
+ <td><p><a name="G-REGEX-ERROR-INFINITE-LOOP:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INFINITE_LOOP</code></span></p></td>
430
+ <td>Recursive call could loop indefinitely. Since 2.16
431
+ </td>
432
+ </tr>
433
+ <tr>
434
+ <td><p><a name="G-REGEX-ERROR-MISSING-SUBPATTERN-NAME-TERMINATOR:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR</code></span></p></td>
435
+ <td>Missing terminator in subpattern name. Since 2.16
436
+ </td>
437
+ </tr>
438
+ <tr>
439
+ <td><p><a name="G-REGEX-ERROR-DUPLICATE-SUBPATTERN-NAME:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME</code></span></p></td>
440
+ <td>Two named subpatterns have the same name. Since 2.16
441
+ </td>
442
+ </tr>
443
+ <tr>
444
+ <td><p><a name="G-REGEX-ERROR-MALFORMED-PROPERTY:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MALFORMED_PROPERTY</code></span></p></td>
445
+ <td>Malformed "\\P" or "\\p" sequence. Since 2.16
446
+ </td>
447
+ </tr>
448
+ <tr>
449
+ <td><p><a name="G-REGEX-ERROR-UNKNOWN-PROPERTY:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_UNKNOWN_PROPERTY</code></span></p></td>
450
+ <td>Unknown property name after "\\P" or "\\p". Since 2.16
451
+ </td>
452
+ </tr>
453
+ <tr>
454
+ <td><p><a name="G-REGEX-ERROR-SUBPATTERN-NAME-TOO-LONG:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG</code></span></p></td>
455
+ <td>Subpattern name is too long (maximum 32 characters). Since 2.16
456
+ </td>
457
+ </tr>
458
+ <tr>
459
+ <td><p><a name="G-REGEX-ERROR-TOO-MANY-SUBPATTERNS:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_TOO_MANY_SUBPATTERNS</code></span></p></td>
460
+ <td>Too many named subpatterns (maximum 10,000). Since 2.16
461
+ </td>
462
+ </tr>
463
+ <tr>
464
+ <td><p><a name="G-REGEX-ERROR-INVALID-OCTAL-VALUE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INVALID_OCTAL_VALUE</code></span></p></td>
465
+ <td>Octal value is greater than "\\377". Since 2.16
466
+ </td>
467
+ </tr>
468
+ <tr>
469
+ <td><p><a name="G-REGEX-ERROR-TOO-MANY-BRANCHES-IN-DEFINE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE</code></span></p></td>
470
+ <td>"DEFINE" group contains more than one branch. Since 2.16
471
+ </td>
472
+ </tr>
473
+ <tr>
474
+ <td><p><a name="G-REGEX-ERROR-DEFINE-REPETION:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_DEFINE_REPETION</code></span></p></td>
475
+ <td>Repeating a "DEFINE" group is not allowed. Since 2.16
476
+ </td>
477
+ </tr>
478
+ <tr>
479
+ <td><p><a name="G-REGEX-ERROR-INCONSISTENT-NEWLINE-OPTIONS:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS</code></span></p></td>
480
+ <td>Inconsistent newline options. Since 2.16
481
+ </td>
482
+ </tr>
483
+ <tr>
484
+ <td><p><a name="G-REGEX-ERROR-MISSING-BACK-REFERENCE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_MISSING_BACK_REFERENCE</code></span></p></td>
485
+ <td>"\\g" is not followed by a braced name or an
486
+ optionally braced non-zero number. Since 2.16
487
+ </td>
488
+ </tr>
489
+ </tbody>
490
+ </table></div>
491
+ <p class="since">Since 2.14</p>
492
+ </div>
493
+ <hr>
494
+ <div class="refsect2" title="G_REGEX_ERROR">
495
+ <a name="G-REGEX-ERROR:CAPS"></a><h3>G_REGEX_ERROR</h3>
496
+ <pre class="programlisting">#define G_REGEX_ERROR g_regex_error_quark ()
497
+ </pre>
498
+ <p>
499
+ Error domain for regular expressions. Errors in this domain will be from the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexError" title="enum GRegexError"><span class="type">GRegexError</span></a> enumeration. See <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> for information on error domains.
500
+ </p>
501
+ <p class="since">Since 2.14</p>
502
+ </div>
503
+ <hr>
504
+ <div class="refsect2" title="enum GRegexCompileFlags">
505
+ <a name="GRegexCompileFlags"></a><h3>enum GRegexCompileFlags</h3>
506
+ <pre class="programlisting">typedef enum
507
+ {
508
+ G_REGEX_CASELESS = 1 &lt;&lt; 0,
509
+ G_REGEX_MULTILINE = 1 &lt;&lt; 1,
510
+ G_REGEX_DOTALL = 1 &lt;&lt; 2,
511
+ G_REGEX_EXTENDED = 1 &lt;&lt; 3,
512
+ G_REGEX_ANCHORED = 1 &lt;&lt; 4,
513
+ G_REGEX_DOLLAR_ENDONLY = 1 &lt;&lt; 5,
514
+ G_REGEX_UNGREEDY = 1 &lt;&lt; 9,
515
+ G_REGEX_RAW = 1 &lt;&lt; 11,
516
+ G_REGEX_NO_AUTO_CAPTURE = 1 &lt;&lt; 12,
517
+ G_REGEX_OPTIMIZE = 1 &lt;&lt; 13,
518
+ G_REGEX_DUPNAMES = 1 &lt;&lt; 19,
519
+ G_REGEX_NEWLINE_CR = 1 &lt;&lt; 20,
520
+ G_REGEX_NEWLINE_LF = 1 &lt;&lt; 21,
521
+ G_REGEX_NEWLINE_CRLF = G_REGEX_NEWLINE_CR | G_REGEX_NEWLINE_LF
522
+ } GRegexCompileFlags;
523
+ </pre>
524
+ <p>
525
+ Flags specifying compile-time options.
526
+ </p>
527
+ <div class="variablelist"><table border="0">
528
+ <col align="left" valign="top">
529
+ <tbody>
530
+ <tr>
531
+ <td><p><a name="G-REGEX-CASELESS:CAPS"></a><span class="term"><code class="literal">G_REGEX_CASELESS</code></span></p></td>
532
+ <td>Letters in the pattern match both upper and lower case
533
+ letters. This option can be changed within a pattern by a "(?i)" option
534
+ setting.
535
+ </td>
536
+ </tr>
537
+ <tr>
538
+ <td><p><a name="G-REGEX-MULTILINE:CAPS"></a><span class="term"><code class="literal">G_REGEX_MULTILINE</code></span></p></td>
539
+ <td>By default, GRegex treats the strings as consisting
540
+ of a single line of characters (even if it actually contains newlines).
541
+ The "start of line" metacharacter ("^") matches only at the start of the
542
+ string, while the "end of line" metacharacter ("$") matches only at the
543
+ end of the string, or before a terminating newline (unless
544
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-DOLLAR-ENDONLY:CAPS"><span class="type">G_REGEX_DOLLAR_ENDONLY</span></a> is set). When <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MULTILINE:CAPS"><span class="type">G_REGEX_MULTILINE</span></a> is set,
545
+ the "start of line" and "end of line" constructs match immediately following
546
+ or immediately before any newline in the string, respectively, as well
547
+ as at the very start and end. This can be changed within a pattern by a
548
+ "(?m)" option setting.
549
+ </td>
550
+ </tr>
551
+ <tr>
552
+ <td><p><a name="G-REGEX-DOTALL:CAPS"></a><span class="term"><code class="literal">G_REGEX_DOTALL</code></span></p></td>
553
+ <td>A dot metacharater (".") in the pattern matches all
554
+ characters, including newlines. Without it, newlines are excluded. This
555
+ option can be changed within a pattern by a ("?s") option setting.
556
+ </td>
557
+ </tr>
558
+ <tr>
559
+ <td><p><a name="G-REGEX-EXTENDED:CAPS"></a><span class="term"><code class="literal">G_REGEX_EXTENDED</code></span></p></td>
560
+ <td>Whitespace data characters in the pattern are
561
+ totally ignored except when escaped or inside a character class.
562
+ Whitespace does not include the VT character (code 11). In addition,
563
+ characters between an unescaped "#" outside a character class and
564
+ the next newline character, inclusive, are also ignored. This can be
565
+ changed within a pattern by a "(?x)" option setting.
566
+ </td>
567
+ </tr>
568
+ <tr>
569
+ <td><p><a name="G-REGEX-ANCHORED:CAPS"></a><span class="term"><code class="literal">G_REGEX_ANCHORED</code></span></p></td>
570
+ <td>The pattern is forced to be "anchored", that is,
571
+ it is constrained to match only at the first matching point in the string
572
+ that is being searched. This effect can also be achieved by appropriate
573
+ constructs in the pattern itself such as the "^" metacharater.
574
+ </td>
575
+ </tr>
576
+ <tr>
577
+ <td><p><a name="G-REGEX-DOLLAR-ENDONLY:CAPS"></a><span class="term"><code class="literal">G_REGEX_DOLLAR_ENDONLY</code></span></p></td>
578
+ <td>A dollar metacharacter ("$") in the pattern
579
+ matches only at the end of the string. Without this option, a dollar also
580
+ matches immediately before the final character if it is a newline (but
581
+ not before any other newlines). This option is ignored if
582
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MULTILINE:CAPS"><span class="type">G_REGEX_MULTILINE</span></a> is set.
583
+ </td>
584
+ </tr>
585
+ <tr>
586
+ <td><p><a name="G-REGEX-UNGREEDY:CAPS"></a><span class="term"><code class="literal">G_REGEX_UNGREEDY</code></span></p></td>
587
+ <td>Inverts the "greediness" of the
588
+ quantifiers so that they are not greedy by default, but become greedy
589
+ if followed by "?". It can also be set by a "(?U)" option setting within
590
+ the pattern.
591
+ </td>
592
+ </tr>
593
+ <tr>
594
+ <td><p><a name="G-REGEX-RAW:CAPS"></a><span class="term"><code class="literal">G_REGEX_RAW</code></span></p></td>
595
+ <td>Usually strings must be valid UTF-8 strings, using this
596
+ flag they are considered as a raw sequence of bytes.
597
+ </td>
598
+ </tr>
599
+ <tr>
600
+ <td><p><a name="G-REGEX-NO-AUTO-CAPTURE:CAPS"></a><span class="term"><code class="literal">G_REGEX_NO_AUTO_CAPTURE</code></span></p></td>
601
+ <td>Disables the use of numbered capturing
602
+ parentheses in the pattern. Any opening parenthesis that is not followed
603
+ by "?" behaves as if it were followed by "?:" but named parentheses can
604
+ still be used for capturing (and they acquire numbers in the usual way).
605
+ </td>
606
+ </tr>
607
+ <tr>
608
+ <td><p><a name="G-REGEX-OPTIMIZE:CAPS"></a><span class="term"><code class="literal">G_REGEX_OPTIMIZE</code></span></p></td>
609
+ <td>Optimize the regular expression. If the pattern will
610
+ be used many times, then it may be worth the effort to optimize it to
611
+ improve the speed of matches.
612
+ </td>
613
+ </tr>
614
+ <tr>
615
+ <td><p><a name="G-REGEX-DUPNAMES:CAPS"></a><span class="term"><code class="literal">G_REGEX_DUPNAMES</code></span></p></td>
616
+ <td>Names used to identify capturing subpatterns need not
617
+ be unique. This can be helpful for certain types of pattern when it is known
618
+ that only one instance of the named subpattern can ever be matched.
619
+ </td>
620
+ </tr>
621
+ <tr>
622
+ <td><p><a name="G-REGEX-NEWLINE-CR:CAPS"></a><span class="term"><code class="literal">G_REGEX_NEWLINE_CR</code></span></p></td>
623
+ <td>Usually any newline character is recognized, if this
624
+ option is set, the only recognized newline character is '\r'.
625
+ </td>
626
+ </tr>
627
+ <tr>
628
+ <td><p><a name="G-REGEX-NEWLINE-LF:CAPS"></a><span class="term"><code class="literal">G_REGEX_NEWLINE_LF</code></span></p></td>
629
+ <td>Usually any newline character is recognized, if this
630
+ option is set, the only recognized newline character is '\n'.
631
+ </td>
632
+ </tr>
633
+ <tr>
634
+ <td><p><a name="G-REGEX-NEWLINE-CRLF:CAPS"></a><span class="term"><code class="literal">G_REGEX_NEWLINE_CRLF</code></span></p></td>
635
+ <td>Usually any newline character is recognized, if this
636
+ option is set, the only recognized newline character sequence is '\r\n'.
637
+ </td>
638
+ </tr>
639
+ </tbody>
640
+ </table></div>
641
+ <p class="since">Since 2.14</p>
642
+ </div>
643
+ <hr>
644
+ <div class="refsect2" title="enum GRegexMatchFlags">
645
+ <a name="GRegexMatchFlags"></a><h3>enum GRegexMatchFlags</h3>
646
+ <pre class="programlisting">typedef enum
647
+ {
648
+ G_REGEX_MATCH_ANCHORED = 1 &lt;&lt; 4,
649
+ G_REGEX_MATCH_NOTBOL = 1 &lt;&lt; 7,
650
+ G_REGEX_MATCH_NOTEOL = 1 &lt;&lt; 8,
651
+ G_REGEX_MATCH_NOTEMPTY = 1 &lt;&lt; 10,
652
+ G_REGEX_MATCH_PARTIAL = 1 &lt;&lt; 15,
653
+ G_REGEX_MATCH_NEWLINE_CR = 1 &lt;&lt; 20,
654
+ G_REGEX_MATCH_NEWLINE_LF = 1 &lt;&lt; 21,
655
+ G_REGEX_MATCH_NEWLINE_CRLF = G_REGEX_MATCH_NEWLINE_CR | G_REGEX_MATCH_NEWLINE_LF,
656
+ G_REGEX_MATCH_NEWLINE_ANY = 1 &lt;&lt; 22
657
+ } GRegexMatchFlags;
658
+ </pre>
659
+ <p>
660
+ Flags specifying match-time options.
661
+ </p>
662
+ <div class="variablelist"><table border="0">
663
+ <col align="left" valign="top">
664
+ <tbody>
665
+ <tr>
666
+ <td><p><a name="G-REGEX-MATCH-ANCHORED:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_ANCHORED</code></span></p></td>
667
+ <td>The pattern is forced to be "anchored", that is,
668
+ it is constrained to match only at the first matching point in the string
669
+ that is being searched. This effect can also be achieved by appropriate
670
+ constructs in the pattern itself such as the "^" metacharater.
671
+ </td>
672
+ </tr>
673
+ <tr>
674
+ <td><p><a name="G-REGEX-MATCH-NOTBOL:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NOTBOL</code></span></p></td>
675
+ <td>Specifies that first character of the string is
676
+ not the beginning of a line, so the circumflex metacharacter should not
677
+ match before it. Setting this without G_REGEX_MULTILINE (at compile time)
678
+ causes circumflex never to match. This option affects only the behaviour of
679
+ the circumflex metacharacter, it does not affect "\A".
680
+ </td>
681
+ </tr>
682
+ <tr>
683
+ <td><p><a name="G-REGEX-MATCH-NOTEOL:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NOTEOL</code></span></p></td>
684
+ <td>Specifies that the end of the subject string is
685
+ not the end of a line, so the dollar metacharacter should not match it nor
686
+ (except in multiline mode) a newline immediately before it. Setting this
687
+ without G_REGEX_MULTILINE (at compile time) causes dollar never to match.
688
+ This option affects only the behaviour of the dollar metacharacter, it does
689
+ not affect "\Z" or "\z".
690
+ </td>
691
+ </tr>
692
+ <tr>
693
+ <td><p><a name="G-REGEX-MATCH-NOTEMPTY:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NOTEMPTY</code></span></p></td>
694
+ <td>An empty string is not considered to be a valid
695
+ match if this option is set. If there are alternatives in the pattern, they
696
+ are tried. If all the alternatives match the empty string, the entire match
697
+ fails. For example, if the pattern "a?b?" is applied to a string not beginning
698
+ with "a" or "b", it matches the empty string at the start of the string.
699
+ With this flag set, this match is not valid, so GRegex searches further
700
+ into the string for occurrences of "a" or "b".
701
+ </td>
702
+ </tr>
703
+ <tr>
704
+ <td><p><a name="G-REGEX-MATCH-PARTIAL:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_PARTIAL</code></span></p></td>
705
+ <td>Turns on the partial matching feature, for more
706
+ documentation on partial matching see <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-is-partial-match" title="g_match_info_is_partial_match ()"><code class="function">g_match_info_is_partial_match()</code></a>.
707
+ </td>
708
+ </tr>
709
+ <tr>
710
+ <td><p><a name="G-REGEX-MATCH-NEWLINE-CR:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NEWLINE_CR</code></span></p></td>
711
+ <td>Overrides the newline definition set when creating
712
+ a new <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>, setting the '\r' character as line terminator.
713
+ </td>
714
+ </tr>
715
+ <tr>
716
+ <td><p><a name="G-REGEX-MATCH-NEWLINE-LF:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NEWLINE_LF</code></span></p></td>
717
+ <td>Overrides the newline definition set when creating
718
+ a new <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>, setting the '\n' character as line terminator.
719
+ </td>
720
+ </tr>
721
+ <tr>
722
+ <td><p><a name="G-REGEX-MATCH-NEWLINE-CRLF:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NEWLINE_CRLF</code></span></p></td>
723
+ <td>Overrides the newline definition set when creating
724
+ a new <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>, setting the '\r\n' characters as line terminator.
725
+ </td>
726
+ </tr>
727
+ <tr>
728
+ <td><p><a name="G-REGEX-MATCH-NEWLINE-ANY:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_NEWLINE_ANY</code></span></p></td>
729
+ <td>Overrides the newline definition set when creating
730
+ a new <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>, any newline character or character sequence is recognized.
731
+ </td>
732
+ </tr>
733
+ </tbody>
734
+ </table></div>
735
+ <p class="since">Since 2.14</p>
736
+ </div>
737
+ <hr>
738
+ <div class="refsect2" title="GRegex">
739
+ <a name="GRegex"></a><h3>GRegex</h3>
740
+ <pre class="programlisting">typedef struct _GRegex GRegex;</pre>
741
+ <p>
742
+ A GRegex is the "compiled" form of a regular expression pattern. This
743
+ structure is opaque and its fields cannot be accessed directly.
744
+ </p>
745
+ <p class="since">Since 2.14</p>
746
+ </div>
747
+ <hr>
748
+ <div class="refsect2" title="GRegexEvalCallback ()">
749
+ <a name="GRegexEvalCallback"></a><h3>GRegexEvalCallback ()</h3>
750
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> (*GRegexEvalCallback) (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
751
+ <em class="parameter"><code><a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> *result</code></em>,
752
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
753
+ <p>
754
+ Specifies the type of the function passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval" title="g_regex_replace_eval ()"><code class="function">g_regex_replace_eval()</code></a>.
755
+ It is called for each occurance of the pattern in the string passed
756
+ to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval" title="g_regex_replace_eval ()"><code class="function">g_regex_replace_eval()</code></a>, and it should append the replacement to
757
+ <em class="parameter"><code>result</code></em>.
758
+ </p>
759
+ <div class="variablelist"><table border="0">
760
+ <col align="left" valign="top">
761
+ <tbody>
762
+ <tr>
763
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
764
+ <td>the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> generated by the match.
765
+ Use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-get-regex" title="g_match_info_get_regex ()"><code class="function">g_match_info_get_regex()</code></a> and <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-get-string" title="g_match_info_get_string ()"><code class="function">g_match_info_get_string()</code></a> if you
766
+ need the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> or the matched string.
767
+ </td>
768
+ </tr>
769
+ <tr>
770
+ <td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
771
+ <td>a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> containing the new string
772
+ </td>
773
+ </tr>
774
+ <tr>
775
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
776
+ <td>user data passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval" title="g_regex_replace_eval ()"><code class="function">g_regex_replace_eval()</code></a>
777
+ </td>
778
+ </tr>
779
+ <tr>
780
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
781
+ <td>
782
+ <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> to continue the replacement process, <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> to stop it
783
+ </td>
784
+ </tr>
785
+ </tbody>
786
+ </table></div>
787
+ <p class="since">Since 2.14</p>
788
+ </div>
789
+ <hr>
790
+ <div class="refsect2" title="g_regex_new ()">
791
+ <a name="g-regex-new"></a><h3>g_regex_new ()</h3>
792
+ <pre class="programlisting"><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="returnvalue">GRegex</span></a> * g_regex_new (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pattern</code></em>,
793
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags"><span class="type">GRegexCompileFlags</span></a> compile_options</code></em>,
794
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
795
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
796
+ <p>
797
+ Compiles the regular expression to an internal form, and does
798
+ the initial setup of the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure.
799
+ </p>
800
+ <div class="variablelist"><table border="0">
801
+ <col align="left" valign="top">
802
+ <tbody>
803
+ <tr>
804
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
805
+ <td>the regular expression
806
+ </td>
807
+ </tr>
808
+ <tr>
809
+ <td><p><span class="term"><em class="parameter"><code>compile_options</code></em> :</span></p></td>
810
+ <td>compile options for the regular expression, or 0
811
+ </td>
812
+ </tr>
813
+ <tr>
814
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
815
+ <td>match options for the regular expression, or 0
816
+ </td>
817
+ </tr>
818
+ <tr>
819
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
820
+ <td>return location for a <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a>
821
+ </td>
822
+ </tr>
823
+ <tr>
824
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
825
+ <td> a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure. Call <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-unref" title="g_regex_unref ()"><code class="function">g_regex_unref()</code></a> when you
826
+ are done with it
827
+
828
+ </td>
829
+ </tr>
830
+ </tbody>
831
+ </table></div>
832
+ <p class="since">Since 2.14</p>
833
+ </div>
834
+ <hr>
835
+ <div class="refsect2" title="g_regex_ref ()">
836
+ <a name="g-regex-ref"></a><h3>g_regex_ref ()</h3>
837
+ <pre class="programlisting"><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="returnvalue">GRegex</span></a> * g_regex_ref (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);</pre>
838
+ <p>
839
+ Increases reference count of <em class="parameter"><code>regex</code></em> by 1.
840
+ </p>
841
+ <div class="variablelist"><table border="0">
842
+ <col align="left" valign="top">
843
+ <tbody>
844
+ <tr>
845
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
846
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>
847
+ </td>
848
+ </tr>
849
+ <tr>
850
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
851
+ <td> <em class="parameter"><code>regex</code></em>
852
+
853
+ </td>
854
+ </tr>
855
+ </tbody>
856
+ </table></div>
857
+ <p class="since">Since 2.14</p>
858
+ </div>
859
+ <hr>
860
+ <div class="refsect2" title="g_regex_unref ()">
861
+ <a name="g-regex-unref"></a><h3>g_regex_unref ()</h3>
862
+ <pre class="programlisting"><span class="returnvalue">void</span> g_regex_unref (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);</pre>
863
+ <p>
864
+ Decreases reference count of <em class="parameter"><code>regex</code></em> by 1. When reference count drops
865
+ to zero, it frees all the memory associated with the regex structure.
866
+ </p>
867
+ <div class="variablelist"><table border="0">
868
+ <col align="left" valign="top">
869
+ <tbody><tr>
870
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
871
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>
872
+ </td>
873
+ </tr></tbody>
874
+ </table></div>
875
+ <p class="since">Since 2.14</p>
876
+ </div>
877
+ <hr>
878
+ <div class="refsect2" title="g_regex_get_pattern ()">
879
+ <a name="g-regex-get-pattern"></a><h3>g_regex_get_pattern ()</h3>
880
+ <pre class="programlisting">const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_regex_get_pattern (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);</pre>
881
+ <p>
882
+ Gets the pattern string associated with <em class="parameter"><code>regex</code></em>, i.e. a copy of
883
+ the string passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>.
884
+ </p>
885
+ <div class="variablelist"><table border="0">
886
+ <col align="left" valign="top">
887
+ <tbody>
888
+ <tr>
889
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
890
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure
891
+ </td>
892
+ </tr>
893
+ <tr>
894
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
895
+ <td> the pattern of <em class="parameter"><code>regex</code></em>
896
+
897
+ </td>
898
+ </tr>
899
+ </tbody>
900
+ </table></div>
901
+ <p class="since">Since 2.14</p>
902
+ </div>
903
+ <hr>
904
+ <div class="refsect2" title="g_regex_get_max_backref ()">
905
+ <a name="g-regex-get-max-backref"></a><h3>g_regex_get_max_backref ()</h3>
906
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_regex_get_max_backref (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);</pre>
907
+ <p>
908
+ Returns the number of the highest back reference
909
+ in the pattern, or 0 if the pattern does not contain
910
+ back references.
911
+ </p>
912
+ <div class="variablelist"><table border="0">
913
+ <col align="left" valign="top">
914
+ <tbody>
915
+ <tr>
916
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
917
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>
918
+ </td>
919
+ </tr>
920
+ <tr>
921
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
922
+ <td> the number of the highest back reference
923
+
924
+ </td>
925
+ </tr>
926
+ </tbody>
927
+ </table></div>
928
+ <p class="since">Since 2.14</p>
929
+ </div>
930
+ <hr>
931
+ <div class="refsect2" title="g_regex_get_capture_count ()">
932
+ <a name="g-regex-get-capture-count"></a><h3>g_regex_get_capture_count ()</h3>
933
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_regex_get_capture_count (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>);</pre>
934
+ <p>
935
+ Returns the number of capturing subpatterns in the pattern.
936
+ </p>
937
+ <div class="variablelist"><table border="0">
938
+ <col align="left" valign="top">
939
+ <tbody>
940
+ <tr>
941
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
942
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>
943
+ </td>
944
+ </tr>
945
+ <tr>
946
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
947
+ <td> the number of capturing subpatterns
948
+
949
+ </td>
950
+ </tr>
951
+ </tbody>
952
+ </table></div>
953
+ <p class="since">Since 2.14</p>
954
+ </div>
955
+ <hr>
956
+ <div class="refsect2" title="g_regex_get_string_number ()">
957
+ <a name="g-regex-get-string-number"></a><h3>g_regex_get_string_number ()</h3>
958
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_regex_get_string_number (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
959
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
960
+ <p>
961
+ Retrieves the number of the subexpression named <em class="parameter"><code>name</code></em>.
962
+ </p>
963
+ <div class="variablelist"><table border="0">
964
+ <col align="left" valign="top">
965
+ <tbody>
966
+ <tr>
967
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
968
+ <td>
969
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure
970
+ </td>
971
+ </tr>
972
+ <tr>
973
+ <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
974
+ <td>name of the subexpression
975
+ </td>
976
+ </tr>
977
+ <tr>
978
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
979
+ <td> The number of the subexpression or -1 if <em class="parameter"><code>name</code></em>
980
+ does not exists
981
+
982
+ </td>
983
+ </tr>
984
+ </tbody>
985
+ </table></div>
986
+ <p class="since">Since 2.14</p>
987
+ </div>
988
+ <hr>
989
+ <div class="refsect2" title="g_regex_escape_string ()">
990
+ <a name="g-regex-escape-string"></a><h3>g_regex_escape_string ()</h3>
991
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_regex_escape_string (<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>,
992
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> length</code></em>);</pre>
993
+ <p>
994
+ Escapes the special characters used for regular expressions
995
+ in <em class="parameter"><code>string</code></em>, for instance "a.b*c" becomes "a\.b\*c". This
996
+ function is useful to dynamically generate regular expressions.
997
+ </p>
998
+ <p>
999
+ <em class="parameter"><code>string</code></em> can contain nul characters that are replaced with "\0",
1000
+ in this case remember to specify the correct length of <em class="parameter"><code>string</code></em>
1001
+ in <em class="parameter"><code>length</code></em>.
1002
+ </p>
1003
+ <div class="variablelist"><table border="0">
1004
+ <col align="left" valign="top">
1005
+ <tbody>
1006
+ <tr>
1007
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1008
+ <td>the string to escape
1009
+ </td>
1010
+ </tr>
1011
+ <tr>
1012
+ <td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
1013
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
1014
+ </td>
1015
+ </tr>
1016
+ <tr>
1017
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1018
+ <td> a newly-allocated escaped string
1019
+
1020
+ </td>
1021
+ </tr>
1022
+ </tbody>
1023
+ </table></div>
1024
+ <p class="since">Since 2.14</p>
1025
+ </div>
1026
+ <hr>
1027
+ <div class="refsect2" title="g_regex_match_simple ()">
1028
+ <a name="g-regex-match-simple"></a><h3>g_regex_match_simple ()</h3>
1029
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_regex_match_simple (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pattern</code></em>,
1030
+ <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>,
1031
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags"><span class="type">GRegexCompileFlags</span></a> compile_options</code></em>,
1032
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>);</pre>
1033
+ <p>
1034
+ Scans for a match in <em class="parameter"><code>string</code></em> for <em class="parameter"><code>pattern</code></em>.
1035
+ </p>
1036
+ <p>
1037
+ This function is equivalent to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a> but it does not
1038
+ require to compile the pattern with <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>, avoiding some
1039
+ lines of code when you need just to do a match without extracting
1040
+ substrings, capture counts, and so on.
1041
+ </p>
1042
+ <p>
1043
+ If this function is to be called on the same <em class="parameter"><code>pattern</code></em> more than
1044
+ once, it's more efficient to compile the pattern once with
1045
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a> and then use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a>.
1046
+ </p>
1047
+ <div class="variablelist"><table border="0">
1048
+ <col align="left" valign="top">
1049
+ <tbody>
1050
+ <tr>
1051
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1052
+ <td>the regular expression
1053
+ </td>
1054
+ </tr>
1055
+ <tr>
1056
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1057
+ <td>the string to scan for matches
1058
+ </td>
1059
+ </tr>
1060
+ <tr>
1061
+ <td><p><span class="term"><em class="parameter"><code>compile_options</code></em> :</span></p></td>
1062
+ <td>compile options for the regular expression, or 0
1063
+ </td>
1064
+ </tr>
1065
+ <tr>
1066
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1067
+ <td>match options, or 0
1068
+ </td>
1069
+ </tr>
1070
+ <tr>
1071
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1072
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the string matched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
1073
+
1074
+ </td>
1075
+ </tr>
1076
+ </tbody>
1077
+ </table></div>
1078
+ <p class="since">Since 2.14</p>
1079
+ </div>
1080
+ <hr>
1081
+ <div class="refsect2" title="g_regex_match ()">
1082
+ <a name="g-regex-match"></a><h3>g_regex_match ()</h3>
1083
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_regex_match (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1084
+ <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>,
1085
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1086
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>);</pre>
1087
+ <p>
1088
+ Scans for a match in string for the pattern in <em class="parameter"><code>regex</code></em>.
1089
+ The <em class="parameter"><code>match_options</code></em> are combined with the match options specified
1090
+ when the <em class="parameter"><code>regex</code></em> structure was created, letting you have more
1091
+ flexibility in reusing <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structures.
1092
+ </p>
1093
+ <p>
1094
+ A <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure, used to get information on the match,
1095
+ is stored in <em class="parameter"><code>match_info</code></em> if not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. Note that if <em class="parameter"><code>match_info</code></em>
1096
+ is not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> then it is created even if the function returns <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a>,
1097
+ i.e. you must free it regardless if regular expression actually matched.
1098
+ </p>
1099
+ <p>
1100
+ To retrieve all the non-overlapping matches of the pattern in
1101
+ string you can use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-next" title="g_match_info_next ()"><code class="function">g_match_info_next()</code></a>.
1102
+ </p>
1103
+ <p>
1104
+ </p>
1105
+ <div class="informalexample">
1106
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
1107
+ <tbody>
1108
+ <tr>
1109
+ <td class="listing_lines" align="right"><pre>1
1110
+ 2
1111
+ 3
1112
+ 4
1113
+ 5
1114
+ 6
1115
+ 7
1116
+ 8
1117
+ 9
1118
+ 10
1119
+ 11
1120
+ 12
1121
+ 13
1122
+ 14
1123
+ 15
1124
+ 16
1125
+ 17
1126
+ 18
1127
+ 19</pre></td>
1128
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
1129
+ <span class="function">print_uppercase_words</span><span class="normal"> </span><span class="symbol">(</span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">string</span><span class="symbol">)</span>
1130
+ <span class="cbracket">{</span>
1131
+ <span class="normal"> </span><span class="comment">/* Print all uppercase-only words. */</span>
1132
+ <span class="normal"> </span><span class="usertype">GRegex</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">regex</span><span class="symbol">;</span>
1133
+ <span class="normal"> </span><span class="usertype">GMatchInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">match_info</span><span class="symbol">;</span>
1134
+ <span class="normal">  </span>
1135
+ <span class="normal"> regex </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"[A-Z]+"</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1136
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-match">g_regex_match</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">,</span><span class="normal"> string</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">match_info</span><span class="symbol">);</span>
1137
+ <span class="normal"> </span><span class="keyword">while</span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches">g_match_info_matches</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">))</span>
1138
+ <span class="normal"> </span><span class="cbracket">{</span>
1139
+ <span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">word </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">);</span>
1140
+ <span class="normal"> </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Found: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> word</span><span class="symbol">);</span>
1141
+ <span class="normal"> </span><span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">word</span><span class="symbol">);</span>
1142
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-next">g_match_info_next</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1143
+ <span class="normal"> </span><span class="cbracket">}</span>
1144
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-free">g_match_info_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">);</span>
1145
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-unref">g_regex_unref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">);</span>
1146
+ <span class="cbracket">}</span></pre></td>
1147
+ </tr>
1148
+ </tbody>
1149
+ </table>
1150
+ </div>
1151
+
1152
+ <p>
1153
+ </p>
1154
+ <p>
1155
+ <em class="parameter"><code>string</code></em> is not copied and is used in <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> internally. If
1156
+ you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1157
+ freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1158
+ </p>
1159
+ <div class="variablelist"><table border="0">
1160
+ <col align="left" valign="top">
1161
+ <tbody>
1162
+ <tr>
1163
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1164
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure from <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>
1165
+ </td>
1166
+ </tr>
1167
+ <tr>
1168
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1169
+ <td>the string to scan for matches
1170
+ </td>
1171
+ </tr>
1172
+ <tr>
1173
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1174
+ <td>match options
1175
+ </td>
1176
+ </tr>
1177
+ <tr>
1178
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
1179
+ <td>pointer to location where to store the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>,
1180
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if you do not need it
1181
+ </td>
1182
+ </tr>
1183
+ <tr>
1184
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1185
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is the string matched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
1186
+
1187
+ </td>
1188
+ </tr>
1189
+ </tbody>
1190
+ </table></div>
1191
+ <p class="since">Since 2.14</p>
1192
+ </div>
1193
+ <hr>
1194
+ <div class="refsect2" title="g_regex_match_full ()">
1195
+ <a name="g-regex-match-full"></a><h3>g_regex_match_full ()</h3>
1196
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_regex_match_full (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1197
+ <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>,
1198
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
1199
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
1200
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1201
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>,
1202
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1203
+ <p>
1204
+ Scans for a match in string for the pattern in <em class="parameter"><code>regex</code></em>.
1205
+ The <em class="parameter"><code>match_options</code></em> are combined with the match options specified
1206
+ when the <em class="parameter"><code>regex</code></em> structure was created, letting you have more
1207
+ flexibility in reusing <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structures.
1208
+ </p>
1209
+ <p>
1210
+ Setting <em class="parameter"><code>start_position</code></em> differs from just passing over a shortened
1211
+ string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern
1212
+ that begins with any kind of lookbehind assertion, such as "\b".
1213
+ </p>
1214
+ <p>
1215
+ A <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure, used to get information on the match, is
1216
+ stored in <em class="parameter"><code>match_info</code></em> if not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. Note that if <em class="parameter"><code>match_info</code></em> is
1217
+ not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> then it is created even if the function returns <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a>,
1218
+ i.e. you must free it regardless if regular expression actually
1219
+ matched.
1220
+ </p>
1221
+ <p>
1222
+ <em class="parameter"><code>string</code></em> is not copied and is used in <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> internally. If
1223
+ you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1224
+ freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1225
+ </p>
1226
+ <p>
1227
+ To retrieve all the non-overlapping matches of the pattern in
1228
+ string you can use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-next" title="g_match_info_next ()"><code class="function">g_match_info_next()</code></a>.
1229
+ </p>
1230
+ <p>
1231
+ </p>
1232
+ <div class="informalexample">
1233
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
1234
+ <tbody>
1235
+ <tr>
1236
+ <td class="listing_lines" align="right"><pre>1
1237
+ 2
1238
+ 3
1239
+ 4
1240
+ 5
1241
+ 6
1242
+ 7
1243
+ 8
1244
+ 9
1245
+ 10
1246
+ 11
1247
+ 12
1248
+ 13
1249
+ 14
1250
+ 15
1251
+ 16
1252
+ 17
1253
+ 18
1254
+ 19
1255
+ 20
1256
+ 21
1257
+ 22
1258
+ 23
1259
+ 24
1260
+ 25</pre></td>
1261
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
1262
+ <span class="function">print_uppercase_words</span><span class="normal"> </span><span class="symbol">(</span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">string</span><span class="symbol">)</span>
1263
+ <span class="cbracket">{</span>
1264
+ <span class="normal"> </span><span class="comment">/* Print all uppercase-only words. */</span>
1265
+ <span class="normal"> </span><span class="usertype">GRegex</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">regex</span><span class="symbol">;</span>
1266
+ <span class="normal"> </span><span class="usertype">GMatchInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">match_info</span><span class="symbol">;</span>
1267
+ <span class="normal"> </span><span class="usertype">GError</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">error </span><span class="symbol">=</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">;</span>
1268
+ <span class="normal">  </span>
1269
+ <span class="normal"> regex </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"[A-Z]+"</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1270
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-match-full">g_regex_match_full</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">,</span><span class="normal"> string</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">-</span><span class="number">1</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">error</span><span class="symbol">);</span>
1271
+ <span class="normal"> </span><span class="keyword">while</span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches">g_match_info_matches</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">))</span>
1272
+ <span class="normal"> </span><span class="cbracket">{</span>
1273
+ <span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">word </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">);</span>
1274
+ <span class="normal"> </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Found: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> word</span><span class="symbol">);</span>
1275
+ <span class="normal"> </span><span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">word</span><span class="symbol">);</span>
1276
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-next">g_match_info_next</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">error</span><span class="symbol">);</span>
1277
+ <span class="normal"> </span><span class="cbracket">}</span>
1278
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-free">g_match_info_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">);</span>
1279
+ <span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-unref">g_regex_unref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">);</span>
1280
+ <span class="normal"> </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">error </span><span class="symbol">!=</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">)</span>
1281
+ <span class="normal"> </span><span class="cbracket">{</span>
1282
+ <span class="normal"> </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Error while matching: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> error</span><span class="symbol">-&gt;</span><span class="normal">message</span><span class="symbol">);</span>
1283
+ <span class="normal"> </span><span class="function"><a href="glib-Error-Reporting.html#g-error-free">g_error_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">error</span><span class="symbol">);</span>
1284
+ <span class="normal"> </span><span class="cbracket">}</span>
1285
+ <span class="cbracket">}</span></pre></td>
1286
+ </tr>
1287
+ </tbody>
1288
+ </table>
1289
+ </div>
1290
+
1291
+ <p>
1292
+ </p>
1293
+ <div class="variablelist"><table border="0">
1294
+ <col align="left" valign="top">
1295
+ <tbody>
1296
+ <tr>
1297
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1298
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure from <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>
1299
+ </td>
1300
+ </tr>
1301
+ <tr>
1302
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1303
+ <td>the string to scan for matches
1304
+ </td>
1305
+ </tr>
1306
+ <tr>
1307
+ <td><p><span class="term"><em class="parameter"><code>string_len</code></em> :</span></p></td>
1308
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
1309
+ </td>
1310
+ </tr>
1311
+ <tr>
1312
+ <td><p><span class="term"><em class="parameter"><code>start_position</code></em> :</span></p></td>
1313
+ <td>starting index of the string to match
1314
+ </td>
1315
+ </tr>
1316
+ <tr>
1317
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1318
+ <td>match options
1319
+ </td>
1320
+ </tr>
1321
+ <tr>
1322
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
1323
+ <td>pointer to location where to store the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>,
1324
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if you do not need it
1325
+ </td>
1326
+ </tr>
1327
+ <tr>
1328
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1329
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
1330
+ </td>
1331
+ </tr>
1332
+ <tr>
1333
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1334
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is the string matched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
1335
+
1336
+ </td>
1337
+ </tr>
1338
+ </tbody>
1339
+ </table></div>
1340
+ <p class="since">Since 2.14</p>
1341
+ </div>
1342
+ <hr>
1343
+ <div class="refsect2" title="g_regex_match_all ()">
1344
+ <a name="g-regex-match-all"></a><h3>g_regex_match_all ()</h3>
1345
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_regex_match_all (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1346
+ <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>,
1347
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1348
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>);</pre>
1349
+ <p>
1350
+ Using the standard algorithm for regular expression matching only
1351
+ the longest match in the string is retrieved. This function uses
1352
+ a different algorithm so it can retrieve all the possible matches.
1353
+ For more documentation see <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all-full" title="g_regex_match_all_full ()"><code class="function">g_regex_match_all_full()</code></a>.
1354
+ </p>
1355
+ <p>
1356
+ A <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure, used to get information on the match, is
1357
+ stored in <em class="parameter"><code>match_info</code></em> if not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. Note that if <em class="parameter"><code>match_info</code></em> is
1358
+ not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> then it is created even if the function returns <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a>,
1359
+ i.e. you must free it regardless if regular expression actually
1360
+ matched.
1361
+ </p>
1362
+ <p>
1363
+ <em class="parameter"><code>string</code></em> is not copied and is used in <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> internally. If
1364
+ you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1365
+ freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1366
+ </p>
1367
+ <div class="variablelist"><table border="0">
1368
+ <col align="left" valign="top">
1369
+ <tbody>
1370
+ <tr>
1371
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1372
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure from <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>
1373
+ </td>
1374
+ </tr>
1375
+ <tr>
1376
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1377
+ <td>the string to scan for matches
1378
+ </td>
1379
+ </tr>
1380
+ <tr>
1381
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1382
+ <td>match options
1383
+ </td>
1384
+ </tr>
1385
+ <tr>
1386
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
1387
+ <td>pointer to location where to store the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>,
1388
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if you do not need it
1389
+ </td>
1390
+ </tr>
1391
+ <tr>
1392
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1393
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is the string matched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
1394
+
1395
+ </td>
1396
+ </tr>
1397
+ </tbody>
1398
+ </table></div>
1399
+ <p class="since">Since 2.14</p>
1400
+ </div>
1401
+ <hr>
1402
+ <div class="refsect2" title="g_regex_match_all_full ()">
1403
+ <a name="g-regex-match-all-full"></a><h3>g_regex_match_all_full ()</h3>
1404
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_regex_match_all_full (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1405
+ <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>,
1406
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
1407
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
1408
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1409
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> **match_info</code></em>,
1410
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1411
+ <p>
1412
+ Using the standard algorithm for regular expression matching only
1413
+ the longest match in the string is retrieved, it is not possibile
1414
+ to obtain all the available matches. For instance matching
1415
+ "&lt;a&gt; &lt;b&gt; &lt;c&gt;" against the pattern "&lt;.*&gt;"
1416
+ you get "&lt;a&gt; &lt;b&gt; &lt;c&gt;".
1417
+ </p>
1418
+ <p>
1419
+ This function uses a different algorithm (called DFA, i.e. deterministic
1420
+ finite automaton), so it can retrieve all the possible matches, all
1421
+ starting at the same point in the string. For instance matching
1422
+ "&lt;a&gt; &lt;b&gt; &lt;c&gt;" against the pattern "&lt;.*&gt;"
1423
+ you would obtain three matches: "&lt;a&gt; &lt;b&gt; &lt;c&gt;",
1424
+ "&lt;a&gt; &lt;b&gt;" and "&lt;a&gt;".
1425
+ </p>
1426
+ <p>
1427
+ The number of matched strings is retrieved using
1428
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-get-match-count" title="g_match_info_get_match_count ()"><code class="function">g_match_info_get_match_count()</code></a>. To obtain the matched strings and
1429
+ their position you can use, respectively, <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch" title="g_match_info_fetch ()"><code class="function">g_match_info_fetch()</code></a> and
1430
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch-pos" title="g_match_info_fetch_pos ()"><code class="function">g_match_info_fetch_pos()</code></a>. Note that the strings are returned in
1431
+ reverse order of length; that is, the longest matching string is
1432
+ given first.
1433
+ </p>
1434
+ <p>
1435
+ Note that the DFA algorithm is slower than the standard one and it
1436
+ is not able to capture substrings, so backreferences do not work.
1437
+ </p>
1438
+ <p>
1439
+ Setting <em class="parameter"><code>start_position</code></em> differs from just passing over a shortened
1440
+ string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern
1441
+ that begins with any kind of lookbehind assertion, such as "\b".
1442
+ </p>
1443
+ <p>
1444
+ A <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure, used to get information on the match, is
1445
+ stored in <em class="parameter"><code>match_info</code></em> if not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. Note that if <em class="parameter"><code>match_info</code></em> is
1446
+ not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> then it is created even if the function returns <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a>,
1447
+ i.e. you must free it regardless if regular expression actually
1448
+ matched.
1449
+ </p>
1450
+ <p>
1451
+ <em class="parameter"><code>string</code></em> is not copied and is used in <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> internally. If
1452
+ you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1453
+ freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1454
+ </p>
1455
+ <div class="variablelist"><table border="0">
1456
+ <col align="left" valign="top">
1457
+ <tbody>
1458
+ <tr>
1459
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1460
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure from <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>
1461
+ </td>
1462
+ </tr>
1463
+ <tr>
1464
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1465
+ <td>the string to scan for matches
1466
+ </td>
1467
+ </tr>
1468
+ <tr>
1469
+ <td><p><span class="term"><em class="parameter"><code>string_len</code></em> :</span></p></td>
1470
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
1471
+ </td>
1472
+ </tr>
1473
+ <tr>
1474
+ <td><p><span class="term"><em class="parameter"><code>start_position</code></em> :</span></p></td>
1475
+ <td>starting index of the string to match
1476
+ </td>
1477
+ </tr>
1478
+ <tr>
1479
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1480
+ <td>match options
1481
+ </td>
1482
+ </tr>
1483
+ <tr>
1484
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
1485
+ <td>pointer to location where to store the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>,
1486
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if you do not need it
1487
+ </td>
1488
+ </tr>
1489
+ <tr>
1490
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1491
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
1492
+ </td>
1493
+ </tr>
1494
+ <tr>
1495
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1496
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is the string matched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
1497
+
1498
+ </td>
1499
+ </tr>
1500
+ </tbody>
1501
+ </table></div>
1502
+ <p class="since">Since 2.14</p>
1503
+ </div>
1504
+ <hr>
1505
+ <div class="refsect2" title="g_regex_split_simple ()">
1506
+ <a name="g-regex-split-simple"></a><h3>g_regex_split_simple ()</h3>
1507
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** g_regex_split_simple (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pattern</code></em>,
1508
+ <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>,
1509
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexCompileFlags" title="enum GRegexCompileFlags"><span class="type">GRegexCompileFlags</span></a> compile_options</code></em>,
1510
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>);</pre>
1511
+ <p>
1512
+ Breaks the string on the pattern, and returns an array of
1513
+ the tokens. If the pattern contains capturing parentheses,
1514
+ then the text for each of the substrings will also be returned.
1515
+ If the pattern does not match anywhere in the string, then the
1516
+ whole string is returned as the first token.
1517
+ </p>
1518
+ <p>
1519
+ This function is equivalent to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-split" title="g_regex_split ()"><code class="function">g_regex_split()</code></a> but it does
1520
+ not require to compile the pattern with <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>, avoiding
1521
+ some lines of code when you need just to do a split without
1522
+ extracting substrings, capture counts, and so on.
1523
+ </p>
1524
+ <p>
1525
+ If this function is to be called on the same <em class="parameter"><code>pattern</code></em> more than
1526
+ once, it's more efficient to compile the pattern once with
1527
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a> and then use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-split" title="g_regex_split ()"><code class="function">g_regex_split()</code></a>.
1528
+ </p>
1529
+ <p>
1530
+ As a special case, the result of splitting the empty string ""
1531
+ is an empty vector, not a vector containing a single string.
1532
+ The reason for this special case is that being able to represent
1533
+ a empty vector is typically more useful than consistent handling
1534
+ of empty elements. If you do need to represent empty elements,
1535
+ you'll need to check for the empty string before calling this
1536
+ function.
1537
+ </p>
1538
+ <p>
1539
+ A pattern that can match empty strings splits <em class="parameter"><code>string</code></em> into
1540
+ separate characters wherever it matches the empty string between
1541
+ characters. For example splitting "ab c" using as a separator
1542
+ "\s*", you will get "a", "b" and "c".
1543
+ </p>
1544
+ <div class="variablelist"><table border="0">
1545
+ <col align="left" valign="top">
1546
+ <tbody>
1547
+ <tr>
1548
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1549
+ <td>the regular expression
1550
+ </td>
1551
+ </tr>
1552
+ <tr>
1553
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1554
+ <td>the string to scan for matches
1555
+ </td>
1556
+ </tr>
1557
+ <tr>
1558
+ <td><p><span class="term"><em class="parameter"><code>compile_options</code></em> :</span></p></td>
1559
+ <td>compile options for the regular expression, or 0
1560
+ </td>
1561
+ </tr>
1562
+ <tr>
1563
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1564
+ <td>match options, or 0
1565
+ </td>
1566
+ </tr>
1567
+ <tr>
1568
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1569
+ <td> a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of strings. Free it using <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a>
1570
+
1571
+ </td>
1572
+ </tr>
1573
+ </tbody>
1574
+ </table></div>
1575
+ <p class="since">Since 2.14</p>
1576
+ </div>
1577
+ <hr>
1578
+ <div class="refsect2" title="g_regex_split ()">
1579
+ <a name="g-regex-split"></a><h3>g_regex_split ()</h3>
1580
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** g_regex_split (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1581
+ <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>,
1582
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>);</pre>
1583
+ <p>
1584
+ Breaks the string on the pattern, and returns an array of the tokens.
1585
+ If the pattern contains capturing parentheses, then the text for each
1586
+ of the substrings will also be returned. If the pattern does not match
1587
+ anywhere in the string, then the whole string is returned as the first
1588
+ token.
1589
+ </p>
1590
+ <p>
1591
+ As a special case, the result of splitting the empty string "" is an
1592
+ empty vector, not a vector containing a single string. The reason for
1593
+ this special case is that being able to represent a empty vector is
1594
+ typically more useful than consistent handling of empty elements. If
1595
+ you do need to represent empty elements, you'll need to check for the
1596
+ empty string before calling this function.
1597
+ </p>
1598
+ <p>
1599
+ A pattern that can match empty strings splits <em class="parameter"><code>string</code></em> into separate
1600
+ characters wherever it matches the empty string between characters.
1601
+ For example splitting "ab c" using as a separator "\s*", you will get
1602
+ "a", "b" and "c".
1603
+ </p>
1604
+ <div class="variablelist"><table border="0">
1605
+ <col align="left" valign="top">
1606
+ <tbody>
1607
+ <tr>
1608
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1609
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure
1610
+ </td>
1611
+ </tr>
1612
+ <tr>
1613
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1614
+ <td>the string to split with the pattern
1615
+ </td>
1616
+ </tr>
1617
+ <tr>
1618
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1619
+ <td>match time option flags
1620
+ </td>
1621
+ </tr>
1622
+ <tr>
1623
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1624
+ <td> a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated gchar ** array. Free it using <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a>
1625
+
1626
+ </td>
1627
+ </tr>
1628
+ </tbody>
1629
+ </table></div>
1630
+ <p class="since">Since 2.14</p>
1631
+ </div>
1632
+ <hr>
1633
+ <div class="refsect2" title="g_regex_split_full ()">
1634
+ <a name="g-regex-split-full"></a><h3>g_regex_split_full ()</h3>
1635
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** g_regex_split_full (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1636
+ <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>,
1637
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
1638
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
1639
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1640
+ <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>,
1641
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1642
+ <p>
1643
+ Breaks the string on the pattern, and returns an array of the tokens.
1644
+ If the pattern contains capturing parentheses, then the text for each
1645
+ of the substrings will also be returned. If the pattern does not match
1646
+ anywhere in the string, then the whole string is returned as the first
1647
+ token.
1648
+ </p>
1649
+ <p>
1650
+ As a special case, the result of splitting the empty string "" is an
1651
+ empty vector, not a vector containing a single string. The reason for
1652
+ this special case is that being able to represent a empty vector is
1653
+ typically more useful than consistent handling of empty elements. If
1654
+ you do need to represent empty elements, you'll need to check for the
1655
+ empty string before calling this function.
1656
+ </p>
1657
+ <p>
1658
+ A pattern that can match empty strings splits <em class="parameter"><code>string</code></em> into separate
1659
+ characters wherever it matches the empty string between characters.
1660
+ For example splitting "ab c" using as a separator "\s*", you will get
1661
+ "a", "b" and "c".
1662
+ </p>
1663
+ <p>
1664
+ Setting <em class="parameter"><code>start_position</code></em> differs from just passing over a shortened
1665
+ string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern
1666
+ that begins with any kind of lookbehind assertion, such as "\b".
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>regex</code></em> :</span></p></td>
1673
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure
1674
+ </td>
1675
+ </tr>
1676
+ <tr>
1677
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1678
+ <td>the string to split with the pattern
1679
+ </td>
1680
+ </tr>
1681
+ <tr>
1682
+ <td><p><span class="term"><em class="parameter"><code>string_len</code></em> :</span></p></td>
1683
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
1684
+ </td>
1685
+ </tr>
1686
+ <tr>
1687
+ <td><p><span class="term"><em class="parameter"><code>start_position</code></em> :</span></p></td>
1688
+ <td>starting index of the string to match
1689
+ </td>
1690
+ </tr>
1691
+ <tr>
1692
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1693
+ <td>match time option flags
1694
+ </td>
1695
+ </tr>
1696
+ <tr>
1697
+ <td><p><span class="term"><em class="parameter"><code>max_tokens</code></em> :</span></p></td>
1698
+ <td>the maximum number of tokens to split <em class="parameter"><code>string</code></em> into.
1699
+ If this is less than 1, the string is split completely
1700
+ </td>
1701
+ </tr>
1702
+ <tr>
1703
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1704
+ <td>return location for a <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a>
1705
+ </td>
1706
+ </tr>
1707
+ <tr>
1708
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1709
+ <td> a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated gchar ** array. Free it using <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a>
1710
+
1711
+ </td>
1712
+ </tr>
1713
+ </tbody>
1714
+ </table></div>
1715
+ <p class="since">Since 2.14</p>
1716
+ </div>
1717
+ <hr>
1718
+ <div class="refsect2" title="g_regex_replace ()">
1719
+ <a name="g-regex-replace"></a><h3>g_regex_replace ()</h3>
1720
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_regex_replace (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1721
+ <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>,
1722
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
1723
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
1724
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *replacement</code></em>,
1725
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1726
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1727
+ <p>
1728
+ Replaces all occurrences of the pattern in <em class="parameter"><code>regex</code></em> with the
1729
+ replacement text. Backreferences of the form '\number' or
1730
+ '\g&lt;number&gt;' in the replacement text are interpolated by the
1731
+ number-th captured subexpression of the match, '\g&lt;name&gt;' refers
1732
+ to the captured subexpression with the given name. '\0' refers to the
1733
+ complete match, but '\0' followed by a number is the octal representation
1734
+ of a character. To include a literal '\' in the replacement, write '\\'.
1735
+ There are also escapes that changes the case of the following text:
1736
+ </p>
1737
+ <p>
1738
+ </p>
1739
+ <div class="variablelist"><table border="0">
1740
+ <col align="left" valign="top">
1741
+ <tbody>
1742
+ <tr>
1743
+ <td><p><span class="term">\l</span></p></td>
1744
+ <td><p>Convert to lower case the next character</p></td>
1745
+ </tr>
1746
+ <tr>
1747
+ <td><p><span class="term">\u</span></p></td>
1748
+ <td><p>Convert to upper case the next character</p></td>
1749
+ </tr>
1750
+ <tr>
1751
+ <td><p><span class="term">\L</span></p></td>
1752
+ <td><p>Convert to lower case till \E</p></td>
1753
+ </tr>
1754
+ <tr>
1755
+ <td><p><span class="term">\U</span></p></td>
1756
+ <td><p>Convert to upper case till \E</p></td>
1757
+ </tr>
1758
+ <tr>
1759
+ <td><p><span class="term">\E</span></p></td>
1760
+ <td><p>End case modification</p></td>
1761
+ </tr>
1762
+ </tbody>
1763
+ </table></div>
1764
+ <p>
1765
+ </p>
1766
+ <p>
1767
+ If you do not need to use backreferences use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-literal" title="g_regex_replace_literal ()"><code class="function">g_regex_replace_literal()</code></a>.
1768
+ </p>
1769
+ <p>
1770
+ The <em class="parameter"><code>replacement</code></em> string must be UTF-8 encoded even if <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-RAW:CAPS"><span class="type">G_REGEX_RAW</span></a> was
1771
+ passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>. If you want to use not UTF-8 encoded stings
1772
+ you can use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-literal" title="g_regex_replace_literal ()"><code class="function">g_regex_replace_literal()</code></a>.
1773
+ </p>
1774
+ <p>
1775
+ Setting <em class="parameter"><code>start_position</code></em> differs from just passing over a shortened
1776
+ string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern that
1777
+ begins with any kind of lookbehind assertion, such as "\b".
1778
+ </p>
1779
+ <div class="variablelist"><table border="0">
1780
+ <col align="left" valign="top">
1781
+ <tbody>
1782
+ <tr>
1783
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1784
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure
1785
+ </td>
1786
+ </tr>
1787
+ <tr>
1788
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1789
+ <td>the string to perform matches against
1790
+ </td>
1791
+ </tr>
1792
+ <tr>
1793
+ <td><p><span class="term"><em class="parameter"><code>string_len</code></em> :</span></p></td>
1794
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
1795
+ </td>
1796
+ </tr>
1797
+ <tr>
1798
+ <td><p><span class="term"><em class="parameter"><code>start_position</code></em> :</span></p></td>
1799
+ <td>starting index of the string to match
1800
+ </td>
1801
+ </tr>
1802
+ <tr>
1803
+ <td><p><span class="term"><em class="parameter"><code>replacement</code></em> :</span></p></td>
1804
+ <td>text to replace each match with
1805
+ </td>
1806
+ </tr>
1807
+ <tr>
1808
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1809
+ <td>options for the match
1810
+ </td>
1811
+ </tr>
1812
+ <tr>
1813
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1814
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
1815
+ </td>
1816
+ </tr>
1817
+ <tr>
1818
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1819
+ <td> a newly allocated string containing the replacements
1820
+
1821
+ </td>
1822
+ </tr>
1823
+ </tbody>
1824
+ </table></div>
1825
+ <p class="since">Since 2.14</p>
1826
+ </div>
1827
+ <hr>
1828
+ <div class="refsect2" title="g_regex_replace_literal ()">
1829
+ <a name="g-regex-replace-literal"></a><h3>g_regex_replace_literal ()</h3>
1830
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_regex_replace_literal (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1831
+ <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>,
1832
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
1833
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
1834
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *replacement</code></em>,
1835
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1836
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1837
+ <p>
1838
+ Replaces all occurrences of the pattern in <em class="parameter"><code>regex</code></em> with the
1839
+ replacement text. <em class="parameter"><code>replacement</code></em> is replaced literally, to
1840
+ include backreferences use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace" title="g_regex_replace ()"><code class="function">g_regex_replace()</code></a>.
1841
+ </p>
1842
+ <p>
1843
+ Setting <em class="parameter"><code>start_position</code></em> differs from just passing over a
1844
+ shortened string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the
1845
+ case of a pattern that begins with any kind of lookbehind
1846
+ assertion, such as "\b".
1847
+ </p>
1848
+ <div class="variablelist"><table border="0">
1849
+ <col align="left" valign="top">
1850
+ <tbody>
1851
+ <tr>
1852
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1853
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure
1854
+ </td>
1855
+ </tr>
1856
+ <tr>
1857
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1858
+ <td>the string to perform matches against
1859
+ </td>
1860
+ </tr>
1861
+ <tr>
1862
+ <td><p><span class="term"><em class="parameter"><code>string_len</code></em> :</span></p></td>
1863
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
1864
+ </td>
1865
+ </tr>
1866
+ <tr>
1867
+ <td><p><span class="term"><em class="parameter"><code>start_position</code></em> :</span></p></td>
1868
+ <td>starting index of the string to match
1869
+ </td>
1870
+ </tr>
1871
+ <tr>
1872
+ <td><p><span class="term"><em class="parameter"><code>replacement</code></em> :</span></p></td>
1873
+ <td>text to replace each match with
1874
+ </td>
1875
+ </tr>
1876
+ <tr>
1877
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
1878
+ <td>options for the match
1879
+ </td>
1880
+ </tr>
1881
+ <tr>
1882
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1883
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
1884
+ </td>
1885
+ </tr>
1886
+ <tr>
1887
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1888
+ <td> a newly allocated string containing the replacements
1889
+
1890
+ </td>
1891
+ </tr>
1892
+ </tbody>
1893
+ </table></div>
1894
+ <p class="since">Since 2.14</p>
1895
+ </div>
1896
+ <hr>
1897
+ <div class="refsect2" title="g_regex_replace_eval ()">
1898
+ <a name="g-regex-replace-eval"></a><h3>g_regex_replace_eval ()</h3>
1899
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_regex_replace_eval (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> *regex</code></em>,
1900
+ <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>,
1901
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> string_len</code></em>,
1902
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> start_position</code></em>,
1903
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexMatchFlags" title="enum GRegexMatchFlags"><span class="type">GRegexMatchFlags</span></a> match_options</code></em>,
1904
+ <em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegexEvalCallback" title="GRegexEvalCallback ()"><span class="type">GRegexEvalCallback</span></a> eval</code></em>,
1905
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
1906
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1907
+ <p>
1908
+ Replaces occurrences of the pattern in regex with the output of
1909
+ <em class="parameter"><code>eval</code></em> for that occurrence.
1910
+ </p>
1911
+ <p>
1912
+ Setting <em class="parameter"><code>start_position</code></em> differs from just passing over a shortened
1913
+ string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern
1914
+ that begins with any kind of lookbehind assertion, such as "\b".
1915
+ </p>
1916
+ <p>
1917
+ The following example uses <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval" title="g_regex_replace_eval ()"><code class="function">g_regex_replace_eval()</code></a> to replace multiple
1918
+ strings at once:
1919
+ </p>
1920
+ <div class="informalexample">
1921
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
1922
+ <tbody>
1923
+ <tr>
1924
+ <td class="listing_lines" align="right"><pre>1
1925
+ 2
1926
+ 3
1927
+ 4
1928
+ 5
1929
+ 6
1930
+ 7
1931
+ 8
1932
+ 9
1933
+ 10
1934
+ 11
1935
+ 12
1936
+ 13
1937
+ 14
1938
+ 15
1939
+ 16
1940
+ 17
1941
+ 18
1942
+ 19
1943
+ 20
1944
+ 21
1945
+ 22
1946
+ 23
1947
+ 24
1948
+ 25
1949
+ 26
1950
+ 27
1951
+ 28
1952
+ 29
1953
+ 30
1954
+ 31
1955
+ 32
1956
+ 33
1957
+ 34</pre></td>
1958
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> <a href="glib-Basic-Types.html#gboolean">gboolean</a> </span>
1959
+ <span class="function">eval_cb</span><span class="normal"> </span><span class="symbol">(</span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">GMatchInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">info</span><span class="symbol">,</span><span class="normal"> </span>
1960
+ <span class="normal"> </span><span class="usertype">GString</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">res</span><span class="symbol">,</span>
1961
+ <span class="normal"> </span><span class="usertype">gpointer</span><span class="normal"> data</span><span class="symbol">)</span>
1962
+ <span class="cbracket">{</span>
1963
+ <span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">match</span><span class="symbol">;</span>
1964
+ <span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">r</span><span class="symbol">;</span>
1965
+
1966
+ <span class="normal"> match </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">info</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">);</span>
1967
+ <span class="normal"> r </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Hash-Tables.html#g-hash-table-lookup">g_hash_table_lookup</a></span><span class="normal"> </span><span class="symbol">((</span><span class="normal"><a href="glib-Hash-Tables.html#GHashTable">GHashTable</a> </span><span class="symbol">*)</span><span class="normal">data</span><span class="symbol">,</span><span class="normal"> match</span><span class="symbol">);</span>
1968
+ <span class="normal"> </span><span class="function"><a href="glib-Strings.html#g-string-append">g_string_append</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">res</span><span class="symbol">,</span><span class="normal"> r</span><span class="symbol">);</span>
1969
+ <span class="normal"> </span><span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match</span><span class="symbol">);</span>
1970
+
1971
+ <span class="normal"> </span><span class="keyword">return</span><span class="normal"> <a href="glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">;</span>
1972
+ <span class="cbracket">}</span>
1973
+
1974
+ <span class="comment">/* ... */</span>
1975
+
1976
+ <span class="usertype">GRegex</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">reg</span><span class="symbol">;</span>
1977
+ <span class="usertype">GHashTable</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">h</span><span class="symbol">;</span>
1978
+ <span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">res</span><span class="symbol">;</span>
1979
+
1980
+ <span class="normal">h </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Hash-Tables.html#g-hash-table-new">g_hash_table_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal"><a href="glib-Hash-Tables.html#g-str-hash">g_str_hash</a></span><span class="symbol">,</span><span class="normal"> <a href="glib-Hash-Tables.html#g-str-equal">g_str_equal</a></span><span class="symbol">);</span>
1981
+
1982
+ <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"1"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"ONE"</span><span class="symbol">);</span>
1983
+ <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"2"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"TWO"</span><span class="symbol">);</span>
1984
+ <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"3"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"THREE"</span><span class="symbol">);</span>
1985
+ <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"4"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"FOUR"</span><span class="symbol">);</span>
1986
+
1987
+ <span class="normal">reg </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"1|2|3|4"</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1988
+ <span class="normal">res </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval">g_regex_replace_eval</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">reg</span><span class="symbol">,</span><span class="normal"> text</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">-</span><span class="number">1</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> eval_cb</span><span class="symbol">,</span><span class="normal"> h</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1989
+ <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-destroy">g_hash_table_destroy</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">);</span>
1990
+
1991
+ <span class="comment">/* ... */</span></pre></td>
1992
+ </tr>
1993
+ </tbody>
1994
+ </table>
1995
+ </div>
1996
+
1997
+ <p>
1998
+ </p>
1999
+ <div class="variablelist"><table border="0">
2000
+ <col align="left" valign="top">
2001
+ <tbody>
2002
+ <tr>
2003
+ <td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
2004
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure from <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>
2005
+ </td>
2006
+ </tr>
2007
+ <tr>
2008
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
2009
+ <td>string to perform matches against
2010
+ </td>
2011
+ </tr>
2012
+ <tr>
2013
+ <td><p><span class="term"><em class="parameter"><code>string_len</code></em> :</span></p></td>
2014
+ <td>the length of <em class="parameter"><code>string</code></em>, or -1 if <em class="parameter"><code>string</code></em> is nul-terminated
2015
+ </td>
2016
+ </tr>
2017
+ <tr>
2018
+ <td><p><span class="term"><em class="parameter"><code>start_position</code></em> :</span></p></td>
2019
+ <td>starting index of the string to match
2020
+ </td>
2021
+ </tr>
2022
+ <tr>
2023
+ <td><p><span class="term"><em class="parameter"><code>match_options</code></em> :</span></p></td>
2024
+ <td>options for the match
2025
+ </td>
2026
+ </tr>
2027
+ <tr>
2028
+ <td><p><span class="term"><em class="parameter"><code>eval</code></em> :</span></p></td>
2029
+ <td>a function to call for each match
2030
+ </td>
2031
+ </tr>
2032
+ <tr>
2033
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
2034
+ <td>user data to pass to the function
2035
+ </td>
2036
+ </tr>
2037
+ <tr>
2038
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2039
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
2040
+ </td>
2041
+ </tr>
2042
+ <tr>
2043
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2044
+ <td> a newly allocated string containing the replacements
2045
+
2046
+ </td>
2047
+ </tr>
2048
+ </tbody>
2049
+ </table></div>
2050
+ <p class="since">Since 2.14</p>
2051
+ </div>
2052
+ <hr>
2053
+ <div class="refsect2" title="g_regex_check_replacement ()">
2054
+ <a name="g-regex-check-replacement"></a><h3>g_regex_check_replacement ()</h3>
2055
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_regex_check_replacement (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *replacement</code></em>,
2056
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="type">gboolean</span></a> *has_references</code></em>,
2057
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
2058
+ <p>
2059
+ Checks whether <em class="parameter"><code>replacement</code></em> is a valid replacement string
2060
+ (see <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace" title="g_regex_replace ()"><code class="function">g_regex_replace()</code></a>), i.e. that all escape sequences in
2061
+ it are valid.
2062
+ </p>
2063
+ <p>
2064
+ If <em class="parameter"><code>has_references</code></em> is not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> then <em class="parameter"><code>replacement</code></em> is checked
2065
+ for pattern references. For instance, replacement text 'foo\n'
2066
+ does not contain references and may be evaluated without information
2067
+ about actual match, but '\0\1' (whole match followed by first
2068
+ subpattern) requires valid <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> object.
2069
+ </p>
2070
+ <div class="variablelist"><table border="0">
2071
+ <col align="left" valign="top">
2072
+ <tbody>
2073
+ <tr>
2074
+ <td><p><span class="term"><em class="parameter"><code>replacement</code></em> :</span></p></td>
2075
+ <td>the replacement string
2076
+ </td>
2077
+ </tr>
2078
+ <tr>
2079
+ <td><p><span class="term"><em class="parameter"><code>has_references</code></em> :</span></p></td>
2080
+ <td>location to store information about
2081
+ references in <em class="parameter"><code>replacement</code></em> or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
2082
+ </td>
2083
+ </tr>
2084
+ <tr>
2085
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2086
+ <td>location to store error
2087
+ </td>
2088
+ </tr>
2089
+ <tr>
2090
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2091
+ <td> whether <em class="parameter"><code>replacement</code></em> is a valid replacement string
2092
+
2093
+ </td>
2094
+ </tr>
2095
+ </tbody>
2096
+ </table></div>
2097
+ <p class="since">Since 2.14</p>
2098
+ </div>
2099
+ <hr>
2100
+ <div class="refsect2" title="GMatchInfo">
2101
+ <a name="GMatchInfo"></a><h3>GMatchInfo</h3>
2102
+ <pre class="programlisting">typedef struct _GMatchInfo GMatchInfo;</pre>
2103
+ <p>
2104
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> is used to retrieve information about the regular expression match
2105
+ which created it.
2106
+ This structure is opaque and its fields cannot be accessed directly.
2107
+ </p>
2108
+ <p class="since">Since 2.14</p>
2109
+ </div>
2110
+ <hr>
2111
+ <div class="refsect2" title="g_match_info_get_regex ()">
2112
+ <a name="g-match-info-get-regex"></a><h3>g_match_info_get_regex ()</h3>
2113
+ <pre class="programlisting"><a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="returnvalue">GRegex</span></a> * g_match_info_get_regex (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2114
+ <p>
2115
+ Returns <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> object used in <em class="parameter"><code>match_info</code></em>. It belongs to Glib
2116
+ and must not be freed. Use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-ref" title="g_regex_ref ()"><code class="function">g_regex_ref()</code></a> if you need to keep it
2117
+ after you free <em class="parameter"><code>match_info</code></em> object.
2118
+ </p>
2119
+ <div class="variablelist"><table border="0">
2120
+ <col align="left" valign="top">
2121
+ <tbody>
2122
+ <tr>
2123
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2124
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>
2125
+ </td>
2126
+ </tr>
2127
+ <tr>
2128
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2129
+ <td> <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> object used in <em class="parameter"><code>match_info</code></em>
2130
+
2131
+ </td>
2132
+ </tr>
2133
+ </tbody>
2134
+ </table></div>
2135
+ <p class="since">Since 2.14</p>
2136
+ </div>
2137
+ <hr>
2138
+ <div class="refsect2" title="g_match_info_get_string ()">
2139
+ <a name="g-match-info-get-string"></a><h3>g_match_info_get_string ()</h3>
2140
+ <pre class="programlisting">const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_match_info_get_string (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2141
+ <p>
2142
+ Returns the string searched with <em class="parameter"><code>match_info</code></em>. This is the
2143
+ string passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace" title="g_regex_replace ()"><code class="function">g_regex_replace()</code></a> so
2144
+ you may not free it before calling this function.
2145
+ </p>
2146
+ <div class="variablelist"><table border="0">
2147
+ <col align="left" valign="top">
2148
+ <tbody>
2149
+ <tr>
2150
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2151
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>
2152
+ </td>
2153
+ </tr>
2154
+ <tr>
2155
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2156
+ <td> the string searched with <em class="parameter"><code>match_info</code></em>
2157
+
2158
+ </td>
2159
+ </tr>
2160
+ </tbody>
2161
+ </table></div>
2162
+ <p class="since">Since 2.14</p>
2163
+ </div>
2164
+ <hr>
2165
+ <div class="refsect2" title="g_match_info_free ()">
2166
+ <a name="g-match-info-free"></a><h3>g_match_info_free ()</h3>
2167
+ <pre class="programlisting"><span class="returnvalue">void</span> g_match_info_free (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2168
+ <p>
2169
+ Frees all the memory associated with the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure.
2170
+ </p>
2171
+ <div class="variablelist"><table border="0">
2172
+ <col align="left" valign="top">
2173
+ <tbody><tr>
2174
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2175
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>
2176
+ </td>
2177
+ </tr></tbody>
2178
+ </table></div>
2179
+ <p class="since">Since 2.14</p>
2180
+ </div>
2181
+ <hr>
2182
+ <div class="refsect2" title="g_match_info_matches ()">
2183
+ <a name="g-match-info-matches"></a><h3>g_match_info_matches ()</h3>
2184
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_match_info_matches (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2185
+ <p>
2186
+ Returns whether the previous match operation succeeded.
2187
+ </p>
2188
+ <div class="variablelist"><table border="0">
2189
+ <col align="left" valign="top">
2190
+ <tbody>
2191
+ <tr>
2192
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2193
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2194
+ </td>
2195
+ </tr>
2196
+ <tr>
2197
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2198
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the previous match operation succeeded,
2199
+ <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
2200
+
2201
+ </td>
2202
+ </tr>
2203
+ </tbody>
2204
+ </table></div>
2205
+ <p class="since">Since 2.14</p>
2206
+ </div>
2207
+ <hr>
2208
+ <div class="refsect2" title="g_match_info_next ()">
2209
+ <a name="g-match-info-next"></a><h3>g_match_info_next ()</h3>
2210
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_match_info_next (<em class="parameter"><code><a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
2211
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
2212
+ <p>
2213
+ Scans for the next match using the same parameters of the previous
2214
+ call to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-full" title="g_regex_match_full ()"><code class="function">g_regex_match_full()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a> that returned
2215
+ <em class="parameter"><code>match_info</code></em>.
2216
+ </p>
2217
+ <p>
2218
+ The match is done on the string passed to the match function, so you
2219
+ cannot free it before calling this function.
2220
+ </p>
2221
+ <div class="variablelist"><table border="0">
2222
+ <col align="left" valign="top">
2223
+ <tbody>
2224
+ <tr>
2225
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2226
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2227
+ </td>
2228
+ </tr>
2229
+ <tr>
2230
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2231
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
2232
+ </td>
2233
+ </tr>
2234
+ <tr>
2235
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2236
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is the string matched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
2237
+
2238
+ </td>
2239
+ </tr>
2240
+ </tbody>
2241
+ </table></div>
2242
+ <p class="since">Since 2.14</p>
2243
+ </div>
2244
+ <hr>
2245
+ <div class="refsect2" title="g_match_info_get_match_count ()">
2246
+ <a name="g-match-info-get-match-count"></a><h3>g_match_info_get_match_count ()</h3>
2247
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_match_info_get_match_count (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2248
+ <p>
2249
+ Retrieves the number of matched substrings (including substring 0,
2250
+ that is the whole matched text), so 1 is returned if the pattern
2251
+ has no substrings in it and 0 is returned if the match failed.
2252
+ </p>
2253
+ <p>
2254
+ If the last match was obtained using the DFA algorithm, that is
2255
+ using <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all" title="g_regex_match_all ()"><code class="function">g_regex_match_all()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all-full" title="g_regex_match_all_full ()"><code class="function">g_regex_match_all_full()</code></a>, the retrieved
2256
+ count is not that of the number of capturing parentheses but that of
2257
+ the number of matched substrings.
2258
+ </p>
2259
+ <div class="variablelist"><table border="0">
2260
+ <col align="left" valign="top">
2261
+ <tbody>
2262
+ <tr>
2263
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2264
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2265
+ </td>
2266
+ </tr>
2267
+ <tr>
2268
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2269
+ <td> Number of matched substrings, or -1 if an error occurred
2270
+
2271
+ </td>
2272
+ </tr>
2273
+ </tbody>
2274
+ </table></div>
2275
+ <p class="since">Since 2.14</p>
2276
+ </div>
2277
+ <hr>
2278
+ <div class="refsect2" title="g_match_info_is_partial_match ()">
2279
+ <a name="g-match-info-is-partial-match"></a><h3>g_match_info_is_partial_match ()</h3>
2280
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_match_info_is_partial_match (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2281
+ <p>
2282
+ Usually if the string passed to g_regex_match*() matches as far as
2283
+ it goes, but is too short to match the entire pattern, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> is
2284
+ returned. There are circumstances where it might be helpful to
2285
+ distinguish this case from other cases in which there is no match.
2286
+ </p>
2287
+ <p>
2288
+ Consider, for example, an application where a human is required to
2289
+ type in data for a field with specific formatting requirements. An
2290
+ example might be a date in the form ddmmmyy, defined by the pattern
2291
+ "^\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d$".
2292
+ If the application sees the user’s keystrokes one by one, and can
2293
+ check that what has been typed so far is potentially valid, it is
2294
+ able to raise an error as soon as a mistake is made.
2295
+ </p>
2296
+ <p>
2297
+ GRegex supports the concept of partial matching by means of the
2298
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-PARTIAL:CAPS"><span class="type">G_REGEX_MATCH_PARTIAL</span></a> flag. When this is set the return code for
2299
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-full" title="g_regex_match_full ()"><code class="function">g_regex_match_full()</code></a> is, as usual, <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a>
2300
+ for a complete match, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise. But, when these functions
2301
+ return <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a>, you can check if the match was partial calling
2302
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-is-partial-match" title="g_match_info_is_partial_match ()"><code class="function">g_match_info_is_partial_match()</code></a>.
2303
+ </p>
2304
+ <p>
2305
+ When using partial matching you cannot use g_match_info_fetch*().
2306
+ </p>
2307
+ <p>
2308
+ Because of the way certain internal optimizations are implemented
2309
+ the partial matching algorithm cannot be used with all patterns.
2310
+ So repeated single characters such as "a{2,4}" and repeated single
2311
+ meta-sequences such as "\d+" are not permitted if the maximum number
2312
+ of occurrences is greater than one. Optional items such as "\d?"
2313
+ (where the maximum is one) are permitted. Quantifiers with any values
2314
+ are permitted after parentheses, so the invalid examples above can be
2315
+ coded thus "(a){2,4}" and "(\d)+". If <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-PARTIAL:CAPS"><span class="type">G_REGEX_MATCH_PARTIAL</span></a> is set
2316
+ for a pattern that does not conform to the restrictions, matching
2317
+ functions return an error.
2318
+ </p>
2319
+ <div class="variablelist"><table border="0">
2320
+ <col align="left" valign="top">
2321
+ <tbody>
2322
+ <tr>
2323
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2324
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2325
+ </td>
2326
+ </tr>
2327
+ <tr>
2328
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2329
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the match was partial, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
2330
+
2331
+ </td>
2332
+ </tr>
2333
+ </tbody>
2334
+ </table></div>
2335
+ <p class="since">Since 2.14</p>
2336
+ </div>
2337
+ <hr>
2338
+ <div class="refsect2" title="g_match_info_expand_references ()">
2339
+ <a name="g-match-info-expand-references"></a><h3>g_match_info_expand_references ()</h3>
2340
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_match_info_expand_references (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
2341
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *string_to_expand</code></em>,
2342
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
2343
+ <p>
2344
+ Returns a new string containing the text in <em class="parameter"><code>string_to_expand</code></em> with
2345
+ references and escape sequences expanded. References refer to the last
2346
+ match done with <em class="parameter"><code>string</code></em> against <em class="parameter"><code>regex</code></em> and have the same syntax used by
2347
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace" title="g_regex_replace ()"><code class="function">g_regex_replace()</code></a>.
2348
+ </p>
2349
+ <p>
2350
+ The <em class="parameter"><code>string_to_expand</code></em> must be UTF-8 encoded even if <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-RAW:CAPS"><span class="type">G_REGEX_RAW</span></a> was
2351
+ passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>.
2352
+ </p>
2353
+ <p>
2354
+ The backreferences are extracted from the string passed to the match
2355
+ function, so you cannot call this function after freeing the string.
2356
+ </p>
2357
+ <p>
2358
+ <em class="parameter"><code>match_info</code></em> may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> in which case <em class="parameter"><code>string_to_expand</code></em> must not
2359
+ contain references. For instance "foo\n" does not refer to an actual
2360
+ pattern and '\n' merely will be replaced with \n character,
2361
+ while to expand "\0" (whole match) one needs the result of a match.
2362
+ Use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-check-replacement" title="g_regex_check_replacement ()"><code class="function">g_regex_check_replacement()</code></a> to find out whether <em class="parameter"><code>string_to_expand</code></em>
2363
+ contains references.
2364
+ </p>
2365
+ <div class="variablelist"><table border="0">
2366
+ <col align="left" valign="top">
2367
+ <tbody>
2368
+ <tr>
2369
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2370
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
2371
+ </td>
2372
+ </tr>
2373
+ <tr>
2374
+ <td><p><span class="term"><em class="parameter"><code>string_to_expand</code></em> :</span></p></td>
2375
+ <td>the string to expand
2376
+ </td>
2377
+ </tr>
2378
+ <tr>
2379
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2380
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore errors
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 expanded string, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if an error occurred
2386
+
2387
+ </td>
2388
+ </tr>
2389
+ </tbody>
2390
+ </table></div>
2391
+ <p class="since">Since 2.14</p>
2392
+ </div>
2393
+ <hr>
2394
+ <div class="refsect2" title="g_match_info_fetch ()">
2395
+ <a name="g-match-info-fetch"></a><h3>g_match_info_fetch ()</h3>
2396
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_match_info_fetch (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
2397
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> match_num</code></em>);</pre>
2398
+ <p>
2399
+ Retrieves the text matching the <em class="parameter"><code>match_num</code></em>'th capturing
2400
+ parentheses. 0 is the full text of the match, 1 is the first paren
2401
+ set, 2 the second, and so on.
2402
+ </p>
2403
+ <p>
2404
+ If <em class="parameter"><code>match_num</code></em> is a valid sub pattern but it didn't match anything
2405
+ (e.g. sub pattern 1, matching "b" against "(a)?b") then an empty
2406
+ string is returned.
2407
+ </p>
2408
+ <p>
2409
+ If the match was obtained using the DFA algorithm, that is using
2410
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all" title="g_regex_match_all ()"><code class="function">g_regex_match_all()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all-full" title="g_regex_match_all_full ()"><code class="function">g_regex_match_all_full()</code></a>, the retrieved
2411
+ string is not that of a set of parentheses but that of a matched
2412
+ substring. Substrings are matched in reverse order of length, so
2413
+ 0 is the longest match.
2414
+ </p>
2415
+ <p>
2416
+ The string is fetched from the string passed to the match function,
2417
+ so you cannot call this function after freeing the string.
2418
+ </p>
2419
+ <div class="variablelist"><table border="0">
2420
+ <col align="left" valign="top">
2421
+ <tbody>
2422
+ <tr>
2423
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2424
+ <td>
2425
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2426
+ </td>
2427
+ </tr>
2428
+ <tr>
2429
+ <td><p><span class="term"><em class="parameter"><code>match_num</code></em> :</span></p></td>
2430
+ <td>number of the sub expression
2431
+ </td>
2432
+ </tr>
2433
+ <tr>
2434
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2435
+ <td> The matched substring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if an error occurred.
2436
+ You have to free the string yourself
2437
+
2438
+ </td>
2439
+ </tr>
2440
+ </tbody>
2441
+ </table></div>
2442
+ <p class="since">Since 2.14</p>
2443
+ </div>
2444
+ <hr>
2445
+ <div class="refsect2" title="g_match_info_fetch_pos ()">
2446
+ <a name="g-match-info-fetch-pos"></a><h3>g_match_info_fetch_pos ()</h3>
2447
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_match_info_fetch_pos (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
2448
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> match_num</code></em>,
2449
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *start_pos</code></em>,
2450
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *end_pos</code></em>);</pre>
2451
+ <p>
2452
+ Retrieves the position in bytes of the <em class="parameter"><code>match_num</code></em>'th capturing
2453
+ parentheses. 0 is the full text of the match, 1 is the first
2454
+ paren set, 2 the second, and so on.
2455
+ </p>
2456
+ <p>
2457
+ If <em class="parameter"><code>match_num</code></em> is a valid sub pattern but it didn't match anything
2458
+ (e.g. sub pattern 1, matching "b" against "(a)?b") then <em class="parameter"><code>start_pos</code></em>
2459
+ and <em class="parameter"><code>end_pos</code></em> are set to -1 and <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is returned.
2460
+ </p>
2461
+ <p>
2462
+ If the match was obtained using the DFA algorithm, that is using
2463
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all" title="g_regex_match_all ()"><code class="function">g_regex_match_all()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all-full" title="g_regex_match_all_full ()"><code class="function">g_regex_match_all_full()</code></a>, the retrieved
2464
+ position is not that of a set of parentheses but that of a matched
2465
+ substring. Substrings are matched in reverse order of length, so
2466
+ 0 is the longest match.
2467
+ </p>
2468
+ <div class="variablelist"><table border="0">
2469
+ <col align="left" valign="top">
2470
+ <tbody>
2471
+ <tr>
2472
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2473
+ <td>
2474
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2475
+ </td>
2476
+ </tr>
2477
+ <tr>
2478
+ <td><p><span class="term"><em class="parameter"><code>match_num</code></em> :</span></p></td>
2479
+ <td>number of the sub expression
2480
+ </td>
2481
+ </tr>
2482
+ <tr>
2483
+ <td><p><span class="term"><em class="parameter"><code>start_pos</code></em> :</span></p></td>
2484
+ <td>pointer to location where to store the start position
2485
+ </td>
2486
+ </tr>
2487
+ <tr>
2488
+ <td><p><span class="term"><em class="parameter"><code>end_pos</code></em> :</span></p></td>
2489
+ <td>pointer to location where to store the end position
2490
+ </td>
2491
+ </tr>
2492
+ <tr>
2493
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2494
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the position was fetched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise. If
2495
+ the position cannot be fetched, <em class="parameter"><code>start_pos</code></em> and <em class="parameter"><code>end_pos</code></em> are left
2496
+ unchanged
2497
+
2498
+ </td>
2499
+ </tr>
2500
+ </tbody>
2501
+ </table></div>
2502
+ <p class="since">Since 2.14</p>
2503
+ </div>
2504
+ <hr>
2505
+ <div class="refsect2" title="g_match_info_fetch_named ()">
2506
+ <a name="g-match-info-fetch-named"></a><h3>g_match_info_fetch_named ()</h3>
2507
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_match_info_fetch_named (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
2508
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
2509
+ <p>
2510
+ Retrieves the text matching the capturing parentheses named <em class="parameter"><code>name</code></em>.
2511
+ </p>
2512
+ <p>
2513
+ If <em class="parameter"><code>name</code></em> is a valid sub pattern name but it didn't match anything
2514
+ (e.g. sub pattern "X", matching "b" against "(?P&lt;X&gt;a)?b")
2515
+ then an empty string is returned.
2516
+ </p>
2517
+ <p>
2518
+ The string is fetched from the string passed to the match function,
2519
+ so you cannot call this function after freeing the string.
2520
+ </p>
2521
+ <div class="variablelist"><table border="0">
2522
+ <col align="left" valign="top">
2523
+ <tbody>
2524
+ <tr>
2525
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2526
+ <td>
2527
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2528
+ </td>
2529
+ </tr>
2530
+ <tr>
2531
+ <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
2532
+ <td>name of the subexpression
2533
+ </td>
2534
+ </tr>
2535
+ <tr>
2536
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2537
+ <td> The matched substring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if an error occurred.
2538
+ You have to free the string yourself
2539
+
2540
+ </td>
2541
+ </tr>
2542
+ </tbody>
2543
+ </table></div>
2544
+ <p class="since">Since 2.14</p>
2545
+ </div>
2546
+ <hr>
2547
+ <div class="refsect2" title="g_match_info_fetch_named_pos ()">
2548
+ <a name="g-match-info-fetch-named-pos"></a><h3>g_match_info_fetch_named_pos ()</h3>
2549
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_match_info_fetch_named_pos (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>,
2550
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *name</code></em>,
2551
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *start_pos</code></em>,
2552
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="type">gint</span></a> *end_pos</code></em>);</pre>
2553
+ <p>
2554
+ Retrieves the position in bytes of the capturing parentheses named <em class="parameter"><code>name</code></em>.
2555
+ </p>
2556
+ <p>
2557
+ If <em class="parameter"><code>name</code></em> is a valid sub pattern name but it didn't match anything
2558
+ (e.g. sub pattern "X", matching "b" against "(?P&lt;X&gt;a)?b")
2559
+ then <em class="parameter"><code>start_pos</code></em> and <em class="parameter"><code>end_pos</code></em> are set to -1 and <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is returned.
2560
+ </p>
2561
+ <div class="variablelist"><table border="0">
2562
+ <col align="left" valign="top">
2563
+ <tbody>
2564
+ <tr>
2565
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2566
+ <td>
2567
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2568
+ </td>
2569
+ </tr>
2570
+ <tr>
2571
+ <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
2572
+ <td>name of the subexpression
2573
+ </td>
2574
+ </tr>
2575
+ <tr>
2576
+ <td><p><span class="term"><em class="parameter"><code>start_pos</code></em> :</span></p></td>
2577
+ <td>pointer to location where to store the start position
2578
+ </td>
2579
+ </tr>
2580
+ <tr>
2581
+ <td><p><span class="term"><em class="parameter"><code>end_pos</code></em> :</span></p></td>
2582
+ <td>pointer to location where to store the end position
2583
+ </td>
2584
+ </tr>
2585
+ <tr>
2586
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2587
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the position was fetched, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise. If
2588
+ the position cannot be fetched, <em class="parameter"><code>start_pos</code></em> and <em class="parameter"><code>end_pos</code></em> are left
2589
+ unchanged
2590
+
2591
+ </td>
2592
+ </tr>
2593
+ </tbody>
2594
+ </table></div>
2595
+ <p class="since">Since 2.14</p>
2596
+ </div>
2597
+ <hr>
2598
+ <div class="refsect2" title="g_match_info_fetch_all ()">
2599
+ <a name="g-match-info-fetch-all"></a><h3>g_match_info_fetch_all ()</h3>
2600
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** g_match_info_fetch_all (<em class="parameter"><code>const <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> *match_info</code></em>);</pre>
2601
+ <p>
2602
+ Bundles up pointers to each of the matching substrings from a match
2603
+ and stores them in an array of gchar pointers. The first element in
2604
+ the returned array is the match number 0, i.e. the entire matched
2605
+ text.
2606
+ </p>
2607
+ <p>
2608
+ If a sub pattern didn't match anything (e.g. sub pattern 1, matching
2609
+ "b" against "(a)?b") then an empty string is inserted.
2610
+ </p>
2611
+ <p>
2612
+ If the last match was obtained using the DFA algorithm, that is using
2613
+ <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all" title="g_regex_match_all ()"><code class="function">g_regex_match_all()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match-all-full" title="g_regex_match_all_full ()"><code class="function">g_regex_match_all_full()</code></a>, the retrieved
2614
+ strings are not that matched by sets of parentheses but that of the
2615
+ matched substring. Substrings are matched in reverse order of length,
2616
+ so the first one is the longest match.
2617
+ </p>
2618
+ <p>
2619
+ The strings are fetched from the string passed to the match function,
2620
+ so you cannot call this function after freeing the string.
2621
+ </p>
2622
+ <div class="variablelist"><table border="0">
2623
+ <col align="left" valign="top">
2624
+ <tbody>
2625
+ <tr>
2626
+ <td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2627
+ <td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> structure
2628
+ </td>
2629
+ </tr>
2630
+ <tr>
2631
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2632
+ <td> a <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated array of gchar * pointers. It must be
2633
+ freed using <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a>. If the previous match failed <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> is
2634
+ returned
2635
+
2636
+ </td>
2637
+ </tr>
2638
+ </tbody>
2639
+ </table></div>
2640
+ <p class="since">Since 2.14</p>
2641
+ </div>
2642
+ </div>
2643
+ </div>
2644
+ <div class="footer">
2645
+ <hr>
2646
+ Generated by GTK-Doc V1.14</div>
2647
+ </body>
2648
+ </html>