glib2 3.0.7-x64-mingw32 → 3.0.8-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1062) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +24 -12
  3. data/ext/glib2/extconf.rb +1 -0
  4. data/ext/glib2/glib2.def +4 -0
  5. data/ext/glib2/rbglib-variant.c +163 -12
  6. data/ext/glib2/rbglib.c +31 -8
  7. data/ext/glib2/rbglib.h +15 -1
  8. data/ext/glib2/rbglib2conversions.h +3 -0
  9. data/ext/glib2/rbglib_iochannel.c +0 -3
  10. data/ext/glib2/rbglib_iochannel_win32_socket.c +0 -1
  11. data/ext/glib2/rbglib_matchinfo.c +179 -0
  12. data/ext/glib2/rbglib_regex.c +484 -0
  13. data/ext/glib2/rbgobj_value.c +7 -1
  14. data/ext/glib2/rbgprivate.h +2 -0
  15. data/ext/glib2/rbgutil.c +7 -0
  16. data/ext/glib2/rbgutil.h +2 -0
  17. data/lib/2.2/glib2.so +0 -0
  18. data/lib/2.3/glib2.so +0 -0
  19. data/lib/glib2.rb +2 -1
  20. data/lib/glib2/regex.rb +29 -0
  21. data/lib/gnome2/rake/external-package.rb +6 -1
  22. data/lib/gnome2/rake/package-task.rb +1 -1
  23. data/lib/gnome2/rake/package.rb +9 -0
  24. data/lib/gnome2/rake/windows-binary-build-task.rb +35 -11
  25. data/lib/mkmf-gnome2.rb +3 -1
  26. data/test/test-match-info.rb +113 -0
  27. data/test/test-regex.rb +320 -0
  28. data/vendor/local/bin/asn1Coding.exe +0 -0
  29. data/vendor/local/bin/asn1Decoding.exe +0 -0
  30. data/vendor/local/bin/asn1Parser.exe +0 -0
  31. data/vendor/local/bin/envsubst.exe +0 -0
  32. data/vendor/local/bin/gdbus.exe +0 -0
  33. data/vendor/local/bin/gettext.exe +0 -0
  34. data/vendor/local/bin/gettext.sh +1 -1
  35. data/vendor/local/bin/gio-querymodules.exe +0 -0
  36. data/vendor/local/bin/glib-compile-resources.exe +0 -0
  37. data/vendor/local/bin/glib-compile-schemas.exe +0 -0
  38. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  39. data/vendor/local/bin/glib-gettextize +1 -1
  40. data/vendor/local/bin/glib-mkenums +2 -2
  41. data/vendor/local/bin/gobject-query.exe +0 -0
  42. data/vendor/local/bin/gresource.exe +0 -0
  43. data/vendor/local/bin/gsettings.exe +0 -0
  44. data/vendor/local/bin/gspawn-win64-helper-console.exe +0 -0
  45. data/vendor/local/bin/gspawn-win64-helper.exe +0 -0
  46. data/vendor/local/bin/iconv.exe +0 -0
  47. data/vendor/local/bin/idn.exe +0 -0
  48. data/vendor/local/bin/libasprintf-0.dll +0 -0
  49. data/vendor/local/bin/libcharset-1.dll +0 -0
  50. data/vendor/local/bin/libffi-6.dll +0 -0
  51. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  52. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  53. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  54. data/vendor/local/bin/libgmp-10.dll +0 -0
  55. data/vendor/local/bin/libgnutls-30.def +993 -984
  56. data/vendor/local/bin/libgnutls-30.dll +0 -0
  57. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  58. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  59. data/vendor/local/bin/libhogweed-4-2.dll +0 -0
  60. data/vendor/local/bin/libiconv-2.dll +0 -0
  61. data/vendor/local/bin/libidn-11.dll +0 -0
  62. data/vendor/local/bin/libintl-8.dll +0 -0
  63. data/vendor/local/bin/{libnettle-6-1.dll → libnettle-6-2.dll} +0 -0
  64. data/vendor/local/bin/libp11-kit-0.dll +0 -0
  65. data/vendor/local/bin/libpcre-1.dll +0 -0
  66. data/vendor/local/bin/libpcrecpp-0.dll +0 -0
  67. data/vendor/local/bin/libpcreposix-0.dll +0 -0
  68. data/vendor/local/bin/libtasn1-6.dll +0 -0
  69. data/vendor/local/bin/nettle-hash.exe +0 -0
  70. data/vendor/local/bin/nettle-lfib-stream.exe +0 -0
  71. data/vendor/local/bin/nettle-pbkdf2.exe +0 -0
  72. data/vendor/local/bin/ngettext.exe +0 -0
  73. data/vendor/local/bin/p11-kit.exe +0 -0
  74. data/vendor/local/bin/pcre-config +133 -0
  75. data/vendor/local/bin/pcregrep.exe +0 -0
  76. data/vendor/local/bin/pcretest.exe +0 -0
  77. data/vendor/local/bin/pkcs1-conv.exe +0 -0
  78. data/vendor/local/bin/sexp-conv.exe +0 -0
  79. data/vendor/local/bin/trust.exe +0 -0
  80. data/vendor/local/include/glib-2.0/gio/gdatagrambased.h +144 -0
  81. data/vendor/local/include/glib-2.0/gio/gdbusconnection.h +9 -1
  82. data/vendor/local/include/glib-2.0/gio/gdtlsclientconnection.h +75 -0
  83. data/vendor/local/include/glib-2.0/gio/gdtlsconnection.h +191 -0
  84. data/vendor/local/include/glib-2.0/gio/gdtlsserverconnection.h +69 -0
  85. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +14 -0
  86. data/vendor/local/include/glib-2.0/gio/gio-autocleanups.h +1 -0
  87. data/vendor/local/include/glib-2.0/gio/gio.h +4 -0
  88. data/vendor/local/include/glib-2.0/gio/gioenums.h +69 -13
  89. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +2 -0
  90. data/vendor/local/include/glib-2.0/gio/giotypes.h +77 -0
  91. data/vendor/local/include/glib-2.0/gio/gliststore.h +5 -0
  92. data/vendor/local/include/glib-2.0/gio/gnetworkmonitor.h +3 -0
  93. data/vendor/local/include/glib-2.0/gio/gsettings.h +1 -1
  94. data/vendor/local/include/glib-2.0/gio/gsettingsschema.h +3 -0
  95. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +25 -25
  96. data/vendor/local/include/glib-2.0/gio/gsocket.h +7 -0
  97. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +6 -0
  98. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +4 -1
  99. data/vendor/local/include/glib-2.0/gio/gtlsbackend.h +14 -0
  100. data/vendor/local/include/glib-2.0/gio/gtlsclientconnection.h +7 -0
  101. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +13 -0
  102. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +2 -0
  103. data/vendor/local/include/glib-2.0/glib/glib-autocleanups.h +12 -4
  104. data/vendor/local/include/glib-2.0/glib/gmacros.h +46 -10
  105. data/vendor/local/include/glib-2.0/glib/gmain.h +3 -1
  106. data/vendor/local/include/glib-2.0/glib/gmem.h +7 -5
  107. data/vendor/local/include/glib-2.0/glib/gmessages.h +8 -8
  108. data/vendor/local/include/glib-2.0/glib/gnode.h +2 -2
  109. data/vendor/local/include/glib-2.0/glib/gpoll.h +2 -9
  110. data/vendor/local/include/glib-2.0/glib/gsequence.h +2 -0
  111. data/vendor/local/include/glib-2.0/glib/gstdio.h +1 -1
  112. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +1 -0
  113. data/vendor/local/include/glib-2.0/glib/gtestutils.h +15 -2
  114. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +4 -0
  115. data/vendor/local/include/glib-2.0/glib/gtrashstack.h +10 -57
  116. data/vendor/local/include/glib-2.0/glib/gtypes.h +61 -6
  117. data/vendor/local/include/glib-2.0/glib/gunicode.h +15 -1
  118. data/vendor/local/include/glib-2.0/glib/gutils.h +36 -57
  119. data/vendor/local/include/glib-2.0/glib/gversionmacros.h +59 -10
  120. data/vendor/local/include/glib-2.0/gobject/gboxed.h +3 -3
  121. data/vendor/local/include/glib-2.0/gobject/gclosure.h +2 -1
  122. data/vendor/local/include/glib-2.0/gobject/glib-types.h +0 -7
  123. data/vendor/local/include/glib-2.0/gobject/gobject-autocleanups.h +0 -1
  124. data/vendor/local/include/glib-2.0/gobject/gobject.h +8 -4
  125. data/vendor/local/include/glib-2.0/gobject/gparam.h +5 -2
  126. data/vendor/local/include/glib-2.0/gobject/gsignal.h +3 -0
  127. data/vendor/local/include/glib-2.0/gobject/gtype.h +47 -26
  128. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +1 -0
  129. data/vendor/local/include/gmp.h +56 -24
  130. data/vendor/local/include/gnutls/gnutls.h +79 -39
  131. data/vendor/local/include/gnutls/pkcs11.h +6 -0
  132. data/vendor/local/include/gnutls/pkcs7.h +17 -4
  133. data/vendor/local/include/gnutls/x509.h +8 -0
  134. data/vendor/local/include/libintl.h +1 -1
  135. data/vendor/local/include/libtasn1.h +1 -1
  136. data/vendor/local/include/nettle/rsa.h +72 -0
  137. data/vendor/local/include/nettle/sha3.h +4 -0
  138. data/vendor/local/include/nettle/version.h +8 -1
  139. data/vendor/local/include/p11-kit-1/p11-kit/p11-kit.h +1 -0
  140. data/vendor/local/include/pcre.h +677 -0
  141. data/vendor/local/include/pcre_scanner.h +172 -0
  142. data/vendor/local/include/pcre_stringpiece.h +180 -0
  143. data/vendor/local/include/pcrecpp.h +710 -0
  144. data/vendor/local/include/pcrecpparg.h +174 -0
  145. data/vendor/local/include/pcreposix.h +146 -0
  146. data/vendor/local/lib/gio/modules/libgiognutls.a +0 -0
  147. data/vendor/local/lib/gio/modules/libgiognutls.dll +0 -0
  148. data/vendor/local/lib/gio/modules/libgiognutls.dll.a +0 -0
  149. data/vendor/local/lib/gio/modules/libgiognutls.la +3 -3
  150. data/vendor/local/lib/glib-2.0/include/glibconfig.h +4 -16
  151. data/vendor/local/lib/libasprintf.a +0 -0
  152. data/vendor/local/lib/libasprintf.dll.a +0 -0
  153. data/vendor/local/lib/libcharset.a +0 -0
  154. data/vendor/local/lib/libcharset.dll.a +0 -0
  155. data/vendor/local/lib/libffi.a +0 -0
  156. data/vendor/local/lib/libffi.dll.a +0 -0
  157. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  158. data/vendor/local/lib/libgio-2.0.la +5 -5
  159. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  160. data/vendor/local/lib/libglib-2.0.la +5 -5
  161. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  162. data/vendor/local/lib/libgmodule-2.0.la +5 -5
  163. data/vendor/local/lib/libgmp.dll.a +0 -0
  164. data/vendor/local/lib/libgmp.la +4 -4
  165. data/vendor/local/lib/libgnutls.dll.a +0 -0
  166. data/vendor/local/lib/libgnutls.la +4 -4
  167. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  168. data/vendor/local/lib/libgobject-2.0.la +5 -5
  169. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  170. data/vendor/local/lib/libgthread-2.0.la +5 -5
  171. data/vendor/local/lib/libhogweed.a +0 -0
  172. data/vendor/local/lib/libhogweed.dll.a +0 -0
  173. data/vendor/local/lib/libiconv.dll.a +0 -0
  174. data/vendor/local/lib/libidn.a +0 -0
  175. data/vendor/local/lib/libidn.dll.a +0 -0
  176. data/vendor/local/lib/libidn.la +1 -1
  177. data/vendor/local/lib/libintl.a +0 -0
  178. data/vendor/local/lib/libintl.dll.a +0 -0
  179. data/vendor/local/lib/libintl.la +2 -2
  180. data/vendor/local/lib/libnettle.a +0 -0
  181. data/vendor/local/lib/libnettle.dll.a +0 -0
  182. data/vendor/local/lib/libp11-kit.dll.a +0 -0
  183. data/vendor/local/lib/libp11-kit.la +1 -1
  184. data/vendor/local/lib/libpcre.a +0 -0
  185. data/vendor/local/lib/libpcre.dll.a +0 -0
  186. data/vendor/local/lib/libpcre.la +41 -0
  187. data/vendor/local/lib/libpcrecpp.a +0 -0
  188. data/vendor/local/lib/libpcrecpp.dll.a +0 -0
  189. data/vendor/local/lib/libpcrecpp.la +41 -0
  190. data/vendor/local/lib/libpcreposix.a +0 -0
  191. data/vendor/local/lib/libpcreposix.dll.a +0 -0
  192. data/vendor/local/lib/libpcreposix.la +41 -0
  193. data/vendor/local/lib/libtasn1.a +0 -0
  194. data/vendor/local/lib/libtasn1.dll.a +0 -0
  195. data/vendor/local/lib/libtasn1.la +1 -1
  196. data/vendor/local/lib/p11-kit/p11-kit-remote.exe +0 -0
  197. data/vendor/local/lib/pkcs11/p11-kit-trust.dll +0 -0
  198. data/vendor/local/lib/pkcs11/p11-kit-trust.dll.a +0 -0
  199. data/vendor/local/lib/pkcs11/p11-kit-trust.la +1 -1
  200. data/vendor/local/lib/pkgconfig/gio-2.0.pc +1 -1
  201. data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +1 -1
  202. data/vendor/local/lib/pkgconfig/glib-2.0.pc +3 -3
  203. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +1 -1
  204. data/vendor/local/lib/pkgconfig/gmodule-export-2.0.pc +1 -1
  205. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +1 -1
  206. data/vendor/local/lib/pkgconfig/gnutls.pc +2 -2
  207. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +1 -1
  208. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +1 -1
  209. data/vendor/local/lib/pkgconfig/hogweed.pc +1 -1
  210. data/vendor/local/lib/pkgconfig/libidn.pc +1 -1
  211. data/vendor/local/lib/pkgconfig/libpcre.pc +13 -0
  212. data/vendor/local/lib/pkgconfig/libpcrecpp.pc +12 -0
  213. data/vendor/local/lib/pkgconfig/libpcreposix.pc +13 -0
  214. data/vendor/local/lib/pkgconfig/libtasn1.pc +1 -1
  215. data/vendor/local/lib/pkgconfig/nettle.pc +1 -1
  216. data/vendor/local/lib/pkgconfig/p11-kit-1.pc +1 -1
  217. data/vendor/local/share/aclocal/glib-gettext.m4 +3 -2
  218. data/vendor/local/share/doc/pcre/AUTHORS +45 -0
  219. data/vendor/local/share/doc/pcre/COPYING +5 -0
  220. data/vendor/local/share/doc/pcre/ChangeLog +5918 -0
  221. data/vendor/local/share/doc/pcre/LICENCE +93 -0
  222. data/vendor/local/share/doc/pcre/NEWS +716 -0
  223. data/vendor/local/share/doc/pcre/README +1002 -0
  224. data/vendor/local/share/doc/pcre/html/NON-AUTOTOOLS-BUILD.txt +772 -0
  225. data/vendor/local/share/doc/pcre/html/README.txt +1002 -0
  226. data/vendor/local/share/doc/pcre/html/index.html +185 -0
  227. data/vendor/local/share/doc/pcre/html/pcre-config.html +109 -0
  228. data/vendor/local/share/doc/pcre/html/pcre.html +224 -0
  229. data/vendor/local/share/doc/pcre/html/pcre16.html +384 -0
  230. data/vendor/local/share/doc/pcre/html/pcre32.html +382 -0
  231. data/vendor/local/share/doc/pcre/html/pcre_assign_jit_stack.html +76 -0
  232. data/vendor/local/share/doc/pcre/html/pcre_compile.html +111 -0
  233. data/vendor/local/share/doc/pcre/html/pcre_compile2.html +115 -0
  234. data/vendor/local/share/doc/pcre/html/pcre_config.html +94 -0
  235. data/vendor/local/share/doc/pcre/html/pcre_copy_named_substring.html +65 -0
  236. data/vendor/local/share/doc/pcre/html/pcre_copy_substring.html +61 -0
  237. data/vendor/local/share/doc/pcre/html/pcre_dfa_exec.html +129 -0
  238. data/vendor/local/share/doc/pcre/html/pcre_exec.html +111 -0
  239. data/vendor/local/share/doc/pcre/html/pcre_free_study.html +46 -0
  240. data/vendor/local/share/doc/pcre/html/pcre_free_substring.html +46 -0
  241. data/vendor/local/share/doc/pcre/html/pcre_free_substring_list.html +46 -0
  242. data/vendor/local/share/doc/pcre/html/pcre_fullinfo.html +118 -0
  243. data/vendor/local/share/doc/pcre/html/pcre_get_named_substring.html +68 -0
  244. data/vendor/local/share/doc/pcre/html/pcre_get_stringnumber.html +57 -0
  245. data/vendor/local/share/doc/pcre/html/pcre_get_stringtable_entries.html +60 -0
  246. data/vendor/local/share/doc/pcre/html/pcre_get_substring.html +64 -0
  247. data/vendor/local/share/doc/pcre/html/pcre_get_substring_list.html +61 -0
  248. data/vendor/local/share/doc/pcre/html/pcre_jit_exec.html +108 -0
  249. data/vendor/local/share/doc/pcre/html/pcre_jit_stack_alloc.html +55 -0
  250. data/vendor/local/share/doc/pcre/html/pcre_jit_stack_free.html +48 -0
  251. data/vendor/local/share/doc/pcre/html/pcre_maketables.html +48 -0
  252. data/vendor/local/share/doc/pcre/html/pcre_pattern_to_host_byte_order.html +58 -0
  253. data/vendor/local/share/doc/pcre/html/pcre_refcount.html +51 -0
  254. data/vendor/local/share/doc/pcre/html/pcre_study.html +68 -0
  255. data/vendor/local/share/doc/pcre/html/pcre_utf16_to_host_byte_order.html +57 -0
  256. data/vendor/local/share/doc/pcre/html/pcre_utf32_to_host_byte_order.html +57 -0
  257. data/vendor/local/share/doc/pcre/html/pcre_version.html +46 -0
  258. data/vendor/local/share/doc/pcre/html/pcreapi.html +2922 -0
  259. data/vendor/local/share/doc/pcre/html/pcrebuild.html +534 -0
  260. data/vendor/local/share/doc/pcre/html/pcrecallout.html +286 -0
  261. data/vendor/local/share/doc/pcre/html/pcrecompat.html +235 -0
  262. data/vendor/local/share/doc/pcre/html/pcrecpp.html +368 -0
  263. data/vendor/local/share/doc/pcre/html/pcredemo.html +426 -0
  264. data/vendor/local/share/doc/pcre/html/pcregrep.html +759 -0
  265. data/vendor/local/share/doc/pcre/html/pcrejit.html +452 -0
  266. data/vendor/local/share/doc/pcre/html/pcrelimits.html +90 -0
  267. data/vendor/local/share/doc/pcre/html/pcrematching.html +242 -0
  268. data/vendor/local/share/doc/pcre/html/pcrepartial.html +509 -0
  269. data/vendor/local/share/doc/pcre/html/pcrepattern.html +3273 -0
  270. data/vendor/local/share/doc/pcre/html/pcreperform.html +195 -0
  271. data/vendor/local/share/doc/pcre/html/pcreposix.html +290 -0
  272. data/vendor/local/share/doc/pcre/html/pcreprecompile.html +163 -0
  273. data/vendor/local/share/doc/pcre/html/pcresample.html +110 -0
  274. data/vendor/local/share/doc/pcre/html/pcrestack.html +225 -0
  275. data/vendor/local/share/doc/pcre/html/pcresyntax.html +561 -0
  276. data/vendor/local/share/doc/pcre/html/pcretest.html +1158 -0
  277. data/vendor/local/share/doc/pcre/html/pcreunicode.html +262 -0
  278. data/vendor/local/share/doc/pcre/pcre-config.txt +86 -0
  279. data/vendor/local/share/doc/pcre/pcre.txt +10455 -0
  280. data/vendor/local/share/doc/pcre/pcregrep.txt +741 -0
  281. data/vendor/local/share/doc/pcre/pcretest.txt +1087 -0
  282. data/vendor/local/share/gdb/auto-load/{libglib-2.0.so.0.4400.1-gdb.py → home/vagrant/ruby-gnome2.win64/glib2/vendor/local/lib/libglib-2.0.so.0.4800.0-gdb.py} +0 -0
  283. data/vendor/local/share/gdb/auto-load/{libgobject-2.0.so.0.4400.1-gdb.py → home/vagrant/ruby-gnome2.win64/glib2/vendor/local/lib/libgobject-2.0.so.0.4800.0-gdb.py} +0 -0
  284. data/vendor/local/share/gettext/ABOUT-NLS +382 -413
  285. data/vendor/local/share/gettext/its/gschema.its +25 -0
  286. data/vendor/local/share/gettext/its/gschema.loc +10 -0
  287. data/vendor/local/share/glib-2.0/codegen/__init__.pyc +0 -0
  288. data/vendor/local/share/glib-2.0/codegen/__init__.pyo +0 -0
  289. data/vendor/local/share/glib-2.0/codegen/codegen.py +22 -0
  290. data/vendor/local/share/glib-2.0/codegen/codegen.pyc +0 -0
  291. data/vendor/local/share/glib-2.0/codegen/codegen.pyo +0 -0
  292. data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyc +0 -0
  293. data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyo +0 -0
  294. data/vendor/local/share/glib-2.0/codegen/codegen_main.pyc +0 -0
  295. data/vendor/local/share/glib-2.0/codegen/codegen_main.pyo +0 -0
  296. data/vendor/local/share/glib-2.0/codegen/config.py +1 -1
  297. data/vendor/local/share/glib-2.0/codegen/config.pyc +0 -0
  298. data/vendor/local/share/glib-2.0/codegen/config.pyo +0 -0
  299. data/vendor/local/share/glib-2.0/codegen/dbustypes.pyc +0 -0
  300. data/vendor/local/share/glib-2.0/codegen/dbustypes.pyo +0 -0
  301. data/vendor/local/share/glib-2.0/codegen/parser.pyc +0 -0
  302. data/vendor/local/share/glib-2.0/codegen/parser.pyo +0 -0
  303. data/vendor/local/share/glib-2.0/codegen/utils.pyc +0 -0
  304. data/vendor/local/share/glib-2.0/codegen/utils.pyo +0 -0
  305. data/vendor/local/share/glib-2.0/gdb/glib.py +4 -0
  306. data/vendor/local/share/glib-2.0/schemas/gschemas.compiled +0 -0
  307. data/vendor/local/share/gtk-doc/html/gio/GAction.html +58 -64
  308. data/vendor/local/share/gtk-doc/html/gio/GActionGroup.html +75 -80
  309. data/vendor/local/share/gtk-doc/html/gio/GActionMap.html +50 -51
  310. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +72 -97
  311. data/vendor/local/share/gtk-doc/html/gio/GAppInfoMonitor.html +7 -8
  312. data/vendor/local/share/gtk-doc/html/gio/GApplication.html +174 -160
  313. data/vendor/local/share/gtk-doc/html/gio/GApplicationCommandLine.html +127 -132
  314. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +90 -92
  315. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +43 -46
  316. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +17 -26
  317. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +12 -17
  318. data/vendor/local/share/gtk-doc/html/gio/GBytesIcon.html +10 -11
  319. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +45 -52
  320. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +14 -18
  321. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +20 -21
  322. data/vendor/local/share/gtk-doc/html/gio/GCredentials.html +41 -48
  323. data/vendor/local/share/gtk-doc/html/gio/GDBusActionGroup.html +9 -10
  324. data/vendor/local/share/gtk-doc/html/gio/GDBusAuthObserver.html +34 -40
  325. data/vendor/local/share/gtk-doc/html/gio/GDBusConnection.html +337 -258
  326. data/vendor/local/share/gtk-doc/html/gio/GDBusInterface.html +23 -22
  327. data/vendor/local/share/gtk-doc/html/gio/GDBusInterfaceSkeleton.html +44 -50
  328. data/vendor/local/share/gtk-doc/html/gio/GDBusMenuModel.html +9 -10
  329. data/vendor/local/share/gtk-doc/html/gio/GDBusMessage.html +143 -158
  330. data/vendor/local/share/gtk-doc/html/gio/GDBusMethodInvocation.html +59 -54
  331. data/vendor/local/share/gtk-doc/html/gio/GDBusObject.html +19 -22
  332. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManager.html +25 -27
  333. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManagerClient.html +48 -52
  334. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManagerServer.html +34 -31
  335. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectProxy.html +15 -17
  336. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectSkeleton.html +25 -28
  337. data/vendor/local/share/gtk-doc/html/gio/GDBusProxy.html +105 -122
  338. data/vendor/local/share/gtk-doc/html/gio/GDBusServer.html +32 -39
  339. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +40 -51
  340. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +17 -28
  341. data/vendor/local/share/gtk-doc/html/gio/GDatagramBased.html +766 -0
  342. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +56 -75
  343. data/vendor/local/share/gtk-doc/html/gio/GDtlsClientConnection.html +468 -0
  344. data/vendor/local/share/gtk-doc/html/gio/GDtlsConnection.html +1521 -0
  345. data/vendor/local/share/gtk-doc/html/gio/GDtlsServerConnection.html +208 -0
  346. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +16 -19
  347. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +16 -17
  348. data/vendor/local/share/gtk-doc/html/gio/GFile.html +204 -240
  349. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +9 -11
  350. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +36 -41
  351. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +13 -15
  352. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +8 -9
  353. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +128 -145
  354. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +8 -9
  355. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +75 -36
  356. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +9 -11
  357. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +10 -13
  358. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +9 -11
  359. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +9 -11
  360. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +41 -43
  361. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +56 -44
  362. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +20 -23
  363. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +103 -118
  364. data/vendor/local/share/gtk-doc/html/gio/GInetAddressMask.html +39 -47
  365. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +31 -37
  366. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +17 -19
  367. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +32 -44
  368. data/vendor/local/share/gtk-doc/html/gio/GListModel.html +28 -29
  369. data/vendor/local/share/gtk-doc/html/gio/GListStore.html +80 -35
  370. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +10 -11
  371. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +11 -15
  372. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +38 -38
  373. data/vendor/local/share/gtk-doc/html/gio/GMenu.html +138 -145
  374. data/vendor/local/share/gtk-doc/html/gio/GMenuModel.html +84 -94
  375. data/vendor/local/share/gtk-doc/html/gio/GMount.html +54 -66
  376. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +34 -42
  377. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +26 -28
  378. data/vendor/local/share/gtk-doc/html/gio/GNetworkMonitor.html +97 -39
  379. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +18 -23
  380. data/vendor/local/share/gtk-doc/html/gio/GNotification.html +49 -47
  381. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +39 -56
  382. data/vendor/local/share/gtk-doc/html/gio/GPermission.html +26 -34
  383. data/vendor/local/share/gtk-doc/html/gio/GPollableInputStream.html +16 -20
  384. data/vendor/local/share/gtk-doc/html/gio/GPollableOutputStream.html +16 -20
  385. data/vendor/local/share/gtk-doc/html/gio/GPropertyAction.html +33 -20
  386. data/vendor/local/share/gtk-doc/html/gio/GProxy.html +30 -32
  387. data/vendor/local/share/gtk-doc/html/gio/GProxyAddress.html +42 -51
  388. data/vendor/local/share/gtk-doc/html/gio/GProxyResolver.html +17 -19
  389. data/vendor/local/share/gtk-doc/html/gio/GRemoteActionGroup.html +15 -16
  390. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +46 -47
  391. data/vendor/local/share/gtk-doc/html/gio/GResource.html +79 -74
  392. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +12 -18
  393. data/vendor/local/share/gtk-doc/html/gio/GSettings.html +325 -200
  394. data/vendor/local/share/gtk-doc/html/gio/GSettingsBackend.html +28 -29
  395. data/vendor/local/share/gtk-doc/html/gio/GSimpleAction.html +46 -49
  396. data/vendor/local/share/gtk-doc/html/gio/GSimpleActionGroup.html +21 -23
  397. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +258 -162
  398. data/vendor/local/share/gtk-doc/html/gio/GSimpleIOStream.html +11 -13
  399. data/vendor/local/share/gtk-doc/html/gio/GSimplePermission.html +7 -9
  400. data/vendor/local/share/gtk-doc/html/gio/GSimpleProxyResolver.html +16 -18
  401. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +470 -281
  402. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +27 -32
  403. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +76 -85
  404. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +118 -72
  405. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +28 -33
  406. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +26 -30
  407. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +180 -62
  408. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +51 -28
  409. data/vendor/local/share/gtk-doc/html/gio/GSrvTarget.html +25 -31
  410. data/vendor/local/share/gtk-doc/html/gio/GSubprocess.html +63 -75
  411. data/vendor/local/share/gtk-doc/html/gio/GSubprocessLauncher.html +49 -54
  412. data/vendor/local/share/gtk-doc/html/gio/GTask.html +406 -404
  413. data/vendor/local/share/gtk-doc/html/gio/GTcpConnection.html +11 -13
  414. data/vendor/local/share/gtk-doc/html/gio/GTcpWrapperConnection.html +9 -11
  415. data/vendor/local/share/gtk-doc/html/gio/GTestDBus.html +36 -38
  416. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +30 -31
  417. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +11 -14
  418. data/vendor/local/share/gtk-doc/html/gio/GTlsBackend.html +172 -46
  419. data/vendor/local/share/gtk-doc/html/gio/GTlsCertificate.html +26 -32
  420. data/vendor/local/share/gtk-doc/html/gio/GTlsClientConnection.html +96 -37
  421. data/vendor/local/share/gtk-doc/html/gio/GTlsConnection.html +64 -66
  422. data/vendor/local/share/gtk-doc/html/gio/GTlsDatabase.html +256 -63
  423. data/vendor/local/share/gtk-doc/html/gio/GTlsFileDatabase.html +15 -16
  424. data/vendor/local/share/gtk-doc/html/gio/GTlsInteraction.html +150 -49
  425. data/vendor/local/share/gtk-doc/html/gio/GTlsPassword.html +46 -51
  426. data/vendor/local/share/gtk-doc/html/gio/GTlsServerConnection.html +21 -18
  427. data/vendor/local/share/gtk-doc/html/gio/GUnixConnection.html +21 -26
  428. data/vendor/local/share/gtk-doc/html/gio/GUnixCredentialsMessage.html +21 -25
  429. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +31 -37
  430. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +24 -28
  431. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +15 -19
  432. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +15 -19
  433. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +43 -47
  434. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +22 -24
  435. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +43 -54
  436. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +26 -27
  437. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +15 -17
  438. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +11 -13
  439. data/vendor/local/share/gtk-doc/html/gio/annotation-glossary.html +21 -6
  440. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +3 -4
  441. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +3 -4
  442. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +3 -4
  443. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +3 -4
  444. data/vendor/local/share/gtk-doc/html/gio/api-index-2-26.html +3 -4
  445. data/vendor/local/share/gtk-doc/html/gio/api-index-2-28.html +3 -4
  446. data/vendor/local/share/gtk-doc/html/gio/api-index-2-30.html +11 -4
  447. data/vendor/local/share/gtk-doc/html/gio/api-index-2-32.html +3 -4
  448. data/vendor/local/share/gtk-doc/html/gio/api-index-2-34.html +3 -4
  449. data/vendor/local/share/gtk-doc/html/gio/api-index-2-36.html +3 -4
  450. data/vendor/local/share/gtk-doc/html/gio/api-index-2-38.html +3 -4
  451. data/vendor/local/share/gtk-doc/html/gio/api-index-2-40.html +3 -4
  452. data/vendor/local/share/gtk-doc/html/gio/api-index-2-42.html +11 -5
  453. data/vendor/local/share/gtk-doc/html/gio/api-index-2-44.html +5 -6
  454. data/vendor/local/share/gtk-doc/html/gio/api-index-2-46.html +211 -0
  455. data/vendor/local/share/gtk-doc/html/gio/api-index-2-48.html +283 -0
  456. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +107 -4
  457. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +459 -8
  458. data/vendor/local/share/gtk-doc/html/gio/application.html +5 -6
  459. data/vendor/local/share/gtk-doc/html/gio/async.html +3 -4
  460. data/vendor/local/share/gtk-doc/html/gio/ch01.html +3 -4
  461. data/vendor/local/share/gtk-doc/html/gio/ch02.html +3 -4
  462. data/vendor/local/share/gtk-doc/html/gio/ch03.html +3 -4
  463. data/vendor/local/share/gtk-doc/html/gio/ch32.html +29 -172
  464. data/vendor/local/share/gtk-doc/html/gio/ch33.html +187 -27
  465. data/vendor/local/share/gtk-doc/html/gio/ch33s02.html +15 -34
  466. data/vendor/local/share/gtk-doc/html/gio/ch33s03.html +16 -137
  467. data/vendor/local/share/gtk-doc/html/gio/ch34.html +26 -87
  468. data/vendor/local/share/gtk-doc/html/gio/ch34s02.html +37 -121
  469. data/vendor/local/share/gtk-doc/html/gio/ch34s03.html +132 -176
  470. data/vendor/local/share/gtk-doc/html/gio/ch34s04.html +19 -71
  471. data/vendor/local/share/gtk-doc/html/gio/ch34s05.html +24 -908
  472. data/vendor/local/share/gtk-doc/html/gio/{ch33s06.html → ch34s06.html} +9 -10
  473. data/vendor/local/share/gtk-doc/html/gio/{ch33s07.html → ch34s07.html} +9 -10
  474. data/vendor/local/share/gtk-doc/html/gio/ch35.html +94 -0
  475. data/vendor/local/share/gtk-doc/html/gio/ch35s02.html +141 -0
  476. data/vendor/local/share/gtk-doc/html/gio/ch35s03.html +201 -0
  477. data/vendor/local/share/gtk-doc/html/gio/ch35s04.html +96 -0
  478. data/vendor/local/share/gtk-doc/html/gio/conversion.html +3 -4
  479. data/vendor/local/share/gtk-doc/html/gio/data-models.html +4 -5
  480. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +3 -4
  481. data/vendor/local/share/gtk-doc/html/gio/extending.html +3 -4
  482. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +3 -4
  483. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +3 -4
  484. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +3 -4
  485. data/vendor/local/share/gtk-doc/html/gio/gapplication-tool.html +11 -12
  486. data/vendor/local/share/gtk-doc/html/gio/gdbus-codegen.html +199 -200
  487. data/vendor/local/share/gtk-doc/html/gio/gdbus-convenience.html +3 -4
  488. data/vendor/local/share/gtk-doc/html/gio/gdbus-example-gdbus-codegen.html +89 -0
  489. data/vendor/local/share/gtk-doc/html/gio/gdbus-lowlevel.html +3 -4
  490. data/vendor/local/share/gtk-doc/html/gio/gdbus.html +9 -10
  491. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Addresses.html +24 -28
  492. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +77 -87
  493. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Utilities.html +19 -27
  494. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +43 -57
  495. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +47 -52
  496. data/vendor/local/share/gtk-doc/html/gio/gio-GActionGroup-exporter.html +11 -13
  497. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +20 -27
  498. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +9 -11
  499. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +9 -11
  500. data/vendor/local/share/gtk-doc/html/gio/gio-GDBusError.html +59 -67
  501. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +16 -21
  502. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +21 -17
  503. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +9 -12
  504. data/vendor/local/share/gtk-doc/html/gio/gio-GMenuModel-exporter.html +11 -13
  505. data/vendor/local/share/gtk-doc/html/gio/gio-GSettingsSchema-GSettingsSchemaSource.html +147 -114
  506. data/vendor/local/share/gtk-doc/html/gio/gio-GWin32InputStream.html +12 -16
  507. data/vendor/local/share/gtk-doc/html/gio/gio-GWin32OutputStream.html +13 -17
  508. data/vendor/local/share/gtk-doc/html/gio/gio-GWin32RegistryKey.html +2066 -0
  509. data/vendor/local/share/gtk-doc/html/gio/gio-Owning-Bus-Names.html +29 -32
  510. data/vendor/local/share/gtk-doc/html/gio/gio-TLS-Overview.html +16 -13
  511. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +54 -75
  512. data/vendor/local/share/gtk-doc/html/gio/gio-Watching-Bus-Names.html +27 -30
  513. data/vendor/local/share/gtk-doc/html/gio/gio-gnetworking.h.html +5 -6
  514. data/vendor/local/share/gtk-doc/html/gio/gio-gpollableutils.html +16 -21
  515. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +11 -8
  516. data/vendor/local/share/gtk-doc/html/gio/gio-querymodules.html +4 -5
  517. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +194 -140
  518. data/vendor/local/share/gtk-doc/html/gio/glib-compile-resources.html +6 -7
  519. data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +12 -6
  520. data/vendor/local/share/gtk-doc/html/gio/gresource-tool.html +5 -6
  521. data/vendor/local/share/gtk-doc/html/gio/gsettings-tool.html +5 -6
  522. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +3 -4
  523. data/vendor/local/share/gtk-doc/html/gio/icons.html +3 -4
  524. data/vendor/local/share/gtk-doc/html/gio/index.html +41 -45
  525. data/vendor/local/share/gtk-doc/html/gio/index.sgml +204 -137
  526. data/vendor/local/share/gtk-doc/html/gio/migrating.html +22 -44
  527. data/vendor/local/share/gtk-doc/html/gio/networking.html +6 -4
  528. data/vendor/local/share/gtk-doc/html/gio/permissions.html +3 -4
  529. data/vendor/local/share/gtk-doc/html/gio/pt01.html +3 -4
  530. data/vendor/local/share/gtk-doc/html/gio/pt02.html +20 -5
  531. data/vendor/local/share/gtk-doc/html/gio/registry.html +32 -0
  532. data/vendor/local/share/gtk-doc/html/gio/resolver.html +3 -4
  533. data/vendor/local/share/gtk-doc/html/gio/resources.html +3 -4
  534. data/vendor/local/share/gtk-doc/html/gio/running-gio-apps.html +3 -4
  535. data/vendor/local/share/gtk-doc/html/gio/settings.html +3 -4
  536. data/vendor/local/share/gtk-doc/html/gio/streaming.html +3 -4
  537. data/vendor/local/share/gtk-doc/html/gio/style.css +9 -6
  538. data/vendor/local/share/gtk-doc/html/gio/subprocesses.html +3 -4
  539. data/vendor/local/share/gtk-doc/html/gio/testing.html +3 -4
  540. data/vendor/local/share/gtk-doc/html/gio/tls.html +12 -4
  541. data/vendor/local/share/gtk-doc/html/gio/tools.html +3 -4
  542. data/vendor/local/share/gtk-doc/html/gio/types.html +3 -4
  543. data/vendor/local/share/gtk-doc/html/gio/utils.html +3 -4
  544. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +3 -4
  545. data/vendor/local/share/gtk-doc/html/glib/annotation-glossary.html +16 -6
  546. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +3 -4
  547. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +3 -4
  548. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +3 -4
  549. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +3 -4
  550. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +3 -4
  551. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +3 -4
  552. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +3 -4
  553. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +3 -4
  554. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +3 -4
  555. data/vendor/local/share/gtk-doc/html/glib/api-index-2-26.html +3 -4
  556. data/vendor/local/share/gtk-doc/html/glib/api-index-2-28.html +3 -4
  557. data/vendor/local/share/gtk-doc/html/glib/api-index-2-30.html +3 -4
  558. data/vendor/local/share/gtk-doc/html/glib/api-index-2-32.html +3 -4
  559. data/vendor/local/share/gtk-doc/html/glib/api-index-2-34.html +3 -4
  560. data/vendor/local/share/gtk-doc/html/glib/api-index-2-36.html +3 -4
  561. data/vendor/local/share/gtk-doc/html/glib/api-index-2-38.html +3 -4
  562. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +3 -4
  563. data/vendor/local/share/gtk-doc/html/glib/api-index-2-40.html +7 -4
  564. data/vendor/local/share/gtk-doc/html/glib/api-index-2-42.html +12 -6
  565. data/vendor/local/share/gtk-doc/html/glib/api-index-2-44.html +5 -6
  566. data/vendor/local/share/gtk-doc/html/glib/api-index-2-46.html +68 -0
  567. data/vendor/local/share/gtk-doc/html/glib/api-index-2-48.html +68 -0
  568. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +3 -4
  569. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +3 -4
  570. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +46 -8
  571. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +80 -9
  572. data/vendor/local/share/gtk-doc/html/glib/deprecated.html +3 -4
  573. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +68 -85
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +254 -84
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +130 -144
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +19 -23
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +33 -46
  578. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +22 -26
  579. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +89 -82
  580. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +87 -112
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Bounds-checked-integer-arithmetic.html +384 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +100 -114
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +83 -143
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +14 -19
  585. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +49 -64
  586. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +141 -156
  587. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +32 -38
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Data-HMACs.html +24 -31
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +28 -32
  590. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +108 -141
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Deprecated-Thread-APIs.html +98 -113
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +89 -112
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +93 -125
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +50 -58
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +189 -171
  596. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +99 -134
  597. data/vendor/local/share/gtk-doc/html/glib/glib-GDateTime.html +172 -217
  598. data/vendor/local/share/gtk-doc/html/glib/glib-GTimeZone.html +32 -42
  599. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +430 -451
  600. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +53 -66
  601. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +12 -18
  602. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +167 -192
  603. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +58 -78
  604. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +14 -20
  605. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +70 -79
  606. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +68 -102
  607. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +166 -183
  608. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +33 -41
  609. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +80 -92
  610. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +101 -119
  611. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +102 -75
  612. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +133 -60
  613. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +192 -162
  614. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +107 -155
  615. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +69 -103
  616. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +12 -16
  617. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +199 -230
  618. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +54 -67
  619. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +15 -22
  620. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +24 -39
  621. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +29 -36
  622. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +187 -173
  623. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +13 -17
  624. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +104 -117
  625. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +62 -89
  626. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +26 -38
  627. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +15 -23
  628. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +13 -18
  629. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +210 -261
  630. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +95 -101
  631. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +306 -268
  632. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +373 -369
  633. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +79 -45
  634. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +316 -319
  635. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +12 -15
  636. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +44 -26
  637. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +20 -21
  638. data/vendor/local/share/gtk-doc/html/glib/glib-UNIX-specific-utilities-and-integration.html +44 -53
  639. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +21 -26
  640. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +200 -220
  641. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +51 -28
  642. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +38 -41
  643. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +25 -34
  644. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +3 -4
  645. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +3 -4
  646. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +3 -4
  647. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +3 -4
  648. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +3 -4
  649. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +3 -4
  650. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +6 -4
  651. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +3 -4
  652. data/vendor/local/share/gtk-doc/html/glib/glib-programming.html +4 -5
  653. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +14 -15
  654. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +3 -4
  655. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +3 -4
  656. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +3 -4
  657. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +44 -59
  658. data/vendor/local/share/gtk-doc/html/glib/glib.html +3 -4
  659. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +3 -4
  660. data/vendor/local/share/gtk-doc/html/glib/gtester.html +3 -4
  661. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +149 -149
  662. data/vendor/local/share/gtk-doc/html/glib/gvariant-text.html +11 -12
  663. data/vendor/local/share/gtk-doc/html/glib/index.html +9 -5
  664. data/vendor/local/share/gtk-doc/html/glib/index.sgml +36 -2
  665. data/vendor/local/share/gtk-doc/html/glib/style.css +9 -6
  666. data/vendor/local/share/gtk-doc/html/glib/tools.html +3 -4
  667. data/vendor/local/share/gtk-doc/html/gobject/GBinding.html +53 -57
  668. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +72 -77
  669. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +19 -20
  670. data/vendor/local/share/gtk-doc/html/gobject/annotation-glossary.html +14 -6
  671. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +3 -4
  672. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +3 -4
  673. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +3 -4
  674. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +3 -4
  675. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +3 -4
  676. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +3 -4
  677. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +3 -4
  678. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-26.html +3 -4
  679. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-28.html +3 -4
  680. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-30.html +3 -4
  681. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-32.html +3 -4
  682. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-34.html +3 -4
  683. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-36.html +3 -4
  684. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-38.html +3 -4
  685. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +3 -4
  686. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-40.html +3 -4
  687. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-42.html +3 -4
  688. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-44.html +5 -6
  689. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-46.html +34 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +3 -4
  691. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +3 -4
  692. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +3 -4
  693. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +7 -8
  694. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +22 -17
  695. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +85 -135
  696. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +80 -144
  697. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +7 -8
  698. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +59 -75
  699. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +20 -21
  700. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +19 -20
  701. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +68 -89
  702. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +227 -218
  703. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +48 -57
  704. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +125 -96
  705. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +78 -90
  706. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +143 -138
  707. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +226 -285
  708. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +306 -289
  709. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +450 -448
  710. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +22 -23
  711. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +11 -12
  712. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +32 -91
  713. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +134 -133
  714. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +3 -4
  715. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +4 -8
  716. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +89 -98
  717. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +119 -112
  718. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +199 -183
  719. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +30 -30
  720. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +32 -33
  721. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +80 -32
  722. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +73 -53
  723. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +52 -50
  724. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +255 -133
  725. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +147 -111
  726. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +65 -122
  727. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-override.html +93 -79
  728. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-prerequisite.html +80 -54
  729. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +82 -87
  730. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +126 -62
  731. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +61 -54
  732. data/vendor/local/share/gtk-doc/html/gobject/index.html +10 -10
  733. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +4 -2
  734. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +3 -4
  735. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +3 -4
  736. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +10 -11
  737. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +3 -4
  738. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +3 -4
  739. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +3 -4
  740. data/vendor/local/share/gtk-doc/html/gobject/signal.html +98 -198
  741. data/vendor/local/share/gtk-doc/html/gobject/style.css +9 -6
  742. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +3 -4
  743. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +3 -4
  744. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +10 -11
  745. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +3 -4
  746. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +3 -4
  747. data/vendor/local/share/gtk-doc/html/p11-kit/config-example.html +3 -4
  748. data/vendor/local/share/gtk-doc/html/p11-kit/config-files.html +3 -4
  749. data/vendor/local/share/gtk-doc/html/p11-kit/config.html +3 -4
  750. data/vendor/local/share/gtk-doc/html/p11-kit/devel-building-style.html +3 -4
  751. data/vendor/local/share/gtk-doc/html/p11-kit/devel-building.html +3 -4
  752. data/vendor/local/share/gtk-doc/html/p11-kit/devel-commands.html +3 -4
  753. data/vendor/local/share/gtk-doc/html/p11-kit/devel-debugging.html +3 -4
  754. data/vendor/local/share/gtk-doc/html/p11-kit/devel-paths.html +3 -4
  755. data/vendor/local/share/gtk-doc/html/p11-kit/devel-testing.html +3 -4
  756. data/vendor/local/share/gtk-doc/html/p11-kit/devel.html +3 -4
  757. data/vendor/local/share/gtk-doc/html/p11-kit/gtk-doc.css +9 -6
  758. data/vendor/local/share/gtk-doc/html/p11-kit/index.html +2 -3
  759. data/vendor/local/share/gtk-doc/html/p11-kit/index.sgml +22 -0
  760. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Deprecated.html +3 -13
  761. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Future.html +3 -14
  762. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Modules.html +3 -15
  763. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-PIN-Callbacks.html +3 -14
  764. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-URIs.html +3 -18
  765. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Utilities.html +3 -8
  766. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit.devhelp2 +22 -1
  767. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit.html +2 -3
  768. data/vendor/local/share/gtk-doc/html/p11-kit/pkcs11-conf.html +7 -8
  769. data/vendor/local/share/gtk-doc/html/p11-kit/reference.html +3 -4
  770. data/vendor/local/share/gtk-doc/html/p11-kit/sharing-managed.html +3 -4
  771. data/vendor/local/share/gtk-doc/html/p11-kit/sharing.html +3 -4
  772. data/vendor/local/share/gtk-doc/html/p11-kit/tools.html +3 -4
  773. data/vendor/local/share/gtk-doc/html/p11-kit/trust-disable.html +3 -4
  774. data/vendor/local/share/gtk-doc/html/p11-kit/trust-glib-networking.html +3 -4
  775. data/vendor/local/share/gtk-doc/html/p11-kit/trust-module.html +3 -4
  776. data/vendor/local/share/gtk-doc/html/p11-kit/trust-nss.html +3 -4
  777. data/vendor/local/share/gtk-doc/html/p11-kit/trust.html +3 -4
  778. data/vendor/local/share/info/gmp.info +153 -158
  779. data/vendor/local/share/info/gmp.info-1 +131 -178
  780. data/vendor/local/share/info/gmp.info-2 +250 -193
  781. data/vendor/local/share/info/libtasn1.info +2 -2
  782. data/vendor/local/share/license/gmp/AUTHORS +1 -1
  783. data/vendor/local/share/license/pcre/AUTHORS +45 -0
  784. data/vendor/local/share/license/pcre/COPYING +5 -0
  785. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  786. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  787. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  789. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  791. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  792. data/vendor/local/share/locale/cs/LC_MESSAGES/gnutls.mo +0 -0
  793. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  794. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  795. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  796. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  797. data/vendor/local/share/locale/de/LC_MESSAGES/gnutls.mo +0 -0
  798. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  799. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  801. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gnutls.mo +0 -0
  802. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  803. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gnutls.mo +0 -0
  804. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  805. data/vendor/local/share/locale/eo/LC_MESSAGES/gnutls.mo +0 -0
  806. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  807. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  808. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  809. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  810. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  811. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/fi/LC_MESSAGES/gnutls.mo +0 -0
  813. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  814. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/fr/LC_MESSAGES/gnutls.mo +0 -0
  816. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  817. data/vendor/local/share/locale/gd/LC_MESSAGES/glib20.mo +0 -0
  818. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  819. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  820. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/hr/LC_MESSAGES/gettext-runtime.mo +0 -0
  822. data/vendor/local/share/locale/hu/LC_MESSAGES/gettext-runtime.mo +0 -0
  823. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  825. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  826. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  828. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/it/LC_MESSAGES/gnutls.mo +0 -0
  830. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  831. data/vendor/local/share/locale/ja/LC_MESSAGES/glib-networking.mo +0 -0
  832. data/vendor/local/share/locale/kk/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  834. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  835. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  836. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  837. data/vendor/local/share/locale/ms/LC_MESSAGES/gnutls.mo +0 -0
  838. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  839. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  840. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  841. data/vendor/local/share/locale/nl/LC_MESSAGES/gnutls.mo +0 -0
  842. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  843. data/vendor/local/share/locale/oc/LC_MESSAGES/glib-networking.mo +0 -0
  844. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  845. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  846. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  847. data/vendor/local/share/locale/pl/LC_MESSAGES/gnutls.mo +0 -0
  848. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  849. data/vendor/local/share/locale/pt/LC_MESSAGES/glib-networking.mo +0 -0
  850. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  851. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  852. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  853. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  854. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  855. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  856. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  857. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  858. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  859. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  860. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  861. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  862. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  863. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  864. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  865. data/vendor/local/share/locale/sv/LC_MESSAGES/gnutls.mo +0 -0
  866. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  867. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  868. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  869. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  870. data/vendor/local/share/locale/uk/LC_MESSAGES/gnutls.mo +0 -0
  871. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  872. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  873. data/vendor/local/share/locale/vi/LC_MESSAGES/gnutls.mo +0 -0
  874. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  875. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  876. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gnutls.mo +0 -0
  877. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  878. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  879. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  880. data/vendor/local/share/man/man1/asn1Coding.1 +1 -1
  881. data/vendor/local/share/man/man1/asn1Decoding.1 +1 -1
  882. data/vendor/local/share/man/man1/asn1Parser.1 +1 -1
  883. data/vendor/local/share/man/man1/envsubst.1 +1 -1
  884. data/vendor/local/share/man/man1/gapplication.1 +2 -2
  885. data/vendor/local/share/man/man1/gdbus-codegen.1 +23 -22
  886. data/vendor/local/share/man/man1/gdbus.1 +2 -2
  887. data/vendor/local/share/man/man1/gettext.1 +1 -1
  888. data/vendor/local/share/man/man1/gio-querymodules.1 +2 -2
  889. data/vendor/local/share/man/man1/glib-compile-resources.1 +2 -2
  890. data/vendor/local/share/man/man1/glib-compile-schemas.1 +7 -2
  891. data/vendor/local/share/man/man1/glib-genmarshal.1 +2 -2
  892. data/vendor/local/share/man/man1/glib-gettextize.1 +2 -2
  893. data/vendor/local/share/man/man1/glib-mkenums.1 +2 -2
  894. data/vendor/local/share/man/man1/gobject-query.1 +2 -2
  895. data/vendor/local/share/man/man1/gresource.1 +2 -2
  896. data/vendor/local/share/man/man1/gsettings.1 +2 -2
  897. data/vendor/local/share/man/man1/gtester-report.1 +2 -2
  898. data/vendor/local/share/man/man1/gtester.1 +2 -2
  899. data/vendor/local/share/man/man1/ngettext.1 +1 -1
  900. data/vendor/local/share/man/man1/pcre-config.1 +92 -0
  901. data/vendor/local/share/man/man1/pcregrep.1 +683 -0
  902. data/vendor/local/share/man/man1/pcretest.1 +1156 -0
  903. data/vendor/local/share/man/man3/asn1_array2tree.3 +1 -1
  904. data/vendor/local/share/man/man3/asn1_bit_der.3 +1 -1
  905. data/vendor/local/share/man/man3/asn1_check_version.3 +1 -1
  906. data/vendor/local/share/man/man3/asn1_copy_node.3 +1 -1
  907. data/vendor/local/share/man/man3/asn1_create_element.3 +1 -1
  908. data/vendor/local/share/man/man3/asn1_decode_simple_ber.3 +1 -1
  909. data/vendor/local/share/man/man3/asn1_decode_simple_der.3 +1 -1
  910. data/vendor/local/share/man/man3/asn1_delete_element.3 +1 -1
  911. data/vendor/local/share/man/man3/asn1_delete_structure.3 +1 -1
  912. data/vendor/local/share/man/man3/asn1_delete_structure2.3 +1 -1
  913. data/vendor/local/share/man/man3/asn1_der_coding.3 +1 -1
  914. data/vendor/local/share/man/man3/asn1_der_decoding.3 +1 -1
  915. data/vendor/local/share/man/man3/asn1_der_decoding2.3 +1 -1
  916. data/vendor/local/share/man/man3/asn1_der_decoding_element.3 +1 -1
  917. data/vendor/local/share/man/man3/asn1_der_decoding_startEnd.3 +1 -1
  918. data/vendor/local/share/man/man3/asn1_dup_node.3 +1 -1
  919. data/vendor/local/share/man/man3/asn1_encode_simple_der.3 +1 -1
  920. data/vendor/local/share/man/man3/asn1_expand_any_defined_by.3 +1 -1
  921. data/vendor/local/share/man/man3/asn1_expand_octet_string.3 +1 -1
  922. data/vendor/local/share/man/man3/asn1_find_node.3 +1 -1
  923. data/vendor/local/share/man/man3/asn1_find_structure_from_oid.3 +1 -1
  924. data/vendor/local/share/man/man3/asn1_get_bit_der.3 +1 -1
  925. data/vendor/local/share/man/man3/asn1_get_length_ber.3 +1 -1
  926. data/vendor/local/share/man/man3/asn1_get_length_der.3 +1 -1
  927. data/vendor/local/share/man/man3/asn1_get_object_id_der.3 +1 -1
  928. data/vendor/local/share/man/man3/asn1_get_octet_der.3 +1 -1
  929. data/vendor/local/share/man/man3/asn1_get_tag_der.3 +1 -1
  930. data/vendor/local/share/man/man3/asn1_length_der.3 +1 -1
  931. data/vendor/local/share/man/man3/asn1_number_of_elements.3 +1 -1
  932. data/vendor/local/share/man/man3/asn1_octet_der.3 +1 -1
  933. data/vendor/local/share/man/man3/asn1_parser2array.3 +1 -1
  934. data/vendor/local/share/man/man3/asn1_parser2tree.3 +1 -1
  935. data/vendor/local/share/man/man3/asn1_perror.3 +1 -1
  936. data/vendor/local/share/man/man3/asn1_print_structure.3 +1 -1
  937. data/vendor/local/share/man/man3/asn1_read_node_value.3 +1 -1
  938. data/vendor/local/share/man/man3/asn1_read_tag.3 +1 -1
  939. data/vendor/local/share/man/man3/asn1_read_value.3 +1 -1
  940. data/vendor/local/share/man/man3/asn1_read_value_type.3 +1 -1
  941. data/vendor/local/share/man/man3/asn1_strerror.3 +1 -1
  942. data/vendor/local/share/man/man3/asn1_write_value.3 +1 -1
  943. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +1 -1
  944. data/vendor/local/share/man/man3/bindtextdomain.3 +1 -1
  945. data/vendor/local/share/man/man3/gettext.3 +1 -1
  946. data/vendor/local/share/man/man3/ngettext.3 +1 -1
  947. data/vendor/local/share/man/man3/pcre.3 +230 -0
  948. data/vendor/local/share/man/man3/pcre16.3 +371 -0
  949. data/vendor/local/share/man/man3/pcre16_assign_jit_stack.3 +59 -0
  950. data/vendor/local/share/man/man3/pcre16_compile.3 +96 -0
  951. data/vendor/local/share/man/man3/pcre16_compile2.3 +101 -0
  952. data/vendor/local/share/man/man3/pcre16_config.3 +79 -0
  953. data/vendor/local/share/man/man3/pcre16_copy_named_substring.3 +51 -0
  954. data/vendor/local/share/man/man3/pcre16_copy_substring.3 +47 -0
  955. data/vendor/local/share/man/man3/pcre16_dfa_exec.3 +118 -0
  956. data/vendor/local/share/man/man3/pcre16_exec.3 +99 -0
  957. data/vendor/local/share/man/man3/pcre16_free_study.3 +31 -0
  958. data/vendor/local/share/man/man3/pcre16_free_substring.3 +31 -0
  959. data/vendor/local/share/man/man3/pcre16_free_substring_list.3 +31 -0
  960. data/vendor/local/share/man/man3/pcre16_fullinfo.3 +103 -0
  961. data/vendor/local/share/man/man3/pcre16_get_named_substring.3 +54 -0
  962. data/vendor/local/share/man/man3/pcre16_get_stringnumber.3 +43 -0
  963. data/vendor/local/share/man/man3/pcre16_get_stringtable_entries.3 +46 -0
  964. data/vendor/local/share/man/man3/pcre16_get_substring.3 +50 -0
  965. data/vendor/local/share/man/man3/pcre16_get_substring_list.3 +47 -0
  966. data/vendor/local/share/man/man3/pcre16_jit_exec.3 +96 -0
  967. data/vendor/local/share/man/man3/pcre16_jit_stack_alloc.3 +43 -0
  968. data/vendor/local/share/man/man3/pcre16_jit_stack_free.3 +35 -0
  969. data/vendor/local/share/man/man3/pcre16_maketables.3 +33 -0
  970. data/vendor/local/share/man/man3/pcre16_pattern_to_host_byte_order.3 +44 -0
  971. data/vendor/local/share/man/man3/pcre16_refcount.3 +36 -0
  972. data/vendor/local/share/man/man3/pcre16_study.3 +54 -0
  973. data/vendor/local/share/man/man3/pcre16_utf16_to_host_byte_order.3 +45 -0
  974. data/vendor/local/share/man/man3/pcre16_version.3 +31 -0
  975. data/vendor/local/share/man/man3/pcre32.3 +369 -0
  976. data/vendor/local/share/man/man3/pcre32_assign_jit_stack.3 +59 -0
  977. data/vendor/local/share/man/man3/pcre32_compile.3 +96 -0
  978. data/vendor/local/share/man/man3/pcre32_compile2.3 +101 -0
  979. data/vendor/local/share/man/man3/pcre32_config.3 +79 -0
  980. data/vendor/local/share/man/man3/pcre32_copy_named_substring.3 +51 -0
  981. data/vendor/local/share/man/man3/pcre32_copy_substring.3 +47 -0
  982. data/vendor/local/share/man/man3/pcre32_dfa_exec.3 +118 -0
  983. data/vendor/local/share/man/man3/pcre32_exec.3 +99 -0
  984. data/vendor/local/share/man/man3/pcre32_free_study.3 +31 -0
  985. data/vendor/local/share/man/man3/pcre32_free_substring.3 +31 -0
  986. data/vendor/local/share/man/man3/pcre32_free_substring_list.3 +31 -0
  987. data/vendor/local/share/man/man3/pcre32_fullinfo.3 +103 -0
  988. data/vendor/local/share/man/man3/pcre32_get_named_substring.3 +54 -0
  989. data/vendor/local/share/man/man3/pcre32_get_stringnumber.3 +43 -0
  990. data/vendor/local/share/man/man3/pcre32_get_stringtable_entries.3 +46 -0
  991. data/vendor/local/share/man/man3/pcre32_get_substring.3 +50 -0
  992. data/vendor/local/share/man/man3/pcre32_get_substring_list.3 +47 -0
  993. data/vendor/local/share/man/man3/pcre32_jit_exec.3 +96 -0
  994. data/vendor/local/share/man/man3/pcre32_jit_stack_alloc.3 +43 -0
  995. data/vendor/local/share/man/man3/pcre32_jit_stack_free.3 +35 -0
  996. data/vendor/local/share/man/man3/pcre32_maketables.3 +33 -0
  997. data/vendor/local/share/man/man3/pcre32_pattern_to_host_byte_order.3 +44 -0
  998. data/vendor/local/share/man/man3/pcre32_refcount.3 +36 -0
  999. data/vendor/local/share/man/man3/pcre32_study.3 +54 -0
  1000. data/vendor/local/share/man/man3/pcre32_utf32_to_host_byte_order.3 +45 -0
  1001. data/vendor/local/share/man/man3/pcre32_version.3 +31 -0
  1002. data/vendor/local/share/man/man3/pcre_assign_jit_stack.3 +59 -0
  1003. data/vendor/local/share/man/man3/pcre_compile.3 +96 -0
  1004. data/vendor/local/share/man/man3/pcre_compile2.3 +101 -0
  1005. data/vendor/local/share/man/man3/pcre_config.3 +79 -0
  1006. data/vendor/local/share/man/man3/pcre_copy_named_substring.3 +51 -0
  1007. data/vendor/local/share/man/man3/pcre_copy_substring.3 +47 -0
  1008. data/vendor/local/share/man/man3/pcre_dfa_exec.3 +118 -0
  1009. data/vendor/local/share/man/man3/pcre_exec.3 +99 -0
  1010. data/vendor/local/share/man/man3/pcre_free_study.3 +31 -0
  1011. data/vendor/local/share/man/man3/pcre_free_substring.3 +31 -0
  1012. data/vendor/local/share/man/man3/pcre_free_substring_list.3 +31 -0
  1013. data/vendor/local/share/man/man3/pcre_fullinfo.3 +103 -0
  1014. data/vendor/local/share/man/man3/pcre_get_named_substring.3 +54 -0
  1015. data/vendor/local/share/man/man3/pcre_get_stringnumber.3 +43 -0
  1016. data/vendor/local/share/man/man3/pcre_get_stringtable_entries.3 +46 -0
  1017. data/vendor/local/share/man/man3/pcre_get_substring.3 +50 -0
  1018. data/vendor/local/share/man/man3/pcre_get_substring_list.3 +47 -0
  1019. data/vendor/local/share/man/man3/pcre_jit_exec.3 +96 -0
  1020. data/vendor/local/share/man/man3/pcre_jit_stack_alloc.3 +43 -0
  1021. data/vendor/local/share/man/man3/pcre_jit_stack_free.3 +35 -0
  1022. data/vendor/local/share/man/man3/pcre_maketables.3 +33 -0
  1023. data/vendor/local/share/man/man3/pcre_pattern_to_host_byte_order.3 +44 -0
  1024. data/vendor/local/share/man/man3/pcre_refcount.3 +36 -0
  1025. data/vendor/local/share/man/man3/pcre_study.3 +54 -0
  1026. data/vendor/local/share/man/man3/pcre_utf16_to_host_byte_order.3 +45 -0
  1027. data/vendor/local/share/man/man3/pcre_utf32_to_host_byte_order.3 +45 -0
  1028. data/vendor/local/share/man/man3/pcre_version.3 +31 -0
  1029. data/vendor/local/share/man/man3/pcreapi.3 +2919 -0
  1030. data/vendor/local/share/man/man3/pcrebuild.3 +550 -0
  1031. data/vendor/local/share/man/man3/pcrecallout.3 +255 -0
  1032. data/vendor/local/share/man/man3/pcrecompat.3 +200 -0
  1033. data/vendor/local/share/man/man3/pcrecpp.3 +348 -0
  1034. data/vendor/local/share/man/man3/pcredemo.3 +424 -0
  1035. data/vendor/local/share/man/man3/pcrejit.3 +431 -0
  1036. data/vendor/local/share/man/man3/pcrelimits.3 +71 -0
  1037. data/vendor/local/share/man/man3/pcrematching.3 +214 -0
  1038. data/vendor/local/share/man/man3/pcrepartial.3 +476 -0
  1039. data/vendor/local/share/man/man3/pcrepattern.3 +3301 -0
  1040. data/vendor/local/share/man/man3/pcreperform.3 +177 -0
  1041. data/vendor/local/share/man/man3/pcreposix.3 +267 -0
  1042. data/vendor/local/share/man/man3/pcreprecompile.3 +155 -0
  1043. data/vendor/local/share/man/man3/pcresample.3 +99 -0
  1044. data/vendor/local/share/man/man3/pcrestack.3 +215 -0
  1045. data/vendor/local/share/man/man3/pcresyntax.3 +540 -0
  1046. data/vendor/local/share/man/man3/pcreunicode.3 +249 -0
  1047. data/vendor/local/share/man/man3/textdomain.3 +1 -1
  1048. metadata +233 -22
  1049. data/lib/2.0/glib2.so +0 -0
  1050. data/lib/2.1/glib2.so +0 -0
  1051. data/vendor/local/bin/libhogweed-4-1.dll +0 -0
  1052. data/vendor/local/share/gtk-doc/html/gio/ExampleAnimal.html +0 -1537
  1053. data/vendor/local/share/gtk-doc/html/gio/ExampleCat.html +0 -679
  1054. data/vendor/local/share/gtk-doc/html/gio/ExampleObject.html +0 -572
  1055. data/vendor/local/share/gtk-doc/html/gio/ExampleObjectManagerClient.html +0 -561
  1056. data/vendor/local/share/gtk-doc/html/gio/ch31.html +0 -75
  1057. data/vendor/local/share/gtk-doc/html/gio/ch32s02.html +0 -41
  1058. data/vendor/local/share/gtk-doc/html/gio/ch32s03.html +0 -39
  1059. data/vendor/local/share/gtk-doc/html/gio/ch33s04.html +0 -46
  1060. data/vendor/local/share/gtk-doc/html/gio/ch33s05.html +0 -48
  1061. data/vendor/local/share/gtk-doc/html/gio/gdbus-org.gtk.GDBus.Example.ObjectManager.Animal.html +0 -161
  1062. data/vendor/local/share/gtk-doc/html/gio/gdbus-org.gtk.GDBus.Example.ObjectManager.Cat.html +0 -51
