pango 3.2.7-x64-mingw32 → 3.2.8-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (236) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +10 -7
  3. data/lib/2.2/pango.so +0 -0
  4. data/lib/2.3/pango.so +0 -0
  5. data/lib/2.4/pango.so +0 -0
  6. data/lib/2.5/pango.so +0 -0
  7. data/pango.gemspec +2 -0
  8. data/vendor/local/bin/derb.exe +0 -0
  9. data/vendor/local/bin/escapesrc.exe +0 -0
  10. data/vendor/local/bin/fribidi.exe +0 -0
  11. data/vendor/local/bin/genbrk.exe +0 -0
  12. data/vendor/local/bin/genccode.exe +0 -0
  13. data/vendor/local/bin/gencfu.exe +0 -0
  14. data/vendor/local/bin/gencmn.exe +0 -0
  15. data/vendor/local/bin/gencnval.exe +0 -0
  16. data/vendor/local/bin/gendict.exe +0 -0
  17. data/vendor/local/bin/gennorm2.exe +0 -0
  18. data/vendor/local/bin/genrb.exe +0 -0
  19. data/vendor/local/bin/gensprep.exe +0 -0
  20. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  21. data/vendor/local/bin/hb-shape.exe +0 -0
  22. data/vendor/local/bin/hb-subset.exe +0 -0
  23. data/vendor/local/bin/hb-view.exe +0 -0
  24. data/vendor/local/bin/icu-config +6 -6
  25. data/vendor/local/bin/icuinfo.exe +0 -0
  26. data/vendor/local/bin/icupkg.exe +0 -0
  27. data/vendor/local/bin/libfribidi-0.dll +0 -0
  28. data/vendor/local/bin/libgraphene-1.0-0.dll +0 -0
  29. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  30. data/vendor/local/bin/libharfbuzz-subset-0.dll +0 -0
  31. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  32. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  33. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  34. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  35. data/vendor/local/bin/makeconv.exe +0 -0
  36. data/vendor/local/{libexec/installed-tests/graphene-1.0/quad.exe → bin/pango-list.exe} +0 -0
  37. data/vendor/local/bin/pango-view.exe +0 -0
  38. data/vendor/local/bin/pkgdata.exe +0 -0
  39. data/vendor/local/bin/uconv.exe +0 -0
  40. data/vendor/local/include/fribidi/fribidi-config.h +2 -2
  41. data/vendor/local/include/graphene-1.0/graphene-macros.h +1 -1
  42. data/vendor/local/include/graphene-1.0/graphene-matrix.h +1 -1
  43. data/vendor/local/include/graphene-1.0/graphene-vec2.h +1 -1
  44. data/vendor/local/include/graphene-1.0/graphene-vec3.h +1 -1
  45. data/vendor/local/include/graphene-1.0/graphene-vec4.h +1 -1
  46. data/vendor/local/include/graphene-1.0/graphene-version.h +2 -2
  47. data/vendor/local/include/harfbuzz/hb-ot-layout.h +13 -0
  48. data/vendor/local/include/harfbuzz/hb-set.h +4 -0
  49. data/vendor/local/include/harfbuzz/hb-subset-plan.hh +1 -1
  50. data/vendor/local/include/harfbuzz/hb-subset-private.hh +1 -0
  51. data/vendor/local/include/harfbuzz/hb-subset.h +3 -0
  52. data/vendor/local/include/harfbuzz/hb-version.h +2 -2
  53. data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
  54. data/vendor/local/include/unicode/brkiter.h +1 -1
  55. data/vendor/local/include/unicode/bytestriebuilder.h +1 -1
  56. data/vendor/local/include/unicode/caniter.h +2 -2
  57. data/vendor/local/include/unicode/compactdecimalformat.h +17 -250
  58. data/vendor/local/include/unicode/currunit.h +3 -2
  59. data/vendor/local/include/unicode/dcfmtsym.h +8 -1
  60. data/vendor/local/include/unicode/decimfmt.h +301 -439
  61. data/vendor/local/include/unicode/docmain.h +1 -1
  62. data/vendor/local/include/unicode/edits.h +129 -21
  63. data/vendor/local/include/unicode/fmtable.h +14 -21
  64. data/vendor/local/include/unicode/fpositer.h +0 -8
  65. data/vendor/local/include/unicode/measunit.h +0 -8
  66. data/vendor/local/include/unicode/nounit.h +6 -6
  67. data/vendor/local/include/unicode/numberformatter.h +1005 -553
  68. data/vendor/local/include/unicode/numfmt.h +10 -10
  69. data/vendor/local/include/unicode/platform.h +0 -14
  70. data/vendor/local/include/unicode/plurrule.h +0 -21
  71. data/vendor/local/include/unicode/rbbi.h +9 -15
  72. data/vendor/local/include/unicode/rbnf.h +2 -2
  73. data/vendor/local/include/unicode/scientificnumberformatter.h +0 -5
  74. data/vendor/local/include/unicode/smpdtfmt.h +33 -6
  75. data/vendor/local/include/unicode/timezone.h +2 -0
  76. data/vendor/local/include/unicode/uchar.h +42 -3
  77. data/vendor/local/include/unicode/unistr.h +3 -3
  78. data/vendor/local/include/unicode/unum.h +26 -5
  79. data/vendor/local/include/unicode/unumberformatter.h +717 -0
  80. data/vendor/local/include/unicode/urename.h +13 -0
  81. data/vendor/local/include/unicode/uscript.h +16 -1
  82. data/vendor/local/include/unicode/uspoof.h +24 -1
  83. data/vendor/local/include/unicode/utypes.h +4 -1
  84. data/vendor/local/include/unicode/uvernum.h +5 -5
  85. data/vendor/local/lib/cmake/harfbuzz/harfbuzz-config.cmake +1 -1
  86. data/vendor/local/lib/graphene-1.0/include/graphene-config.h +3 -1
  87. data/vendor/local/lib/icu/{61.1 → 62.1}/Makefile.inc +6 -6
  88. data/vendor/local/lib/icu/{61.1 → 62.1}/pkgdata.inc +3 -3
  89. data/vendor/local/lib/icu/Makefile.inc +6 -6
  90. data/vendor/local/lib/icu/pkgdata.inc +3 -3
  91. data/vendor/local/lib/icudt.dll +0 -0
  92. data/vendor/local/lib/{icudt61.dll → icudt62.dll} +0 -0
  93. data/vendor/local/lib/icuin.dll +0 -0
  94. data/vendor/local/lib/icuin62.dll +0 -0
  95. data/vendor/local/lib/icuio.dll +0 -0
  96. data/vendor/local/lib/{icuio61.dll → icuio62.dll} +0 -0
  97. data/vendor/local/lib/icutest.dll +0 -0
  98. data/vendor/local/lib/{icutest61.dll → icutest62.dll} +0 -0
  99. data/vendor/local/lib/icutu.dll +0 -0
  100. data/vendor/local/lib/{icutu61.dll → icutu62.dll} +0 -0
  101. data/vendor/local/lib/icuuc.dll +0 -0
  102. data/vendor/local/lib/{icuuc61.dll → icuuc62.dll} +0 -0
  103. data/vendor/local/lib/libfribidi.dll.a +0 -0
  104. data/vendor/local/lib/libgraphene-1.0.dll.a +0 -0
  105. data/vendor/local/lib/libharfbuzz-icu.a +0 -0
  106. data/vendor/local/lib/libharfbuzz-icu.la +2 -2
  107. data/vendor/local/lib/libharfbuzz-subset.dll.a +0 -0
  108. data/vendor/local/lib/libharfbuzz-subset.la +2 -2
  109. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  110. data/vendor/local/lib/libharfbuzz.la +2 -2
  111. data/vendor/local/lib/libicudt.dll.a +0 -0
  112. data/vendor/local/lib/libicuin.dll.a +0 -0
  113. data/vendor/local/lib/libicuio.dll.a +0 -0
  114. data/vendor/local/lib/libicutest.dll.a +0 -0
  115. data/vendor/local/lib/libicutu.dll.a +0 -0
  116. data/vendor/local/lib/libicuuc.dll.a +0 -0
  117. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  118. data/vendor/local/lib/libpango-1.0.la +2 -2
  119. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  120. data/vendor/local/lib/libpangocairo-1.0.la +2 -2
  121. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  122. data/vendor/local/lib/libpangoft2-1.0.la +2 -2
  123. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  124. data/vendor/local/lib/libpangowin32-1.0.la +2 -2
  125. data/vendor/local/lib/pkgconfig/fribidi.pc +1 -1
  126. data/vendor/local/lib/pkgconfig/graphene-1.0.pc +7 -11
  127. data/vendor/local/lib/pkgconfig/graphene-gobject-1.0.pc +6 -12
  128. data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +1 -1
  129. data/vendor/local/lib/pkgconfig/harfbuzz-subset.pc +1 -1
  130. data/vendor/local/lib/pkgconfig/harfbuzz.pc +1 -1
  131. data/vendor/local/lib/pkgconfig/icu-i18n.pc +6 -6
  132. data/vendor/local/lib/pkgconfig/icu-io.pc +6 -6
  133. data/vendor/local/lib/pkgconfig/icu-uc.pc +6 -6
  134. data/vendor/local/lib/pkgconfig/pango.pc +3 -2
  135. data/vendor/local/lib/pkgconfig/pangocairo.pc +1 -1
  136. data/vendor/local/lib/pkgconfig/pangoft2.pc +1 -1
  137. data/vendor/local/lib/pkgconfig/pangowin32.pc +2 -2
  138. data/vendor/local/share/gir-1.0/Graphene-1.0.gir +1 -1
  139. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +80 -0
  140. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-blob.html +34 -0
  141. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-face.html +13 -0
  142. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +20 -0
  143. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-set.html +83 -28
  144. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +5 -1
  145. data/vendor/local/share/gtk-doc/html/harfbuzz/object-tree.html +1 -0
  146. data/vendor/local/share/gtk-doc/html/harfbuzz/pt02.html +1 -1
  147. data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +2 -2
  148. data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +2 -2
  149. data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +2 -2
  150. data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +2 -2
  151. data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +2 -2
  152. data/vendor/local/share/gtk-doc/html/pango/PangoMarkupFormat.html +2 -2
  153. data/vendor/local/share/gtk-doc/html/pango/PangoRenderer.html +2 -2
  154. data/vendor/local/share/gtk-doc/html/pango/annotation-glossary.html +2 -2
  155. data/vendor/local/share/gtk-doc/html/pango/api-index-full.html +2 -2
  156. data/vendor/local/share/gtk-doc/html/pango/index.html +3 -3
  157. data/vendor/local/share/gtk-doc/html/pango/lowlevel.html +2 -2
  158. data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +2 -2
  159. data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +2 -2
  160. data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +2 -2
  161. data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +2 -2
  162. data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +2 -2
  163. data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +2 -2
  164. data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +2 -2
  165. data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +2 -2
  166. data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +2 -2
  167. data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +2 -2
  168. data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +2 -2
  169. data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +2 -2
  170. data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +2 -2
  171. data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +2 -2
  172. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +2 -2
  173. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +2 -2
  174. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +4 -4
  175. data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +2 -2
  176. data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +2 -2
  177. data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +2 -2
  178. data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +2 -2
  179. data/vendor/local/share/gtk-doc/html/pango/pango.html +2 -2
  180. data/vendor/local/share/gtk-doc/html/pango/rendering.html +2 -2
  181. data/vendor/local/share/gtk-doc/html/pango/style.css +4 -0
  182. data/vendor/local/share/icu/{61.1 → 62.1}/LICENSE +0 -0
  183. data/vendor/local/share/icu/{61.1 → 62.1}/config/mh-mingw64 +0 -0
  184. data/vendor/local/share/icu/{61.1 → 62.1}/install-sh +0 -0
  185. data/vendor/local/share/icu/{61.1 → 62.1}/mkinstalldirs +0 -0
  186. data/vendor/local/share/man/man1/derb.1 +2 -2
  187. data/vendor/local/share/man/man1/genbrk.1 +2 -2
  188. data/vendor/local/share/man/man1/gencfu.1 +1 -1
  189. data/vendor/local/share/man/man1/gencnval.1 +3 -3
  190. data/vendor/local/share/man/man1/gendict.1 +2 -2
  191. data/vendor/local/share/man/man1/genrb.1 +3 -3
  192. data/vendor/local/share/man/man1/icu-config.1 +2 -2
  193. data/vendor/local/share/man/man1/makeconv.1 +3 -3
  194. data/vendor/local/share/man/man1/pkgdata.1 +2 -2
  195. data/vendor/local/share/man/man1/uconv.1 +2 -2
  196. data/vendor/local/share/man/man8/genccode.8 +2 -2
  197. data/vendor/local/share/man/man8/gencmn.8 +3 -3
  198. data/vendor/local/share/man/man8/gensprep.8 +3 -3
  199. data/vendor/local/share/man/man8/icupkg.8 +1 -1
  200. metadata +20 -54
  201. data/vendor/local/lib/icuin61.dll +0 -0
  202. data/vendor/local/libexec/installed-tests/graphene-1.0/box.exe +0 -0
  203. data/vendor/local/libexec/installed-tests/graphene-1.0/euler.exe +0 -0
  204. data/vendor/local/libexec/installed-tests/graphene-1.0/frustum.exe +0 -0
  205. data/vendor/local/libexec/installed-tests/graphene-1.0/matrix.exe +0 -0
  206. data/vendor/local/libexec/installed-tests/graphene-1.0/plane.exe +0 -0
  207. data/vendor/local/libexec/installed-tests/graphene-1.0/point.exe +0 -0
  208. data/vendor/local/libexec/installed-tests/graphene-1.0/point3d.exe +0 -0
  209. data/vendor/local/libexec/installed-tests/graphene-1.0/quaternion.exe +0 -0
  210. data/vendor/local/libexec/installed-tests/graphene-1.0/ray.exe +0 -0
  211. data/vendor/local/libexec/installed-tests/graphene-1.0/rect.exe +0 -0
  212. data/vendor/local/libexec/installed-tests/graphene-1.0/simd.exe +0 -0
  213. data/vendor/local/libexec/installed-tests/graphene-1.0/size.exe +0 -0
  214. data/vendor/local/libexec/installed-tests/graphene-1.0/sphere.exe +0 -0
  215. data/vendor/local/libexec/installed-tests/graphene-1.0/triangle.exe +0 -0
  216. data/vendor/local/libexec/installed-tests/graphene-1.0/vec2.exe +0 -0
  217. data/vendor/local/libexec/installed-tests/graphene-1.0/vec3.exe +0 -0
  218. data/vendor/local/libexec/installed-tests/graphene-1.0/vec4.exe +0 -0
  219. data/vendor/local/share/installed-tests/graphene-1.0/box.test +0 -3
  220. data/vendor/local/share/installed-tests/graphene-1.0/euler.test +0 -3
  221. data/vendor/local/share/installed-tests/graphene-1.0/frustum.test +0 -3
  222. data/vendor/local/share/installed-tests/graphene-1.0/matrix.test +0 -3
  223. data/vendor/local/share/installed-tests/graphene-1.0/plane.test +0 -3
  224. data/vendor/local/share/installed-tests/graphene-1.0/point.test +0 -3
  225. data/vendor/local/share/installed-tests/graphene-1.0/point3d.test +0 -3
  226. data/vendor/local/share/installed-tests/graphene-1.0/quad.test +0 -3
  227. data/vendor/local/share/installed-tests/graphene-1.0/quaternion.test +0 -3
  228. data/vendor/local/share/installed-tests/graphene-1.0/ray.test +0 -3
  229. data/vendor/local/share/installed-tests/graphene-1.0/rect.test +0 -3
  230. data/vendor/local/share/installed-tests/graphene-1.0/simd.test +0 -3
  231. data/vendor/local/share/installed-tests/graphene-1.0/size.test +0 -3
  232. data/vendor/local/share/installed-tests/graphene-1.0/sphere.test +0 -3
  233. data/vendor/local/share/installed-tests/graphene-1.0/triangle.test +0 -3
  234. data/vendor/local/share/installed-tests/graphene-1.0/vec2.test +0 -3
  235. data/vendor/local/share/installed-tests/graphene-1.0/vec3.test +0 -3
  236. data/vendor/local/share/installed-tests/graphene-1.0/vec4.test +0 -3
