Lines Matching full:major
71 int cmp (const page_map_t &o) const { return cmp (o.major); } in cmp()
72 int cmp (uint32_t o_major) const { return (int) o_major - (int) major; } in cmp()
74 uint32_t major; member
139 h = h * 31 + hb_hash (map.major) + hb_hash (page); in hash()
300 int m = (int) page_map[i].major; in del_pages()
392 if (page_map[a].major != other.page_map[b].major || in is_equal()
415 uint32_t spm = page_map[spi].major; in is_subset()
416 uint32_t lpm = larger_set.page_map[lpi].major; in is_subset()
506 if (page_map[a].major == other.page_map[b].major) in process_()
523 else if (page_map[a].major < other.page_map[b].major) in process_()
558 if (page_map.arrayZ[a - 1].major == other.page_map.arrayZ[b - 1].major) in process_()
567 else if (page_map.arrayZ[a - 1].major > other.page_map.arrayZ[b - 1].major) in process_()
582 page_map.arrayZ[count].major = other.page_map.arrayZ[b].major; in process_()
600 page_map.arrayZ[count].major = other.page_map.arrayZ[b].major; in process_()
630 unsigned int major = get_major (*codepoint); in next() local
633 if (unlikely (i >= page_map.length || page_map_array[i].major != major)) in next()
635 page_map.bfind (major, &i, HB_NOT_FOUND_STORE_CLOSEST); in next()
645 if (likely (current.major == major)) in next()
649 *codepoint += current.major * page_t::PAGE_BITS; in next()
661 *codepoint = current.major * page_t::PAGE_BITS + m; in next()
679 if (i < page_map.length && page_map.arrayZ[i].major == map.major) in previous()
683 *codepoint += page_map.arrayZ[i].major * page_t::PAGE_BITS; in previous()
693 *codepoint = page_map.arrayZ[i].major * page_t::PAGE_BITS + m; in previous()
747 unsigned int major = get_major (codepoint); in next_many() local
749 if (unlikely (i >= page_map.length || page_map_array[i].major != major)) in next_many()
751 page_map.bfind (major, &i, HB_NOT_FOUND_STORE_CLOSEST); in next_many()
768 uint32_t base = major_start (page_map[i].major); in next_many()
788 unsigned int major = get_major (codepoint); in next_many_inverted() local
790 if (unlikely (i >= page_map.length || page_map_array[i].major != major)) in next_many_inverted()
792 page_map.bfind(major, &i, HB_NOT_FOUND_STORE_CLOSEST); in next_many_inverted()
817 uint32_t base = major_start (page_map[i].major); in next_many_inverted()
853 return map.major * page_t::PAGE_BITS + page.get_min (); in get_min()
866 return map.major * page_t::PAGE_BITS + page.get_max (); in get_max()
912 unsigned major = get_major (g); in page_for() local
916 * major==0, which we can't distinguish from an actually major==0 page... */ in page_for()
921 if (cached_page.major == major) in page_for()
925 page_map_t map = {major, pages.length}; in page_for()
946 unsigned major = get_major (g); in page_for() local
950 * major==0, which we can't distinguish from an actually major==0 page... */ in page_for()
955 if (cached_page.major == major) in page_for()
959 page_map_t key = {major}; in page_for()
978 hb_codepoint_t major_start (unsigned int major) const { return major << page_t::PAGE_BITS_LOG_2; } in major_start()