pango 3.2.5-x64-mingw32 → 3.2.6-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (368) hide show
  1. checksums.yaml +4 -4
  2. data/COPYING.LIB +502 -0
  3. data/README.md +25 -0
  4. data/Rakefile +8 -8
  5. data/ext/pango/extconf.rb +4 -1
  6. data/ext/pango/pango.def +1 -0
  7. data/ext/pango/rb-pango-attr-list.c +3 -3
  8. data/ext/pango/rb-pango-attribute.c +67 -57
  9. data/ext/pango/rb-pango-conversions.h +3 -3
  10. data/ext/pango/rb-pango-private.h +0 -1
  11. data/ext/pango/rb-pango.c +0 -1
  12. data/ext/pango/rb-pango.h +2 -1
  13. data/lib/2.2/pango.so +0 -0
  14. data/lib/2.3/pango.so +0 -0
  15. data/lib/2.4/pango.so +0 -0
  16. data/lib/2.5/pango.so +0 -0
  17. data/lib/pango/loader.rb +13 -1
  18. data/lib/pango/rectangle.rb +7 -1
  19. data/pango.gemspec +43 -0
  20. data/vendor/local/bin/derb.exe +0 -0
  21. data/vendor/local/bin/escapesrc.exe +0 -0
  22. data/vendor/local/bin/fribidi.exe +0 -0
  23. data/vendor/local/bin/genbrk.exe +0 -0
  24. data/vendor/local/bin/genccode.exe +0 -0
  25. data/vendor/local/bin/gencfu.exe +0 -0
  26. data/vendor/local/bin/gencmn.exe +0 -0
  27. data/vendor/local/bin/gencnval.exe +0 -0
  28. data/vendor/local/bin/gendict.exe +0 -0
  29. data/vendor/local/bin/gennorm2.exe +0 -0
  30. data/vendor/local/bin/genrb.exe +0 -0
  31. data/vendor/local/bin/gensprep.exe +0 -0
  32. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  33. data/vendor/local/bin/hb-shape.exe +0 -0
  34. data/vendor/local/bin/hb-subset.exe +0 -0
  35. data/vendor/local/bin/hb-view.exe +0 -0
  36. data/vendor/local/bin/icu-config +13 -8
  37. data/vendor/local/bin/icuinfo.exe +0 -0
  38. data/vendor/local/bin/icupkg.exe +0 -0
  39. data/vendor/local/bin/libfribidi-0.dll +0 -0
  40. data/vendor/local/bin/libgraphene-1.0-0.dll +0 -0
  41. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  42. data/vendor/local/bin/libharfbuzz-subset-0.dll +0 -0
  43. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  44. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  45. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  46. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  47. data/vendor/local/bin/makeconv.exe +0 -0
  48. data/vendor/local/bin/pango-view.exe +0 -0
  49. data/vendor/local/bin/pkgdata.exe +0 -0
  50. data/vendor/local/bin/uconv.exe +0 -0
  51. data/vendor/local/include/fribidi/fribidi-config.h +2 -2
  52. data/vendor/local/include/harfbuzz/hb-blob.h +2 -0
  53. data/vendor/local/include/harfbuzz/hb-common.h +24 -3
  54. data/vendor/local/include/harfbuzz/hb-face.h +4 -0
  55. data/vendor/local/include/harfbuzz/hb-map.h +104 -0
  56. data/vendor/local/include/harfbuzz/hb-ot-layout.h +1 -1
  57. data/vendor/local/include/harfbuzz/hb-set.h +0 -2
  58. data/vendor/local/include/harfbuzz/hb-subset-plan.hh +46 -25
  59. data/vendor/local/include/harfbuzz/hb-subset.h +4 -1
  60. data/vendor/local/include/harfbuzz/hb-version.h +3 -3
  61. data/vendor/local/include/harfbuzz/hb.h +1 -0
  62. data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
  63. data/vendor/local/include/unicode/alphaindex.h +2 -1
  64. data/vendor/local/include/unicode/appendable.h +25 -25
  65. data/vendor/local/include/unicode/basictz.h +1 -1
  66. data/vendor/local/include/unicode/brkiter.h +19 -24
  67. data/vendor/local/include/unicode/bytestream.h +26 -13
  68. data/vendor/local/include/unicode/bytestrie.h +2 -2
  69. data/vendor/local/include/unicode/bytestriebuilder.h +4 -5
  70. data/vendor/local/include/unicode/calendar.h +11 -11
  71. data/vendor/local/include/unicode/caniter.h +3 -3
  72. data/vendor/local/include/unicode/casemap.h +494 -0
  73. data/vendor/local/include/unicode/char16ptr.h +302 -0
  74. data/vendor/local/include/unicode/chariter.h +22 -18
  75. data/vendor/local/include/unicode/choicfmt.h +1 -1
  76. data/vendor/local/include/unicode/coleitr.h +2 -1
  77. data/vendor/local/include/unicode/coll.h +17 -17
  78. data/vendor/local/include/unicode/compactdecimalformat.h +10 -2
  79. data/vendor/local/include/unicode/curramt.h +5 -5
  80. data/vendor/local/include/unicode/currpinf.h +1 -1
  81. data/vendor/local/include/unicode/currunit.h +24 -6
  82. data/vendor/local/include/unicode/datefmt.h +3 -2
  83. data/vendor/local/include/unicode/dbbi.h +1 -1
  84. data/vendor/local/include/unicode/dcfmtsym.h +89 -13
  85. data/vendor/local/include/unicode/decimfmt.h +38 -39
  86. data/vendor/local/include/unicode/docmain.h +7 -2
  87. data/vendor/local/include/unicode/dtfmtsym.h +7 -6
  88. data/vendor/local/include/unicode/dtintrv.h +2 -2
  89. data/vendor/local/include/unicode/dtitvfmt.h +2 -2
  90. data/vendor/local/include/unicode/dtitvinf.h +1 -3
  91. data/vendor/local/include/unicode/dtptngen.h +48 -24
  92. data/vendor/local/include/unicode/dtrule.h +1 -1
  93. data/vendor/local/include/unicode/edits.h +424 -0
  94. data/vendor/local/include/unicode/enumset.h +1 -1
  95. data/vendor/local/include/unicode/errorcode.h +2 -2
  96. data/vendor/local/include/unicode/fieldpos.h +1 -1
  97. data/vendor/local/include/unicode/filteredbrk.h +35 -5
  98. data/vendor/local/include/unicode/fmtable.h +1 -1
  99. data/vendor/local/include/unicode/format.h +1 -1
  100. data/vendor/local/include/unicode/fpositer.h +11 -3
  101. data/vendor/local/include/unicode/gender.h +1 -1
  102. data/vendor/local/include/unicode/gregocal.h +1 -1
  103. data/vendor/local/include/unicode/icudataver.h +1 -1
  104. data/vendor/local/include/unicode/icuplug.h +1 -1
  105. data/vendor/local/include/unicode/idna.h +2 -2
  106. data/vendor/local/include/unicode/listformatter.h +4 -2
  107. data/vendor/local/include/unicode/localpointer.h +6 -43
  108. data/vendor/local/include/unicode/locdspnm.h +2 -1
  109. data/vendor/local/include/unicode/locid.h +7 -6
  110. data/vendor/local/include/unicode/measfmt.h +18 -7
  111. data/vendor/local/include/unicode/measunit.h +31 -60
  112. data/vendor/local/include/unicode/measure.h +1 -1
  113. data/vendor/local/include/unicode/messagepattern.h +2 -2
  114. data/vendor/local/include/unicode/msgfmt.h +2 -2
  115. data/vendor/local/include/unicode/normalizer2.h +130 -16
  116. data/vendor/local/include/unicode/normlzr.h +5 -5
  117. data/vendor/local/include/unicode/nounit.h +111 -0
  118. data/vendor/local/include/unicode/numberformatter.h +2194 -0
  119. data/vendor/local/include/unicode/numfmt.h +81 -7
  120. data/vendor/local/include/unicode/numsys.h +2 -2
  121. data/vendor/local/include/unicode/parseerr.h +3 -3
  122. data/vendor/local/include/unicode/parsepos.h +1 -1
  123. data/vendor/local/include/unicode/platform.h +66 -63
  124. data/vendor/local/include/unicode/plurfmt.h +1 -1
  125. data/vendor/local/include/unicode/plurrule.h +23 -4
  126. data/vendor/local/include/unicode/ptypes.h +1 -1
  127. data/vendor/local/include/unicode/putil.h +4 -4
  128. data/vendor/local/include/unicode/rbbi.h +105 -134
  129. data/vendor/local/include/unicode/rbnf.h +65 -3
  130. data/vendor/local/include/unicode/rbtz.h +1 -1
  131. data/vendor/local/include/unicode/regex.h +17 -17
  132. data/vendor/local/include/unicode/region.h +1 -1
  133. data/vendor/local/include/unicode/reldatefmt.h +4 -5
  134. data/vendor/local/include/unicode/rep.h +4 -4
  135. data/vendor/local/include/unicode/resbund.h +3 -3
  136. data/vendor/local/include/unicode/schriter.h +3 -3
  137. data/vendor/local/include/unicode/scientificnumberformatter.h +1 -1
  138. data/vendor/local/include/unicode/search.h +1 -1
  139. data/vendor/local/include/unicode/selfmt.h +1 -1
  140. data/vendor/local/include/unicode/simpleformatter.h +31 -25
  141. data/vendor/local/include/unicode/simpletz.h +5 -3
  142. data/vendor/local/include/unicode/smpdtfmt.h +17 -7
  143. data/vendor/local/include/unicode/sortkey.h +1 -1
  144. data/vendor/local/include/unicode/std_string.h +6 -8
  145. data/vendor/local/include/unicode/strenum.h +5 -5
  146. data/vendor/local/include/unicode/stringoptions.h +198 -0
  147. data/vendor/local/include/unicode/stringpiece.h +1 -3
  148. data/vendor/local/include/unicode/stringtriebuilder.h +19 -19
  149. data/vendor/local/include/unicode/stsearch.h +1 -1
  150. data/vendor/local/include/unicode/symtable.h +1 -1
  151. data/vendor/local/include/unicode/tblcoll.h +13 -13
  152. data/vendor/local/include/unicode/timezone.h +5 -5
  153. data/vendor/local/include/unicode/tmunit.h +1 -1
  154. data/vendor/local/include/unicode/tmutamt.h +1 -1
  155. data/vendor/local/include/unicode/tmutfmt.h +1 -1
  156. data/vendor/local/include/unicode/translit.h +2 -2
  157. data/vendor/local/include/unicode/tzfmt.h +4 -4
  158. data/vendor/local/include/unicode/tznames.h +3 -5
  159. data/vendor/local/include/unicode/tzrule.h +1 -1
  160. data/vendor/local/include/unicode/tztrans.h +1 -1
  161. data/vendor/local/include/unicode/ubidi.h +11 -8
  162. data/vendor/local/include/unicode/ubiditransform.h +16 -19
  163. data/vendor/local/include/unicode/ubrk.h +61 -4
  164. data/vendor/local/include/unicode/ucal.h +3 -3
  165. data/vendor/local/include/unicode/ucasemap.h +7 -47
  166. data/vendor/local/include/unicode/ucat.h +1 -1
  167. data/vendor/local/include/unicode/uchar.h +62 -37
  168. data/vendor/local/include/unicode/ucharstrie.h +48 -48
  169. data/vendor/local/include/unicode/ucharstriebuilder.h +12 -12
  170. data/vendor/local/include/unicode/uchriter.h +33 -29
  171. data/vendor/local/include/unicode/uclean.h +15 -13
  172. data/vendor/local/include/unicode/ucnv.h +11 -11
  173. data/vendor/local/include/unicode/ucnv_cb.h +1 -1
  174. data/vendor/local/include/unicode/ucnv_err.h +7 -7
  175. data/vendor/local/include/unicode/ucnvsel.h +1 -1
  176. data/vendor/local/include/unicode/ucol.h +6 -6
  177. data/vendor/local/include/unicode/ucoleitr.h +3 -3
  178. data/vendor/local/include/unicode/uconfig.h +8 -5
  179. data/vendor/local/include/unicode/ucsdet.h +7 -3
  180. data/vendor/local/include/unicode/ucurr.h +14 -1
  181. data/vendor/local/include/unicode/udat.h +39 -41
  182. data/vendor/local/include/unicode/udata.h +2 -2
  183. data/vendor/local/include/unicode/udateintervalformat.h +1 -1
  184. data/vendor/local/include/unicode/udatpg.h +56 -5
  185. data/vendor/local/include/unicode/udisplaycontext.h +4 -8
  186. data/vendor/local/include/unicode/uenum.h +5 -3
  187. data/vendor/local/include/unicode/ufieldpositer.h +1 -1
  188. data/vendor/local/include/unicode/uformattable.h +2 -2
  189. data/vendor/local/include/unicode/ugender.h +1 -1
  190. data/vendor/local/include/unicode/uidna.h +2 -2
  191. data/vendor/local/include/unicode/uiter.h +2 -2
  192. data/vendor/local/include/unicode/uldnames.h +1 -1
  193. data/vendor/local/include/unicode/ulistformatter.h +4 -4
  194. data/vendor/local/include/unicode/uloc.h +29 -16
  195. data/vendor/local/include/unicode/ulocdata.h +5 -5
  196. data/vendor/local/include/unicode/umachine.h +81 -38
  197. data/vendor/local/include/unicode/umisc.h +2 -2
  198. data/vendor/local/include/unicode/umsg.h +2 -2
  199. data/vendor/local/include/unicode/unifilt.h +2 -2
  200. data/vendor/local/include/unicode/unifunct.h +1 -1
  201. data/vendor/local/include/unicode/unimatch.h +1 -1
  202. data/vendor/local/include/unicode/unirepl.h +1 -1
  203. data/vendor/local/include/unicode/uniset.h +5 -4
  204. data/vendor/local/include/unicode/unistr.h +322 -208
  205. data/vendor/local/include/unicode/unorm.h +9 -9
  206. data/vendor/local/include/unicode/unorm2.h +3 -26
  207. data/vendor/local/include/unicode/unum.h +71 -11
  208. data/vendor/local/include/unicode/unumsys.h +1 -1
  209. data/vendor/local/include/unicode/uobject.h +2 -2
  210. data/vendor/local/include/unicode/upluralrules.h +51 -6
  211. data/vendor/local/include/unicode/uregex.h +2 -2
  212. data/vendor/local/include/unicode/uregion.h +2 -2
  213. data/vendor/local/include/unicode/ureldatefmt.h +33 -39
  214. data/vendor/local/include/unicode/urename.h +18 -17
  215. data/vendor/local/include/unicode/urep.h +1 -1
  216. data/vendor/local/include/unicode/ures.h +9 -9
  217. data/vendor/local/include/unicode/uscript.h +10 -3
  218. data/vendor/local/include/unicode/usearch.h +3 -3
  219. data/vendor/local/include/unicode/uset.h +2 -2
  220. data/vendor/local/include/unicode/usetiter.h +1 -1
  221. data/vendor/local/include/unicode/ushape.h +3 -3
  222. data/vendor/local/include/unicode/uspoof.h +24 -29
  223. data/vendor/local/include/unicode/usprep.h +7 -7
  224. data/vendor/local/include/unicode/ustdio.h +1 -1
  225. data/vendor/local/include/unicode/ustream.h +2 -9
  226. data/vendor/local/include/unicode/ustring.h +3 -13
  227. data/vendor/local/include/unicode/ustringtrie.h +2 -2
  228. data/vendor/local/include/unicode/utext.h +16 -16
  229. data/vendor/local/include/unicode/utf.h +19 -19
  230. data/vendor/local/include/unicode/utf16.h +128 -8
  231. data/vendor/local/include/unicode/utf32.h +2 -2
  232. data/vendor/local/include/unicode/utf8.h +177 -121
  233. data/vendor/local/include/unicode/utf_old.h +40 -7
  234. data/vendor/local/include/unicode/utmscale.h +8 -1
  235. data/vendor/local/include/unicode/utrace.h +4 -4
  236. data/vendor/local/include/unicode/utrans.h +3 -3
  237. data/vendor/local/include/unicode/utypes.h +13 -10
  238. data/vendor/local/include/unicode/uvernum.h +18 -11
  239. data/vendor/local/include/unicode/uversion.h +10 -4
  240. data/vendor/local/include/unicode/vtzone.h +1 -1
  241. data/vendor/local/lib/cmake/harfbuzz/harfbuzz-config.cmake +1 -1
  242. data/vendor/local/lib/icu/{58.2 → 61.1}/Makefile.inc +7 -7
  243. data/vendor/local/lib/icu/{58.2 → 61.1}/pkgdata.inc +2 -2
  244. data/vendor/local/lib/icu/Makefile.inc +7 -7
  245. data/vendor/local/lib/icu/pkgdata.inc +2 -2
  246. data/vendor/local/lib/icudt.dll +0 -0
  247. data/vendor/local/lib/{icudt58.dll → icudt61.dll} +0 -0
  248. data/vendor/local/lib/icuin.dll +0 -0
  249. data/vendor/local/lib/icuin61.dll +0 -0
  250. data/vendor/local/lib/icuio.dll +0 -0
  251. data/vendor/local/lib/{icuio58.dll → icuio61.dll} +0 -0
  252. data/vendor/local/lib/icutest.dll +0 -0
  253. data/vendor/local/lib/{icutest58.dll → icutest61.dll} +0 -0
  254. data/vendor/local/lib/icutu.dll +0 -0
  255. data/vendor/local/lib/icutu61.dll +0 -0
  256. data/vendor/local/lib/icuuc.dll +0 -0
  257. data/vendor/local/lib/icuuc61.dll +0 -0
  258. data/vendor/local/lib/libfribidi.dll.a +0 -0
  259. data/vendor/local/lib/libgraphene-1.0.dll.a +0 -0
  260. data/vendor/local/lib/libharfbuzz-icu.a +0 -0
  261. data/vendor/local/lib/libharfbuzz-icu.la +3 -3
  262. data/vendor/local/lib/libharfbuzz-subset.dll.a +0 -0
  263. data/vendor/local/lib/libharfbuzz-subset.la +3 -3
  264. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  265. data/vendor/local/lib/libharfbuzz.la +3 -3
  266. data/vendor/local/lib/libicudt.dll.a +0 -0
  267. data/vendor/local/lib/libicuin.dll.a +0 -0
  268. data/vendor/local/lib/libicuio.dll.a +0 -0
  269. data/vendor/local/lib/libicutest.dll.a +0 -0
  270. data/vendor/local/lib/libicutu.dll.a +0 -0
  271. data/vendor/local/lib/libicuuc.dll.a +0 -0
  272. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  273. data/vendor/local/lib/libpango-1.0.la +2 -2
  274. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  275. data/vendor/local/lib/libpangocairo-1.0.la +2 -2
  276. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  277. data/vendor/local/lib/libpangoft2-1.0.la +2 -2
  278. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  279. data/vendor/local/lib/libpangowin32-1.0.la +2 -2
  280. data/vendor/local/lib/pkgconfig/fribidi.pc +1 -1
  281. data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +1 -1
  282. data/vendor/local/lib/pkgconfig/harfbuzz-subset.pc +1 -1
  283. data/vendor/local/lib/pkgconfig/harfbuzz.pc +1 -1
  284. data/vendor/local/lib/pkgconfig/icu-i18n.pc +7 -7
  285. data/vendor/local/lib/pkgconfig/icu-io.pc +7 -7
  286. data/vendor/local/lib/pkgconfig/icu-uc.pc +7 -7
  287. data/vendor/local/lib/pkgconfig/pango.pc +2 -2
  288. data/vendor/local/lib/pkgconfig/pangocairo.pc +2 -2
  289. data/vendor/local/lib/pkgconfig/pangoft2.pc +2 -2
  290. data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
  291. data/vendor/local/libexec/installed-tests/graphene-1.0/box.exe +0 -0
  292. data/vendor/local/libexec/installed-tests/graphene-1.0/euler.exe +0 -0
  293. data/vendor/local/libexec/installed-tests/graphene-1.0/frustum.exe +0 -0
  294. data/vendor/local/libexec/installed-tests/graphene-1.0/matrix.exe +0 -0
  295. data/vendor/local/libexec/installed-tests/graphene-1.0/plane.exe +0 -0
  296. data/vendor/local/libexec/installed-tests/graphene-1.0/point.exe +0 -0
  297. data/vendor/local/libexec/installed-tests/graphene-1.0/point3d.exe +0 -0
  298. data/vendor/local/libexec/installed-tests/graphene-1.0/quad.exe +0 -0
  299. data/vendor/local/libexec/installed-tests/graphene-1.0/quaternion.exe +0 -0
  300. data/vendor/local/libexec/installed-tests/graphene-1.0/ray.exe +0 -0
  301. data/vendor/local/libexec/installed-tests/graphene-1.0/rect.exe +0 -0
  302. data/vendor/local/libexec/installed-tests/graphene-1.0/simd.exe +0 -0
  303. data/vendor/local/libexec/installed-tests/graphene-1.0/size.exe +0 -0
  304. data/vendor/local/libexec/installed-tests/graphene-1.0/sphere.exe +0 -0
  305. data/vendor/local/libexec/installed-tests/graphene-1.0/triangle.exe +0 -0
  306. data/vendor/local/libexec/installed-tests/graphene-1.0/vec2.exe +0 -0
  307. data/vendor/local/libexec/installed-tests/graphene-1.0/vec3.exe +0 -0
  308. data/vendor/local/libexec/installed-tests/graphene-1.0/vec4.exe +0 -0
  309. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-Buffers.html +5 -3
  310. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +5 -0
  311. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +1 -0
  312. data/vendor/local/share/gtk-doc/html/harfbuzz/pt02.html +1 -1
  313. data/vendor/local/share/gtk-doc/html/pango/index.html +1 -1
  314. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +2 -2
  315. data/vendor/local/share/icu/{58.2 → 61.1}/LICENSE +32 -3
  316. data/vendor/local/share/icu/{58.2 → 61.1}/config/mh-mingw64 +4 -0
  317. data/vendor/local/share/icu/{58.2 → 61.1}/install-sh +0 -0
  318. data/vendor/local/share/icu/{58.2 → 61.1}/mkinstalldirs +0 -0
  319. data/vendor/local/share/man/man1/derb.1 +2 -2
  320. data/vendor/local/share/man/man1/genbrk.1 +2 -2
  321. data/vendor/local/share/man/man1/gencfu.1 +1 -1
  322. data/vendor/local/share/man/man1/gencnval.1 +3 -3
  323. data/vendor/local/share/man/man1/gendict.1 +2 -2
  324. data/vendor/local/share/man/man1/genrb.1 +3 -3
  325. data/vendor/local/share/man/man1/icu-config.1 +2 -2
  326. data/vendor/local/share/man/man1/makeconv.1 +5 -5
  327. data/vendor/local/share/man/man1/pkgdata.1 +2 -2
  328. data/vendor/local/share/man/man1/uconv.1 +9 -9
  329. data/vendor/local/share/man/man3/fribidi_charset_to_unicode.3 +98 -0
  330. data/vendor/local/share/man/man3/fribidi_debug_status.3 +44 -0
  331. data/vendor/local/share/man/man3/fribidi_get_bidi_type.3 +58 -0
  332. data/vendor/local/share/man/man3/fribidi_get_bidi_type_name.3 +56 -0
  333. data/vendor/local/share/man/man3/fribidi_get_bidi_types.3 +68 -0
  334. data/vendor/local/share/man/man3/fribidi_get_bracket.3 +59 -0
  335. data/vendor/local/share/man/man3/fribidi_get_bracket_types.3 +73 -0
  336. data/vendor/local/share/man/man3/fribidi_get_joining_type.3 +87 -0
  337. data/vendor/local/share/man/man3/fribidi_get_joining_type_name.3 +83 -0
  338. data/vendor/local/share/man/man3/fribidi_get_joining_types.3 +96 -0
  339. data/vendor/local/share/man/man3/fribidi_get_mirror_char.3 +68 -0
  340. data/vendor/local/share/man/man3/fribidi_get_par_direction.3 +100 -0
  341. data/vendor/local/share/man/man3/fribidi_get_par_embedding_levels.3 +98 -0
  342. data/vendor/local/share/man/man3/fribidi_get_par_embedding_levels_ex.3 +114 -0
  343. data/vendor/local/share/man/man3/fribidi_get_type.3 +50 -0
  344. data/vendor/local/share/man/man3/fribidi_get_type_internal.3 +50 -0
  345. data/vendor/local/share/man/man3/fribidi_join_arabic.3 +92 -0
  346. data/vendor/local/share/man/man3/fribidi_log2vis.3 +124 -0
  347. data/vendor/local/share/man/man3/fribidi_log2vis_get_embedding_levels.3 +97 -0
  348. data/vendor/local/share/man/man3/fribidi_mirroring_status.3 +44 -0
  349. data/vendor/local/share/man/man3/fribidi_parse_charset.3 +78 -0
  350. data/vendor/local/share/man/man3/fribidi_remove_bidi_marks.3 +96 -0
  351. data/vendor/local/share/man/man3/fribidi_reorder_line.3 +146 -0
  352. data/vendor/local/share/man/man3/fribidi_reorder_nsm_status.3 +44 -0
  353. data/vendor/local/share/man/man3/fribidi_set_debug.3 +48 -0
  354. data/vendor/local/share/man/man3/fribidi_set_mirroring.3 +58 -0
  355. data/vendor/local/share/man/man3/fribidi_set_reorder_nsm.3 +60 -0
  356. data/vendor/local/share/man/man3/fribidi_shape.3 +89 -0
  357. data/vendor/local/share/man/man3/fribidi_shape_arabic.3 +95 -0
  358. data/vendor/local/share/man/man3/fribidi_shape_mirroring.3 +71 -0
  359. data/vendor/local/share/man/man3/fribidi_unicode_to_charset.3 +99 -0
  360. data/vendor/local/share/man/man8/genccode.8 +2 -2
  361. data/vendor/local/share/man/man8/gencmn.8 +3 -3
  362. data/vendor/local/share/man/man8/gensprep.8 +3 -3
  363. data/vendor/local/share/man/man8/icupkg.8 +1 -1
  364. metadata +58 -59
  365. data/ext/pango/rb-pango-context.c +0 -79
  366. data/vendor/local/lib/icuin58.dll +0 -0
  367. data/vendor/local/lib/icutu58.dll +0 -0
  368. data/vendor/local/lib/icuuc58.dll +0 -0