@@ -555,16 +555,18 @@ public:
555
555
  UnicodeString& appendTo,
556
556
  FieldPositionIterator* posIter,
557
557
  UErrorCode& status) const;
558
- public:
558
+
559
+ // Can't use #ifndef U_HIDE_INTERNAL_API because these are virtual methods
560
+
559
561
  /**
560
562
  * Format a decimal number.
561
- * The number is a DigitList wrapper onto a floating point decimal number.
563
+ * The number is a DecimalQuantity wrapper onto a floating point decimal number.
562
564
  * The default implementation in NumberFormat converts the decimal number
563
565
  * to a double and formats that. Subclasses of NumberFormat that want
564
566
  * to specifically handle big decimal numbers must override this method.
565
567
  * class DecimalFormat does so.
566
568
  *
567
- * @param number The number, a DigitList format Decimal Floating Point.
569
+ * @param number The number, a DecimalQuantity format Decimal Floating Point.
568
570
  * @param appendTo Output parameter to receive result.
569
571
  * Result is appended to existing contents.
570
572
  * @param posIter On return, can be used to iterate over positions
@@ -573,20 +575,20 @@ public:
573
575
  * @return Reference to 'appendTo' parameter.
574
576
  * @internal
575
577
  */
576
- virtual UnicodeString& format(const DigitList &number,
578
+ virtual UnicodeString& format(const number::impl::DecimalQuantity &number,
577
579
  UnicodeString& appendTo,
578
580
  FieldPositionIterator* posIter,
579
581
  UErrorCode& status) const;
580
582
 
581
583
  /**
582
584
  * Format a decimal number.
583
- * The number is a DigitList wrapper onto a floating point decimal number.
585
+ * The number is a DecimalQuantity wrapper onto a floating point decimal number.
584
586
  * The default implementation in NumberFormat converts the decimal number
585
587
  * to a double and formats that. Subclasses of NumberFormat that want
586
588
  * to specifically handle big decimal numbers must override this method.
587
589
  * class DecimalFormat does so.
588
590
  *
589
- * @param number The number, a DigitList format Decimal Floating Point.
591
+ * @param number The number, a DecimalQuantity format Decimal Floating Point.
590
592
  * @param appendTo Output parameter to receive result.
591
593
  * Result is appended to existing contents.
592
594
  * @param pos On input: an alignment field, if desired.
@@ -595,13 +597,11 @@ public:
595
597
  * @return Reference to 'appendTo' parameter.
596
598
  * @internal
597
599
  */
598
- virtual UnicodeString& format(const DigitList &number,
600
+ virtual UnicodeString& format(const number::impl::DecimalQuantity &number,
599
601
  UnicodeString& appendTo,
600
602
  FieldPosition& pos,
601
603
  UErrorCode& status) const;
602
604
 
603
- public:
604
-
605
605
  /**
606
606
  * Return a long if possible (e.g. within range LONG_MAX,
607
607
  * LONG_MAX], and with no decimals), otherwise a double. If
@@ -1000,7 +1000,7 @@ public:
1000
1000
  * @stable ICU 2.6
1001
1001
  */
1002
1002
  const char16_t* getCurrency() const;
1003
-
1003
+
1004
1004
  /**
1005
1005
  * Set a particular UDisplayContext value in the formatter, such as
1006
1006
  * UDISPCTX_CAPITALIZATION_FOR_STANDALONE.
@@ -196,20 +196,6 @@
196
196
  # define U_PLATFORM U_PF_UNKNOWN
197
197
  #endif
198
198
 
199
- /**
200
- * \def UPRV_INCOMPLETE_CPP11_SUPPORT
201
- * This switch turns off ICU 60 NumberFormatter code.
202
- * By default, this switch is enabled on AIX and z/OS,
203
- * which have poor C++11 support.
204
- *
205
- * NOTE: This switch is intended to be temporary; see #13393.
206
- *
207
- * @internal
208
- */
209
- #ifndef UPRV_INCOMPLETE_CPP11_SUPPORT
210
- # define UPRV_INCOMPLETE_CPP11_SUPPORT (U_PLATFORM == U_PF_AIX || U_PLATFORM == U_PF_OS390 || U_PLATFORM == U_PF_SOLARIS )
211
- #endif
212
-
213
199
  /**
214
200
  * \def CYGWINMSVC
215
201
  * Defined if this is Windows with Cygwin, but using MSVC rather than gcc.
@@ -44,7 +44,6 @@ U_NAMESPACE_BEGIN
44
44
 
45
45
  class Hashtable;
46
46
  class IFixedDecimal;
47
- class VisibleDigitsWithExponent;
48
47
  class RuleChain;
49
48
  class PluralRuleParser;
50
49
  class PluralKeywordEnumeration;
@@ -348,30 +347,10 @@ public:
348
347
  UnicodeString select(double number) const;
349
348
 
350
349
  #ifndef U_HIDE_INTERNAL_API
351
- /**
352
- * Given a number and a format, returns the keyword of the first applicable
353
- * rule for this PluralRules object.
354
- * Note: This internal preview interface may be removed in the future if
355
- * an architecturally cleaner solution reaches stable status.
356
- * @param obj The numeric object for which the rule should be determined.
357
- * @param fmt The NumberFormat specifying how the number will be formatted
358
- * (this can affect the plural form, e.g. "1 dollar" vs "1.0 dollars").
359
- * @param status Input/output parameter. If at entry this indicates a
360
- * failure status, the method returns immediately; otherwise
361
- * this is set to indicate the outcome of the call.
362
- * @return The keyword of the selected rule. Undefined in the case of an error.
363
- * @internal ICU 59 technology preview, may be removed in the future
364
- */
365
- UnicodeString select(const Formattable& obj, const NumberFormat& fmt, UErrorCode& status) const;
366
-
367
350
  /**
368
351
  * @internal
369
352
  */
370
353
  UnicodeString select(const IFixedDecimal &number) const;
371
- /**
372
- * @internal
373
- */
374
- UnicodeString select(const VisibleDigitsWithExponent &number) const;
375
354
  #endif /* U_HIDE_INTERNAL_API */
376
355
 
377
356
  /**
@@ -55,7 +55,7 @@ class U_COMMON_API RuleBasedBreakIterator /*U_FINAL*/ : public BreakIterator {
55
55
  private:
56
56
  /**
57
57
  * The UText through which this BreakIterator accesses the text
58
- * @internal
58
+ * @internal (private)
59
59
  */
60
60
  UText fText;
61
61
 
@@ -70,13 +70,6 @@ public:
70
70
  RBBIDataWrapper *fData;
71
71
  private:
72
72
 
73
- /**
74
- * The iteration state - current position, rule status for the current position,
75
- * and whether the iterator ran off the end, yielding UBRK_DONE.
76
- * Current position is pinned to be 0 < position <= text.length.
77
- * Current position is always set to a boundary.
78
- * @internal
79
- */
80
73
  /**
81
74
  * The current position of the iterator. Pinned, 0 < fPosition <= text.length.
82
75
  * Never has the value UBRK_DONE (-1).
@@ -628,25 +621,26 @@ private:
628
621
  /**
629
622
  * Dumps caches and performs other actions associated with a complete change
630
623
  * in text or iteration position.
631
- * @internal
624
+ * @internal (private)
632
625
  */
633
626
  void reset(void);
634
627
 
635
628
  /**
636
629
  * Common initialization function, used by constructors and bufferClone.
637
- * @internal
630
+ * @internal (private)
638
631
  */
639
632
  void init(UErrorCode &status);
640
633
 
641
634
  /**
642
- * Iterate backwards from an arbitrary position in the input text using the Safe Reverse rules.
635
+ * Iterate backwards from an arbitrary position in the input text using the
636
+ * synthesized Safe Reverse rules.
643
637
  * This locates a "Safe Position" from which the forward break rules
644
638
  * will operate correctly. A Safe Position is not necessarily a boundary itself.
645
639
  *
646
640
  * @param fromPosition the position in the input text to begin the iteration.
647
- * @internal
641
+ * @internal (private)
648
642
  */
649
- int32_t handlePrevious(int32_t fromPosition);
643
+ int32_t handleSafePrevious(int32_t fromPosition);
650
644
 
651
645
  /**
652
646
  * Find a rule-based boundary by running the state machine.
@@ -658,7 +652,7 @@ private:
658
652
  * If > 0, the segment will be further subdivided
659
653
  * fRuleStatusIndex Info from the state table indicating which rules caused the boundary.
660
654
  *
661
- * @internal
655
+ * @internal (private)
662
656
  */
663
657
  int32_t handleNext();
664
658
 
@@ -667,7 +661,7 @@ private:
667
661
  * This function returns the appropriate LanguageBreakEngine for a
668
662
  * given character c.
669
663
  * @param c A character in the dictionary set
670
- * @internal
664
+ * @internal (private)
671
665
  */
672
666
  const LanguageBreakEngine *getLanguageBreakEngine(UChar32 c);
673
667
 
@@ -884,7 +884,7 @@ protected:
884
884
  * @return Reference to 'appendTo' parameter.
885
885
  * @internal
886
886
  */
887
- virtual UnicodeString& format(const DigitList &number,
887
+ virtual UnicodeString& format(const number::impl::DecimalQuantity &number,
888
888
  UnicodeString& appendTo,
889
889
  FieldPositionIterator* posIter,
890
890
  UErrorCode& status) const;
@@ -906,7 +906,7 @@ protected:
906
906
  * @return Reference to 'appendTo' parameter.
907
907
  * @internal
908
908
  */
909
- virtual UnicodeString& format(const DigitList &number,
909
+ virtual UnicodeString& format(const number::impl::DecimalQuantity &number,
910
910
  UnicodeString& appendTo,
911
911
  FieldPosition& pos,
912
912
  UErrorCode& status) const;
@@ -24,7 +24,6 @@
24
24
  U_NAMESPACE_BEGIN
25
25
 
26
26
  class FieldPositionIterator;
27
- class DecimalFormatStaticSets;
28
27
  class DecimalFormatSymbols;
29
28
  class DecimalFormat;
30
29
  class Formattable;
@@ -150,7 +149,6 @@ public:
150
149
  const UnicodeString &original,
151
150
  FieldPositionIterator &fpi,
152
151
  const UnicodeString &preExponent,
153
- const DecimalFormatStaticSets &decimalFormatSets,
154
152
  UnicodeString &appendTo,
155
153
  UErrorCode &status) const = 0;
156
154
  private:
@@ -165,7 +163,6 @@ public:
165
163
  const UnicodeString &original,
166
164
  FieldPositionIterator &fpi,
167
165
  const UnicodeString &preExponent,
168
- const DecimalFormatStaticSets &decimalFormatSets,
169
166
  UnicodeString &appendTo,
170
167
  UErrorCode &status) const;
171
168
  };
@@ -184,7 +181,6 @@ public:
184
181
  const UnicodeString &original,
185
182
  FieldPositionIterator &fpi,
186
183
  const UnicodeString &preExponent,
187
- const DecimalFormatStaticSets &decimalFormatSets,
188
184
  UnicodeString &appendTo,
189
185
  UErrorCode &status) const;
190
186
  private:
@@ -211,7 +207,6 @@ public:
211
207
  UnicodeString fPreExponent;
212
208
  DecimalFormat *fDecimalFormat;
213
209
  Style *fStyle;
214
- const DecimalFormatStaticSets *fStaticSets;
215
210
 
216
211
  };
