[前][次][番号順一覧][スレッド一覧]

ruby-changes:48859

From: nobu <ko1@a...>
Date: Sat, 2 Dec 2017 12:12:55 +0900 (JST)
Subject: [ruby-changes:48859] nobu:r60977 (trunk): fix for emoji-data.txt

nobu	2017-12-02 12:12:51 +0900 (Sat, 02 Dec 2017)

  New Revision: 60977

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=60977

  Log:
    fix for emoji-data.txt
    
    * common.mk: download emoji-data.txt.  As emoji data files are
      located in a separate directory in Unicode.org site, reearranged
      Unicode data files directories same as the site.
    
    * tool/enc-unicode.rb (get_file): search emoji data files in the
      second argument path.

  Modified files:
    trunk/common.mk
    trunk/enc/unicode/10.0.0/casefold.h
    trunk/enc/unicode/10.0.0/name2ctype.h
    trunk/template/unicode_norm_gen.tmpl
    trunk/tool/enc-unicode.rb
Index: tool/enc-unicode.rb
===================================================================
--- tool/enc-unicode.rb	(revision 60976)
+++ tool/enc-unicode.rb	(revision 60977)
@@ -14,8 +14,8 @@ if ARGV[0] == "--header" https://github.com/ruby/ruby/blob/trunk/tool/enc-unicode.rb#L14
   header = true
   ARGV.shift
 end
-unless ARGV.size == 1
-  abort "Usage: #{$0} data_directory"
+unless ARGV.size == 2
+  abort "Usage: #{$0} data_directory emoji_data_directory"
 end
 
 $unicode_version = File.basename(ARGV[0])[/\A[.\d]+\z/]
@@ -302,7 +302,7 @@ def constantize_blockname(name) https://github.com/ruby/ruby/blob/trunk/tool/enc-unicode.rb#L302
 end
 
 def get_file(name)
-  File.join(ARGV[0], name)
+  File.join(ARGV[name.start_with?("emoji-") ? 1 : 0], name)
 end
 
 def data_foreach(name, &block)
Index: template/unicode_norm_gen.tmpl
===================================================================
--- template/unicode_norm_gen.tmpl	(revision 60976)
+++ template/unicode_norm_gen.tmpl	(revision 60977)
@@ -7,7 +7,7 @@ https://github.com/ruby/ruby/blob/trunk/template/unicode_norm_gen.tmpl#L7
 
 # Constants for input and ouput directory
 InputDataDir = ARGV[0] || 'enc/unicode/data'
-unicode_version = InputDataDir[/[\d.]+\z/]
+unicode_version = InputDataDir[/.*\/(\d+\.\d+\.\d+)(?=\/|\z)/, 1]
 
 # convenience methods
 class Integer
Index: enc/unicode/10.0.0/casefold.h
===================================================================
--- enc/unicode/10.0.0/casefold.h	(revision 60976)
+++ enc/unicode/10.0.0/casefold.h	(revision 60977)
@@ -1419,7 +1419,7 @@ static const CaseFold_11_Type CaseFold_1 https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L1419
   {0x0130, {2|F|D, {0x0069, 0x0307}}},
 };
 
-/* C code produced by gperf version 3.0.4 */
+/* ANSI-C code produced by gperf version 3.1 */
 /* Command-line: gperf -7 -k1,2,3 -F,-1 -c -j1 -i1 -t -T -E -C -H onigenc_unicode_CaseFold_11_hash -N onigenc_unicode_CaseFold_11_lookup -n  */
 
 /* maximum key range = 3623, duplicates = 0 */
@@ -1462,12 +1462,6 @@ onigenc_unicode_CaseFold_11_hash(const O https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L1462
   return asso_values[bits_of(code, 2)+81] + asso_values[bits_of(code, 1)+2] + asso_values[bits_of(code, 0)];
 }
 