@@ -1,4 +1,4 @@
1
- // Copyright (C) 2016 and later: Unicode, Inc. and others.
1
+ // © 2016 and later: Unicode, Inc. and others.
2
2
  // License & terms of use: http://www.unicode.org/copyright.html
3
3
  // Copyright (C) 2009-2012, International Business Machines
4
4
  // Corporation and others. All Rights Reserved.
@@ -126,8 +126,8 @@ public:
126
126
  virtual void Flush();
127
127
 
128
128
  private:
129
- ByteSink(const ByteSink &); // copy constructor not implemented
130
- ByteSink &operator=(const ByteSink &); // assignment operator not implemented
129
+ ByteSink(const ByteSink &) = delete;
130
+ ByteSink &operator=(const ByteSink &) = delete;
131
131
  };
132
132
 
133
133
  // -------------------------------------------------------------
@@ -217,12 +217,11 @@ private:
217
217
  int32_t size_;
218
218
  int32_t appended_;
219
219
  UBool overflowed_;
220
- CheckedArrayByteSink(); ///< default constructor not implemented
221
- CheckedArrayByteSink(const CheckedArrayByteSink &); ///< copy constructor not implemented
222
- CheckedArrayByteSink &operator=(const CheckedArrayByteSink &); ///< assignment operator not implemented
223
- };
224
220
 