217
212
 
@@ -50,6 +50,10 @@ class TimeZoneFormat;
50
50
  class SharedNumberFormat;
51
51
  class SimpleDateFormatMutableNFs;
52
52
 
53
+ namespace number {
54
+ class LocalizedNumberFormatter;
55
+ }
56
+
53
57
  /**
54
58
  *
55
59
  * SimpleDateFormat is a concrete class for formatting and parsing dates in a
@@ -1268,7 +1272,6 @@ private:
1268
1272
  int32_t fieldNum,
1269
1273
  FieldPositionHandler& handler,
1270
1274
  Calendar& cal,
1271
- SimpleDateFormatMutableNFs &mutableNFs,
1272
1275
  UErrorCode& status) const; // in case of illegal argument
1273
1276
 
1274
1277
  /**
@@ -1284,7 +1287,7 @@ private:
1284
1287
  * @param minDigits Minimum number of digits the result should have
1285
1288
  * @param maxDigits Maximum number of digits the result should have
1286
1289
  */
1287
- void zeroPaddingNumber(NumberFormat *currentNumberFormat,
1290
+ void zeroPaddingNumber(const NumberFormat *currentNumberFormat,
1288
1291
  UnicodeString &appendTo,
1289
1292
  int32_t value,
1290
1293
  int32_t minDigits,
@@ -1414,21 +1417,21 @@ private:
1414
1417
  */
1415
1418
  int32_t subParse(const UnicodeString& text, int32_t& start, char16_t ch, int32_t count,
1416
1419
  UBool obeyCount, UBool allowNegative, UBool ambiguousYear[], int32_t& saveHebrewMonth, Calendar& cal,
1417
- int32_t patLoc, MessageFormat * numericLeapMonthFormatter, UTimeZoneFormatTimeType *tzTimeType, SimpleDateFormatMutableNFs &mutableNFs,
1420
+ int32_t patLoc, MessageFormat * numericLeapMonthFormatter, UTimeZoneFormatTimeType *tzTimeType,
1418
1421
  int32_t *dayPeriod=NULL) const;
1419
1422
 
1420
1423
  void parseInt(const UnicodeString& text,
1421
1424
  Formattable& number,
1422
1425
  ParsePosition& pos,
1423
1426
  UBool allowNegative,
1424
- NumberFormat *fmt) const;
1427
+ const NumberFormat *fmt) const;
1425
1428
 
1426
1429
  void parseInt(const UnicodeString& text,
1427
1430
  Formattable& number,
1428
1431
  int32_t maxDigits,
1429
1432
  ParsePosition& pos,
1430
1433
  UBool allowNegative,
1431
- NumberFormat *fmt) const;
1434
+ const NumberFormat *fmt) const;
1432
1435
 
