glib2 0.90.2-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (875) hide show
  1. data/ChangeLog +3115 -0
  2. data/README +40 -0
  3. data/Rakefile +69 -0
  4. data/ext/glib2/depend +10 -0
  5. data/ext/glib2/extconf.rb +61 -0
  6. data/ext/glib2/glib2.def +89 -0
  7. data/ext/glib2/rbgcompat.h +30 -0
  8. data/ext/glib2/rbglib.c +330 -0
  9. data/ext/glib2/rbglib.h +96 -0
  10. data/ext/glib2/rbglib_bookmarkfile.c +595 -0
  11. data/ext/glib2/rbglib_completion.c +192 -0
  12. data/ext/glib2/rbglib_convert.c +195 -0
  13. data/ext/glib2/rbglib_error.c +95 -0
  14. data/ext/glib2/rbglib_fileutils.c +83 -0
  15. data/ext/glib2/rbglib_i18n.c +44 -0
  16. data/ext/glib2/rbglib_int64.c +157 -0
  17. data/ext/glib2/rbglib_iochannel.c +883 -0
  18. data/ext/glib2/rbglib_keyfile.c +846 -0
  19. data/ext/glib2/rbglib_maincontext.c +915 -0
  20. data/ext/glib2/rbglib_mainloop.c +87 -0
  21. data/ext/glib2/rbglib_messages.c +150 -0
  22. data/ext/glib2/rbglib_pollfd.c +111 -0
  23. data/ext/glib2/rbglib_shell.c +68 -0
  24. data/ext/glib2/rbglib_source.c +190 -0
  25. data/ext/glib2/rbglib_spawn.c +345 -0
  26. data/ext/glib2/rbglib_threads.c +51 -0
  27. data/ext/glib2/rbglib_timer.c +127 -0
  28. data/ext/glib2/rbglib_unicode.c +611 -0
  29. data/ext/glib2/rbglib_utils.c +386 -0
  30. data/ext/glib2/rbglib_win32.c +136 -0
  31. data/ext/glib2/rbgobj_boxed.c +251 -0
  32. data/ext/glib2/rbgobj_closure.c +337 -0
  33. data/ext/glib2/rbgobj_convert.c +167 -0
  34. data/ext/glib2/rbgobj_enums.c +961 -0
  35. data/ext/glib2/rbgobj_fundamental.c +30 -0
  36. data/ext/glib2/rbgobj_object.c +892 -0
  37. data/ext/glib2/rbgobj_param.c +390 -0
  38. data/ext/glib2/rbgobj_paramspecs.c +305 -0
  39. data/ext/glib2/rbgobj_signal.c +963 -0
  40. data/ext/glib2/rbgobj_strv.c +61 -0
  41. data/ext/glib2/rbgobj_type.c +851 -0
  42. data/ext/glib2/rbgobj_typeinstance.c +121 -0
  43. data/ext/glib2/rbgobj_typeinterface.c +148 -0
  44. data/ext/glib2/rbgobj_typemodule.c +66 -0
  45. data/ext/glib2/rbgobj_typeplugin.c +49 -0
  46. data/ext/glib2/rbgobj_value.c +313 -0
  47. data/ext/glib2/rbgobj_valuearray.c +59 -0
  48. data/ext/glib2/rbgobj_valuetypes.c +298 -0
  49. data/ext/glib2/rbgobject.c +406 -0
  50. data/ext/glib2/rbgobject.h +265 -0
  51. data/ext/glib2/rbgprivate.h +88 -0
  52. data/ext/glib2/rbgutil.c +316 -0
  53. data/ext/glib2/rbgutil.h +82 -0
  54. data/ext/glib2/rbgutil_callback.c +231 -0
  55. data/extconf.rb +49 -0
  56. data/lib/1.8/glib2.so +0 -0
  57. data/lib/1.9/glib2.so +0 -0
  58. data/lib/glib-mkenums.rb +199 -0
  59. data/lib/glib2.rb +239 -0
  60. data/lib/gnome2-win32-binary-downloader.rb +92 -0
  61. data/lib/mkmf-gnome2.rb +377 -0
  62. data/sample/bookmarkfile.rb +66 -0
  63. data/sample/completion.rb +45 -0
  64. data/sample/idle.rb +41 -0
  65. data/sample/iochannel.rb +44 -0
  66. data/sample/keyfile.rb +62 -0
  67. data/sample/shell.rb +36 -0
  68. data/sample/spawn.rb +25 -0
  69. data/sample/timeout.rb +28 -0
  70. data/sample/timeout2.rb +35 -0
  71. data/sample/timer.rb +40 -0
  72. data/sample/type-register.rb +103 -0
  73. data/sample/type-register2.rb +104 -0
  74. data/sample/utils.rb +54 -0
  75. data/test/glib-test-init.rb +6 -0
  76. data/test/glib-test-utils.rb +12 -0
  77. data/test/run-test.rb +21 -0
  78. data/test/test_enum.rb +99 -0
  79. data/test/test_file_utils.rb +15 -0
  80. data/test/test_glib2.rb +120 -0
  81. data/test/test_iochannel.rb +275 -0
  82. data/test/test_key_file.rb +38 -0
  83. data/test/test_mkenums.rb +25 -0
  84. data/test/test_signal.rb +20 -0
  85. data/test/test_timeout.rb +28 -0
  86. data/test/test_unicode.rb +369 -0
  87. data/test/test_utils.rb +37 -0
  88. data/test/test_win32.rb +13 -0
  89. data/test-unit/COPYING +56 -0
  90. data/test-unit/GPL +340 -0
  91. data/test-unit/History.txt +232 -0
  92. data/test-unit/Manifest.txt +110 -0
  93. data/test-unit/PSFL +271 -0
  94. data/test-unit/README.txt +75 -0
  95. data/test-unit/Rakefile +53 -0
  96. data/test-unit/TODO +5 -0
  97. data/test-unit/bin/testrb +5 -0
  98. data/test-unit/html/bar.png +0 -0
  99. data/test-unit/html/bar.svg +153 -0
  100. data/test-unit/html/developer.png +0 -0
  101. data/test-unit/html/developer.svg +469 -0
  102. data/test-unit/html/famfamfam-logo.png +0 -0
  103. data/test-unit/html/favicon.ico +0 -0
  104. data/test-unit/html/favicon.png +0 -0
  105. data/test-unit/html/favicon.svg +82 -0
  106. data/test-unit/html/heading-mark.png +0 -0
  107. data/test-unit/html/heading-mark.svg +393 -0
  108. data/test-unit/html/index.html +247 -0
  109. data/test-unit/html/index.html.ja +270 -0
  110. data/test-unit/html/install.png +0 -0
  111. data/test-unit/html/install.svg +636 -0
  112. data/test-unit/html/jp.png +0 -0
  113. data/test-unit/html/kinotan-failure.png +0 -0
  114. data/test-unit/html/kinotan-pass.png +0 -0
  115. data/test-unit/html/logo.png +0 -0
  116. data/test-unit/html/logo.svg +483 -0
  117. data/test-unit/html/reference.png +0 -0
  118. data/test-unit/html/rubyforge.png +0 -0
  119. data/test-unit/html/tango-logo.png +0 -0
  120. data/test-unit/html/test-unit.css +339 -0
  121. data/test-unit/html/tutorial.png +0 -0
  122. data/test-unit/html/tutorial.svg +559 -0
  123. data/test-unit/html/us.png +0 -0
  124. data/test-unit/images/color-diff.png +0 -0
  125. data/test-unit/lib/test/unit/assertionfailederror.rb +25 -0
  126. data/test-unit/lib/test/unit/assertions.rb +1334 -0
  127. data/test-unit/lib/test/unit/attribute.rb +125 -0
  128. data/test-unit/lib/test/unit/autorunner.rb +363 -0
  129. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  130. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  131. data/test-unit/lib/test/unit/collector/load.rb +144 -0
  132. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  133. data/test-unit/lib/test/unit/collector.rb +36 -0
  134. data/test-unit/lib/test/unit/color-scheme.rb +106 -0
  135. data/test-unit/lib/test/unit/color.rb +96 -0
  136. data/test-unit/lib/test/unit/diff.rb +740 -0
  137. data/test-unit/lib/test/unit/error.rb +130 -0
  138. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  139. data/test-unit/lib/test/unit/failure.rb +136 -0
  140. data/test-unit/lib/test/unit/fixture.rb +176 -0
  141. data/test-unit/lib/test/unit/notification.rb +129 -0
  142. data/test-unit/lib/test/unit/omission.rb +191 -0
  143. data/test-unit/lib/test/unit/pending.rb +150 -0
  144. data/test-unit/lib/test/unit/priority.rb +180 -0
  145. data/test-unit/lib/test/unit/runner/console.rb +52 -0
  146. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  147. data/test-unit/lib/test/unit/runner/tap.rb +8 -0
  148. data/test-unit/lib/test/unit/testcase.rb +483 -0
  149. data/test-unit/lib/test/unit/testresult.rb +121 -0
  150. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  151. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  152. data/test-unit/lib/test/unit/ui/console/testrunner.rb +430 -0
  153. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +63 -0
  154. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +82 -0
  155. data/test-unit/lib/test/unit/ui/testrunner.rb +53 -0
  156. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  157. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  158. data/test-unit/lib/test/unit/util/backtracefilter.rb +42 -0
  159. data/test-unit/lib/test/unit/util/method-owner-finder.rb +28 -0
  160. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  161. data/test-unit/lib/test/unit/util/output.rb +31 -0
  162. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  163. data/test-unit/lib/test/unit/version.rb +7 -0
  164. data/test-unit/lib/test/unit.rb +328 -0
  165. data/test-unit/sample/adder.rb +13 -0
  166. data/test-unit/sample/subtracter.rb +12 -0
  167. data/test-unit/sample/test_adder.rb +20 -0
  168. data/test-unit/sample/test_subtracter.rb +20 -0
  169. data/test-unit/sample/test_user.rb +23 -0
  170. data/test-unit/test/collector/test-descendant.rb +133 -0
  171. data/test-unit/test/collector/test-load.rb +442 -0
  172. data/test-unit/test/collector/test_dir.rb +406 -0
  173. data/test-unit/test/collector/test_objectspace.rb +100 -0
  174. data/test-unit/test/run-test.rb +15 -0
  175. data/test-unit/test/test-attribute.rb +86 -0
  176. data/test-unit/test/test-color-scheme.rb +69 -0
  177. data/test-unit/test/test-color.rb +47 -0
  178. data/test-unit/test/test-diff.rb +518 -0
  179. data/test-unit/test/test-emacs-runner.rb +60 -0
  180. data/test-unit/test/test-fixture.rb +287 -0
  181. data/test-unit/test/test-notification.rb +33 -0
  182. data/test-unit/test/test-omission.rb +81 -0
  183. data/test-unit/test/test-pending.rb +70 -0
  184. data/test-unit/test/test-priority.rb +119 -0
  185. data/test-unit/test/test-testcase.rb +544 -0
  186. data/test-unit/test/test_assertions.rb +1197 -0
  187. data/test-unit/test/test_error.rb +26 -0
  188. data/test-unit/test/test_failure.rb +33 -0
  189. data/test-unit/test/test_testresult.rb +113 -0
  190. data/test-unit/test/test_testsuite.rb +129 -0
  191. data/test-unit/test/testunit-test-util.rb +14 -0
  192. data/test-unit/test/ui/test_tap.rb +33 -0
  193. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  194. data/test-unit/test/util/test-method-owner-finder.rb +38 -0
  195. data/test-unit/test/util/test-output.rb +11 -0
  196. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  197. data/test-unit/test/util/test_observable.rb +102 -0
  198. data/test-unit/test/util/test_procwrapper.rb +36 -0
  199. data/vendor/local/bin/envsubst.exe +0 -0
  200. data/vendor/local/bin/gettext.exe +0 -0
  201. data/vendor/local/bin/gettext.sh +123 -0
  202. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  203. data/vendor/local/bin/glib-gettextize +188 -0
  204. data/vendor/local/bin/glib-mkenums +511 -0
  205. data/vendor/local/bin/gobject-query.exe +0 -0
  206. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  207. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  208. data/vendor/local/bin/intl.dll +0 -0
  209. data/vendor/local/bin/libasprintf-0.dll +0 -0
  210. data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
  211. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  212. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  213. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  214. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  215. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  216. data/vendor/local/bin/ngettext.exe +0 -0
  217. data/vendor/local/include/autosprintf.h +66 -0
  218. data/vendor/local/include/glib-2.0/gio/gappinfo.h +237 -0
  219. data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
  220. data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
  221. data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
  222. data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +82 -0
  223. data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
  224. data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
  225. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
  226. data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
  227. data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +80 -0
  228. data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +80 -0
  229. data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +133 -0
  230. data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +116 -0
  231. data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
  232. data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
  233. data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
  234. data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
  235. data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
  236. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +133 -0
  237. data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
  238. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +951 -0
  239. data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
  240. data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
  241. data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
  242. data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
  243. data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
  244. data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
  245. data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
  246. data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
  247. data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
  248. data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
  249. data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
  250. data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
  251. data/vendor/local/include/glib-2.0/gio/gio.h +101 -0
  252. data/vendor/local/include/glib-2.0/gio/gioenums.h +703 -0
  253. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +79 -0
  254. data/vendor/local/include/glib-2.0/gio/gioerror.h +48 -0
  255. data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
  256. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
  257. data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
  258. data/vendor/local/include/glib-2.0/gio/giotypes.h +339 -0
  259. data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
  260. data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
  261. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +97 -0
  262. data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
  263. data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
  264. data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
  265. data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +69 -0
  266. data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +69 -0
  267. data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
  268. data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
  269. data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
  270. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
  271. data/vendor/local/include/glib-2.0/gio/gsocket.h +176 -0
  272. data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
  273. data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
  274. data/vendor/local/include/glib-2.0/gio/gsocketclient.h +130 -0
  275. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +68 -0
  276. data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
  277. data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
  278. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
  279. data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
  280. data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
  281. data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
  282. data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
  283. data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
  284. data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
  285. data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
  286. data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +151 -0
  287. data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +55 -0
  288. data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +54 -0
  289. data/vendor/local/include/glib-2.0/glib/galloca.h +63 -0
  290. data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
  291. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
  292. data/vendor/local/include/glib-2.0/glib/gatomic.h +85 -0
  293. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
  294. data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
  295. data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
  296. data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +191 -0
  297. data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
  298. data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
  299. data/vendor/local/include/glib-2.0/glib/gcompletion.h +77 -0
  300. data/vendor/local/include/glib-2.0/glib/gconvert.h +138 -0
  301. data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
  302. data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
  303. data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
  304. data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
  305. data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
  306. data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
  307. data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
  308. data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
  309. data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
  310. data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
  311. data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
  312. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +250 -0
  313. data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
  314. data/vendor/local/include/glib-2.0/glib/gmacros.h +277 -0
  315. data/vendor/local/include/glib-2.0/glib/gmain.h +304 -0
  316. data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
  317. data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
  318. data/vendor/local/include/glib-2.0/glib/gmem.h +203 -0
  319. data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
  320. data/vendor/local/include/glib-2.0/glib/gnode.h +288 -0
  321. data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
  322. data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
  323. data/vendor/local/include/glib-2.0/glib/gpoll.h +93 -0
  324. data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
  325. data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
  326. data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
  327. data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
  328. data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
  329. data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
  330. data/vendor/local/include/glib-2.0/glib/gregex.h +243 -0
  331. data/vendor/local/include/glib-2.0/glib/grel.h +97 -0
  332. data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
  333. data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
  334. data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
  335. data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
  336. data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
  337. data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
  338. data/vendor/local/include/glib-2.0/glib/gstdio.h +159 -0
  339. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +267 -0
  340. data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
  341. data/vendor/local/include/glib-2.0/glib/gtestutils.h +292 -0
  342. data/vendor/local/include/glib-2.0/glib/gthread.h +408 -0
  343. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
  344. data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
  345. data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
  346. data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
  347. data/vendor/local/include/glib-2.0/glib/gunicode.h +404 -0
  348. data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
  349. data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
  350. data/vendor/local/include/glib-2.0/glib/gvariant.h +224 -0
  351. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +305 -0
  352. data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
  353. data/vendor/local/include/glib-2.0/glib-object.h +41 -0
  354. data/vendor/local/include/glib-2.0/glib.h +97 -0
  355. data/vendor/local/include/glib-2.0/gmodule.h +101 -0
  356. data/vendor/local/include/glib-2.0/gobject/gboxed.h +236 -0
  357. data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
  358. data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
  359. data/vendor/local/include/glib-2.0/gobject/gmarshal.h +169 -0
  360. data/vendor/local/include/glib-2.0/gobject/gobject.h +562 -0
  361. data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +166 -0
  362. data/vendor/local/include/glib-2.0/gobject/gparam.h +410 -0
  363. data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1083 -0
  364. data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
  365. data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
  366. data/vendor/local/include/glib-2.0/gobject/gtype.h +1608 -0
  367. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
  368. data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
  369. data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
  370. data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
  371. data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +222 -0
  372. data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +243 -0
  373. data/vendor/local/include/libintl.h +464 -0
  374. data/vendor/local/lib/GNU.Gettext.dll +0 -0
  375. data/vendor/local/lib/gio-2.0.def +800 -0
  376. data/vendor/local/lib/gio-2.0.lib +0 -0
  377. data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
  378. data/vendor/local/lib/glib-2.0.def +1381 -0
  379. data/vendor/local/lib/glib-2.0.lib +0 -0
  380. data/vendor/local/lib/gmodule-2.0.def +11 -0
  381. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  382. data/vendor/local/lib/gobject-2.0.def +349 -0
  383. data/vendor/local/lib/gobject-2.0.lib +0 -0
  384. data/vendor/local/lib/gthread-2.0.def +3 -0
  385. data/vendor/local/lib/gthread-2.0.lib +0 -0
  386. data/vendor/local/lib/intl.lib +0 -0
  387. data/vendor/local/lib/libasprintf.dll.a +0 -0
  388. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  389. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  390. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  391. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  392. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  393. data/vendor/local/lib/libintl.def +31 -0
  394. data/vendor/local/lib/libintl.dll.a +0 -0
  395. data/vendor/local/lib/pkgconfig/gio-2.0.pc +14 -0
  396. data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
  397. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
  398. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
  399. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
  400. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
  401. data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
  402. data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
  403. data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
  404. data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
  405. data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
  406. data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
  407. data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
  408. data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
  409. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
  410. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
  411. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
  412. data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
  413. data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
  414. data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
  415. data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
  416. data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
  417. data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
  418. data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
  419. data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
  420. data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
  421. data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
  422. data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
  423. data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
  424. data/vendor/local/share/glib-2.0/gdb/glib.py +252 -0
  425. data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
  426. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
  427. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +277 -0
  428. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1390 -0
  429. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +531 -0
  430. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
  431. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +568 -0
  432. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +295 -0
  433. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
  434. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
  435. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +388 -0
  436. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +993 -0
  437. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +544 -0
  438. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
  439. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
  440. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
  441. data/vendor/local/share/gtk-doc/html/gio/GFile.html +7450 -0
  442. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +115 -0
  443. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +520 -0
  444. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
  445. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
  446. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3116 -0
  447. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
  448. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
  449. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
  450. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
  451. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +182 -0
  452. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +183 -0
  453. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
  454. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
  455. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
  456. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
  457. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +195 -0
  458. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
  459. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
  460. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
  461. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
  462. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +362 -0
  463. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
  464. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
  465. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +263 -0
  466. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +248 -0
  467. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1006 -0
  468. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
  469. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
  470. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +979 -0
  471. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2152 -0
  472. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
  473. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +930 -0
  474. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +428 -0
  475. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +548 -0
  476. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +274 -0
  477. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +741 -0
  478. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
  479. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
  480. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
  481. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +381 -0
  482. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +280 -0
  483. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
  484. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
  485. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +306 -0
  486. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
  487. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
  488. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +709 -0
  489. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +180 -0
  490. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +128 -0
  491. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
  492. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
  493. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1088 -0
  494. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +206 -0
  495. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +97 -0
  496. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +4499 -0
  497. data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
  498. data/vendor/local/share/gtk-doc/html/gio/ch01.html +171 -0
  499. data/vendor/local/share/gtk-doc/html/gio/ch02.html +45 -0
  500. data/vendor/local/share/gtk-doc/html/gio/ch03.html +80 -0
  501. data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
  502. data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
  503. data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
  504. data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
  505. data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
  506. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +96 -0
  507. data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
  508. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
  509. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
  510. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
  511. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
  512. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +465 -0
  513. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +381 -0
  514. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +163 -0
  515. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +163 -0
  516. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +927 -0
  517. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +328 -0
  518. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
  519. data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
  520. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +918 -0
  521. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +107 -0
  522. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1235 -0
  523. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +1384 -0
  524. data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
  525. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +47 -0
  526. data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
  527. data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
  528. data/vendor/local/share/gtk-doc/html/gio/index.html +318 -0
  529. data/vendor/local/share/gtk-doc/html/gio/index.sgml +1795 -0
  530. data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
  531. data/vendor/local/share/gtk-doc/html/gio/migrating.html +42 -0
  532. data/vendor/local/share/gtk-doc/html/gio/networking.html +57 -0
  533. data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
  534. data/vendor/local/share/gtk-doc/html/gio/pt02.html +293 -0
  535. data/vendor/local/share/gtk-doc/html/gio/resolver.html +47 -0
  536. data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
  537. data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
  538. data/vendor/local/share/gtk-doc/html/gio/style.css +257 -0
  539. data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
  540. data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
  541. data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
  542. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
  543. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
  544. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
  545. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +563 -0
  546. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
  547. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
  548. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
  549. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
  550. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
  551. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +419 -0
  552. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +389 -0
  553. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +413 -0
  554. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
  555. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +340 -0
  556. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +7835 -0
  557. data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
  558. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +893 -0
  559. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
  560. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +413 -0
  561. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +430 -0
  562. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
  563. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
  564. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
  565. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2054 -0
  566. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
  567. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
  568. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
  569. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1187 -0
  570. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1665 -0
  571. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
  572. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
  573. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2042 -0
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1023 -0
  578. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1810 -0
  579. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +3798 -0
  580. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1815 -0
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
  585. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +629 -0
  586. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
  587. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2556 -0
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
  590. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1029 -0
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +703 -0
  596. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1045 -0
  597. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1523 -0
  598. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1466 -0
  599. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +204 -0
  600. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2648 -0
  601. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
  602. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
  603. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
  604. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +483 -0
  605. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
  606. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
  607. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1283 -0
  608. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1212 -0
  609. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
  610. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +466 -0
  611. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
  612. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2947 -0
  613. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1290 -0
  614. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1719 -0
  615. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3379 -0
  616. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
  617. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
  618. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
  619. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
  620. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
  621. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +314 -0
  622. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3356 -0
  623. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +150 -0
  624. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
  625. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
  626. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +438 -0
  627. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
  628. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
  629. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
  630. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
  631. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
  632. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
  633. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
  634. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2395 -0
  635. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
  636. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +302 -0
  637. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +112 -0
  638. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2084 -0
  639. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2556 -0
  640. data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
  641. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
  642. data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
  643. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1171 -0
  644. data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
  645. data/vendor/local/share/gtk-doc/html/glib/index.html +336 -0
  646. data/vendor/local/share/gtk-doc/html/glib/index.sgml +2717 -0
  647. data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
  648. data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
  649. data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
  650. data/vendor/local/share/gtk-doc/html/glib/style.css +257 -0
  651. data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
  652. data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
  653. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
  654. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
  655. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
  656. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
  657. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
  658. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
  659. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
  660. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
  661. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +72 -0
  662. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
  663. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
  664. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
  665. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
  666. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2577 -0
  667. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
  668. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
  669. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
  670. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
  671. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
  672. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
  673. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +355 -0
  674. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +295 -0
  675. data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
  676. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +406 -0
  677. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2355 -0
  678. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
  679. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1423 -0
  680. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
  681. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
  682. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5242 -0
  683. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2609 -0
  684. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4227 -0
  685. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +413 -0
  686. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +230 -0
  687. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
  688. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
  689. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +723 -0
  691. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +757 -0
  692. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
  693. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
  694. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
  695. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
  696. data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
  697. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
  698. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
  699. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
  700. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
  701. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
  702. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
  703. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
  704. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
  705. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
  706. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
  707. data/vendor/local/share/gtk-doc/html/gobject/index.html +187 -0
  708. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +734 -0
  709. data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
  710. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
  711. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
  712. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
  713. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
  714. data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
  715. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +82 -0
  716. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
  717. data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
  718. data/vendor/local/share/gtk-doc/html/gobject/style.css +257 -0
  719. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
  720. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
  721. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
  722. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
  723. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
  724. data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
  725. data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
  726. data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
  727. data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
  728. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  729. data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
  730. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  731. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  732. data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
  733. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  734. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  735. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  736. data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
  737. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
  738. data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
  739. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  740. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  741. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  742. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  743. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  744. data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
  745. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  746. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  747. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  748. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  749. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  750. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  751. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  752. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  753. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  754. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  755. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  756. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  757. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  758. data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
  759. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  760. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  761. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  762. data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
  763. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  764. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  765. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  766. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  767. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  768. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  769. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  770. data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
  771. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  772. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  773. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  774. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  775. data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
  776. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  777. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  778. data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
  779. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  780. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  781. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  782. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  783. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  784. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  785. data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
  786. data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
  787. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  789. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
  791. data/vendor/local/share/locale/locale.alias +77 -0
  792. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  793. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  794. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  795. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  796. data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
  797. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  798. data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
  799. data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  801. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  802. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  803. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  804. data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
  805. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  806. data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
  807. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  808. data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
  809. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  810. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  811. data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  813. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  814. data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  816. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  817. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  818. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  819. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  820. data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  822. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  823. data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
  825. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  826. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  828. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  830. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  831. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  832. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  834. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  835. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  836. data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
  837. data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
  838. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  839. data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
  840. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  841. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  842. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  843. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  844. data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
  845. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  846. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  847. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  848. data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
  849. data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
  850. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  851. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  852. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  853. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  854. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  855. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  856. data/vendor/local/share/man/man1/envsubst.1 +54 -0
  857. data/vendor/local/share/man/man1/gettext.1 +69 -0
  858. data/vendor/local/share/man/man1/glib-genmarshal.1 +307 -0
  859. data/vendor/local/share/man/man1/glib-mkenums.1 +234 -0
  860. data/vendor/local/share/man/man1/gobject-query.1 +83 -0
  861. data/vendor/local/share/man/man1/ngettext.1 +68 -0
  862. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
  863. data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
  864. data/vendor/local/share/man/man3/dcgettext.3 +1 -0
  865. data/vendor/local/share/man/man3/dcngettext.3 +1 -0
  866. data/vendor/local/share/man/man3/dgettext.3 +1 -0
  867. data/vendor/local/share/man/man3/dngettext.3 +1 -0
  868. data/vendor/local/share/man/man3/gettext.3 +99 -0
  869. data/vendor/local/share/man/man3/ngettext.3 +60 -0
  870. data/vendor/local/share/man/man3/textdomain.3 +57 -0
  871. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
  872. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
  873. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
  874. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
  875. metadata +940 -0
