gio2 0.90.3-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (856) hide show
  1. data/ChangeLog +60 -0
  2. data/README +34 -0
  3. data/Rakefile +76 -0
  4. data/ext/gio2/depend +5 -0
  5. data/ext/gio2/extconf.rb +91 -0
  6. data/ext/gio2/gappinfo.c +318 -0
  7. data/ext/gio2/gapplaunchcontext.c +79 -0
  8. data/ext/gio2/gasyncinitable.c +244 -0
  9. data/ext/gio2/gasyncresult.c +39 -0
  10. data/ext/gio2/gbufferedinputstream.c +184 -0
  11. data/ext/gio2/gbufferedoutputstream.c +82 -0
  12. data/ext/gio2/gcancellable.c +177 -0
  13. data/ext/gio2/gcharsetconverter.c +72 -0
  14. data/ext/gio2/gcontenttype.c +135 -0
  15. data/ext/gio2/gconverter.c +117 -0
  16. data/ext/gio2/gconverterinputstream.c +48 -0
  17. data/ext/gio2/gconverteroutputstream.c +48 -0
  18. data/ext/gio2/gdatainputstream.c +341 -0
  19. data/ext/gio2/gdataoutputstream.c +202 -0
  20. data/ext/gio2/gdesktopappinfo.c +90 -0
  21. data/ext/gio2/gdrive.c +267 -0
  22. data/ext/gio2/gemblem.c +71 -0
  23. data/ext/gio2/gemblemedicon.c +63 -0
  24. data/ext/gio2/gfile.c +2058 -0
  25. data/ext/gio2/gfileattribute.c +263 -0
  26. data/ext/gio2/gfileattributematcher.c +90 -0
  27. data/ext/gio2/gfiledescriptorbased.c +42 -0
  28. data/ext/gio2/gfileenumerator.c +167 -0
  29. data/ext/gio2/gfileicon.c +46 -0
  30. data/ext/gio2/gfileinfo.c +641 -0
  31. data/ext/gio2/gfileinputstream.c +92 -0
  32. data/ext/gio2/gfileiostream.c +98 -0
  33. data/ext/gio2/gfilemonitor.c +63 -0
  34. data/ext/gio2/gfilenamecompleter.c +72 -0
  35. data/ext/gio2/gfileoutputstream.c +100 -0
  36. data/ext/gio2/gfilterinputstream.c +56 -0
  37. data/ext/gio2/gfilteroutputstream.c +56 -0
  38. data/ext/gio2/gicon.c +69 -0
  39. data/ext/gio2/ginetaddress.c +188 -0
  40. data/ext/gio2/ginetsocketaddress.c +54 -0
  41. data/ext/gio2/ginitable.c +195 -0
  42. data/ext/gio2/ginputstream.c +341 -0
  43. data/ext/gio2/gio2.c +120 -0
  44. data/ext/gio2/gio2.def +2 -0
  45. data/ext/gio2/gio2.h +343 -0
  46. data/ext/gio2/gioerror.c +67 -0
  47. data/ext/gio2/giomodule.c +63 -0
  48. data/ext/gio2/gioscheduler.c +195 -0
  49. data/ext/gio2/giostream.c +129 -0
  50. data/ext/gio2/gloadableicon.c +91 -0
  51. data/ext/gio2/gmemoryinputstream.c +65 -0
  52. data/ext/gio2/gmemoryoutputstream.c +65 -0
  53. data/ext/gio2/gmount.c +283 -0
  54. data/ext/gio2/gmountoperation.c +168 -0
  55. data/ext/gio2/gnetworkaddress.c +71 -0
  56. data/ext/gio2/gnetworkservice.c +64 -0
  57. data/ext/gio2/goutputstream.c +343 -0
  58. data/ext/gio2/gresolver.c +230 -0
  59. data/ext/gio2/gseekable.c +89 -0
  60. data/ext/gio2/gsimpleasyncresult.c +153 -0
  61. data/ext/gio2/gsocket.c +451 -0
  62. data/ext/gio2/gsocketaddress.c +45 -0
  63. data/ext/gio2/gsocketclient.c +273 -0
  64. data/ext/gio2/gsocketconnectable.c +97 -0
  65. data/ext/gio2/gsocketconnection.c +82 -0
  66. data/ext/gio2/gsocketcontrolmessage.c +82 -0
  67. data/ext/gio2/gsocketlistener.c +239 -0
  68. data/ext/gio2/gsocketservice.c +64 -0
  69. data/ext/gio2/gsrvtarget.c +77 -0
  70. data/ext/gio2/gtcpconnection.c +48 -0
  71. data/ext/gio2/gthemedicon.c +86 -0
  72. data/ext/gio2/gthreadedsocketservice.c +39 -0
  73. data/ext/gio2/gunixconnection.c +69 -0
  74. data/ext/gio2/gunixfdlist.c +112 -0
  75. data/ext/gio2/gunixfdmessage.c +81 -0
  76. data/ext/gio2/gunixinputstream.c +73 -0
  77. data/ext/gio2/gunixmounts.c +346 -0
  78. data/ext/gio2/gunixoutputstream.c +73 -0
  79. data/ext/gio2/gunixsocketaddress.c +79 -0
  80. data/ext/gio2/gvfs.c +84 -0
  81. data/ext/gio2/gvolume.c +191 -0
  82. data/ext/gio2/gvolumemonitor.c +77 -0
  83. data/ext/gio2/gzlibcompressor.c +47 -0
  84. data/ext/gio2/gzlibdecompressor.c +43 -0
  85. data/ext/gio2/util.c +323 -0
  86. data/extconf.rb +49 -0
  87. data/lib/1.8/gio2.so +0 -0
  88. data/lib/1.9/gio2.so +0 -0
  89. data/lib/gio2.rb +141 -0
  90. data/vendor/local/bin/envsubst.exe +0 -0
  91. data/vendor/local/bin/gettext.exe +0 -0
  92. data/vendor/local/bin/gettext.sh +123 -0
  93. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  94. data/vendor/local/bin/glib-gettextize +188 -0
  95. data/vendor/local/bin/glib-mkenums +537 -0
  96. data/vendor/local/bin/gobject-query.exe +0 -0
  97. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  98. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  99. data/vendor/local/bin/intl.dll +0 -0
  100. data/vendor/local/bin/libasprintf-0.dll +0 -0
  101. data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
  102. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  103. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  104. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  105. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  106. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  107. data/vendor/local/bin/ngettext.exe +0 -0
  108. data/vendor/local/include/autosprintf.h +66 -0
  109. data/vendor/local/include/glib-2.0/gio/gappinfo.h +236 -0
  110. data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
  111. data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
  112. data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
  113. data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +81 -0
  114. data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
  115. data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
  116. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
  117. data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
  118. data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +79 -0
  119. data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +79 -0
  120. data/vendor/local/include/glib-2.0/gio/gcredentials.h +76 -0
  121. data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +150 -0
  122. data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +115 -0
  123. data/vendor/local/include/glib-2.0/gio/gdbusaddress.h +58 -0
  124. data/vendor/local/include/glib-2.0/gio/gdbusauthobserver.h +46 -0
  125. data/vendor/local/include/glib-2.0/gio/gdbusconnection.h +562 -0
  126. data/vendor/local/include/glib-2.0/gio/gdbuserror.h +100 -0
  127. data/vendor/local/include/glib-2.0/gio/gdbusintrospection.h +286 -0
  128. data/vendor/local/include/glib-2.0/gio/gdbusmessage.h +149 -0
  129. data/vendor/local/include/glib-2.0/gio/gdbusmethodinvocation.h +73 -0
  130. data/vendor/local/include/glib-2.0/gio/gdbusnameowning.h +112 -0
  131. data/vendor/local/include/glib-2.0/gio/gdbusnamewatching.h +94 -0
  132. data/vendor/local/include/glib-2.0/gio/gdbusproxy.h +167 -0
  133. data/vendor/local/include/glib-2.0/gio/gdbusserver.h +54 -0
  134. data/vendor/local/include/glib-2.0/gio/gdbusutils.h +44 -0
  135. data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
  136. data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
  137. data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
  138. data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
  139. data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
  140. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +132 -0
  141. data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
  142. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +952 -0
  143. data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
  144. data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
  145. data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
  146. data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
  147. data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
  148. data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
  149. data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
  150. data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
  151. data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
  152. data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
  153. data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
  154. data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
  155. data/vendor/local/include/glib-2.0/gio/gio.h +122 -0
  156. data/vendor/local/include/glib-2.0/gio/gioenums.h +1221 -0
  157. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +121 -0
  158. data/vendor/local/include/glib-2.0/gio/gioerror.h +52 -0
  159. data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
  160. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
  161. data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
  162. data/vendor/local/include/glib-2.0/gio/giotypes.h +375 -0
  163. data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
  164. data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
  165. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +98 -0
  166. data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
  167. data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
  168. data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
  169. data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +73 -0
  170. data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +71 -0
  171. data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
  172. data/vendor/local/include/glib-2.0/gio/gpermission.h +118 -0
  173. data/vendor/local/include/glib-2.0/gio/gproxy.h +123 -0
  174. data/vendor/local/include/glib-2.0/gio/gproxyaddress.h +76 -0
  175. data/vendor/local/include/glib-2.0/gio/gproxyaddressenumerator.h +75 -0
  176. data/vendor/local/include/glib-2.0/gio/gproxyresolver.h +96 -0
  177. data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
  178. data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
  179. data/vendor/local/include/glib-2.0/gio/gsettings.h +258 -0
  180. data/vendor/local/include/glib-2.0/gio/gsettingsbackend.h +138 -0
  181. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
  182. data/vendor/local/include/glib-2.0/gio/gsimplepermission.h +45 -0
  183. data/vendor/local/include/glib-2.0/gio/gsocket.h +194 -0
  184. data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
  185. data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
  186. data/vendor/local/include/glib-2.0/gio/gsocketclient.h +152 -0
  187. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +74 -0
  188. data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
  189. data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
  190. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
  191. data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
  192. data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
  193. data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
  194. data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
  195. data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
  196. data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
  197. data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
  198. data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +150 -0
  199. data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +60 -0
  200. data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +57 -0
  201. data/vendor/local/include/glib-2.0/glib-object.h +42 -0
  202. data/vendor/local/include/glib-2.0/glib.h +99 -0
  203. data/vendor/local/include/glib-2.0/glib/galloca.h +110 -0
  204. data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
  205. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
  206. data/vendor/local/include/glib-2.0/glib/gatomic.h +105 -0
  207. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
  208. data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
  209. data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
  210. data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +215 -0
  211. data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
  212. data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
  213. data/vendor/local/include/glib-2.0/glib/gcompletion.h +81 -0
  214. data/vendor/local/include/glib-2.0/glib/gconvert.h +162 -0
  215. data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
  216. data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
  217. data/vendor/local/include/glib-2.0/glib/gdatetime.h +217 -0
  218. data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
  219. data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
  220. data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
  221. data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
  222. data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
  223. data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
  224. data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
  225. data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
  226. data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
  227. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +266 -0
  228. data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
  229. data/vendor/local/include/glib-2.0/glib/gmacros.h +284 -0
  230. data/vendor/local/include/glib-2.0/glib/gmain.h +531 -0
  231. data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
  232. data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
  233. data/vendor/local/include/glib-2.0/glib/gmem.h +309 -0
  234. data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
  235. data/vendor/local/include/glib-2.0/glib/gnode.h +290 -0
  236. data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
  237. data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
  238. data/vendor/local/include/glib-2.0/glib/gpoll.h +117 -0
  239. data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
  240. data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
  241. data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
  242. data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
  243. data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
  244. data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
  245. data/vendor/local/include/glib-2.0/glib/gregex.h +471 -0
  246. data/vendor/local/include/glib-2.0/glib/grel.h +101 -0
  247. data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
  248. data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
  249. data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
  250. data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
  251. data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
  252. data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
  253. data/vendor/local/include/glib-2.0/glib/gstdio.h +147 -0
  254. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +269 -0
  255. data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
  256. data/vendor/local/include/glib-2.0/glib/gtestutils.h +297 -0
  257. data/vendor/local/include/glib-2.0/glib/gthread.h +407 -0
  258. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
  259. data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
  260. data/vendor/local/include/glib-2.0/glib/gtimezone.h +44 -0
  261. data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
  262. data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
  263. data/vendor/local/include/glib-2.0/glib/gunicode.h +421 -0
  264. data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
  265. data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
  266. data/vendor/local/include/glib-2.0/glib/gvariant.h +248 -0
  267. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +334 -0
  268. data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
  269. data/vendor/local/include/glib-2.0/gmodule.h +101 -0
  270. data/vendor/local/include/glib-2.0/gobject/gbinding.h +136 -0
  271. data/vendor/local/include/glib-2.0/gobject/gboxed.h +248 -0
  272. data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
  273. data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
  274. data/vendor/local/include/glib-2.0/gobject/gmarshal.h +186 -0
  275. data/vendor/local/include/glib-2.0/gobject/gobject.h +567 -0
  276. data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +193 -0
  277. data/vendor/local/include/glib-2.0/gobject/gparam.h +415 -0
  278. data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1137 -0
  279. data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
  280. data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
  281. data/vendor/local/include/glib-2.0/gobject/gtype.h +1736 -0
  282. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
  283. data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
  284. data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
  285. data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
  286. data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +227 -0
  287. data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +260 -0
  288. data/vendor/local/include/libintl.h +464 -0
  289. data/vendor/local/lib/GNU.Gettext.dll +0 -0
  290. data/vendor/local/lib/gio-2.0.def +1143 -0
  291. data/vendor/local/lib/gio-2.0.lib +0 -0
  292. data/vendor/local/lib/glib-2.0.def +1452 -0
  293. data/vendor/local/lib/glib-2.0.lib +0 -0
  294. data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
  295. data/vendor/local/lib/gmodule-2.0.def +11 -0
  296. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  297. data/vendor/local/lib/gobject-2.0.def +370 -0
  298. data/vendor/local/lib/gobject-2.0.lib +0 -0
  299. data/vendor/local/lib/gthread-2.0.def +3 -0
  300. data/vendor/local/lib/gthread-2.0.lib +0 -0
  301. data/vendor/local/lib/intl.lib +0 -0
  302. data/vendor/local/lib/libasprintf.dll.a +0 -0
  303. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  304. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  305. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  306. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  307. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  308. data/vendor/local/lib/libintl.def +31 -0
  309. data/vendor/local/lib/libintl.dll.a +0 -0
  310. data/vendor/local/lib/pkgconfig/gio-2.0.pc +15 -0
  311. data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +11 -0
  312. data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
  313. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
  314. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
  315. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
  316. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
  317. data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
  318. data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
  319. data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
  320. data/vendor/local/manifest/glib-dev_2.26.0-2_win32.mft +570 -0
  321. data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
  322. data/vendor/local/manifest/glib_2.26.0-2_win32.mft +102 -0
  323. data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
  324. data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
  325. data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
  326. data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
  327. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
  328. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
  329. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
  330. data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
  331. data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
  332. data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
  333. data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
  334. data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
  335. data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
  336. data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
  337. data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
  338. data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
  339. data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
  340. data/vendor/local/share/doc/glib-2.26.0/COPYING +482 -0
  341. data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
  342. data/vendor/local/share/doc/glib-dev-2.26.0/COPYING +482 -0
  343. data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
  344. data/vendor/local/share/glib-2.0/gdb/glib.py +249 -0
  345. data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
  346. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
  347. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +279 -0
  348. data/vendor/local/share/glib-2.0/schemas/gschema.dtd +60 -0
  349. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1403 -0
  350. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +733 -0
  351. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
  352. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +563 -0
  353. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +291 -0
  354. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
  355. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
  356. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +423 -0
  357. data/vendor/local/share/gtk-doc/html/gio/GCredentials.html +398 -0
  358. data/vendor/local/share/gtk-doc/html/gio/GDBusAuthObserver.html +254 -0
  359. data/vendor/local/share/gtk-doc/html/gio/GDBusConnection.html +6211 -0
  360. data/vendor/local/share/gtk-doc/html/gio/GDBusMessage.html +1833 -0
  361. data/vendor/local/share/gtk-doc/html/gio/GDBusMethodInvocation.html +618 -0
  362. data/vendor/local/share/gtk-doc/html/gio/GDBusProxy.html +2050 -0
  363. data/vendor/local/share/gtk-doc/html/gio/GDBusServer.html +1124 -0
  364. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +1215 -0
  365. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +540 -0
  366. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
  367. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
  368. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
  369. data/vendor/local/share/gtk-doc/html/gio/GFile.html +7462 -0
  370. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +120 -0
  371. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +516 -0
  372. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
  373. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
  374. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3144 -0
  375. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
  376. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
  377. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
  378. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
  379. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +188 -0
  380. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +189 -0
  381. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
  382. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
  383. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
  384. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
  385. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +196 -0
  386. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
  387. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
  388. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
  389. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
  390. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +393 -0
  391. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
  392. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
  393. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +343 -0
  394. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +311 -0
  395. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1012 -0
  396. data/vendor/local/share/gtk-doc/html/gio/GPermission.html +560 -0
  397. data/vendor/local/share/gtk-doc/html/gio/GProxy.html +312 -0
  398. data/vendor/local/share/gtk-doc/html/gio/GProxyAddress.html +348 -0
  399. data/vendor/local/share/gtk-doc/html/gio/GProxyResolver.html +301 -0
  400. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
  401. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
  402. data/vendor/local/share/gtk-doc/html/gio/GSettings.html +2424 -0
  403. data/vendor/local/share/gtk-doc/html/gio/GSettingsBackend.html +609 -0
  404. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +1193 -0
  405. data/vendor/local/share/gtk-doc/html/gio/GSimplePermission.html +107 -0
  406. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2438 -0
  407. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
  408. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +1292 -0
  409. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +513 -0
  410. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +337 -0
  411. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +275 -0
  412. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +745 -0
  413. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
  414. data/vendor/local/share/gtk-doc/html/gio/GTcpConnection.html +165 -0
  415. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
  416. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
  417. data/vendor/local/share/gtk-doc/html/gio/GUnixConnection.html +298 -0
  418. data/vendor/local/share/gtk-doc/html/gio/GUnixCredentialsMessage.html +222 -0
  419. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +389 -0
  420. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +288 -0
  421. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
  422. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
  423. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +491 -0
  424. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
  425. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
  426. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +705 -0
  427. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +252 -0
  428. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +170 -0
  429. data/vendor/local/share/gtk-doc/html/gio/annotation-glossary.html +65 -0
  430. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
  431. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
  432. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1084 -0
  433. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +223 -0
  434. data/vendor/local/share/gtk-doc/html/gio/api-index-2-26.html +1598 -0
  435. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +112 -0
  436. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +6250 -0
  437. data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
  438. data/vendor/local/share/gtk-doc/html/gio/ch01.html +207 -0
  439. data/vendor/local/share/gtk-doc/html/gio/ch02.html +50 -0
  440. data/vendor/local/share/gtk-doc/html/gio/ch03.html +180 -0
  441. data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
  442. data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
  443. data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
  444. data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
  445. data/vendor/local/share/gtk-doc/html/gio/ch24.html +75 -0
  446. data/vendor/local/share/gtk-doc/html/gio/ch25.html +217 -0
  447. data/vendor/local/share/gtk-doc/html/gio/ch25s02.html +41 -0
  448. data/vendor/local/share/gtk-doc/html/gio/ch25s03.html +39 -0
  449. data/vendor/local/share/gtk-doc/html/gio/ch26.html +57 -0
  450. data/vendor/local/share/gtk-doc/html/gio/ch26s02.html +59 -0
  451. data/vendor/local/share/gtk-doc/html/gio/ch26s03.html +159 -0
  452. data/vendor/local/share/gtk-doc/html/gio/ch26s04.html +46 -0
  453. data/vendor/local/share/gtk-doc/html/gio/ch26s05.html +48 -0
  454. data/vendor/local/share/gtk-doc/html/gio/ch26s06.html +277 -0
  455. data/vendor/local/share/gtk-doc/html/gio/ch26s07.html +95 -0
  456. data/vendor/local/share/gtk-doc/html/gio/ch27.html +70 -0
  457. data/vendor/local/share/gtk-doc/html/gio/ch27s02.html +130 -0
  458. data/vendor/local/share/gtk-doc/html/gio/ch27s03.html +202 -0
  459. data/vendor/local/share/gtk-doc/html/gio/ch27s04.html +96 -0
  460. data/vendor/local/share/gtk-doc/html/gio/ch27s05.html +823 -0
  461. data/vendor/local/share/gtk-doc/html/gio/ch27s06.html +828 -0
  462. data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
  463. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +109 -0
  464. data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
  465. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
  466. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
  467. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
  468. data/vendor/local/share/gtk-doc/html/gio/gdbus-convenience.html +41 -0
  469. data/vendor/local/share/gtk-doc/html/gio/gdbus-lowlevel.html +59 -0
  470. data/vendor/local/share/gtk-doc/html/gio/gdbus.html +243 -0
  471. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Addresses.html +316 -0
  472. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +1117 -0
  473. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Utilities.html +216 -0
  474. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
  475. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +473 -0
  476. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +391 -0
  477. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +159 -0
  478. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +159 -0
  479. data/vendor/local/share/gtk-doc/html/gio/gio-GDBusError.html +908 -0
  480. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +933 -0
  481. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +409 -0
  482. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
  483. data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
  484. data/vendor/local/share/gtk-doc/html/gio/gio-Owning-Bus-Names.html +736 -0
  485. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +909 -0
  486. data/vendor/local/share/gtk-doc/html/gio/gio-Watching-Bus-Names.html +666 -0
  487. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +123 -0
  488. data/vendor/local/share/gtk-doc/html/gio/gio-querymodules.html +53 -0
  489. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1736 -0
  490. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +2006 -0
  491. data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +102 -0
  492. data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
  493. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +53 -0
  494. data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
  495. data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
  496. data/vendor/local/share/gtk-doc/html/gio/index.html +435 -0
  497. data/vendor/local/share/gtk-doc/html/gio/index.sgml +2513 -0
  498. data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
  499. data/vendor/local/share/gtk-doc/html/gio/migrating.html +62 -0
  500. data/vendor/local/share/gtk-doc/html/gio/networking.html +69 -0
  501. data/vendor/local/share/gtk-doc/html/gio/permissions.html +39 -0
  502. data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
  503. data/vendor/local/share/gtk-doc/html/gio/pt02.html +390 -0
  504. data/vendor/local/share/gtk-doc/html/gio/resolver.html +50 -0
  505. data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
  506. data/vendor/local/share/gtk-doc/html/gio/settings.html +38 -0
  507. data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
  508. data/vendor/local/share/gtk-doc/html/gio/style.css +265 -0
  509. data/vendor/local/share/gtk-doc/html/gio/tools.html +44 -0
  510. data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
  511. data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
  512. data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
  513. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
  514. data/vendor/local/share/gtk-doc/html/glib/annotation-glossary.html +77 -0
  515. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
  516. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
  517. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +559 -0
  518. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
  519. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
  520. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
  521. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
  522. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
  523. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +420 -0
  524. data/vendor/local/share/gtk-doc/html/glib/api-index-2-26.html +359 -0
  525. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +396 -0
  526. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +417 -0
  527. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
  528. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +419 -0
  529. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +8214 -0
  530. data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
  531. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +893 -0
  532. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
  533. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +414 -0
  534. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +466 -0
  535. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
  536. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
  537. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
  538. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2056 -0
  539. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
  540. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
  541. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
  542. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1094 -0
  543. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1671 -0
  544. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
  545. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
  546. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2045 -0
  547. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
  548. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
  549. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
  550. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1026 -0
  551. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1852 -0
  552. data/vendor/local/share/gtk-doc/html/glib/glib-GDateTime.html +2201 -0
  553. data/vendor/local/share/gtk-doc/html/glib/glib-GTimeZone.html +239 -0
  554. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +4278 -0
  555. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1864 -0
  556. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
  557. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
  558. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
  559. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
  560. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +692 -0
  561. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
  562. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2740 -0
  563. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
  564. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
  565. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
  566. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1033 -0
  567. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
  568. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
  569. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
  570. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +748 -0
  571. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1105 -0
  572. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1552 -0
  573. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1468 -0
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +194 -0
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2745 -0
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
  578. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
  579. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +532 -0
  580. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1282 -0
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1213 -0
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
  585. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +470 -0
  586. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
  587. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2960 -0
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1291 -0
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1805 -0
  590. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3478 -0
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
  596. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +400 -0
  597. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3448 -0
  598. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +253 -0
  599. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
  600. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
  601. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +466 -0
  602. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
  603. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
  604. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
  605. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
  606. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
  607. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
  608. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
  609. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2217 -0
  610. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
  611. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +319 -0
  612. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +118 -0
  613. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2183 -0
  614. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2671 -0
  615. data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
  616. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
  617. data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
  618. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1288 -0
  619. data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
  620. data/vendor/local/share/gtk-doc/html/glib/index.html +344 -0
  621. data/vendor/local/share/gtk-doc/html/glib/index.sgml +2846 -0
  622. data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
  623. data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
  624. data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
  625. data/vendor/local/share/gtk-doc/html/glib/style.css +265 -0
  626. data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
  627. data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
  628. data/vendor/local/share/gtk-doc/html/gobject/GBinding.html +803 -0
  629. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
  630. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
  631. data/vendor/local/share/gtk-doc/html/gobject/annotation-glossary.html +47 -0
  632. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
  633. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
  634. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
  635. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
  636. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
  637. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
  638. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +73 -0
  639. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-26.html +201 -0
  640. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
  641. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
  642. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
  643. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
  644. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2721 -0
  645. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
  646. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
  647. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
  648. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
  649. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
  650. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
  651. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +361 -0
  652. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +307 -0
  653. data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
  654. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +417 -0
  655. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2412 -0
  656. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
  657. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1433 -0
  658. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
  659. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
  660. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5555 -0
  661. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2875 -0
  662. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4460 -0
  663. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +416 -0
  664. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +260 -0
  665. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
  666. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
  667. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
  668. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +762 -0
  669. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +801 -0
  670. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
  671. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
  672. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
  673. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
  674. data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
  675. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
  676. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
  677. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
  678. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
  679. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
  680. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
  681. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
  682. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
  683. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
  684. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
  685. data/vendor/local/share/gtk-doc/html/gobject/index.html +192 -0
  686. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +786 -0
  687. data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
  688. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
  689. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
  691. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
  692. data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
  693. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +85 -0
  694. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
  695. data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
  696. data/vendor/local/share/gtk-doc/html/gobject/style.css +265 -0
  697. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
  698. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
  699. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
  700. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
  701. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
  702. data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
  703. data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
  704. data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
  705. data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
  706. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  707. data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
  708. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  709. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  710. data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
  711. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  712. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  713. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  714. data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
  715. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
  716. data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
  717. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  718. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  719. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  720. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  721. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  722. data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
  723. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  724. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  725. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  726. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  727. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  728. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  729. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  730. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  731. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  732. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  733. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  734. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  735. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  736. data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
  737. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  738. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  739. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  740. data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
  741. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  742. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  743. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  744. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  745. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  746. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  747. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  748. data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
  749. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  750. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  751. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  752. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  753. data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
  754. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  755. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  756. data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
  757. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  758. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  759. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  760. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  761. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  762. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  763. data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
  764. data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
  765. data/vendor/local/share/locale/kk/LC_MESSAGES/glib20.mo +0 -0
  766. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  767. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  768. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  769. data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
  770. data/vendor/local/share/locale/locale.alias +77 -0
  771. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  772. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  773. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  774. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  775. data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
  776. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  777. data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
  778. data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
  779. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  780. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  781. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  782. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  783. data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
  784. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  785. data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
  786. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  787. data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  789. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
  791. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  792. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  793. data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
  794. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  795. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  796. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  797. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  798. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  799. data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  801. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  802. data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
  803. data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
  804. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  805. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  806. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  807. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  808. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  809. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  810. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  811. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  813. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  814. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
  816. data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
  817. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  818. data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
  819. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  820. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  822. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  823. data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  825. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  826. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
  828. data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  830. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  831. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  832. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  834. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  835. data/vendor/local/share/man/man1/envsubst.1 +54 -0
  836. data/vendor/local/share/man/man1/gettext.1 +69 -0
  837. data/vendor/local/share/man/man1/glib-genmarshal.1 +312 -0
  838. data/vendor/local/share/man/man1/glib-mkenums.1 +246 -0
  839. data/vendor/local/share/man/man1/gobject-query.1 +83 -0
  840. data/vendor/local/share/man/man1/ngettext.1 +68 -0
  841. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
  842. data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
  843. data/vendor/local/share/man/man3/dcgettext.3 +1 -0
  844. data/vendor/local/share/man/man3/dcngettext.3 +1 -0
  845. data/vendor/local/share/man/man3/dgettext.3 +1 -0
  846. data/vendor/local/share/man/man3/dngettext.3 +1 -0
  847. data/vendor/local/share/man/man3/gettext.3 +99 -0
  848. data/vendor/local/share/man/man3/ngettext.3 +60 -0
  849. data/vendor/local/share/man/man3/textdomain.3 +57 -0
  850. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
  851. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
  852. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
  853. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
  854. data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.log +2867 -0
  855. data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.sh +64 -0
  856. metadata +952 -0