1433
1436
  int32_t checkIntSuffix(const UnicodeString& text, int32_t start,
1434
1437
  int32_t patLoc, UBool isNegative) const;
@@ -1495,6 +1498,16 @@ private:
1495
1498
  */
1496
1499
  int32_t skipUWhiteSpace(const UnicodeString& text, int32_t pos) const;
1497
1500
 
1501
+ /**
1502
+ * Initialize LocalizedNumberFormatter instances used for speedup.
1503
+ */
1504
+ void initFastNumberFormatters(UErrorCode& status);
1505
+
1506
+ /**
1507
+ * Delete the LocalizedNumberFormatter instances used for speedup.
1508
+ */
1509
+ void freeFastNumberFormatters();
1510
+
1498
1511
  /**
1499
1512
  * Initialize NumberFormat instances used for numbering system overrides.
1500
1513
  */
@@ -1518,7 +1531,7 @@ private:
1518
1531
  /**
1519
1532
  * Lazy TimeZoneFormat instantiation, semantically const
1520
1533
  */
1521
- TimeZoneFormat *tzFormat() const;
1534
+ TimeZoneFormat *tzFormat(UErrorCode &status) const;
1522
1535
 
1523
1536
  const NumberFormat* getNumberFormatByIndex(UDateFormatField index) const;
