Lines Matching refs:buffer

98 output_char (hb_buffer_t *buffer, hb_codepoint_t unichar, hb_codepoint_t glyph)  in output_char()  argument
100 buffer->cur().glyph_index() = glyph; in output_char()
101 buffer->output_glyph (unichar); /* This is very confusing indeed. */ in output_char()
102 _hb_glyph_info_set_unicode_props (&buffer->prev(), buffer); in output_char()
106 next_char (hb_buffer_t *buffer, hb_codepoint_t glyph) in next_char() argument
108 buffer->cur().glyph_index() = glyph; in next_char()
109 buffer->next_glyph (); in next_char()
113 skip_char (hb_buffer_t *buffer) in skip_char() argument
115 buffer->skip_glyph (); in skip_char()
123 hb_buffer_t * const buffer = c->buffer; in decompose() local
133 output_char (buffer, a, a_glyph); in decompose()
135 output_char (buffer, b, b_glyph); in decompose()
144 output_char (buffer, b, b_glyph); in decompose()
151 output_char (buffer, a, a_glyph); in decompose()
153 output_char (buffer, b, b_glyph); in decompose()
165 hb_buffer_t * const buffer = c->buffer; in decompose_current_character() local
166 hb_codepoint_t u = buffer->cur().codepoint; in decompose_current_character()
171 next_char (buffer, glyph); in decompose_current_character()
177 skip_char (buffer); in decompose_current_character()
183 next_char (buffer, glyph); in decompose_current_character()
187 if (_hb_glyph_info_is_unicode_space (&buffer->cur())) in decompose_current_character()
190 hb_unicode_funcs_t::space_t space_type = buffer->unicode->space_fallback_type (u); in decompose_current_character()
193 _hb_glyph_info_set_unicode_space_fallback_type (&buffer->cur(), space_type); in decompose_current_character()
194 next_char (buffer, space_glyph); in decompose_current_character()
195 buffer->scratch_flags |= HB_BUFFER_SCRATCH_FLAG_HAS_SPACE_FALLBACK; in decompose_current_character()
207 next_char (buffer, other_glyph); in decompose_current_character()
212 next_char (buffer, glyph); /* glyph is initialized in earlier branches. */ in decompose_current_character()
219 hb_buffer_t * const buffer = c->buffer; in handle_variation_selector_cluster() local
221 for (; buffer->idx < end - 1 && !buffer->in_error;) { in handle_variation_selector_cluster()
222 if (unlikely (buffer->unicode->is_variation_selector (buffer->cur(+1).codepoint))) { in handle_variation_selector_cluster()
224 …if (font->get_variation_glyph (buffer->cur().codepoint, buffer->cur(+1).codepoint, &buffer->cur().… in handle_variation_selector_cluster()
226 buffer->replace_glyphs (2, 1, &buffer->cur().codepoint); in handle_variation_selector_cluster()
231 set_glyph (buffer->cur(), font); in handle_variation_selector_cluster()
232 buffer->next_glyph (); in handle_variation_selector_cluster()
233 set_glyph (buffer->cur(), font); in handle_variation_selector_cluster()
234 buffer->next_glyph (); in handle_variation_selector_cluster()
237 …while (buffer->idx < end && unlikely (buffer->unicode->is_variation_selector (buffer->cur().codepo… in handle_variation_selector_cluster()
239 set_glyph (buffer->cur(), font); in handle_variation_selector_cluster()
240 buffer->next_glyph (); in handle_variation_selector_cluster()
243 set_glyph (buffer->cur(), font); in handle_variation_selector_cluster()
244 buffer->next_glyph (); in handle_variation_selector_cluster()
247 if (likely (buffer->idx < end)) { in handle_variation_selector_cluster()
248 set_glyph (buffer->cur(), font); in handle_variation_selector_cluster()
249 buffer->next_glyph (); in handle_variation_selector_cluster()
256 hb_buffer_t * const buffer = c->buffer; in decompose_multi_char_cluster() local
257 for (unsigned int i = buffer->idx; i < end && !buffer->in_error; i++) in decompose_multi_char_cluster()
258 if (unlikely (buffer->unicode->is_variation_selector (buffer->info[i].codepoint))) { in decompose_multi_char_cluster()
263 while (buffer->idx < end && !buffer->in_error) in decompose_multi_char_cluster()
270 if (likely (c->buffer->idx + 1 == end)) in decompose_cluster()
289 hb_buffer_t *buffer, in _hb_ot_shape_normalize() argument
292 if (unlikely (!buffer->len)) return; in _hb_ot_shape_normalize()
294 _hb_buffer_assert_unicode_vars (buffer); in _hb_ot_shape_normalize()
299 buffer, in _hb_ot_shape_normalize()
301 buffer->unicode, in _hb_ot_shape_normalize()
321 buffer->clear_output (); in _hb_ot_shape_normalize()
322 count = buffer->len; in _hb_ot_shape_normalize()
323 for (buffer->idx = 0; buffer->idx < count && !buffer->in_error;) in _hb_ot_shape_normalize()
326 for (end = buffer->idx + 1; end < count; end++) in _hb_ot_shape_normalize()
327 … (!HB_UNICODE_GENERAL_CATEGORY_IS_MARK (_hb_glyph_info_get_general_category (&buffer->info[end])))) in _hb_ot_shape_normalize()
332 buffer->swap_buffers (); in _hb_ot_shape_normalize()
337 count = buffer->len; in _hb_ot_shape_normalize()
340 if (_hb_glyph_info_get_modified_combining_class (&buffer->info[i]) == 0) in _hb_ot_shape_normalize()
345 if (_hb_glyph_info_get_modified_combining_class (&buffer->info[end]) == 0) in _hb_ot_shape_normalize()
354 buffer->sort (i, end, compare_combining_class); in _hb_ot_shape_normalize()
369 buffer->clear_output (); in _hb_ot_shape_normalize()
370 count = buffer->len; in _hb_ot_shape_normalize()
372 buffer->next_glyph (); in _hb_ot_shape_normalize()
373 while (buffer->idx < count && !buffer->in_error) in _hb_ot_shape_normalize()
380 HB_UNICODE_GENERAL_CATEGORY_IS_MARK (_hb_glyph_info_get_general_category (&buffer->cur())) && in _hb_ot_shape_normalize()
383 (starter == buffer->out_len - 1 || in _hb_ot_shape_normalize()
384 …lyph_info_get_modified_combining_class (&buffer->prev()) < _hb_glyph_info_get_modified_combining_c… in _hb_ot_shape_normalize()
387 buffer->out_info[starter].codepoint, in _hb_ot_shape_normalize()
388 buffer->cur().codepoint, in _hb_ot_shape_normalize()
394 buffer->next_glyph (); /* Copy to out-buffer. */ in _hb_ot_shape_normalize()
395 if (unlikely (buffer->in_error)) in _hb_ot_shape_normalize()
397 buffer->merge_out_clusters (starter, buffer->out_len); in _hb_ot_shape_normalize()
398 buffer->out_len--; /* Remove the second composable. */ in _hb_ot_shape_normalize()
400 buffer->out_info[starter].codepoint = composed; in _hb_ot_shape_normalize()
401 buffer->out_info[starter].glyph_index() = glyph; in _hb_ot_shape_normalize()
402 _hb_glyph_info_set_unicode_props (&buffer->out_info[starter], buffer); in _hb_ot_shape_normalize()
408 buffer->next_glyph (); in _hb_ot_shape_normalize()
410 if (_hb_glyph_info_get_modified_combining_class (&buffer->prev()) == 0) in _hb_ot_shape_normalize()
411 starter = buffer->out_len - 1; in _hb_ot_shape_normalize()
413 buffer->swap_buffers (); in _hb_ot_shape_normalize()