225
- #if U_HAVE_STD_STRING
221
+ CheckedArrayByteSink() = delete;
222
+ CheckedArrayByteSink(const CheckedArrayByteSink &) = delete;
223
+ CheckedArrayByteSink &operator=(const CheckedArrayByteSink &) = delete;
224
+ };
226
225
 
227
226
  /**
228
227
  * Implementation of ByteSink that writes to a "string".
@@ -238,6 +237,21 @@ class StringByteSink : public ByteSink {
238
237
  * @stable ICU 4.2
239
238
  */
240
239
  StringByteSink(StringClass* dest) : dest_(dest) { }
240
+ #ifndef U_HIDE_DRAFT_API
241
+ /**
242
+ * Constructs a ByteSink that reserves append capacity and will append bytes to the dest string.
243
+ *
244
+ * @param dest pointer to string object to append to
245
+ * @param initialAppendCapacity capacity beyond dest->length() to be reserve()d
246
+ * @draft ICU 60
247
+ */
248
+ StringByteSink(StringClass* dest, int32_t initialAppendCapacity) : dest_(dest) {
249
+ if (initialAppendCapacity > 0 &&
250
+ (uint32_t)initialAppendCapacity > (dest->capacity() - dest->length())) {
251
+ dest->reserve(dest->length() + initialAppendCapacity);
252
+ }
253
+ }
254
+ #endif // U_HIDE_DRAFT_API
241
255
  /**
242
256
  * Append "bytes[0,n-1]" to this.
243
257
  * @param data the pointer to the bytes
@@ -247,12 +261,11 @@ class StringByteSink : public ByteSink {
247
261
  virtual void Append(const char* data, int32_t n) { dest_->append(data, n); }
248
262
  private:
249
263
  StringClass* dest_;
250
- StringByteSink(); ///< default constructor not implemented
251
- StringByteSink(const StringByteSink &); ///< copy constructor not implemented
252
- StringByteSink &operator=(const StringByteSink &); ///< assignment operator not implemented
253
- };
254
264
 
255
- #endif
265
+ StringByteSink() = delete;
266
+ StringByteSink(const StringByteSink &) = delete;
267
+ StringByteSink &operator=(const StringByteSink &) = delete;
268
+ };
256
269
 
257
270
  U_NAMESPACE_END
258
271
 
@@ -1,4 +1,4 @@
1
- // Copyright (C) 2016 and later: Unicode, Inc. and others.
1
+ // © 2016 and later: Unicode, Inc. and others.
2
2
  // License & terms of use: http://www.unicode.org/copyright.html
3
3
  /*
4
4
  *******************************************************************************
@@ -6,7 +6,7 @@
6
6
  * Corporation and others. All Rights Reserved.
7
7
  *******************************************************************************
8
8
  * file name: bytestrie.h
9
- * encoding: US-ASCII
9
+ * encoding: UTF-8
10
10
  * tab size: 8 (not used)
11
11
  * indentation:4
12
12
  *
@@ -1,4 +1,4 @@
1
- // Copyright (C) 2016 and later: Unicode, Inc. and others.
1
+ // © 2016 and later: Unicode, Inc. and others.
2
2
  // License & terms of use: http://www.unicode.org/copyright.html
3
3
  /*
4
4
  *******************************************************************************
@@ -6,7 +6,7 @@
6
6
  * Corporation and others. All Rights Reserved.
7
7
  *******************************************************************************
8
8
  * file name: bytestriebuilder.h
9
- * encoding: US-ASCII
9
+ * encoding: UTF-8
10
10
  * tab size: 8 (not used)
11
11
  * indentation:4
12
12
  *
@@ -127,14 +127,14 @@ private:
127
127
  void buildBytes(UStringTrieBuildOption buildOption, UErrorCode &errorCode);
128
128
 
129
129
  virtual int32_t getElementStringLength(int32_t i) const;
130
- virtual UChar getElementUnit(int32_t i, int32_t byteIndex) const;
130
+ virtual char16_t getElementUnit(int32_t i, int32_t byteIndex) const;
131
131
  virtual int32_t getElementValue(int32_t i) const;
132
132
 
133
133
  virtual int32_t getLimitOfLinearMatch(int32_t first, int32_t last, int32_t byteIndex) const;
134
134
 
135
135
  virtual int32_t countElementUnits(int32_t start, int32_t limit, int32_t byteIndex) const;
136
136
  virtual int32_t skipElementsBySomeUnits(int32_t i, int32_t byteIndex, int32_t count) const;
137
- virtual int32_t indexOfElementWithNextUnit(int32_t i, int32_t byteIndex, UChar byte) const;
137
+ virtual int32_t indexOfElementWithNextUnit(int32_t i, int32_t byteIndex, char16_t byte) const;
138
138
 
139
139
  virtual UBool matchNodesCanHaveValues() const { return FALSE; }
140
140
 
@@ -154,7 +154,6 @@ private:
154
154
  const char *s;
155
155
  };
156
156
 
157
- // don't use #ifndef U_HIDE_INTERNAL_API with private class members or virtual methods.
158
157
  virtual Node *createLinearMatchNode(int32_t i, int32_t byteIndex, int32_t length,
159
158
  Node *nextNode) const;
160
159
 
@@ -1,4 +1,4 @@
1
- // Copyright (C) 2016 and later: Unicode, Inc. and others.
1
+ // © 2016 and later: Unicode, Inc. and others.
2
2
  // License & terms of use: http://www.unicode.org/copyright.html
3
3
  /*
4
4
  ********************************************************************************
@@ -30,7 +30,7 @@
30
30
  #include "unicode/utypes.h"
31
31
 
32
32
  /**
33
- * \file
33
+ * \file
34
34
  * \brief C++ API: Calendar object
35
35
  */