-#ifdef __GNUC__
-__inline
-#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
-__attribute__ ((__gnu_inline__))
-#endif
-#endif
 static const CodePointList3 *
 onigenc_unicode_CaseFold_11_lookup(const OnigCodePoint code)
 {
@@ -3583,9 +3577,9 @@ onigenc_unicode_CaseFold_11_lookup(const https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L3577
 
   if (code <= MAX_CODE_VALUE && code >= MIN_CODE_VALUE)
     {
-      register int key = onigenc_unicode_CaseFold_11_hash(code);
+      register unsigned int key = onigenc_unicode_CaseFold_11_hash(code);
 
-      if (key <= MAX_HASH_VALUE && key >= 0)
+      if (key <= MAX_HASH_VALUE)
         {
           register short s = wordlist[key];
 
@@ -4868,7 +4862,7 @@ static const CaseUnfold_11_Type CaseUnfo https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L4862
   {0x0069, {1|U, {0x0049}}},
 };
 
-/* C code produced by gperf version 3.0.4 */
+/* ANSI-C code produced by gperf version 3.1 */
 /* Command-line: gperf -7 -k1,2,3 -F,-1 -c -j1 -i1 -t -T -E -C -H onigenc_unicode_CaseUnfold_11_hash -N onigenc_unicode_CaseUnfold_11_lookup -n  */
 
 /* maximum key range = 2216, duplicates = 0 */
@@ -4910,12 +4904,6 @@ onigenc_unicode_CaseUnfold_11_hash(const https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L4904
   return asso_values[bits_of(code, 2)+66] + asso_values[bits_of(code, 1)+4] + asso_values[bits_of(code, 0)];
 }
 
-#ifdef __GNUC__
-__inline
-#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
-__attribute__ ((__gnu_inline__))
-#endif
-#endif
 static const CodePointList3 *
 onigenc_unicode_CaseUnfold_11_lookup(const OnigCodePoint code)
 {
@@ -6602,9 +6590,9 @@ onigenc_unicode_CaseUnfold_11_lookup(con https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6590
 
   if (code <= MAX_CODE_VALUE && code >= MIN_CODE_VALUE)
     {
-      register int key = onigenc_unicode_CaseUnfold_11_hash(code);
+      register unsigned int key = onigenc_unicode_CaseUnfold_11_hash(code);
 
-      if (key <= MAX_HASH_VALUE && key >= 0)
+      if (key <= MAX_HASH_VALUE)
         {
           register short s = wordlist[key];
 
@@ -6679,7 +6667,7 @@ static const CaseUnfold_12_Type CaseUnfo https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6667
   {{0x0069, 0x0307}, {1, {0x0130}}},
 };
 
-/* C code produced by gperf version 3.0.4 */
+/* ANSI-C code produced by gperf version 3.1 */
 /* Command-line: gperf -7 -k1,2,3,4,5,6 -F,-1 -c -j1 -i1 -t -T -E -C -H onigenc_unicode_CaseUnfold_12_hash -N onigenc_unicode_CaseUnfold_12_lookup -n  */
 
 /* maximum key range = 71, duplicates = 0 */
@@ -6714,12 +6702,6 @@ onigenc_unicode_CaseUnfold_12_hash(const https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6702
   return asso_values[bits_at(codes, 5)] + asso_values[bits_at(codes, 4)] + asso_values[bits_at(codes, 3)] + asso_values[bits_at(codes, 2)] + asso_values[bits_at(codes, 1)] + asso_values[bits_at(codes, 0)];
 }
 
-#ifdef __GNUC__
-__inline
-#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
-__attribute__ ((__gnu_inline__))
-#endif
-#endif
 static const CodePointList2 *
 onigenc_unicode_CaseUnfold_12_lookup(const OnigCodePoint *codes)
 {
@@ -6804,9 +6786,9 @@ onigenc_unicode_CaseUnfold_12_lookup(con https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6786
   if (codes[0] <= MAX_CODE_VALUE && codes[0] >= MIN_CODE_VALUE &&
       codes[1] <= MAX_CODE_VALUE && codes[1] >= MIN_CODE_VALUE)
     {
-      register int key = onigenc_unicode_CaseUnfold_12_hash(codes);
+      register unsigned int key = onigenc_unicode_CaseUnfold_12_hash(codes);
 
-      if (key <= MAX_HASH_VALUE && key >= 0)
+      if (key <= MAX_HASH_VALUE)
         {
           register short s = wordlist[key];
 
@@ -6835,7 +6817,7 @@ static const CaseUnfold_13_Type CaseUnfo https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6817
   {{0x03c9, 0x0342, 0x03b9}, {1, {0x1ff7}}},
 };
 
-/* C code produced by gperf version 3.0.4 */
+/* ANSI-C code produced by gperf version 3.1 */
 /* Command-line: gperf -7 -k1,2,3,4,5,6,7,8,9 -F,-1 -c -j1 -i1 -t -T -E -C -H onigenc_unicode_CaseUnfold_13_hash -N onigenc_unicode_CaseUnfold_13_lookup -n  */
 
 /* maximum key range = 20, duplicates = 0 */
@@ -6870,12 +6852,6 @@ onigenc_unicode_CaseUnfold_13_hash(const https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6852
   return asso_values[bits_at(codes, 8)] + asso_values[bits_at(codes, 7)] + asso_values[bits_at(codes, 6)] + asso_values[bits_at(codes, 5)] + asso_values[bits_at(codes, 4)] + asso_values[bits_at(codes, 3)] + asso_values[bits_at(codes, 2)] + asso_values[bits_at(codes, 1)] + asso_values[bits_at(codes, 0)];
 }
 
-#ifdef __GNUC__
-__inline
-#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
-__attribute__ ((__gnu_inline__))
-#endif
-#endif
 static const CodePointList2 *
 onigenc_unicode_CaseUnfold_13_lookup(const OnigCodePoint *codes)
 {
@@ -6918,9 +6894,9 @@ onigenc_unicode_CaseUnfold_13_lookup(con https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/casefold.h#L6894
       codes[1] <= MAX_CODE_VALUE && codes[1] >= MIN_CODE_VALUE &&
       codes[2] <= MAX_CODE_VALUE && codes[2] >= MIN_CODE_VALUE)
     {
-      register int key = onigenc_unicode_CaseUnfold_13_hash(codes);
+      register unsigned int key = onigenc_unicode_CaseUnfold_13_hash(codes);
 
-      if (key <= MAX_HASH_VALUE && key >= 0)
+      if (key <= MAX_HASH_VALUE)
         {
           register short s = wordlist[key];
 
Index: enc/unicode/10.0.0/name2ctype.h
===================================================================
--- enc/unicode/10.0.0/name2ctype.h	(revision 60976)
+++ enc/unicode/10.0.0/name2ctype.h	(revision 60977)
@@ -1,4 +1,4 @@ https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L1
-/* C code produced by gperf version 3.0.4 */
+/* ANSI-C code produced by gperf version 3.1 */
 /* Command-line: gperf -7 -c -j1 -i1 -t -C -P -T -H uniname2ctype_hash -Q uniname2ctype_pool -N uniname2ctype_p  */
 #ifndef USE_UNICODE_PROPERTIES
 /* Computed positions: -k'1,3' */
@@ -30,7 +30,7 @@ https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L30
       && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
       && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
 /* The character set is not based on ISO-646.  */
-error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@g...>."
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@g...>."
 #endif
 
 
@@ -21317,6 +21317,289 @@ static const OnigCodePoint CR_Regional_I https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L21317
 	0x1f1e6, 0x1f1ff,
 }; /* CR_Regional_Indicator */
 
+/* 'Emoji': Emoji */
+static const OnigCodePoint CR_Emoji[] = {
+	145,
+	0x0023, 0x0023,
+	0x002a, 0x002a,
+	0x0030, 0x0039,
+	0x00a9, 0x00a9,
+	0x00ae, 0x00ae,
+	0x203c, 0x203c,
+	0x2049, 0x2049,
+	0x2122, 0x2122,
+	0x2139, 0x2139,
+	0x2194, 0x2199,
+	0x21a9, 0x21aa,
+	0x231a, 0x231b,
+	0x2328, 0x2328,
+	0x23cf, 0x23cf,
+	0x23e9, 0x23f3,
+	0x23f8, 0x23fa,
+	0x24c2, 0x24c2,
+	0x25aa, 0x25ab,
+	0x25b6, 0x25b6,
+	0x25c0, 0x25c0,
+	0x25fb, 0x25fe,
+	0x2600, 0x2604,
+	0x260e, 0x260e,
+	0x2611, 0x2611,
+	0x2614, 0x2615,
+	0x2618, 0x2618,
+	0x261d, 0x261d,
+	0x2620, 0x2620,
+	0x2622, 0x2623,
+	0x2626, 0x2626,
+	0x262a, 0x262a,
+	0x262e, 0x262f,
+	0x2638, 0x263a,
+	0x2640, 0x2640,
+	0x2642, 0x2642,
+	0x2648, 0x2653,
+	0x2660, 0x2660,
+	0x2663, 0x2663,
+	0x2665, 0x2666,
+	0x2668, 0x2668,
+	0x267b, 0x267b,
+	0x267f, 0x267f,
+	0x2692, 0x2697,
+	0x2699, 0x2699,
+	0x269b, 0x269c,
+	0x26a0, 0x26a1,
+	0x26aa, 0x26ab,
+	0x26b0, 0x26b1,
+	0x26bd, 0x26be,
+	0x26c4, 0x26c5,
+	0x26c8, 0x26c8,
+	0x26ce, 0x26cf,
+	0x26d1, 0x26d1,
+	0x26d3, 0x26d4,
+	0x26e9, 0x26ea,
+	0x26f0, 0x26f5,
+	0x26f7, 0x26fa,
+	0x26fd, 0x26fd,
+	0x2702, 0x2702,
+	0x2705, 0x2705,
+	0x2708, 0x270d,
+	0x270f, 0x270f,
+	0x2712, 0x2712,
+	0x2714, 0x2714,
+	0x2716, 0x2716,
+	0x271d, 0x271d,
+	0x2721, 0x2721,
+	0x2728, 0x2728,
+	0x2733, 0x2734,
+	0x2744, 0x2744,
+	0x2747, 0x2747,
+	0x274c, 0x274c,
+	0x274e, 0x274e,
+	0x2753, 0x2755,
+	0x2757, 0x2757,
+	0x2763, 0x2764,
+	0x2795, 0x2797,
+	0x27a1, 0x27a1,
+	0x27b0, 0x27b0,
+	0x27bf, 0x27bf,
+	0x2934, 0x2935,
+	0x2b05, 0x2b07,
+	0x2b1b, 0x2b1c,
+	0x2b50, 0x2b50,
+	0x2b55, 0x2b55,
+	0x3030, 0x3030,
+	0x303d, 0x303d,
+	0x3297, 0x3297,
+	0x3299, 0x3299,
+	0x1f004, 0x1f004,
+	0x1f0cf, 0x1f0cf,
+	0x1f170, 0x1f171,
+	0x1f17e, 0x1f17f,
+	0x1f18e, 0x1f18e,
+	0x1f191, 0x1f19a,
+	0x1f1e6, 0x1f1ff,
+	0x1f201, 0x1f202,
+	0x1f21a, 0x1f21a,
+	0x1f22f, 0x1f22f,
+	0x1f232, 0x1f23a,
+	0x1f250, 0x1f251,
+	0x1f300, 0x1f321,
+	0x1f324, 0x1f393,
+	0x1f396, 0x1f397,
+	0x1f399, 0x1f39b,
+	0x1f39e, 0x1f3f0,
+	0x1f3f3, 0x1f3f5,
+	0x1f3f7, 0x1f4fd,
+	0x1f4ff, 0x1f53d,
+	0x1f549, 0x1f54e,
+	0x1f550, 0x1f567,
+	0x1f56f, 0x1f570,
+	0x1f573, 0x1f57a,
+	0x1f587, 0x1f587,
+	0x1f58a, 0x1f58d,
+	0x1f590, 0x1f590,
+	0x1f595, 0x1f596,
+	0x1f5a4, 0x1f5a5,
+	0x1f5a8, 0x1f5a8,
+	0x1f5b1, 0x1f5b2,
+	0x1f5bc, 0x1f5bc,
+	0x1f5c2, 0x1f5c4,
+	0x1f5d1, 0x1f5d3,
+	0x1f5dc, 0x1f5de,
+	0x1f5e1, 0x1f5e1,
+	0x1f5e3, 0x1f5e3,
+	0x1f5e8, 0x1f5e8,
+	0x1f5ef, 0x1f5ef,
+	0x1f5f3, 0x1f5f3,
+	0x1f5fa, 0x1f64f,
+	0x1f680, 0x1f6c5,
+	0x1f6cb, 0x1f6d2,
+	0x1f6e0, 0x1f6e5,
+	0x1f6e9, 0x1f6e9,
+	0x1f6eb, 0x1f6ec,
+	0x1f6f0, 0x1f6f0,
+	0x1f6f3, 0x1f6f8,
+	0x1f910, 0x1f93a,
+	0x1f93c, 0x1f93e,
+	0x1f940, 0x1f945,
+	0x1f947, 0x1f94c,
+	0x1f950, 0x1f96b,
+	0x1f980, 0x1f997,
+	0x1f9c0, 0x1f9c0,
+	0x1f9d0, 0x1f9e6,
+}; /* CR_Emoji */
+
+/* 'Emoji_Presentation': Emoji */
+static const OnigCodePoint CR_Emoji_Presentation[] = {
+	75,
+	0x231a, 0x231b,
+	0x23e9, 0x23ec,
+	0x23f0, 0x23f0,
+	0x23f3, 0x23f3,
+	0x25fd, 0x25fe,
+	0x2614, 0x2615,
+	0x2648, 0x2653,
+	0x267f, 0x267f,
+	0x2693, 0x2693,
+	0x26a1, 0x26a1,
+	0x26aa, 0x26ab,
+	0x26bd, 0x26be,
+	0x26c4, 0x26c5,
+	0x26ce, 0x26ce,
+	0x26d4, 0x26d4,
+	0x26ea, 0x26ea,
+	0x26f2, 0x26f3,
+	0x26f5, 0x26f5,
+	0x26fa, 0x26fa,
+	0x26fd, 0x26fd,
+	0x2705, 0x2705,
+	0x270a, 0x270b,
+	0x2728, 0x2728,
+	0x274c, 0x274c,
+	0x274e, 0x274e,
+	0x2753, 0x2755,
+	0x2757, 0x2757,
+	0x2795, 0x2797,
+	0x27b0, 0x27b0,
+	0x27bf, 0x27bf,
+	0x2b1b, 0x2b1c,
+	0x2b50, 0x2b50,
+	0x2b55, 0x2b55,
+	0x1f004, 0x1f004,
+	0x1f0cf, 0x1f0cf,
+	0x1f18e, 0x1f18e,
+	0x1f191, 0x1f19a,
+	0x1f1e6, 0x1f1ff,
+	0x1f201, 0x1f201,
+	0x1f21a, 0x1f21a,
+	0x1f22f, 0x1f22f,
+	0x1f232, 0x1f236,
+	0x1f238, 0x1f23a,
+	0x1f250, 0x1f251,
+	0x1f300, 0x1f320,
+	0x1f32d, 0x1f335,
+	0x1f337, 0x1f37c,
+	0x1f37e, 0x1f393,
+	0x1f3a0, 0x1f3ca,
+	0x1f3cf, 0x1f3d3,
+	0x1f3e0, 0x1f3f0,
+	0x1f3f4, 0x1f3f4,
+	0x1f3f8, 0x1f43e,
+	0x1f440, 0x1f440,
+	0x1f442, 0x1f4fc,
+	0x1f4ff, 0x1f53d,
+	0x1f54b, 0x1f54e,
+	0x1f550, 0x1f567,
+	0x1f57a, 0x1f57a,
+	0x1f595, 0x1f596,
+	0x1f5a4, 0x1f5a4,
+	0x1f5fb, 0x1f64f,
+	0x1f680, 0x1f6c5,
+	0x1f6cc, 0x1f6cc,
+	0x1f6d0, 0x1f6d2,
+	0x1f6eb, 0x1f6ec,
+	0x1f6f4, 0x1f6f8,
+	0x1f910, 0x1f93a,
+	0x1f93c, 0x1f93e,
+	0x1f940, 0x1f945,
+	0x1f947, 0x1f94c,
+	0x1f950, 0x1f96b,
+	0x1f980, 0x1f997,
+	0x1f9c0, 0x1f9c0,
+	0x1f9d0, 0x1f9e6,
+}; /* CR_Emoji_Presentation */
+
+/* 'Emoji_Modifier': Emoji */
+static const OnigCodePoint CR_Emoji_Modifier[] = {
+	1,
+	0x1f3fb, 0x1f3ff,
+}; /* CR_Emoji_Modifier */
+
+/* 'Emoji_Modifier_Base': Emoji */
+static const OnigCodePoint CR_Emoji_Modifier_Base[] = {
+	32,
+	0x261d, 0x261d,
+	0x26f9, 0x26f9,
+	0x270a, 0x270d,
+	0x1f385, 0x1f385,
+	0x1f3c2, 0x1f3c4,
+	0x1f3c7, 0x1f3c7,
+	0x1f3ca, 0x1f3cc,
+	0x1f442, 0x1f443,
+	0x1f446, 0x1f450,
+	0x1f466, 0x1f469,
+	0x1f46e, 0x1f46e,
+	0x1f470, 0x1f478,
+	0x1f47c, 0x1f47c,
+	0x1f481, 0x1f483,
+	0x1f485, 0x1f487,
+	0x1f4aa, 0x1f4aa,
+	0x1f574, 0x1f575,
+	0x1f57a, 0x1f57a,
+	0x1f590, 0x1f590,
+	0x1f595, 0x1f596,
+	0x1f645, 0x1f647,
+	0x1f64b, 0x1f64f,
+	0x1f6a3, 0x1f6a3,
+	0x1f6b4, 0x1f6b6,
+	0x1f6c0, 0x1f6c0,
+	0x1f6cc, 0x1f6cc,
+	0x1f918, 0x1f91c,
+	0x1f91e, 0x1f91f,
+	0x1f926, 0x1f926,
+	0x1f930, 0x1f939,
+	0x1f93d, 0x1f93e,
+	0x1f9d1, 0x1f9dd,
+}; /* CR_Emoji_Modifier_Base */
+
+/* 'Emoji_Component': Emoji */
+static const OnigCodePoint CR_Emoji_Component[] = {
+	5,
+	0x0023, 0x0023,
+	0x002a, 0x002a,
+	0x0030, 0x0039,
+	0x1f1e6, 0x1f1ff,
+	0x1f3fb, 0x1f3ff,
+}; /* CR_Emoji_Component */
+
 /* 'Unknown': Script */
 static const OnigCodePoint CR_Unknown[] = {
 	647,
@@ -32146,10 +32429,7 @@ static const OnigCodePoint CR_Grapheme_C https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L32429
 }; /* CR_Grapheme_Cluster_Break_E_Base */
 
 /* 'Grapheme_Cluster_Break_E_Modifier': Grapheme_Cluster_Break=E_Modifier */
-static const OnigCodePoint CR_Grapheme_Cluster_Break_E_Modifier[] = {
-	1,
-	0x1f3fb, 0x1f3ff,
-}; /* CR_Grapheme_Cluster_Break_E_Modifier */
+#define CR_Grapheme_Cluster_Break_E_Modifier CR_Emoji_Modifier
 
 /* 'Grapheme_Cluster_Break_ZWJ': Grapheme_Cluster_Break=ZWJ */
 static const OnigCodePoint CR_Grapheme_Cluster_Break_ZWJ[] = {
@@ -34143,6 +34423,11 @@ static const OnigCodePoint* const CodeRa https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L34423
   CR_Pattern_Syntax,
   CR_Prepended_Concatenation_Mark,
   CR_Regional_Indicator,
+  CR_Emoji,
+  CR_Emoji_Presentation,
+  CR_Emoji_Modifier,
+  CR_Emoji_Modifier_Base,
+  CR_Emoji_Component,
   CR_Unknown,
 #ifdef USE_UNICODE_AGE_PROPERTIES
   CR_Age_1_1,
@@ -34482,9 +34767,9 @@ static const struct uniname2ctype_struct https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L34767
 /* maximum key range = 15, duplicates = 0 */
 #else /* USE_UNICODE_PROPERTIES */
 #ifndef USE_UNICODE_AGE_PROPERTIES
-#define TOTAL_KEYWORDS 770
+#define TOTAL_KEYWORDS 775
 #else /* USE_UNICODE_AGE_PROPERTIES */
-#define TOTAL_KEYWORDS 789
+#define TOTAL_KEYWORDS 794
 #endif /* USE_UNICODE_AGE_PROPERTIES */
 #define MIN_WORD_LENGTH 1
 #define MAX_WORD_LENGTH 44
@@ -34501,9 +34786,7 @@ inline https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L34786
 #endif
 #endif
 static unsigned int
-uniname2ctype_hash (str, len)
-     register const char *str;
-     register unsigned int len;
+uniname2ctype_hash (register const char *str, register unsigned int len)
 {
 #ifndef USE_UNICODE_PROPERTIES
   static const unsigned char asso_values[] =
@@ -34549,7 +34832,7 @@ uniname2ctype_hash (str, len) https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L34832
 #ifndef USE_UNICODE_PROPERTIES
   return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[0]];
 #else /* USE_UNICODE_PROPERTIES */
-  register int hval = len;
+  register unsigned int hval = len;
 
   switch (hval)
     {
@@ -34992,6 +35275,7 @@ struct uniname2ctype_pool_t https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L35275
     char uniname2ctype_pool_str1355[sizeof("intibetan")];
     char uniname2ctype_pool_str1364[sizeof("inlepcha")];
     char uniname2ctype_pool_str1365[sizeof("inbatak")];
+    char uniname2ctype_pool_str1367[sizeof("emoji")];
     char uniname2ctype_pool_str1368[sizeof("osma")];
     char uniname2ctype_pool_str1369[sizeof("bhks")];
     char uniname2ctype_pool_str1372[sizeof("inmongolian")];
@@ -35058,6 +35342,7 @@ struct uniname2ctype_pool_t https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L35342
     char uniname2ctype_pool_str1470[sizeof("number")];
     char uniname2ctype_pool_str1471[sizeof("insundanesesupplement")];
     char uniname2ctype_pool_str1485[sizeof("incopticepactnumbers")];
+    char uniname2ctype_pool_str1490[sizeof("emojimodifier")];
     char uniname2ctype_pool_str1496[sizeof("zp")];
     char uniname2ctype_pool_str1497[sizeof("asciihexdigit")];
     char uniname2ctype_pool_str1500[sizeof("indevanagari")];
@@ -35094,6 +35379,7 @@ struct uniname2ctype_pool_t https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L35379
     char uniname2ctype_pool_str1631[sizeof("enclosingmark")];
     char uniname2ctype_pool_str1632[sizeof("java")];
     char uniname2ctype_pool_str1636[sizeof("tale")];
+    char uniname2ctype_pool_str1638[sizeof("emojimodifierbase")];
     char uniname2ctype_pool_str1645[sizeof("inphoneticextensions")];
     char uniname2ctype_pool_str1647[sizeof("lowercase")];
     char uniname2ctype_pool_str1648[sizeof("inverticalforms")];
@@ -35122,6 +35408,7 @@ struct uniname2ctype_pool_t https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L35408
     char uniname2ctype_pool_str1736[sizeof("graph")];
     char uniname2ctype_pool_str1737[sizeof("olchiki")];
     char uniname2ctype_pool_str1741[sizeof("inphoneticextensionssupplement")];
+    char uniname2ctype_pool_str1743[sizeof("emojicomponent")];
     char uniname2ctype_pool_str1746[sizeof("inunifiedcanadianaboriginalsyllabicsextended")];
     char uniname2ctype_pool_str1748[sizeof("ingeometricshapes")];
     char uniname2ctype_pool_str1752[sizeof("invariationselectorssupplement")];
@@ -35263,6 +35550,7 @@ struct uniname2ctype_pool_t https://github.com/ruby/ruby/blob/trunk/enc/unicode/10.0.0/name2ctype.h#L35550
     char uniname2ctype_pool_str2372[sizeof("syriac")];
     char uniname2ctype_pool_str2380[sizeof("ethi")];
     char uniname2ctype_pool_str2386[sizeof("otheralphabetic")];
+    char uniname2ctype_pool_str2393[sizeof("emojipresentation")];
     char uniname2ctype_pool_str2399[sizeof("inarabicmathematicalalphabeticsymbols")];
     char uniname2ctype_pool_str2408[sizeof("tang")];
     char uniname2ctype_pool_str2409[sizeof("buhid")];
@@ -35814,6 +36102,7 @@ static const struct uniname2ctype_pool_t https://github.c (... truncated)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]