@@ -0,0 +1,242 @@
1
+ <html>
2
+ <head>
3
+ <title>pcrematching specification</title>
4
+ </head>
5
+ <body bgcolor="#FFFFFF" text="#00005A" link="#0066FF" alink="#3399FF" vlink="#2222BB">
6
+ <h1>pcrematching man page</h1>
7
+ <p>
8
+ Return to the <a href="index.html">PCRE index page</a>.
9
+ </p>
10
+ <p>
11
+ This page is part of the PCRE HTML documentation. It was generated automatically
12
+ from the original man page. If there is any nonsense in it, please consult the
13
+ man page, in case the conversion went wrong.
14
+ <br>
15
+ <ul>
16
+ <li><a name="TOC1" href="#SEC1">PCRE MATCHING ALGORITHMS</a>
17
+ <li><a name="TOC2" href="#SEC2">REGULAR EXPRESSIONS AS TREES</a>
18
+ <li><a name="TOC3" href="#SEC3">THE STANDARD MATCHING ALGORITHM</a>
19
+ <li><a name="TOC4" href="#SEC4">THE ALTERNATIVE MATCHING ALGORITHM</a>
20
+ <li><a name="TOC5" href="#SEC5">ADVANTAGES OF THE ALTERNATIVE ALGORITHM</a>
21
+ <li><a name="TOC6" href="#SEC6">DISADVANTAGES OF THE ALTERNATIVE ALGORITHM</a>
22
+ <li><a name="TOC7" href="#SEC7">AUTHOR</a>
23
+ <li><a name="TOC8" href="#SEC8">REVISION</a>
24
+ </ul>
25
+ <br><a name="SEC1" href="#TOC1">PCRE MATCHING ALGORITHMS</a><br>
26
+ <P>
27
+ This document describes the two different algorithms that are available in PCRE
28
+ for matching a compiled regular expression against a given subject string. The
29
+ "standard" algorithm is the one provided by the <b>pcre_exec()</b>,
30
+ <b>pcre16_exec()</b> and <b>pcre32_exec()</b> functions. These work in the same
31
+ as as Perl's matching function, and provide a Perl-compatible matching operation.
32
+ The just-in-time (JIT) optimization that is described in the
33
+ <a href="pcrejit.html"><b>pcrejit</b></a>
34
+ documentation is compatible with these functions.
35
+ </P>
36
+ <P>
37
+ An alternative algorithm is provided by the <b>pcre_dfa_exec()</b>,
38
+ <b>pcre16_dfa_exec()</b> and <b>pcre32_dfa_exec()</b> functions; they operate in
39
+ a different way, and are not Perl-compatible. This alternative has advantages
40
+ and disadvantages compared with the standard algorithm, and these are described
41
+ below.
42
+ </P>
43
+ <P>
44
+ When there is only one possible way in which a given subject string can match a
45
+ pattern, the two algorithms give the same answer. A difference arises, however,
46
+ when there are multiple possibilities. For example, if the pattern
47
+ <pre>
48
+ ^&#60;.*&#62;
49
+ </pre>
50
+ is matched against the string
51
+ <pre>
52
+ &#60;something&#62; &#60;something else&#62; &#60;something further&#62;
53
+ </pre>
54
+ there are three possible answers. The standard algorithm finds only one of
55
+ them, whereas the alternative algorithm finds all three.
56
+ </P>
57
+ <br><a name="SEC2" href="#TOC1">REGULAR EXPRESSIONS AS TREES</a><br>
58
+ <P>
59
+ The set of strings that are matched by a regular expression can be represented
60
+ as a tree structure. An unlimited repetition in the pattern makes the tree of
61
+ infinite size, but it is still a tree. Matching the pattern to a given subject
62
+ string (from a given starting point) can be thought of as a search of the tree.
63
+ There are two ways to search a tree: depth-first and breadth-first, and these
64
+ correspond to the two matching algorithms provided by PCRE.
65
+ </P>
66
+ <br><a name="SEC3" href="#TOC1">THE STANDARD MATCHING ALGORITHM</a><br>
67
+ <P>
68
+ In the terminology of Jeffrey Friedl's book "Mastering Regular
69
+ Expressions", the standard algorithm is an "NFA algorithm". It conducts a
70
+ depth-first search of the pattern tree. That is, it proceeds along a single
71
+ path through the tree, checking that the subject matches what is required. When
72
+ there is a mismatch, the algorithm tries any alternatives at the current point,
73
+ and if they all fail, it backs up to the previous branch point in the tree, and
74
+ tries the next alternative branch at that level. This often involves backing up
75
+ (moving to the left) in the subject string as well. The order in which
76
+ repetition branches are tried is controlled by the greedy or ungreedy nature of
77
+ the quantifier.
78
+ </P>
79
+ <P>
80
+ If a leaf node is reached, a matching string has been found, and at that point
81
+ the algorithm stops. Thus, if there is more than one possible match, this
82
+ algorithm returns the first one that it finds. Whether this is the shortest,
83
+ the longest, or some intermediate length depends on the way the greedy and
84
+ ungreedy repetition quantifiers are specified in the pattern.
85
+ </P>
86
+ <P>
87
+ Because it ends up with a single path through the tree, it is relatively
88
+ straightforward for this algorithm to keep track of the substrings that are
89
+ matched by portions of the pattern in parentheses. This provides support for
90
+ capturing parentheses and back references.
91
+ </P>
92
+ <br><a name="SEC4" href="#TOC1">THE ALTERNATIVE MATCHING ALGORITHM</a><br>
93
+ <P>
94
+ This algorithm conducts a breadth-first search of the tree. Starting from the
95
+ first matching point in the subject, it scans the subject string from left to
96
+ right, once, character by character, and as it does this, it remembers all the
97
+ paths through the tree that represent valid matches. In Friedl's terminology,
98
+ this is a kind of "DFA algorithm", though it is not implemented as a
99
+ traditional finite state machine (it keeps multiple states active
100
+ simultaneously).
101
+ </P>
102
+ <P>
103
+ Although the general principle of this matching algorithm is that it scans the
104
+ subject string only once, without backtracking, there is one exception: when a
105
+ lookaround assertion is encountered, the characters following or preceding the
106
+ current point have to be independently inspected.
107
+ </P>
108
+ <P>
109
+ The scan continues until either the end of the subject is reached, or there are
110
+ no more unterminated paths. At this point, terminated paths represent the
111
+ different matching possibilities (if there are none, the match has failed).
112
+ Thus, if there is more than one possible match, this algorithm finds all of
113
+ them, and in particular, it finds the longest. The matches are returned in
114
+ decreasing order of length. There is an option to stop the algorithm after the
115
+ first match (which is necessarily the shortest) is found.
116
+ </P>
117
+ <P>
118
+ Note that all the matches that are found start at the same point in the
119
+ subject. If the pattern
120
+ <pre>
121
+ cat(er(pillar)?)?
122
+ </pre>
123
+ is matched against the string "the caterpillar catchment", the result will be
124
+ the three strings "caterpillar", "cater", and "cat" that start at the fifth
125
+ character of the subject. The algorithm does not automatically move on to find
126
+ matches that start at later positions.
127
+ </P>
128
+ <P>
129
+ PCRE's "auto-possessification" optimization usually applies to character
130
+ repeats at the end of a pattern (as well as internally). For example, the
131
+ pattern "a\d+" is compiled as if it were "a\d++" because there is no point
132
+ even considering the possibility of backtracking into the repeated digits. For
133
+ DFA matching, this means that only one possible match is found. If you really
134
+ do want multiple matches in such cases, either use an ungreedy repeat
135
+ ("a\d+?") or set the PCRE_NO_AUTO_POSSESS option when compiling.
136
+ </P>
137
+ <P>
138
+ There are a number of features of PCRE regular expressions that are not
139
+ supported by the alternative matching algorithm. They are as follows:
140
+ </P>
141
+ <P>
142
+ 1. Because the algorithm finds all possible matches, the greedy or ungreedy
143
+ nature of repetition quantifiers is not relevant. Greedy and ungreedy
144
+ quantifiers are treated in exactly the same way. However, possessive
145
+ quantifiers can make a difference when what follows could also match what is
146
+ quantified, for example in a pattern like this:
147
+ <pre>
148
+ ^a++\w!
149
+ </pre>
150
+ This pattern matches "aaab!" but not "aaa!", which would be matched by a
151
+ non-possessive quantifier. Similarly, if an atomic group is present, it is
152
+ matched as if it were a standalone pattern at the current point, and the
153
+ longest match is then "locked in" for the rest of the overall pattern.
154
+ </P>
155
+ <P>
156
+ 2. When dealing with multiple paths through the tree simultaneously, it is not
157
+ straightforward to keep track of captured substrings for the different matching
158
+ possibilities, and PCRE's implementation of this algorithm does not attempt to
159
+ do this. This means that no captured substrings are available.
160
+ </P>
161
+ <P>
162
+ 3. Because no substrings are captured, back references within the pattern are
163
+ not supported, and cause errors if encountered.
164
+ </P>
165
+ <P>
166
+ 4. For the same reason, conditional expressions that use a backreference as the
167
+ condition or test for a specific group recursion are not supported.
168
+ </P>
169
+ <P>
170
+ 5. Because many paths through the tree may be active, the \K escape sequence,
171
+ which resets the start of the match when encountered (but may be on some paths
172
+ and not on others), is not supported. It causes an error if encountered.
173
+ </P>
174
+ <P>
175
+ 6. Callouts are supported, but the value of the <i>capture_top</i> field is
176
+ always 1, and the value of the <i>capture_last</i> field is always -1.
177
+ </P>
178
+ <P>
179
+ 7. The \C escape sequence, which (in the standard algorithm) always matches a
180
+ single data unit, even in UTF-8, UTF-16 or UTF-32 modes, is not supported in
181
+ these modes, because the alternative algorithm moves through the subject string
182
+ one character (not data unit) at a time, for all active paths through the tree.
183
+ </P>
184
+ <P>
185
+ 8. Except for (*FAIL), the backtracking control verbs such as (*PRUNE) are not
186
+ supported. (*FAIL) is supported, and behaves like a failing negative assertion.
187
+ </P>
188
+ <br><a name="SEC5" href="#TOC1">ADVANTAGES OF THE ALTERNATIVE ALGORITHM</a><br>
189
+ <P>
190
+ Using the alternative matching algorithm provides the following advantages:
191
+ </P>
192
+ <P>
193
+ 1. All possible matches (at a single point in the subject) are automatically
194
+ found, and in particular, the longest match is found. To find more than one
195
+ match using the standard algorithm, you have to do kludgy things with
196
+ callouts.
197
+ </P>
198
+ <P>
199
+ 2. Because the alternative algorithm scans the subject string just once, and
200
+ never needs to backtrack (except for lookbehinds), it is possible to pass very
201
+ long subject strings to the matching function in several pieces, checking for
202
+ partial matching each time. Although it is possible to do multi-segment
203
+ matching using the standard algorithm by retaining partially matched
204
+ substrings, it is more complicated. The
205
+ <a href="pcrepartial.html"><b>pcrepartial</b></a>
206
+ documentation gives details of partial matching and discusses multi-segment
207
+ matching.
208
+ </P>
209
+ <br><a name="SEC6" href="#TOC1">DISADVANTAGES OF THE ALTERNATIVE ALGORITHM</a><br>
210
+ <P>
211
+ The alternative algorithm suffers from a number of disadvantages:
212
+ </P>
213
+ <P>
214
+ 1. It is substantially slower than the standard algorithm. This is partly
215
+ because it has to search for all possible matches, but is also because it is
216
+ less susceptible to optimization.
217
+ </P>
218
+ <P>
219
+ 2. Capturing parentheses and back references are not supported.
220
+ </P>
221
+ <P>
222
+ 3. Although atomic groups are supported, their use does not provide the
223
+ performance advantage that it does for the standard algorithm.
224
+ </P>
225
+ <br><a name="SEC7" href="#TOC1">AUTHOR</a><br>
226
+ <P>
227
+ Philip Hazel
228
+ <br>
229
+ University Computing Service
230
+ <br>
231
+ Cambridge CB2 3QH, England.
232
+ <br>
233
+ </P>
234
+ <br><a name="SEC8" href="#TOC1">REVISION</a><br>
235
+ <P>
236
+ Last updated: 12 November 2013
237
+ <br>
238
+ Copyright &copy; 1997-2012 University of Cambridge.
239
+ <br>
240
+ <p>
241
+ Return to the <a href="index.html">PCRE index page</a>.
242
+ </p>
@@ -0,0 +1,509 @@
1
+ <html>
2
+ <head>
3
+ <title>pcrepartial specification</title>
4
+ </head>
5
+ <body bgcolor="#FFFFFF" text="#00005A" link="#0066FF" alink="#3399FF" vlink="#2222BB">
6
+ <h1>pcrepartial man page</h1>
7
+ <p>
8
+ Return to the <a href="index.html">PCRE index page</a>.
9
+ </p>
10
+ <p>
11
+ This page is part of the PCRE HTML documentation. It was generated automatically
12
+ from the original man page. If there is any nonsense in it, please consult the
13
+ man page, in case the conversion went wrong.
14
+ <br>
15
+ <ul>
16
+ <li><a name="TOC1" href="#SEC1">PARTIAL MATCHING IN PCRE</a>
17
+ <li><a name="TOC2" href="#SEC2">PARTIAL MATCHING USING pcre_exec() OR pcre[16|32]_exec()</a>
18
+ <li><a name="TOC3" href="#SEC3">PARTIAL MATCHING USING pcre_dfa_exec() OR pcre[16|32]_dfa_exec()</a>
19
+ <li><a name="TOC4" href="#SEC4">PARTIAL MATCHING AND WORD BOUNDARIES</a>
20
+ <li><a name="TOC5" href="#SEC5">FORMERLY RESTRICTED PATTERNS</a>
21
+ <li><a name="TOC6" href="#SEC6">EXAMPLE OF PARTIAL MATCHING USING PCRETEST</a>
22
+ <li><a name="TOC7" href="#SEC7">MULTI-SEGMENT MATCHING WITH pcre_dfa_exec() OR pcre[16|32]_dfa_exec()</a>
23
+ <li><a name="TOC8" href="#SEC8">MULTI-SEGMENT MATCHING WITH pcre_exec() OR pcre[16|32]_exec()</a>
24
+ <li><a name="TOC9" href="#SEC9">ISSUES WITH MULTI-SEGMENT MATCHING</a>
25
+ <li><a name="TOC10" href="#SEC10">AUTHOR</a>
26
+ <li><a name="TOC11" href="#SEC11">REVISION</a>
27
+ </ul>
28
+ <br><a name="SEC1" href="#TOC1">PARTIAL MATCHING IN PCRE</a><br>
29
+ <P>
30
+ In normal use of PCRE, if the subject string that is passed to a matching
31
+ function matches as far as it goes, but is too short to match the entire
32
+ pattern, PCRE_ERROR_NOMATCH is returned. There are circumstances where it might
33
+ be helpful to distinguish this case from other cases in which there is no
34
+ match.
35
+ </P>
36
+ <P>
37
+ Consider, for example, an application where a human is required to type in data
38
+ for a field with specific formatting requirements. An example might be a date
39
+ in the form <i>ddmmmyy</i>, defined by this pattern:
40
+ <pre>
41
+ ^\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d$
42
+ </pre>
43
+ If the application sees the user's keystrokes one by one, and can check that
44
+ what has been typed so far is potentially valid, it is able to raise an error
45
+ as soon as a mistake is made, by beeping and not reflecting the character that
46
+ has been typed, for example. This immediate feedback is likely to be a better
47
+ user interface than a check that is delayed until the entire string has been
48
+ entered. Partial matching can also be useful when the subject string is very
49
+ long and is not all available at once.
50
+ </P>
51
+ <P>
52
+ PCRE supports partial matching by means of the PCRE_PARTIAL_SOFT and
53
+ PCRE_PARTIAL_HARD options, which can be set when calling any of the matching
54
+ functions. For backwards compatibility, PCRE_PARTIAL is a synonym for
55
+ PCRE_PARTIAL_SOFT. The essential difference between the two options is whether
56
+ or not a partial match is preferred to an alternative complete match, though
57
+ the details differ between the two types of matching function. If both options
58
+ are set, PCRE_PARTIAL_HARD takes precedence.
59
+ </P>
60
+ <P>
61
+ If you want to use partial matching with just-in-time optimized code, you must
62
+ call <b>pcre_study()</b>, <b>pcre16_study()</b> or <b>pcre32_study()</b> with one
63
+ or both of these options:
64
+ <pre>
65
+ PCRE_STUDY_JIT_PARTIAL_SOFT_COMPILE
66
+ PCRE_STUDY_JIT_PARTIAL_HARD_COMPILE
67
+ </pre>
68
+ PCRE_STUDY_JIT_COMPILE should also be set if you are going to run non-partial
69
+ matches on the same pattern. If the appropriate JIT study mode has not been set
70
+ for a match, the interpretive matching code is used.
71
+ </P>
72
+ <P>
73
+ Setting a partial matching option disables two of PCRE's standard
74
+ optimizations. PCRE remembers the last literal data unit in a pattern, and
75
+ abandons matching immediately if it is not present in the subject string. This
76
+ optimization cannot be used for a subject string that might match only
77
+ partially. If the pattern was studied, PCRE knows the minimum length of a
78
+ matching string, and does not bother to run the matching function on shorter
79
+ strings. This optimization is also disabled for partial matching.
80
+ </P>
81
+ <br><a name="SEC2" href="#TOC1">PARTIAL MATCHING USING pcre_exec() OR pcre[16|32]_exec()</a><br>
82
+ <P>
83
+ A partial match occurs during a call to <b>pcre_exec()</b> or
84
+ <b>pcre[16|32]_exec()</b> when the end of the subject string is reached
85
+ successfully, but matching cannot continue because more characters are needed.
86
+ However, at least one character in the subject must have been inspected. This
87
+ character need not form part of the final matched string; lookbehind assertions
88
+ and the \K escape sequence provide ways of inspecting characters before the
89
+ start of a matched substring. The requirement for inspecting at least one
90
+ character exists because an empty string can always be matched; without such a
91
+ restriction there would always be a partial match of an empty string at the end
92
+ of the subject.
93
+ </P>
94
+ <P>
95
+ If there are at least two slots in the offsets vector when a partial match is
96
+ returned, the first slot is set to the offset of the earliest character that
97
+ was inspected. For convenience, the second offset points to the end of the
98
+ subject so that a substring can easily be identified. If there are at least
99
+ three slots in the offsets vector, the third slot is set to the offset of the
100
+ character where matching started.
101
+ </P>
102
+ <P>
103
+ For the majority of patterns, the contents of the first and third slots will be
104
+ the same. However, for patterns that contain lookbehind assertions, or begin
105
+ with \b or \B, characters before the one where matching started may have been
106
+ inspected while carrying out the match. For example, consider this pattern:
107
+ <pre>
108
+ /(?&#60;=abc)123/
109
+ </pre>
110
+ This pattern matches "123", but only if it is preceded by "abc". If the subject
111
+ string is "xyzabc12", the first two offsets after a partial match are for the
112
+ substring "abc12", because all these characters were inspected. However, the
113
+ third offset is set to 6, because that is the offset where matching began.
114
+ </P>
115
+ <P>
116
+ What happens when a partial match is identified depends on which of the two
117
+ partial matching options are set.
118
+ </P>
119
+ <br><b>
120
+ PCRE_PARTIAL_SOFT WITH pcre_exec() OR pcre[16|32]_exec()
121
+ </b><br>
122
+ <P>
123
+ If PCRE_PARTIAL_SOFT is set when <b>pcre_exec()</b> or <b>pcre[16|32]_exec()</b>
124
+ identifies a partial match, the partial match is remembered, but matching
125
+ continues as normal, and other alternatives in the pattern are tried. If no
126
+ complete match can be found, PCRE_ERROR_PARTIAL is returned instead of
127
+ PCRE_ERROR_NOMATCH.
128
+ </P>
129
+ <P>
130
+ This option is "soft" because it prefers a complete match over a partial match.
131
+ All the various matching items in a pattern behave as if the subject string is
132
+ potentially complete. For example, \z, \Z, and $ match at the end of the
133
+ subject, as normal, and for \b and \B the end of the subject is treated as a
134
+ non-alphanumeric.
135
+ </P>
136
+ <P>
137
+ If there is more than one partial match, the first one that was found provides
138
+ the data that is returned. Consider this pattern:
139
+ <pre>
140
+ /123\w+X|dogY/
141
+ </pre>
142
+ If this is matched against the subject string "abc123dog", both
143
+ alternatives fail to match, but the end of the subject is reached during
144
+ matching, so PCRE_ERROR_PARTIAL is returned. The offsets are set to 3 and 9,
145
+ identifying "123dog" as the first partial match that was found. (In this
146
+ example, there are two partial matches, because "dog" on its own partially
147
+ matches the second alternative.)
148
+ </P>
149
+ <br><b>
150
+ PCRE_PARTIAL_HARD WITH pcre_exec() OR pcre[16|32]_exec()
151
+ </b><br>
152
+ <P>
153
+ If PCRE_PARTIAL_HARD is set for <b>pcre_exec()</b> or <b>pcre[16|32]_exec()</b>,
154
+ PCRE_ERROR_PARTIAL is returned as soon as a partial match is found, without
155
+ continuing to search for possible complete matches. This option is "hard"
156
+ because it prefers an earlier partial match over a later complete match. For
157
+ this reason, the assumption is made that the end of the supplied subject string
158
+ may not be the true end of the available data, and so, if \z, \Z, \b, \B,
159
+ or $ are encountered at the end of the subject, the result is
160
+ PCRE_ERROR_PARTIAL, provided that at least one character in the subject has
161
+ been inspected.
162
+ </P>
163
+ <P>
164
+ Setting PCRE_PARTIAL_HARD also affects the way UTF-8 and UTF-16
165
+ subject strings are checked for validity. Normally, an invalid sequence
166
+ causes the error PCRE_ERROR_BADUTF8 or PCRE_ERROR_BADUTF16. However, in the
167
+ special case of a truncated character at the end of the subject,
168
+ PCRE_ERROR_SHORTUTF8 or PCRE_ERROR_SHORTUTF16 is returned when
169
+ PCRE_PARTIAL_HARD is set.
170
+ </P>
171
+ <br><b>
172
+ Comparing hard and soft partial matching
173
+ </b><br>
174
+ <P>
175
+ The difference between the two partial matching options can be illustrated by a
176
+ pattern such as:
177
+ <pre>
178
+ /dog(sbody)?/
179
+ </pre>
180
+ This matches either "dog" or "dogsbody", greedily (that is, it prefers the
181
+ longer string if possible). If it is matched against the string "dog" with
182
+ PCRE_PARTIAL_SOFT, it yields a complete match for "dog". However, if
183
+ PCRE_PARTIAL_HARD is set, the result is PCRE_ERROR_PARTIAL. On the other hand,
184
+ if the pattern is made ungreedy the result is different:
185
+ <pre>
186
+ /dog(sbody)??/
187
+ </pre>
188
+ In this case the result is always a complete match because that is found first,
189
+ and matching never continues after finding a complete match. It might be easier
190
+ to follow this explanation by thinking of the two patterns like this:
191
+ <pre>
192
+ /dog(sbody)?/ is the same as /dogsbody|dog/
193
+ /dog(sbody)??/ is the same as /dog|dogsbody/
194
+ </pre>
195
+ The second pattern will never match "dogsbody", because it will always find the
196
+ shorter match first.
197
+ </P>
198
+ <br><a name="SEC3" href="#TOC1">PARTIAL MATCHING USING pcre_dfa_exec() OR pcre[16|32]_dfa_exec()</a><br>
199
+ <P>
200
+ The DFA functions move along the subject string character by character, without
201
+ backtracking, searching for all possible matches simultaneously. If the end of
202
+ the subject is reached before the end of the pattern, there is the possibility
203
+ of a partial match, again provided that at least one character has been
204
+ inspected.
205
+ </P>
206
+ <P>
207
+ When PCRE_PARTIAL_SOFT is set, PCRE_ERROR_PARTIAL is returned only if there
208
+ have been no complete matches. Otherwise, the complete matches are returned.
209
+ However, if PCRE_PARTIAL_HARD is set, a partial match takes precedence over any
210
+ complete matches. The portion of the string that was inspected when the longest
211
+ partial match was found is set as the first matching string, provided there are
212
+ at least two slots in the offsets vector.
213
+ </P>
214
+ <P>
215
+ Because the DFA functions always search for all possible matches, and there is
216
+ no difference between greedy and ungreedy repetition, their behaviour is
217
+ different from the standard functions when PCRE_PARTIAL_HARD is set. Consider
218
+ the string "dog" matched against the ungreedy pattern shown above:
219
+ <pre>
220
+ /dog(sbody)??/
221
+ </pre>
222
+ Whereas the standard functions stop as soon as they find the complete match for
223
+ "dog", the DFA functions also find the partial match for "dogsbody", and so
224
+ return that when PCRE_PARTIAL_HARD is set.
225
+ </P>
226
+ <br><a name="SEC4" href="#TOC1">PARTIAL MATCHING AND WORD BOUNDARIES</a><br>
227
+ <P>
228
+ If a pattern ends with one of sequences \b or \B, which test for word
229
+ boundaries, partial matching with PCRE_PARTIAL_SOFT can give counter-intuitive
230
+ results. Consider this pattern:
231
+ <pre>
232
+ /\bcat\b/
233
+ </pre>
234
+ This matches "cat", provided there is a word boundary at either end. If the
235
+ subject string is "the cat", the comparison of the final "t" with a following
236
+ character cannot take place, so a partial match is found. However, normal
237
+ matching carries on, and \b matches at the end of the subject when the last
238
+ character is a letter, so a complete match is found. The result, therefore, is
239
+ <i>not</i> PCRE_ERROR_PARTIAL. Using PCRE_PARTIAL_HARD in this case does yield
240
+ PCRE_ERROR_PARTIAL, because then the partial match takes precedence.
241
+ </P>
242
+ <br><a name="SEC5" href="#TOC1">FORMERLY RESTRICTED PATTERNS</a><br>
243
+ <P>
244
+ For releases of PCRE prior to 8.00, because of the way certain internal
245
+ optimizations were implemented in the <b>pcre_exec()</b> function, the
246
+ PCRE_PARTIAL option (predecessor of PCRE_PARTIAL_SOFT) could not be used with
247
+ all patterns. From release 8.00 onwards, the restrictions no longer apply, and
248
+ partial matching with can be requested for any pattern.
249
+ </P>
250
+ <P>
251
+ Items that were formerly restricted were repeated single characters and
252
+ repeated metasequences. If PCRE_PARTIAL was set for a pattern that did not
253
+ conform to the restrictions, <b>pcre_exec()</b> returned the error code
254
+ PCRE_ERROR_BADPARTIAL (-13). This error code is no longer in use. The
255
+ PCRE_INFO_OKPARTIAL call to <b>pcre_fullinfo()</b> to find out if a compiled
256
+ pattern can be used for partial matching now always returns 1.
257
+ </P>
258
+ <br><a name="SEC6" href="#TOC1">EXAMPLE OF PARTIAL MATCHING USING PCRETEST</a><br>
259
+ <P>
260
+ If the escape sequence \P is present in a <b>pcretest</b> data line, the
261
+ PCRE_PARTIAL_SOFT option is used for the match. Here is a run of <b>pcretest</b>
262
+ that uses the date example quoted above:
263
+ <pre>
264
+ re&#62; /^\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d$/
265
+ data&#62; 25jun04\P
266
+ 0: 25jun04
267
+ 1: jun
268
+ data&#62; 25dec3\P
269
+ Partial match: 23dec3
270
+ data&#62; 3ju\P
271
+ Partial match: 3ju
272
+ data&#62; 3juj\P
273
+ No match
274
+ data&#62; j\P
275
+ No match
276
+ </pre>
277
+ The first data string is matched completely, so <b>pcretest</b> shows the
278
+ matched substrings. The remaining four strings do not match the complete
279
+ pattern, but the first two are partial matches. Similar output is obtained
280
+ if DFA matching is used.
281
+ </P>
282
+ <P>
283
+ If the escape sequence \P is present more than once in a <b>pcretest</b> data
284
+ line, the PCRE_PARTIAL_HARD option is set for the match.
285
+ </P>
286
+ <br><a name="SEC7" href="#TOC1">MULTI-SEGMENT MATCHING WITH pcre_dfa_exec() OR pcre[16|32]_dfa_exec()</a><br>
287
+ <P>
288
+ When a partial match has been found using a DFA matching function, it is
289
+ possible to continue the match by providing additional subject data and calling
290
+ the function again with the same compiled regular expression, this time setting
291
+ the PCRE_DFA_RESTART option. You must pass the same working space as before,
292
+ because this is where details of the previous partial match are stored. Here is
293
+ an example using <b>pcretest</b>, using the \R escape sequence to set the
294
+ PCRE_DFA_RESTART option (\D specifies the use of the DFA matching function):
295
+ <pre>
296
+ re&#62; /^\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d$/
297
+ data&#62; 23ja\P\D
298
+ Partial match: 23ja
299
+ data&#62; n05\R\D
300
+ 0: n05
301
+ </pre>
302
+ The first call has "23ja" as the subject, and requests partial matching; the
303
+ second call has "n05" as the subject for the continued (restarted) match.
304
+ Notice that when the match is complete, only the last part is shown; PCRE does
305
+ not retain the previously partially-matched string. It is up to the calling
306
+ program to do that if it needs to.
307
+ </P>
308
+ <P>
309
+ That means that, for an unanchored pattern, if a continued match fails, it is
310
+ not possible to try again at a new starting point. All this facility is capable
311
+ of doing is continuing with the previous match attempt. In the previous
312
+ example, if the second set of data is "ug23" the result is no match, even
313
+ though there would be a match for "aug23" if the entire string were given at
314
+ once. Depending on the application, this may or may not be what you want.
315
+ The only way to allow for starting again at the next character is to retain the
316
+ matched part of the subject and try a new complete match.
317
+ </P>
318
+ <P>
319
+ You can set the PCRE_PARTIAL_SOFT or PCRE_PARTIAL_HARD options with
320
+ PCRE_DFA_RESTART to continue partial matching over multiple segments. This
321
+ facility can be used to pass very long subject strings to the DFA matching
322
+ functions.
323
+ </P>
324
+ <br><a name="SEC8" href="#TOC1">MULTI-SEGMENT MATCHING WITH pcre_exec() OR pcre[16|32]_exec()</a><br>
325
+ <P>
326
+ From release 8.00, the standard matching functions can also be used to do
327
+ multi-segment matching. Unlike the DFA functions, it is not possible to
328
+ restart the previous match with a new segment of data. Instead, new data must
329
+ be added to the previous subject string, and the entire match re-run, starting
330
+ from the point where the partial match occurred. Earlier data can be discarded.
331
+ </P>
332
+ <P>
333
+ It is best to use PCRE_PARTIAL_HARD in this situation, because it does not
334
+ treat the end of a segment as the end of the subject when matching \z, \Z,
335
+ \b, \B, and $. Consider an unanchored pattern that matches dates:
336
+ <pre>
337
+ re&#62; /\d?\d(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d\d/
338
+ data&#62; The date is 23ja\P\P
339
+ Partial match: 23ja
340
+ </pre>
341
+ At this stage, an application could discard the text preceding "23ja", add on
342
+ text from the next segment, and call the matching function again. Unlike the
343
+ DFA matching functions, the entire matching string must always be available,
344
+ and the complete matching process occurs for each call, so more memory and more
345
+ processing time is needed.
346
+ </P>
347
+ <P>
348
+ <b>Note:</b> If the pattern contains lookbehind assertions, or \K, or starts
349
+ with \b or \B, the string that is returned for a partial match includes
350
+ characters that precede the start of what would be returned for a complete
351
+ match, because it contains all the characters that were inspected during the
352
+ partial match.
353
+ </P>
354
+ <br><a name="SEC9" href="#TOC1">ISSUES WITH MULTI-SEGMENT MATCHING</a><br>
355
+ <P>
356
+ Certain types of pattern may give problems with multi-segment matching,
357
+ whichever matching function is used.
358
+ </P>
359
+ <P>
360
+ 1. If the pattern contains a test for the beginning of a line, you need to pass
361
+ the PCRE_NOTBOL option when the subject string for any call does start at the
362
+ beginning of a line. There is also a PCRE_NOTEOL option, but in practice when
363
+ doing multi-segment matching you should be using PCRE_PARTIAL_HARD, which
364
+ includes the effect of PCRE_NOTEOL.
365
+ </P>
366
+ <P>
367
+ 2. Lookbehind assertions that have already been obeyed are catered for in the
368
+ offsets that are returned for a partial match. However a lookbehind assertion
369
+ later in the pattern could require even earlier characters to be inspected. You
370
+ can handle this case by using the PCRE_INFO_MAXLOOKBEHIND option of the
371
+ <b>pcre_fullinfo()</b> or <b>pcre[16|32]_fullinfo()</b> functions to obtain the
372
+ length of the longest lookbehind in the pattern. This length is given in
373
+ characters, not bytes. If you always retain at least that many characters
374
+ before the partially matched string, all should be well. (Of course, near the
375
+ start of the subject, fewer characters may be present; in that case all
376
+ characters should be retained.)
377
+ </P>
378
+ <P>
379
+ From release 8.33, there is a more accurate way of deciding which characters to
380
+ retain. Instead of subtracting the length of the longest lookbehind from the
381
+ earliest inspected character (<i>offsets[0]</i>), the match start position
382
+ (<i>offsets[2]</i>) should be used, and the next match attempt started at the
383
+ <i>offsets[2]</i> character by setting the <i>startoffset</i> argument of
384
+ <b>pcre_exec()</b> or <b>pcre_dfa_exec()</b>.
385
+ </P>
386
+ <P>
387
+ For example, if the pattern "(?&#60;=123)abc" is partially
388
+ matched against the string "xx123a", the three offset values returned are 2, 6,
389
+ and 5. This indicates that the matching process that gave a partial match
390
+ started at offset 5, but the characters "123a" were all inspected. The maximum
391
+ lookbehind for that pattern is 3, so taking that away from 5 shows that we need
392
+ only keep "123a", and the next match attempt can be started at offset 3 (that
393
+ is, at "a") when further characters have been added. When the match start is
394
+ not the earliest inspected character, <b>pcretest</b> shows it explicitly:
395
+ <pre>
396
+ re&#62; "(?&#60;=123)abc"
397
+ data&#62; xx123a\P\P
398
+ Partial match at offset 5: 123a
399
+ </PRE>
400
+ </P>
401
+ <P>
402
+ 3. Because a partial match must always contain at least one character, what
403
+ might be considered a partial match of an empty string actually gives a "no
404
+ match" result. For example:
405
+ <pre>
406
+ re&#62; /c(?&#60;=abc)x/
407
+ data&#62; ab\P
408
+ No match
409
+ </pre>
410
+ If the next segment begins "cx", a match should be found, but this will only
411
+ happen if characters from the previous segment are retained. For this reason, a
412
+ "no match" result should be interpreted as "partial match of an empty string"
413
+ when the pattern contains lookbehinds.
414
+ </P>
415
+ <P>
416
+ 4. Matching a subject string that is split into multiple segments may not
417
+ always produce exactly the same result as matching over one single long string,
418
+ especially when PCRE_PARTIAL_SOFT is used. The section "Partial Matching and
419
+ Word Boundaries" above describes an issue that arises if the pattern ends with
420
+ \b or \B. Another kind of difference may occur when there are multiple
421
+ matching possibilities, because (for PCRE_PARTIAL_SOFT) a partial match result
422
+ is given only when there are no completed matches. This means that as soon as
423
+ the shortest match has been found, continuation to a new subject segment is no
424
+ longer possible. Consider again this <b>pcretest</b> example:
425
+ <pre>
426
+ re&#62; /dog(sbody)?/
427
+ data&#62; dogsb\P
428
+ 0: dog
429
+ data&#62; do\P\D
430
+ Partial match: do
431
+ data&#62; gsb\R\P\D
432
+ 0: g
433
+ data&#62; dogsbody\D
434
+ 0: dogsbody
435
+ 1: dog
436
+ </pre>
437
+ The first data line passes the string "dogsb" to a standard matching function,
438
+ setting the PCRE_PARTIAL_SOFT option. Although the string is a partial match
439
+ for "dogsbody", the result is not PCRE_ERROR_PARTIAL, because the shorter
440
+ string "dog" is a complete match. Similarly, when the subject is presented to
441
+ a DFA matching function in several parts ("do" and "gsb" being the first two)
442
+ the match stops when "dog" has been found, and it is not possible to continue.
443
+ On the other hand, if "dogsbody" is presented as a single string, a DFA
444
+ matching function finds both matches.
445
+ </P>
446
+ <P>
447
+ Because of these problems, it is best to use PCRE_PARTIAL_HARD when matching
448
+ multi-segment data. The example above then behaves differently:
449
+ <pre>
450
+ re&#62; /dog(sbody)?/
451
+ data&#62; dogsb\P\P
452
+ Partial match: dogsb
453
+ data&#62; do\P\D
454
+ Partial match: do
455
+ data&#62; gsb\R\P\P\D
456
+ Partial match: gsb
457
+ </pre>
458
+ 5. Patterns that contain alternatives at the top level which do not all start
459
+ with the same pattern item may not work as expected when PCRE_DFA_RESTART is
460
+ used. For example, consider this pattern:
461
+ <pre>
462
+ 1234|3789
463
+ </pre>
464
+ If the first part of the subject is "ABC123", a partial match of the first
465
+ alternative is found at offset 3. There is no partial match for the second
466
+ alternative, because such a match does not start at the same point in the
467
+ subject string. Attempting to continue with the string "7890" does not yield a
468
+ match because only those alternatives that match at one point in the subject
469
+ are remembered. The problem arises because the start of the second alternative
470
+ matches within the first alternative. There is no problem with anchored
471
+ patterns or patterns such as:
472
+ <pre>
473
+ 1234|ABCD
474
+ </pre>
475
+ where no string can be a partial match for both alternatives. This is not a
476
+ problem if a standard matching function is used, because the entire match has
477
+ to be rerun each time:
478
+ <pre>
479
+ re&#62; /1234|3789/
480
+ data&#62; ABC123\P\P
481
+ Partial match: 123
482
+ data&#62; 1237890
483
+ 0: 3789
484
+ </pre>
485
+ Of course, instead of using PCRE_DFA_RESTART, the same technique of re-running
486
+ the entire match can also be used with the DFA matching functions. Another
487
+ possibility is to work with two buffers. If a partial match at offset <i>n</i>
488
+ in the first buffer is followed by "no match" when PCRE_DFA_RESTART is used on
489
+ the second buffer, you can then try a new match starting at offset <i>n+1</i> in
490
+ the first buffer.
491
+ </P>
492
+ <br><a name="SEC10" href="#TOC1">AUTHOR</a><br>
493
+ <P>
494
+ Philip Hazel
495
+ <br>
496
+ University Computing Service
497
+ <br>
498
+ Cambridge CB2 3QH, England.
499
+ <br>
500
+ </P>
501
+ <br><a name="SEC11" href="#TOC1">REVISION</a><br>
502
+ <P>
503
+ Last updated: 02 July 2013
504
+ <br>
505
+ Copyright &copy; 1997-2013 University of Cambridge.
506
+ <br>
507
+ <p>
508
+ Return to the <a href="index.html">PCRE index page</a>.
509
+ </p>