@@ -0,0 +1,400 @@
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>URI Functions</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
+ <link rel="home" href="index.html" title="GLib Reference Manual">
8
+ <link rel="up" href="glib-utilities.html" title="GLib Utilities">
9
+ <link rel="prev" href="glib-File-Utilities.html" title="File Utilities">
10
+ <link rel="next" href="glib-Hostname-Utilities.html" title="Hostname Utilities">
11
+ <meta name="generator" content="GTK-Doc V1.15.1 (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-File-Utilities.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="glib-utilities.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">GLib Reference Manual</th>
21
+ <td><a accesskey="n" href="glib-Hostname-Utilities.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-URI-Functions.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#glib-URI-Functions.description" class="shortcut">Description</a>
27
+ </td></tr>
28
+ </table>
29
+ <div class="refentry">
30
+ <a name="glib-URI-Functions"></a><div class="titlepage"></div>
31
+ <div class="refnamediv"><table width="100%"><tr>
32
+ <td valign="top">
33
+ <h2><span class="refentrytitle"><a name="glib-URI-Functions.top_of_page"></a>URI Functions</span></h2>
34
+ <p>URI Functions — URI Functions</p>
35
+ </td>
36
+ <td valign="top" align="right"></td>
37
+ </tr></table></div>
38
+ <div class="refsynopsisdiv">
39
+ <a name="glib-URI-Functions.synopsis"></a><h2>Synopsis</h2>
40
+ <pre class="synopsis">
41
+ #include &lt;glib.h&gt;
42
+
43
+ #define <a class="link" href="glib-URI-Functions.html#G-URI-RESERVED-CHARS-ALLOWED-IN-PATH:CAPS" title="G_URI_RESERVED_CHARS_ALLOWED_IN_PATH">G_URI_RESERVED_CHARS_ALLOWED_IN_PATH</a>
44
+ #define <a class="link" href="glib-URI-Functions.html#G-URI-RESERVED-CHARS-ALLOWED-IN-PATH-ELEMENT:CAPS" title="G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT">G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT</a>
45
+ #define <a class="link" href="glib-URI-Functions.html#G-URI-RESERVED-CHARS-ALLOWED-IN-USERINFO:CAPS" title="G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO">G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO</a>
46
+ #define <a class="link" href="glib-URI-Functions.html#G-URI-RESERVED-CHARS-GENERIC-DELIMITERS:CAPS" title="G_URI_RESERVED_CHARS_GENERIC_DELIMITERS">G_URI_RESERVED_CHARS_GENERIC_DELIMITERS</a>
47
+ #define <a class="link" href="glib-URI-Functions.html#G-URI-RESERVED-CHARS-SUBCOMPONENT-DELIMITERS:CAPS" title="G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS">G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS</a>
48
+ <span class="returnvalue">char</span> * <a class="link" href="glib-URI-Functions.html#g-uri-parse-scheme" title="g_uri_parse_scheme ()">g_uri_parse_scheme</a> (<em class="parameter"><code>const <span class="type">char</span> *uri</code></em>);
49
+ <span class="returnvalue">char</span> * <a class="link" href="glib-URI-Functions.html#g-uri-escape-string" title="g_uri_escape_string ()">g_uri_escape_string</a> (<em class="parameter"><code>const <span class="type">char</span> *unescaped</code></em>,
50
+ <em class="parameter"><code>const <span class="type">char</span> *reserved_chars_allowed</code></em>,
51
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="type">gboolean</span></a> allow_utf8</code></em>);
52
+ <span class="returnvalue">char</span> * <a class="link" href="glib-URI-Functions.html#g-uri-unescape-string" title="g_uri_unescape_string ()">g_uri_unescape_string</a> (<em class="parameter"><code>const <span class="type">char</span> *escaped_string</code></em>,
53
+ <em class="parameter"><code>const <span class="type">char</span> *illegal_characters</code></em>);
54
+ <span class="returnvalue">char</span> * <a class="link" href="glib-URI-Functions.html#g-uri-unescape-segment" title="g_uri_unescape_segment ()">g_uri_unescape_segment</a> (<em class="parameter"><code>const <span class="type">char</span> *escaped_string</code></em>,
55
+ <em class="parameter"><code>const <span class="type">char</span> *escaped_string_end</code></em>,
56
+ <em class="parameter"><code>const <span class="type">char</span> *illegal_characters</code></em>);
57
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** <a class="link" href="glib-URI-Functions.html#g-uri-list-extract-uris" title="g_uri_list_extract_uris ()">g_uri_list_extract_uris</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *uri_list</code></em>);
58
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-URI-Functions.html#g-filename-from-uri" title="g_filename_from_uri ()">g_filename_from_uri</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *uri</code></em>,
59
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **hostname</code></em>,
60
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
61
+ <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="glib-URI-Functions.html#g-filename-to-uri" title="g_filename_to_uri ()">g_filename_to_uri</a> (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *filename</code></em>,
62
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *hostname</code></em>,
63
+ <em class="parameter"><code><a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a> **error</code></em>);
64
+ </pre>
65
+ </div>
66
+ <div class="refsect1">
67
+ <a name="glib-URI-Functions.description"></a><h2>Description</h2>
68
+ <p>
69
+ Functions for manipulating Universal Resource Identifiers (URIs) as
70
+ defined by <a class="ulink" href="http://www.ietf.org/rfc/rfc3986.txt" target="_top">
71
+ RFC 3986</a>. It is highly recommended that you have read and
72
+ understand RFC 3986 for understanding this API.
73
+ </p>
74
+ </div>
75
+ <div class="refsect1">
76
+ <a name="glib-URI-Functions.details"></a><h2>Details</h2>
77
+ <div class="refsect2">
78
+ <a name="G-URI-RESERVED-CHARS-ALLOWED-IN-PATH:CAPS"></a><h3>G_URI_RESERVED_CHARS_ALLOWED_IN_PATH</h3>
79
+ <pre class="programlisting">#define G_URI_RESERVED_CHARS_ALLOWED_IN_PATH G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT "/"
80
+ </pre>
81
+ <p>
82
+ Allowed characters in a path. Includes "!$&amp;'()*+,;=:@/".
83
+ </p>
84
+ </div>
85
+ <hr>
86
+ <div class="refsect2">
87
+ <a name="G-URI-RESERVED-CHARS-ALLOWED-IN-PATH-ELEMENT:CAPS"></a><h3>G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT</h3>
88
+ <pre class="programlisting">#define G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS ":@"
89
+ </pre>
90
+ <p>
91
+ Allowed characters in path elements. Includes "!$&amp;'()*+,;=:@".
92
+ </p>
93
+ </div>
94
+ <hr>
95
+ <div class="refsect2">
96
+ <a name="G-URI-RESERVED-CHARS-ALLOWED-IN-USERINFO:CAPS"></a><h3>G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO</h3>
97
+ <pre class="programlisting">#define G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS ":"
98
+ </pre>
99
+ <p>
100
+ Allowed characters in userinfo as defined in RFC 3986. Includes "!$&amp;'()*+,;=:".
101
+ </p>
102
+ </div>
103
+ <hr>
104
+ <div class="refsect2">
105
+ <a name="G-URI-RESERVED-CHARS-GENERIC-DELIMITERS:CAPS"></a><h3>G_URI_RESERVED_CHARS_GENERIC_DELIMITERS</h3>
106
+ <pre class="programlisting">#define G_URI_RESERVED_CHARS_GENERIC_DELIMITERS ":/?#[]@"
107
+ </pre>
108
+ <p>
109
+ Generic delimiters characters as defined in RFC 3986. Includes ":/?#[]@".
110
+ </p>
111
+ </div>
112
+ <hr>
113
+ <div class="refsect2">
114
+ <a name="G-URI-RESERVED-CHARS-SUBCOMPONENT-DELIMITERS:CAPS"></a><h3>G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS</h3>
115
+ <pre class="programlisting">#define G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS "!$&amp;'()*+,;="
116
+ </pre>
117
+ <p>
118
+ Subcomponent delimiter characters as defined in RFC 3986. Includes "!$&amp;'()*+,;=".
119
+ </p>
120
+ </div>
121
+ <hr>
122
+ <div class="refsect2">
123
+ <a name="g-uri-parse-scheme"></a><h3>g_uri_parse_scheme ()</h3>
124
+ <pre class="programlisting"><span class="returnvalue">char</span> * g_uri_parse_scheme (<em class="parameter"><code>const <span class="type">char</span> *uri</code></em>);</pre>
125
+ <p>
126
+ Gets the scheme portion of a URI string. RFC 3986 decodes the scheme as:
127
+ </p>
128
+ <pre class="programlisting">
129
+ URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
130
+ </pre>
131
+ <p>
132
+ Common schemes include "file", "http", "svn+ssh", etc.
133
+ </p>
134
+ <div class="variablelist"><table border="0">
135
+ <col align="left" valign="top">
136
+ <tbody>
137
+ <tr>
138
+ <td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
139
+ <td>a valid URI.
140
+ </td>
141
+ </tr>
142
+ <tr>
143
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
144
+ <td> The "Scheme" component of the URI, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> on error.
145
+ The returned string should be freed when no longer needed.
146
+
147
+ </td>
148
+ </tr>
149
+ </tbody>
150
+ </table></div>
151
+ <p class="since">Since 2.16</p>
152
+ </div>
153
+ <hr>
154
+ <div class="refsect2">
155
+ <a name="g-uri-escape-string"></a><h3>g_uri_escape_string ()</h3>
156
+ <pre class="programlisting"><span class="returnvalue">char</span> * g_uri_escape_string (<em class="parameter"><code>const <span class="type">char</span> *unescaped</code></em>,
157
+ <em class="parameter"><code>const <span class="type">char</span> *reserved_chars_allowed</code></em>,
158
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="type">gboolean</span></a> allow_utf8</code></em>);</pre>
159
+ <p>
160
+ Escapes a string for use in a URI.
161
+ </p>
162
+ <p>
163
+ Normally all characters that are not "unreserved" (i.e. ASCII alphanumerical
164
+ characters plus dash, dot, underscore and tilde) are escaped.
165
+ But if you specify characters in <em class="parameter"><code>reserved_chars_allowed</code></em> they are not
166
+ escaped. This is useful for the "reserved" characters in the URI
167
+ specification, since those are allowed unescaped in some portions of
168
+ a URI.
169
+ </p>
170
+ <div class="variablelist"><table border="0">
171
+ <col align="left" valign="top">
172
+ <tbody>
173
+ <tr>
174
+ <td><p><span class="term"><em class="parameter"><code>unescaped</code></em> :</span></p></td>
175
+ <td>the unescaped input string.
176
+ </td>
177
+ </tr>
178
+ <tr>
179
+ <td><p><span class="term"><em class="parameter"><code>reserved_chars_allowed</code></em> :</span></p></td>
180
+ <td>a string of reserved characters that are
181
+ allowed to be used, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
182
+ </td>
183
+ </tr>
184
+ <tr>
185
+ <td><p><span class="term"><em class="parameter"><code>allow_utf8</code></em> :</span></p></td>
186
+ <td>
187
+ <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the result can include UTF-8 characters.
188
+ </td>
189
+ </tr>
190
+ <tr>
191
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
192
+ <td> an escaped version of <em class="parameter"><code>unescaped</code></em>. The returned string should be
193
+ freed when no longer needed.
194
+
195
+ </td>
196
+ </tr>
197
+ </tbody>
198
+ </table></div>
199
+ <p class="since">Since 2.16</p>
200
+ </div>
201
+ <hr>
202
+ <div class="refsect2">
203
+ <a name="g-uri-unescape-string"></a><h3>g_uri_unescape_string ()</h3>
204
+ <pre class="programlisting"><span class="returnvalue">char</span> * g_uri_unescape_string (<em class="parameter"><code>const <span class="type">char</span> *escaped_string</code></em>,
205
+ <em class="parameter"><code>const <span class="type">char</span> *illegal_characters</code></em>);</pre>
206
+ <p>
207
+ Unescapes a whole escaped string.
208
+ </p>
209
+ <p>
210
+ If any of the characters in <em class="parameter"><code>illegal_characters</code></em> or the character zero appears
211
+ as an escaped character in <em class="parameter"><code>escaped_string</code></em> then that is an error and <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
212
+ will be returned. This is useful it you want to avoid for instance having a
213
+ slash being expanded in an escaped path element, which might confuse pathname
214
+ handling.
215
+ </p>
216
+ <div class="variablelist"><table border="0">
217
+ <col align="left" valign="top">
218
+ <tbody>
219
+ <tr>
220
+ <td><p><span class="term"><em class="parameter"><code>escaped_string</code></em> :</span></p></td>
221
+ <td>an escaped string to be unescaped.
222
+ </td>
223
+ </tr>
224
+ <tr>
225
+ <td><p><span class="term"><em class="parameter"><code>illegal_characters</code></em> :</span></p></td>
226
+ <td>an optional string of illegal characters not to be allowed.
227
+ </td>
228
+ </tr>
229
+ <tr>
230
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
231
+ <td> an unescaped version of <em class="parameter"><code>escaped_string</code></em>. The returned string
232
+ should be freed when no longer needed.
233
+
234
+ </td>
235
+ </tr>
236
+ </tbody>
237
+ </table></div>
238
+ <p class="since">Since 2.16</p>
239
+ </div>
240
+ <hr>
241
+ <div class="refsect2">
242
+ <a name="g-uri-unescape-segment"></a><h3>g_uri_unescape_segment ()</h3>
243
+ <pre class="programlisting"><span class="returnvalue">char</span> * g_uri_unescape_segment (<em class="parameter"><code>const <span class="type">char</span> *escaped_string</code></em>,
244
+ <em class="parameter"><code>const <span class="type">char</span> *escaped_string_end</code></em>,
245
+ <em class="parameter"><code>const <span class="type">char</span> *illegal_characters</code></em>);</pre>
246
+ <p>
247
+ Unescapes a segment of an escaped string.
248
+ </p>
249
+ <p>
250
+ If any of the characters in <em class="parameter"><code>illegal_characters</code></em> or the character zero appears
251
+ as an escaped character in <em class="parameter"><code>escaped_string</code></em> then that is an error and <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
252
+ will be returned. This is useful it you want to avoid for instance having a
253
+ slash being expanded in an escaped path element, which might confuse pathname
254
+ handling.
255
+ </p>
256
+ <div class="variablelist"><table border="0">
257
+ <col align="left" valign="top">
258
+ <tbody>
259
+ <tr>
260
+ <td><p><span class="term"><em class="parameter"><code>escaped_string</code></em> :</span></p></td>
261
+ <td>a string.
262
+ </td>
263
+ </tr>
264
+ <tr>
265
+ <td><p><span class="term"><em class="parameter"><code>escaped_string_end</code></em> :</span></p></td>
266
+ <td>a string.
267
+ </td>
268
+ </tr>
269
+ <tr>
270
+ <td><p><span class="term"><em class="parameter"><code>illegal_characters</code></em> :</span></p></td>
271
+ <td>an optional string of illegal characters not to be allowed.
272
+ </td>
273
+ </tr>
274
+ <tr>
275
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
276
+ <td> an unescaped version of <em class="parameter"><code>escaped_string</code></em> or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> on error.
277
+ The returned string should be freed when no longer needed.
278
+
279
+ </td>
280
+ </tr>
281
+ </tbody>
282
+ </table></div>
283
+ <p class="since">Since 2.16</p>
284
+ </div>
285
+ <hr>
286
+ <div class="refsect2">
287
+ <a name="g-uri-list-extract-uris"></a><h3>g_uri_list_extract_uris ()</h3>
288
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> ** g_uri_list_extract_uris (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *uri_list</code></em>);</pre>
289
+ <p>
290
+ Splits an URI list conforming to the text/uri-list
291
+ mime type defined in RFC 2483 into individual URIs,
292
+ discarding any comments. The URIs are not validated.
293
+ </p>
294
+ <div class="variablelist"><table border="0">
295
+ <col align="left" valign="top">
296
+ <tbody>
297
+ <tr>
298
+ <td><p><span class="term"><em class="parameter"><code>uri_list</code></em> :</span></p></td>
299
+ <td>an URI list
300
+ </td>
301
+ </tr>
302
+ <tr>
303
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
304
+ <td> a newly allocated <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>-terminated list of
305
+ strings holding the individual URIs. The array should
306
+ be freed with <a class="link" href="glib-String-Utility-Functions.html#g-strfreev" title="g_strfreev ()"><code class="function">g_strfreev()</code></a>.
307
+
308
+ </td>
309
+ </tr>
310
+ </tbody>
311
+ </table></div>
312
+ <p class="since">Since 2.6</p>
313
+ </div>
314
+ <hr>
315
+ <div class="refsect2">
316
+ <a name="g-filename-from-uri"></a><h3>g_filename_from_uri ()</h3>
317
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_filename_from_uri (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *uri</code></em>,
318
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> **hostname</code></em>,
319
+ <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>
320
+ <p>
321
+ Converts an escaped ASCII-encoded URI to a local filename in the
322
+ encoding used for filenames.
323
+ </p>
324
+ <div class="variablelist"><table border="0">
325
+ <col align="left" valign="top">
326
+ <tbody>
327
+ <tr>
328
+ <td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
329
+ <td>a uri describing a filename (escaped, encoded in ASCII).
330
+ </td>
331
+ </tr>
332
+ <tr>
333
+ <td><p><span class="term"><em class="parameter"><code>hostname</code></em> :</span></p></td>
334
+ <td>Location to store hostname for the URI, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
335
+ If there is no hostname in the URI, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be
336
+ stored in this location.
337
+ </td>
338
+ </tr>
339
+ <tr>
340
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
341
+ <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
342
+ 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> may occur.
343
+ </td>
344
+ </tr>
345
+ <tr>
346
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
347
+ <td> a newly-allocated string holding the resulting
348
+ filename, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> on an error.
349
+ </td>
350
+ </tr>
351
+ </tbody>
352
+ </table></div>
353
+ </div>
354
+ <hr>
355
+ <div class="refsect2">
356
+ <a name="g-filename-to-uri"></a><h3>g_filename_to_uri ()</h3>
357
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> * g_filename_to_uri (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *filename</code></em>,
358
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *hostname</code></em>,
359
+ <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>
360
+ <p>
361
+ Converts an absolute filename to an escaped ASCII-encoded URI, with the path
362
+ component following Section 3.3. of RFC 2396.
363
+ </p>
364
+ <div class="variablelist"><table border="0">
365
+ <col align="left" valign="top">
366
+ <tbody>
367
+ <tr>
368
+ <td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td>
369
+ <td>an absolute filename specified in the GLib file name encoding,
370
+ which is the on-disk file name bytes on Unix, and UTF-8 on
371
+ Windows
372
+ </td>
373
+ </tr>
374
+ <tr>
375
+ <td><p><span class="term"><em class="parameter"><code>hostname</code></em> :</span></p></td>
376
+ <td>A UTF-8 encoded hostname, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> for none.
377
+ </td>
378
+ </tr>
379
+ <tr>
380
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
381
+ <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
382
+ 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> may occur.
383
+ </td>
384
+ </tr>
385
+ <tr>
386
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
387
+ <td> a newly-allocated string holding the resulting
388
+ URI, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> on an error.
389
+ </td>
390
+ </tr>
391
+ </tbody>
392
+ </table></div>
393
+ </div>
394
+ </div>
395
+ </div>
396
+ <div class="footer">
397
+ <hr>
398
+ Generated by GTK-Doc V1.15.1</div>
399
+ </body>
400
+ </html>
@@ -0,0 +1,3448 @@
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.15.1 (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">
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">
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">
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">
187
+ <a name="glib-Unicode-Manipulation.details"></a><h2>Details</h2>
188
+ <div class="refsect2">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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">
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 <code class="function">pango_break()</code> 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">
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">
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">
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">
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">
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
+
1559
+ /* Unicode-5.2 additions */
1560
+ G_UNICODE_SCRIPT_AVESTAN, /* Avestan */
1561
+ G_UNICODE_SCRIPT_BAMUM, /* Bamum */
1562
+ G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS, /* Egyptian Hieroglyphs */
1563
+ G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC, /* Imperial Aramaic */
1564
+ G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI, /* Inscriptional Pahlavi */
1565
+ G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN, /* Inscriptional Parthian */
1566
+ G_UNICODE_SCRIPT_JAVANESE, /* Javanese */
1567
+ G_UNICODE_SCRIPT_KAITHI, /* Kaithi */
1568
+ G_UNICODE_SCRIPT_LISU, /* Lisu */
1569
+ G_UNICODE_SCRIPT_MEETEI_MAYEK, /* Meetei Mayek */
1570
+ G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN, /* Old South Arabian */
1571
+ G_UNICODE_SCRIPT_OLD_TURKISH, /* Old Turkish */
1572
+ G_UNICODE_SCRIPT_SAMARITAN, /* Samaritan */
1573
+ G_UNICODE_SCRIPT_TAI_THAM, /* Tai Tham */
1574
+ G_UNICODE_SCRIPT_TAI_VIET /* Tai Viet */
1575
+ } GUnicodeScript;
1576
+ </pre>
1577
+ <p>
1578
+ The <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="type">GUnicodeScript</span></a> enumeration identifies different writing
1579
+ systems. The values correspond to the names as defined in the
1580
+ Unicode standard. The enumeration has been added in GLib 2.14,
1581
+ and is interchangeable with <span class="type">PangoScript</span>.
1582
+ Note that new types may be added in the future. Applications
1583
+ should be ready to handle unknown values.
1584
+ See <a class="ulink" href="http://www.unicode.org/reports/tr24/" target="_top">Unicode Standard Annex
1585
+ #24: Script names</a>.
1586
+ </p>
1587
+ <div class="variablelist"><table border="0">
1588
+ <col align="left" valign="top">
1589
+ <tbody>
1590
+ <tr>
1591
+ <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>
1592
+ <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>
1593
+ </td>
1594
+ </tr>
1595
+ <tr>
1596
+ <td><p><a name="G-UNICODE-SCRIPT-COMMON:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_COMMON</code></span></p></td>
1597
+ <td> a character used by multiple different scripts
1598
+ </td>
1599
+ </tr>
1600
+ <tr>
1601
+ <td><p><a name="G-UNICODE-SCRIPT-INHERITED:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_INHERITED</code></span></p></td>
1602
+ <td> a mark glyph that takes its script from the
1603
+ base glyph to which it is attached
1604
+ </td>
1605
+ </tr>
1606
+ <tr>
1607
+ <td><p><a name="G-UNICODE-SCRIPT-ARABIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ARABIC</code></span></p></td>
1608
+ <td> Arabic
1609
+ </td>
1610
+ </tr>
1611
+ <tr>
1612
+ <td><p><a name="G-UNICODE-SCRIPT-ARMENIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ARMENIAN</code></span></p></td>
1613
+ <td> Armenian
1614
+ </td>
1615
+ </tr>
1616
+ <tr>
1617
+ <td><p><a name="G-UNICODE-SCRIPT-BENGALI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BENGALI</code></span></p></td>
1618
+ <td> Bengali
1619
+ </td>
1620
+ </tr>
1621
+ <tr>
1622
+ <td><p><a name="G-UNICODE-SCRIPT-BOPOMOFO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BOPOMOFO</code></span></p></td>
1623
+ <td> Bopomofo
1624
+ </td>
1625
+ </tr>
1626
+ <tr>
1627
+ <td><p><a name="G-UNICODE-SCRIPT-CHEROKEE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CHEROKEE</code></span></p></td>
1628
+ <td> Cherokee
1629
+ </td>
1630
+ </tr>
1631
+ <tr>
1632
+ <td><p><a name="G-UNICODE-SCRIPT-COPTIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_COPTIC</code></span></p></td>
1633
+ <td> Coptic
1634
+ </td>
1635
+ </tr>
1636
+ <tr>
1637
+ <td><p><a name="G-UNICODE-SCRIPT-CYRILLIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CYRILLIC</code></span></p></td>
1638
+ <td> Cyrillic
1639
+ </td>
1640
+ </tr>
1641
+ <tr>
1642
+ <td><p><a name="G-UNICODE-SCRIPT-DESERET:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_DESERET</code></span></p></td>
1643
+ <td> Deseret
1644
+ </td>
1645
+ </tr>
1646
+ <tr>
1647
+ <td><p><a name="G-UNICODE-SCRIPT-DEVANAGARI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_DEVANAGARI</code></span></p></td>
1648
+ <td>Devanagari
1649
+ </td>
1650
+ </tr>
1651
+ <tr>
1652
+ <td><p><a name="G-UNICODE-SCRIPT-ETHIOPIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ETHIOPIC</code></span></p></td>
1653
+ <td> Ethiopic
1654
+ </td>
1655
+ </tr>
1656
+ <tr>
1657
+ <td><p><a name="G-UNICODE-SCRIPT-GEORGIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GEORGIAN</code></span></p></td>
1658
+ <td> Georgian
1659
+ </td>
1660
+ </tr>
1661
+ <tr>
1662
+ <td><p><a name="G-UNICODE-SCRIPT-GOTHIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GOTHIC</code></span></p></td>
1663
+ <td> Gothic
1664
+ </td>
1665
+ </tr>
1666
+ <tr>
1667
+ <td><p><a name="G-UNICODE-SCRIPT-GREEK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GREEK</code></span></p></td>
1668
+ <td> Greek
1669
+ </td>
1670
+ </tr>
1671
+ <tr>
1672
+ <td><p><a name="G-UNICODE-SCRIPT-GUJARATI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GUJARATI</code></span></p></td>
1673
+ <td> Gujarati
1674
+ </td>
1675
+ </tr>
1676
+ <tr>
1677
+ <td><p><a name="G-UNICODE-SCRIPT-GURMUKHI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GURMUKHI</code></span></p></td>
1678
+ <td> Gurmukhi
1679
+ </td>
1680
+ </tr>
1681
+ <tr>
1682
+ <td><p><a name="G-UNICODE-SCRIPT-HAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HAN</code></span></p></td>
1683
+ <td> Han
1684
+ </td>
1685
+ </tr>
1686
+ <tr>
1687
+ <td><p><a name="G-UNICODE-SCRIPT-HANGUL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HANGUL</code></span></p></td>
1688
+ <td> Hangul
1689
+ </td>
1690
+ </tr>
1691
+ <tr>
1692
+ <td><p><a name="G-UNICODE-SCRIPT-HEBREW:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HEBREW</code></span></p></td>
1693
+ <td> Hebrew
1694
+ </td>
1695
+ </tr>
1696
+ <tr>
1697
+ <td><p><a name="G-UNICODE-SCRIPT-HIRAGANA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HIRAGANA</code></span></p></td>
1698
+ <td> Hiragana
1699
+ </td>
1700
+ </tr>
1701
+ <tr>
1702
+ <td><p><a name="G-UNICODE-SCRIPT-KANNADA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KANNADA</code></span></p></td>
1703
+ <td> Kannada
1704
+ </td>
1705
+ </tr>
1706
+ <tr>
1707
+ <td><p><a name="G-UNICODE-SCRIPT-KATAKANA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KATAKANA</code></span></p></td>
1708
+ <td> Katakana
1709
+ </td>
1710
+ </tr>
1711
+ <tr>
1712
+ <td><p><a name="G-UNICODE-SCRIPT-KHMER:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KHMER</code></span></p></td>
1713
+ <td> Khmer
1714
+ </td>
1715
+ </tr>
1716
+ <tr>
1717
+ <td><p><a name="G-UNICODE-SCRIPT-LAO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LAO</code></span></p></td>
1718
+ <td> Lao
1719
+ </td>
1720
+ </tr>
1721
+ <tr>
1722
+ <td><p><a name="G-UNICODE-SCRIPT-LATIN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LATIN</code></span></p></td>
1723
+ <td> Latin
1724
+ </td>
1725
+ </tr>
1726
+ <tr>
1727
+ <td><p><a name="G-UNICODE-SCRIPT-MALAYALAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MALAYALAM</code></span></p></td>
1728
+ <td> Malayalam
1729
+ </td>
1730
+ </tr>
1731
+ <tr>
1732
+ <td><p><a name="G-UNICODE-SCRIPT-MONGOLIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MONGOLIAN</code></span></p></td>
1733
+ <td> Mongolian
1734
+ </td>
1735
+ </tr>
1736
+ <tr>
1737
+ <td><p><a name="G-UNICODE-SCRIPT-MYANMAR:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MYANMAR</code></span></p></td>
1738
+ <td> Myanmar
1739
+ </td>
1740
+ </tr>
1741
+ <tr>
1742
+ <td><p><a name="G-UNICODE-SCRIPT-OGHAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OGHAM</code></span></p></td>
1743
+ <td> Ogham
1744
+ </td>
1745
+ </tr>
1746
+ <tr>
1747
+ <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>
1748
+ <td>Old Italic
1749
+ </td>
1750
+ </tr>
1751
+ <tr>
1752
+ <td><p><a name="G-UNICODE-SCRIPT-ORIYA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_ORIYA</code></span></p></td>
1753
+ <td> Oriya
1754
+ </td>
1755
+ </tr>
1756
+ <tr>
1757
+ <td><p><a name="G-UNICODE-SCRIPT-RUNIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_RUNIC</code></span></p></td>
1758
+ <td> Runic
1759
+ </td>
1760
+ </tr>
1761
+ <tr>
1762
+ <td><p><a name="G-UNICODE-SCRIPT-SINHALA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SINHALA</code></span></p></td>
1763
+ <td> Sinhala
1764
+ </td>
1765
+ </tr>
1766
+ <tr>
1767
+ <td><p><a name="G-UNICODE-SCRIPT-SYRIAC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SYRIAC</code></span></p></td>
1768
+ <td> Syriac
1769
+ </td>
1770
+ </tr>
1771
+ <tr>
1772
+ <td><p><a name="G-UNICODE-SCRIPT-TAMIL:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAMIL</code></span></p></td>
1773
+ <td> Tamil
1774
+ </td>
1775
+ </tr>
1776
+ <tr>
1777
+ <td><p><a name="G-UNICODE-SCRIPT-TELUGU:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TELUGU</code></span></p></td>
1778
+ <td> Telugu
1779
+ </td>
1780
+ </tr>
1781
+ <tr>
1782
+ <td><p><a name="G-UNICODE-SCRIPT-THAANA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_THAANA</code></span></p></td>
1783
+ <td> Thaana
1784
+ </td>
1785
+ </tr>
1786
+ <tr>
1787
+ <td><p><a name="G-UNICODE-SCRIPT-THAI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_THAI</code></span></p></td>
1788
+ <td> Thai
1789
+ </td>
1790
+ </tr>
1791
+ <tr>
1792
+ <td><p><a name="G-UNICODE-SCRIPT-TIBETAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TIBETAN</code></span></p></td>
1793
+ <td> Tibetan
1794
+ </td>
1795
+ </tr>
1796
+ <tr>
1797
+ <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>
1798
+ <td>
1799
+ Canadian Aboriginal
1800
+ </td>
1801
+ </tr>
1802
+ <tr>
1803
+ <td><p><a name="G-UNICODE-SCRIPT-YI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_YI</code></span></p></td>
1804
+ <td> Yi
1805
+ </td>
1806
+ </tr>
1807
+ <tr>
1808
+ <td><p><a name="G-UNICODE-SCRIPT-TAGALOG:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAGALOG</code></span></p></td>
1809
+ <td> Tagalog
1810
+ </td>
1811
+ </tr>
1812
+ <tr>
1813
+ <td><p><a name="G-UNICODE-SCRIPT-HANUNOO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_HANUNOO</code></span></p></td>
1814
+ <td> Hanunoo
1815
+ </td>
1816
+ </tr>
1817
+ <tr>
1818
+ <td><p><a name="G-UNICODE-SCRIPT-BUHID:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BUHID</code></span></p></td>
1819
+ <td> Buhid
1820
+ </td>
1821
+ </tr>
1822
+ <tr>
1823
+ <td><p><a name="G-UNICODE-SCRIPT-TAGBANWA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAGBANWA</code></span></p></td>
1824
+ <td> Tagbanwa
1825
+ </td>
1826
+ </tr>
1827
+ <tr>
1828
+ <td><p><a name="G-UNICODE-SCRIPT-BRAILLE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BRAILLE</code></span></p></td>
1829
+ <td> Braille
1830
+ </td>
1831
+ </tr>
1832
+ <tr>
1833
+ <td><p><a name="G-UNICODE-SCRIPT-CYPRIOT:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CYPRIOT</code></span></p></td>
1834
+ <td> Cypriot
1835
+ </td>
1836
+ </tr>
1837
+ <tr>
1838
+ <td><p><a name="G-UNICODE-SCRIPT-LIMBU:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LIMBU</code></span></p></td>
1839
+ <td> Limbu
1840
+ </td>
1841
+ </tr>
1842
+ <tr>
1843
+ <td><p><a name="G-UNICODE-SCRIPT-OSMANYA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OSMANYA</code></span></p></td>
1844
+ <td> Osmanya
1845
+ </td>
1846
+ </tr>
1847
+ <tr>
1848
+ <td><p><a name="G-UNICODE-SCRIPT-SHAVIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SHAVIAN</code></span></p></td>
1849
+ <td> Shavian
1850
+ </td>
1851
+ </tr>
1852
+ <tr>
1853
+ <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>
1854
+ <td> Linear B
1855
+ </td>
1856
+ </tr>
1857
+ <tr>
1858
+ <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>
1859
+ <td> Tai Le
1860
+ </td>
1861
+ </tr>
1862
+ <tr>
1863
+ <td><p><a name="G-UNICODE-SCRIPT-UGARITIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_UGARITIC</code></span></p></td>
1864
+ <td> Ugaritic
1865
+ </td>
1866
+ </tr>
1867
+ <tr>
1868
+ <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>
1869
+ <td>New Tai Lue
1870
+ </td>
1871
+ </tr>
1872
+ <tr>
1873
+ <td><p><a name="G-UNICODE-SCRIPT-BUGINESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BUGINESE</code></span></p></td>
1874
+ <td> Buginese
1875
+ </td>
1876
+ </tr>
1877
+ <tr>
1878
+ <td><p><a name="G-UNICODE-SCRIPT-GLAGOLITIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_GLAGOLITIC</code></span></p></td>
1879
+ <td>Glagolitic
1880
+ </td>
1881
+ </tr>
1882
+ <tr>
1883
+ <td><p><a name="G-UNICODE-SCRIPT-TIFINAGH:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TIFINAGH</code></span></p></td>
1884
+ <td> Tifinagh
1885
+ </td>
1886
+ </tr>
1887
+ <tr>
1888
+ <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>
1889
+ <td>Syloti Nagri
1890
+ </td>
1891
+ </tr>
1892
+ <tr>
1893
+ <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>
1894
+ <td>Old Persian
1895
+ </td>
1896
+ </tr>
1897
+ <tr>
1898
+ <td><p><a name="G-UNICODE-SCRIPT-KHAROSHTHI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KHAROSHTHI</code></span></p></td>
1899
+ <td>Kharoshthi
1900
+ </td>
1901
+ </tr>
1902
+ <tr>
1903
+ <td><p><a name="G-UNICODE-SCRIPT-UNKNOWN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_UNKNOWN</code></span></p></td>
1904
+ <td> an unassigned code point
1905
+ </td>
1906
+ </tr>
1907
+ <tr>
1908
+ <td><p><a name="G-UNICODE-SCRIPT-BALINESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BALINESE</code></span></p></td>
1909
+ <td> Balinese
1910
+ </td>
1911
+ </tr>
1912
+ <tr>
1913
+ <td><p><a name="G-UNICODE-SCRIPT-CUNEIFORM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CUNEIFORM</code></span></p></td>
1914
+ <td> Cuneiform
1915
+ </td>
1916
+ </tr>
1917
+ <tr>
1918
+ <td><p><a name="G-UNICODE-SCRIPT-PHOENICIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_PHOENICIAN</code></span></p></td>
1919
+ <td>Phoenician
1920
+ </td>
1921
+ </tr>
1922
+ <tr>
1923
+ <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>
1924
+ <td> Phags-pa
1925
+ </td>
1926
+ </tr>
1927
+ <tr>
1928
+ <td><p><a name="G-UNICODE-SCRIPT-NKO:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_NKO</code></span></p></td>
1929
+ <td> N'Ko
1930
+ </td>
1931
+ </tr>
1932
+ <tr>
1933
+ <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>
1934
+ <td> Kayah Li. Since 2.16.3
1935
+ </td>
1936
+ </tr>
1937
+ <tr>
1938
+ <td><p><a name="G-UNICODE-SCRIPT-LEPCHA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LEPCHA</code></span></p></td>
1939
+ <td> Lepcha. Since 2.16.3
1940
+ </td>
1941
+ </tr>
1942
+ <tr>
1943
+ <td><p><a name="G-UNICODE-SCRIPT-REJANG:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_REJANG</code></span></p></td>
1944
+ <td> Rejang. Since 2.16.3
1945
+ </td>
1946
+ </tr>
1947
+ <tr>
1948
+ <td><p><a name="G-UNICODE-SCRIPT-SUNDANESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SUNDANESE</code></span></p></td>
1949
+ <td> Sundanese. Since 2.16.3
1950
+ </td>
1951
+ </tr>
1952
+ <tr>
1953
+ <td><p><a name="G-UNICODE-SCRIPT-SAURASHTRA:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SAURASHTRA</code></span></p></td>
1954
+ <td>Saurashtra. Since 2.16.3
1955
+ </td>
1956
+ </tr>
1957
+ <tr>
1958
+ <td><p><a name="G-UNICODE-SCRIPT-CHAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CHAM</code></span></p></td>
1959
+ <td> Cham. Since 2.16.3
1960
+ </td>
1961
+ </tr>
1962
+ <tr>
1963
+ <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>
1964
+ <td> Ol Chiki. Since 2.16.3
1965
+ </td>
1966
+ </tr>
1967
+ <tr>
1968
+ <td><p><a name="G-UNICODE-SCRIPT-VAI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_VAI</code></span></p></td>
1969
+ <td> Vai. Since 2.16.3
1970
+ </td>
1971
+ </tr>
1972
+ <tr>
1973
+ <td><p><a name="G-UNICODE-SCRIPT-CARIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_CARIAN</code></span></p></td>
1974
+ <td> Carian. Since 2.16.3
1975
+ </td>
1976
+ </tr>
1977
+ <tr>
1978
+ <td><p><a name="G-UNICODE-SCRIPT-LYCIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LYCIAN</code></span></p></td>
1979
+ <td> Lycian. Since 2.16.3
1980
+ </td>
1981
+ </tr>
1982
+ <tr>
1983
+ <td><p><a name="G-UNICODE-SCRIPT-LYDIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LYDIAN</code></span></p></td>
1984
+ <td> Lydian. Since 2.16.3
1985
+ </td>
1986
+ </tr>
1987
+ <tr>
1988
+ <td><p><a name="G-UNICODE-SCRIPT-AVESTAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_AVESTAN</code></span></p></td>
1989
+ <td> Avestan. Since 2.26
1990
+ </td>
1991
+ </tr>
1992
+ <tr>
1993
+ <td><p><a name="G-UNICODE-SCRIPT-BAMUM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_BAMUM</code></span></p></td>
1994
+ <td> Bamum. Since 2.26
1995
+ </td>
1996
+ </tr>
1997
+ <tr>
1998
+ <td><p><a name="G-UNICODE-SCRIPT-EGYPTIAN-HIEROGLYPHS:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS</code></span></p></td>
1999
+ <td> Egyptian Hieroglpyhs. Since 2.26
2000
+ </td>
2001
+ </tr>
2002
+ <tr>
2003
+ <td><p><a name="G-UNICODE-SCRIPT-IMPERIAL-ARAMAIC:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC</code></span></p></td>
2004
+ <td> Imperial Aramaic. Since 2.26
2005
+ </td>
2006
+ </tr>
2007
+ <tr>
2008
+ <td><p><a name="G-UNICODE-SCRIPT-INSCRIPTIONAL-PAHLAVI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI</code></span></p></td>
2009
+ <td> Inscriptional Pahlavi. Since 2.26
2010
+ </td>
2011
+ </tr>
2012
+ <tr>
2013
+ <td><p><a name="G-UNICODE-SCRIPT-INSCRIPTIONAL-PARTHIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN</code></span></p></td>
2014
+ <td>Inscriptional Parthian. Since 2.26
2015
+ </td>
2016
+ </tr>
2017
+ <tr>
2018
+ <td><p><a name="G-UNICODE-SCRIPT-JAVANESE:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_JAVANESE</code></span></p></td>
2019
+ <td> Javanese. Since 2.26
2020
+ </td>
2021
+ </tr>
2022
+ <tr>
2023
+ <td><p><a name="G-UNICODE-SCRIPT-KAITHI:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_KAITHI</code></span></p></td>
2024
+ <td> Kaithi. Since 2.26
2025
+ </td>
2026
+ </tr>
2027
+ <tr>
2028
+ <td><p><a name="G-UNICODE-SCRIPT-LISU:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_LISU</code></span></p></td>
2029
+ <td> Lisu. Since 2.26
2030
+ </td>
2031
+ </tr>
2032
+ <tr>
2033
+ <td><p><a name="G-UNICODE-SCRIPT-MEETEI-MAYEK:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_MEETEI_MAYEK</code></span></p></td>
2034
+ <td> Meetei Mayek. Since 2.26
2035
+ </td>
2036
+ </tr>
2037
+ <tr>
2038
+ <td><p><a name="G-UNICODE-SCRIPT-OLD-SOUTH-ARABIAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN</code></span></p></td>
2039
+ <td> Old South Arabian. Since 2.26
2040
+ </td>
2041
+ </tr>
2042
+ <tr>
2043
+ <td><p><a name="G-UNICODE-SCRIPT-OLD-TURKISH:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_OLD_TURKISH</code></span></p></td>
2044
+ <td> Old Turkish. Since 2.26
2045
+ </td>
2046
+ </tr>
2047
+ <tr>
2048
+ <td><p><a name="G-UNICODE-SCRIPT-SAMARITAN:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_SAMARITAN</code></span></p></td>
2049
+ <td> Samaritan. Since 2.26
2050
+ </td>
2051
+ </tr>
2052
+ <tr>
2053
+ <td><p><a name="G-UNICODE-SCRIPT-TAI-THAM:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAI_THAM</code></span></p></td>
2054
+ <td> Tai Tham. Since 2.26
2055
+ </td>
2056
+ </tr>
2057
+ <tr>
2058
+ <td><p><a name="G-UNICODE-SCRIPT-TAI-VIET:CAPS"></a><span class="term"><code class="literal">G_UNICODE_SCRIPT_TAI_VIET</code></span></p></td>
2059
+ <td> Tai Viet. Since 2.26
2060
+ </td>
2061
+ </tr>
2062
+ </tbody>
2063
+ </table></div>
2064
+ </div>
2065
+ <hr>
2066
+ <div class="refsect2">
2067
+ <a name="g-unichar-get-script"></a><h3>g_unichar_get_script ()</h3>
2068
+ <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>
2069
+ <p>
2070
+ 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
2071
+ by Unicode Standard Annex <span class="type">24</span>). No check is made for <em class="parameter"><code>ch</code></em> being a
2072
+ valid Unicode character; if you pass in invalid character, the
2073
+ result is undefined.
2074
+ </p>
2075
+ <p>
2076
+ This function is equivalent to <code class="function">pango_script_for_unichar()</code> and the
2077
+ two are interchangeable.
2078
+ </p>
2079
+ <div class="variablelist"><table border="0">
2080
+ <col align="left" valign="top">
2081
+ <tbody>
2082
+ <tr>
2083
+ <td><p><span class="term"><em class="parameter"><code>ch</code></em> :</span></p></td>
2084
+ <td>a Unicode character
2085
+ </td>
2086
+ </tr>
2087
+ <tr>
2088
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2089
+ <td> the <a class="link" href="glib-Unicode-Manipulation.html#GUnicodeScript" title="enum GUnicodeScript"><span class="type">GUnicodeScript</span></a> for the character.
2090
+
2091
+ </td>
2092
+ </tr>
2093
+ </tbody>
2094
+ </table></div>
2095
+ <p class="since">Since 2.14</p>
2096
+ </div>
2097
+ <hr>
2098
+ <div class="refsect2">
2099
+ <a name="g-utf8-next-char"></a><h3>g_utf8_next_char()</h3>
2100
+ <pre class="programlisting">#define g_utf8_next_char(p)</pre>
2101
+ <p>
2102
+ Skips to the next character in a UTF-8 string. The string must be
2103
+ valid; this macro is as fast as possible, and has no error-checking.
2104
+ You would use this macro to iterate over a string character by
2105
+ character. The macro returns the start of the next UTF-8 character.
2106
+ 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
2107
+ that may contain invalid UTF-8.
2108
+ </p>
2109
+ <div class="variablelist"><table border="0">
2110
+ <col align="left" valign="top">
2111
+ <tbody><tr>
2112
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2113
+ <td>Pointer to the start of a valid UTF-8 character.
2114
+ </td>
2115
+ </tr></tbody>
2116
+ </table></div>
2117
+ </div>
2118
+ <hr>
2119
+ <div class="refsect2">
2120
+ <a name="g-utf8-get-char"></a><h3>g_utf8_get_char ()</h3>
2121
+ <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>
2122
+ <p>
2123
+ Converts a sequence of bytes encoded as UTF-8 to a Unicode character.
2124
+ If <em class="parameter"><code>p</code></em> does not point to a valid UTF-8 encoded character, results are
2125
+ undefined. If you are not sure that the bytes are complete
2126
+ 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>
2127
+ instead.
2128
+ </p>
2129
+ <div class="variablelist"><table border="0">
2130
+ <col align="left" valign="top">
2131
+ <tbody>
2132
+ <tr>
2133
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2134
+ <td>a pointer to Unicode character encoded as UTF-8
2135
+ </td>
2136
+ </tr>
2137
+ <tr>
2138
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2139
+ <td> the resulting character
2140
+ </td>
2141
+ </tr>
2142
+ </tbody>
2143
+ </table></div>
2144
+ </div>
2145
+ <hr>
2146
+ <div class="refsect2">
2147
+ <a name="g-utf8-get-char-validated"></a><h3>g_utf8_get_char_validated ()</h3>
2148
+ <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>,
2149
+ <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>
2150
+ <p>
2151
+ Convert a sequence of bytes encoded as UTF-8 to a Unicode character.
2152
+ This function checks for incomplete characters, for invalid characters
2153
+ such as characters that are out of the range of Unicode, and for
2154
+ overlong encodings of valid characters.
2155
+ </p>
2156
+ <div class="variablelist"><table border="0">
2157
+ <col align="left" valign="top">
2158
+ <tbody>
2159
+ <tr>
2160
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2161
+ <td>a pointer to Unicode character encoded as UTF-8
2162
+ </td>
2163
+ </tr>
2164
+ <tr>
2165
+ <td><p><span class="term"><em class="parameter"><code>max_len</code></em> :</span></p></td>
2166
+ <td>the maximum number of bytes to read, or -1, for no maximum or
2167
+ if <em class="parameter"><code>p</code></em> is nul-terminated
2168
+ </td>
2169
+ </tr>
2170
+ <tr>
2171
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2172
+ <td> the resulting character. If <em class="parameter"><code>p</code></em> points to a partial
2173
+ sequence at the end of a string that could begin a valid
2174
+ character (or if <em class="parameter"><code>max_len</code></em> is zero), returns (gunichar)-2;
2175
+ otherwise, if <em class="parameter"><code>p</code></em> does not point to a valid UTF-8 encoded
2176
+ Unicode character, returns (gunichar)-1.
2177
+ </td>
2178
+ </tr>
2179
+ </tbody>
2180
+ </table></div>
2181
+ </div>
2182
+ <hr>
2183
+ <div class="refsect2">
2184
+ <a name="g-utf8-offset-to-pointer"></a><h3>g_utf8_offset_to_pointer ()</h3>
2185
+ <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>,
2186
+ <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>
2187
+ <p>
2188
+ Converts from an integer character offset to a pointer to a position
2189
+ within the string.
2190
+ </p>
2191
+ <p>
2192
+ Since 2.10, this function allows to pass a negative <em class="parameter"><code>offset</code></em> to
2193
+ step backwards. It is usually worth stepping backwards from the end
2194
+ instead of forwards if <em class="parameter"><code>offset</code></em> is in the last fourth of the string,
2195
+ since moving forward is about 3 times faster than moving backward.
2196
+ </p>
2197
+ <p>
2198
+ </p>
2199
+ <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
2200
+ <h3 class="title">Note</h3>
2201
+ <p>
2202
+ This function doesn't abort when reaching the end of <em class="parameter"><code>str</code></em>. Therefore
2203
+ you should be sure that <em class="parameter"><code>offset</code></em> is within string boundaries before
2204
+ 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.
2205
+ </p>
2206
+ <p>
2207
+ This limitation exists as this function is called frequently during
2208
+ text rendering and therefore has to be as fast as possible.
2209
+ </p>
2210
+ </div>
2211
+ <p>
2212
+ </p>
2213
+ <div class="variablelist"><table border="0">
2214
+ <col align="left" valign="top">
2215
+ <tbody>
2216
+ <tr>
2217
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2218
+ <td>a UTF-8 encoded string
2219
+ </td>
2220
+ </tr>
2221
+ <tr>
2222
+ <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
2223
+ <td>a character offset within <em class="parameter"><code>str</code></em>
2224
+ </td>
2225
+ </tr>
2226
+ <tr>
2227
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2228
+ <td> the resulting pointer
2229
+ </td>
2230
+ </tr>
2231
+ </tbody>
2232
+ </table></div>
2233
+ </div>
2234
+ <hr>
2235
+ <div class="refsect2">
2236
+ <a name="g-utf8-pointer-to-offset"></a><h3>g_utf8_pointer_to_offset ()</h3>
2237
+ <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>,
2238
+ <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>
2239
+ <p>
2240
+ Converts from a pointer to position within a string to a integer
2241
+ character offset.
2242
+ </p>
2243
+ <p>
2244
+ 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
2245
+ a negative offset in this case.
2246
+ </p>
2247
+ <div class="variablelist"><table border="0">
2248
+ <col align="left" valign="top">
2249
+ <tbody>
2250
+ <tr>
2251
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2252
+ <td>a UTF-8 encoded string
2253
+ </td>
2254
+ </tr>
2255
+ <tr>
2256
+ <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
2257
+ <td>a pointer to a position within <em class="parameter"><code>str</code></em>
2258
+ </td>
2259
+ </tr>
2260
+ <tr>
2261
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2262
+ <td> the resulting character offset
2263
+ </td>
2264
+ </tr>
2265
+ </tbody>
2266
+ </table></div>
2267
+ </div>
2268
+ <hr>
2269
+ <div class="refsect2">
2270
+ <a name="g-utf8-prev-char"></a><h3>g_utf8_prev_char ()</h3>
2271
+ <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>
2272
+ <p>
2273
+ Finds the previous UTF-8 character in the string before <em class="parameter"><code>p</code></em>.
2274
+ </p>
2275
+ <p>
2276
+ <em class="parameter"><code>p</code></em> does not have to be at the beginning of a UTF-8 character. No check
2277
+ is made to see if the character found is actually valid other than
2278
+ it starts with an appropriate byte. If <em class="parameter"><code>p</code></em> might be the first
2279
+ 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.
2280
+ </p>
2281
+ <div class="variablelist"><table border="0">
2282
+ <col align="left" valign="top">
2283
+ <tbody>
2284
+ <tr>
2285
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2286
+ <td>a pointer to a position within a UTF-8 encoded string
2287
+ </td>
2288
+ </tr>
2289
+ <tr>
2290
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2291
+ <td> a pointer to the found character.
2292
+ </td>
2293
+ </tr>
2294
+ </tbody>
2295
+ </table></div>
2296
+ </div>
2297
+ <hr>
2298
+ <div class="refsect2">
2299
+ <a name="g-utf8-find-next-char"></a><h3>g_utf8_find_next_char ()</h3>
2300
+ <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>,
2301
+ <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>
2302
+ <p>
2303
+ Finds the start of the next UTF-8 character in the string after <em class="parameter"><code>p</code></em>.
2304
+ </p>
2305
+ <p>
2306
+ <em class="parameter"><code>p</code></em> does not have to be at the beginning of a UTF-8 character. No check
2307
+ is made to see if the character found is actually valid other than
2308
+ it starts with an appropriate byte.
2309
+ </p>
2310
+ <div class="variablelist"><table border="0">
2311
+ <col align="left" valign="top">
2312
+ <tbody>
2313
+ <tr>
2314
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2315
+ <td>a pointer to a position within a UTF-8 encoded string
2316
+ </td>
2317
+ </tr>
2318
+ <tr>
2319
+ <td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
2320
+ <td>a pointer to the byte following the end of the string,
2321
+ 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.
2322
+ </td>
2323
+ </tr>
2324
+ <tr>
2325
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2326
+ <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>
2327
+ </td>
2328
+ </tr>
2329
+ </tbody>
2330
+ </table></div>
2331
+ </div>
2332
+ <hr>
2333
+ <div class="refsect2">
2334
+ <a name="g-utf8-find-prev-char"></a><h3>g_utf8_find_prev_char ()</h3>
2335
+ <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>,
2336
+ <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>
2337
+ <p>
2338
+ 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
2339
+ 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
2340
+ UTF-8 characters are present in <em class="parameter"><code>str</code></em> before <em class="parameter"><code>p</code></em>.
2341
+ </p>
2342
+ <p>
2343
+ <em class="parameter"><code>p</code></em> does not have to be at the beginning of a UTF-8 character. No check
2344
+ is made to see if the character found is actually valid other than
2345
+ it starts with an appropriate byte.
2346
+ </p>
2347
+ <div class="variablelist"><table border="0">
2348
+ <col align="left" valign="top">
2349
+ <tbody>
2350
+ <tr>
2351
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2352
+ <td>pointer to the beginning of a UTF-8 encoded string
2353
+ </td>
2354
+ </tr>
2355
+ <tr>
2356
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2357
+ <td>pointer to some position within <em class="parameter"><code>str</code></em>
2358
+ </td>
2359
+ </tr>
2360
+ <tr>
2361
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2362
+ <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>.
2363
+ </td>
2364
+ </tr>
2365
+ </tbody>
2366
+ </table></div>
2367
+ </div>
2368
+ <hr>
2369
+ <div class="refsect2">
2370
+ <a name="g-utf8-strlen"></a><h3>g_utf8_strlen ()</h3>
2371
+ <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>,
2372
+ <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>
2373
+ <p>
2374
+ Computes the length of the string in characters, not including
2375
+ the terminating nul character.
2376
+ </p>
2377
+ <div class="variablelist"><table border="0">
2378
+ <col align="left" valign="top">
2379
+ <tbody>
2380
+ <tr>
2381
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2382
+ <td>pointer to the start of a UTF-8 encoded string
2383
+ </td>
2384
+ </tr>
2385
+ <tr>
2386
+ <td><p><span class="term"><em class="parameter"><code>max</code></em> :</span></p></td>
2387
+ <td>the maximum number of bytes to examine. If <em class="parameter"><code>max</code></em>
2388
+ is less than 0, then the string is assumed to be
2389
+ nul-terminated. If <em class="parameter"><code>max</code></em> is 0, <em class="parameter"><code>p</code></em> will not be examined and
2390
+ may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
2391
+ </td>
2392
+ </tr>
2393
+ <tr>
2394
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2395
+ <td> the length of the string in characters
2396
+ </td>
2397
+ </tr>
2398
+ </tbody>
2399
+ </table></div>
2400
+ </div>
2401
+ <hr>
2402
+ <div class="refsect2">
2403
+ <a name="g-utf8-strncpy"></a><h3>g_utf8_strncpy ()</h3>
2404
+ <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>,
2405
+ <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>,
2406
+ <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>
2407
+ <p>
2408
+ Like the standard C <code class="function">strncpy()</code> function, but
2409
+ copies a given number of characters instead of a given number of
2410
+ bytes. The <em class="parameter"><code>src</code></em> string must be valid UTF-8 encoded text.
2411
+ (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
2412
+ utility functions with it.)
2413
+ </p>
2414
+ <div class="variablelist"><table border="0">
2415
+ <col align="left" valign="top">
2416
+ <tbody>
2417
+ <tr>
2418
+ <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
2419
+ <td>buffer to fill with characters from <em class="parameter"><code>src</code></em>
2420
+ </td>
2421
+ </tr>
2422
+ <tr>
2423
+ <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td>
2424
+ <td>UTF-8 encoded string
2425
+ </td>
2426
+ </tr>
2427
+ <tr>
2428
+ <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
2429
+ <td>character count
2430
+ </td>
2431
+ </tr>
2432
+ <tr>
2433
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2434
+ <td> <em class="parameter"><code>dest</code></em>
2435
+ </td>
2436
+ </tr>
2437
+ </tbody>
2438
+ </table></div>
2439
+ </div>
2440
+ <hr>
2441
+ <div class="refsect2">
2442
+ <a name="g-utf8-strchr"></a><h3>g_utf8_strchr ()</h3>
2443
+ <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>,
2444
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
2445
+ <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>
2446
+ <p>
2447
+ Finds the leftmost occurrence of the given Unicode character
2448
+ in a UTF-8 encoded string, while limiting the search to <em class="parameter"><code>len</code></em> bytes.
2449
+ If <em class="parameter"><code>len</code></em> is -1, allow unbounded search.
2450
+ </p>
2451
+ <div class="variablelist"><table border="0">
2452
+ <col align="left" valign="top">
2453
+ <tbody>
2454
+ <tr>
2455
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2456
+ <td>a nul-terminated UTF-8 encoded string
2457
+ </td>
2458
+ </tr>
2459
+ <tr>
2460
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2461
+ <td>the maximum length of <em class="parameter"><code>p</code></em>
2462
+ </td>
2463
+ </tr>
2464
+ <tr>
2465
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
2466
+ <td>a Unicode character
2467
+ </td>
2468
+ </tr>
2469
+ <tr>
2470
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2471
+ <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,
2472
+ otherwise, a pointer to the start of the leftmost occurrence of
2473
+ the character in the string.
2474
+ </td>
2475
+ </tr>
2476
+ </tbody>
2477
+ </table></div>
2478
+ </div>
2479
+ <hr>
2480
+ <div class="refsect2">
2481
+ <a name="g-utf8-strrchr"></a><h3>g_utf8_strrchr ()</h3>
2482
+ <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>,
2483
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
2484
+ <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>
2485
+ <p>
2486
+ Find the rightmost occurrence of the given Unicode character
2487
+ in a UTF-8 encoded string, while limiting the search to <em class="parameter"><code>len</code></em> bytes.
2488
+ If <em class="parameter"><code>len</code></em> is -1, allow unbounded search.
2489
+ </p>
2490
+ <div class="variablelist"><table border="0">
2491
+ <col align="left" valign="top">
2492
+ <tbody>
2493
+ <tr>
2494
+ <td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
2495
+ <td>a nul-terminated UTF-8 encoded string
2496
+ </td>
2497
+ </tr>
2498
+ <tr>
2499
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2500
+ <td>the maximum length of <em class="parameter"><code>p</code></em>
2501
+ </td>
2502
+ </tr>
2503
+ <tr>
2504
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
2505
+ <td>a Unicode character
2506
+ </td>
2507
+ </tr>
2508
+ <tr>
2509
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2510
+ <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,
2511
+ otherwise, a pointer to the start of the rightmost occurrence of the
2512
+ character in the string.
2513
+ </td>
2514
+ </tr>
2515
+ </tbody>
2516
+ </table></div>
2517
+ </div>
2518
+ <hr>
2519
+ <div class="refsect2">
2520
+ <a name="g-utf8-strreverse"></a><h3>g_utf8_strreverse ()</h3>
2521
+ <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>,
2522
+ <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>
2523
+ <p>
2524
+ Reverses a UTF-8 string. <em class="parameter"><code>str</code></em> must be valid UTF-8 encoded text.
2525
+ (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
2526
+ utility functions with it.)
2527
+ </p>
2528
+ <p>
2529
+ This function is intended for programmatic uses of reversed strings.
2530
+ It pays no attention to decomposed characters, combining marks, byte
2531
+ order marks, directional indicators (LRM, LRO, etc) and similar
2532
+ characters which might need special handling when reversing a string
2533
+ for display purposes.
2534
+ </p>
2535
+ <p>
2536
+ 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
2537
+ 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
2538
+ no longer needed.
2539
+ </p>
2540
+ <div class="variablelist"><table border="0">
2541
+ <col align="left" valign="top">
2542
+ <tbody>
2543
+ <tr>
2544
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2545
+ <td>a UTF-8 encoded string
2546
+ </td>
2547
+ </tr>
2548
+ <tr>
2549
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2550
+ <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,
2551
+ then the string is nul-terminated.
2552
+ </td>
2553
+ </tr>
2554
+ <tr>
2555
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2556
+ <td> a newly-allocated string which is the reverse of <em class="parameter"><code>str</code></em>.
2557
+
2558
+ </td>
2559
+ </tr>
2560
+ </tbody>
2561
+ </table></div>
2562
+ <p class="since">Since 2.2</p>
2563
+ </div>
2564
+ <hr>
2565
+ <div class="refsect2">
2566
+ <a name="g-utf8-validate"></a><h3>g_utf8_validate ()</h3>
2567
+ <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>,
2568
+ <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>,
2569
+ <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>
2570
+ <p>
2571
+ Validates UTF-8 encoded text. <em class="parameter"><code>str</code></em> is the text to validate;
2572
+ if <em class="parameter"><code>str</code></em> is nul-terminated, then <em class="parameter"><code>max_len</code></em> can be -1, otherwise
2573
+ <em class="parameter"><code>max_len</code></em> should be the number of bytes to validate.
2574
+ 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
2575
+ will be stored there (i.e. the start of the first invalid
2576
+ character if some bytes were invalid, or the end of the text
2577
+ being validated otherwise).
2578
+ </p>
2579
+ <p>
2580
+ 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
2581
+ positive and NUL is met before <em class="parameter"><code>max_len</code></em> bytes have been read.
2582
+ </p>
2583
+ <p>
2584
+ 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+
2585
+ routines <span class="emphasis"><em>require</em></span> valid UTF-8 as input;
2586
+ so data read from a file or the network should be checked
2587
+ 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.
2588
+ </p>
2589
+ <div class="variablelist"><table border="0">
2590
+ <col align="left" valign="top">
2591
+ <tbody>
2592
+ <tr>
2593
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2594
+ <td>a pointer to character data
2595
+ </td>
2596
+ </tr>
2597
+ <tr>
2598
+ <td><p><span class="term"><em class="parameter"><code>max_len</code></em> :</span></p></td>
2599
+ <td>max bytes to validate, or -1 to go until NUL
2600
+ </td>
2601
+ </tr>
2602
+ <tr>
2603
+ <td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
2604
+ <td>return location for end of valid data
2605
+ </td>
2606
+ </tr>
2607
+ <tr>
2608
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2609
+ <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
2610
+ </td>
2611
+ </tr>
2612
+ </tbody>
2613
+ </table></div>
2614
+ </div>
2615
+ <hr>
2616
+ <div class="refsect2">
2617
+ <a name="g-utf8-strup"></a><h3>g_utf8_strup ()</h3>
2618
+ <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>,
2619
+ <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>
2620
+ <p>
2621
+ Converts all Unicode characters in the string that have a case
2622
+ to uppercase. The exact manner that this is done depends
2623
+ on the current locale, and may result in the number of
2624
+ characters in the string increasing. (For instance, the
2625
+ German ess-zet will be changed to SS.)
2626
+ </p>
2627
+ <div class="variablelist"><table border="0">
2628
+ <col align="left" valign="top">
2629
+ <tbody>
2630
+ <tr>
2631
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2632
+ <td>a UTF-8 encoded string
2633
+ </td>
2634
+ </tr>
2635
+ <tr>
2636
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2637
+ <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.
2638
+ </td>
2639
+ </tr>
2640
+ <tr>
2641
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2642
+ <td> a newly allocated string, with all characters
2643
+ converted to uppercase.
2644
+ </td>
2645
+ </tr>
2646
+ </tbody>
2647
+ </table></div>
2648
+ </div>
2649
+ <hr>
2650
+ <div class="refsect2">
2651
+ <a name="g-utf8-strdown"></a><h3>g_utf8_strdown ()</h3>
2652
+ <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>,
2653
+ <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>
2654
+ <p>
2655
+ Converts all Unicode characters in the string that have a case
2656
+ to lowercase. The exact manner that this is done depends
2657
+ on the current locale, and may result in the number of
2658
+ characters in the string changing.
2659
+ </p>
2660
+ <div class="variablelist"><table border="0">
2661
+ <col align="left" valign="top">
2662
+ <tbody>
2663
+ <tr>
2664
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2665
+ <td>a UTF-8 encoded string
2666
+ </td>
2667
+ </tr>
2668
+ <tr>
2669
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2670
+ <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.
2671
+ </td>
2672
+ </tr>
2673
+ <tr>
2674
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2675
+ <td> a newly allocated string, with all characters
2676
+ converted to lowercase.
2677
+ </td>
2678
+ </tr>
2679
+ </tbody>
2680
+ </table></div>
2681
+ </div>
2682
+ <hr>
2683
+ <div class="refsect2">
2684
+ <a name="g-utf8-casefold"></a><h3>g_utf8_casefold ()</h3>
2685
+ <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>,
2686
+ <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>
2687
+ <p>
2688
+ Converts a string into a form that is independent of case. The
2689
+ result will not correspond to any particular case, but can be
2690
+ compared for equality or ordered with the results of calling
2691
+ <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.
2692
+ </p>
2693
+ <p>
2694
+ 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
2695
+ only an approximation to the correct linguistic case insensitive
2696
+ ordering, though it is a fairly good one. Getting this exactly
2697
+ right would require a more sophisticated collation function that
2698
+ takes case sensitivity into account. GLib does not currently
2699
+ provide such a function.
2700
+ </p>
2701
+ <div class="variablelist"><table border="0">
2702
+ <col align="left" valign="top">
2703
+ <tbody>
2704
+ <tr>
2705
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2706
+ <td>a UTF-8 encoded string
2707
+ </td>
2708
+ </tr>
2709
+ <tr>
2710
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2711
+ <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.
2712
+ </td>
2713
+ </tr>
2714
+ <tr>
2715
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2716
+ <td> a newly allocated string, that is a
2717
+ case independent form of <em class="parameter"><code>str</code></em>.
2718
+ </td>
2719
+ </tr>
2720
+ </tbody>
2721
+ </table></div>
2722
+ </div>
2723
+ <hr>
2724
+ <div class="refsect2">
2725
+ <a name="g-utf8-normalize"></a><h3>g_utf8_normalize ()</h3>
2726
+ <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>,
2727
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="type">gssize</span></a> len</code></em>,
2728
+ <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>
2729
+ <p>
2730
+ Converts a string into canonical form, standardizing
2731
+ such issues as whether a character with an accent
2732
+ is represented as a base character and combining
2733
+ accent or as a single precomposed character. The
2734
+ 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
2735
+ 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>
2736
+ before comparing two Unicode strings.
2737
+ </p>
2738
+ <p>
2739
+ The normalization mode <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a> only
2740
+ standardizes differences that do not affect the
2741
+ text content, such as the above-mentioned accent
2742
+ representation. <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL:CAPS"><code class="literal">G_NORMALIZE_ALL</code></a> also standardizes
2743
+ the "compatibility" characters in Unicode, such
2744
+ as SUPERSCRIPT THREE to the standard forms
2745
+ (in this case DIGIT THREE). Formatting information
2746
+ may be lost but for most text operations such
2747
+ characters should be considered the same.
2748
+ </p>
2749
+ <p>
2750
+ <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>
2751
+ 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>,
2752
+ but returned a result with composed forms rather
2753
+ than a maximally decomposed form. This is often
2754
+ useful if you intend to convert the string to
2755
+ a legacy encoding or pass it to a system with
2756
+ less capable Unicode handling.
2757
+ </p>
2758
+ <div class="variablelist"><table border="0">
2759
+ <col align="left" valign="top">
2760
+ <tbody>
2761
+ <tr>
2762
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2763
+ <td>a UTF-8 encoded string.
2764
+ </td>
2765
+ </tr>
2766
+ <tr>
2767
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2768
+ <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.
2769
+ </td>
2770
+ </tr>
2771
+ <tr>
2772
+ <td><p><span class="term"><em class="parameter"><code>mode</code></em> :</span></p></td>
2773
+ <td>the type of normalization to perform.
2774
+ </td>
2775
+ </tr>
2776
+ <tr>
2777
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2778
+ <td> a newly allocated string, that is the
2779
+ 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
2780
+ valid UTF-8.
2781
+ </td>
2782
+ </tr>
2783
+ </tbody>
2784
+ </table></div>
2785
+ </div>
2786
+ <hr>
2787
+ <div class="refsect2">
2788
+ <a name="GNormalizeMode"></a><h3>enum GNormalizeMode</h3>
2789
+ <pre class="programlisting">typedef enum {
2790
+ G_NORMALIZE_DEFAULT,
2791
+ G_NORMALIZE_NFD = G_NORMALIZE_DEFAULT,
2792
+ G_NORMALIZE_DEFAULT_COMPOSE,
2793
+ G_NORMALIZE_NFC = G_NORMALIZE_DEFAULT_COMPOSE,
2794
+ G_NORMALIZE_ALL,
2795
+ G_NORMALIZE_NFKD = G_NORMALIZE_ALL,
2796
+ G_NORMALIZE_ALL_COMPOSE,
2797
+ G_NORMALIZE_NFKC = G_NORMALIZE_ALL_COMPOSE
2798
+ } GNormalizeMode;
2799
+ </pre>
2800
+ <p>
2801
+ Defines how a Unicode string is transformed in a canonical
2802
+ form, standardizing such issues as whether a character with an accent is
2803
+ represented as a base character and combining accent or as a single precomposed
2804
+ character. Unicode strings should generally be normalized before comparing them.
2805
+ </p>
2806
+ <div class="variablelist"><table border="0">
2807
+ <col align="left" valign="top">
2808
+ <tbody>
2809
+ <tr>
2810
+ <td><p><a name="G-NORMALIZE-DEFAULT:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_DEFAULT</code></span></p></td>
2811
+ <td>standardize differences that do not affect the
2812
+ text content, such as the above-mentioned accent representation.
2813
+ </td>
2814
+ </tr>
2815
+ <tr>
2816
+ <td><p><a name="G-NORMALIZE-NFD:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFD</code></span></p></td>
2817
+ <td>another name for <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-DEFAULT:CAPS"><code class="literal">G_NORMALIZE_DEFAULT</code></a>.
2818
+ </td>
2819
+ </tr>
2820
+ <tr>
2821
+ <td><p><a name="G-NORMALIZE-DEFAULT-COMPOSE:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_DEFAULT_COMPOSE</code></span></p></td>
2822
+ <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
2823
+ forms rather than a maximally decomposed form.
2824
+ </td>
2825
+ </tr>
2826
+ <tr>
2827
+ <td><p><a name="G-NORMALIZE-NFC:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFC</code></span></p></td>
2828
+ <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>.
2829
+ </td>
2830
+ </tr>
2831
+ <tr>
2832
+ <td><p><a name="G-NORMALIZE-ALL:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_ALL</code></span></p></td>
2833
+ <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
2834
+ "compatibility" characters in Unicode, such as SUPERSCRIPT THREE to the
2835
+ standard forms (in this case DIGIT THREE). Formatting information may be
2836
+ lost but for most text operations such characters should be considered the
2837
+ same.
2838
+ </td>
2839
+ </tr>
2840
+ <tr>
2841
+ <td><p><a name="G-NORMALIZE-NFKD:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFKD</code></span></p></td>
2842
+ <td>another name for <a class="link" href="glib-Unicode-Manipulation.html#G-NORMALIZE-ALL:CAPS"><code class="literal">G_NORMALIZE_ALL</code></a>.
2843
+ </td>
2844
+ </tr>
2845
+ <tr>
2846
+ <td><p><a name="G-NORMALIZE-ALL-COMPOSE:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_ALL_COMPOSE</code></span></p></td>
2847
+ <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
2848
+ forms rather than a maximally decomposed form.
2849
+ </td>
2850
+ </tr>
2851
+ <tr>
2852
+ <td><p><a name="G-NORMALIZE-NFKC:CAPS"></a><span class="term"><code class="literal">G_NORMALIZE_NFKC</code></span></p></td>
2853
+ <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>.
2854
+ </td>
2855
+ </tr>
2856
+ </tbody>
2857
+ </table></div>
2858
+ </div>
2859
+ <hr>
2860
+ <div class="refsect2">
2861
+ <a name="g-utf8-collate"></a><h3>g_utf8_collate ()</h3>
2862
+ <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>,
2863
+ <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>
2864
+ <p>
2865
+ Compares two strings for ordering using the linguistically
2866
+ correct rules for the <a class="link" href="glib-running.html#setlocale" title="Locale">current locale</a>.
2867
+ When sorting a large number of strings, it will be significantly
2868
+ 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
2869
+ compare the keys with <code class="function">strcmp()</code> when sorting instead of sorting
2870
+ the original strings.
2871
+ </p>
2872
+ <div class="variablelist"><table border="0">
2873
+ <col align="left" valign="top">
2874
+ <tbody>
2875
+ <tr>
2876
+ <td><p><span class="term"><em class="parameter"><code>str1</code></em> :</span></p></td>
2877
+ <td>a UTF-8 encoded string
2878
+ </td>
2879
+ </tr>
2880
+ <tr>
2881
+ <td><p><span class="term"><em class="parameter"><code>str2</code></em> :</span></p></td>
2882
+ <td>a UTF-8 encoded string
2883
+ </td>
2884
+ </tr>
2885
+ <tr>
2886
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2887
+ <td> &lt; 0 if <em class="parameter"><code>str1</code></em> compares before <em class="parameter"><code>str2</code></em>,
2888
+ 0 if they compare equal, &gt; 0 if <em class="parameter"><code>str1</code></em> compares after <em class="parameter"><code>str2</code></em>.
2889
+ </td>
2890
+ </tr>
2891
+ </tbody>
2892
+ </table></div>
2893
+ </div>
2894
+ <hr>
2895
+ <div class="refsect2">
2896
+ <a name="g-utf8-collate-key"></a><h3>g_utf8_collate_key ()</h3>
2897
+ <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>,
2898
+ <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>
2899
+ <p>
2900
+ Converts a string into a collation key that can be compared
2901
+ with other collation keys produced by the same function using
2902
+ <code class="function">strcmp()</code>.
2903
+ </p>
2904
+ <p>
2905
+ The results of comparing the collation keys of two strings
2906
+ with <code class="function">strcmp()</code> will always be the same as comparing the two
2907
+ 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>.
2908
+ </p>
2909
+ <p>
2910
+ Note that this function depends on the
2911
+ <a class="link" href="glib-running.html#setlocale" title="Locale">current locale</a>.
2912
+ </p>
2913
+ <div class="variablelist"><table border="0">
2914
+ <col align="left" valign="top">
2915
+ <tbody>
2916
+ <tr>
2917
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2918
+ <td>a UTF-8 encoded string.
2919
+ </td>
2920
+ </tr>
2921
+ <tr>
2922
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2923
+ <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.
2924
+ </td>
2925
+ </tr>
2926
+ <tr>
2927
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2928
+ <td> a newly allocated string. This string should
2929
+ 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.
2930
+ </td>
2931
+ </tr>
2932
+ </tbody>
2933
+ </table></div>
2934
+ </div>
2935
+ <hr>
2936
+ <div class="refsect2">
2937
+ <a name="g-utf8-collate-key-for-filename"></a><h3>g_utf8_collate_key_for_filename ()</h3>
2938
+ <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>,
2939
+ <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>
2940
+ <p>
2941
+ Converts a string into a collation key that can be compared
2942
+ with other collation keys produced by the same function using <code class="function">strcmp()</code>.
2943
+ </p>
2944
+ <p>
2945
+ In order to sort filenames correctly, this function treats the dot '.'
2946
+ as a special case. Most dictionary orderings seem to consider it
2947
+ insignificant, thus producing the ordering "event.c" "eventgenerator.c"
2948
+ "event.h" instead of "event.c" "event.h" "eventgenerator.c". Also, we
2949
+ would like to treat numbers intelligently so that "file1" "file10" "file5"
2950
+ is sorted as "file1" "file5" "file10".
2951
+ </p>
2952
+ <p>
2953
+ Note that this function depends on the
2954
+ <a class="link" href="glib-running.html#setlocale" title="Locale">current locale</a>.
2955
+ </p>
2956
+ <div class="variablelist"><table border="0">
2957
+ <col align="left" valign="top">
2958
+ <tbody>
2959
+ <tr>
2960
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2961
+ <td>a UTF-8 encoded string.
2962
+ </td>
2963
+ </tr>
2964
+ <tr>
2965
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
2966
+ <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.
2967
+ </td>
2968
+ </tr>
2969
+ <tr>
2970
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2971
+ <td> a newly allocated string. This string should
2972
+ 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.
2973
+
2974
+ </td>
2975
+ </tr>
2976
+ </tbody>
2977
+ </table></div>
2978
+ <p class="since">Since 2.8</p>
2979
+ </div>
2980
+ <hr>
2981
+ <div class="refsect2">
2982
+ <a name="g-utf8-to-utf16"></a><h3>g_utf8_to_utf16 ()</h3>
2983
+ <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>,
2984
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
2985
+ <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>,
2986
+ <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>,
2987
+ <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>
2988
+ <p>
2989
+ Convert a string from UTF-8 to UTF-16. A 0 character will be
2990
+ added to the result after the converted text.
2991
+ </p>
2992
+ <div class="variablelist"><table border="0">
2993
+ <col align="left" valign="top">
2994
+ <tbody>
2995
+ <tr>
2996
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
2997
+ <td>a UTF-8 encoded string
2998
+ </td>
2999
+ </tr>
3000
+ <tr>
3001
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3002
+ <td>the maximum length (number of bytes) of <em class="parameter"><code>str</code></em> to use.
3003
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3004
+ </td>
3005
+ </tr>
3006
+ <tr>
3007
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3008
+ <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>.
3009
+ 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
3010
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
3011
+ character. If an error occurs then the index of the
3012
+ invalid input is stored here.
3013
+ </td>
3014
+ </tr>
3015
+ <tr>
3016
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3017
+ <td>location to store number of <span class="type">gunichar2</span> written,
3018
+ or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3019
+ The value stored here does not include the trailing 0.
3020
+ </td>
3021
+ </tr>
3022
+ <tr>
3023
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3024
+ <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
3025
+ 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
3026
+ <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.
3027
+ </td>
3028
+ </tr>
3029
+ <tr>
3030
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3031
+ <td> a pointer to a newly allocated UTF-16 string.
3032
+ 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
3033
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3034
+ <em class="parameter"><code>error</code></em> set.
3035
+ </td>
3036
+ </tr>
3037
+ </tbody>
3038
+ </table></div>
3039
+ </div>
3040
+ <hr>
3041
+ <div class="refsect2">
3042
+ <a name="g-utf8-to-ucs4"></a><h3>g_utf8_to_ucs4 ()</h3>
3043
+ <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>,
3044
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3045
+ <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>,
3046
+ <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>,
3047
+ <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>
3048
+ <p>
3049
+ Convert a string from UTF-8 to a 32-bit fixed width
3050
+ representation as UCS-4. A trailing 0 will be added to the
3051
+ string after the converted text.
3052
+ </p>
3053
+ <div class="variablelist"><table border="0">
3054
+ <col align="left" valign="top">
3055
+ <tbody>
3056
+ <tr>
3057
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3058
+ <td>a UTF-8 encoded string
3059
+ </td>
3060
+ </tr>
3061
+ <tr>
3062
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3063
+ <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,
3064
+ then the string is nul-terminated.
3065
+ </td>
3066
+ </tr>
3067
+ <tr>
3068
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3069
+ <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>.
3070
+ 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
3071
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
3072
+ character. If an error occurs then the index of the
3073
+ invalid input is stored here.
3074
+ </td>
3075
+ </tr>
3076
+ <tr>
3077
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3078
+ <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>.
3079
+ The value here stored does not include the trailing 0
3080
+ character.
3081
+ </td>
3082
+ </tr>
3083
+ <tr>
3084
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3085
+ <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
3086
+ 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
3087
+ <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.
3088
+ </td>
3089
+ </tr>
3090
+ <tr>
3091
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3092
+ <td> a pointer to a newly allocated UCS-4 string.
3093
+ 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
3094
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3095
+ <em class="parameter"><code>error</code></em> set.
3096
+ </td>
3097
+ </tr>
3098
+ </tbody>
3099
+ </table></div>
3100
+ </div>
3101
+ <hr>
3102
+ <div class="refsect2">
3103
+ <a name="g-utf8-to-ucs4-fast"></a><h3>g_utf8_to_ucs4_fast ()</h3>
3104
+ <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>,
3105
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3106
+ <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>
3107
+ <p>
3108
+ Convert a string from UTF-8 to a 32-bit fixed width
3109
+ representation as UCS-4, assuming valid UTF-8 input.
3110
+ 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>
3111
+ but does no error checking on the input.
3112
+ </p>
3113
+ <div class="variablelist"><table border="0">
3114
+ <col align="left" valign="top">
3115
+ <tbody>
3116
+ <tr>
3117
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3118
+ <td>a UTF-8 encoded string
3119
+ </td>
3120
+ </tr>
3121
+ <tr>
3122
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3123
+ <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,
3124
+ then the string is nul-terminated.
3125
+ </td>
3126
+ </tr>
3127
+ <tr>
3128
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3129
+ <td>location to store the number of characters in the
3130
+ result, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
3131
+ </td>
3132
+ </tr>
3133
+ <tr>
3134
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3135
+ <td> a pointer to a newly allocated UCS-4 string.
3136
+ 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>.
3137
+ </td>
3138
+ </tr>
3139
+ </tbody>
3140
+ </table></div>
3141
+ </div>
3142
+ <hr>
3143
+ <div class="refsect2">
3144
+ <a name="g-utf16-to-ucs4"></a><h3>g_utf16_to_ucs4 ()</h3>
3145
+ <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>,
3146
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3147
+ <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>,
3148
+ <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>,
3149
+ <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>
3150
+ <p>
3151
+ Convert a string from UTF-16 to UCS-4. The result will be
3152
+ nul-terminated.
3153
+ </p>
3154
+ <div class="variablelist"><table border="0">
3155
+ <col align="left" valign="top">
3156
+ <tbody>
3157
+ <tr>
3158
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3159
+ <td>a UTF-16 encoded string
3160
+ </td>
3161
+ </tr>
3162
+ <tr>
3163
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3164
+ <td>the maximum length (number of <span class="type">gunichar2</span>) of <em class="parameter"><code>str</code></em> to use.
3165
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3166
+ </td>
3167
+ </tr>
3168
+ <tr>
3169
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3170
+ <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>.
3171
+ 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
3172
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
3173
+ character. If an error occurs then the index of the
3174
+ invalid input is stored here.
3175
+ </td>
3176
+ </tr>
3177
+ <tr>
3178
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3179
+ <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>.
3180
+ The value stored here does not include the trailing
3181
+ 0 character.
3182
+ </td>
3183
+ </tr>
3184
+ <tr>
3185
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3186
+ <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
3187
+ 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
3188
+ <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.
3189
+ </td>
3190
+ </tr>
3191
+ <tr>
3192
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3193
+ <td> a pointer to a newly allocated UCS-4 string.
3194
+ 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
3195
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3196
+ <em class="parameter"><code>error</code></em> set.
3197
+ </td>
3198
+ </tr>
3199
+ </tbody>
3200
+ </table></div>
3201
+ </div>
3202
+ <hr>
3203
+ <div class="refsect2">
3204
+ <a name="g-utf16-to-utf8"></a><h3>g_utf16_to_utf8 ()</h3>
3205
+ <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>,
3206
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3207
+ <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>,
3208
+ <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>,
3209
+ <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>
3210
+ <p>
3211
+ Convert a string from UTF-16 to UTF-8. The result will be
3212
+ terminated with a 0 byte.
3213
+ </p>
3214
+ <p>
3215
+ Note that the input is expected to be already in native endianness,
3216
+ an initial byte-order-mark character is not handled specially.
3217
+ <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
3218
+ ambiguous endianess.
3219
+ </p>
3220
+ <p>
3221
+ Further note that this function does not validate the result
3222
+ string; it may e.g. include embedded NUL characters. The only
3223
+ validation done by this function is to ensure that the input can
3224
+ be correctly interpreted as UTF-16, i.e. it doesn't contain
3225
+ things unpaired surrogates.
3226
+ </p>
3227
+ <div class="variablelist"><table border="0">
3228
+ <col align="left" valign="top">
3229
+ <tbody>
3230
+ <tr>
3231
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3232
+ <td>a UTF-16 encoded string
3233
+ </td>
3234
+ </tr>
3235
+ <tr>
3236
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3237
+ <td>the maximum length (number of <span class="type">gunichar2</span>) of <em class="parameter"><code>str</code></em> to use.
3238
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3239
+ </td>
3240
+ </tr>
3241
+ <tr>
3242
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3243
+ <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>.
3244
+ 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
3245
+ returned in case <em class="parameter"><code>str</code></em> contains a trailing partial
3246
+ character. If an error occurs then the index of the
3247
+ invalid input is stored here.
3248
+ </td>
3249
+ </tr>
3250
+ <tr>
3251
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3252
+ <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>.
3253
+ The value stored here does not include the trailing
3254
+ 0 byte.
3255
+ </td>
3256
+ </tr>
3257
+ <tr>
3258
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3259
+ <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
3260
+ 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
3261
+ <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.
3262
+ </td>
3263
+ </tr>
3264
+ <tr>
3265
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3266
+ <td> a pointer to a newly allocated UTF-8 string.
3267
+ 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
3268
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3269
+ <em class="parameter"><code>error</code></em> set.
3270
+ </td>
3271
+ </tr>
3272
+ </tbody>
3273
+ </table></div>
3274
+ </div>
3275
+ <hr>
3276
+ <div class="refsect2">
3277
+ <a name="g-ucs4-to-utf16"></a><h3>g_ucs4_to_utf16 ()</h3>
3278
+ <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>,
3279
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3280
+ <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>,
3281
+ <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>,
3282
+ <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>
3283
+ <p>
3284
+ Convert a string from UCS-4 to UTF-16. A 0 character will be
3285
+ added to the result after the converted text.
3286
+ </p>
3287
+ <div class="variablelist"><table border="0">
3288
+ <col align="left" valign="top">
3289
+ <tbody>
3290
+ <tr>
3291
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3292
+ <td>a UCS-4 encoded string
3293
+ </td>
3294
+ </tr>
3295
+ <tr>
3296
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3297
+ <td>the maximum length (number of characters) of <em class="parameter"><code>str</code></em> to use.
3298
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3299
+ </td>
3300
+ </tr>
3301
+ <tr>
3302
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3303
+ <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>.
3304
+ If an error occurs then the index of the invalid input
3305
+ is stored here.
3306
+ </td>
3307
+ </tr>
3308
+ <tr>
3309
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3310
+ <td>location to store number of <span class="type">gunichar2</span>
3311
+ 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
3312
+ include the trailing 0.
3313
+ </td>
3314
+ </tr>
3315
+ <tr>
3316
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3317
+ <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
3318
+ 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
3319
+ <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.
3320
+ </td>
3321
+ </tr>
3322
+ <tr>
3323
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3324
+ <td> a pointer to a newly allocated UTF-16 string.
3325
+ 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
3326
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3327
+ <em class="parameter"><code>error</code></em> set.
3328
+ </td>
3329
+ </tr>
3330
+ </tbody>
3331
+ </table></div>
3332
+ </div>
3333
+ <hr>
3334
+ <div class="refsect2">
3335
+ <a name="g-ucs4-to-utf8"></a><h3>g_ucs4_to_utf8 ()</h3>
3336
+ <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>,
3337
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#glong" title="glong"><span class="type">glong</span></a> len</code></em>,
3338
+ <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>,
3339
+ <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>,
3340
+ <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>
3341
+ <p>
3342
+ Convert a string from a 32-bit fixed width representation as UCS-4.
3343
+ to UTF-8. The result will be terminated with a 0 byte.
3344
+ </p>
3345
+ <div class="variablelist"><table border="0">
3346
+ <col align="left" valign="top">
3347
+ <tbody>
3348
+ <tr>
3349
+ <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
3350
+ <td>a UCS-4 encoded string
3351
+ </td>
3352
+ </tr>
3353
+ <tr>
3354
+ <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
3355
+ <td>the maximum length (number of characters) of <em class="parameter"><code>str</code></em> to use.
3356
+ If <em class="parameter"><code>len</code></em> &lt; 0, then the string is nul-terminated.
3357
+ </td>
3358
+ </tr>
3359
+ <tr>
3360
+ <td><p><span class="term"><em class="parameter"><code>items_read</code></em> :</span></p></td>
3361
+ <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>.
3362
+ </td>
3363
+ </tr>
3364
+ <tr>
3365
+ <td><p><span class="term"><em class="parameter"><code>items_written</code></em> :</span></p></td>
3366
+ <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>.
3367
+ The value here stored does not include the trailing 0
3368
+ byte.
3369
+ </td>
3370
+ </tr>
3371
+ <tr>
3372
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
3373
+ <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
3374
+ 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
3375
+ <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.
3376
+ </td>
3377
+ </tr>
3378
+ <tr>
3379
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3380
+ <td> a pointer to a newly allocated UTF-8 string.
3381
+ 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
3382
+ error occurs, <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> will be returned and
3383
+ <em class="parameter"><code>error</code></em> set. In that case, <em class="parameter"><code>items_read</code></em> will be
3384
+ set to the position of the first invalid input
3385
+ character.
3386
+ </td>
3387
+ </tr>
3388
+ </tbody>
3389
+ </table></div>
3390
+ </div>
3391
+ <hr>
3392
+ <div class="refsect2">
3393
+ <a name="g-unichar-to-utf8"></a><h3>g_unichar_to_utf8 ()</h3>
3394
+ <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>,
3395
+ <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>
3396
+ <p>
3397
+ Converts a single character to UTF-8.
3398
+ </p>
3399
+ <div class="variablelist"><table border="0">
3400
+ <col align="left" valign="top">
3401
+ <tbody>
3402
+ <tr>
3403
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
3404
+ <td>a Unicode character code
3405
+ </td>
3406
+ </tr>
3407
+ <tr>
3408
+ <td><p><span class="term"><em class="parameter"><code>outbuf</code></em> :</span></p></td>
3409
+ <td>output buffer, must have at least 6 bytes of space.
3410
+ 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
3411
+ and nothing will be written to <em class="parameter"><code>outbuf</code></em>.
3412
+ </td>
3413
+ </tr>
3414
+ <tr>
3415
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
3416
+ <td> number of bytes written
3417
+ </td>
3418
+ </tr>
3419
+ </tbody>
3420
+ </table></div>
3421
+ </div>
3422
+ </div>
3423
+ <div class="refsect1">
3424
+ <a name="glib-Unicode-Manipulation.see-also"></a><h2>See Also</h2>
3425
+ <p>
3426
+ </p>
3427
+ <div class="variablelist"><table border="0">
3428
+ <col align="left" valign="top">
3429
+ <tbody><tr>
3430
+ <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>
3431
+ <td><p>
3432
+ Convenience functions for converting between UTF-8 and the locale encoding.
3433
+ </p></td>
3434
+ </tr></tbody>
3435
+ </table></div>
3436
+ <p>
3437
+ </p>
3438
+ </div>
3439
+ <div class="footnotes">
3440
+ <br><hr width="100" align="left">
3441
+ <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>
3442
+ </div>
3443
+ </div>
3444
+ <div class="footer">
3445
+ <hr>
3446
+ Generated by GTK-Doc V1.15.1</div>
3447
+ </body>
3448
+ </html>