1524
1537
 
@@ -1611,6 +1624,20 @@ private:
1611
1624
  */
1612
1625
  const SharedNumberFormat **fSharedNumberFormatters;
1613
1626
 
1627
+ enum NumberFormatterKey {
1628
+ SMPDTFMT_NF_1x10,
1629
+ SMPDTFMT_NF_2x10,
1630
+ SMPDTFMT_NF_3x10,
1631
+ SMPDTFMT_NF_4x10,
1632
+ SMPDTFMT_NF_2x2,
1633
+ SMPDTFMT_NF_COUNT
1634
+ };
1635
+
1636
+ /**
1637
+ * Number formatters pre-allocated for fast performance on the most common integer lengths.
1638
+ */
1639
+ const number::LocalizedNumberFormatter* fFastNumberFormatters[SMPDTFMT_NF_COUNT] = {};
1640
+
1614
1641
  UBool fHaveDefaultCentury;
1615
1642
 
1616
1643
  BreakIterator* fCapitalizationBrkIter;
@@ -284,6 +284,8 @@ public:
284
284
  * and may return a different TimeZone from the one returned by
285
285
  * TimeZone::createDefault().
286
286
  *
287
+ * <p>This function is not thread safe.</p>
288
+ *
287
289
  * @return A new instance of TimeZone detected from the current host system