36
36
  #if !UCONFIG_NO_FORMATTING
@@ -137,7 +137,7 @@ class BasicTimeZone;
137
137
  * Calendar resolves the time using the UTC offset before the transition by default.
138
138
  * In this example, 1:30 AM is interpreted as 1:30 AM standard time (non-exist),
139
139
  * so the final result will be 2:30 AM daylight time.
140
- *
140
+ *
141
141
  * <p>On the date switching back to standard time, wall clock time is moved back one
142
142
  * hour at 2:00 AM. So wall clock time from 1:00 AM to 1:59 AM occur twice. In this
143
143
  * case, the ICU Calendar resolves the time using the UTC offset after the transition
@@ -235,7 +235,7 @@ public:
235
235
  DST_OFFSET, // Example: 0 or U_MILLIS_PER_HOUR
236
236
  YEAR_WOY, // 'Y' Example: 1..big number - Year of Week of Year
237
237
  DOW_LOCAL, // 'e' Example: 1..7 - Day of Week / Localized
238
-
238
+
239
239
  EXTENDED_YEAR,
240
240
  JULIAN_DAY,
241
241
  MILLISECONDS_IN_DAY,
@@ -914,7 +914,7 @@ public:
914
914
  * option for this. When the argument is neither <code>UCAL_WALLTIME_FIRST</code>
