OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 2011,2012 Google, Inc. | 2 * Copyright © 2011,2012 Google, Inc. |
3 * | 3 * |
4 * This is part of HarfBuzz, a text shaping library. | 4 * This is part of HarfBuzz, a text shaping library. |
5 * | 5 * |
6 * Permission is hereby granted, without written agreement and without | 6 * Permission is hereby granted, without written agreement and without |
7 * license or royalty fees, to use, copy, modify, and distribute this | 7 * license or royalty fees, to use, copy, modify, and distribute this |
8 * software and its documentation for any purpose, provided that the | 8 * software and its documentation for any purpose, provided that the |
9 * above copyright notice and the following two paragraphs appear in | 9 * above copyright notice and the following two paragraphs appear in |
10 * all copies of this software. | 10 * all copies of this software. |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 for (unsigned int i = last; i < p+1; i++) \ | 96 for (unsigned int i = last; i < p+1; i++) \ |
97 info[i].syllable() = (syllable_serial << 4) | syllable_type; \ | 97 info[i].syllable() = (syllable_serial << 4) | syllable_type; \ |
98 last = p+1; \ | 98 last = p+1; \ |
99 syllable_serial++; \ | 99 syllable_serial++; \ |
100 if (unlikely (syllable_serial == 16)) syllable_serial = 1; \ | 100 if (unlikely (syllable_serial == 16)) syllable_serial = 1; \ |
101 } HB_STMT_END | 101 } HB_STMT_END |
102 | 102 |
103 static void | 103 static void |
104 find_syllables (hb_buffer_t *buffer) | 104 find_syllables (hb_buffer_t *buffer) |
105 { | 105 { |
106 unsigned int p, pe, eof, ts HB_UNUSED, te, act; | 106 unsigned int p, pe, eof, ts HB_UNUSED, te HB_UNUSED, act HB_UNUSED; |
107 int cs; | 107 int cs; |
108 hb_glyph_info_t *info = buffer->info; | 108 hb_glyph_info_t *info = buffer->info; |
109 %%{ | 109 %%{ |
110 write init; | 110 write init; |
111 getkey info[p].indic_category(); | 111 getkey info[p].indic_category(); |
112 }%% | 112 }%% |
113 | 113 |
114 p = 0; | 114 p = 0; |
115 pe = eof = buffer->len; | 115 pe = eof = buffer->len; |
116 | 116 |
117 unsigned int last = 0; | 117 unsigned int last = 0; |
118 unsigned int syllable_serial = 1; | 118 unsigned int syllable_serial = 1; |
119 %%{ | 119 %%{ |
120 write exec; | 120 write exec; |
121 }%% | 121 }%% |
122 } | 122 } |
123 | 123 |
124 #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */ | 124 #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */ |
OLD | NEW |