288
290
  * configuration.
289
291
  * @stable ICU 55
@@ -42,7 +42,7 @@ U_CDECL_BEGIN
42
42
  * @see u_getUnicodeVersion
43
43
  * @stable ICU 2.0
44
44
  */
45
- #define U_UNICODE_VERSION "10.0"
45
+ #define U_UNICODE_VERSION "11.0"
46
46
 
47
47
  /**
48
48
  * \file
@@ -446,6 +446,13 @@ typedef enum UProperty {
446
446
  * @stable ICU 60
447
447
  */
448
448
  UCHAR_PREPENDED_CONCATENATION_MARK=63,
449
+ /**
450
+ * Binary property Extended_Pictographic.
451
+ * See http://www.unicode.org/reports/tr51/#Emoji_Properties
452
+ *
453
+ * @stable ICU 62
454
+ */
455
+ UCHAR_EXTENDED_PICTOGRAPHIC=64,
449
456
  #ifndef U_HIDE_DEPRECATED_API
450
457
  /**
451
458
  * One more than the last constant for binary Unicode properties.
@@ -1683,6 +1690,31 @@ enum UBlockCode {
1683
1690
  /** @stable ICU 60 */
1684
1691
  UBLOCK_ZANABAZAR_SQUARE = 280, /*[11A00]*/