915
915
  * nor <code>UCAL_WALLTIME_LAST</code>, this method has no effect and will keep
916
916
  * the current setting.
917
- *
917
+ *
918
918
  * @param option the behavior for handling repeating wall time, either
919
919
  * <code>UCAL_WALLTIME_FIRST</code> or <code>UCAL_WALLTIME_LAST</code>.
920
920
  * @see #getRepeatedWallTimeOption
@@ -925,7 +925,7 @@ public:
925
925
  /**
926
926
  * Gets the behavior for handling wall time repeating multiple times
927
927
  * at negative time zone offset transitions.
928
- *
928
+ *
929
929
  * @return the behavior for handling repeating wall time, either
930
930
  * <code>UCAL_WALLTIME_FIRST</code> or <code>UCAL_WALLTIME_LAST</code>.
931
931
  * @see #setRepeatedWallTimeOption
@@ -946,12 +946,12 @@ public:
946
946
  * <p>
947
947
  * <b>Note:</b>This option is effective only when this calendar is lenient.
948
948
  * When the calendar is strict, such non-existing wall time will cause an error.
949
- *
949
+ *
950
950
  * @param option the behavior for handling skipped wall time at positive time zone
951
951
  * offset transitions, one of <code>UCAL_WALLTIME_FIRST</code>, <code>UCAL_WALLTIME_LAST</code> and
952
952
  * <code>UCAL_WALLTIME_NEXT_VALID</code>.
953
953
  * @see #getSkippedWallTimeOption
954
- *
954
+ *
955
955
  * @stable ICU 49
956
956
  */
957
957
  void setSkippedWallTimeOption(UCalendarWallTimeOption option);
@@ -959,7 +959,7 @@ public:
959
959
  /**
960
960
  * Gets the behavior for handling skipped wall time at positive time zone offset
961
961
  * transitions.
962
- *
962
+ *
963
963
  * @return the behavior for handling skipped wall time, one of
964
964
  * <code>UCAL_WALLTIME_FIRST</code>, <code>UCAL_WALLTIME_LAST</code>
965
965
  * and <code>UCAL_WALLTIME_NEXT_VALID</code>.
@@ -1741,7 +1741,7 @@ protected:
1741
1741
  * reflects local zone wall time.
1742
1742
  * @internal
1743
1743
  */