@@ -0,0 +1,3356 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>Unicode Manipulation</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
+ <link rel="home" href="index.html" title="GLib Reference Manual">
8
+ <link rel="up" href="glib-utilities.html" title="GLib Utilities">
9
+ <link rel="prev" href="glib-Character-Set-Conversion.html" title="Character Set Conversion">
10
+ <link rel="next" href="glib-Base64-Encoding.html" title="Base64 Encoding">
11
+ <meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16
+ <tr valign="middle">
17
+ <td><a accesskey="p" href="glib-Character-Set-Conversion.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="glib-utilities.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">GLib Reference Manual</th>
21
+ <td><a accesskey="n" href="glib-Base64-Encoding.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22
+ </tr>
23
+ <tr><td colspan="5" class="shortcuts">
24
+ <a href="#glib-Unicode-Manipulation.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#glib-Unicode-Manipulation.description" class="shortcut">Description</a>
27
+ </td></tr>
28
+ </table>
29
+ <div class="refentry" title="Unicode Manipulation">
30
+ <a name="glib-Unicode-Manipulation"></a><div class="titlepage"></div>
31
+ <div class="refnamediv"><table width="100%"><tr>
32
+ <td valign="top">
33
+ <h2><span class="refentrytitle"><a name="glib-Unicode-Manipulation.top_of_page"></a>Unicode Manipulation</span></h2>
34
+ <p>Unicode Manipulation — functions operating on Unicode characters and UTF-8 strings</p>
35
+ </td>
36
+ <td valign="top" align="right"></td>
37
+ </tr></table></div>
38
+ <div class="refsynopsisdiv" title="Synopsis">
39
+ <a name="glib-Unicode-Manipulation.synopsis"></a><h2>Synopsis</h2>
40
+ <pre class="synopsis">
41
+ #include &lt;glib.h&gt;
42
+
43
+ typedef <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar">gunichar</a>;
44
+ typedef <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2">gunichar2</a>;
45
+
46
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-validate" title="g_unichar_validate ()">g_unichar_validate</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>);
47
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isalnum" title="g_unichar_isalnum ()">g_unichar_isalnum</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
48
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isalpha" title="g_unichar_isalpha ()">g_unichar_isalpha</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
49
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iscntrl" title="g_unichar_iscntrl ()">g_unichar_iscntrl</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
50
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isdefined" title="g_unichar_isdefined ()">g_unichar_isdefined</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
51
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isdigit" title="g_unichar_isdigit ()">g_unichar_isdigit</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
52
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isgraph" title="g_unichar_isgraph ()">g_unichar_isgraph</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
53
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-islower" title="g_unichar_islower ()">g_unichar_islower</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
54
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-ismark" title="g_unichar_ismark ()">g_unichar_ismark</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
55
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isprint" title="g_unichar_isprint ()">g_unichar_isprint</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
56
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-ispunct" title="g_unichar_ispunct ()">g_unichar_ispunct</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
57
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isspace" title="g_unichar_isspace ()">g_unichar_isspace</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
58
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-istitle" title="g_unichar_istitle ()">g_unichar_istitle</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
59
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isupper" title="g_unichar_isupper ()">g_unichar_isupper</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
60
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isxdigit" title="g_unichar_isxdigit ()">g_unichar_isxdigit</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
61
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide" title="g_unichar_iswide ()">g_unichar_iswide</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
62
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide-cjk" title="g_unichar_iswide_cjk ()">g_unichar_iswide_cjk</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
63
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iszerowidth" title="g_unichar_iszerowidth ()">g_unichar_iszerowidth</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
64
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-toupper" title="g_unichar_toupper ()">g_unichar_toupper</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
65
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-tolower" title="g_unichar_tolower ()">g_unichar_tolower</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
66
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-totitle" title="g_unichar_totitle ()">g_unichar_totitle</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
67
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-digit-value" title="g_unichar_digit_value ()">g_unichar_digit_value</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
68
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-xdigit-value" title="g_unichar_xdigit_value ()">g_unichar_xdigit_value</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
69
+ enum <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeType" title="enum GUnicodeType">GUnicodeType</a>;
70
+ <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeType" title="enum GUnicodeType"><span class="returnvalue">GUnicodeType</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-type" title="g_unichar_type ()">g_unichar_type</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
71
+ enum <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeBreakType" title="enum GUnicodeBreakType">GUnicodeBreakType</a>;
72
+ <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeBreakType" title="enum GUnicodeBreakType"><span class="returnvalue">GUnicodeBreakType</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-break-type" title="g_unichar_break_type ()">g_unichar_break_type</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
73
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-combining-class" title="g_unichar_combining_class ()">g_unichar_combining_class</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> uc</code></em>);
74
+ <span class="returnvalue">void</span> <a class="link" href="glib-Unicode-Manipulation.html#g-unicode-canonical-ordering" title="g_unicode_canonical_ordering ()">g_unicode_canonical_ordering</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *string</code></em>,
75
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> len</code></em>);
76
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-unicode-canonical-decomposition" title="g_unicode_canonical_decomposition ()">g_unicode_canonical_decomposition</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>,
77
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> *result_len</code></em>);
78
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-get-mirror-char" title="g_unichar_get_mirror_char ()">g_unichar_get_mirror_char</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>,
79
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *mirrored_ch</code></em>);
80
+ enum <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript">GUnicodeScript</a>;
81
+ <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="returnvalue">GUnicodeScript</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-get-script" title="g_unichar_get_script ()">g_unichar_get_script</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>);
82
+
83
+ #define <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-next-char" title="g_utf8_next_char()">g_utf8_next_char</a> (p)
84
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()">g_utf8_get_char</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>);
85
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char-validated" title="g_utf8_get_char_validated ()">g_utf8_get_char_validated</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
86
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> max_len</code></em>);
87
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-offset-to-pointer" title="g_utf8_offset_to_pointer ()">g_utf8_offset_to_pointer</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
88
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> offset</code></em>);
89
+ <a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="returnvalue">glong</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-pointer-to-offset" title="g_utf8_pointer_to_offset ()">g_utf8_pointer_to_offset</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
90
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pos</code></em>);
91
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-prev-char" title="g_utf8_prev_char ()">g_utf8_prev_char</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>);
92
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-find-next-char" title="g_utf8_find_next_char ()">g_utf8_find_next_char</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
93
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *end</code></em>);
94
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-find-prev-char" title="g_utf8_find_prev_char ()">g_utf8_find_prev_char</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
95
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>);
96
+ <a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="returnvalue">glong</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strlen" title="g_utf8_strlen ()">g_utf8_strlen</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
97
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> max</code></em>);
98
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strncpy" title="g_utf8_strncpy ()">g_utf8_strncpy</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
99
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *src</code></em>,
100
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> n</code></em>);
101
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strchr" title="g_utf8_strchr ()">g_utf8_strchr</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
102
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
103
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
104
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strrchr" title="g_utf8_strrchr ()">g_utf8_strrchr</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
105
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
106
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);
107
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strreverse" title="g_utf8_strreverse ()">g_utf8_strreverse</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
108
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
109
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-validate" title="g_utf8_validate ()">g_utf8_validate</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
110
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> max_len</code></em>,
111
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **end</code></em>);
112
+
113
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strup" title="g_utf8_strup ()">g_utf8_strup</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
114
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
115
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strdown" title="g_utf8_strdown ()">g_utf8_strdown</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
116
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
117
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-casefold" title="g_utf8_casefold ()">g_utf8_casefold</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
118
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
119
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-normalize" title="g_utf8_normalize ()">g_utf8_normalize</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
120
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
121
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#GNormalizeMode" title="enum GNormalizeMode"><span class="type">GNormalizeMode</span></a> mode</code></em>);
122
+ enum <a class="link" href="glib-Unicode-Manipulation.html#GNormalizeMode" title="enum GNormalizeMode">GNormalizeMode</a>;
123
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-collate" title="g_utf8_collate ()">g_utf8_collate</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str1</code></em>,
124
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str2</code></em>);
125
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-collate-key" title="g_utf8_collate_key ()">g_utf8_collate_key</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
126
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
127
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-collate-key-for-filename" title="g_utf8_collate_key_for_filename ()">g_utf8_collate_key_for_filename</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
128
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);
129
+
130
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="returnvalue">gunichar2</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-to-utf16" title="g_utf8_to_utf16 ()">g_utf8_to_utf16</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
131
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
132
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
133
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
134
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
135
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-to-ucs4" title="g_utf8_to_ucs4 ()">g_utf8_to_ucs4</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
136
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
137
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
138
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
139
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
140
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-to-ucs4-fast" title="g_utf8_to_ucs4_fast ()">g_utf8_to_ucs4_fast</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
141
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
142
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>);
143
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-utf16-to-ucs4" title="g_utf16_to_ucs4 ()">g_utf16_to_ucs4</a> (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="type">gunichar2</span></a> *str</code></em>,
144
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
145
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
146
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
147
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
148
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-utf16-to-utf8" title="g_utf16_to_utf8 ()">g_utf16_to_utf8</a> (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="type">gunichar2</span></a> *str</code></em>,
149
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
150
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
151
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
152
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
153
+ <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="returnvalue">gunichar2</span></a> * <a class="link" href="glib-Unicode-Manipulation.html#g-ucs4-to-utf16" title="g_ucs4_to_utf16 ()">g_ucs4_to_utf16</a> (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *str</code></em>,
154
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
155
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
156
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
157
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
158
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* <a class="link" href="glib-Unicode-Manipulation.html#g-ucs4-to-utf8" title="g_ucs4_to_utf8 ()">g_ucs4_to_utf8</a> (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *str</code></em>,
159
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
160
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
161
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
162
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
163
+ <a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-to-utf8" title="g_unichar_to_utf8 ()">g_unichar_to_utf8</a> (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>,
164
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *outbuf</code></em>);
165
+ </pre>
166
+ </div>
167
+ <div class="refsect1" title="Description">
168
+ <a name="glib-Unicode-Manipulation.description"></a><h2>Description</h2>
169
+ <p>
170
+ This section describes a number of functions for dealing with
171
+ Unicode characters and strings. There are analogues of the
172
+ traditional <code class="filename">ctype.h</code> character classification
173
+ and case conversion functions, UTF-8 analogues of some string utility
174
+ functions, functions to perform normalization, case conversion and
175
+ collation on UTF-8 strings and finally functions to convert between
176
+ the UTF-8, UTF-16 and UCS-4 encodings of Unicode.
177
+ </p>
178
+ <p>
179
+ The implementations of the Unicode functions in GLib are based
180
+ on the Unicode Character Data tables, which are available from
181
+ <a class="ulink" href="http://www.unicode.org/" target="_top">www.unicode.org</a>.
182
+ GLib 2.8 supports Unicode 4.0, GLib 2.10 supports Unicode 4.1,
183
+ GLib 2.12 supports Unicode 5.0, GLib 2.16.3 supports Unicode 5.1.
184
+ </p>
185
+ </div>
186
+ <div class="refsect1" title="Details">
187
+ <a name="glib-Unicode-Manipulation.details"></a><h2>Details</h2>
188
+ <div class="refsect2" title="gunichar">
189
+ <a name="gunichar"></a><h3>gunichar</h3>
190
+ <pre class="programlisting">typedef guint32 gunichar;
191
+ </pre>
192
+ <p>
193
+ A type which can hold any UTF-32 or UCS-4 character code, also known
194
+ as a Unicode code point.
195
+ </p>
196
+ <p>
197
+ If you want to produce the UTF-8 representation of a <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a>,
198
+ use <a class="link" href="glib-Unicode-Manipulation.html#g-ucs4-to-utf8" title="g_ucs4_to_utf8 ()"><code class="function">g_ucs4_to_utf8()</code></a>. See also <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-to-ucs4" title="g_utf8_to_ucs4 ()"><code class="function">g_utf8_to_ucs4()</code></a> for the reverse process.
199
+ </p>
200
+ <p>
201
+ To print/scan values of this type as integer, use
202
+ <a class="link" href="glib-Miscellaneous-Macros.html#G-GINT32-MODIFIER:CAPS" title="G_GINT32_MODIFIER"><code class="literal">G_GINT32_MODIFIER</code></a> and/or <a class="link" href="glib-Miscellaneous-Macros.html#G-GUINT32-FORMAT:CAPS" title="G_GUINT32_FORMAT"><code class="literal">G_GUINT32_FORMAT</code></a>.
203
+ </p>
204
+ <p>
205
+ The notation to express a Unicode code point in running text is as a
206
+ hexadecimal number with four to six digits and uppercase letters, prefixed
207
+ by the string "U+". Leading zeros are omitted, unless the code point would
208
+ have fewer than four hexadecimal digits.
209
+ For example, "U+0041 LATIN CAPITAL LETTER A".
210
+ To print a code point in the U+-notation, use the format string
211
+ "U+<code class="literal">04</code>"G_GINT32_FORMAT"X".
212
+ To scan, use the format string "U+<code class="literal">06</code>"G_GINT32_FORMAT"X".
213
+ </p>
214
+ <div class="informalexample">
215
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
216
+ <tbody>
217
+ <tr>
218
+ <td class="listing_lines" align="right"><pre>1
219
+ 2
220
+ 3</pre></td>
221
+ <td class="listing_code"><pre class="programlisting"><span class="usertype">gunichar</span><span class="normal"> c</span><span class="symbol">;</span>
222
+ <span class="function">sscanf</span><span class="normal"> </span><span class="symbol">(</span><span class="string">"U+0041"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"U+%06"</span><span class="normal"><a href="glib-Miscellaneous-Macros.html#G-GINT32-FORMAT:CAPS">G_GINT32_FORMAT</a></span><span class="string">"X"</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">c</span><span class="symbol">)</span>
223
+ <span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Read U+%04"</span><span class="normal"><a href="glib-Miscellaneous-Macros.html#G-GINT32-FORMAT:CAPS">G_GINT32_FORMAT</a></span><span class="string">"X"</span><span class="symbol">,</span><span class="normal"> c</span><span class="symbol">);</span></pre></td>
224
+ </tr>
225
+ </tbody>
226
+ </table>
227
+ </div>
228
+
229
+ <p>
230
+ </p>
231
+ </div>
232
+ <hr>
233
+ <div class="refsect2" title="gunichar2">
234
+ <a name="gunichar2"></a><h3>gunichar2</h3>
235
+ <pre class="programlisting">typedef guint16 gunichar2;
236
+ </pre>
237
+ <p>
238
+ A type which can hold any UTF-16 code
239
+ point<sup>[<a name="utf16_surrogate_pairs" href="#ftn.utf16_surrogate_pairs" class="footnote">3</a>]</sup>.
240
+ </p>
241
+ <p>
242
+ To print/scan values of this type to/from text you need to convert
243
+ to/from UTF-8, using <a class="link" href="glib-Unicode-Manipulation.html#g-utf16-to-utf8" title="g_utf16_to_utf8 ()"><code class="function">g_utf16_to_utf8()</code></a>/<a class="link" href="glib-Unicode-Manipulation.html#g-utf8-to-utf16" title="g_utf8_to_utf16 ()"><code class="function">g_utf8_to_utf16()</code></a>.
244
+ </p>
245
+ <p>
246
+ To print/scan values of this type as integer, use
247
+ <a class="link" href="glib-Miscellaneous-Macros.html#G-GINT16-MODIFIER:CAPS" title="G_GINT16_MODIFIER"><code class="literal">G_GINT16_MODIFIER</code></a> and/or <a class="link" href="glib-Miscellaneous-Macros.html#G-GUINT16-FORMAT:CAPS" title="G_GUINT16_FORMAT"><code class="literal">G_GUINT16_FORMAT</code></a>.
248
+ </p>
249
+ </div>
250
+ <hr>
251
+ <div class="refsect2" title="g_unichar_validate ()">
252
+ <a name="g-unichar-validate"></a><h3>g_unichar_validate ()</h3>
253
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_validate (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>);</pre>
254
+ <p>
255
+ Checks whether <em class="parameter"><code>ch</code></em> is a valid Unicode character. Some possible
256
+ integer values of <em class="parameter"><code>ch</code></em> will not be valid. 0 is considered a valid
257
+ character, though it's normally a string terminator.
258
+ </p>
259
+ <div class="variablelist"><table border="0">
260
+ <col align="left" valign="top">
261
+ <tbody>
262
+ <tr>
263
+ <td><p><span class="term"><em class="parameter"><code>ch</code></em> :</span></p></td>
264
+ <td>a Unicode character
265
+ </td>
266
+ </tr>
267
+ <tr>
268
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
269
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>ch</code></em> is a valid Unicode character
270
+ </td>
271
+ </tr>
272
+ </tbody>
273
+ </table></div>
274
+ </div>
275
+ <hr>
276
+ <div class="refsect2" title="g_unichar_isalnum ()">
277
+ <a name="g-unichar-isalnum"></a><h3>g_unichar_isalnum ()</h3>
278
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isalnum (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
279
+ <p>
280
+ Determines whether a character is alphanumeric.
281
+ Given some UTF-8 text, obtain a character value
282
+ with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
283
+ </p>
284
+ <div class="variablelist"><table border="0">
285
+ <col align="left" valign="top">
286
+ <tbody>
287
+ <tr>
288
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
289
+ <td>a Unicode character
290
+ </td>
291
+ </tr>
292
+ <tr>
293
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
294
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an alphanumeric character
295
+ </td>
296
+ </tr>
297
+ </tbody>
298
+ </table></div>
299
+ </div>
300
+ <hr>
301
+ <div class="refsect2" title="g_unichar_isalpha ()">
302
+ <a name="g-unichar-isalpha"></a><h3>g_unichar_isalpha ()</h3>
303
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isalpha (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
304
+ <p>
305
+ Determines whether a character is alphabetic (i.e. a letter).
306
+ Given some UTF-8 text, obtain a character value with
307
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
308
+ </p>
309
+ <div class="variablelist"><table border="0">
310
+ <col align="left" valign="top">
311
+ <tbody>
312
+ <tr>
313
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
314
+ <td>a Unicode character
315
+ </td>
316
+ </tr>
317
+ <tr>
318
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
319
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an alphabetic character
320
+ </td>
321
+ </tr>
322
+ </tbody>
323
+ </table></div>
324
+ </div>
325
+ <hr>
326
+ <div class="refsect2" title="g_unichar_iscntrl ()">
327
+ <a name="g-unichar-iscntrl"></a><h3>g_unichar_iscntrl ()</h3>
328
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_iscntrl (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
329
+ <p>
330
+ Determines whether a character is a control character.
331
+ Given some UTF-8 text, obtain a character value with
332
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
333
+ </p>
334
+ <div class="variablelist"><table border="0">
335
+ <col align="left" valign="top">
336
+ <tbody>
337
+ <tr>
338
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
339
+ <td>a Unicode character
340
+ </td>
341
+ </tr>
342
+ <tr>
343
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
344
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is a control character
345
+ </td>
346
+ </tr>
347
+ </tbody>
348
+ </table></div>
349
+ </div>
350
+ <hr>
351
+ <div class="refsect2" title="g_unichar_isdefined ()">
352
+ <a name="g-unichar-isdefined"></a><h3>g_unichar_isdefined ()</h3>
353
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isdefined (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
354
+ <p>
355
+ Determines if a given character is assigned in the Unicode
356
+ standard.
357
+ </p>
358
+ <div class="variablelist"><table border="0">
359
+ <col align="left" valign="top">
360
+ <tbody>
361
+ <tr>
362
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
363
+ <td>a Unicode character
364
+ </td>
365
+ </tr>
366
+ <tr>
367
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
368
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the character has an assigned value
369
+ </td>
370
+ </tr>
371
+ </tbody>
372
+ </table></div>
373
+ </div>
374
+ <hr>
375
+ <div class="refsect2" title="g_unichar_isdigit ()">
376
+ <a name="g-unichar-isdigit"></a><h3>g_unichar_isdigit ()</h3>
377
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isdigit (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
378
+ <p>
379
+ Determines whether a character is numeric (i.e. a digit). This
380
+ covers ASCII 0-9 and also digits in other languages/scripts. Given
381
+ some UTF-8 text, obtain a character value with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
382
+ </p>
383
+ <div class="variablelist"><table border="0">
384
+ <col align="left" valign="top">
385
+ <tbody>
386
+ <tr>
387
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
388
+ <td>a Unicode character
389
+ </td>
390
+ </tr>
391
+ <tr>
392
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
393
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is a digit
394
+ </td>
395
+ </tr>
396
+ </tbody>
397
+ </table></div>
398
+ </div>
399
+ <hr>
400
+ <div class="refsect2" title="g_unichar_isgraph ()">
401
+ <a name="g-unichar-isgraph"></a><h3>g_unichar_isgraph ()</h3>
402
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isgraph (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
403
+ <p>
404
+ Determines whether a character is printable and not a space
405
+ (returns <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for control characters, format characters, and
406
+ spaces). <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isprint" title="g_unichar_isprint ()"><code class="function">g_unichar_isprint()</code></a> is similar, but returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> for
407
+ spaces. Given some UTF-8 text, obtain a character value with
408
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
409
+ </p>
410
+ <div class="variablelist"><table border="0">
411
+ <col align="left" valign="top">
412
+ <tbody>
413
+ <tr>
414
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
415
+ <td>a Unicode character
416
+ </td>
417
+ </tr>
418
+ <tr>
419
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
420
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is printable unless it's a space
421
+ </td>
422
+ </tr>
423
+ </tbody>
424
+ </table></div>
425
+ </div>
426
+ <hr>
427
+ <div class="refsect2" title="g_unichar_islower ()">
428
+ <a name="g-unichar-islower"></a><h3>g_unichar_islower ()</h3>
429
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_islower (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
430
+ <p>
431
+ Determines whether a character is a lowercase letter.
432
+ Given some UTF-8 text, obtain a character value with
433
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
434
+ </p>
435
+ <div class="variablelist"><table border="0">
436
+ <col align="left" valign="top">
437
+ <tbody>
438
+ <tr>
439
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
440
+ <td>a Unicode character
441
+ </td>
442
+ </tr>
443
+ <tr>
444
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
445
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is a lowercase letter
446
+ </td>
447
+ </tr>
448
+ </tbody>
449
+ </table></div>
450
+ </div>
451
+ <hr>
452
+ <div class="refsect2" title="g_unichar_ismark ()">
453
+ <a name="g-unichar-ismark"></a><h3>g_unichar_ismark ()</h3>
454
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_ismark (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
455
+ <p>
456
+ Determines whether a character is a mark (non-spacing mark,
457
+ combining mark, or enclosing mark in Unicode speak).
458
+ Given some UTF-8 text, obtain a character value
459
+ with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
460
+ </p>
461
+ <p>
462
+ Note: in most cases where isalpha characters are allowed,
463
+ ismark characters should be allowed to as they are essential
464
+ for writing most European languages as well as many non-Latin
465
+ scripts.
466
+ </p>
467
+ <div class="variablelist"><table border="0">
468
+ <col align="left" valign="top">
469
+ <tbody>
470
+ <tr>
471
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
472
+ <td>a Unicode character
473
+ </td>
474
+ </tr>
475
+ <tr>
476
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
477
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is a mark character
478
+
479
+ </td>
480
+ </tr>
481
+ </tbody>
482
+ </table></div>
483
+ <p class="since">Since 2.14</p>
484
+ </div>
485
+ <hr>
486
+ <div class="refsect2" title="g_unichar_isprint ()">
487
+ <a name="g-unichar-isprint"></a><h3>g_unichar_isprint ()</h3>
488
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isprint (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
489
+ <p>
490
+ Determines whether a character is printable.
491
+ Unlike <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isgraph" title="g_unichar_isgraph ()"><code class="function">g_unichar_isgraph()</code></a>, returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> for spaces.
492
+ Given some UTF-8 text, obtain a character value with
493
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
494
+ </p>
495
+ <div class="variablelist"><table border="0">
496
+ <col align="left" valign="top">
497
+ <tbody>
498
+ <tr>
499
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
500
+ <td>a Unicode character
501
+ </td>
502
+ </tr>
503
+ <tr>
504
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
505
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is printable
506
+ </td>
507
+ </tr>
508
+ </tbody>
509
+ </table></div>
510
+ </div>
511
+ <hr>
512
+ <div class="refsect2" title="g_unichar_ispunct ()">
513
+ <a name="g-unichar-ispunct"></a><h3>g_unichar_ispunct ()</h3>
514
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_ispunct (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
515
+ <p>
516
+ Determines whether a character is punctuation or a symbol.
517
+ Given some UTF-8 text, obtain a character value with
518
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
519
+ </p>
520
+ <div class="variablelist"><table border="0">
521
+ <col align="left" valign="top">
522
+ <tbody>
523
+ <tr>
524
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
525
+ <td>a Unicode character
526
+ </td>
527
+ </tr>
528
+ <tr>
529
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
530
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is a punctuation or symbol character
531
+ </td>
532
+ </tr>
533
+ </tbody>
534
+ </table></div>
535
+ </div>
536
+ <hr>
537
+ <div class="refsect2" title="g_unichar_isspace ()">
538
+ <a name="g-unichar-isspace"></a><h3>g_unichar_isspace ()</h3>
539
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isspace (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
540
+ <p>
541
+ Determines whether a character is a space, tab, or line separator
542
+ (newline, carriage return, etc.). Given some UTF-8 text, obtain a
543
+ character value with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>.
544
+ </p>
545
+ <p>
546
+ (Note: don't use this to do word breaking; you have to use
547
+ Pango or equivalent to get word breaking right, the algorithm
548
+ is fairly complex.)
549
+ </p>
550
+ <div class="variablelist"><table border="0">
551
+ <col align="left" valign="top">
552
+ <tbody>
553
+ <tr>
554
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
555
+ <td>a Unicode character
556
+ </td>
557
+ </tr>
558
+ <tr>
559
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
560
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is a space character
561
+ </td>
562
+ </tr>
563
+ </tbody>
564
+ </table></div>
565
+ </div>
566
+ <hr>
567
+ <div class="refsect2" title="g_unichar_istitle ()">
568
+ <a name="g-unichar-istitle"></a><h3>g_unichar_istitle ()</h3>
569
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_istitle (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
570
+ <p>
571
+ Determines if a character is titlecase. Some characters in
572
+ Unicode which are composites, such as the DZ digraph
573
+ have three case variants instead of just two. The titlecase
574
+ form is used at the beginning of a word where only the
575
+ first letter is capitalized. The titlecase form of the DZ
576
+ digraph is U+01F2 LATIN CAPITAL LETTTER D WITH SMALL LETTER Z.
577
+ </p>
578
+ <div class="variablelist"><table border="0">
579
+ <col align="left" valign="top">
580
+ <tbody>
581
+ <tr>
582
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
583
+ <td>a Unicode character
584
+ </td>
585
+ </tr>
586
+ <tr>
587
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
588
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the character is titlecase
589
+ </td>
590
+ </tr>
591
+ </tbody>
592
+ </table></div>
593
+ </div>
594
+ <hr>
595
+ <div class="refsect2" title="g_unichar_isupper ()">
596
+ <a name="g-unichar-isupper"></a><h3>g_unichar_isupper ()</h3>
597
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isupper (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
598
+ <p>
599
+ Determines if a character is uppercase.
600
+ </p>
601
+ <div class="variablelist"><table border="0">
602
+ <col align="left" valign="top">
603
+ <tbody>
604
+ <tr>
605
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
606
+ <td>a Unicode character
607
+ </td>
608
+ </tr>
609
+ <tr>
610
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
611
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>c</code></em> is an uppercase character
612
+ </td>
613
+ </tr>
614
+ </tbody>
615
+ </table></div>
616
+ </div>
617
+ <hr>
618
+ <div class="refsect2" title="g_unichar_isxdigit ()">
619
+ <a name="g-unichar-isxdigit"></a><h3>g_unichar_isxdigit ()</h3>
620
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_isxdigit (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
621
+ <p>
622
+ Determines if a character is a hexidecimal digit.
623
+ </p>
624
+ <div class="variablelist"><table border="0">
625
+ <col align="left" valign="top">
626
+ <tbody>
627
+ <tr>
628
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
629
+ <td>a Unicode character.
630
+ </td>
631
+ </tr>
632
+ <tr>
633
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
634
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the character is a hexadecimal digit
635
+ </td>
636
+ </tr>
637
+ </tbody>
638
+ </table></div>
639
+ </div>
640
+ <hr>
641
+ <div class="refsect2" title="g_unichar_iswide ()">
642
+ <a name="g-unichar-iswide"></a><h3>g_unichar_iswide ()</h3>
643
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_iswide (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
644
+ <p>
645
+ Determines if a character is typically rendered in a double-width
646
+ cell.
647
+ </p>
648
+ <div class="variablelist"><table border="0">
649
+ <col align="left" valign="top">
650
+ <tbody>
651
+ <tr>
652
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
653
+ <td>a Unicode character
654
+ </td>
655
+ </tr>
656
+ <tr>
657
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
658
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the character is wide
659
+ </td>
660
+ </tr>
661
+ </tbody>
662
+ </table></div>
663
+ </div>
664
+ <hr>
665
+ <div class="refsect2" title="g_unichar_iswide_cjk ()">
666
+ <a name="g-unichar-iswide-cjk"></a><h3>g_unichar_iswide_cjk ()</h3>
667
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_iswide_cjk (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
668
+ <p>
669
+ Determines if a character is typically rendered in a double-width
670
+ cell under legacy East Asian locales. If a character is wide according to
671
+ <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide" title="g_unichar_iswide ()"><code class="function">g_unichar_iswide()</code></a>, then it is also reported wide with this function, but
672
+ the converse is not necessarily true. See the
673
+ <a class="ulink" href="http://www.unicode.org/reports/tr11/" target="_top">Unicode Standard
674
+ Annex #11</a> for details.
675
+ </p>
676
+ <p>
677
+ If a character passes the <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide" title="g_unichar_iswide ()"><code class="function">g_unichar_iswide()</code></a> test then it will also pass
678
+ this test, but not the other way around. Note that some characters may
679
+ pas both this test and <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iszerowidth" title="g_unichar_iszerowidth ()"><code class="function">g_unichar_iszerowidth()</code></a>.
680
+ </p>
681
+ <div class="variablelist"><table border="0">
682
+ <col align="left" valign="top">
683
+ <tbody>
684
+ <tr>
685
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
686
+ <td>a Unicode character
687
+ </td>
688
+ </tr>
689
+ <tr>
690
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
691
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the character is wide in legacy East Asian locales
692
+
693
+ </td>
694
+ </tr>
695
+ </tbody>
696
+ </table></div>
697
+ <p class="since">Since 2.12</p>
698
+ </div>
699
+ <hr>
700
+ <div class="refsect2" title="g_unichar_iszerowidth ()">
701
+ <a name="g-unichar-iszerowidth"></a><h3>g_unichar_iszerowidth ()</h3>
702
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_iszerowidth (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
703
+ <p>
704
+ Determines if a given character typically takes zero width when rendered.
705
+ The return value is <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> for all non-spacing and enclosing marks
706
+ (e.g., combining accents), format characters, zero-width
707
+ space, but not U+00AD SOFT HYPHEN.
708
+ </p>
709
+ <p>
710
+ A typical use of this function is with one of <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide" title="g_unichar_iswide ()"><code class="function">g_unichar_iswide()</code></a> or
711
+ <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-iswide-cjk" title="g_unichar_iswide_cjk ()"><code class="function">g_unichar_iswide_cjk()</code></a> to determine the number of cells a string occupies
712
+ when displayed on a grid display (terminals). However, note that not all
713
+ terminals support zero-width rendering of zero-width marks.
714
+ </p>
715
+ <div class="variablelist"><table border="0">
716
+ <col align="left" valign="top">
717
+ <tbody>
718
+ <tr>
719
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
720
+ <td>a Unicode character
721
+ </td>
722
+ </tr>
723
+ <tr>
724
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
725
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the character has zero width
726
+
727
+ </td>
728
+ </tr>
729
+ </tbody>
730
+ </table></div>
731
+ <p class="since">Since 2.14</p>
732
+ </div>
733
+ <hr>
734
+ <div class="refsect2" title="g_unichar_toupper ()">
735
+ <a name="g-unichar-toupper"></a><h3>g_unichar_toupper ()</h3>
736
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> g_unichar_toupper (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
737
+ <p>
738
+ Converts a character to uppercase.
739
+ </p>
740
+ <div class="variablelist"><table border="0">
741
+ <col align="left" valign="top">
742
+ <tbody>
743
+ <tr>
744
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
745
+ <td>a Unicode character
746
+ </td>
747
+ </tr>
748
+ <tr>
749
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
750
+ <td> the result of converting <em class="parameter"><code>c</code></em> to uppercase.
751
+ If <em class="parameter"><code>c</code></em> is not an lowercase or titlecase character,
752
+ or has no upper case equivalent <em class="parameter"><code>c</code></em> is returned unchanged.
753
+ </td>
754
+ </tr>
755
+ </tbody>
756
+ </table></div>
757
+ </div>
758
+ <hr>
759
+ <div class="refsect2" title="g_unichar_tolower ()">
760
+ <a name="g-unichar-tolower"></a><h3>g_unichar_tolower ()</h3>
761
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> g_unichar_tolower (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
762
+ <p>
763
+ Converts a character to lower case.
764
+ </p>
765
+ <div class="variablelist"><table border="0">
766
+ <col align="left" valign="top">
767
+ <tbody>
768
+ <tr>
769
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
770
+ <td>a Unicode character.
771
+ </td>
772
+ </tr>
773
+ <tr>
774
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
775
+ <td> the result of converting <em class="parameter"><code>c</code></em> to lower case.
776
+ If <em class="parameter"><code>c</code></em> is not an upperlower or titlecase character,
777
+ or has no lowercase equivalent <em class="parameter"><code>c</code></em> is returned unchanged.
778
+ </td>
779
+ </tr>
780
+ </tbody>
781
+ </table></div>
782
+ </div>
783
+ <hr>
784
+ <div class="refsect2" title="g_unichar_totitle ()">
785
+ <a name="g-unichar-totitle"></a><h3>g_unichar_totitle ()</h3>
786
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> g_unichar_totitle (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
787
+ <p>
788
+ Converts a character to the titlecase.
789
+ </p>
790
+ <div class="variablelist"><table border="0">
791
+ <col align="left" valign="top">
792
+ <tbody>
793
+ <tr>
794
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
795
+ <td>a Unicode character
796
+ </td>
797
+ </tr>
798
+ <tr>
799
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
800
+ <td> the result of converting <em class="parameter"><code>c</code></em> to titlecase.
801
+ If <em class="parameter"><code>c</code></em> is not an uppercase or lowercase character,
802
+ <em class="parameter"><code>c</code></em> is returned unchanged.
803
+ </td>
804
+ </tr>
805
+ </tbody>
806
+ </table></div>
807
+ </div>
808
+ <hr>
809
+ <div class="refsect2" title="g_unichar_digit_value ()">
810
+ <a name="g-unichar-digit-value"></a><h3>g_unichar_digit_value ()</h3>
811
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_unichar_digit_value (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
812
+ <p>
813
+ Determines the numeric value of a character as a decimal
814
+ digit.
815
+ </p>
816
+ <div class="variablelist"><table border="0">
817
+ <col align="left" valign="top">
818
+ <tbody>
819
+ <tr>
820
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
821
+ <td>a Unicode character
822
+ </td>
823
+ </tr>
824
+ <tr>
825
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
826
+ <td> If <em class="parameter"><code>c</code></em> is a decimal digit (according to
827
+ <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isdigit" title="g_unichar_isdigit ()"><code class="function">g_unichar_isdigit()</code></a>), its numeric value. Otherwise, -1.
828
+ </td>
829
+ </tr>
830
+ </tbody>
831
+ </table></div>
832
+ </div>
833
+ <hr>
834
+ <div class="refsect2" title="g_unichar_xdigit_value ()">
835
+ <a name="g-unichar-xdigit-value"></a><h3>g_unichar_xdigit_value ()</h3>
836
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_unichar_xdigit_value (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
837
+ <p>
838
+ Determines the numeric value of a character as a hexidecimal
839
+ digit.
840
+ </p>
841
+ <div class="variablelist"><table border="0">
842
+ <col align="left" valign="top">
843
+ <tbody>
844
+ <tr>
845
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
846
+ <td>a Unicode character
847
+ </td>
848
+ </tr>
849
+ <tr>
850
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
851
+ <td> If <em class="parameter"><code>c</code></em> is a hex digit (according to
852
+ <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-isxdigit" title="g_unichar_isxdigit ()"><code class="function">g_unichar_isxdigit()</code></a>), its numeric value. Otherwise, -1.
853
+ </td>
854
+ </tr>
855
+ </tbody>
856
+ </table></div>
857
+ </div>
858
+ <hr>
859
+ <div class="refsect2" title="enum GUnicodeType">
860
+ <a name="GUnicodeType"></a><h3>enum GUnicodeType</h3>
861
+ <pre class="programlisting">typedef enum
862
+ {
863
+ G_UNICODE_CONTROL,
864
+ G_UNICODE_FORMAT,
865
+ G_UNICODE_UNASSIGNED,
866
+ G_UNICODE_PRIVATE_USE,
867
+ G_UNICODE_SURROGATE,
868
+ G_UNICODE_LOWERCASE_LETTER,
869
+ G_UNICODE_MODIFIER_LETTER,
870
+ G_UNICODE_OTHER_LETTER,
871
+ G_UNICODE_TITLECASE_LETTER,
872
+ G_UNICODE_UPPERCASE_LETTER,
873
+ G_UNICODE_COMBINING_MARK,
874
+ G_UNICODE_ENCLOSING_MARK,
875
+ G_UNICODE_NON_SPACING_MARK,
876
+ G_UNICODE_DECIMAL_NUMBER,
877
+ G_UNICODE_LETTER_NUMBER,
878
+ G_UNICODE_OTHER_NUMBER,
879
+ G_UNICODE_CONNECT_PUNCTUATION,
880
+ G_UNICODE_DASH_PUNCTUATION,
881
+ G_UNICODE_CLOSE_PUNCTUATION,
882
+ G_UNICODE_FINAL_PUNCTUATION,
883
+ G_UNICODE_INITIAL_PUNCTUATION,
884
+ G_UNICODE_OTHER_PUNCTUATION,
885
+ G_UNICODE_OPEN_PUNCTUATION,
886
+ G_UNICODE_CURRENCY_SYMBOL,
887
+ G_UNICODE_MODIFIER_SYMBOL,
888
+ G_UNICODE_MATH_SYMBOL,
889
+ G_UNICODE_OTHER_SYMBOL,
890
+ G_UNICODE_LINE_SEPARATOR,
891
+ G_UNICODE_PARAGRAPH_SEPARATOR,
892
+ G_UNICODE_SPACE_SEPARATOR
893
+ } GUnicodeType;
894
+ </pre>
895
+ <p>
896
+ These are the possible character classifications from the
897
+ Unicode specification.
898
+ See <a class="ulink" href="http://www.unicode.org/Public/UNIDATA/UnicodeData.html" target="_top">http://www.unicode.org/Public/UNIDATA/UnicodeData.html</a>.
899
+ </p>
900
+ <div class="variablelist"><table border="0">
901
+ <col align="left" valign="top">
902
+ <tbody>
903
+ <tr>
904
+ <td><p><a name="G-UNICODE-CONTROL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_CONTROL</code></span></p></td>
905
+ <td>General category "Other, Control" (Cc)
906
+ </td>
907
+ </tr>
908
+ <tr>
909
+ <td><p><a name="G-UNICODE-FORMAT:CAPS"></a><span class="term"><code class="literal">G_UNICODE_FORMAT</code></span></p></td>
910
+ <td>General category "Other, Format" (Cf)
911
+ </td>
912
+ </tr>
913
+ <tr>
914
+ <td><p><a name="G-UNICODE-UNASSIGNED:CAPS"></a><span class="term"><code class="literal">G_UNICODE_UNASSIGNED</code></span></p></td>
915
+ <td>General category "Other, Not Assigned" (Cn)
916
+ </td>
917
+ </tr>
918
+ <tr>
919
+ <td><p><a name="G-UNICODE-PRIVATE-USE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_PRIVATE_USE</code></span></p></td>
920
+ <td>General category "Other, Private Use" (Co)
921
+ </td>
922
+ </tr>
923
+ <tr>
924
+ <td><p><a name="G-UNICODE-SURROGATE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SURROGATE</code></span></p></td>
925
+ <td>General category "Other, Surrogate" (Cs)
926
+ </td>
927
+ </tr>
928
+ <tr>
929
+ <td><p><a name="G-UNICODE-LOWERCASE-LETTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_LOWERCASE_LETTER</code></span></p></td>
930
+ <td>General category "Letter, Lowercase" (Ll)
931
+ </td>
932
+ </tr>
933
+ <tr>
934
+ <td><p><a name="G-UNICODE-MODIFIER-LETTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_MODIFIER_LETTER</code></span></p></td>
935
+ <td>General category "Letter, Modifier" (Lm)
936
+ </td>
937
+ </tr>
938
+ <tr>
939
+ <td><p><a name="G-UNICODE-OTHER-LETTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_OTHER_LETTER</code></span></p></td>
940
+ <td>General category "Letter, Other" (Lo)
941
+ </td>
942
+ </tr>
943
+ <tr>
944
+ <td><p><a name="G-UNICODE-TITLECASE-LETTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_TITLECASE_LETTER</code></span></p></td>
945
+ <td>General category "Letter, Titlecase" (Lt)
946
+ </td>
947
+ </tr>
948
+ <tr>
949
+ <td><p><a name="G-UNICODE-UPPERCASE-LETTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_UPPERCASE_LETTER</code></span></p></td>
950
+ <td>General category "Letter, Uppercase" (Lu)
951
+ </td>
952
+ </tr>
953
+ <tr>
954
+ <td><p><a name="G-UNICODE-COMBINING-MARK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_COMBINING_MARK</code></span></p></td>
955
+ <td>General category "Mark, Spacing Combining" (Mc)
956
+ </td>
957
+ </tr>
958
+ <tr>
959
+ <td><p><a name="G-UNICODE-ENCLOSING-MARK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_ENCLOSING_MARK</code></span></p></td>
960
+ <td>General category "Mark, Enclosing" (Me)
961
+ </td>
962
+ </tr>
963
+ <tr>
964
+ <td><p><a name="G-UNICODE-NON-SPACING-MARK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_NON_SPACING_MARK</code></span></p></td>
965
+ <td>General category "Mark, Nonspacing" (Mn)
966
+ </td>
967
+ </tr>
968
+ <tr>
969
+ <td><p><a name="G-UNICODE-DECIMAL-NUMBER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_DECIMAL_NUMBER</code></span></p></td>
970
+ <td>General category "Number, Decimal Digit" (Nd)
971
+ </td>
972
+ </tr>
973
+ <tr>
974
+ <td><p><a name="G-UNICODE-LETTER-NUMBER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_LETTER_NUMBER</code></span></p></td>
975
+ <td>General category "Number, Letter" (Nl)
976
+ </td>
977
+ </tr>
978
+ <tr>
979
+ <td><p><a name="G-UNICODE-OTHER-NUMBER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_OTHER_NUMBER</code></span></p></td>
980
+ <td>General category "Number, Other" (No)
981
+ </td>
982
+ </tr>
983
+ <tr>
984
+ <td><p><a name="G-UNICODE-CONNECT-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_CONNECT_PUNCTUATION</code></span></p></td>
985
+ <td>General category "Punctuation, Connector" (Pc)
986
+ </td>
987
+ </tr>
988
+ <tr>
989
+ <td><p><a name="G-UNICODE-DASH-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_DASH_PUNCTUATION</code></span></p></td>
990
+ <td>General category "Punctuation, Dash" (Pd)
991
+ </td>
992
+ </tr>
993
+ <tr>
994
+ <td><p><a name="G-UNICODE-CLOSE-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_CLOSE_PUNCTUATION</code></span></p></td>
995
+ <td>General category "Punctuation, Close" (Pe)
996
+ </td>
997
+ </tr>
998
+ <tr>
999
+ <td><p><a name="G-UNICODE-FINAL-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_FINAL_PUNCTUATION</code></span></p></td>
1000
+ <td>General category "Punctuation, Final quote" (Pf)
1001
+ </td>
1002
+ </tr>
1003
+ <tr>
1004
+ <td><p><a name="G-UNICODE-INITIAL-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_INITIAL_PUNCTUATION</code></span></p></td>
1005
+ <td>General category "Punctuation, Initial quote" (Pi)
1006
+ </td>
1007
+ </tr>
1008
+ <tr>
1009
+ <td><p><a name="G-UNICODE-OTHER-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_OTHER_PUNCTUATION</code></span></p></td>
1010
+ <td>General category "Punctuation, Other" (Po)
1011
+ </td>
1012
+ </tr>
1013
+ <tr>
1014
+ <td><p><a name="G-UNICODE-OPEN-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_OPEN_PUNCTUATION</code></span></p></td>
1015
+ <td>General category "Punctuation, Open" (Ps)
1016
+ </td>
1017
+ </tr>
1018
+ <tr>
1019
+ <td><p><a name="G-UNICODE-CURRENCY-SYMBOL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_CURRENCY_SYMBOL</code></span></p></td>
1020
+ <td>General category "Symbol, Currency" (Sc)
1021
+ </td>
1022
+ </tr>
1023
+ <tr>
1024
+ <td><p><a name="G-UNICODE-MODIFIER-SYMBOL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_MODIFIER_SYMBOL</code></span></p></td>
1025
+ <td>General category "Symbol, Modifier" (Sk)
1026
+ </td>
1027
+ </tr>
1028
+ <tr>
1029
+ <td><p><a name="G-UNICODE-MATH-SYMBOL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_MATH_SYMBOL</code></span></p></td>
1030
+ <td>General category "Symbol, Math" (Sm)
1031
+ </td>
1032
+ </tr>
1033
+ <tr>
1034
+ <td><p><a name="G-UNICODE-OTHER-SYMBOL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_OTHER_SYMBOL</code></span></p></td>
1035
+ <td>General category "Symbol, Other" (So)
1036
+ </td>
1037
+ </tr>
1038
+ <tr>
1039
+ <td><p><a name="G-UNICODE-LINE-SEPARATOR:CAPS"></a><span class="term"><code class="literal">G_UNICODE_LINE_SEPARATOR</code></span></p></td>
1040
+ <td>General category "Separator, Line" (Zl)
1041
+ </td>
1042
+ </tr>
1043
+ <tr>
1044
+ <td><p><a name="G-UNICODE-PARAGRAPH-SEPARATOR:CAPS"></a><span class="term"><code class="literal">G_UNICODE_PARAGRAPH_SEPARATOR</code></span></p></td>
1045
+ <td>General category "Separator, Paragraph" (Zp)
1046
+ </td>
1047
+ </tr>
1048
+ <tr>
1049
+ <td><p><a name="G-UNICODE-SPACE-SEPARATOR:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SPACE_SEPARATOR</code></span></p></td>
1050
+ <td>General category "Separator, Space" (Zs)
1051
+ </td>
1052
+ </tr>
1053
+ </tbody>
1054
+ </table></div>
1055
+ </div>
1056
+ <hr>
1057
+ <div class="refsect2" title="g_unichar_type ()">
1058
+ <a name="g-unichar-type"></a><h3>g_unichar_type ()</h3>
1059
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#GUnicodeType" title="enum GUnicodeType"><span class="returnvalue">GUnicodeType</span></a> g_unichar_type (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
1060
+ <p>
1061
+ Classifies a Unicode character by type.
1062
+ </p>
1063
+ <div class="variablelist"><table border="0">
1064
+ <col align="left" valign="top">
1065
+ <tbody>
1066
+ <tr>
1067
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1068
+ <td>a Unicode character
1069
+ </td>
1070
+ </tr>
1071
+ <tr>
1072
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1073
+ <td> the type of the character.
1074
+ </td>
1075
+ </tr>
1076
+ </tbody>
1077
+ </table></div>
1078
+ </div>
1079
+ <hr>
1080
+ <div class="refsect2" title="enum GUnicodeBreakType">
1081
+ <a name="GUnicodeBreakType"></a><h3>enum GUnicodeBreakType</h3>
1082
+ <pre class="programlisting">typedef enum
1083
+ {
1084
+ G_UNICODE_BREAK_MANDATORY,
1085
+ G_UNICODE_BREAK_CARRIAGE_RETURN,
1086
+ G_UNICODE_BREAK_LINE_FEED,
1087
+ G_UNICODE_BREAK_COMBINING_MARK,
1088
+ G_UNICODE_BREAK_SURROGATE,
1089
+ G_UNICODE_BREAK_ZERO_WIDTH_SPACE,
1090
+ G_UNICODE_BREAK_INSEPARABLE,
1091
+ G_UNICODE_BREAK_NON_BREAKING_GLUE,
1092
+ G_UNICODE_BREAK_CONTINGENT,
1093
+ G_UNICODE_BREAK_SPACE,
1094
+ G_UNICODE_BREAK_AFTER,
1095
+ G_UNICODE_BREAK_BEFORE,
1096
+ G_UNICODE_BREAK_BEFORE_AND_AFTER,
1097
+ G_UNICODE_BREAK_HYPHEN,
1098
+ G_UNICODE_BREAK_NON_STARTER,
1099
+ G_UNICODE_BREAK_OPEN_PUNCTUATION,
1100
+ G_UNICODE_BREAK_CLOSE_PUNCTUATION,
1101
+ G_UNICODE_BREAK_QUOTATION,
1102
+ G_UNICODE_BREAK_EXCLAMATION,
1103
+ G_UNICODE_BREAK_IDEOGRAPHIC,
1104
+ G_UNICODE_BREAK_NUMERIC,
1105
+ G_UNICODE_BREAK_INFIX_SEPARATOR,
1106
+ G_UNICODE_BREAK_SYMBOL,
1107
+ G_UNICODE_BREAK_ALPHABETIC,
1108
+ G_UNICODE_BREAK_PREFIX,
1109
+ G_UNICODE_BREAK_POSTFIX,
1110
+ G_UNICODE_BREAK_COMPLEX_CONTEXT,
1111
+ G_UNICODE_BREAK_AMBIGUOUS,
1112
+ G_UNICODE_BREAK_UNKNOWN,
1113
+ G_UNICODE_BREAK_NEXT_LINE,
1114
+ G_UNICODE_BREAK_WORD_JOINER,
1115
+ G_UNICODE_BREAK_HANGUL_L_JAMO,
1116
+ G_UNICODE_BREAK_HANGUL_V_JAMO,
1117
+ G_UNICODE_BREAK_HANGUL_T_JAMO,
1118
+ G_UNICODE_BREAK_HANGUL_LV_SYLLABLE,
1119
+ G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE
1120
+ } GUnicodeBreakType;
1121
+ </pre>
1122
+ <p>
1123
+ These are the possible line break classifications.
1124
+ The five Hangul types were added in Unicode 4.1, so, has been
1125
+ introduced in GLib 2.10. Note that new types may be added in the future.
1126
+ Applications should be ready to handle unknown values.
1127
+ They may be regarded as <a class="link" href="glib-Unicode-Manipulation.html#G-UNICODE-BREAK-UNKNOWN:CAPS"><code class="literal">G_UNICODE_BREAK_UNKNOWN</code></a>.
1128
+ See <a class="ulink" href="http://www.unicode.org/unicode/reports/tr14/" target="_top">http://www.unicode.org/unicode/reports/tr14/</a>.
1129
+ </p>
1130
+ <div class="variablelist"><table border="0">
1131
+ <col align="left" valign="top">
1132
+ <tbody>
1133
+ <tr>
1134
+ <td><p><a name="G-UNICODE-BREAK-MANDATORY:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_MANDATORY</code></span></p></td>
1135
+ <td>Mandatory Break (BK)
1136
+ </td>
1137
+ </tr>
1138
+ <tr>
1139
+ <td><p><a name="G-UNICODE-BREAK-CARRIAGE-RETURN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_CARRIAGE_RETURN</code></span></p></td>
1140
+ <td>Carriage Return (CR)
1141
+ </td>
1142
+ </tr>
1143
+ <tr>
1144
+ <td><p><a name="G-UNICODE-BREAK-LINE-FEED:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_LINE_FEED</code></span></p></td>
1145
+ <td>Line Feed (LF)
1146
+ </td>
1147
+ </tr>
1148
+ <tr>
1149
+ <td><p><a name="G-UNICODE-BREAK-COMBINING-MARK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_COMBINING_MARK</code></span></p></td>
1150
+ <td>Attached Characters and Combining Marks (CM)
1151
+ </td>
1152
+ </tr>
1153
+ <tr>
1154
+ <td><p><a name="G-UNICODE-BREAK-SURROGATE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_SURROGATE</code></span></p></td>
1155
+ <td>Surrogates (SG)
1156
+ </td>
1157
+ </tr>
1158
+ <tr>
1159
+ <td><p><a name="G-UNICODE-BREAK-ZERO-WIDTH-SPACE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_ZERO_WIDTH_SPACE</code></span></p></td>
1160
+ <td>Zero Width Space (ZW)
1161
+ </td>
1162
+ </tr>
1163
+ <tr>
1164
+ <td><p><a name="G-UNICODE-BREAK-INSEPARABLE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_INSEPARABLE</code></span></p></td>
1165
+ <td>Inseparable (IN)
1166
+ </td>
1167
+ </tr>
1168
+ <tr>
1169
+ <td><p><a name="G-UNICODE-BREAK-NON-BREAKING-GLUE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_NON_BREAKING_GLUE</code></span></p></td>
1170
+ <td>Non-breaking ("Glue") (GL)
1171
+ </td>
1172
+ </tr>
1173
+ <tr>
1174
+ <td><p><a name="G-UNICODE-BREAK-CONTINGENT:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_CONTINGENT</code></span></p></td>
1175
+ <td>Contingent Break Opportunity (CB)
1176
+ </td>
1177
+ </tr>
1178
+ <tr>
1179
+ <td><p><a name="G-UNICODE-BREAK-SPACE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_SPACE</code></span></p></td>
1180
+ <td>Space (SP)
1181
+ </td>
1182
+ </tr>
1183
+ <tr>
1184
+ <td><p><a name="G-UNICODE-BREAK-AFTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_AFTER</code></span></p></td>
1185
+ <td>Break Opportunity After (BA)
1186
+ </td>
1187
+ </tr>
1188
+ <tr>
1189
+ <td><p><a name="G-UNICODE-BREAK-BEFORE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_BEFORE</code></span></p></td>
1190
+ <td>Break Opportunity Before (BB)
1191
+ </td>
1192
+ </tr>
1193
+ <tr>
1194
+ <td><p><a name="G-UNICODE-BREAK-BEFORE-AND-AFTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_BEFORE_AND_AFTER</code></span></p></td>
1195
+ <td>Break Opportunity Before and After (B2)
1196
+ </td>
1197
+ </tr>
1198
+ <tr>
1199
+ <td><p><a name="G-UNICODE-BREAK-HYPHEN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_HYPHEN</code></span></p></td>
1200
+ <td>Hyphen (HY)
1201
+ </td>
1202
+ </tr>
1203
+ <tr>
1204
+ <td><p><a name="G-UNICODE-BREAK-NON-STARTER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_NON_STARTER</code></span></p></td>
1205
+ <td>Nonstarter (NS)
1206
+ </td>
1207
+ </tr>
1208
+ <tr>
1209
+ <td><p><a name="G-UNICODE-BREAK-OPEN-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_OPEN_PUNCTUATION</code></span></p></td>
1210
+ <td>Opening Punctuation (OP)
1211
+ </td>
1212
+ </tr>
1213
+ <tr>
1214
+ <td><p><a name="G-UNICODE-BREAK-CLOSE-PUNCTUATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_CLOSE_PUNCTUATION</code></span></p></td>
1215
+ <td>Closing Punctuation (CL)
1216
+ </td>
1217
+ </tr>
1218
+ <tr>
1219
+ <td><p><a name="G-UNICODE-BREAK-QUOTATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_QUOTATION</code></span></p></td>
1220
+ <td>Ambiguous Quotation (QU)
1221
+ </td>
1222
+ </tr>
1223
+ <tr>
1224
+ <td><p><a name="G-UNICODE-BREAK-EXCLAMATION:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_EXCLAMATION</code></span></p></td>
1225
+ <td>Exclamation/Interrogation (EX)
1226
+ </td>
1227
+ </tr>
1228
+ <tr>
1229
+ <td><p><a name="G-UNICODE-BREAK-IDEOGRAPHIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_IDEOGRAPHIC</code></span></p></td>
1230
+ <td>Ideographic (ID)
1231
+ </td>
1232
+ </tr>
1233
+ <tr>
1234
+ <td><p><a name="G-UNICODE-BREAK-NUMERIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_NUMERIC</code></span></p></td>
1235
+ <td>Numeric (NU)
1236
+ </td>
1237
+ </tr>
1238
+ <tr>
1239
+ <td><p><a name="G-UNICODE-BREAK-INFIX-SEPARATOR:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_INFIX_SEPARATOR</code></span></p></td>
1240
+ <td>Infix Separator (Numeric) (IS)
1241
+ </td>
1242
+ </tr>
1243
+ <tr>
1244
+ <td><p><a name="G-UNICODE-BREAK-SYMBOL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_SYMBOL</code></span></p></td>
1245
+ <td>Symbols Allowing Break After (SY)
1246
+ </td>
1247
+ </tr>
1248
+ <tr>
1249
+ <td><p><a name="G-UNICODE-BREAK-ALPHABETIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_ALPHABETIC</code></span></p></td>
1250
+ <td>Ordinary Alphabetic and Symbol Characters (AL)
1251
+ </td>
1252
+ </tr>
1253
+ <tr>
1254
+ <td><p><a name="G-UNICODE-BREAK-PREFIX:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_PREFIX</code></span></p></td>
1255
+ <td>Prefix (Numeric) (PR)
1256
+ </td>
1257
+ </tr>
1258
+ <tr>
1259
+ <td><p><a name="G-UNICODE-BREAK-POSTFIX:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_POSTFIX</code></span></p></td>
1260
+ <td>Postfix (Numeric) (PO)
1261
+ </td>
1262
+ </tr>
1263
+ <tr>
1264
+ <td><p><a name="G-UNICODE-BREAK-COMPLEX-CONTEXT:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_COMPLEX_CONTEXT</code></span></p></td>
1265
+ <td>Complex Content Dependent (South East Asian) (SA)
1266
+ </td>
1267
+ </tr>
1268
+ <tr>
1269
+ <td><p><a name="G-UNICODE-BREAK-AMBIGUOUS:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_AMBIGUOUS</code></span></p></td>
1270
+ <td>Ambiguous (Alphabetic or Ideographic) (AI)
1271
+ </td>
1272
+ </tr>
1273
+ <tr>
1274
+ <td><p><a name="G-UNICODE-BREAK-UNKNOWN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_UNKNOWN</code></span></p></td>
1275
+ <td>Unknown (XX)
1276
+ </td>
1277
+ </tr>
1278
+ <tr>
1279
+ <td><p><a name="G-UNICODE-BREAK-NEXT-LINE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_NEXT_LINE</code></span></p></td>
1280
+ <td>Next Line (NL)
1281
+ </td>
1282
+ </tr>
1283
+ <tr>
1284
+ <td><p><a name="G-UNICODE-BREAK-WORD-JOINER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_WORD_JOINER</code></span></p></td>
1285
+ <td>Word Joiner (WJ)
1286
+ </td>
1287
+ </tr>
1288
+ <tr>
1289
+ <td><p><a name="G-UNICODE-BREAK-HANGUL-L-JAMO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_HANGUL_L_JAMO</code></span></p></td>
1290
+ <td>Hangul L Jamo (JL)
1291
+ </td>
1292
+ </tr>
1293
+ <tr>
1294
+ <td><p><a name="G-UNICODE-BREAK-HANGUL-V-JAMO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_HANGUL_V_JAMO</code></span></p></td>
1295
+ <td>Hangul V Jamo (JV)
1296
+ </td>
1297
+ </tr>
1298
+ <tr>
1299
+ <td><p><a name="G-UNICODE-BREAK-HANGUL-T-JAMO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_HANGUL_T_JAMO</code></span></p></td>
1300
+ <td>Hangul T Jamo (JT)
1301
+ </td>
1302
+ </tr>
1303
+ <tr>
1304
+ <td><p><a name="G-UNICODE-BREAK-HANGUL-LV-SYLLABLE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_HANGUL_LV_SYLLABLE</code></span></p></td>
1305
+ <td>Hangul LV Syllable (H2)
1306
+ </td>
1307
+ </tr>
1308
+ <tr>
1309
+ <td><p><a name="G-UNICODE-BREAK-HANGUL-LVT-SYLLABLE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE</code></span></p></td>
1310
+ <td>Hangul LVT Syllable (H3)
1311
+ </td>
1312
+ </tr>
1313
+ </tbody>
1314
+ </table></div>
1315
+ </div>
1316
+ <hr>
1317
+ <div class="refsect2" title="g_unichar_break_type ()">
1318
+ <a name="g-unichar-break-type"></a><h3>g_unichar_break_type ()</h3>
1319
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#GUnicodeBreakType" title="enum GUnicodeBreakType"><span class="returnvalue">GUnicodeBreakType</span></a> g_unichar_break_type (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
1320
+ <p>
1321
+ Determines the break type of <em class="parameter"><code>c</code></em>. <em class="parameter"><code>c</code></em> should be a Unicode character
1322
+ (to derive a character from UTF-8 encoded text, use
1323
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char" title="g_utf8_get_char ()"><code class="function">g_utf8_get_char()</code></a>). The break type is used to find word and line
1324
+ breaks ("text boundaries"), Pango implements the Unicode boundary
1325
+ resolution algorithms and normally you would use a function such
1326
+ as <a href="/usr/share/gtk-doc/html/pango/pango-Text-Processing.html#pango-break"><code class="function">pango_break()</code></a> instead of caring about break types yourself.
1327
+ </p>
1328
+ <div class="variablelist"><table border="0">
1329
+ <col align="left" valign="top">
1330
+ <tbody>
1331
+ <tr>
1332
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1333
+ <td>a Unicode character
1334
+ </td>
1335
+ </tr>
1336
+ <tr>
1337
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1338
+ <td> the break type of <em class="parameter"><code>c</code></em>
1339
+ </td>
1340
+ </tr>
1341
+ </tbody>
1342
+ </table></div>
1343
+ </div>
1344
+ <hr>
1345
+ <div class="refsect2" title="g_unichar_combining_class ()">
1346
+ <a name="g-unichar-combining-class"></a><h3>g_unichar_combining_class ()</h3>
1347
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_unichar_combining_class (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> uc</code></em>);</pre>
1348
+ <p>
1349
+ Determines the canonical combining class of a Unicode character.
1350
+ </p>
1351
+ <div class="variablelist"><table border="0">
1352
+ <col align="left" valign="top">
1353
+ <tbody>
1354
+ <tr>
1355
+ <td><p><span class="term"><em class="parameter"><code>uc</code></em> :</span></p></td>
1356
+ <td>a Unicode character
1357
+ </td>
1358
+ </tr>
1359
+ <tr>
1360
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1361
+ <td> the combining class of the character
1362
+
1363
+ </td>
1364
+ </tr>
1365
+ </tbody>
1366
+ </table></div>
1367
+ <p class="since">Since 2.14</p>
1368
+ </div>
1369
+ <hr>
1370
+ <div class="refsect2" title="g_unicode_canonical_ordering ()">
1371
+ <a name="g-unicode-canonical-ordering"></a><h3>g_unicode_canonical_ordering ()</h3>
1372
+ <pre class="programlisting"><span class="returnvalue">void</span> g_unicode_canonical_ordering (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *string</code></em>,
1373
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> len</code></em>);</pre>
1374
+ <p>
1375
+ Computes the canonical ordering of a string in-place.
1376
+ This rearranges decomposed characters in the string
1377
+ according to their combining classes. See the Unicode
1378
+ manual for more information.
1379
+ </p>
1380
+ <div class="variablelist"><table border="0">
1381
+ <col align="left" valign="top">
1382
+ <tbody>
1383
+ <tr>
1384
+ <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1385
+ <td>a UCS-4 encoded string.
1386
+ </td>
1387
+ </tr>
1388
+ <tr>
1389
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1390
+ <td>the maximum length of <em class="parameter"><code>string</code></em> to use.
1391
+ </td>
1392
+ </tr>
1393
+ </tbody>
1394
+ </table></div>
1395
+ </div>
1396
+ <hr>
1397
+ <div class="refsect2" title="g_unicode_canonical_decomposition ()">
1398
+ <a name="g-unicode-canonical-decomposition"></a><h3>g_unicode_canonical_decomposition ()</h3>
1399
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * g_unicode_canonical_decomposition (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>,
1400
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> *result_len</code></em>);</pre>
1401
+ <p>
1402
+ Computes the canonical decomposition of a Unicode character.
1403
+ </p>
1404
+ <div class="variablelist"><table border="0">
1405
+ <col align="left" valign="top">
1406
+ <tbody>
1407
+ <tr>
1408
+ <td><p><span class="term"><em class="parameter"><code>ch</code></em> :</span></p></td>
1409
+ <td>a Unicode character.
1410
+ </td>
1411
+ </tr>
1412
+ <tr>
1413
+ <td><p><span class="term"><em class="parameter"><code>result_len</code></em> :</span></p></td>
1414
+ <td>location to store the length of the return value.
1415
+ </td>
1416
+ </tr>
1417
+ <tr>
1418
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1419
+ <td> a newly allocated string of Unicode characters.
1420
+ <em class="parameter"><code>result_len</code></em> is set to the resulting length of the string.
1421
+ </td>
1422
+ </tr>
1423
+ </tbody>
1424
+ </table></div>
1425
+ </div>
1426
+ <hr>
1427
+ <div class="refsect2" title="g_unichar_get_mirror_char ()">
1428
+ <a name="g-unichar-get-mirror-char"></a><h3>g_unichar_get_mirror_char ()</h3>
1429
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_unichar_get_mirror_char (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>,
1430
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *mirrored_ch</code></em>);</pre>
1431
+ <p>
1432
+ In Unicode, some characters are <em class="firstterm">mirrored</em>. This
1433
+ means that their images are mirrored horizontally in text that is laid
1434
+ out from right to left. For instance, "(" would become its mirror image,
1435
+ ")", in right-to-left text.
1436
+ </p>
1437
+ <p>
1438
+ If <em class="parameter"><code>ch</code></em> has the Unicode mirrored property and there is another unicode
1439
+ character that typically has a glyph that is the mirror image of <em class="parameter"><code>ch</code></em>'s
1440
+ glyph and <em class="parameter"><code>mirrored_ch</code></em> is set, it puts that character in the address
1441
+ pointed to by <em class="parameter"><code>mirrored_ch</code></em>. Otherwise the original character is put.
1442
+ </p>
1443
+ <div class="variablelist"><table border="0">
1444
+ <col align="left" valign="top">
1445
+ <tbody>
1446
+ <tr>
1447
+ <td><p><span class="term"><em class="parameter"><code>ch</code></em> :</span></p></td>
1448
+ <td>a Unicode character
1449
+ </td>
1450
+ </tr>
1451
+ <tr>
1452
+ <td><p><span class="term"><em class="parameter"><code>mirrored_ch</code></em> :</span></p></td>
1453
+ <td>location to store the mirrored character
1454
+ </td>
1455
+ </tr>
1456
+ <tr>
1457
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1458
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if <em class="parameter"><code>ch</code></em> has a mirrored character, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
1459
+
1460
+ </td>
1461
+ </tr>
1462
+ </tbody>
1463
+ </table></div>
1464
+ <p class="since">Since 2.4</p>
1465
+ </div>
1466
+ <hr>
1467
+ <div class="refsect2" title="enum GUnicodeScript">
1468
+ <a name="GUnicodeScript"></a><h3>enum GUnicodeScript</h3>
1469
+ <pre class="programlisting">typedef enum
1470
+ { /* ISO 15924 code */
1471
+ G_UNICODE_SCRIPT_INVALID_CODE = -1,
1472
+ G_UNICODE_SCRIPT_COMMON = 0, /* Zyyy */
1473
+ G_UNICODE_SCRIPT_INHERITED, /* Qaai */
1474
+ G_UNICODE_SCRIPT_ARABIC, /* Arab */
1475
+ G_UNICODE_SCRIPT_ARMENIAN, /* Armn */
1476
+ G_UNICODE_SCRIPT_BENGALI, /* Beng */
1477
+ G_UNICODE_SCRIPT_BOPOMOFO, /* Bopo */
1478
+ G_UNICODE_SCRIPT_CHEROKEE, /* Cher */
1479
+ G_UNICODE_SCRIPT_COPTIC, /* Qaac */
1480
+ G_UNICODE_SCRIPT_CYRILLIC, /* Cyrl (Cyrs) */
1481
+ G_UNICODE_SCRIPT_DESERET, /* Dsrt */
1482
+ G_UNICODE_SCRIPT_DEVANAGARI, /* Deva */
1483
+ G_UNICODE_SCRIPT_ETHIOPIC, /* Ethi */
1484
+ G_UNICODE_SCRIPT_GEORGIAN, /* Geor (Geon, Geoa) */
1485
+ G_UNICODE_SCRIPT_GOTHIC, /* Goth */
1486
+ G_UNICODE_SCRIPT_GREEK, /* Grek */
1487
+ G_UNICODE_SCRIPT_GUJARATI, /* Gujr */
1488
+ G_UNICODE_SCRIPT_GURMUKHI, /* Guru */
1489
+ G_UNICODE_SCRIPT_HAN, /* Hani */
1490
+ G_UNICODE_SCRIPT_HANGUL, /* Hang */
1491
+ G_UNICODE_SCRIPT_HEBREW, /* Hebr */
1492
+ G_UNICODE_SCRIPT_HIRAGANA, /* Hira */
1493
+ G_UNICODE_SCRIPT_KANNADA, /* Knda */
1494
+ G_UNICODE_SCRIPT_KATAKANA, /* Kana */
1495
+ G_UNICODE_SCRIPT_KHMER, /* Khmr */
1496
+ G_UNICODE_SCRIPT_LAO, /* Laoo */
1497
+ G_UNICODE_SCRIPT_LATIN, /* Latn (Latf, Latg) */
1498
+ G_UNICODE_SCRIPT_MALAYALAM, /* Mlym */
1499
+ G_UNICODE_SCRIPT_MONGOLIAN, /* Mong */
1500
+ G_UNICODE_SCRIPT_MYANMAR, /* Mymr */
1501
+ G_UNICODE_SCRIPT_OGHAM, /* Ogam */
1502
+ G_UNICODE_SCRIPT_OLD_ITALIC, /* Ital */
1503
+ G_UNICODE_SCRIPT_ORIYA, /* Orya */
1504
+ G_UNICODE_SCRIPT_RUNIC, /* Runr */
1505
+ G_UNICODE_SCRIPT_SINHALA, /* Sinh */
1506
+ G_UNICODE_SCRIPT_SYRIAC, /* Syrc (Syrj, Syrn, Syre) */
1507
+ G_UNICODE_SCRIPT_TAMIL, /* Taml */
1508
+ G_UNICODE_SCRIPT_TELUGU, /* Telu */
1509
+ G_UNICODE_SCRIPT_THAANA, /* Thaa */
1510
+ G_UNICODE_SCRIPT_THAI, /* Thai */
1511
+ G_UNICODE_SCRIPT_TIBETAN, /* Tibt */
1512
+ G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL, /* Cans */
1513
+ G_UNICODE_SCRIPT_YI, /* Yiii */
1514
+ G_UNICODE_SCRIPT_TAGALOG, /* Tglg */
1515
+ G_UNICODE_SCRIPT_HANUNOO, /* Hano */
1516
+ G_UNICODE_SCRIPT_BUHID, /* Buhd */
1517
+ G_UNICODE_SCRIPT_TAGBANWA, /* Tagb */
1518
+
1519
+ /* Unicode-4.0 additions */
1520
+ G_UNICODE_SCRIPT_BRAILLE, /* Brai */
1521
+ G_UNICODE_SCRIPT_CYPRIOT, /* Cprt */
1522
+ G_UNICODE_SCRIPT_LIMBU, /* Limb */
1523
+ G_UNICODE_SCRIPT_OSMANYA, /* Osma */
1524
+ G_UNICODE_SCRIPT_SHAVIAN, /* Shaw */
1525
+ G_UNICODE_SCRIPT_LINEAR_B, /* Linb */
1526
+ G_UNICODE_SCRIPT_TAI_LE, /* Tale */
1527
+ G_UNICODE_SCRIPT_UGARITIC, /* Ugar */
1528
+
1529
+ /* Unicode-4.1 additions */
1530
+ G_UNICODE_SCRIPT_NEW_TAI_LUE, /* Talu */
1531
+ G_UNICODE_SCRIPT_BUGINESE, /* Bugi */
1532
+ G_UNICODE_SCRIPT_GLAGOLITIC, /* Glag */
1533
+ G_UNICODE_SCRIPT_TIFINAGH, /* Tfng */
1534
+ G_UNICODE_SCRIPT_SYLOTI_NAGRI, /* Sylo */
1535
+ G_UNICODE_SCRIPT_OLD_PERSIAN, /* Xpeo */
1536
+ G_UNICODE_SCRIPT_KHAROSHTHI, /* Khar */
1537
+
1538
+ /* Unicode-5.0 additions */
1539
+ G_UNICODE_SCRIPT_UNKNOWN, /* Zzzz */
1540
+ G_UNICODE_SCRIPT_BALINESE, /* Bali */
1541
+ G_UNICODE_SCRIPT_CUNEIFORM, /* Xsux */
1542
+ G_UNICODE_SCRIPT_PHOENICIAN, /* Phnx */
1543
+ G_UNICODE_SCRIPT_PHAGS_PA, /* Phag */
1544
+ G_UNICODE_SCRIPT_NKO, /* Nkoo */
1545
+
1546
+ /* Unicode-5.1 additions */
1547
+ G_UNICODE_SCRIPT_KAYAH_LI, /* Kali */
1548
+ G_UNICODE_SCRIPT_LEPCHA, /* Lepc */
1549
+ G_UNICODE_SCRIPT_REJANG, /* Rjng */
1550
+ G_UNICODE_SCRIPT_SUNDANESE, /* Sund */
1551
+ G_UNICODE_SCRIPT_SAURASHTRA, /* Saur */
1552
+ G_UNICODE_SCRIPT_CHAM, /* Cham */
1553
+ G_UNICODE_SCRIPT_OL_CHIKI, /* Olck */
1554
+ G_UNICODE_SCRIPT_VAI, /* Vaii */
1555
+ G_UNICODE_SCRIPT_CARIAN, /* Cari */
1556
+ G_UNICODE_SCRIPT_LYCIAN, /* Lyci */
1557
+ G_UNICODE_SCRIPT_LYDIAN /* Lydi */
1558
+ } GUnicodeScript;
1559
+ </pre>
1560
+ <p>
1561
+ The <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="type">GUnicodeScript</span></a> enumeration identifies different writing
1562
+ systems. The values correspond to the names as defined in the
1563
+ Unicode standard. The enumeration has been added in GLib 2.14,
1564
+ and is interchangeable with <a href="/usr/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html#PangoScript"><span class="type">PangoScript</span></a>.
1565
+ Note that new types may be added in the future. Applications
1566
+ should be ready to handle unknown values.
1567
+ See <a class="ulink" href="http://www.unicode.org/reports/tr24/" target="_top">Unicode Standard Annex
1568
+ #24: Script names</a>.
1569
+ </p>
1570
+ <div class="variablelist"><table border="0">
1571
+ <col align="left" valign="top">
1572
+ <tbody>
1573
+ <tr>
1574
+ <td><p><a name="G-UNICODE-SCRIPT-INVALID-CODE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_INVALID_CODE</code></span></p></td>
1575
+ <td>a value never returned from <a class="link" href="glib-Unicode-Manipulation.html#g-unichar-get-script" title="g_unichar_get_script ()"><code class="function">g_unichar_get_script()</code></a>
1576
+ </td>
1577
+ </tr>
1578
+ <tr>
1579
+ <td><p><a name="G-UNICODE-SCRIPT-COMMON:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_COMMON</code></span></p></td>
1580
+ <td> a character used by multiple different scripts
1581
+ </td>
1582
+ </tr>
1583
+ <tr>
1584
+ <td><p><a name="G-UNICODE-SCRIPT-INHERITED:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_INHERITED</code></span></p></td>
1585
+ <td> a mark glyph that takes its script from the
1586
+ base glyph to which it is attached
1587
+ </td>
1588
+ </tr>
1589
+ <tr>
1590
+ <td><p><a name="G-UNICODE-SCRIPT-ARABIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ARABIC</code></span></p></td>
1591
+ <td> Arabic
1592
+ </td>
1593
+ </tr>
1594
+ <tr>
1595
+ <td><p><a name="G-UNICODE-SCRIPT-ARMENIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ARMENIAN</code></span></p></td>
1596
+ <td> Armenian
1597
+ </td>
1598
+ </tr>
1599
+ <tr>
1600
+ <td><p><a name="G-UNICODE-SCRIPT-BENGALI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BENGALI</code></span></p></td>
1601
+ <td> Bengali
1602
+ </td>
1603
+ </tr>
1604
+ <tr>
1605
+ <td><p><a name="G-UNICODE-SCRIPT-BOPOMOFO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BOPOMOFO</code></span></p></td>
1606
+ <td> Bopomofo
1607
+ </td>
1608
+ </tr>
1609
+ <tr>
1610
+ <td><p><a name="G-UNICODE-SCRIPT-CHEROKEE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CHEROKEE</code></span></p></td>
1611
+ <td> Cherokee
1612
+ </td>
1613
+ </tr>
1614
+ <tr>
1615
+ <td><p><a name="G-UNICODE-SCRIPT-COPTIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_COPTIC</code></span></p></td>
1616
+ <td> Coptic
1617
+ </td>
1618
+ </tr>
1619
+ <tr>
1620
+ <td><p><a name="G-UNICODE-SCRIPT-CYRILLIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CYRILLIC</code></span></p></td>
1621
+ <td> Cyrillic
1622
+ </td>
1623
+ </tr>
1624
+ <tr>
1625
+ <td><p><a name="G-UNICODE-SCRIPT-DESERET:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_DESERET</code></span></p></td>
1626
+ <td> Deseret
1627
+ </td>
1628
+ </tr>
1629
+ <tr>
1630
+ <td><p><a name="G-UNICODE-SCRIPT-DEVANAGARI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_DEVANAGARI</code></span></p></td>
1631
+ <td>Devanagari
1632
+ </td>
1633
+ </tr>
1634
+ <tr>
1635
+ <td><p><a name="G-UNICODE-SCRIPT-ETHIOPIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ETHIOPIC</code></span></p></td>
1636
+ <td> Ethiopic
1637
+ </td>
1638
+ </tr>
1639
+ <tr>
1640
+ <td><p><a name="G-UNICODE-SCRIPT-GEORGIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GEORGIAN</code></span></p></td>
1641
+ <td> Georgian
1642
+ </td>
1643
+ </tr>
1644
+ <tr>
1645
+ <td><p><a name="G-UNICODE-SCRIPT-GOTHIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GOTHIC</code></span></p></td>
1646
+ <td> Gothic
1647
+ </td>
1648
+ </tr>
1649
+ <tr>
1650
+ <td><p><a name="G-UNICODE-SCRIPT-GREEK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GREEK</code></span></p></td>
1651
+ <td> Greek
1652
+ </td>
1653
+ </tr>
1654
+ <tr>
1655
+ <td><p><a name="G-UNICODE-SCRIPT-GUJARATI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GUJARATI</code></span></p></td>
1656
+ <td> Gujarati
1657
+ </td>
1658
+ </tr>
1659
+ <tr>
1660
+ <td><p><a name="G-UNICODE-SCRIPT-GURMUKHI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GURMUKHI</code></span></p></td>
1661
+ <td> Gurmukhi
1662
+ </td>
1663
+ </tr>
1664
+ <tr>
1665
+ <td><p><a name="G-UNICODE-SCRIPT-HAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HAN</code></span></p></td>
1666
+ <td> Han
1667
+ </td>
1668
+ </tr>
1669
+ <tr>
1670
+ <td><p><a name="G-UNICODE-SCRIPT-HANGUL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HANGUL</code></span></p></td>
1671
+ <td> Hangul
1672
+ </td>
1673
+ </tr>
1674
+ <tr>
1675
+ <td><p><a name="G-UNICODE-SCRIPT-HEBREW:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HEBREW</code></span></p></td>
1676
+ <td> Hebrew
1677
+ </td>
1678
+ </tr>
1679
+ <tr>
1680
+ <td><p><a name="G-UNICODE-SCRIPT-HIRAGANA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HIRAGANA</code></span></p></td>
1681
+ <td> Hiragana
1682
+ </td>
1683
+ </tr>
1684
+ <tr>
1685
+ <td><p><a name="G-UNICODE-SCRIPT-KANNADA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KANNADA</code></span></p></td>
1686
+ <td> Kannada
1687
+ </td>
1688
+ </tr>
1689
+ <tr>
1690
+ <td><p><a name="G-UNICODE-SCRIPT-KATAKANA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KATAKANA</code></span></p></td>
1691
+ <td> Katakana
1692
+ </td>
1693
+ </tr>
1694
+ <tr>
1695
+ <td><p><a name="G-UNICODE-SCRIPT-KHMER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KHMER</code></span></p></td>
1696
+ <td> Khmer
1697
+ </td>
1698
+ </tr>
1699
+ <tr>
1700
+ <td><p><a name="G-UNICODE-SCRIPT-LAO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LAO</code></span></p></td>
1701
+ <td> Lao
1702
+ </td>
1703
+ </tr>
1704
+ <tr>
1705
+ <td><p><a name="G-UNICODE-SCRIPT-LATIN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LATIN</code></span></p></td>
1706
+ <td> Latin
1707
+ </td>
1708
+ </tr>
1709
+ <tr>
1710
+ <td><p><a name="G-UNICODE-SCRIPT-MALAYALAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MALAYALAM</code></span></p></td>
1711
+ <td> Malayalam
1712
+ </td>
1713
+ </tr>
1714
+ <tr>
1715
+ <td><p><a name="G-UNICODE-SCRIPT-MONGOLIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MONGOLIAN</code></span></p></td>
1716
+ <td> Mongolian
1717
+ </td>
1718
+ </tr>
1719
+ <tr>
1720
+ <td><p><a name="G-UNICODE-SCRIPT-MYANMAR:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MYANMAR</code></span></p></td>
1721
+ <td> Myanmar
1722
+ </td>
1723
+ </tr>
1724
+ <tr>
1725
+ <td><p><a name="G-UNICODE-SCRIPT-OGHAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OGHAM</code></span></p></td>
1726
+ <td> Ogham
1727
+ </td>
1728
+ </tr>
1729
+ <tr>
1730
+ <td><p><a name="G-UNICODE-SCRIPT-OLD-ITALIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OLD_ITALIC</code></span></p></td>
1731
+ <td>Old Italic
1732
+ </td>
1733
+ </tr>
1734
+ <tr>
1735
+ <td><p><a name="G-UNICODE-SCRIPT-ORIYA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ORIYA</code></span></p></td>
1736
+ <td> Oriya
1737
+ </td>
1738
+ </tr>
1739
+ <tr>
1740
+ <td><p><a name="G-UNICODE-SCRIPT-RUNIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_RUNIC</code></span></p></td>
1741
+ <td> Runic
1742
+ </td>
1743
+ </tr>
1744
+ <tr>
1745
+ <td><p><a name="G-UNICODE-SCRIPT-SINHALA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SINHALA</code></span></p></td>
1746
+ <td> Sinhala
1747
+ </td>
1748
+ </tr>
1749
+ <tr>
1750
+ <td><p><a name="G-UNICODE-SCRIPT-SYRIAC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SYRIAC</code></span></p></td>
1751
+ <td> Syriac
1752
+ </td>
1753
+ </tr>
1754
+ <tr>
1755
+ <td><p><a name="G-UNICODE-SCRIPT-TAMIL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAMIL</code></span></p></td>
1756
+ <td> Tamil
1757
+ </td>
1758
+ </tr>
1759
+ <tr>
1760
+ <td><p><a name="G-UNICODE-SCRIPT-TELUGU:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TELUGU</code></span></p></td>
1761
+ <td> Telugu
1762
+ </td>
1763
+ </tr>
1764
+ <tr>
1765
+ <td><p><a name="G-UNICODE-SCRIPT-THAANA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_THAANA</code></span></p></td>
1766
+ <td> Thaana
1767
+ </td>
1768
+ </tr>
1769
+ <tr>
1770
+ <td><p><a name="G-UNICODE-SCRIPT-THAI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_THAI</code></span></p></td>
1771
+ <td> Thai
1772
+ </td>
1773
+ </tr>
1774
+ <tr>
1775
+ <td><p><a name="G-UNICODE-SCRIPT-TIBETAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TIBETAN</code></span></p></td>
1776
+ <td> Tibetan
1777
+ </td>
1778
+ </tr>
1779
+ <tr>
1780
+ <td><p><a name="G-UNICODE-SCRIPT-CANADIAN-ABORIGINAL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL</code></span></p></td>
1781
+ <td>
1782
+ Canadian Aboriginal
1783
+ </td>
1784
+ </tr>
1785
+ <tr>
1786
+ <td><p><a name="G-UNICODE-SCRIPT-YI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_YI</code></span></p></td>
1787
+ <td> Yi
1788
+ </td>
1789
+ </tr>
1790
+ <tr>
1791
+ <td><p><a name="G-UNICODE-SCRIPT-TAGALOG:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAGALOG</code></span></p></td>
1792
+ <td> Tagalog
1793
+ </td>
1794
+ </tr>
1795
+ <tr>
1796
+ <td><p><a name="G-UNICODE-SCRIPT-HANUNOO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HANUNOO</code></span></p></td>
1797
+ <td> Hanunoo
1798
+ </td>
1799
+ </tr>
1800
+ <tr>
1801
+ <td><p><a name="G-UNICODE-SCRIPT-BUHID:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BUHID</code></span></p></td>
1802
+ <td> Buhid
1803
+ </td>
1804
+ </tr>
1805
+ <tr>
1806
+ <td><p><a name="G-UNICODE-SCRIPT-TAGBANWA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAGBANWA</code></span></p></td>
1807
+ <td> Tagbanwa
1808
+ </td>
1809
+ </tr>
1810
+ <tr>
1811
+ <td><p><a name="G-UNICODE-SCRIPT-BRAILLE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BRAILLE</code></span></p></td>
1812
+ <td> Braille
1813
+ </td>
1814
+ </tr>
1815
+ <tr>
1816
+ <td><p><a name="G-UNICODE-SCRIPT-CYPRIOT:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CYPRIOT</code></span></p></td>
1817
+ <td> Cypriot
1818
+ </td>
1819
+ </tr>
1820
+ <tr>
1821
+ <td><p><a name="G-UNICODE-SCRIPT-LIMBU:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LIMBU</code></span></p></td>
1822
+ <td> Limbu
1823
+ </td>
1824
+ </tr>
1825
+ <tr>
1826
+ <td><p><a name="G-UNICODE-SCRIPT-OSMANYA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OSMANYA</code></span></p></td>
1827
+ <td> Osmanya
1828
+ </td>
1829
+ </tr>
1830
+ <tr>
1831
+ <td><p><a name="G-UNICODE-SCRIPT-SHAVIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SHAVIAN</code></span></p></td>
1832
+ <td> Shavian
1833
+ </td>
1834
+ </tr>
1835
+ <tr>
1836
+ <td><p><a name="G-UNICODE-SCRIPT-LINEAR-B:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LINEAR_B</code></span></p></td>
1837
+ <td> Linear B
1838
+ </td>
1839
+ </tr>
1840
+ <tr>
1841
+ <td><p><a name="G-UNICODE-SCRIPT-TAI-LE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAI_LE</code></span></p></td>
1842
+ <td> Tai Le
1843
+ </td>
1844
+ </tr>
1845
+ <tr>
1846
+ <td><p><a name="G-UNICODE-SCRIPT-UGARITIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_UGARITIC</code></span></p></td>
1847
+ <td> Ugaritic
1848
+ </td>
1849
+ </tr>
1850
+ <tr>
1851
+ <td><p><a name="G-UNICODE-SCRIPT-NEW-TAI-LUE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_NEW_TAI_LUE</code></span></p></td>
1852
+ <td>New Tai Lue
1853
+ </td>
1854
+ </tr>
1855
+ <tr>
1856
+ <td><p><a name="G-UNICODE-SCRIPT-BUGINESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BUGINESE</code></span></p></td>
1857
+ <td> Buginese
1858
+ </td>
1859
+ </tr>
1860
+ <tr>
1861
+ <td><p><a name="G-UNICODE-SCRIPT-GLAGOLITIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GLAGOLITIC</code></span></p></td>
1862
+ <td>Glagolitic
1863
+ </td>
1864
+ </tr>
1865
+ <tr>
1866
+ <td><p><a name="G-UNICODE-SCRIPT-TIFINAGH:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TIFINAGH</code></span></p></td>
1867
+ <td> Tifinagh
1868
+ </td>
1869
+ </tr>
1870
+ <tr>
1871
+ <td><p><a name="G-UNICODE-SCRIPT-SYLOTI-NAGRI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SYLOTI_NAGRI</code></span></p></td>
1872
+ <td>Syloti Nagri
1873
+ </td>
1874
+ </tr>
1875
+ <tr>
1876
+ <td><p><a name="G-UNICODE-SCRIPT-OLD-PERSIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OLD_PERSIAN</code></span></p></td>
1877
+ <td>Old Persian
1878
+ </td>
1879
+ </tr>
1880
+ <tr>
1881
+ <td><p><a name="G-UNICODE-SCRIPT-KHAROSHTHI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KHAROSHTHI</code></span></p></td>
1882
+ <td>Kharoshthi
1883
+ </td>
1884
+ </tr>
1885
+ <tr>
1886
+ <td><p><a name="G-UNICODE-SCRIPT-UNKNOWN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_UNKNOWN</code></span></p></td>
1887
+ <td> an unassigned code point
1888
+ </td>
1889
+ </tr>
1890
+ <tr>
1891
+ <td><p><a name="G-UNICODE-SCRIPT-BALINESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BALINESE</code></span></p></td>
1892
+ <td> Balinese
1893
+ </td>
1894
+ </tr>
1895
+ <tr>
1896
+ <td><p><a name="G-UNICODE-SCRIPT-CUNEIFORM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CUNEIFORM</code></span></p></td>
1897
+ <td> Cuneiform
1898
+ </td>
1899
+ </tr>
1900
+ <tr>
1901
+ <td><p><a name="G-UNICODE-SCRIPT-PHOENICIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_PHOENICIAN</code></span></p></td>
1902
+ <td>Phoenician
1903
+ </td>
1904
+ </tr>
1905
+ <tr>
1906
+ <td><p><a name="G-UNICODE-SCRIPT-PHAGS-PA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_PHAGS_PA</code></span></p></td>
1907
+ <td> Phags-pa
1908
+ </td>
1909
+ </tr>
1910
+ <tr>
1911
+ <td><p><a name="G-UNICODE-SCRIPT-NKO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_NKO</code></span></p></td>
1912
+ <td> N'Ko
1913
+ </td>
1914
+ </tr>
1915
+ <tr>
1916
+ <td><p><a name="G-UNICODE-SCRIPT-KAYAH-LI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KAYAH_LI</code></span></p></td>
1917
+ <td> Kayah Li. Since 2.16.3
1918
+ </td>
1919
+ </tr>
1920
+ <tr>
1921
+ <td><p><a name="G-UNICODE-SCRIPT-LEPCHA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LEPCHA</code></span></p></td>
1922
+ <td> Lepcha. Since 2.16.3
1923
+ </td>
1924
+ </tr>
1925
+ <tr>
1926
+ <td><p><a name="G-UNICODE-SCRIPT-REJANG:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_REJANG</code></span></p></td>
1927
+ <td> Rejang. Since 2.16.3
1928
+ </td>
1929
+ </tr>
1930
+ <tr>
1931
+ <td><p><a name="G-UNICODE-SCRIPT-SUNDANESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SUNDANESE</code></span></p></td>
1932
+ <td> Sundanese. Since 2.16.3
1933
+ </td>
1934
+ </tr>
1935
+ <tr>
1936
+ <td><p><a name="G-UNICODE-SCRIPT-SAURASHTRA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SAURASHTRA</code></span></p></td>
1937
+ <td>Saurashtra. Since 2.16.3
1938
+ </td>
1939
+ </tr>
1940
+ <tr>
1941
+ <td><p><a name="G-UNICODE-SCRIPT-CHAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CHAM</code></span></p></td>
1942
+ <td> Cham. Since 2.16.3
1943
+ </td>
1944
+ </tr>
1945
+ <tr>
1946
+ <td><p><a name="G-UNICODE-SCRIPT-OL-CHIKI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OL_CHIKI</code></span></p></td>
1947
+ <td> Ol Chiki. Since 2.16.3
1948
+ </td>
1949
+ </tr>
1950
+ <tr>
1951
+ <td><p><a name="G-UNICODE-SCRIPT-VAI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_VAI</code></span></p></td>
1952
+ <td> Vai. Since 2.16.3
1953
+ </td>
1954
+ </tr>
1955
+ <tr>
1956
+ <td><p><a name="G-UNICODE-SCRIPT-CARIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CARIAN</code></span></p></td>
1957
+ <td> Carian. Since 2.16.3
1958
+ </td>
1959
+ </tr>
1960
+ <tr>
1961
+ <td><p><a name="G-UNICODE-SCRIPT-LYCIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LYCIAN</code></span></p></td>
1962
+ <td> Lycian. Since 2.16.3
1963
+ </td>
1964
+ </tr>
1965
+ <tr>
1966
+ <td><p><a name="G-UNICODE-SCRIPT-LYDIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LYDIAN</code></span></p></td>
1967
+ <td> Lydian. Since 2.16.3
1968
+ </td>
1969
+ </tr>
1970
+ </tbody>
1971
+ </table></div>
1972
+ </div>
1973
+ <hr>
1974
+ <div class="refsect2" title="g_unichar_get_script ()">
1975
+ <a name="g-unichar-get-script"></a><h3>g_unichar_get_script ()</h3>
1976
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="returnvalue">GUnicodeScript</span></a> g_unichar_get_script (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> ch</code></em>);</pre>
1977
+ <p>
1978
+ Looks up the <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="type">GUnicodeScript</span></a> for a particular character (as defined
1979
+ by Unicode Standard Annex <span class="type">24</span>). No check is made for <em class="parameter"><code>ch</code></em> being a
1980
+ valid Unicode character; if you pass in invalid character, the
1981
+ result is undefined.
1982
+ </p>
1983
+ <p>
1984
+ This function is equivalent to <a href="/usr/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html#pango-script-for-unichar"><code class="function">pango_script_for_unichar()</code></a> and the
1985
+ two are interchangeable.
1986
+ </p>
1987
+ <div class="variablelist"><table border="0">
1988
+ <col align="left" valign="top">
1989
+ <tbody>
1990
+ <tr>
1991
+ <td><p><span class="term"><em class="parameter"><code>ch</code></em> :</span></p></td>
1992
+ <td>a Unicode character
1993
+ </td>
1994
+ </tr>
1995
+ <tr>
1996
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1997
+ <td> the <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="type">GUnicodeScript</span></a> for the character.
1998
+
1999
+ </td>
2000
+ </tr>
2001
+ </tbody>
2002
+ </table></div>
2003
+ <p class="since">Since 2.14</p>
2004
+ </div>
2005
+ <hr>
2006
+ <div class="refsect2" title="g_utf8_next_char()">
2007
+ <a name="g-utf8-next-char"></a><h3>g_utf8_next_char()</h3>
2008
+ <pre class="programlisting">#define g_utf8_next_char(p)</pre>
2009
+ <p>
2010
+ Skips to the next character in a UTF-8 string. The string must be
2011
+ valid; this macro is as fast as possible, and has no error-checking.
2012
+ You would use this macro to iterate over a string character by
2013
+ character. The macro returns the start of the next UTF-8 character.
2014
+ Before using this macro, use <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-validate" title="g_utf8_validate ()"><code class="function">g_utf8_validate()</code></a> to validate strings
2015
+ that may contain invalid UTF-8.
2016
+ </p>
2017
+ <div class="variablelist"><table border="0">
2018
+ <col align="left" valign="top">
2019
+ <tbody><tr>
2020
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2021
+ <td>Pointer to the start of a valid UTF-8 character.
2022
+ </td>
2023
+ </tr></tbody>
2024
+ </table></div>
2025
+ </div>
2026
+ <hr>
2027
+ <div class="refsect2" title="g_utf8_get_char ()">
2028
+ <a name="g-utf8-get-char"></a><h3>g_utf8_get_char ()</h3>
2029
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> g_utf8_get_char (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>);</pre>
2030
+ <p>
2031
+ Converts a sequence of bytes encoded as UTF-8 to a Unicode character.
2032
+ If <em class="parameter"><code>p</code></em> does not point to a valid UTF-8 encoded character, results are
2033
+ undefined. If you are not sure that the bytes are complete
2034
+ valid Unicode characters, you should use <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-get-char-validated" title="g_utf8_get_char_validated ()"><code class="function">g_utf8_get_char_validated()</code></a>
2035
+ instead.
2036
+ </p>
2037
+ <div class="variablelist"><table border="0">
2038
+ <col align="left" valign="top">
2039
+ <tbody>
2040
+ <tr>
2041
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2042
+ <td>a pointer to Unicode character encoded as UTF-8
2043
+ </td>
2044
+ </tr>
2045
+ <tr>
2046
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2047
+ <td> the resulting character
2048
+ </td>
2049
+ </tr>
2050
+ </tbody>
2051
+ </table></div>
2052
+ </div>
2053
+ <hr>
2054
+ <div class="refsect2" title="g_utf8_get_char_validated ()">
2055
+ <a name="g-utf8-get-char-validated"></a><h3>g_utf8_get_char_validated ()</h3>
2056
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> g_utf8_get_char_validated (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
2057
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> max_len</code></em>);</pre>
2058
+ <p>
2059
+ Convert a sequence of bytes encoded as UTF-8 to a Unicode character.
2060
+ This function checks for incomplete characters, for invalid characters
2061
+ such as characters that are out of the range of Unicode, and for
2062
+ overlong encodings of valid characters.
2063
+ </p>
2064
+ <div class="variablelist"><table border="0">
2065
+ <col align="left" valign="top">
2066
+ <tbody>
2067
+ <tr>
2068
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2069
+ <td>a pointer to Unicode character encoded as UTF-8
2070
+ </td>
2071
+ </tr>
2072
+ <tr>
2073
+ <td><p><span class="term"><em class="parameter"><code>max_len</code></em> :</span></p></td>
2074
+ <td>the maximum number of bytes to read, or -1, for no maximum or
2075
+ if <em class="parameter"><code>p</code></em> is nul-terminated
2076
+ </td>
2077
+ </tr>
2078
+ <tr>
2079
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2080
+ <td> the resulting character. If <em class="parameter"><code>p</code></em> points to a partial
2081
+ sequence at the end of a string that could begin a valid
2082
+ character (or if <em class="parameter"><code>max_len</code></em> is zero), returns (gunichar)-2;
2083
+ otherwise, if <em class="parameter"><code>p</code></em> does not point to a valid UTF-8 encoded
2084
+ Unicode character, returns (gunichar)-1.
2085
+ </td>
2086
+ </tr>
2087
+ </tbody>
2088
+ </table></div>
2089
+ </div>
2090
+ <hr>
2091
+ <div class="refsect2" title="g_utf8_offset_to_pointer ()">
2092
+ <a name="g-utf8-offset-to-pointer"></a><h3>g_utf8_offset_to_pointer ()</h3>
2093
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_offset_to_pointer (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2094
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> offset</code></em>);</pre>
2095
+ <p>
2096
+ Converts from an integer character offset to a pointer to a position
2097
+ within the string.
2098
+ </p>
2099
+ <p>
2100
+ Since 2.10, this function allows to pass a negative <em class="parameter"><code>offset</code></em> to
2101
+ step backwards. It is usually worth stepping backwards from the end
2102
+ instead of forwards if <em class="parameter"><code>offset</code></em> is in the last fourth of the string,
2103
+ since moving forward is about 3 times faster than moving backward.
2104
+ </p>
2105
+ <p>
2106
+ </p>
2107
+ <div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;">
2108
+ <h3 class="title">Note</h3>
2109
+ <p>
2110
+ This function doesn't abort when reaching the end of <em class="parameter"><code>str</code></em>. Therefore
2111
+ you should be sure that <em class="parameter"><code>offset</code></em> is within string boundaries before
2112
+ calling that function. Call <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strlen" title="g_utf8_strlen ()"><code class="function">g_utf8_strlen()</code></a> when unsure.
2113
+ </p>
2114
+ <p>
2115
+ This limitation exists as this function is called frequently during
2116
+ text rendering and therefore has to be as fast as possible.
2117
+ </p>
2118
+ </div>
2119
+ <p>
2120
+ </p>
2121
+ <div class="variablelist"><table border="0">
2122
+ <col align="left" valign="top">
2123
+ <tbody>
2124
+ <tr>
2125
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2126
+ <td>a UTF-8 encoded string
2127
+ </td>
2128
+ </tr>
2129
+ <tr>
2130
+ <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
2131
+ <td>a character offset within <em class="parameter"><code>str</code></em>
2132
+ </td>
2133
+ </tr>
2134
+ <tr>
2135
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2136
+ <td> the resulting pointer
2137
+ </td>
2138
+ </tr>
2139
+ </tbody>
2140
+ </table></div>
2141
+ </div>
2142
+ <hr>
2143
+ <div class="refsect2" title="g_utf8_pointer_to_offset ()">
2144
+ <a name="g-utf8-pointer-to-offset"></a><h3>g_utf8_pointer_to_offset ()</h3>
2145
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="returnvalue">glong</span></a> g_utf8_pointer_to_offset (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2146
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *pos</code></em>);</pre>
2147
+ <p>
2148
+ Converts from a pointer to position within a string to a integer
2149
+ character offset.
2150
+ </p>
2151
+ <p>
2152
+ Since 2.10, this function allows <em class="parameter"><code>pos</code></em> to be before <em class="parameter"><code>str</code></em>, and returns
2153
+ a negative offset in this case.
2154
+ </p>
2155
+ <div class="variablelist"><table border="0">
2156
+ <col align="left" valign="top">
2157
+ <tbody>
2158
+ <tr>
2159
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2160
+ <td>a UTF-8 encoded string
2161
+ </td>
2162
+ </tr>
2163
+ <tr>
2164
+ <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
2165
+ <td>a pointer to a position within <em class="parameter"><code>str</code></em>
2166
+ </td>
2167
+ </tr>
2168
+ <tr>
2169
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2170
+ <td> the resulting character offset
2171
+ </td>
2172
+ </tr>
2173
+ </tbody>
2174
+ </table></div>
2175
+ </div>
2176
+ <hr>
2177
+ <div class="refsect2" title="g_utf8_prev_char ()">
2178
+ <a name="g-utf8-prev-char"></a><h3>g_utf8_prev_char ()</h3>
2179
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_prev_char (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>);</pre>
2180
+ <p>
2181
+ Finds the previous UTF-8 character in the string before <em class="parameter"><code>p</code></em>.
2182
+ </p>
2183
+ <p>
2184
+ <em class="parameter"><code>p</code></em> does not have to be at the beginning of a UTF-8 character. No check
2185
+ is made to see if the character found is actually valid other than
2186
+ it starts with an appropriate byte. If <em class="parameter"><code>p</code></em> might be the first
2187
+ character of the string, you must use <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-find-prev-char" title="g_utf8_find_prev_char ()"><code class="function">g_utf8_find_prev_char()</code></a> instead.
2188
+ </p>
2189
+ <div class="variablelist"><table border="0">
2190
+ <col align="left" valign="top">
2191
+ <tbody>
2192
+ <tr>
2193
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2194
+ <td>a pointer to a position within a UTF-8 encoded string
2195
+ </td>
2196
+ </tr>
2197
+ <tr>
2198
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2199
+ <td> a pointer to the found character.
2200
+ </td>
2201
+ </tr>
2202
+ </tbody>
2203
+ </table></div>
2204
+ </div>
2205
+ <hr>
2206
+ <div class="refsect2" title="g_utf8_find_next_char ()">
2207
+ <a name="g-utf8-find-next-char"></a><h3>g_utf8_find_next_char ()</h3>
2208
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_find_next_char (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
2209
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *end</code></em>);</pre>
2210
+ <p>
2211
+ Finds the start of the next UTF-8 character in the string after <em class="parameter"><code>p</code></em>.
2212
+ </p>
2213
+ <p>
2214
+ <em class="parameter"><code>p</code></em> does not have to be at the beginning of a UTF-8 character. No check
2215
+ is made to see if the character found is actually valid other than
2216
+ it starts with an appropriate byte.
2217
+ </p>
2218
+ <div class="variablelist"><table border="0">
2219
+ <col align="left" valign="top">
2220
+ <tbody>
2221
+ <tr>
2222
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2223
+ <td>a pointer to a position within a UTF-8 encoded string
2224
+ </td>
2225
+ </tr>
2226
+ <tr>
2227
+ <td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
2228
+ <td>a pointer to the byte following the end of the string,
2229
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to indicate that the string is nul-terminated.
2230
+ </td>
2231
+ </tr>
2232
+ <tr>
2233
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2234
+ <td> a pointer to the found character or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
2235
+ </td>
2236
+ </tr>
2237
+ </tbody>
2238
+ </table></div>
2239
+ </div>
2240
+ <hr>
2241
+ <div class="refsect2" title="g_utf8_find_prev_char ()">
2242
+ <a name="g-utf8-find-prev-char"></a><h3>g_utf8_find_prev_char ()</h3>
2243
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_find_prev_char (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2244
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>);</pre>
2245
+ <p>
2246
+ Given a position <em class="parameter"><code>p</code></em> with a UTF-8 encoded string <em class="parameter"><code>str</code></em>, find the start
2247
+ of the previous UTF-8 character starting before <em class="parameter"><code>p</code></em>. Returns <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if no
2248
+ UTF-8 characters are present in <em class="parameter"><code>str</code></em> before <em class="parameter"><code>p</code></em>.
2249
+ </p>
2250
+ <p>
2251
+ <em class="parameter"><code>p</code></em> does not have to be at the beginning of a UTF-8 character. No check
2252
+ is made to see if the character found is actually valid other than
2253
+ it starts with an appropriate byte.
2254
+ </p>
2255
+ <div class="variablelist"><table border="0">
2256
+ <col align="left" valign="top">
2257
+ <tbody>
2258
+ <tr>
2259
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2260
+ <td>pointer to the beginning of a UTF-8 encoded string
2261
+ </td>
2262
+ </tr>
2263
+ <tr>
2264
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2265
+ <td>pointer to some position within <em class="parameter"><code>str</code></em>
2266
+ </td>
2267
+ </tr>
2268
+ <tr>
2269
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2270
+ <td> a pointer to the found character or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2271
+ </td>
2272
+ </tr>
2273
+ </tbody>
2274
+ </table></div>
2275
+ </div>
2276
+ <hr>
2277
+ <div class="refsect2" title="g_utf8_strlen ()">
2278
+ <a name="g-utf8-strlen"></a><h3>g_utf8_strlen ()</h3>
2279
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="returnvalue">glong</span></a> g_utf8_strlen (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
2280
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> max</code></em>);</pre>
2281
+ <p>
2282
+ Computes the length of the string in characters, not including
2283
+ the terminating nul character.
2284
+ </p>
2285
+ <div class="variablelist"><table border="0">
2286
+ <col align="left" valign="top">
2287
+ <tbody>
2288
+ <tr>
2289
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2290
+ <td>pointer to the start of a UTF-8 encoded string
2291
+ </td>
2292
+ </tr>
2293
+ <tr>
2294
+ <td><p><span class="term"><em class="parameter"><code>max</code></em> :</span></p></td>
2295
+ <td>the maximum number of bytes to examine. If <em class="parameter"><code>max</code></em>
2296
+ is less than 0, then the string is assumed to be
2297
+ nul-terminated. If <em class="parameter"><code>max</code></em> is 0, <em class="parameter"><code>p</code></em> will not be examined and
2298
+ may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2299
+ </td>
2300
+ </tr>
2301
+ <tr>
2302
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2303
+ <td> the length of the string in characters
2304
+ </td>
2305
+ </tr>
2306
+ </tbody>
2307
+ </table></div>
2308
+ </div>
2309
+ <hr>
2310
+ <div class="refsect2" title="g_utf8_strncpy ()">
2311
+ <a name="g-utf8-strncpy"></a><h3>g_utf8_strncpy ()</h3>
2312
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_strncpy (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *dest</code></em>,
2313
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *src</code></em>,
2314
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> n</code></em>);</pre>
2315
+ <p>
2316
+ Like the standard C <code class="function">strncpy()</code> function, but
2317
+ copies a given number of characters instead of a given number of
2318
+ bytes. The <em class="parameter"><code>src</code></em> string must be valid UTF-8 encoded text.
2319
+ (Use <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-validate" title="g_utf8_validate ()"><code class="function">g_utf8_validate()</code></a> on all text before trying to use UTF-8
2320
+ utility functions with it.)
2321
+ </p>
2322
+ <div class="variablelist"><table border="0">
2323
+ <col align="left" valign="top">
2324
+ <tbody>
2325
+ <tr>
2326
+ <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
2327
+ <td>buffer to fill with characters from <em class="parameter"><code>src</code></em>
2328
+ </td>
2329
+ </tr>
2330
+ <tr>
2331
+ <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td>
2332
+ <td>UTF-8 encoded string
2333
+ </td>
2334
+ </tr>
2335
+ <tr>
2336
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
2337
+ <td>character count
2338
+ </td>
2339
+ </tr>
2340
+ <tr>
2341
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2342
+ <td> <em class="parameter"><code>dest</code></em>
2343
+ </td>
2344
+ </tr>
2345
+ </tbody>
2346
+ </table></div>
2347
+ </div>
2348
+ <hr>
2349
+ <div class="refsect2" title="g_utf8_strchr ()">
2350
+ <a name="g-utf8-strchr"></a><h3>g_utf8_strchr ()</h3>
2351
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_strchr (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
2352
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
2353
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
2354
+ <p>
2355
+ Finds the leftmost occurrence of the given Unicode character
2356
+ in a UTF-8 encoded string, while limiting the search to <em class="parameter"><code>len</code></em> bytes.
2357
+ If <em class="parameter"><code>len</code></em> is -1, allow unbounded search.
2358
+ </p>
2359
+ <div class="variablelist"><table border="0">
2360
+ <col align="left" valign="top">
2361
+ <tbody>
2362
+ <tr>
2363
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2364
+ <td>a nul-terminated UTF-8 encoded string
2365
+ </td>
2366
+ </tr>
2367
+ <tr>
2368
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2369
+ <td>the maximum length of <em class="parameter"><code>p</code></em>
2370
+ </td>
2371
+ </tr>
2372
+ <tr>
2373
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
2374
+ <td>a Unicode character
2375
+ </td>
2376
+ </tr>
2377
+ <tr>
2378
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2379
+ <td> <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if the string does not contain the character,
2380
+ otherwise, a pointer to the start of the leftmost occurrence of
2381
+ the character in the string.
2382
+ </td>
2383
+ </tr>
2384
+ </tbody>
2385
+ </table></div>
2386
+ </div>
2387
+ <hr>
2388
+ <div class="refsect2" title="g_utf8_strrchr ()">
2389
+ <a name="g-utf8-strrchr"></a><h3>g_utf8_strrchr ()</h3>
2390
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_strrchr (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *p</code></em>,
2391
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
2392
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>);</pre>
2393
+ <p>
2394
+ Find the rightmost occurrence of the given Unicode character
2395
+ in a UTF-8 encoded string, while limiting the search to <em class="parameter"><code>len</code></em> bytes.
2396
+ If <em class="parameter"><code>len</code></em> is -1, allow unbounded search.
2397
+ </p>
2398
+ <div class="variablelist"><table border="0">
2399
+ <col align="left" valign="top">
2400
+ <tbody>
2401
+ <tr>
2402
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2403
+ <td>a nul-terminated UTF-8 encoded string
2404
+ </td>
2405
+ </tr>
2406
+ <tr>
2407
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2408
+ <td>the maximum length of <em class="parameter"><code>p</code></em>
2409
+ </td>
2410
+ </tr>
2411
+ <tr>
2412
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
2413
+ <td>a Unicode character
2414
+ </td>
2415
+ </tr>
2416
+ <tr>
2417
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2418
+ <td> <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if the string does not contain the character,
2419
+ otherwise, a pointer to the start of the rightmost occurrence of the
2420
+ character in the string.
2421
+ </td>
2422
+ </tr>
2423
+ </tbody>
2424
+ </table></div>
2425
+ </div>
2426
+ <hr>
2427
+ <div class="refsect2" title="g_utf8_strreverse ()">
2428
+ <a name="g-utf8-strreverse"></a><h3>g_utf8_strreverse ()</h3>
2429
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf8_strreverse (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2430
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
2431
+ <p>
2432
+ Reverses a UTF-8 string. <em class="parameter"><code>str</code></em> must be valid UTF-8 encoded text.
2433
+ (Use <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-validate" title="g_utf8_validate ()"><code class="function">g_utf8_validate()</code></a> on all text before trying to use UTF-8
2434
+ utility functions with it.)
2435
+ </p>
2436
+ <p>
2437
+ This function is intended for programmatic uses of reversed strings.
2438
+ It pays no attention to decomposed characters, combining marks, byte
2439
+ order marks, directional indicators (LRM, LRO, etc) and similar
2440
+ characters which might need special handling when reversing a string
2441
+ for display purposes.
2442
+ </p>
2443
+ <p>
2444
+ Note that unlike <a class="link" href="glib-String-Utility-Functions.html#g-strreverse" title="g_strreverse ()"><code class="function">g_strreverse()</code></a>, this function returns
2445
+ newly-allocated memory, which should be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> when
2446
+ no longer needed.
2447
+ </p>
2448
+ <div class="variablelist"><table border="0">
2449
+ <col align="left" valign="top">
2450
+ <tbody>
2451
+ <tr>
2452
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2453
+ <td>a UTF-8 encoded string
2454
+ </td>
2455
+ </tr>
2456
+ <tr>
2457
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2458
+ <td>the maximum length of <em class="parameter"><code>str</code></em> to use, in bytes. If <em class="parameter"><code>len</code></em> &lt; 0,
2459
+ then the string is nul-terminated.
2460
+ </td>
2461
+ </tr>
2462
+ <tr>
2463
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2464
+ <td> a newly-allocated string which is the reverse of <em class="parameter"><code>str</code></em>.
2465
+
2466
+ </td>
2467
+ </tr>
2468
+ </tbody>
2469
+ </table></div>
2470
+ <p class="since">Since 2.2</p>
2471
+ </div>
2472
+ <hr>
2473
+ <div class="refsect2" title="g_utf8_validate ()">
2474
+ <a name="g-utf8-validate"></a><h3>g_utf8_validate ()</h3>
2475
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_utf8_validate (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2476
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> max_len</code></em>,
2477
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **end</code></em>);</pre>
2478
+ <p>
2479
+ Validates UTF-8 encoded text. <em class="parameter"><code>str</code></em> is the text to validate;
2480
+ if <em class="parameter"><code>str</code></em> is nul-terminated, then <em class="parameter"><code>max_len</code></em> can be -1, otherwise
2481
+ <em class="parameter"><code>max_len</code></em> should be the number of bytes to validate.
2482
+ If <em class="parameter"><code>end</code></em> is non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, then the end of the valid range
2483
+ will be stored there (i.e. the start of the first invalid
2484
+ character if some bytes were invalid, or the end of the text
2485
+ being validated otherwise).
2486
+ </p>
2487
+ <p>
2488
+ Note that <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-validate" title="g_utf8_validate ()"><code class="function">g_utf8_validate()</code></a> returns <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> if <em class="parameter"><code>max_len</code></em> is
2489
+ positive and NUL is met before <em class="parameter"><code>max_len</code></em> bytes have been read.
2490
+ </p>
2491
+ <p>
2492
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if all of <em class="parameter"><code>str</code></em> was valid. Many GLib and GTK+
2493
+ routines <span class="emphasis"><em>require</em></span> valid UTF-8 as input;
2494
+ so data read from a file or the network should be checked
2495
+ with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-validate" title="g_utf8_validate ()"><code class="function">g_utf8_validate()</code></a> before doing anything else with it.
2496
+ </p>
2497
+ <div class="variablelist"><table border="0">
2498
+ <col align="left" valign="top">
2499
+ <tbody>
2500
+ <tr>
2501
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2502
+ <td>a pointer to character data
2503
+ </td>
2504
+ </tr>
2505
+ <tr>
2506
+ <td><p><span class="term"><em class="parameter"><code>max_len</code></em> :</span></p></td>
2507
+ <td>max bytes to validate, or -1 to go until NUL
2508
+ </td>
2509
+ </tr>
2510
+ <tr>
2511
+ <td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
2512
+ <td>return location for end of valid data
2513
+ </td>
2514
+ </tr>
2515
+ <tr>
2516
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2517
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the text was valid UTF-8
2518
+ </td>
2519
+ </tr>
2520
+ </tbody>
2521
+ </table></div>
2522
+ </div>
2523
+ <hr>
2524
+ <div class="refsect2" title="g_utf8_strup ()">
2525
+ <a name="g-utf8-strup"></a><h3>g_utf8_strup ()</h3>
2526
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_utf8_strup (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2527
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
2528
+ <p>
2529
+ Converts all Unicode characters in the string that have a case
2530
+ to uppercase. The exact manner that this is done depends
2531
+ on the current locale, and may result in the number of
2532
+ characters in the string increasing. (For instance, the
2533
+ German ess-zet will be changed to SS.)
2534
+ </p>
2535
+ <div class="variablelist"><table border="0">
2536
+ <col align="left" valign="top">
2537
+ <tbody>
2538
+ <tr>
2539
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2540
+ <td>a UTF-8 encoded string
2541
+ </td>
2542
+ </tr>
2543
+ <tr>
2544
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2545
+ <td>length of <em class="parameter"><code>str</code></em>, in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
2546
+ </td>
2547
+ </tr>
2548
+ <tr>
2549
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2550
+ <td> a newly allocated string, with all characters
2551
+ converted to uppercase.
2552
+ </td>
2553
+ </tr>
2554
+ </tbody>
2555
+ </table></div>
2556
+ </div>
2557
+ <hr>
2558
+ <div class="refsect2" title="g_utf8_strdown ()">
2559
+ <a name="g-utf8-strdown"></a><h3>g_utf8_strdown ()</h3>
2560
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_utf8_strdown (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2561
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
2562
+ <p>
2563
+ Converts all Unicode characters in the string that have a case
2564
+ to lowercase. The exact manner that this is done depends
2565
+ on the current locale, and may result in the number of
2566
+ characters in the string changing.
2567
+ </p>
2568
+ <div class="variablelist"><table border="0">
2569
+ <col align="left" valign="top">
2570
+ <tbody>
2571
+ <tr>
2572
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2573
+ <td>a UTF-8 encoded string
2574
+ </td>
2575
+ </tr>
2576
+ <tr>
2577
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2578
+ <td>length of <em class="parameter"><code>str</code></em>, in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
2579
+ </td>
2580
+ </tr>
2581
+ <tr>
2582
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2583
+ <td> a newly allocated string, with all characters
2584
+ converted to lowercase.
2585
+ </td>
2586
+ </tr>
2587
+ </tbody>
2588
+ </table></div>
2589
+ </div>
2590
+ <hr>
2591
+ <div class="refsect2" title="g_utf8_casefold ()">
2592
+ <a name="g-utf8-casefold"></a><h3>g_utf8_casefold ()</h3>
2593
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_utf8_casefold (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2594
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
2595
+ <p>
2596
+ Converts a string into a form that is independent of case. The
2597
+ result will not correspond to any particular case, but can be
2598
+ compared for equality or ordered with the results of calling
2599
+ <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-casefold" title="g_utf8_casefold ()"><code class="function">g_utf8_casefold()</code></a> on other strings.
2600
+ </p>
2601
+ <p>
2602
+ Note that calling <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-casefold" title="g_utf8_casefold ()"><code class="function">g_utf8_casefold()</code></a> followed by <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-collate" title="g_utf8_collate ()"><code class="function">g_utf8_collate()</code></a> is
2603
+ only an approximation to the correct linguistic case insensitive
2604
+ ordering, though it is a fairly good one. Getting this exactly
2605
+ right would require a more sophisticated collation function that
2606
+ takes case sensitivity into account. GLib does not currently
2607
+ provide such a function.
2608
+ </p>
2609
+ <div class="variablelist"><table border="0">
2610
+ <col align="left" valign="top">
2611
+ <tbody>
2612
+ <tr>
2613
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2614
+ <td>a UTF-8 encoded string
2615
+ </td>
2616
+ </tr>
2617
+ <tr>
2618
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2619
+ <td>length of <em class="parameter"><code>str</code></em>, in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
2620
+ </td>
2621
+ </tr>
2622
+ <tr>
2623
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2624
+ <td> a newly allocated string, that is a
2625
+ case independent form of <em class="parameter"><code>str</code></em>.
2626
+ </td>
2627
+ </tr>
2628
+ </tbody>
2629
+ </table></div>
2630
+ </div>
2631
+ <hr>
2632
+ <div class="refsect2" title="g_utf8_normalize ()">
2633
+ <a name="g-utf8-normalize"></a><h3>g_utf8_normalize ()</h3>
2634
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_utf8_normalize (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2635
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
2636
+ <em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#GNormalizeMode" title="enum GNormalizeMode"><span class="type">GNormalizeMode</span></a> mode</code></em>);</pre>
2637
+ <p>
2638
+ Converts a string into canonical form, standardizing
2639
+ such issues as whether a character with an accent
2640
+ is represented as a base character and combining
2641
+ accent or as a single precomposed character. The
2642
+ string has to be valid UTF-8, otherwise <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> is
2643
+ returned. You should generally call <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-normalize" title="g_utf8_normalize ()"><code class="function">g_utf8_normalize()</code></a>
2644
+ before comparing two Unicode strings.
2645
+ </p>
2646
+ <p>
2647
+ The normalization mode <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a> only
2648
+ standardizes differences that do not affect the
2649
+ text content, such as the above-mentioned accent
2650
+ representation. <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL:CAPS"><code class="literal">G_NORMALIZE_ALL</code></a> also standardizes
2651
+ the "compatibility" characters in Unicode, such
2652
+ as SUPERSCRIPT THREE to the standard forms
2653
+ (in this case DIGIT THREE). Formatting information
2654
+ may be lost but for most text operations such
2655
+ characters should be considered the same.
2656
+ </p>
2657
+ <p>
2658
+ <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT-COMPOSE:CAPS"><code class="literal">G_NORMALIZE_DEFAULT_COMPOSE</code></a> and <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL-COMPOSE:CAPS"><code class="literal">G_NORMALIZE_ALL_COMPOSE</code></a>
2659
+ are like <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a> and <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL:CAPS"><code class="literal">G_NORMALIZE_ALL</code></a>,
2660
+ but returned a result with composed forms rather
2661
+ than a maximally decomposed form. This is often
2662
+ useful if you intend to convert the string to
2663
+ a legacy encoding or pass it to a system with
2664
+ less capable Unicode handling.
2665
+ </p>
2666
+ <div class="variablelist"><table border="0">
2667
+ <col align="left" valign="top">
2668
+ <tbody>
2669
+ <tr>
2670
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2671
+ <td>a UTF-8 encoded string.
2672
+ </td>
2673
+ </tr>
2674
+ <tr>
2675
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2676
+ <td>length of <em class="parameter"><code>str</code></em>, in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
2677
+ </td>
2678
+ </tr>
2679
+ <tr>
2680
+ <td><p><span class="term"><em class="parameter"><code>mode</code></em> :</span></p></td>
2681
+ <td>the type of normalization to perform.
2682
+ </td>
2683
+ </tr>
2684
+ <tr>
2685
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2686
+ <td> a newly allocated string, that is the
2687
+ normalized form of <em class="parameter"><code>str</code></em>, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if <em class="parameter"><code>str</code></em> is not
2688
+ valid UTF-8.
2689
+ </td>
2690
+ </tr>
2691
+ </tbody>
2692
+ </table></div>
2693
+ </div>
2694
+ <hr>
2695
+ <div class="refsect2" title="enum GNormalizeMode">
2696
+ <a name="GNormalizeMode"></a><h3>enum GNormalizeMode</h3>
2697
+ <pre class="programlisting">typedef enum {
2698
+ G_NORMALIZE_DEFAULT,
2699
+ G_NORMALIZE_NFD = G_NORMALIZE_DEFAULT,
2700
+ G_NORMALIZE_DEFAULT_COMPOSE,
2701
+ G_NORMALIZE_NFC = G_NORMALIZE_DEFAULT_COMPOSE,
2702
+ G_NORMALIZE_ALL,
2703
+ G_NORMALIZE_NFKD = G_NORMALIZE_ALL,
2704
+ G_NORMALIZE_ALL_COMPOSE,
2705
+ G_NORMALIZE_NFKC = G_NORMALIZE_ALL_COMPOSE
2706
+ } GNormalizeMode;
2707
+ </pre>
2708
+ <p>
2709
+ Defines how a Unicode string is transformed in a canonical
2710
+ form, standardizing such issues as whether a character with an accent is
2711
+ represented as a base character and combining accent or as a single precomposed
2712
+ character. Unicode strings should generally be normalized before comparing them.
2713
+ </p>
2714
+ <div class="variablelist"><table border="0">
2715
+ <col align="left" valign="top">
2716
+ <tbody>
2717
+ <tr>
2718
+ <td><p><a name="G-NORMALIZE-DEFAULT:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_DEFAULT</code></span></p></td>
2719
+ <td>standardize differences that do not affect the
2720
+ text content, such as the above-mentioned accent representation.
2721
+ </td>
2722
+ </tr>
2723
+ <tr>
2724
+ <td><p><a name="G-NORMALIZE-NFD:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFD</code></span></p></td>
2725
+ <td>another name for <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a>.
2726
+ </td>
2727
+ </tr>
2728
+ <tr>
2729
+ <td><p><a name="G-NORMALIZE-DEFAULT-COMPOSE:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_DEFAULT_COMPOSE</code></span></p></td>
2730
+ <td>like <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a>, but with composed
2731
+ forms rather than a maximally decomposed form.
2732
+ </td>
2733
+ </tr>
2734
+ <tr>
2735
+ <td><p><a name="G-NORMALIZE-NFC:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFC</code></span></p></td>
2736
+ <td>another name for <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT-COMPOSE:CAPS"><code class="literal">G_NORMALIZE_DEFAULT_COMPOSE</code></a>.
2737
+ </td>
2738
+ </tr>
2739
+ <tr>
2740
+ <td><p><a name="G-NORMALIZE-ALL:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_ALL</code></span></p></td>
2741
+ <td>beyond <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a> also standardize the
2742
+ "compatibility" characters in Unicode, such as SUPERSCRIPT THREE to the
2743
+ standard forms (in this case DIGIT THREE). Formatting information may be
2744
+ lost but for most text operations such characters should be considered the
2745
+ same.
2746
+ </td>
2747
+ </tr>
2748
+ <tr>
2749
+ <td><p><a name="G-NORMALIZE-NFKD:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFKD</code></span></p></td>
2750
+ <td>another name for <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL:CAPS"><code class="literal">G_NORMALIZE_ALL</code></a>.
2751
+ </td>
2752
+ </tr>
2753
+ <tr>
2754
+ <td><p><a name="G-NORMALIZE-ALL-COMPOSE:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_ALL_COMPOSE</code></span></p></td>
2755
+ <td>like <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL:CAPS"><code class="literal">G_NORMALIZE_ALL</code></a>, but with composed
2756
+ forms rather than a maximally decomposed form.
2757
+ </td>
2758
+ </tr>
2759
+ <tr>
2760
+ <td><p><a name="G-NORMALIZE-NFKC:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFKC</code></span></p></td>
2761
+ <td>another name for <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL-COMPOSE:CAPS"><code class="literal">G_NORMALIZE_ALL_COMPOSE</code></a>.
2762
+ </td>
2763
+ </tr>
2764
+ </tbody>
2765
+ </table></div>
2766
+ </div>
2767
+ <hr>
2768
+ <div class="refsect2" title="g_utf8_collate ()">
2769
+ <a name="g-utf8-collate"></a><h3>g_utf8_collate ()</h3>
2770
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_utf8_collate (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str1</code></em>,
2771
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str2</code></em>);</pre>
2772
+ <p>
2773
+ Compares two strings for ordering using the linguistically
2774
+ correct rules for the <a class="link" href="glib-running.html#setlocale" title="Locale">current locale</a>.
2775
+ When sorting a large number of strings, it will be significantly
2776
+ faster to obtain collation keys with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-collate-key" title="g_utf8_collate_key ()"><code class="function">g_utf8_collate_key()</code></a> and
2777
+ compare the keys with <code class="function">strcmp()</code> when sorting instead of sorting
2778
+ the original strings.
2779
+ </p>
2780
+ <div class="variablelist"><table border="0">
2781
+ <col align="left" valign="top">
2782
+ <tbody>
2783
+ <tr>
2784
+ <td><p><span class="term"><em class="parameter"><code>str1</code></em> :</span></p></td>
2785
+ <td>a UTF-8 encoded string
2786
+ </td>
2787
+ </tr>
2788
+ <tr>
2789
+ <td><p><span class="term"><em class="parameter"><code>str2</code></em> :</span></p></td>
2790
+ <td>a UTF-8 encoded string
2791
+ </td>
2792
+ </tr>
2793
+ <tr>
2794
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2795
+ <td> &lt; 0 if <em class="parameter"><code>str1</code></em> compares before <em class="parameter"><code>str2</code></em>,
2796
+ 0 if they compare equal, &gt; 0 if <em class="parameter"><code>str1</code></em> compares after <em class="parameter"><code>str2</code></em>.
2797
+ </td>
2798
+ </tr>
2799
+ </tbody>
2800
+ </table></div>
2801
+ </div>
2802
+ <hr>
2803
+ <div class="refsect2" title="g_utf8_collate_key ()">
2804
+ <a name="g-utf8-collate-key"></a><h3>g_utf8_collate_key ()</h3>
2805
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_utf8_collate_key (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2806
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
2807
+ <p>
2808
+ Converts a string into a collation key that can be compared
2809
+ with other collation keys produced by the same function using
2810
+ <code class="function">strcmp()</code>.
2811
+ </p>
2812
+ <p>
2813
+ The results of comparing the collation keys of two strings
2814
+ with <code class="function">strcmp()</code> will always be the same as comparing the two
2815
+ original keys with <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-collate" title="g_utf8_collate ()"><code class="function">g_utf8_collate()</code></a>.
2816
+ </p>
2817
+ <p>
2818
+ Note that this function depends on the
2819
+ <a class="link" href="glib-running.html#setlocale" title="Locale">current locale</a>.
2820
+ </p>
2821
+ <div class="variablelist"><table border="0">
2822
+ <col align="left" valign="top">
2823
+ <tbody>
2824
+ <tr>
2825
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2826
+ <td>a UTF-8 encoded string.
2827
+ </td>
2828
+ </tr>
2829
+ <tr>
2830
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2831
+ <td>length of <em class="parameter"><code>str</code></em>, in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
2832
+ </td>
2833
+ </tr>
2834
+ <tr>
2835
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2836
+ <td> a newly allocated string. This string should
2837
+ be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> when you are done with it.
2838
+ </td>
2839
+ </tr>
2840
+ </tbody>
2841
+ </table></div>
2842
+ </div>
2843
+ <hr>
2844
+ <div class="refsect2" title="g_utf8_collate_key_for_filename ()">
2845
+ <a name="g-utf8-collate-key-for-filename"></a><h3>g_utf8_collate_key_for_filename ()</h3>
2846
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_utf8_collate_key_for_filename (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2847
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>);</pre>
2848
+ <p>
2849
+ Converts a string into a collation key that can be compared
2850
+ with other collation keys produced by the same function using <code class="function">strcmp()</code>.
2851
+ </p>
2852
+ <p>
2853
+ In order to sort filenames correctly, this function treats the dot '.'
2854
+ as a special case. Most dictionary orderings seem to consider it
2855
+ insignificant, thus producing the ordering "event.c" "eventgenerator.c"
2856
+ "event.h" instead of "event.c" "event.h" "eventgenerator.c". Also, we
2857
+ would like to treat numbers intelligently so that "file1" "file10" "file5"
2858
+ is sorted as "file1" "file5" "file10".
2859
+ </p>
2860
+ <p>
2861
+ Note that this function depends on the
2862
+ <a class="link" href="glib-running.html#setlocale" title="Locale">current locale</a>.
2863
+ </p>
2864
+ <div class="variablelist"><table border="0">
2865
+ <col align="left" valign="top">
2866
+ <tbody>
2867
+ <tr>
2868
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2869
+ <td>a UTF-8 encoded string.
2870
+ </td>
2871
+ </tr>
2872
+ <tr>
2873
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2874
+ <td>length of <em class="parameter"><code>str</code></em>, in bytes, or -1 if <em class="parameter"><code>str</code></em> is nul-terminated.
2875
+ </td>
2876
+ </tr>
2877
+ <tr>
2878
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2879
+ <td> a newly allocated string. This string should
2880
+ be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> when you are done with it.
2881
+
2882
+ </td>
2883
+ </tr>
2884
+ </tbody>
2885
+ </table></div>
2886
+ <p class="since">Since 2.8</p>
2887
+ </div>
2888
+ <hr>
2889
+ <div class="refsect2" title="g_utf8_to_utf16 ()">
2890
+ <a name="g-utf8-to-utf16"></a><h3>g_utf8_to_utf16 ()</h3>
2891
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="returnvalue">gunichar2</span></a> * g_utf8_to_utf16 (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2892
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
2893
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
2894
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
2895
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
2896
+ <p>
2897
+ Convert a string from UTF-8 to UTF-16. A 0 character will be
2898
+ added to the result after the converted text.
2899
+ </p>
2900
+ <div class="variablelist"><table border="0">
2901
+ <col align="left" valign="top">
2902
+ <tbody>
2903
+ <tr>
2904
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2905
+ <td>a UTF-8 encoded string
2906
+ </td>
2907
+ </tr>
2908
+ <tr>
2909
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2910
+ <td>the maximum length (number of bytes) of <em class="parameter"><code>str</code></em> to use.
2911
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
2912
+ </td>
2913
+ </tr>
2914
+ <tr>
2915
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
2916
+ <td>location to store number of bytes read, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2917
+ If <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, then <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-PARTIAL-INPUT:CAPS"><code class="literal">G_CONVERT_ERROR_PARTIAL_INPUT</code></a> will be
2918
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
2919
+ character. If an error occurs then the index of the
2920
+ invalid input is stored here.
2921
+ </td>
2922
+ </tr>
2923
+ <tr>
2924
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
2925
+ <td>location to store number of <span class="type">gunichar2</span> written,
2926
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2927
+ The value stored here does not include the trailing 0.
2928
+ </td>
2929
+ </tr>
2930
+ <tr>
2931
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2932
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore
2933
+ errors. Any of the errors in <a class="link" href="glib-Character-Set-Conversion.html#GConvertError" title="enum GConvertError"><span class="type">GConvertError</span></a> other than
2934
+ <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-NO-CONVERSION:CAPS"><code class="literal">G_CONVERT_ERROR_NO_CONVERSION</code></a> may occur.
2935
+ </td>
2936
+ </tr>
2937
+ <tr>
2938
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2939
+ <td> a pointer to a newly allocated UTF-16 string.
2940
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>. If an
2941
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
2942
+ <em class="parameter"><code>error</code></em> set.
2943
+ </td>
2944
+ </tr>
2945
+ </tbody>
2946
+ </table></div>
2947
+ </div>
2948
+ <hr>
2949
+ <div class="refsect2" title="g_utf8_to_ucs4 ()">
2950
+ <a name="g-utf8-to-ucs4"></a><h3>g_utf8_to_ucs4 ()</h3>
2951
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * g_utf8_to_ucs4 (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
2952
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
2953
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
2954
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
2955
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
2956
+ <p>
2957
+ Convert a string from UTF-8 to a 32-bit fixed width
2958
+ representation as UCS-4. A trailing 0 will be added to the
2959
+ string after the converted text.
2960
+ </p>
2961
+ <div class="variablelist"><table border="0">
2962
+ <col align="left" valign="top">
2963
+ <tbody>
2964
+ <tr>
2965
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2966
+ <td>a UTF-8 encoded string
2967
+ </td>
2968
+ </tr>
2969
+ <tr>
2970
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2971
+ <td>the maximum length of <em class="parameter"><code>str</code></em> to use, in bytes. If <em class="parameter"><code>len</code></em> &lt; 0,
2972
+ then the string is nul-terminated.
2973
+ </td>
2974
+ </tr>
2975
+ <tr>
2976
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
2977
+ <td>location to store number of bytes read, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2978
+ If <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, then <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-PARTIAL-INPUT:CAPS"><code class="literal">G_CONVERT_ERROR_PARTIAL_INPUT</code></a> will be
2979
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
2980
+ character. If an error occurs then the index of the
2981
+ invalid input is stored here.
2982
+ </td>
2983
+ </tr>
2984
+ <tr>
2985
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
2986
+ <td>location to store number of characters written or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2987
+ The value here stored does not include the trailing 0
2988
+ character.
2989
+ </td>
2990
+ </tr>
2991
+ <tr>
2992
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2993
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore
2994
+ errors. Any of the errors in <a class="link" href="glib-Character-Set-Conversion.html#GConvertError" title="enum GConvertError"><span class="type">GConvertError</span></a> other than
2995
+ <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-NO-CONVERSION:CAPS"><code class="literal">G_CONVERT_ERROR_NO_CONVERSION</code></a> may occur.
2996
+ </td>
2997
+ </tr>
2998
+ <tr>
2999
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3000
+ <td> a pointer to a newly allocated UCS-4 string.
3001
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>. If an
3002
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3003
+ <em class="parameter"><code>error</code></em> set.
3004
+ </td>
3005
+ </tr>
3006
+ </tbody>
3007
+ </table></div>
3008
+ </div>
3009
+ <hr>
3010
+ <div class="refsect2" title="g_utf8_to_ucs4_fast ()">
3011
+ <a name="g-utf8-to-ucs4-fast"></a><h3>g_utf8_to_ucs4_fast ()</h3>
3012
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * g_utf8_to_ucs4_fast (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *str</code></em>,
3013
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3014
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>);</pre>
3015
+ <p>
3016
+ Convert a string from UTF-8 to a 32-bit fixed width
3017
+ representation as UCS-4, assuming valid UTF-8 input.
3018
+ This function is roughly twice as fast as <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-to-ucs4" title="g_utf8_to_ucs4 ()"><code class="function">g_utf8_to_ucs4()</code></a>
3019
+ but does no error checking on the input.
3020
+ </p>
3021
+ <div class="variablelist"><table border="0">
3022
+ <col align="left" valign="top">
3023
+ <tbody>
3024
+ <tr>
3025
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3026
+ <td>a UTF-8 encoded string
3027
+ </td>
3028
+ </tr>
3029
+ <tr>
3030
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3031
+ <td>the maximum length of <em class="parameter"><code>str</code></em> to use, in bytes. If <em class="parameter"><code>len</code></em> &lt; 0,
3032
+ then the string is nul-terminated.
3033
+ </td>
3034
+ </tr>
3035
+ <tr>
3036
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3037
+ <td>location to store the number of characters in the
3038
+ result, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3039
+ </td>
3040
+ </tr>
3041
+ <tr>
3042
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3043
+ <td> a pointer to a newly allocated UCS-4 string.
3044
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>.
3045
+ </td>
3046
+ </tr>
3047
+ </tbody>
3048
+ </table></div>
3049
+ </div>
3050
+ <hr>
3051
+ <div class="refsect2" title="g_utf16_to_ucs4 ()">
3052
+ <a name="g-utf16-to-ucs4"></a><h3>g_utf16_to_ucs4 ()</h3>
3053
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> * g_utf16_to_ucs4 (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="type">gunichar2</span></a> *str</code></em>,
3054
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3055
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
3056
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
3057
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
3058
+ <p>
3059
+ Convert a string from UTF-16 to UCS-4. The result will be
3060
+ nul-terminated.
3061
+ </p>
3062
+ <div class="variablelist"><table border="0">
3063
+ <col align="left" valign="top">
3064
+ <tbody>
3065
+ <tr>
3066
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3067
+ <td>a UTF-16 encoded string
3068
+ </td>
3069
+ </tr>
3070
+ <tr>
3071
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3072
+ <td>the maximum length (number of <span class="type">gunichar2</span>) of <em class="parameter"><code>str</code></em> to use.
3073
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3074
+ </td>
3075
+ </tr>
3076
+ <tr>
3077
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3078
+ <td>location to store number of words read, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3079
+ If <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, then <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-PARTIAL-INPUT:CAPS"><code class="literal">G_CONVERT_ERROR_PARTIAL_INPUT</code></a> will be
3080
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
3081
+ character. If an error occurs then the index of the
3082
+ invalid input is stored here.
3083
+ </td>
3084
+ </tr>
3085
+ <tr>
3086
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3087
+ <td>location to store number of characters written, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3088
+ The value stored here does not include the trailing
3089
+ 0 character.
3090
+ </td>
3091
+ </tr>
3092
+ <tr>
3093
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3094
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore
3095
+ errors. Any of the errors in <a class="link" href="glib-Character-Set-Conversion.html#GConvertError" title="enum GConvertError"><span class="type">GConvertError</span></a> other than
3096
+ <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-NO-CONVERSION:CAPS"><code class="literal">G_CONVERT_ERROR_NO_CONVERSION</code></a> may occur.
3097
+ </td>
3098
+ </tr>
3099
+ <tr>
3100
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3101
+ <td> a pointer to a newly allocated UCS-4 string.
3102
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>. If an
3103
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3104
+ <em class="parameter"><code>error</code></em> set.
3105
+ </td>
3106
+ </tr>
3107
+ </tbody>
3108
+ </table></div>
3109
+ </div>
3110
+ <hr>
3111
+ <div class="refsect2" title="g_utf16_to_utf8 ()">
3112
+ <a name="g-utf16-to-utf8"></a><h3>g_utf16_to_utf8 ()</h3>
3113
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_utf16_to_utf8 (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="type">gunichar2</span></a> *str</code></em>,
3114
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3115
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
3116
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
3117
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
3118
+ <p>
3119
+ Convert a string from UTF-16 to UTF-8. The result will be
3120
+ terminated with a 0 byte.
3121
+ </p>
3122
+ <p>
3123
+ Note that the input is expected to be already in native endianness,
3124
+ an initial byte-order-mark character is not handled specially.
3125
+ <a class="link" href="glib-Character-Set-Conversion.html#g-convert" title="g_convert ()"><code class="function">g_convert()</code></a> can be used to convert a byte buffer of UTF-16 data of
3126
+ ambiguous endianess.
3127
+ </p>
3128
+ <p>
3129
+ Further note that this function does not validate the result
3130
+ string; it may e.g. include embedded NUL characters. The only
3131
+ validation done by this function is to ensure that the input can
3132
+ be correctly interpreted as UTF-16, i.e. it doesn't contain
3133
+ things unpaired surrogates.
3134
+ </p>
3135
+ <div class="variablelist"><table border="0">
3136
+ <col align="left" valign="top">
3137
+ <tbody>
3138
+ <tr>
3139
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3140
+ <td>a UTF-16 encoded string
3141
+ </td>
3142
+ </tr>
3143
+ <tr>
3144
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3145
+ <td>the maximum length (number of <span class="type">gunichar2</span>) of <em class="parameter"><code>str</code></em> to use.
3146
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3147
+ </td>
3148
+ </tr>
3149
+ <tr>
3150
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3151
+ <td>location to store number of words read, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3152
+ If <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, then <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-PARTIAL-INPUT:CAPS"><code class="literal">G_CONVERT_ERROR_PARTIAL_INPUT</code></a> will be
3153
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
3154
+ character. If an error occurs then the index of the
3155
+ invalid input is stored here.
3156
+ </td>
3157
+ </tr>
3158
+ <tr>
3159
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3160
+ <td>location to store number of bytes written, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3161
+ The value stored here does not include the trailing
3162
+ 0 byte.
3163
+ </td>
3164
+ </tr>
3165
+ <tr>
3166
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3167
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore
3168
+ errors. Any of the errors in <a class="link" href="glib-Character-Set-Conversion.html#GConvertError" title="enum GConvertError"><span class="type">GConvertError</span></a> other than
3169
+ <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-NO-CONVERSION:CAPS"><code class="literal">G_CONVERT_ERROR_NO_CONVERSION</code></a> may occur.
3170
+ </td>
3171
+ </tr>
3172
+ <tr>
3173
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3174
+ <td> a pointer to a newly allocated UTF-8 string.
3175
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>. If an
3176
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3177
+ <em class="parameter"><code>error</code></em> set.
3178
+ </td>
3179
+ </tr>
3180
+ </tbody>
3181
+ </table></div>
3182
+ </div>
3183
+ <hr>
3184
+ <div class="refsect2" title="g_ucs4_to_utf16 ()">
3185
+ <a name="g-ucs4-to-utf16"></a><h3>g_ucs4_to_utf16 ()</h3>
3186
+ <pre class="programlisting"><a class="link" href="glib-Unicode-Manipulation.html#gunichar2" title="gunichar2"><span class="returnvalue">gunichar2</span></a> * g_ucs4_to_utf16 (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *str</code></em>,
3187
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3188
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
3189
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
3190
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
3191
+ <p>
3192
+ Convert a string from UCS-4 to UTF-16. A 0 character will be
3193
+ added to the result after the converted text.
3194
+ </p>
3195
+ <div class="variablelist"><table border="0">
3196
+ <col align="left" valign="top">
3197
+ <tbody>
3198
+ <tr>
3199
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3200
+ <td>a UCS-4 encoded string
3201
+ </td>
3202
+ </tr>
3203
+ <tr>
3204
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3205
+ <td>the maximum length (number of characters) of <em class="parameter"><code>str</code></em> to use.
3206
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3207
+ </td>
3208
+ </tr>
3209
+ <tr>
3210
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3211
+ <td>location to store number of bytes read, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3212
+ If an error occurs then the index of the invalid input
3213
+ is stored here.
3214
+ </td>
3215
+ </tr>
3216
+ <tr>
3217
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3218
+ <td>location to store number of <span class="type">gunichar2</span>
3219
+ written, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. The value stored here does not
3220
+ include the trailing 0.
3221
+ </td>
3222
+ </tr>
3223
+ <tr>
3224
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3225
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore
3226
+ errors. Any of the errors in <a class="link" href="glib-Character-Set-Conversion.html#GConvertError" title="enum GConvertError"><span class="type">GConvertError</span></a> other than
3227
+ <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-NO-CONVERSION:CAPS"><code class="literal">G_CONVERT_ERROR_NO_CONVERSION</code></a> may occur.
3228
+ </td>
3229
+ </tr>
3230
+ <tr>
3231
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3232
+ <td> a pointer to a newly allocated UTF-16 string.
3233
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>. If an
3234
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3235
+ <em class="parameter"><code>error</code></em> set.
3236
+ </td>
3237
+ </tr>
3238
+ </tbody>
3239
+ </table></div>
3240
+ </div>
3241
+ <hr>
3242
+ <div class="refsect2" title="g_ucs4_to_utf8 ()">
3243
+ <a name="g-ucs4-to-utf8"></a><h3>g_ucs4_to_utf8 ()</h3>
3244
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>* g_ucs4_to_utf8 (<em class="parameter"><code>const <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> *str</code></em>,
3245
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3246
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_read</code></em>,
3247
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> *items_written</code></em>,
3248
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);</pre>
3249
+ <p>
3250
+ Convert a string from a 32-bit fixed width representation as UCS-4.
3251
+ to UTF-8. The result will be terminated with a 0 byte.
3252
+ </p>
3253
+ <div class="variablelist"><table border="0">
3254
+ <col align="left" valign="top">
3255
+ <tbody>
3256
+ <tr>
3257
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3258
+ <td>a UCS-4 encoded string
3259
+ </td>
3260
+ </tr>
3261
+ <tr>
3262
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3263
+ <td>the maximum length (number of characters) of <em class="parameter"><code>str</code></em> to use.
3264
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3265
+ </td>
3266
+ </tr>
3267
+ <tr>
3268
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3269
+ <td>location to store number of characters read, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3270
+ </td>
3271
+ </tr>
3272
+ <tr>
3273
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3274
+ <td>location to store number of bytes written or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3275
+ The value here stored does not include the trailing 0
3276
+ byte.
3277
+ </td>
3278
+ </tr>
3279
+ <tr>
3280
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3281
+ <td>location to store the error occuring, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> to ignore
3282
+ errors. Any of the errors in <a class="link" href="glib-Character-Set-Conversion.html#GConvertError" title="enum GConvertError"><span class="type">GConvertError</span></a> other than
3283
+ <a class="link" href="glib-Character-Set-Conversion.html#G-CONVERT-ERROR-NO-CONVERSION:CAPS"><code class="literal">G_CONVERT_ERROR_NO_CONVERSION</code></a> may occur.
3284
+ </td>
3285
+ </tr>
3286
+ <tr>
3287
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3288
+ <td> a pointer to a newly allocated UTF-8 string.
3289
+ This value must be freed with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>. If an
3290
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3291
+ <em class="parameter"><code>error</code></em> set. In that case, <em class="parameter"><code>items_read</code></em> will be
3292
+ set to the position of the first invalid input
3293
+ character.
3294
+ </td>
3295
+ </tr>
3296
+ </tbody>
3297
+ </table></div>
3298
+ </div>
3299
+ <hr>
3300
+ <div class="refsect2" title="g_unichar_to_utf8 ()">
3301
+ <a name="g-unichar-to-utf8"></a><h3>g_unichar_to_utf8 ()</h3>
3302
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint" title="gint"><span class="returnvalue">gint</span></a> g_unichar_to_utf8 (<em class="parameter"><code><a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="type">gunichar</span></a> c</code></em>,
3303
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *outbuf</code></em>);</pre>
3304
+ <p>
3305
+ Converts a single character to UTF-8.
3306
+ </p>
3307
+ <div class="variablelist"><table border="0">
3308
+ <col align="left" valign="top">
3309
+ <tbody>
3310
+ <tr>
3311
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
3312
+ <td>a Unicode character code
3313
+ </td>
3314
+ </tr>
3315
+ <tr>
3316
+ <td><p><span class="term"><em class="parameter"><code>outbuf</code></em> :</span></p></td>
3317
+ <td>output buffer, must have at least 6 bytes of space.
3318
+ If <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, the length will be computed and returned
3319
+ and nothing will be written to <em class="parameter"><code>outbuf</code></em>.
3320
+ </td>
3321
+ </tr>
3322
+ <tr>
3323
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3324
+ <td> number of bytes written
3325
+ </td>
3326
+ </tr>
3327
+ </tbody>
3328
+ </table></div>
3329
+ </div>
3330
+ </div>
3331
+ <div class="refsect1" title="See Also">
3332
+ <a name="glib-Unicode-Manipulation.see-also"></a><h2>See Also</h2>
3333
+ <p>
3334
+ </p>
3335
+ <div class="variablelist"><table border="0">
3336
+ <col align="left" valign="top">
3337
+ <tbody><tr>
3338
+ <td><p><span class="term"><a class="link" href="glib-Character-Set-Conversion.html#g-locale-to-utf8" title="g_locale_to_utf8 ()"><code class="function">g_locale_to_utf8()</code></a>, <a class="link" href="glib-Character-Set-Conversion.html#g-locale-from-utf8" title="g_locale_from_utf8 ()"><code class="function">g_locale_from_utf8()</code></a></span></p></td>
3339
+ <td><p>
3340
+ Convenience functions for converting between UTF-8 and the locale encoding.
3341
+ </p></td>
3342
+ </tr></tbody>
3343
+ </table></div>
3344
+ <p>
3345
+ </p>
3346
+ </div>
3347
+ <div class="footnotes">
3348
+ <br><hr width="100" align="left">
3349
+ <div class="footnote"><em class="firstterm"><sup>[<a name="ftn.utf16_surrogate_pairs" href="#utf16_surrogate_pairs" class="firstterm">3</a>] </sup>surrogate pairs</em></div>
3350
+ </div>
3351
+ </div>
3352
+ <div class="footer">
3353
+ <hr>
3354
+ Generated by GTK-Doc V1.14</div>
3355
+ </body>
3356
+ </html>