1685
1692
 
1693
+ // New blocks in Unicode 11.0
1694
+
1695
+ /** @stable ICU 62 */
1696
+ UBLOCK_CHESS_SYMBOLS = 281, /*[1FA00]*/
1697
+ /** @stable ICU 62 */
1698
+ UBLOCK_DOGRA = 282, /*[11800]*/
1699
+ /** @stable ICU 62 */
1700
+ UBLOCK_GEORGIAN_EXTENDED = 283, /*[1C90]*/
1701
+ /** @stable ICU 62 */
1702
+ UBLOCK_GUNJALA_GONDI = 284, /*[11D60]*/
1703
+ /** @stable ICU 62 */
1704
+ UBLOCK_HANIFI_ROHINGYA = 285, /*[10D00]*/
1705
+ /** @stable ICU 62 */
1706
+ UBLOCK_INDIC_SIYAQ_NUMBERS = 286, /*[1EC70]*/
1707
+ /** @stable ICU 62 */
1708
+ UBLOCK_MAKASAR = 287, /*[11EE0]*/
1709
+ /** @stable ICU 62 */
1710
+ UBLOCK_MAYAN_NUMERALS = 288, /*[1D2E0]*/
1711
+ /** @stable ICU 62 */
1712
+ UBLOCK_MEDEFAIDRIN = 289, /*[16E40]*/
1713
+ /** @stable ICU 62 */
1714
+ UBLOCK_OLD_SOGDIAN = 290, /*[10F00]*/
1715
+ /** @stable ICU 62 */
1716
+ UBLOCK_SOGDIAN = 291, /*[10F30]*/
1717
+
1686
1718
  #ifndef U_HIDE_DEPRECATED_API