1744
- int32_t computeMillisInDay();
1744
+ double computeMillisInDay();
1745
1745
 
1746
1746
  /**
1747
1747
  * This method can assume EXTENDED_YEAR has been set.
@@ -1752,7 +1752,7 @@ protected:
1752
1752
  * when this function fails.
1753
1753
  * @internal
1754
1754
  */
1755
- int32_t computeZoneOffset(double millis, int32_t millisInDay, UErrorCode &ec);
1755
+ int32_t computeZoneOffset(double millis, double millisInDay, UErrorCode &ec);
1756
1756
 
1757
1757
 
1758
1758
  /**
@@ -1,4 +1,4 @@
1
- // Copyright (C) 2016 and later: Unicode, Inc. and others.
1
+ // © 2016 and later: Unicode, Inc. and others.
2
2
  // License & terms of use: http://www.unicode.org/copyright.html
3
3
  /*
4
4
  *******************************************************************************
@@ -187,7 +187,7 @@ private:
187
187
  UnicodeString *getEquivalents(const UnicodeString &segment, int32_t &result_len, UErrorCode &status); //private String[] getEquivalents(String segment)
188
188
 
189
189
  //Set getEquivalents2(String segment);
190
- Hashtable *getEquivalents2(Hashtable *fillinResult, const UChar *segment, int32_t segLen, UErrorCode &status);
190
+ Hashtable *getEquivalents2(Hashtable *fillinResult, const char16_t *segment, int32_t segLen, UErrorCode &status);
191
191
  //Hashtable *getEquivalents2(const UnicodeString &segment, int32_t segLen, UErrorCode &status);
192
192
 
193
193
  /**
@@ -196,7 +196,7 @@ private:
196
196
  * If so, take the remainder, and return the equivalents
197
197
  */
198
198
  //Set extract(int comp, String segment, int segmentPos, StringBuffer buffer);
199
- Hashtable *extract(Hashtable *fillinResult, UChar32 comp, const UChar *segment, int32_t segLen, int32_t segmentPos, UErrorCode &status);
199
+ Hashtable *extract(Hashtable *fillinResult, UChar32 comp, const char16_t *segment, int32_t segLen, int32_t segmentPos, UErrorCode &status);
200
200
  //Hashtable *extract(UChar32 comp, const UnicodeString &segment, int32_t segLen, int32_t segmentPos, UErrorCode &status);
201
201
 
202
202
  void cleanPieces();
