Lines Matching full:info
203 hb_glyph_info_t *info = buffer->info; in _next_syllable() local
206 unsigned int syllable = info[start].syllable(); in _next_syllable()
207 while (++start < count && syllable == info[start].syllable()) in _next_syllable()
242 _hb_glyph_info_set_unicode_props (hb_glyph_info_t *info, hb_buffer_t *buffer) in _hb_glyph_info_set_unicode_props() argument
245 unsigned int u = info->codepoint; in _hb_glyph_info_set_unicode_props()
277 props |= unicode->modified_combining_class (info->codepoint)<<8; in _hb_glyph_info_set_unicode_props()
291 info->unicode_props() = props; in _hb_glyph_info_set_unicode_props()
295 _hb_glyph_info_set_general_category (hb_glyph_info_t *info, in _hb_glyph_info_set_general_category() argument
299 …info->unicode_props() = (unsigned int) gen_cat | (info->unicode_props() & (0xFF & ~UPROPS_MASK_GEN… in _hb_glyph_info_set_general_category()
303 _hb_glyph_info_get_general_category (const hb_glyph_info_t *info) in _hb_glyph_info_get_general_category() argument
305 return (hb_unicode_general_category_t) (info->unicode_props() & UPROPS_MASK_GEN_CAT); in _hb_glyph_info_get_general_category()
309 _hb_glyph_info_is_unicode_mark (const hb_glyph_info_t *info) in _hb_glyph_info_is_unicode_mark() argument
311 return HB_UNICODE_GENERAL_CATEGORY_IS_MARK (info->unicode_props() & UPROPS_MASK_GEN_CAT); in _hb_glyph_info_is_unicode_mark()
314 _hb_glyph_info_set_modified_combining_class (hb_glyph_info_t *info, in _hb_glyph_info_set_modified_combining_class() argument
317 if (unlikely (!_hb_glyph_info_is_unicode_mark (info))) in _hb_glyph_info_set_modified_combining_class()
319 info->unicode_props() = (modified_class<<8) | (info->unicode_props() & 0xFF); in _hb_glyph_info_set_modified_combining_class()
322 _hb_glyph_info_get_modified_combining_class (const hb_glyph_info_t *info) in _hb_glyph_info_get_modified_combining_class() argument
324 return _hb_glyph_info_is_unicode_mark (info) ? info->unicode_props()>>8 : 0; in _hb_glyph_info_get_modified_combining_class()
328 _hb_glyph_info_is_unicode_space (const hb_glyph_info_t *info) in _hb_glyph_info_is_unicode_space() argument
330 return _hb_glyph_info_get_general_category (info) == in _hb_glyph_info_is_unicode_space()
334 _hb_glyph_info_set_unicode_space_fallback_type (hb_glyph_info_t *info, hb_unicode_funcs_t::space_t … in _hb_glyph_info_set_unicode_space_fallback_type() argument
336 if (unlikely (!_hb_glyph_info_is_unicode_space (info))) in _hb_glyph_info_set_unicode_space_fallback_type()
338 info->unicode_props() = (((unsigned int) s)<<8) | (info->unicode_props() & 0xFF); in _hb_glyph_info_set_unicode_space_fallback_type()
341 _hb_glyph_info_get_unicode_space_fallback_type (const hb_glyph_info_t *info) in _hb_glyph_info_get_unicode_space_fallback_type() argument
343 return _hb_glyph_info_is_unicode_space (info) ? in _hb_glyph_info_get_unicode_space_fallback_type()
344 (hb_unicode_funcs_t::space_t) (info->unicode_props()>>8) : in _hb_glyph_info_get_unicode_space_fallback_type()
348 static inline bool _hb_glyph_info_ligated (const hb_glyph_info_t *info);
351 _hb_glyph_info_is_default_ignorable (const hb_glyph_info_t *info) in _hb_glyph_info_is_default_ignorable() argument
353 return (info->unicode_props() & UPROPS_MASK_IGNORABLE) && !_hb_glyph_info_ligated (info); in _hb_glyph_info_is_default_ignorable()
357 _hb_glyph_info_is_zwnj (const hb_glyph_info_t *info) in _hb_glyph_info_is_zwnj() argument
359 return !!(info->unicode_props() & UPROPS_MASK_ZWNJ); in _hb_glyph_info_is_zwnj()
363 _hb_glyph_info_is_zwj (const hb_glyph_info_t *info) in _hb_glyph_info_is_zwj() argument
365 return !!(info->unicode_props() & UPROPS_MASK_ZWJ); in _hb_glyph_info_is_zwj()
369 _hb_glyph_info_is_joiner (const hb_glyph_info_t *info) in _hb_glyph_info_is_joiner() argument
371 return !!(info->unicode_props() & (UPROPS_MASK_ZWNJ | UPROPS_MASK_ZWJ)); in _hb_glyph_info_is_joiner()
375 _hb_glyph_info_flip_joiners (hb_glyph_info_t *info) in _hb_glyph_info_flip_joiners() argument
377 info->unicode_props() ^= UPROPS_MASK_ZWNJ | UPROPS_MASK_ZWJ; in _hb_glyph_info_flip_joiners()
406 _hb_glyph_info_clear_lig_props (hb_glyph_info_t *info) in _hb_glyph_info_clear_lig_props() argument
408 info->lig_props() = 0; in _hb_glyph_info_clear_lig_props()
414 _hb_glyph_info_set_lig_props_for_ligature (hb_glyph_info_t *info, in _hb_glyph_info_set_lig_props_for_ligature() argument
418 info->lig_props() = (lig_id << 5) | IS_LIG_BASE | (lig_num_comps & 0x0F); in _hb_glyph_info_set_lig_props_for_ligature()
422 _hb_glyph_info_set_lig_props_for_mark (hb_glyph_info_t *info, in _hb_glyph_info_set_lig_props_for_mark() argument
426 info->lig_props() = (lig_id << 5) | (lig_comp & 0x0F); in _hb_glyph_info_set_lig_props_for_mark()
430 _hb_glyph_info_set_lig_props_for_component (hb_glyph_info_t *info, unsigned int comp) in _hb_glyph_info_set_lig_props_for_component() argument
432 _hb_glyph_info_set_lig_props_for_mark (info, 0, comp); in _hb_glyph_info_set_lig_props_for_component()
436 _hb_glyph_info_get_lig_id (const hb_glyph_info_t *info) in _hb_glyph_info_get_lig_id() argument
438 return info->lig_props() >> 5; in _hb_glyph_info_get_lig_id()
442 _hb_glyph_info_ligated_internal (const hb_glyph_info_t *info) in _hb_glyph_info_ligated_internal() argument
444 return !!(info->lig_props() & IS_LIG_BASE); in _hb_glyph_info_ligated_internal()
448 _hb_glyph_info_get_lig_comp (const hb_glyph_info_t *info) in _hb_glyph_info_get_lig_comp() argument
450 if (_hb_glyph_info_ligated_internal (info)) in _hb_glyph_info_get_lig_comp()
453 return info->lig_props() & 0x0F; in _hb_glyph_info_get_lig_comp()
457 _hb_glyph_info_get_lig_num_comps (const hb_glyph_info_t *info) in _hb_glyph_info_get_lig_num_comps() argument
459 if ((info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE) && in _hb_glyph_info_get_lig_num_comps()
460 _hb_glyph_info_ligated_internal (info)) in _hb_glyph_info_get_lig_num_comps()
461 return info->lig_props() & 0x0F; in _hb_glyph_info_get_lig_num_comps()
477 _hb_glyph_info_set_glyph_props (hb_glyph_info_t *info, unsigned int props) in _hb_glyph_info_set_glyph_props() argument
479 info->glyph_props() = props; in _hb_glyph_info_set_glyph_props()
483 _hb_glyph_info_get_glyph_props (const hb_glyph_info_t *info) in _hb_glyph_info_get_glyph_props() argument
485 return info->glyph_props(); in _hb_glyph_info_get_glyph_props()
489 _hb_glyph_info_is_base_glyph (const hb_glyph_info_t *info) in _hb_glyph_info_is_base_glyph() argument
491 return !!(info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_BASE_GLYPH); in _hb_glyph_info_is_base_glyph()
495 _hb_glyph_info_is_ligature (const hb_glyph_info_t *info) in _hb_glyph_info_is_ligature() argument
497 return !!(info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE); in _hb_glyph_info_is_ligature()
501 _hb_glyph_info_is_mark (const hb_glyph_info_t *info) in _hb_glyph_info_is_mark() argument
503 return !!(info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_MARK); in _hb_glyph_info_is_mark()
507 _hb_glyph_info_substituted (const hb_glyph_info_t *info) in _hb_glyph_info_substituted() argument
509 return !!(info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_SUBSTITUTED); in _hb_glyph_info_substituted()
513 _hb_glyph_info_ligated (const hb_glyph_info_t *info) in _hb_glyph_info_ligated() argument
515 return !!(info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_LIGATED); in _hb_glyph_info_ligated()
519 _hb_glyph_info_multiplied (const hb_glyph_info_t *info) in _hb_glyph_info_multiplied() argument
521 return !!(info->glyph_props() & HB_OT_LAYOUT_GLYPH_PROPS_MULTIPLIED); in _hb_glyph_info_multiplied()
525 _hb_glyph_info_ligated_and_didnt_multiply (const hb_glyph_info_t *info) in _hb_glyph_info_ligated_and_didnt_multiply() argument
527 return _hb_glyph_info_ligated (info) && !_hb_glyph_info_multiplied (info); in _hb_glyph_info_ligated_and_didnt_multiply()
531 _hb_glyph_info_clear_ligated_and_multiplied (hb_glyph_info_t *info) in _hb_glyph_info_clear_ligated_and_multiplied() argument
533 info->glyph_props() &= ~(HB_OT_LAYOUT_GLYPH_PROPS_LIGATED | in _hb_glyph_info_clear_ligated_and_multiplied()
538 _hb_glyph_info_clear_substituted (hb_glyph_info_t *info) in _hb_glyph_info_clear_substituted() argument
540 info->glyph_props() &= ~(HB_OT_LAYOUT_GLYPH_PROPS_SUBSTITUTED); in _hb_glyph_info_clear_substituted()