1687
1719
  /**
1688
1720
  * One more than the highest normal UBlockCode value.
@@ -1690,7 +1722,7 @@ enum UBlockCode {
1690
1722
  *
1691
1723
  * @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
1692
1724
  */
1693
- UBLOCK_COUNT = 281,
1725
+ UBLOCK_COUNT = 292,
1694
1726
  #endif // U_HIDE_DEPRECATED_API
1695
1727
 
1696
1728
  /** @stable ICU 2.0 */
@@ -1979,6 +2011,9 @@ typedef enum UJoiningGroup {
1979
2011
  U_JG_MALAYALAM_SSA, /**< @stable ICU 60 */
1980
2012
  U_JG_MALAYALAM_TTA, /**< @stable ICU 60 */
1981
2013
 
2014
+ U_JG_HANIFI_ROHINGYA_KINNA_YA, /**< @stable ICU 62 */
2015
+ U_JG_HANIFI_ROHINGYA_PA, /**< @stable ICU 62 */
2016
+
1982
2017
  #ifndef U_HIDE_DEPRECATED_API
1983
2018
  /**
1984
2019
  * One more than the highest normal UJoiningGroup value.
@@ -2029,6 +2064,7 @@ typedef enum UGraphemeClusterBreak {
2029
2064
  U_GCB_GLUE_AFTER_ZWJ = 16, /*[GAZ]*/
2030
2065
  /** @stable ICU 58 */
2031
2066
  U_GCB_ZWJ = 17, /*[ZWJ]*/
2067
+
2032
2068
  #ifndef U_HIDE_DEPRECATED_API
2033
2069
  /**
2034
2070
  * One more than the highest normal UGraphemeClusterBreak value.
@@ -2090,6 +2126,9 @@ typedef enum UWordBreakValues {
2090
2126
  U_WB_GLUE_AFTER_ZWJ = 20, /*[GAZ]*/
2091
2127
  /** @stable ICU 58 */
2092
2128
  U_WB_ZWJ = 21, /*[ZWJ]*/
2129
+ /** @stable ICU 62 */
2130
+ U_WB_WSEGSPACE = 22, /*[WSEGSPACE]*/
2131
+
2093
2132
  #ifndef U_HIDE_DEPRECATED_API
2094
2133
  /**
2095
2134
  * One more than the highest normal UWordBreakValues value.
@@ -2097,7 +2136,7 @@ typedef enum UWordBreakValues {
2097
2136
  *
2098
2137
  * @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
2099
2138
  */
2100
- U_WB_COUNT = 22
2139
+ U_WB_COUNT = 23
2101
2140
  #endif // U_HIDE_DEPRECATED_API
2102
2141
  } UWordBreakValues;
2103
2142