@@ -0,0 +1,494 @@
1
+ // © 2017 and later: Unicode, Inc. and others.
2
+ // License & terms of use: http://www.unicode.org/copyright.html
3
+
4
+ // casemap.h
5
+ // created: 2017jan12 Markus W. Scherer
6
+
7
+ #ifndef __CASEMAP_H__
8
+ #define __CASEMAP_H__
9
+
10
+ #include "unicode/utypes.h"
11
+ #include "unicode/stringpiece.h"
12
+ #include "unicode/uobject.h"
13
+
14
+ /**
15
+ * \file
16
+ * \brief C++ API: Low-level C++ case mapping functions.
17
+ */
18
+
19
+ U_NAMESPACE_BEGIN
20
+
21
+ class BreakIterator;
22
+ class ByteSink;
23
+ class Edits;
24
+
25
+ /**
26
+ * Low-level C++ case mapping functions.
27
+ *
28
+ * @stable ICU 59
29
+ */
30
+ class U_COMMON_API CaseMap U_FINAL : public UMemory {
31
+ public:
32
+ /**
33
+ * Lowercases a UTF-16 string and optionally records edits.
34
+ * Casing is locale-dependent and context-sensitive.
35
+ * The result may be longer or shorter than the original.
36
+ * The source string and the destination buffer must not overlap.
37
+ *
38
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
39
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
40
+ * @param src The original string.
41
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
42
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
43
+ * the buffer is large enough.
44
+ * The contents is undefined in case of failure.
45
+ * @param destCapacity The size of the buffer (number of char16_ts). If it is 0, then
46
+ * dest may be NULL and the function will only return the length of the result
47
+ * without writing any of the result string.
48
+ * @param edits Records edits for index mapping, working with styled text,
49
+ * and getting only changes (if any).
50
+ * The Edits contents is undefined if any error occurs.
51
+ * This function calls edits->reset() first unless
52
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
53
+ * @param errorCode Reference to an in/out error code value
54
+ * which must not indicate a failure before the function call.
55
+ * @return The length of the result string, if successful.
56
+ * When the result would be longer than destCapacity,
57
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
58
+ *
59
+ * @see u_strToLower
60
+ * @stable ICU 59
61
+ */
62
+ static int32_t toLower(
63
+ const char *locale, uint32_t options,
64
+ const char16_t *src, int32_t srcLength,
65
+ char16_t *dest, int32_t destCapacity, Edits *edits,
66
+ UErrorCode &errorCode);
67
+
68
+ /**
69
+ * Uppercases a UTF-16 string and optionally records edits.
70
+ * Casing is locale-dependent and context-sensitive.
71
+ * The result may be longer or shorter than the original.
72
+ * The source string and the destination buffer must not overlap.
73
+ *
74
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
75
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
76
+ * @param src The original string.
77
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
78
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
79
+ * the buffer is large enough.
80
+ * The contents is undefined in case of failure.
81
+ * @param destCapacity The size of the buffer (number of char16_ts). If it is 0, then
82
+ * dest may be NULL and the function will only return the length of the result
83
+ * without writing any of the result string.
84
+ * @param edits Records edits for index mapping, working with styled text,
85
+ * and getting only changes (if any).
86
+ * The Edits contents is undefined if any error occurs.
87
+ * This function calls edits->reset() first unless
88
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
89
+ * @param errorCode Reference to an in/out error code value
90
+ * which must not indicate a failure before the function call.
91
+ * @return The length of the result string, if successful.
92
+ * When the result would be longer than destCapacity,
93
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
94
+ *
95
+ * @see u_strToUpper
96
+ * @stable ICU 59
97
+ */
98
+ static int32_t toUpper(
99
+ const char *locale, uint32_t options,
100
+ const char16_t *src, int32_t srcLength,
101
+ char16_t *dest, int32_t destCapacity, Edits *edits,
102
+ UErrorCode &errorCode);
103
+
104
+ #if !UCONFIG_NO_BREAK_ITERATION
105
+
106
+ /**
107
+ * Titlecases a UTF-16 string and optionally records edits.
108
+ * Casing is locale-dependent and context-sensitive.
109
+ * The result may be longer or shorter than the original.
110
+ * The source string and the destination buffer must not overlap.
111
+ *
112
+ * Titlecasing uses a break iterator to find the first characters of words
113
+ * that are to be titlecased. It titlecases those characters and lowercases
114
+ * all others. (This can be modified with options bits.)
115
+ *
116
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
117
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET,
118
+ * U_TITLECASE_NO_LOWERCASE,
119
+ * U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED,
120
+ * U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES.
121
+ * @param iter A break iterator to find the first characters of words that are to be titlecased.
122
+ * It is set to the source string (setText())
123
+ * and used one or more times for iteration (first() and next()).
124
+ * If NULL, then a word break iterator for the locale is used
125
+ * (or something equivalent).
126
+ * @param src The original string.
127
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
128
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
129
+ * the buffer is large enough.
130
+ * The contents is undefined in case of failure.
131
+ * @param destCapacity The size of the buffer (number of char16_ts). If it is 0, then
132
+ * dest may be NULL and the function will only return the length of the result
133
+ * without writing any of the result string.
134
+ * @param edits Records edits for index mapping, working with styled text,
135
+ * and getting only changes (if any).
136
+ * The Edits contents is undefined if any error occurs.
137
+ * This function calls edits->reset() first unless
138
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
139
+ * @param errorCode Reference to an in/out error code value
140
+ * which must not indicate a failure before the function call.
141
+ * @return The length of the result string, if successful.
142
+ * When the result would be longer than destCapacity,
143
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
144
+ *
145
+ * @see u_strToTitle
146
+ * @see ucasemap_toTitle
147
+ * @stable ICU 59
148
+ */
149
+ static int32_t toTitle(
150
+ const char *locale, uint32_t options, BreakIterator *iter,
151
+ const char16_t *src, int32_t srcLength,
152
+ char16_t *dest, int32_t destCapacity, Edits *edits,
153
+ UErrorCode &errorCode);
154
+
155
+ #endif // UCONFIG_NO_BREAK_ITERATION
156
+
157
+ /**
158
+ * Case-folds a UTF-16 string and optionally records edits.
159
+ *
160
+ * Case folding is locale-independent and not context-sensitive,
161
+ * but there is an option for whether to include or exclude mappings for dotted I
162
+ * and dotless i that are marked with 'T' in CaseFolding.txt.
163
+ *
164
+ * The result may be longer or shorter than the original.
165
+ * The source string and the destination buffer must not overlap.
166
+ *
167
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET,
168
+ * U_FOLD_CASE_DEFAULT, U_FOLD_CASE_EXCLUDE_SPECIAL_I.
169
+ * @param src The original string.
170
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
171
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
172
+ * the buffer is large enough.
173
+ * The contents is undefined in case of failure.
174
+ * @param destCapacity The size of the buffer (number of char16_ts). If it is 0, then
175
+ * dest may be NULL and the function will only return the length of the result
176
+ * without writing any of the result string.
177
+ * @param edits Records edits for index mapping, working with styled text,
178
+ * and getting only changes (if any).
179
+ * The Edits contents is undefined if any error occurs.
180
+ * This function calls edits->reset() first unless
181
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
182
+ * @param errorCode Reference to an in/out error code value
183
+ * which must not indicate a failure before the function call.
184
+ * @return The length of the result string, if successful.
185
+ * When the result would be longer than destCapacity,
186
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
187
+ *
188
+ * @see u_strFoldCase
189
+ * @stable ICU 59
190
+ */
191
+ static int32_t fold(
192
+ uint32_t options,
193
+ const char16_t *src, int32_t srcLength,
194
+ char16_t *dest, int32_t destCapacity, Edits *edits,
195
+ UErrorCode &errorCode);
196
+
197
+ #ifndef U_HIDE_DRAFT_API
198
+ /**
199
+ * Lowercases a UTF-8 string and optionally records edits.
200
+ * Casing is locale-dependent and context-sensitive.
201
+ * The result may be longer or shorter than the original.
202
+ *
203
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
204
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
205
+ * @param src The original string.
206
+ * @param sink A ByteSink to which the result string is written.
207
+ * sink.Flush() is called at the end.
208
+ * @param edits Records edits for index mapping, working with styled text,
209
+ * and getting only changes (if any).
210
+ * The Edits contents is undefined if any error occurs.
211
+ * This function calls edits->reset() first unless
212
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
213
+ * @param errorCode Reference to an in/out error code value
214
+ * which must not indicate a failure before the function call.
215
+ *
216
+ * @see ucasemap_utf8ToLower
217
+ * @draft ICU 60
218
+ */
219
+ static void utf8ToLower(
220
+ const char *locale, uint32_t options,
221
+ StringPiece src, ByteSink &sink, Edits *edits,
222
+ UErrorCode &errorCode);
223
+
224
+ /**
225
+ * Uppercases a UTF-8 string and optionally records edits.
226
+ * Casing is locale-dependent and context-sensitive.
227
+ * The result may be longer or shorter than the original.
228
+ *
229
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
230
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
231
+ * @param src The original string.
232
+ * @param sink A ByteSink to which the result string is written.
233
+ * sink.Flush() is called at the end.
234
+ * @param edits Records edits for index mapping, working with styled text,
235
+ * and getting only changes (if any).
236
+ * The Edits contents is undefined if any error occurs.
237
+ * This function calls edits->reset() first unless
238
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
239
+ * @param errorCode Reference to an in/out error code value
240
+ * which must not indicate a failure before the function call.
241
+ *
242
+ * @see ucasemap_utf8ToUpper
243
+ * @draft ICU 60
244
+ */
245
+ static void utf8ToUpper(
246
+ const char *locale, uint32_t options,
247
+ StringPiece src, ByteSink &sink, Edits *edits,
248
+ UErrorCode &errorCode);
249
+
250
+ #if !UCONFIG_NO_BREAK_ITERATION
251
+
252
+ /**
253
+ * Titlecases a UTF-8 string and optionally records edits.
254
+ * Casing is locale-dependent and context-sensitive.
255
+ * The result may be longer or shorter than the original.
256
+ *
257
+ * Titlecasing uses a break iterator to find the first characters of words
258
+ * that are to be titlecased. It titlecases those characters and lowercases
259
+ * all others. (This can be modified with options bits.)
260
+ *
261
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
262
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET,
263
+ * U_TITLECASE_NO_LOWERCASE,
264
+ * U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED,
265
+ * U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES.
266
+ * @param iter A break iterator to find the first characters of words that are to be titlecased.
267
+ * It is set to the source string (setUText())
268
+ * and used one or more times for iteration (first() and next()).
269
+ * If NULL, then a word break iterator for the locale is used
270
+ * (or something equivalent).
271
+ * @param src The original string.
272
+ * @param sink A ByteSink to which the result string is written.
273
+ * sink.Flush() is called at the end.
274
+ * @param edits Records edits for index mapping, working with styled text,
275
+ * and getting only changes (if any).
276
+ * The Edits contents is undefined if any error occurs.
277
+ * This function calls edits->reset() first unless
278
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
279
+ * @param errorCode Reference to an in/out error code value
280
+ * which must not indicate a failure before the function call.
281
+ *
282
+ * @see ucasemap_utf8ToTitle
283
+ * @draft ICU 60
284
+ */
285
+ static void utf8ToTitle(
286
+ const char *locale, uint32_t options, BreakIterator *iter,
287
+ StringPiece src, ByteSink &sink, Edits *edits,
288
+ UErrorCode &errorCode);
289
+
290
+ #endif // UCONFIG_NO_BREAK_ITERATION
291
+
292
+ /**
293
+ * Case-folds a UTF-8 string and optionally records edits.
294
+ *
295
+ * Case folding is locale-independent and not context-sensitive,
296
+ * but there is an option for whether to include or exclude mappings for dotted I
297
+ * and dotless i that are marked with 'T' in CaseFolding.txt.
298
+ *
299
+ * The result may be longer or shorter than the original.
300
+ *
301
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
302
+ * @param src The original string.
303
+ * @param sink A ByteSink to which the result string is written.
304
+ * sink.Flush() is called at the end.
305
+ * @param edits Records edits for index mapping, working with styled text,
306
+ * and getting only changes (if any).
307
+ * The Edits contents is undefined if any error occurs.
308
+ * This function calls edits->reset() first unless
309
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
310
+ * @param errorCode Reference to an in/out error code value
311
+ * which must not indicate a failure before the function call.
312
+ *
313
+ * @see ucasemap_utf8FoldCase
314
+ * @draft ICU 60
315
+ */
316
+ static void utf8Fold(
317
+ uint32_t options,
318
+ StringPiece src, ByteSink &sink, Edits *edits,
319
+ UErrorCode &errorCode);
320
+ #endif // U_HIDE_DRAFT_API
321
+
322
+ /**
323
+ * Lowercases a UTF-8 string and optionally records edits.
324
+ * Casing is locale-dependent and context-sensitive.
325
+ * The result may be longer or shorter than the original.
326
+ * The source string and the destination buffer must not overlap.
327
+ *
328
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
329
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
330
+ * @param src The original string.
331
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
332
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
333
+ * the buffer is large enough.
334
+ * The contents is undefined in case of failure.
335
+ * @param destCapacity The size of the buffer (number of bytes). If it is 0, then
336
+ * dest may be NULL and the function will only return the length of the result
337
+ * without writing any of the result string.
338
+ * @param edits Records edits for index mapping, working with styled text,
339
+ * and getting only changes (if any).
340
+ * The Edits contents is undefined if any error occurs.
341
+ * This function calls edits->reset() first unless
342
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
343
+ * @param errorCode Reference to an in/out error code value
344
+ * which must not indicate a failure before the function call.
345
+ * @return The length of the result string, if successful.
346
+ * When the result would be longer than destCapacity,
347
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
348
+ *
349
+ * @see ucasemap_utf8ToLower
350
+ * @stable ICU 59
351
+ */
352
+ static int32_t utf8ToLower(
353
+ const char *locale, uint32_t options,
354
+ const char *src, int32_t srcLength,
355
+ char *dest, int32_t destCapacity, Edits *edits,
356
+ UErrorCode &errorCode);
357
+
358
+ /**
359
+ * Uppercases a UTF-8 string and optionally records edits.
360
+ * Casing is locale-dependent and context-sensitive.
361
+ * The result may be longer or shorter than the original.
362
+ * The source string and the destination buffer must not overlap.
363
+ *
364
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
365
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET.
366
+ * @param src The original string.
367
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
368
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
369
+ * the buffer is large enough.
370
+ * The contents is undefined in case of failure.
371
+ * @param destCapacity The size of the buffer (number of bytes). If it is 0, then
372
+ * dest may be NULL and the function will only return the length of the result
373
+ * without writing any of the result string.
374
+ * @param edits Records edits for index mapping, working with styled text,
375
+ * and getting only changes (if any).
376
+ * The Edits contents is undefined if any error occurs.
377
+ * This function calls edits->reset() first unless
378
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
379
+ * @param errorCode Reference to an in/out error code value
380
+ * which must not indicate a failure before the function call.
381
+ * @return The length of the result string, if successful.
382
+ * When the result would be longer than destCapacity,
383
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
384
+ *
385
+ * @see ucasemap_utf8ToUpper
386
+ * @stable ICU 59
387
+ */
388
+ static int32_t utf8ToUpper(
389
+ const char *locale, uint32_t options,
390
+ const char *src, int32_t srcLength,
391
+ char *dest, int32_t destCapacity, Edits *edits,
392
+ UErrorCode &errorCode);
393
+
394
+ #if !UCONFIG_NO_BREAK_ITERATION
395
+
396
+ /**
397
+ * Titlecases a UTF-8 string and optionally records edits.
398
+ * Casing is locale-dependent and context-sensitive.
399
+ * The result may be longer or shorter than the original.
400
+ * The source string and the destination buffer must not overlap.
401
+ *
402
+ * Titlecasing uses a break iterator to find the first characters of words
403
+ * that are to be titlecased. It titlecases those characters and lowercases
404
+ * all others. (This can be modified with options bits.)
405
+ *
406
+ * @param locale The locale ID. ("" = root locale, NULL = default locale.)
407
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET,
408
+ * U_TITLECASE_NO_LOWERCASE,
409
+ * U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED,
410
+ * U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES.
411
+ * @param iter A break iterator to find the first characters of words that are to be titlecased.
412
+ * It is set to the source string (setUText())
413
+ * and used one or more times for iteration (first() and next()).
414
+ * If NULL, then a word break iterator for the locale is used
415
+ * (or something equivalent).
416
+ * @param src The original string.
417
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
418
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
419
+ * the buffer is large enough.
420
+ * The contents is undefined in case of failure.
421
+ * @param destCapacity The size of the buffer (number of bytes). If it is 0, then
422
+ * dest may be NULL and the function will only return the length of the result
423
+ * without writing any of the result string.
424
+ * @param edits Records edits for index mapping, working with styled text,
425
+ * and getting only changes (if any).
426
+ * The Edits contents is undefined if any error occurs.
427
+ * This function calls edits->reset() first unless
428
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
429
+ * @param errorCode Reference to an in/out error code value
430
+ * which must not indicate a failure before the function call.
431
+ * @return The length of the result string, if successful.
432
+ * When the result would be longer than destCapacity,
433
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
434
+ *
435
+ * @see ucasemap_utf8ToTitle
436
+ * @stable ICU 59
437
+ */
438
+ static int32_t utf8ToTitle(
439
+ const char *locale, uint32_t options, BreakIterator *iter,
440
+ const char *src, int32_t srcLength,
441
+ char *dest, int32_t destCapacity, Edits *edits,
442
+ UErrorCode &errorCode);
443
+
444
+ #endif // UCONFIG_NO_BREAK_ITERATION
445
+
446
+ /**
447
+ * Case-folds a UTF-8 string and optionally records edits.
448
+ *
449
+ * Case folding is locale-independent and not context-sensitive,
450
+ * but there is an option for whether to include or exclude mappings for dotted I
451
+ * and dotless i that are marked with 'T' in CaseFolding.txt.
452
+ *
453
+ * The result may be longer or shorter than the original.
454
+ * The source string and the destination buffer must not overlap.
455
+ *
456
+ * @param options Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET,
457
+ * U_FOLD_CASE_DEFAULT, U_FOLD_CASE_EXCLUDE_SPECIAL_I.
458
+ * @param src The original string.
459
+ * @param srcLength The length of the original string. If -1, then src must be NUL-terminated.
460
+ * @param dest A buffer for the result string. The result will be NUL-terminated if
461
+ * the buffer is large enough.
462
+ * The contents is undefined in case of failure.
463
+ * @param destCapacity The size of the buffer (number of bytes). If it is 0, then
464
+ * dest may be NULL and the function will only return the length of the result
465
+ * without writing any of the result string.
466
+ * @param edits Records edits for index mapping, working with styled text,
467
+ * and getting only changes (if any).
468
+ * The Edits contents is undefined if any error occurs.
469
+ * This function calls edits->reset() first unless
470
+ * options includes U_EDITS_NO_RESET. edits can be NULL.
471
+ * @param errorCode Reference to an in/out error code value
472
+ * which must not indicate a failure before the function call.
473
+ * @return The length of the result string, if successful.
474
+ * When the result would be longer than destCapacity,
475
+ * the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.
476
+ *
477
+ * @see ucasemap_utf8FoldCase
478
+ * @stable ICU 59
479
+ */
480
+ static int32_t utf8Fold(
481
+ uint32_t options,
482
+ const char *src, int32_t srcLength,
483
+ char *dest, int32_t destCapacity, Edits *edits,
484
+ UErrorCode &errorCode);
485
+
486
+ private:
487
+ CaseMap() = delete;
488
+ CaseMap(const CaseMap &other) = delete;
489
+ CaseMap &operator=(const CaseMap &other) = delete;
490
+ };
491
+
492
+ U_NAMESPACE_END
493
+
494
+ #endif // __CASEMAP_H__