Coverage Report

Created: 2026-04-09 11:41

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/work/workdir/UnpackedTarball/harfbuzz/src/hb-array.hh
Line
Count
Source
1
/*
2
 * Copyright © 2018  Google, Inc.
3
 *
4
 *  This is part of HarfBuzz, a text shaping library.
5
 *
6
 * Permission is hereby granted, without written agreement and without
7
 * license or royalty fees, to use, copy, modify, and distribute this
8
 * software and its documentation for any purpose, provided that the
9
 * above copyright notice and the following two paragraphs appear in
10
 * all copies of this software.
11
 *
12
 * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13
 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14
 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15
 * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16
 * DAMAGE.
17
 *
18
 * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19
 * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20
 * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
21
 * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22
 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23
 *
24
 * Google Author(s): Behdad Esfahbod
25
 */
26
27
#ifndef HB_ARRAY_HH
28
#define HB_ARRAY_HH
29
30
#include "hb.hh"
31
#include "hb-algs.hh"
32
#include "hb-iter.hh"
33
#include "hb-null.hh"
34
35
#include <algorithm>
36
37
38
template <typename Type>
39
struct hb_sorted_array_t;
40
41
enum hb_not_found_t
42
{
43
  HB_NOT_FOUND_DONT_STORE,
44
  HB_NOT_FOUND_STORE,
45
  HB_NOT_FOUND_STORE_CLOSEST,
46
};
47
48
49
template <typename Type>
50
struct hb_array_t : hb_iter_with_fallback_t<hb_array_t<Type>, Type&>
51
{
52
  static constexpr bool realloc_move = true;
53
54
  /*
55
   * Constructors.
56
   */
57
1.48M
  hb_array_t () = default;
hb_array_t<char const>::hb_array_t()
Line
Count
Source
57
1.48M
  hb_array_t () = default;
Unexecuted instantiation: hb_array_t<unsigned char const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::hb_array_t()
Unexecuted instantiation: hb_array_t<int>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::hb_array_t()
Unexecuted instantiation: hb_array_t<unsigned int const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::Tag const>::hb_array_t()
Unexecuted instantiation: hb_array_t<char>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::hb_array_t()
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned char, 1u> const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::Index const>::hb_array_t()
Unexecuted instantiation: hb_array_t<int const>::hb_array_t()
58
  hb_array_t (const hb_array_t&) = default;
59
  ~hb_array_t () = default;
60
  hb_array_t& operator= (const hb_array_t&) = default;
61
  hb_array_t& operator= (hb_array_t&&) = default;
62
63
1.14G
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const>::hb_array_t(OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::hb_array_t(AAT::FeatureName const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_type_t>::hb_array_t(hb_aat_layout_feature_type_t*, unsigned int)
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::hb_array_t(AAT::SettingName const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_selector_info_t>::hb_array_t(hb_aat_layout_feature_selector_info_t*, unsigned int)
hb_array_t<char const>::hb_array_t(char const*, unsigned int)
Line
Count
Source
63
776M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::HBGlyphID16 const>::hb_array_t(OT::HBGlyphID16 const*, unsigned int)
Line
Count
Source
63
3.34M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_aat_feature_mapping_t const>::hb_array_t(hb_aat_feature_mapping_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<AAT::Feature const>::hb_array_t(AAT::Feature const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_info_t>::hb_array_t(hb_aat_map_builder_t::feature_info_t*, unsigned int)
hb_array_t<hb_bit_set_t::page_map_t>::hb_array_t(hb_bit_set_t::page_map_t*, unsigned int)
Line
Count
Source
63
30.5M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t>::hb_array_t(hb_aat_map_t::range_flags_t*, unsigned int)
hb_array_t<hb_glyph_info_t>::hb_array_t(hb_glyph_info_t*, unsigned int)
Line
Count
Source
63
76.5M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_glyph_position_t>::hb_array_t(hb_glyph_position_t*, unsigned int)
Line
Count
Source
63
1.58M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::hb_array_t(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const*, unsigned int)
Line
Count
Source
63
2.94M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<AAT::KernPair const>::hb_array_t(AAT::KernPair const*, unsigned int)
Line
Count
Source
63
152k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_event_t>::hb_array_t(hb_aat_map_builder_t::feature_event_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_user_data_array_t::hb_user_data_item_t>::hb_array_t(hb_user_data_array_t::hb_user_data_item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::ResourceRecord const>::hb_array_t(OT::ResourceRecord const*, unsigned int)
hb_array_t<OT::TableRecord const>::hb_array_t(OT::TableRecord const*, unsigned int)
Line
Count
Source
63
32.0M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<unsigned int>::hb_array_t(unsigned int*, unsigned int)
Line
Count
Source
63
135k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::VariationSelectorRecord const>::hb_array_t(OT::VariationSelectorRecord const*, unsigned int)
Line
Count
Source
63
32.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::UVSMapping const>::hb_array_t(OT::UVSMapping const*, unsigned int)
Line
Count
Source
63
26.2k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::EncodingRecord const>::hb_array_t(OT::EncodingRecord const*, unsigned int)
Line
Count
Source
63
81.6k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::CmapSubtableLongGroup const>::hb_array_t(OT::CmapSubtableLongGroup const*, unsigned int)
hb_array_t<hb_serialize_context_t::object_t*>::hb_array_t(hb_serialize_context_t::object_t**, unsigned int)
Line
Count
Source
63
93.7k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_serialize_context_t::object_t* const>::hb_array_t(hb_serialize_context_t::object_t* const*, unsigned int)
Line
Count
Source
63
93.7k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t*, unsigned int)
Line
Count
Source
63
31.2k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> >::hb_array_t(hb_pair_t<unsigned int, face_table_info_t>*, unsigned int)
Line
Count
Source
63
12.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::TableRecord>::hb_array_t(OT::TableRecord*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::hb_array_t(hb_pair_t<unsigned int, face_table_info_t> const*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*>::hb_array_t(hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t**, unsigned int)
Line
Count
Source
63
43.7k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::hb_array_t(hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const*, unsigned int)
Line
Count
Source
63
43.7k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<int>::hb_array_t(int*, unsigned int)
Line
Count
Source
63
967k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::AxisRecord const>::hb_array_t(OT::AxisRecord const*, unsigned int)
Line
Count
Source
63
248k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, unsigned int, true>::item_t*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::Index const>::hb_array_t(OT::Index const*, unsigned int)
Line
Count
Source
63
121k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::hb_array_t(OT::NumType<true, unsigned int, 4u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::BaseGlyphPaintRecord const>::hb_array_t(OT::BaseGlyphPaintRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::BaseGlyphRecord const>::hb_array_t(OT::BaseGlyphRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::hb_array_t(OT::LayerRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_color_layer_t>::hb_array_t(hb_ot_color_layer_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::SVGDocumentIndexEntry const>::hb_array_t(OT::SVGDocumentIndexEntry const*, unsigned int)
hb_array_t<OT::UnicodeValueRange const>::hb_array_t(OT::UnicodeValueRange const*, unsigned int)
Line
Count
Source
63
26.2k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<contour_point_t>::hb_array_t(contour_point_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::hb_array_t(OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<contour_point_t const>::hb_array_t(contour_point_t const*, unsigned int)
hb_array_t<int const>::hb_array_t(int const*, unsigned int)
Line
Count
Source
63
63.1M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::hb_array_t(OT::VertOriginMetric const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned char const>::hb_array_t(unsigned char const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::ClipRecord const>::hb_array_t(OT::ClipRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned short>::hb_array_t(unsigned short*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::cff1::accelerator_t::gname_t>::hb_array_t(OT::cff1::accelerator_t::gname_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_outline_point_t>::hb_array_t(hb_outline_point_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_outline_point_t const>::hb_array_t(hb_outline_point_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<float>::hb_array_t(float*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NumType<true, short, 2u> const>::hb_array_t(OT::NumType<true, short, 2u> const*, unsigned int)
hb_array_t<OT::NumType<true, unsigned char, 1u> const>::hb_array_t(OT::NumType<true, unsigned char, 1u> const*, unsigned int)
Line
Count
Source
63
87.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::hb_array_t(OT::NumType<true, unsigned short, 2u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
hb_array_t<OT::Record<OT::Script> const>::hb_array_t(OT::Record<OT::Script> const*, unsigned int)
Line
Count
Source
63
49.6k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::Record<OT::Feature> const>::hb_array_t(OT::Record<OT::Feature> const*, unsigned int)
hb_array_t<OT::Record<OT::LangSys> const>::hb_array_t(OT::Record<OT::LangSys> const*, unsigned int)
Line
Count
Source
63
49.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::FeatureTableSubstitutionRecord const>::hb_array_t(OT::FeatureTableSubstitutionRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Line
Count
Source
63
815
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Line
Count
Source
63
75
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_set_t>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb::unique_ptr<hb_set_t>, false>::item_t*, unsigned int)
hb_array_t<hb_bit_page_t>::hb_array_t(hb_bit_page_t*, unsigned int)
Line
Count
Source
63
68.7k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_bit_page_t const>::hb_array_t(hb_bit_page_t const*, unsigned int)
Line
Count
Source
63
68.7k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb_set_t, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 3u> const>::hb_array_t(OT::NumType<true, unsigned int, 3u> const*, unsigned int)
hb_array_t<OT::BaseScriptRecord const>::hb_array_t(OT::BaseScriptRecord const*, unsigned int)
Line
Count
Source
63
416k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::BaseLangSysRecord const>::hb_array_t(OT::BaseLangSysRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::FeatMinMaxRecord const>::hb_array_t(OT::FeatMinMaxRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Tag const>::hb_array_t(OT::Tag const*, unsigned int)
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t>::hb_array_t(OT::hb_accelerate_subtables_context_t::hb_applicable_t*, unsigned int)
Line
Count
Source
63
975
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::hb_array_t(OT::hb_accelerate_subtables_context_t::hb_applicable_t const*, unsigned int)
Line
Count
Source
63
157M
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::NameRecord const>::hb_array_t(OT::NameRecord const*, unsigned int)
Line
Count
Source
63
19.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_ot_name_entry_t>::hb_array_t(hb_ot_name_entry_t*, unsigned int)
Line
Count
Source
63
254
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_ot_map_t::feature_map_t>::hb_array_t(hb_ot_map_t::feature_map_t*, unsigned int)
Line
Count
Source
63
130k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<LangTag const>::hb_array_t(LangTag const*, unsigned int)
Line
Count
Source
63
1.81k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<LangTagRange const>::hb_array_t(LangTagRange const*, unsigned int)
Line
Count
Source
63
985
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<sid_to_gid_t const>::hb_array_t(sid_to_gid_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::number_t const>::hb_array_t(CFF::number_t const*, unsigned int)
hb_array_t<hb_ot_map_builder_t::feature_info_t>::hb_array_t(hb_ot_map_builder_t::feature_info_t*, unsigned int)
Line
Count
Source
63
10.3k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_ot_map_t::lookup_map_t>::hb_array_t(hb_ot_map_t::lookup_map_t*, unsigned int)
Line
Count
Source
63
4.35k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_ot_map_t::feature_map_t const>::hb_array_t(hb_ot_map_t::feature_map_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >::hb_array_t(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::hb_array_t(OT::HBGlyphID16*, unsigned int)
hb_array_t<unsigned int const>::hb_array_t(unsigned int const*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t const>::hb_array_t(hb_ot_map_t::lookup_map_t const*, unsigned int)
hb_array_t<hb::shared_ptr<hb_set_t> >::hb_array_t(hb::shared_ptr<hb_set_t>*, unsigned int)
Line
Count
Source
63
12.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_subset_sets_t const>::hb_array_t(hb_subset_sets_t const*, unsigned int)
hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, Triple, false>::item_t*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_blob_t>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb::unique_ptr<hb_blob_t>, false>::item_t*, unsigned int)
Line
Count
Source
63
12.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::hb_array_t(hb_serialize_context_t::object_t::link_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t const>::hb_array_t(hb_serialize_context_t::object_t::link_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, unsigned int, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::hb_array_t(OT::Layout::GPOS_impl::MarkRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<lookup_size_t>::hb_array_t(lookup_size_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const>::hb_array_t(OT::StatAxisRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const>::hb_array_t(OT::AxisValueRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_array_t<char const>, unsigned int, true>::item_t>::hb_array_t(hb_hashmap_t<hb_array_t<char const>, unsigned int, true>::item_t*, unsigned int)
hb_array_t<hb_pair_t<unsigned int, unsigned int> >::hb_array_t(hb_pair_t<unsigned int, unsigned int>*, unsigned int)
Line
Count
Source
63
37.4k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::hb_array_t(OT::MathGlyphPartRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::hb_array_t(OT::MathGlyphVariantRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NoVariable<OT::ColorStop> const>::hb_array_t(OT::NoVariable<OT::ColorStop> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Variable<OT::ColorStop> const>::hb_array_t(OT::Variable<OT::ColorStop> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const>::hb_array_t(OT::Layout::GPOS_impl::EntryExitRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb::shared_ptr<hb_map_t>, unsigned int, false>::item_t>::hb_array_t(hb_hashmap_t<hb::shared_ptr<hb_map_t>, unsigned int, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::shared_ptr<hb_set_t>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb::shared_ptr<hb_set_t>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<void const*, void const*>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb_pair_t<void const*, void const*>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, TripleDistances, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, TripleDistances, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, contour_point_vector_t, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, contour_point_vector_t, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<char>::hb_array_t(char*, unsigned int)
Unexecuted instantiation: hb_array_t<bool>::hb_array_t(bool*, unsigned int)
Unexecuted instantiation: hb_array_t<bool const>::hb_array_t(bool const*, unsigned int)
Unexecuted instantiation: hb_array_t<float const>::hb_array_t(float const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned char>::hb_array_t(unsigned char*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::hb_array_t(OT::HBFixed<OT::NumType<true, short, 2u>, 14u>*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::delta_row_encoding_t>::hb_array_t(OT::delta_row_encoding_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const*>::hb_array_t(hb_vector_t<int, false> const**, unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::hb_array_t(hb_vector_t<int, false> const* const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t>::hb_array_t(hb_inc_bimap_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t const>::hb_array_t(hb_inc_bimap_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LookupRecord const>::hb_array_t(OT::LookupRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathValueRecord const>::hb_array_t(OT::MathValueRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathKernInfoRecord const>::hb_array_t(OT::MathKernInfoRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::DeltaSetIndexMap const*>::hb_array_t(OT::DeltaSetIndexMap const**, unsigned int)
Unexecuted instantiation: hb_array_t<OT::index_map_subset_plan_t>::hb_array_t(OT::index_map_subset_plan_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_array_t<char const>, false>::item_t>::hb_array_t(hb_hashmap_t<unsigned int, hb_array_t<char const>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t>::hb_array_t(hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_pair_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int> >::hb_array_t(hb_pair_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int>*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::hb_array_t(hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisValueMap const>::hb_array_t(OT::AxisValueMap const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisValueMap>::hb_array_t(OT::AxisValueMap*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LayerRecord>::hb_array_t(OT::LayerRecord*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const>::hb_array_t(OT::BitmapSizeTable const*, unsigned int)
hb_array_t<OT::glyf_impl::SubsetGlyph>::hb_array_t(OT::glyf_impl::SubsetGlyph*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::glyf_impl::SubsetGlyph const>::hb_array_t(OT::glyf_impl::SubsetGlyph const*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
hb_array_t<OT::NameRecord>::hb_array_t(OT::NameRecord*, unsigned int)
Line
Count
Source
63
6.24k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::hb_array_t(hb_pair_t<unsigned int, unsigned int> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord>::hb_array_t(OT::VariationSelectorRecord*, unsigned int)
hb_array_t<OT::OS2Range const>::hb_array_t(OT::OS2Range const*, unsigned int)
Line
Count
Source
63
199k
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> >::hb_array_t(hb_vector_t<unsigned char, false>*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> const>::hb_array_t(hb_vector_t<unsigned char, false> const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> >::hb_array_t(hb_array_t<unsigned char const>*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> const>::hb_array_t(hb_array_t<unsigned char const> const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_op_t>::hb_array_t(CFF::parsed_cs_op_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_op_t const>::hb_array_t(CFF::parsed_cs_op_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_t>::hb_array_t(CFF::parsed_cs_str_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_t const>::hb_array_t(CFF::parsed_cs_str_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_vec_t>::hb_array_t(CFF::parsed_cs_str_vec_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_vec_t const>::hb_array_t(CFF::parsed_cs_str_vec_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t>::hb_array_t(CFF::cff1_font_dict_values_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t const>::hb_array_t(CFF::cff1_font_dict_values_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t>::hb_array_t(CFF::cff1_font_dict_values_mod_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t const>::hb_array_t(CFF::cff1_font_dict_values_mod_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::number_t>::hb_array_t(CFF::number_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::blend_arg_t const>::hb_array_t(CFF::blend_arg_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t>::hb_array_t(CFF::cff2_font_dict_values_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t const>::hb_array_t(CFF::cff2_font_dict_values_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::table_info_t>::hb_array_t(CFF::table_info_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::table_info_t const>::hb_array_t(CFF::table_info_t const*, unsigned int)
64
  template <unsigned int length_>
65
214k
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
Unexecuted instantiation: hb_array_t<hb_aat_feature_mapping_t const>::hb_array_t<78u>(hb_aat_feature_mapping_t const (&) [78u])
hb_array_t<LangTag const>::hb_array_t<204u>(LangTag const (&) [204u])
Line
Count
Source
65
687
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
hb_array_t<LangTag const>::hb_array_t<779u>(LangTag const (&) [779u])
Line
Count
Source
65
1.13k
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
hb_array_t<LangTagRange const>::hb_array_t<137u>(LangTagRange const (&) [137u])
Line
Count
Source
65
985
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
Unexecuted instantiation: hb_array_t<sid_to_gid_t const>::hb_array_t<165u>(sid_to_gid_t const (&) [165u])
Unexecuted instantiation: hb_array_t<sid_to_gid_t const>::hb_array_t<86u>(sid_to_gid_t const (&) [86u])
Unexecuted instantiation: hb_array_t<CFF::number_t const>::hb_array_t<513u>(CFF::number_t const (&) [513u])
hb_array_t<hb::shared_ptr<hb_set_t> >::hb_array_t<8u>(hb::shared_ptr<hb_set_t> (&) [8u])
Line
Count
Source
65
12.4k
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
Unexecuted instantiation: hb_array_t<unsigned int>::hb_array_t<50u>(unsigned int (&) [50u])
hb_array_t<OT::OS2Range const>::hb_array_t<169u>(OT::OS2Range const (&) [169u])
Line
Count
Source
65
199k
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
Unexecuted instantiation: hb_array_t<CFF::blend_arg_t const>::hb_array_t<513u>(CFF::blend_arg_t const (&) [513u])
66
67
  template <typename U,
68
      hb_enable_if (hb_is_cr_convertible(U, Type))>
69
  constexpr hb_array_t (const hb_array_t<U> &o) :
70
30.6M
    hb_iter_with_fallback_t<hb_array_t, Type&> (),
71
30.6M
    arrayZ (o.arrayZ), length (o.length), backwards_length (o.backwards_length) {}
Unexecuted instantiation: _ZN10hb_array_tIKN20hb_aat_map_builder_t14feature_info_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERKS_IS6_E
_ZN10hb_array_tIKN12hb_bit_set_t10page_map_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERKS_IS6_E
Line
Count
Source
70
30.5M
    hb_iter_with_fallback_t<hb_array_t, Type&> (),
71
30.5M
    arrayZ (o.arrayZ), length (o.length), backwards_length (o.backwards_length) {}
Unexecuted instantiation: _ZN10hb_array_tIKN12hb_aat_map_t13range_flags_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERKS_IS6_E
_ZN10hb_array_tIKN11hb_ot_map_t13feature_map_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERKS_IS6_E
Line
Count
Source
70
128k
    hb_iter_with_fallback_t<hb_array_t, Type&> (),
71
128k
    arrayZ (o.arrayZ), length (o.length), backwards_length (o.backwards_length) {}
Unexecuted instantiation: _ZN10hb_array_tIKN2OT11HBGlyphID16EEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERKS_IS6_E
_ZN10hb_array_tIK9hb_pair_tIjjEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERKS_IS6_E
Line
Count
Source
70
31.2k
    hb_iter_with_fallback_t<hb_array_t, Type&> (),
71
31.2k
    arrayZ (o.arrayZ), length (o.length), backwards_length (o.backwards_length) {}
Unexecuted instantiation: _ZN10hb_array_tIKjEC2IjTnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S0_EE5valueEvE4typeELPv0EEERKS_IS4_E
72
  template <typename U,
73
      hb_enable_if (hb_is_cr_convertible(U, Type))>
74
  hb_array_t& operator = (const hb_array_t<U> &o)
75
0
  { arrayZ = o.arrayZ; length = o.length; backwards_length = o.backwards_length; return *this; }
76
77
  /*
78
   * Iterator implementation.
79
   */
80
  typedef Type& __item_t__;
81
  static constexpr bool is_random_access_iterator = true;
82
  static constexpr bool has_fast_len = true;
83
  Type& __item__ () const
84
163M
  {
85
163M
    if (unlikely (!length)) return CrapOrNull (Type);
86
163M
    return *arrayZ;
87
163M
  }
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_type_t>::__item__() const
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_selector_info_t>::__item__() const
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::__item__() const
hb_array_t<unsigned int>::__item__() const
Line
Count
Source
84
582k
  {
85
582k
    if (unlikely (!length)) return CrapOrNull (Type);
86
582k
    return *arrayZ;
87
582k
  }
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::__item__() const
Line
Count
Source
84
43.7k
  {
85
43.7k
    if (unlikely (!length)) return CrapOrNull (Type);
86
43.7k
    return *arrayZ;
87
43.7k
  }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__item__() const
hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__item__() const
Line
Count
Source
84
660k
  {
85
660k
    if (unlikely (!length)) return CrapOrNull (Type);
86
660k
    return *arrayZ;
87
660k
  }
hb_array_t<unsigned int const>::__item__() const
Line
Count
Source
84
218k
  {
85
218k
    if (unlikely (!length)) return CrapOrNull (Type);
86
218k
    return *arrayZ;
87
218k
  }
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::__item__() const
hb_array_t<OT::Index const>::__item__() const
Line
Count
Source
84
54.9k
  {
85
54.9k
    if (unlikely (!length)) return CrapOrNull (Type);
86
54.9k
    return *arrayZ;
87
54.9k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 3u> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::Feature> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::LangSys> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::Script> const>::__item__() const
hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__item__() const
Line
Count
Source
84
655k
  {
85
655k
    if (unlikely (!length)) return CrapOrNull (Type);
86
655k
    return *arrayZ;
87
655k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::FeatureTableSubstitutionRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<int>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__item__() const
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::__item__() const
Line
Count
Source
84
158M
  {
85
158M
    if (unlikely (!length)) return CrapOrNull (Type);
86
158M
    return *arrayZ;
87
158M
  }
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__item__() const
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Line
Count
Source
84
815
  {
85
815
    if (unlikely (!length)) return CrapOrNull (Type);
86
815
    return *arrayZ;
87
815
  }
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Line
Count
Source
84
7.29k
  {
85
7.29k
    if (unlikely (!length)) return CrapOrNull (Type);
86
7.29k
    return *arrayZ;
87
7.29k
  }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
hb_array_t<OT::TableRecord const>::__item__() const
Line
Count
Source
84
356k
  {
85
356k
    if (unlikely (!length)) return CrapOrNull (Type);
86
356k
    return *arrayZ;
87
356k
  }
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__item__() const
hb_array_t<OT::EncodingRecord const>::__item__() const
Line
Count
Source
84
18.7k
  {
85
18.7k
    if (unlikely (!length)) return CrapOrNull (Type);
86
18.7k
    return *arrayZ;
87
18.7k
  }
hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__item__() const
Line
Count
Source
84
1.39M
  {
85
1.39M
    if (unlikely (!length)) return CrapOrNull (Type);
86
1.39M
    return *arrayZ;
87
1.39M
  }
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__item__() const
Line
Count
Source
84
81.2k
  {
85
81.2k
    if (unlikely (!length)) return CrapOrNull (Type);
86
81.2k
    return *arrayZ;
87
81.2k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_ot_color_layer_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<int const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::DataMap const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_ot_meta_tag_t>::__item__() const
hb_array_t<OT::NameRecord const>::__item__() const
Line
Count
Source
84
524k
  {
85
524k
    if (unlikely (!length)) return CrapOrNull (Type);
86
524k
    return *arrayZ;
87
524k
  }
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_outline_point_t const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfLangSys> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfScript> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::__item__() const
Unexecuted instantiation: hb_array_t<hb_glyph_info_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<char const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::MathValueRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::MathKernInfoRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_part_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_variant_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t const>::__item__() const
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t const>::__item__() const
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t const>::__item__() const
Unexecuted instantiation: hb_array_t<CFF::table_info_t const>::__item__() const
88
  Type& __item_at__ (unsigned i) const
89
42.1k
  {
90
42.1k
    if (unlikely (i >= length)) return CrapOrNull (Type);
91
42.1k
    return arrayZ[i];
92
42.1k
  }
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<int const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<bool const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<unsigned int const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::ResourceRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::Index const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::DeltaSetIndexMap const*>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::index_map_subset_plan_t>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<contour_point_t>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<unsigned int>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<unsigned char const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned char, 1u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, short, 2u> const>::__item_at__(unsigned int) const
hb_array_t<OT::NameRecord const>::__item_at__(unsigned int) const
Line
Count
Source
89
35.8k
  {
90
35.8k
    if (unlikely (i >= length)) return CrapOrNull (Type);
91
35.8k
    return arrayZ[i];
92
35.8k
  }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::feature_map_t const>::__item_at__(unsigned int) const
hb_array_t<hb::shared_ptr<hb_set_t> >::__item_at__(unsigned int) const
Line
Count
Source
89
6.24k
  {
90
6.24k
    if (unlikely (i >= length)) return CrapOrNull (Type);
91
6.24k
    return arrayZ[i];
92
6.24k
  }
93
  void __next__ ()
94
161M
  {
95
161M
    if (unlikely (!length))
96
43.7k
      return;
97
161M
    length--;
98
161M
    backwards_length++;
99
161M
    arrayZ++;
100
161M
  }
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_type_t>::__next__()
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::__next__()
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_selector_info_t>::__next__()
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__next__()
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::__next__()
hb_array_t<unsigned int>::__next__()
Line
Count
Source
94
582k
  {
95
582k
    if (unlikely (!length))
96
0
      return;
97
582k
    length--;
98
582k
    backwards_length++;
99
582k
    arrayZ++;
100
582k
  }
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::__next__()
Line
Count
Source
94
43.7k
  {
95
43.7k
    if (unlikely (!length))
96
0
      return;
97
43.7k
    length--;
98
43.7k
    backwards_length++;
99
43.7k
    arrayZ++;
100
43.7k
  }
hb_array_t<hb_serialize_context_t::object_t* const>::__next__()
Line
Count
Source
94
93.7k
  {
95
93.7k
    if (unlikely (!length))
96
43.7k
      return;
97
49.9k
    length--;
98
49.9k
    backwards_length++;
99
49.9k
    arrayZ++;
100
49.9k
  }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__next__()
hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__next__()
Line
Count
Source
94
455k
  {
95
455k
    if (unlikely (!length))
96
0
      return;
97
455k
    length--;
98
455k
    backwards_length++;
99
455k
    arrayZ++;
100
455k
  }
hb_array_t<unsigned int const>::__next__()
Line
Count
Source
94
218k
  {
95
218k
    if (unlikely (!length))
96
0
      return;
97
218k
    length--;
98
218k
    backwards_length++;
99
218k
    arrayZ++;
100
218k
  }
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::__next__()
hb_array_t<OT::Index const>::__next__()
Line
Count
Source
94
54.9k
  {
95
54.9k
    if (unlikely (!length))
96
0
      return;
97
54.9k
    length--;
98
54.9k
    backwards_length++;
99
54.9k
    arrayZ++;
100
54.9k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 3u> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Record<OT::Feature> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Record<OT::LangSys> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Record<OT::Script> const>::__next__()
hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__next__()
Line
Count
Source
94
655k
  {
95
655k
    if (unlikely (!length))
96
0
      return;
97
655k
    length--;
98
655k
    backwards_length++;
99
655k
    arrayZ++;
100
655k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::FeatureTableSubstitutionRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<int>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__next__()
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::__next__()
Line
Count
Source
94
157M
  {
95
157M
    if (unlikely (!length))
96
0
      return;
97
157M
    length--;
98
157M
    backwards_length++;
99
157M
    arrayZ++;
100
157M
  }
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__next__()
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Line
Count
Source
94
815
  {
95
815
    if (unlikely (!length))
96
0
      return;
97
815
    length--;
98
815
    backwards_length++;
99
815
    arrayZ++;
100
815
  }
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Line
Count
Source
94
7.29k
  {
95
7.29k
    if (unlikely (!length))
96
0
      return;
97
7.29k
    length--;
98
7.29k
    backwards_length++;
99
7.29k
    arrayZ++;
100
7.29k
  }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
hb_array_t<OT::TableRecord const>::__next__()
Line
Count
Source
94
356k
  {
95
356k
    if (unlikely (!length))
96
0
      return;
97
356k
    length--;
98
356k
    backwards_length++;
99
356k
    arrayZ++;
100
356k
  }
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__next__()
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__next__()
hb_array_t<OT::EncodingRecord const>::__next__()
Line
Count
Source
94
18.7k
  {
95
18.7k
    if (unlikely (!length))
96
0
      return;
97
18.7k
    length--;
98
18.7k
    backwards_length++;
99
18.7k
    arrayZ++;
100
18.7k
  }
hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__next__()
Line
Count
Source
94
999k
  {
95
999k
    if (unlikely (!length))
96
0
      return;
97
999k
    length--;
98
999k
    backwards_length++;
99
999k
    arrayZ++;
100
999k
  }
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__next__()
Line
Count
Source
94
81.2k
  {
95
81.2k
    if (unlikely (!length))
96
0
      return;
97
81.2k
    length--;
98
81.2k
    backwards_length++;
99
81.2k
    arrayZ++;
100
81.2k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::__next__()
Unexecuted instantiation: hb_array_t<hb_ot_color_layer_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<int const>::__next__()
Unexecuted instantiation: hb_array_t<OT::DataMap const>::__next__()
Unexecuted instantiation: hb_array_t<hb_ot_meta_tag_t>::__next__()
hb_array_t<OT::NameRecord const>::__next__()
Line
Count
Source
94
281k
  {
95
281k
    if (unlikely (!length))
96
0
      return;
97
281k
    length--;
98
281k
    backwards_length++;
99
281k
    arrayZ++;
100
281k
  }
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__next__()
Unexecuted instantiation: hb_array_t<hb_outline_point_t const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfLangSys> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfScript> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::__next__()
Unexecuted instantiation: hb_array_t<hb_glyph_info_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<char const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::MathValueRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::MathKernInfoRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_part_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_variant_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t const>::__next__()
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t const>::__next__()
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t const>::__next__()
Unexecuted instantiation: hb_array_t<CFF::table_info_t const>::__next__()
101
  void __forward__ (unsigned n)
102
31.2k
  {
103
31.2k
    if (unlikely (n > length))
104
0
      n = length;
105
31.2k
    length -= n;
106
31.2k
    backwards_length += n;
107
31.2k
    arrayZ += n;
108
31.2k
  }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::Index const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::Record<OT::LangSys> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::Record<OT::Script> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<char>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<unsigned int const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__forward__(unsigned int)
hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__forward__(unsigned int)
Line
Count
Source
102
18.7k
  {
103
18.7k
    if (unlikely (n > length))
104
0
      n = length;
105
18.7k
    length -= n;
106
18.7k
    backwards_length += n;
107
18.7k
    arrayZ += n;
108
18.7k
  }
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__forward__(unsigned int)
Line
Count
Source
102
6.24k
  {
103
6.24k
    if (unlikely (n > length))
104
0
      n = length;
105
6.24k
    length -= n;
106
6.24k
    backwards_length += n;
107
6.24k
    arrayZ += n;
108
6.24k
  }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>::__forward__(unsigned int)
hb_array_t<OT::NameRecord const>::__forward__(unsigned int)
Line
Count
Source
102
6.24k
  {
103
6.24k
    if (unlikely (n > length))
104
0
      n = length;
105
6.24k
    length -= n;
106
6.24k
    backwards_length += n;
107
6.24k
    arrayZ += n;
108
6.24k
  }
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_part_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_variant_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::__forward__(unsigned int)
109
  void __prev__ ()
110
0
  {
111
0
    if (unlikely (!backwards_length))
112
0
      return;
113
0
    length++;
114
0
    backwards_length--;
115
0
    arrayZ--;
116
0
  }
117
  void __rewind__ (unsigned n)
118
0
  {
119
0
    if (unlikely (n > backwards_length))
120
0
      n = backwards_length;
121
0
    length += n;
122
0
    backwards_length -= n;
123
0
    arrayZ -= n;
124
0
  }
125
319M
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::__len__() const
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__len__() const
hb_array_t<OT::HBGlyphID16 const>::__len__() const
Line
Count
Source
125
1.38k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::__len__() const
hb_array_t<unsigned int>::__len__() const
Line
Count
Source
125
114k
  unsigned __len__ () const { return length; }
hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__len__() const
Line
Count
Source
125
673k
  unsigned __len__ () const { return length; }
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::__len__() const
Line
Count
Source
125
87.4k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<unsigned int const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::__len__() const
hb_array_t<OT::Index const>::__len__() const
Line
Count
Source
125
115k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 3u> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::Feature> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::LangSys> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::Script> const>::__len__() const
hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__len__() const
Line
Count
Source
125
449k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::__len__() const
hb_array_t<int const>::__len__() const
Line
Count
Source
125
736k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::FeatureTableSubstitutionRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<float const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__len__() const
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::__len__() const
Line
Count
Source
125
314M
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Line
Count
Source
125
890
  unsigned __len__ () const { return length; }
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Line
Count
Source
125
8.11k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
hb_array_t<OT::TableRecord const>::__len__() const
Line
Count
Source
125
387k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__len__() const
hb_array_t<OT::EncodingRecord const>::__len__() const
Line
Count
Source
125
31.2k
  unsigned __len__ () const { return length; }
hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__len__() const
Line
Count
Source
125
1.23M
  unsigned __len__ () const { return length; }
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__len__() const
Line
Count
Source
125
12.4k
  unsigned __len__ () const { return length; }
hb_array_t<int>::__len__() const
Line
Count
Source
125
231k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>::__len__() const
hb_array_t<OT::NumType<true, unsigned char, 1u> const>::__len__() const
Line
Count
Source
125
43.7k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<contour_point_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> const>::__len__() const
Unexecuted instantiation: hb_array_t<unsigned char const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::DataMap const>::__len__() const
hb_array_t<OT::NameRecord const>::__len__() const
Line
Count
Source
125
593k
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_outline_point_t const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Tag const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfLangSys> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfScript> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::__len__() const
Unexecuted instantiation: hb_array_t<hb_glyph_info_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<char const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::MathValueRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::MathKernInfoRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_part_t>::__len__() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_variant_t>::__len__() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> const>::__len__() const
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t const>::__len__() const
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t const>::__len__() const
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t const>::__len__() const
Unexecuted instantiation: hb_array_t<CFF::table_info_t const>::__len__() const
126
  /* Ouch. The operator== compares the contents of the array.  For range-based for loops,
127
   * it's best if we can just compare arrayZ, though comparing contents is still fast,
128
   * but also would require that Type has operator==.  As such, we optimize this operator
129
   * for range-based for loop and just compare arrayZ and length.
130
   *
131
   * The above comment is outdated now because we implemented separate begin/end to
132
   * objects that were using hb_array_t for range-based loop before. */
133
  bool operator != (const hb_array_t& o) const
134
393k
  { return this->arrayZ != o.arrayZ || this->length != o.length; }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t> const&) const
Unexecuted instantiation: hb_array_t<OT::Index const>::operator!=(hb_array_t<OT::Index const> const&) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::operator!=(hb_array_t<OT::NumType<true, unsigned short, 2u> const> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const>::operator!=(hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::operator!=(hb_array_t<OT::Layout::GPOS_impl::MarkRecord const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::operator!=(hb_array_t<OT::HBGlyphID16 const> const&) const
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::operator!=(hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const> const&) const
Line
Count
Source
134
87.4k
  { return this->arrayZ != o.arrayZ || this->length != o.length; }
hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t> const&) const
Line
Count
Source
134
256k
  { return this->arrayZ != o.arrayZ || this->length != o.length; }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const> const&) const
hb_array_t<OT::NameRecord const>::operator!=(hb_array_t<OT::NameRecord const> const&) const
Line
Count
Source
134
49.9k
  { return this->arrayZ != o.arrayZ || this->length != o.length; }
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::operator!=(hb_array_t<OT::HBGlyphID16> const&) const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::operator!=(hb_array_t<hb_serialize_context_t::object_t::link_t> const&) const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t const>::operator!=(hb_array_t<hb_serialize_context_t::object_t::link_t const> const&) const
Unexecuted instantiation: hb_array_t<unsigned int const>::operator!=(hb_array_t<unsigned int const> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::operator!=(hb_array_t<OT::MathGlyphPartRecord const> const&) const
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_part_t>::operator!=(hb_array_t<hb_ot_math_glyph_part_t> const&) const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::operator!=(hb_array_t<OT::MathGlyphVariantRecord const> const&) const
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_variant_t>::operator!=(hb_array_t<hb_ot_math_glyph_variant_t> const&) const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::operator!=(hb_array_t<OT::AxisRecord const> const&) const
135
136
  /* Faster range-based for loop without bounds-check. */
137
138k
  Type *begin () const { return arrayZ; }
hb_array_t<hb_serialize_context_t::object_t* const>::begin() const
Line
Count
Source
137
93.7k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_serialize_context_t::object_t const*, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_set_t>, false>::item_t>::begin() const
hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::begin() const
Line
Count
Source
137
6.24k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<unsigned int const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb::shared_ptr<hb_map_t>, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::shared_ptr<hb_set_t>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, OT::Feature const*, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_hashmap_t<unsigned int, Triple, false> const*, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<int const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<int, false> const*, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::LookupRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const>::begin() const
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t>::begin() const
Line
Count
Source
137
975
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::AxisValueMap const>::begin() const
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const>::begin() const
Unexecuted instantiation: hb_array_t<OT::NoVariable<OT::ColorStop> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::Variable<OT::ColorStop> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::BaseGlyphRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<OT::SVG::svg_id_span_t, hb_pair_t<unsigned int, unsigned int>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<contour_point_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::begin() const
hb_array_t<OT::glyf_impl::SubsetGlyph const>::begin() const
Line
Count
Source
137
6.24k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> const>::begin() const
hb_array_t<OT::NameRecord>::begin() const
Line
Count
Source
137
6.24k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t const>::begin() const
hb_array_t<hb::shared_ptr<hb_set_t> >::begin() const
Line
Count
Source
137
6.24k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_subset_sets_t const>::begin() const
hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_blob_t>, false>::item_t>::begin() const
Line
Count
Source
137
12.4k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_array_t<char const>, unsigned int, true>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<graph::graph_t::vertex_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<graph::overflow_record_t*, bool, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<bool const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<void const*, void const*>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, TripleDistances, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, contour_point_vector_t, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_array_t<char const>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t>::begin() const
hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::begin() const
Line
Count
Source
137
6.24k
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> const>::begin() const
Unexecuted instantiation: hb_array_t<unsigned int>::begin() const
138
138k
  Type *end () const { return arrayZ + length; }
hb_array_t<hb_serialize_context_t::object_t* const>::end() const
Line
Count
Source
138
93.7k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_serialize_context_t::object_t const*, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_set_t>, false>::item_t>::end() const
hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::end() const
Line
Count
Source
138
6.24k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<unsigned int const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb::shared_ptr<hb_map_t>, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::shared_ptr<hb_set_t>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, OT::Feature const*, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_hashmap_t<unsigned int, Triple, false> const*, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<int, false> const*, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<int const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<int, false> const*, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_set_t, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<OT::LookupRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const>::end() const
hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t>::end() const
Line
Count
Source
138
975
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<OT::AxisValueMap const>::end() const
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const>::end() const
Unexecuted instantiation: hb_array_t<OT::NoVariable<OT::ColorStop> const>::end() const
Unexecuted instantiation: hb_array_t<OT::Variable<OT::ColorStop> const>::end() const
Unexecuted instantiation: hb_array_t<OT::BaseGlyphRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<OT::SVG::svg_id_span_t, hb_pair_t<unsigned int, unsigned int>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<contour_point_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::end() const
hb_array_t<OT::glyf_impl::SubsetGlyph const>::end() const
Line
Count
Source
138
6.24k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> const>::end() const
hb_array_t<OT::NameRecord>::end() const
Line
Count
Source
138
6.24k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t const>::end() const
hb_array_t<hb::shared_ptr<hb_set_t> >::end() const
Line
Count
Source
138
6.24k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_subset_sets_t const>::end() const
hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_blob_t>, false>::item_t>::end() const
Line
Count
Source
138
12.4k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::end() const
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_array_t<char const>, unsigned int, true>::item_t>::end() const
Unexecuted instantiation: hb_array_t<graph::graph_t::vertex_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, graph::Lookup*, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<graph::overflow_record_t*, bool, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<bool const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<unsigned char, false>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_pair_t<void const*, void const*>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, TripleDistances, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, contour_point_vector_t, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_array_t<char const>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int, false>::item_t>::end() const
hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::end() const
Line
Count
Source
138
6.24k
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> const>::end() const
Unexecuted instantiation: hb_array_t<unsigned int>::end() const
139
140
141
  /* Extra operators.
142
   */
143
219k
  Type * operator & () const { return arrayZ; }
hb_array_t<OT::HBGlyphID16 const>::operator&() const
Line
Count
Source
143
1.38k
  Type * operator & () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const>::operator&() const
Unexecuted instantiation: hb_array_t<AAT::Feature const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::Index const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const>::operator&() const
hb_array_t<char const>::operator&() const
Line
Count
Source
143
218k
  Type * operator & () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<unsigned char const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, short, 2u> const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned char, 1u> const>::operator&() const
144
961k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t>::operator hb_array_t<hb_ot_map_t::lookup_map_t const>()
hb_array_t<hb_bit_page_t>::operator hb_array_t<hb_bit_page_t const>()
Line
Count
Source
144
68.7k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::operator hb_array_t<hb_serialize_context_t::object_t::link_t const>()
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*>::operator hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>()
Line
Count
Source
144
43.7k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
hb_array_t<hb_serialize_context_t::object_t*>::operator hb_array_t<hb_serialize_context_t::object_t* const>()
Line
Count
Source
144
93.7k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
hb_array_t<unsigned int>::operator hb_array_t<unsigned int const>()
Line
Count
Source
144
6.24k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
Unexecuted instantiation: hb_array_t<unsigned char>::operator hb_array_t<unsigned char const>()
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t>::operator hb_array_t<hb_inc_bimap_t const>()
Unexecuted instantiation: hb_array_t<bool>::operator hb_array_t<bool const>()
Unexecuted instantiation: hb_array_t<float>::operator hb_array_t<float const>()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::operator hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>()
hb_array_t<int>::operator hb_array_t<int const>()
Line
Count
Source
144
736k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const*>::operator hb_array_t<hb_vector_t<int, false> const* const>()
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> >::operator hb_array_t<hb_pair_t<unsigned int, unsigned int> const>()
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> >::operator hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>()
Line
Count
Source
144
6.24k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
Unexecuted instantiation: hb_array_t<OT::LayerRecord>::operator hb_array_t<OT::LayerRecord const>()
Unexecuted instantiation: hb_array_t<contour_point_t>::operator hb_array_t<contour_point_t const>()
hb_array_t<OT::glyf_impl::SubsetGlyph>::operator hb_array_t<OT::glyf_impl::SubsetGlyph const>()
Line
Count
Source
144
6.24k
  operator hb_array_t<const Type> () { return hb_array_t<const Type> (arrayZ, length); }
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_t>::operator hb_array_t<CFF::parsed_cs_str_t const>()
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_op_t>::operator hb_array_t<CFF::parsed_cs_op_t const>()
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_vec_t>::operator hb_array_t<CFF::parsed_cs_str_vec_t const>()
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> >::operator hb_array_t<hb_array_t<unsigned char const> const>()
Unexecuted instantiation: hb_array_t<hb_outline_point_t>::operator hb_array_t<hb_outline_point_t const>()
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::operator hb_array_t<OT::HBGlyphID16 const>()
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> >::operator hb_array_t<hb_vector_t<unsigned char, false> const>()
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t>::operator hb_array_t<CFF::cff1_font_dict_values_t const>()
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t>::operator hb_array_t<CFF::cff1_font_dict_values_mod_t const>()
Unexecuted instantiation: hb_array_t<CFF::number_t>::operator hb_array_t<CFF::number_t const>()
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t>::operator hb_array_t<CFF::cff2_font_dict_values_t const>()
Unexecuted instantiation: hb_array_t<CFF::table_info_t>::operator hb_array_t<CFF::table_info_t const>()
145
0
  template <typename T> operator T * () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<unsigned char>::operator unsigned char*<unsigned char>() const
Unexecuted instantiation: hb_array_t<unsigned char const>::operator unsigned char const*<unsigned char const>() const
146
147
  HB_INTERNAL bool operator == (const hb_array_t &o) const;
148
149
  uint32_t hash () const
150
0
  {
151
    // FNV-1a hash function
152
    // https://github.com/harfbuzz/harfbuzz/pull/4228
153
0
    uint32_t current = /*cbf29ce4*/0x84222325;
154
0
    for (auto &v : *this)
155
0
    {
156
0
      current = current ^ hb_hash (v);
157
0
      current = current * 16777619;
158
0
    }
159
0
    return current;
160
0
  }
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::hash() const
Unexecuted instantiation: hb_array_t<int const>::hash() const
Unexecuted instantiation: hb_array_t<bool const>::hash() const
161
162
  /*
163
   * Compare, Sort, and Search.
164
   */
165
166
  /* Note: our compare is NOT lexicographic; it also does NOT call Type::cmp. */
167
  int cmp (const hb_array_t &a) const
168
0
  {
169
0
    if (length != a.length)
170
0
      return (int) a.length - (int) length;
171
0
    return hb_memcmp (a.arrayZ, arrayZ, get_size ());
172
0
  }
Unexecuted instantiation: hb_array_t<unsigned char const>::cmp(hb_array_t<unsigned char const> const&) const
Unexecuted instantiation: hb_array_t<char const>::cmp(hb_array_t<char const> const&) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::cmp(hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> > const&) const
173
  HB_INTERNAL static int cmp (const void *pa, const void *pb)
174
  {
175
    hb_array_t *a = (hb_array_t *) pa;
176
    hb_array_t *b = (hb_array_t *) pb;
177
    return b->cmp (*a);
178
  }
179
180
  template <typename T>
181
  Type *lsearch (const T &x, Type *not_found = nullptr)
182
0
  {
183
0
    unsigned i;
184
0
    return lfind (x, &i) ? &this->arrayZ[i] : not_found;
185
0
  }
Unexecuted instantiation: hb_user_data_array_t::hb_user_data_item_t* hb_array_t<hb_user_data_array_t::hb_user_data_item_t>::lsearch<hb_user_data_key_t*>(hb_user_data_key_t* const&, hb_user_data_array_t::hb_user_data_item_t*)
Unexecuted instantiation: hb_user_data_array_t::hb_user_data_item_t* hb_array_t<hb_user_data_array_t::hb_user_data_item_t>::lsearch<hb_user_data_array_t::hb_user_data_item_t>(hb_user_data_array_t::hb_user_data_item_t const&, hb_user_data_array_t::hb_user_data_item_t*)
Unexecuted instantiation: hb_aat_map_builder_t::feature_info_t* hb_array_t<hb_aat_map_builder_t::feature_info_t>::lsearch<hb_aat_map_builder_t::feature_info_t>(hb_aat_map_builder_t::feature_info_t const&, hb_aat_map_builder_t::feature_info_t*)
Unexecuted instantiation: OT::DataMap const* hb_array_t<OT::DataMap const>::lsearch<unsigned int>(unsigned int const&, OT::DataMap const*)
186
  template <typename T>
187
  const Type *lsearch (const T &x, const Type *not_found = nullptr) const
188
  {
189
    unsigned i;
190
    return lfind (x, &i) ? &this->arrayZ[i] : not_found;
191
  }
192
  template <typename T>
193
  bool lfind (const T &x, unsigned *pos = nullptr,
194
        hb_not_found_t not_found = HB_NOT_FOUND_DONT_STORE,
195
        unsigned int to_store = (unsigned int) -1) const
196
16.6k
  {
197
16.6k
    for (unsigned i = 0; i < length; ++i)
198
0
      if (hb_equal (x, this->arrayZ[i]))
199
0
      {
200
0
  if (pos)
201
0
    *pos = i;
202
0
  return true;
203
0
      }
204
205
16.6k
    if (pos)
206
16.6k
    {
207
16.6k
      switch (not_found)
208
16.6k
      {
209
16.6k
  case HB_NOT_FOUND_DONT_STORE:
210
16.6k
    break;
211
212
0
  case HB_NOT_FOUND_STORE:
213
0
    *pos = to_store;
214
0
    break;
215
216
0
  case HB_NOT_FOUND_STORE_CLOSEST:
217
0
    *pos = length;
218
0
    break;
219
16.6k
      }
220
16.6k
    }
221
16.6k
    return false;
222
16.6k
  }
Unexecuted instantiation: bool hb_array_t<hb_user_data_array_t::hb_user_data_item_t>::lfind<hb_user_data_key_t*>(hb_user_data_key_t* const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_array_t<hb_user_data_array_t::hb_user_data_item_t>::lfind<hb_user_data_array_t::hb_user_data_item_t>(hb_user_data_array_t::hb_user_data_item_t const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_array_t<OT::StatAxisRecord const>::lfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_array_t<hb_aat_map_builder_t::feature_info_t>::lfind<hb_aat_map_builder_t::feature_info_t>(hb_aat_map_builder_t::feature_info_t const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_array_t<OT::TableRecord const>::lfind<OT::Tag>(OT::Tag const&, unsigned int*, hb_not_found_t, unsigned int) const
bool hb_array_t<OT::AxisRecord const>::lfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
196
16.6k
  {
197
16.6k
    for (unsigned i = 0; i < length; ++i)
198
0
      if (hb_equal (x, this->arrayZ[i]))
199
0
      {
200
0
  if (pos)
201
0
    *pos = i;
202
0
  return true;
203
0
      }
204
205
16.6k
    if (pos)
206
16.6k
    {
207
16.6k
      switch (not_found)
208
16.6k
      {
209
16.6k
  case HB_NOT_FOUND_DONT_STORE:
210
16.6k
    break;
211
212
0
  case HB_NOT_FOUND_STORE:
213
0
    *pos = to_store;
214
0
    break;
215
216
0
  case HB_NOT_FOUND_STORE_CLOSEST:
217
0
    *pos = length;
218
0
    break;
219
16.6k
      }
220
16.6k
    }
221
16.6k
    return false;
222
16.6k
  }
Unexecuted instantiation: bool hb_array_t<OT::DataMap const>::lfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
223
224
  hb_sorted_array_t<Type> qsort (int (*cmp)(const void*, const void*))
225
12.7k
  {
226
12.7k
    if (likely (length))
227
12.7k
      hb_qsort (arrayZ, length, this->get_item_size (), cmp);
228
12.7k
    return hb_sorted_array_t<Type> (*this);
229
12.7k
  }
Unexecuted instantiation: hb_array_t<unsigned int>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const*>::qsort(int (*)(void const*, void const*))
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> >::qsort(int (*)(void const*, void const*))
Line
Count
Source
225
6.24k
  {
226
6.24k
    if (likely (length))
227
6.24k
      hb_qsort (arrayZ, length, this->get_item_size (), cmp);
228
6.24k
    return hb_sorted_array_t<Type> (*this);
229
6.24k
  }
hb_array_t<OT::NameRecord>::qsort(int (*)(void const*, void const*))
Line
Count
Source
225
6.24k
  {
226
6.24k
    if (likely (length))
227
6.24k
      hb_qsort (arrayZ, length, this->get_item_size (), cmp);
228
6.24k
    return hb_sorted_array_t<Type> (*this);
229
6.24k
  }
hb_array_t<hb_ot_name_entry_t>::qsort(int (*)(void const*, void const*))
Line
Count
Source
225
254
  {
226
254
    if (likely (length))
227
254
      hb_qsort (arrayZ, length, this->get_item_size (), cmp);
228
254
    return hb_sorted_array_t<Type> (*this);
229
254
  }
Unexecuted instantiation: hb_array_t<hb_pair_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int> >::qsort(int (*)(void const*, void const*))
230
  template <typename Compar>
231
  hb_sorted_array_t<Type> qsort (Compar compar)
232
33.2k
  {
233
33.2k
    if (likely (length))
234
33.0k
      std::sort (arrayZ, arrayZ + length, compar);
235
33.2k
    return hb_sorted_array_t<Type> (*this);
236
33.2k
  }
Unexecuted instantiation: _ZN10hb_array_tIN2OT20delta_row_encoding_tEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Unexecuted instantiation: _ZN10hb_array_tIN20hb_aat_map_builder_t15feature_event_tEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Unexecuted instantiation: _ZN10hb_array_tIN20hb_aat_map_builder_t14feature_info_tEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
_ZN10hb_array_tIN2OT11TableRecordEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Line
Count
Source
232
6.24k
  {
233
6.24k
    if (likely (length))
234
6.24k
      std::sort (arrayZ, arrayZ + length, compar);
235
6.24k
    return hb_sorted_array_t<Type> (*this);
236
6.24k
  }
hb-face-builder.cc:hb_sorted_array_t<unsigned int> hb_array_t<unsigned int>::qsort<_hb_face_builder_get_table_tags(hb_face_t const*, unsigned int, unsigned int*, unsigned int*, void*)::$_0>(_hb_face_builder_get_table_tags(hb_face_t const*, unsigned int, unsigned int*, unsigned int*, void*)::$_0)
Line
Count
Source
232
6.24k
  {
233
6.24k
    if (likely (length))
234
6.24k
      std::sort (arrayZ, arrayZ + length, compar);
235
6.24k
    return hb_sorted_array_t<Type> (*this);
236
6.24k
  }
Unexecuted instantiation: _ZN10hb_array_tIN2OT12AxisValueMapEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Unexecuted instantiation: _ZN10hb_array_tIN2OT4cff113accelerator_t7gname_tEE5qsortIZNS4_6_qsortIS3_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS3_E11hb_priorityILj1EEEUlRKS3_SI_E_EESE_S8_
Unexecuted instantiation: hb_sorted_array_t<unsigned short> hb_array_t<unsigned short>::qsort<OT::post::accelerator_t::get_glyph_from_name(char const*, int, unsigned int*) const::{lambda(unsigned short const&, unsigned short const&)#1}>(OT::post::accelerator_t::get_glyph_from_name(char const*, int, unsigned int*) const::{lambda(unsigned short const&, unsigned short const&)#1})
_ZN10hb_array_tIN19hb_ot_map_builder_t14feature_info_tEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Line
Count
Source
232
10.3k
  {
233
10.3k
    if (likely (length))
234
10.3k
      std::sort (arrayZ, arrayZ + length, compar);
235
10.3k
    return hb_sorted_array_t<Type> (*this);
236
10.3k
  }
_ZN10hb_array_tIN11hb_ot_map_t13feature_map_tEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Line
Count
Source
232
2.03k
  {
233
2.03k
    if (likely (length))
234
1.81k
      std::sort (arrayZ, arrayZ + length, compar);
235
2.03k
    return hb_sorted_array_t<Type> (*this);
236
2.03k
  }
_ZN10hb_array_tIN11hb_ot_map_t12lookup_map_tEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Line
Count
Source
232
2.17k
  {
233
2.17k
    if (likely (length))
234
2.17k
      std::sort (arrayZ, arrayZ + length, compar);
235
2.17k
    return hb_sorted_array_t<Type> (*this);
236
2.17k
  }
Unexecuted instantiation: _ZN10hb_array_tIN22hb_serialize_context_t8object_t6link_tEE5qsortIZNS3_6_qsortIS2_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS2_E11hb_priorityILj1EEEUlRKS2_SH_E_EESD_S7_
Unexecuted instantiation: _ZN10hb_array_tI13lookup_size_tE5qsortIZNS1_6_qsortIS0_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS0_E11hb_priorityILj1EEEUlRKS0_SF_E_EESB_S5_
_ZN10hb_array_tI9hb_pair_tIjjEE5qsortIZNS2_6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEEUlRKS1_SG_E_EESC_S6_
Line
Count
Source
232
6.24k
  {
233
6.24k
    if (likely (length))
234
6.24k
      std::sort (arrayZ, arrayZ + length, compar);
235
6.24k
    return hb_sorted_array_t<Type> (*this);
236
6.24k
  }
237
238
  private:
239
  template <typename T = Type,
240
      hb_enable_if (std::is_move_assignable<T>::value)>
241
  hb_sorted_array_t<Type> _qsort (hb_priority<1>)
242
27.0k
  {
243
4.68M
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
Unexecuted instantiation: _ZZN10hb_array_tIN20hb_aat_map_builder_t15feature_event_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Unexecuted instantiation: _ZZN10hb_array_tIN20hb_aat_map_builder_t14feature_info_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
_ZZN10hb_array_tIN2OT11TableRecordEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Line
Count
Source
243
337k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
Unexecuted instantiation: _ZZN10hb_array_tIN2OT4cff113accelerator_t7gname_tEE6_qsortIS3_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS3_E11hb_priorityILj1EEENKUlRKS3_SH_E_clESH_SH_
_ZZN10hb_array_tIN19hb_ot_map_builder_t14feature_info_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Line
Count
Source
243
2.98M
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
_ZZN10hb_array_tIN11hb_ot_map_t13feature_map_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Line
Count
Source
243
1.35k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
_ZZN10hb_array_tIN11hb_ot_map_t12lookup_map_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Line
Count
Source
243
18.7k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
Unexecuted instantiation: _ZZN10hb_array_tIN22hb_serialize_context_t8object_t6link_tEE6_qsortIS2_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS2_E11hb_priorityILj1EEENKUlRKS2_SG_E_clESG_SG_
Unexecuted instantiation: _ZZN10hb_array_tI13lookup_size_tE6_qsortIS0_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS0_E11hb_priorityILj1EEENKUlRKS0_SE_E_clESE_SE_
_ZZN10hb_array_tI9hb_pair_tIjjEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Line
Count
Source
243
1.34M
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
Unexecuted instantiation: _ZZN10hb_array_tIN2OT20delta_row_encoding_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
Unexecuted instantiation: _ZZN10hb_array_tIN2OT12AxisValueMapEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EEENKUlRKS1_SF_E_clESF_SF_
244
27.0k
  }
Unexecuted instantiation: _ZN10hb_array_tIN2OT20delta_row_encoding_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Unexecuted instantiation: _ZN10hb_array_tIN20hb_aat_map_builder_t15feature_event_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Unexecuted instantiation: _ZN10hb_array_tIN20hb_aat_map_builder_t14feature_info_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
_ZN10hb_array_tIN2OT11TableRecordEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Line
Count
Source
242
6.24k
  {
243
6.24k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
244
6.24k
  }
Unexecuted instantiation: _ZN10hb_array_tIN2OT12AxisValueMapEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Unexecuted instantiation: _ZN10hb_array_tIN2OT4cff113accelerator_t7gname_tEE6_qsortIS3_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS3_E11hb_priorityILj1EE
_ZN10hb_array_tIN19hb_ot_map_builder_t14feature_info_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Line
Count
Source
242
10.3k
  {
243
10.3k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
244
10.3k
  }
_ZN10hb_array_tIN11hb_ot_map_t13feature_map_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Line
Count
Source
242
2.03k
  {
243
2.03k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
244
2.03k
  }
_ZN10hb_array_tIN11hb_ot_map_t12lookup_map_tEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Line
Count
Source
242
2.17k
  {
243
2.17k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
244
2.17k
  }
Unexecuted instantiation: _ZN10hb_array_tIN22hb_serialize_context_t8object_t6link_tEE6_qsortIS2_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS2_E11hb_priorityILj1EE
Unexecuted instantiation: _ZN10hb_array_tI13lookup_size_tE6_qsortIS0_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS0_E11hb_priorityILj1EE
_ZN10hb_array_tI9hb_pair_tIjjEE6_qsortIS1_TnPN12hb_enable_ifIXsr3std18is_move_assignableIT_EE5valueEvE4typeELPv0EEE17hb_sorted_array_tIS1_E11hb_priorityILj1EE
Line
Count
Source
242
6.24k
  {
243
6.24k
    return qsort ([] (const Type &a, const Type &b) { return Type::cmp (&a, &b) < 0; });
244
6.24k
  }
245
  hb_sorted_array_t<Type> _qsort (hb_priority<0>)
246
6.24k
  {
247
6.24k
    return qsort ((int(*)(const void*, const void*)) Type::cmp);
248
6.24k
  }
249
  public:
250
251
  hb_sorted_array_t<Type> qsort ()
252
33.2k
  {
253
33.2k
    return _qsort (hb_prioritize);
254
33.2k
  }
Unexecuted instantiation: hb_array_t<OT::delta_row_encoding_t>::qsort()
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_event_t>::qsort()
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_info_t>::qsort()
hb_array_t<OT::TableRecord>::qsort()
Line
Count
Source
252
6.24k
  {
253
6.24k
    return _qsort (hb_prioritize);
254
6.24k
  }
Unexecuted instantiation: hb_array_t<OT::AxisValueMap>::qsort()
Unexecuted instantiation: hb_array_t<OT::cff1::accelerator_t::gname_t>::qsort()
hb_array_t<OT::NameRecord>::qsort()
Line
Count
Source
252
6.24k
  {
253
6.24k
    return _qsort (hb_prioritize);
254
6.24k
  }
hb_array_t<hb_ot_map_builder_t::feature_info_t>::qsort()
Line
Count
Source
252
10.3k
  {
253
10.3k
    return _qsort (hb_prioritize);
254
10.3k
  }
hb_array_t<hb_ot_map_t::feature_map_t>::qsort()
Line
Count
Source
252
2.03k
  {
253
2.03k
    return _qsort (hb_prioritize);
254
2.03k
  }
hb_array_t<hb_ot_map_t::lookup_map_t>::qsort()
Line
Count
Source
252
2.17k
  {
253
2.17k
    return _qsort (hb_prioritize);
254
2.17k
  }
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::qsort()
Unexecuted instantiation: hb_array_t<lookup_size_t>::qsort()
hb_array_t<hb_pair_t<unsigned int, unsigned int> >::qsort()
Line
Count
Source
252
6.24k
  {
253
6.24k
    return _qsort (hb_prioritize);
254
6.24k
  }
255
256
  /*
257
   * Other methods.
258
   */
259
260
961k
  unsigned int get_size () const { return length * this->get_item_size (); }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const>::get_size() const
Unexecuted instantiation: hb_array_t<AAT::Feature const>::get_size() const
Unexecuted instantiation: hb_array_t<unsigned char const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::Index const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::get_size() const
hb_array_t<OT::NumType<true, unsigned char, 1u> const>::get_size() const
Line
Count
Source
260
87.4k
  unsigned int get_size () const { return length * this->get_item_size (); }
hb_array_t<char const>::get_size() const
Line
Count
Source
260
873k
  unsigned int get_size () const { return length * this->get_item_size (); }
Unexecuted instantiation: hb_array_t<OT::NumType<true, short, 2u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::Tag const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::get_size() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::get_size() const
261
262
  /*
263
   * Reverse the order of items in this array in the range [start, end).
264
   */
265
  void reverse (unsigned start = 0, unsigned end = -1)
266
78.1M
  {
267
78.1M
    start = hb_min (start, length);
268
78.1M
    end = hb_min (end, length);
269
270
78.1M
    if (end < start + 2)
271
75.5M
      return;
272
273
2.56M
    unsigned stop = start + (end - start) / 2;
274
42.5M
    for (unsigned lhs = start, rhs = end - 1; lhs < stop; lhs++, rhs--)
275
39.9M
      hb_swap (arrayZ[rhs], arrayZ[lhs]);
276
2.56M
  }
hb_array_t<hb_glyph_info_t>::reverse(unsigned int, unsigned int)
Line
Count
Source
266
76.5M
  {
267
76.5M
    start = hb_min (start, length);
268
76.5M
    end = hb_min (end, length);
269
270
76.5M
    if (end < start + 2)
271
74.5M
      return;
272
273
2.02M
    unsigned stop = start + (end - start) / 2;
274
40.1M
    for (unsigned lhs = start, rhs = end - 1; lhs < stop; lhs++, rhs--)
275
38.0M
      hb_swap (arrayZ[rhs], arrayZ[lhs]);
276
2.02M
  }
hb_array_t<hb_glyph_position_t>::reverse(unsigned int, unsigned int)
Line
Count
Source
266
1.58M
  {
267
1.58M
    start = hb_min (start, length);
268
1.58M
    end = hb_min (end, length);
269
270
1.58M
    if (end < start + 2)
271
1.03M
      return;
272
273
543k
    unsigned stop = start + (end - start) / 2;
274
2.40M
    for (unsigned lhs = start, rhs = end - 1; lhs < stop; lhs++, rhs--)
275
1.86M
      hb_swap (arrayZ[rhs], arrayZ[lhs]);
276
543k
  }
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord>::reverse(unsigned int, unsigned int)
277
278
  hb_array_t sub_array (unsigned int start_offset = 0, unsigned int *seg_count = nullptr /* IN/OUT */) const
279
306k
  {
280
306k
    if (!start_offset && !seg_count)
281
0
      return *this;
282
283
306k
    unsigned int count = length;
284
306k
    if (unlikely (start_offset > count))
285
0
      count = 0;
286
306k
    else
287
306k
      count -= start_offset;
288
306k
    if (seg_count)
289
306k
      count = *seg_count = hb_min (count, *seg_count);
290
306k
    return hb_array_t (arrayZ + start_offset, count);
291
306k
  }
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t const>::sub_array(unsigned int, unsigned int*) const
hb_array_t<OT::Index const>::sub_array(unsigned int, unsigned int*) const
Line
Count
Source
279
60.6k
  {
280
60.6k
    if (!start_offset && !seg_count)
281
0
      return *this;
282
283
60.6k
    unsigned int count = length;
284
60.6k
    if (unlikely (start_offset > count))
285
0
      count = 0;
286
60.6k
    else
287
60.6k
      count -= start_offset;
288
60.6k
    if (seg_count)
289
60.6k
      count = *seg_count = hb_min (count, *seg_count);
290
60.6k
    return hb_array_t (arrayZ + start_offset, count);
291
60.6k
  }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 3u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::Record<OT::LangSys> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<unsigned char>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::Record<OT::Script> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::Record<OT::Feature> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<unsigned int const>::sub_array(unsigned int, unsigned int*) const
hb_array_t<OT::TableRecord const>::sub_array(unsigned int, unsigned int*) const
Line
Count
Source
279
31.2k
  {
280
31.2k
    if (!start_offset && !seg_count)
281
0
      return *this;
282
283
31.2k
    unsigned int count = length;
284
31.2k
    if (unlikely (start_offset > count))
285
0
      count = 0;
286
31.2k
    else
287
31.2k
      count -= start_offset;
288
31.2k
    if (seg_count)
289
31.2k
      count = *seg_count = hb_min (count, *seg_count);
290
31.2k
    return hb_array_t (arrayZ + start_offset, count);
291
31.2k
  }
hb_array_t<unsigned int>::sub_array(unsigned int, unsigned int*) const
Line
Count
Source
279
6.24k
  {
280
6.24k
    if (!start_offset && !seg_count)
281
0
      return *this;
282
283
6.24k
    unsigned int count = length;
284
6.24k
    if (unlikely (start_offset > count))
285
0
      count = 0;
286
6.24k
    else
287
6.24k
      count -= start_offset;
288
6.24k
    if (seg_count)
289
6.24k
      count = *seg_count = hb_min (count, *seg_count);
290
6.24k
    return hb_array_t (arrayZ + start_offset, count);
291
6.24k
  }
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::sub_array(unsigned int, unsigned int*) const
hb_array_t<char const>::sub_array(unsigned int, unsigned int*) const
Line
Count
Source
279
206k
  {
280
206k
    if (!start_offset && !seg_count)
281
0
      return *this;
282
283
206k
    unsigned int count = length;
284
206k
    if (unlikely (start_offset > count))
285
0
      count = 0;
286
206k
    else
287
206k
      count -= start_offset;
288
206k
    if (seg_count)
289
206k
      count = *seg_count = hb_min (count, *seg_count);
290
206k
    return hb_array_t (arrayZ + start_offset, count);
291
206k
  }
Unexecuted instantiation: hb_array_t<contour_point_t>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<unsigned char const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::DataMap const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<hb_outline_point_t const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfLangSys> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::Record<OT::JstfScript> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<CFF::number_t const>::sub_array(unsigned int, unsigned int*) const
hb_array_t<hb_ot_map_t::lookup_map_t>::sub_array(unsigned int, unsigned int*) const
Line
Count
Source
279
2.17k
  {
280
2.17k
    if (!start_offset && !seg_count)
281
0
      return *this;
282
283
2.17k
    unsigned int count = length;
284
2.17k
    if (unlikely (start_offset > count))
285
0
      count = 0;
286
2.17k
    else
287
2.17k
      count -= start_offset;
288
2.17k
    if (seg_count)
289
2.17k
      count = *seg_count = hb_min (count, *seg_count);
290
2.17k
    return hb_array_t (arrayZ + start_offset, count);
291
2.17k
  }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::feature_map_t const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<CFF::blend_arg_t const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<contour_point_t const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<int const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<bool>::sub_array(unsigned int, unsigned int*) const
292
  hb_array_t sub_array (unsigned int start_offset, unsigned int seg_count) const
293
208k
  { return sub_array (start_offset, &seg_count); }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<unsigned int const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::sub_array(unsigned int, unsigned int) const
hb_array_t<char const>::sub_array(unsigned int, unsigned int) const
Line
Count
Source
293
206k
  { return sub_array (start_offset, &seg_count); }
Unexecuted instantiation: hb_array_t<contour_point_t>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<unsigned char const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<hb_outline_point_t const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<CFF::number_t const>::sub_array(unsigned int, unsigned int) const
hb_array_t<hb_ot_map_t::lookup_map_t>::sub_array(unsigned int, unsigned int) const
Line
Count
Source
293
2.17k
  { return sub_array (start_offset, &seg_count); }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<CFF::blend_arg_t const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<contour_point_t const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<int const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<bool>::sub_array(unsigned int, unsigned int) const
294
295
  hb_array_t truncate (unsigned length) const { return sub_array (0, length); }
296
297
  template <typename T,
298
      unsigned P = sizeof (Type),
299
      hb_enable_if (P == 1)>
300
  const T *as () const
301
775M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4GDEFELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
151M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT6Layout4GSUBELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
31.7M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN3AAT4morxELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
14.6M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN3AAT4ltagELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN3AAT4mortELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
14.6M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN3AAT4kerxELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
12.4k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN3AAT4ankrELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN3AAT4trakELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
12.3k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN3AAT4featELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT6Layout4GPOSELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
38.5M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4STATELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4cmapELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
50.1k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT16OpenTypeFontFileELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
32.0M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT3OS2ELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
15.9M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4MVARELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
15.4M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4fvarELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
491k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT3SVGELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4CBDTELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
9.77M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4sbixELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
10.5M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4CBLCELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
1.47M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4CPALELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4COLRELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
10.5M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4sbix13accelerator_t9PNGHeaderELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4hheaELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
25.5M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4vheaELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
29
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4maxpELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.63k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT9gvar_GVARINS3_7NumTypeILb1EtLj2EEELj1735811442EEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
29
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT9gvar_GVARINS3_7NumTypeILb1EjLj3EEELj1196835154EEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT8hmtxvmtxINS3_4hmtxENS3_4hheaENS3_4HVAREEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
371M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT8hmtxvmtxINS3_4vmtxENS3_4vheaENS3_4VVAREEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT18TupleVariationDataINS3_7NumTypeILb1EtLj2EEEEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT9glyf_impl11GlyphHeaderELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
1.81M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4headELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
37.6k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4locaELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
1.16M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4glyfELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
1.16M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4cff1ELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4cff2ELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4kernELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
22.8M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4metaELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4nameELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
27.2k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4postELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
1.66M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4VARCELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
736k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4HVARELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4VVARELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIN2OT4VORGELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
1.89M
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4BASEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
208k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIN2OT4avarELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
231k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4headELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4STATELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4cvarELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIN2OT4MATHELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4GDEFELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT6Layout4GSUBELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT6Layout4GPOSELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4BASEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4MATHELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4HVARELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4VVARELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT9gvar_GVARINS3_7NumTypeILb1EtLj2EEELj1735811442EEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4fvarELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4avarELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4cvarELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4MVARELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4VORGELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4sbixELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4COLRELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4CPALELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4CBLCELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIKN2OT4glyfELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4hdmxELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIKN2OT4nameELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIKN2OT4hmtxELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4vmtxELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIKN2OT4maxpELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: _ZNK10hb_array_tIKcE2asIKN2OT4cmapELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
_ZNK10hb_array_tIKcE2asIKN2OT3OS2ELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
_ZNK10hb_array_tIKcE2asIKN2OT4postELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEPKT_v
Line
Count
Source
301
6.24k
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
302
303
  template <typename T,
304
      unsigned P = sizeof (Type),
305
      hb_enable_if (P == 1)>
306
  bool check_range (const T *p, unsigned int size = T::static_size) const
307
87.6k
  {
308
87.6k
    return arrayZ <= ((const char *) p)
309
87.6k
  && ((const char *) p) <= arrayZ + length
310
87.6k
  && (unsigned int) (arrayZ + length - (const char *) p) >= size;
311
87.6k
  }
Unexecuted instantiation: _ZNK10hb_array_tIKcE11check_rangeIN2OT7NumTypeILb1EtLj2EEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEbPKT_j
_ZNK10hb_array_tIKcE11check_rangeIN2OT9glyf_impl20CompositeGlyphRecordELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEbPKT_j
Line
Count
Source
307
87.6k
  {
308
87.6k
    return arrayZ <= ((const char *) p)
309
87.6k
  && ((const char *) p) <= arrayZ + length
310
87.6k
  && (unsigned int) (arrayZ + length - (const char *) p) >= size;
311
87.6k
  }
Unexecuted instantiation: _ZNK10hb_array_tIKcE11check_rangeIN2OT7NumTypeILb1EhLj1EEELj1ETnPN12hb_enable_ifIXeqT0_Li1EEvE4typeELPv0EEEbPKT_j
312
313
  template <unsigned P = sizeof (Type),
314
      hb_enable_if (P == 1)>
315
  bool check_end (const void *p) const
316
0
  {
317
0
    return (uintptr_t) (((const char *) p) - arrayZ) <= length;
318
0
  }
319
320
  /* Only call if you allocated the underlying array using hb_malloc() or similar. */
321
  void fini ()
322
0
  { hb_free ((void *) arrayZ); arrayZ = nullptr; length = 0; }
323
324
  template <typename hb_serialize_context_t,
325
      typename U = Type,
326
      hb_enable_if (!(sizeof (U) < sizeof (long long) && hb_is_trivially_copy_assignable(hb_decay<Type>)))>
327
  hb_array_t copy (hb_serialize_context_t *c) const
328
  {
329
    TRACE_SERIALIZE (this);
330
    auto* out = c->start_embed (arrayZ);
331
    if (unlikely (!c->extend_size (out, get_size (), false))) return_trace (hb_array_t ());
332
    for (unsigned i = 0; i < length; i++)
333
      out[i] = arrayZ[i]; /* TODO: add version that calls c->copy() */
334
    return_trace (hb_array_t (out, length));
335
  }
336
337
  template <typename hb_serialize_context_t,
338
      typename U = Type,
339
      hb_enable_if (sizeof (U) < sizeof (long long) && hb_is_trivially_copy_assignable(hb_decay<Type>))>
340
  hb_array_t copy (hb_serialize_context_t *c) const
341
480k
  {
342
480k
    TRACE_SERIALIZE (this);
343
480k
    auto* out = c->start_embed (arrayZ);
344
480k
    if (unlikely (!c->extend_size (out, get_size (), false))) return_trace (hb_array_t ());
345
480k
    hb_memcpy (out, arrayZ, get_size ());
346
480k
    return_trace (hb_array_t (out, length));
347
480k
  }
Unexecuted instantiation: _ZNK10hb_array_tIKN2OT7NumTypeILb1EjLj4EEEE4copyI22hb_serialize_context_tS3_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES4_PT_
Unexecuted instantiation: _ZNK10hb_array_tIKN2OT5IndexEE4copyI22hb_serialize_context_tS2_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES3_PT_
Unexecuted instantiation: _ZNK10hb_array_tIKN2OT11LayerRecordEE4copyI22hb_serialize_context_tS2_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES3_PT_
_ZNK10hb_array_tIKN2OT7NumTypeILb1EhLj1EEEE4copyI22hb_serialize_context_tS3_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES4_PT_
Line
Count
Source
341
43.7k
  {
342
43.7k
    TRACE_SERIALIZE (this);
343
43.7k
    auto* out = c->start_embed (arrayZ);
344
43.7k
    if (unlikely (!c->extend_size (out, get_size (), false))) return_trace (hb_array_t ());
345
43.7k
    hb_memcpy (out, arrayZ, get_size ());
346
43.7k
    return_trace (hb_array_t (out, length));
347
43.7k
  }
_ZNK10hb_array_tIKcE4copyI22hb_serialize_context_tS0_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES1_PT_
Line
Count
Source
341
436k
  {
342
436k
    TRACE_SERIALIZE (this);
343
436k
    auto* out = c->start_embed (arrayZ);
344
436k
    if (unlikely (!c->extend_size (out, get_size (), false))) return_trace (hb_array_t ());
345
436k
    hb_memcpy (out, arrayZ, get_size ());
346
436k
    return_trace (hb_array_t (out, length));
347
436k
  }
Unexecuted instantiation: _ZNK10hb_array_tIKN2OT3TagEE4copyI22hb_serialize_context_tS2_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES3_PT_
Unexecuted instantiation: _ZNK10hb_array_tIKhE4copyI22hb_serialize_context_tS0_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES1_PT_
Unexecuted instantiation: _ZNK10hb_array_tIKN2OT7HBFixedINS0_7NumTypeILb1EsLj2EEELj14EEEE4copyI22hb_serialize_context_tS5_TnPN12hb_enable_ifIXaaltstT0_Lm8EL_ZNSt3__117integral_constantIbLb1EE5valueEEEvE4typeELPv0EEES6_PT_
348
349
  template <typename hb_sanitize_context_t>
350
  bool sanitize (hb_sanitize_context_t *c) const
351
0
  { return c->check_array (arrayZ, length); }
Unexecuted instantiation: bool hb_array_t<OT::AxisRecord const>::sanitize<hb_sanitize_context_t>(hb_sanitize_context_t*) const
Unexecuted instantiation: bool hb_array_t<unsigned char const>::sanitize<hb_sanitize_context_t>(hb_sanitize_context_t*) const
352
353
  /*
354
   * Members
355
   */
356
357
  public:
358
  Type *arrayZ = nullptr;
359
  unsigned int length = 0;
360
  unsigned int backwards_length = 0;
361
};
362
template <typename T> inline hb_array_t<T>
363
hb_array ()
364
0
{ return hb_array_t<T> (); }
Unexecuted instantiation: hb_array_t<int> hb_array<int>()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> > hb_array<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const> hb_array<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>()
365
template <typename T> inline hb_array_t<T>
366
hb_array (T *array, unsigned int length)
367
94.8M
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const> hb_array<OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const>(OT::HBFixed<OT::NumType<true, int, 4u>, 16u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_type_t> hb_array<hb_aat_layout_feature_type_t>(hb_aat_layout_feature_type_t*, unsigned int)
Unexecuted instantiation: hb_array_t<AAT::SettingName const> hb_array<AAT::SettingName const>(AAT::SettingName const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_selector_info_t> hb_array<hb_aat_layout_feature_selector_info_t>(hb_aat_layout_feature_selector_info_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<AAT::Feature const> hb_array<AAT::Feature const>(AAT::Feature const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_info_t> hb_array<hb_aat_map_builder_t::feature_info_t>(hb_aat_map_builder_t::feature_info_t*, unsigned int)
hb_array_t<hb_bit_set_t::page_map_t> hb_array<hb_bit_set_t::page_map_t>(hb_bit_set_t::page_map_t*, unsigned int)
Line
Count
Source
367
30.5M
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t> hb_array<hb_aat_map_t::range_flags_t>(hb_aat_map_t::range_flags_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_user_data_array_t::hb_user_data_item_t> hb_array<hb_user_data_array_t::hb_user_data_item_t>(hb_user_data_array_t::hb_user_data_item_t*, unsigned int)
hb_array_t<hb_ot_map_t::feature_map_t> hb_array<hb_ot_map_t::feature_map_t>(hb_ot_map_t::feature_map_t*, unsigned int)
Line
Count
Source
367
130k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t const> hb_array<hb_ot_map_t::lookup_map_t const>(hb_ot_map_t::lookup_map_t const*, unsigned int)
hb_array_t<hb_ot_map_t::lookup_map_t> hb_array<hb_ot_map_t::lookup_map_t>(hb_ot_map_t::lookup_map_t*, unsigned int)
Line
Count
Source
367
2.17k
{ return hb_array_t<T> (array, length); }
hb_array_t<hb_bit_page_t> hb_array<hb_bit_page_t>(hb_bit_page_t*, unsigned int)
Line
Count
Source
367
68.7k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t> hb_array<hb_serialize_context_t::object_t::link_t>(hb_serialize_context_t::object_t::link_t*, unsigned int)
hb_array_t<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*> hb_array<hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*>(hb_free_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t**, unsigned int)
Line
Count
Source
367
43.7k
{ return hb_array_t<T> (array, length); }
hb_array_t<hb_serialize_context_t::object_t*> hb_array<hb_serialize_context_t::object_t*>(hb_serialize_context_t::object_t**, unsigned int)
Line
Count
Source
367
93.7k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<unsigned int const> hb_array<unsigned int const>(unsigned int const*, unsigned int)
hb_array_t<OT::Index const> hb_array<OT::Index const>(OT::Index const*, unsigned int)
Line
Count
Source
367
60.6k
{ return hb_array_t<T> (array, length); }
hb_array_t<unsigned int> hb_array<unsigned int>(unsigned int*, unsigned int)
Line
Count
Source
367
129k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 3u> const> hb_array<OT::NumType<true, unsigned int, 3u> const>(OT::NumType<true, unsigned int, 3u> const*, unsigned int)
hb_array_t<hb_pair_t<unsigned int, unsigned int> > hb_array<hb_pair_t<unsigned int, unsigned int> >(hb_pair_t<unsigned int, unsigned int>*, unsigned int)
Line
Count
Source
367
37.4k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<unsigned char> hb_array<unsigned char>(unsigned char*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t> hb_array<hb_inc_bimap_t>(hb_inc_bimap_t*, unsigned int)
Unexecuted instantiation: hb_array_t<float> hb_array<float>(float*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::FeatureTableSubstitutionRecord const> hb_array<OT::FeatureTableSubstitutionRecord const>(OT::FeatureTableSubstitutionRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<char> hb_array<char>(char*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const> hb_array<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>(OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<bool> hb_array<bool>(bool*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> > hb_array<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> >(OT::HBFixed<OT::NumType<true, short, 2u>, 14u>*, unsigned int)
Unexecuted instantiation: hb_array_t<char const> hb_array<char const>(char const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::delta_row_encoding_t> hb_array<OT::delta_row_encoding_t>(OT::delta_row_encoding_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const*> hb_array<hb_vector_t<int, false> const*>(hb_vector_t<int, false> const**, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned short, 2u> const> hb_array<OT::NumType<true, unsigned short, 2u> const>(OT::NumType<true, unsigned short, 2u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::AttachPoint, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::CaretValue, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
hb_array_t<int> hb_array<int>(int*, unsigned int)
Line
Count
Source
367
967k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::LigGlyph, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const>(OT::OffsetTo<OT::Layout::Common::Coverage, OT::NumType<true, unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LookupRecord const> hb_array<OT::LookupRecord const>(OT::LookupRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::EntryExitRecord const> hb_array<OT::Layout::GPOS_impl::EntryExitRecord const>(OT::Layout::GPOS_impl::EntryExitRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::GPOS_impl::MarkRecord const> hb_array<OT::Layout::GPOS_impl::MarkRecord const>(OT::Layout::GPOS_impl::MarkRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const> hb_array<OT::AxisValueRecord const>(OT::AxisValueRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::AxisValue, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const> hb_array<OT::StatAxisRecord const>(OT::StatAxisRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const> hb_array<OT::HBGlyphID16 const>(OT::HBGlyphID16 const*, unsigned int)
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Line
Count
Source
367
75
{ return hb_array_t<T> (array, length); }
hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Line
Count
Source
367
815
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_event_t> hb_array<hb_aat_map_builder_t::feature_event_t>(hb_aat_map_builder_t::feature_event_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::ResourceRecord const> hb_array<OT::ResourceRecord const>(OT::ResourceRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::TableRecord const> hb_array<OT::TableRecord const>(OT::TableRecord const*, unsigned int)
hb_array_t<hb_pair_t<unsigned int, face_table_info_t> > hb_array<hb_pair_t<unsigned int, face_table_info_t> >(hb_pair_t<unsigned int, face_table_info_t>*, unsigned int)
Line
Count
Source
367
12.4k
{ return hb_array_t<T> (array, length); }
hb_array_t<OT::TableRecord> hb_array<OT::TableRecord>(OT::TableRecord*, unsigned int)
Line
Count
Source
367
6.24k
{ return hb_array_t<T> (array, length); }
hb_array_t<OT::AxisRecord const> hb_array<OT::AxisRecord const>(OT::AxisRecord const*, unsigned int)
Line
Count
Source
367
248k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::AxisValueMap const> hb_array<OT::AxisValueMap const>(OT::AxisValueMap const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisValueMap> hb_array<OT::AxisValueMap>(OT::AxisValueMap*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NumType<true, unsigned int, 4u> const> hb_array<OT::NumType<true, unsigned int, 4u> const>(OT::NumType<true, unsigned int, 4u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LayerRecord const> hb_array<OT::LayerRecord const>(OT::LayerRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_color_layer_t> hb_array<hb_ot_color_layer_t>(hb_ot_color_layer_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const> hb_array<OT::BitmapSizeTable const>(OT::BitmapSizeTable const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NoVariable<OT::ColorStop> const> hb_array<OT::NoVariable<OT::ColorStop> const>(OT::NoVariable<OT::ColorStop> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Variable<OT::ColorStop> const> hb_array<OT::Variable<OT::ColorStop> const>(OT::Variable<OT::ColorStop> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const> hb_array<OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const>(OT::OffsetTo<OT::Paint, OT::NumType<true, unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LayerRecord> hb_array<OT::LayerRecord>(OT::LayerRecord*, unsigned int)
hb_array_t<OT::NumType<true, unsigned char, 1u> const> hb_array<OT::NumType<true, unsigned char, 1u> const>(OT::NumType<true, unsigned char, 1u> const*, unsigned int)
Line
Count
Source
367
43.7k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::DeltaSetIndexMap const*> hb_array<OT::DeltaSetIndexMap const*>(OT::DeltaSetIndexMap const**, unsigned int)
Unexecuted instantiation: hb_array_t<OT::index_map_subset_plan_t> hb_array<OT::index_map_subset_plan_t>(OT::index_map_subset_plan_t*, unsigned int)
Unexecuted instantiation: hb_array_t<contour_point_t> hb_array<contour_point_t>(contour_point_t*, unsigned int)
hb_array_t<OT::glyf_impl::SubsetGlyph> hb_array<OT::glyf_impl::SubsetGlyph>(OT::glyf_impl::SubsetGlyph*, unsigned int)
Line
Count
Source
367
6.24k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_t> hb_array<CFF::parsed_cs_str_t>(CFF::parsed_cs_str_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_op_t> hb_array<CFF::parsed_cs_op_t>(CFF::parsed_cs_op_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::parsed_cs_str_vec_t> hb_array<CFF::parsed_cs_str_vec_t>(CFF::parsed_cs_str_vec_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> > hb_array<hb_array_t<unsigned char const> >(hb_array_t<unsigned char const>*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::cff1::accelerator_t::gname_t> hb_array<OT::cff1::accelerator_t::gname_t>(OT::cff1::accelerator_t::gname_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NumType<true, short, 2u> const> hb_array<OT::NumType<true, short, 2u> const>(OT::NumType<true, short, 2u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::DataMap const> hb_array<OT::DataMap const>(OT::DataMap const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_meta_tag_t> hb_array<hb_ot_meta_tag_t>(hb_ot_meta_tag_t*, unsigned int)
hb_array_t<OT::NameRecord const> hb_array<OT::NameRecord const>(OT::NameRecord const*, unsigned int)
Line
Count
Source
367
6.24k
{ return hb_array_t<T> (array, length); }
hb_array_t<hb_ot_name_entry_t> hb_array<hb_ot_name_entry_t>(hb_ot_name_entry_t*, unsigned int)
Line
Count
Source
367
254
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<hb_outline_point_t> hb_array<hb_outline_point_t>(hb_outline_point_t*, unsigned int)
hb_array_t<int const> hb_array<int const>(int const*, unsigned int)
Line
Count
Source
367
62.4M
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::Tag const> hb_array<OT::Tag const>(OT::Tag const*, unsigned int)
hb_array_t<hb_ot_map_builder_t::feature_info_t> hb_array<hb_ot_map_builder_t::feature_info_t>(hb_ot_map_builder_t::feature_info_t*, unsigned int)
Line
Count
Source
367
10.3k
{ return hb_array_t<T> (array, length); }
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16> hb_array<OT::HBGlyphID16>(OT::HBGlyphID16*, unsigned int)
Unexecuted instantiation: hb_array_t<lookup_size_t> hb_array<lookup_size_t>(lookup_size_t*, unsigned int)
Unexecuted instantiation: hb_array_t<graph::graph_t::vertex_t> hb_array<graph::graph_t::vertex_t>(graph::graph_t::vertex_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::MathGlyphConstruction, OT::NumType<true, unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathGlyphPartRecord const> hb_array<OT::MathGlyphPartRecord const>(OT::MathGlyphPartRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord const> hb_array<OT::MathGlyphVariantRecord const>(OT::MathGlyphVariantRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathValueRecord const> hb_array<OT::MathValueRecord const>(OT::MathValueRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::MathKernInfoRecord const> hb_array<OT::MathKernInfoRecord const>(OT::MathKernInfoRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_part_t> hb_array<hb_ot_math_glyph_part_t>(hb_ot_math_glyph_part_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_math_glyph_variant_t> hb_array<hb_ot_math_glyph_variant_t>(hb_ot_math_glyph_variant_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_pair_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int> > hb_array<hb_pair_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int> >(hb_pair_t<hb_vector_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u>, false> const*, unsigned int>*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> > hb_array<hb_vector_t<unsigned char, false> >(hb_vector_t<unsigned char, false>*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_t> hb_array<CFF::cff1_font_dict_values_t>(CFF::cff1_font_dict_values_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff1_font_dict_values_mod_t> hb_array<CFF::cff1_font_dict_values_mod_t>(CFF::cff1_font_dict_values_mod_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::number_t> hb_array<CFF::number_t>(CFF::number_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::cff2_font_dict_values_t> hb_array<CFF::cff2_font_dict_values_t>(CFF::cff2_font_dict_values_t*, unsigned int)
Unexecuted instantiation: hb_array_t<CFF::table_info_t> hb_array<CFF::table_info_t>(CFF::table_info_t*, unsigned int)
368
template <typename T, unsigned int length_> inline hb_array_t<T>
369
hb_array (T (&array_)[length_])
370
12.4k
{ return hb_array_t<T> (array_); }
hb_array_t<hb::shared_ptr<hb_set_t> > hb_array<hb::shared_ptr<hb_set_t>, 8u>(hb::shared_ptr<hb_set_t> (&) [8u])
Line
Count
Source
370
12.4k
{ return hb_array_t<T> (array_); }
Unexecuted instantiation: hb_array_t<unsigned int> hb_array<unsigned int, 50u>(unsigned int (&) [50u])
371
372
template <typename Type>
373
struct hb_sorted_array_t :
374
  hb_array_t<Type>,
375
  hb_iter_t<hb_sorted_array_t<Type>, Type&>
376
{
377
  typedef hb_iter_t<hb_sorted_array_t, Type&> iter_base_t;
378
  HB_ITER_USING (iter_base_t);
379
  static constexpr bool is_random_access_iterator = true;
380
  static constexpr bool is_sorted_iterator = true;
381
  static constexpr bool has_fast_len = true;
382
383
  hb_sorted_array_t () = default;
384
  hb_sorted_array_t (const hb_sorted_array_t&) = default;
385
  ~hb_sorted_array_t () = default;
386
  hb_sorted_array_t& operator= (const hb_sorted_array_t&) = default;
387
  hb_sorted_array_t& operator= (hb_sorted_array_t&&) = default;
388
389
39.1M
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
Unexecuted instantiation: hb_sorted_array_t<AAT::FeatureName const>::hb_sorted_array_t(AAT::FeatureName const*, unsigned int)
hb_sorted_array_t<OT::HBGlyphID16 const>::hb_sorted_array_t(OT::HBGlyphID16 const*, unsigned int)
Line
Count
Source
389
3.34M
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::hb_sorted_array_t(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const*, unsigned int)
Line
Count
Source
389
2.94M
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<AAT::KernPair const>::hb_sorted_array_t(AAT::KernPair const*, unsigned int)
Line
Count
Source
389
152k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<OT::TableRecord const>::hb_sorted_array_t(OT::TableRecord const*, unsigned int)
Line
Count
Source
389
31.9M
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<OT::VariationSelectorRecord const>::hb_sorted_array_t(OT::VariationSelectorRecord const*, unsigned int)
Line
Count
Source
389
32.4k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<OT::UVSMapping const>::hb_sorted_array_t(OT::UVSMapping const*, unsigned int)
Line
Count
Source
389
26.2k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<OT::EncodingRecord const>::hb_sorted_array_t(OT::EncodingRecord const*, unsigned int)
Line
Count
Source
389
81.6k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
Unexecuted instantiation: hb_sorted_array_t<OT::CmapSubtableLongGroup const>::hb_sorted_array_t(OT::CmapSubtableLongGroup const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::hb_sorted_array_t(OT::BaseGlyphPaintRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::BaseGlyphRecord const>::hb_sorted_array_t(OT::BaseGlyphRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::SVGDocumentIndexEntry const>::hb_sorted_array_t(OT::SVGDocumentIndexEntry const*, unsigned int)
hb_sorted_array_t<OT::UnicodeValueRange const>::hb_sorted_array_t(OT::UnicodeValueRange const*, unsigned int)
Line
Count
Source
389
26.2k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
Unexecuted instantiation: hb_sorted_array_t<OT::VertOriginMetric const>::hb_sorted_array_t(OT::VertOriginMetric const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::ClipRecord const>::hb_sorted_array_t(OT::ClipRecord const*, unsigned int)
hb_sorted_array_t<OT::Record<OT::Script> const>::hb_sorted_array_t(OT::Record<OT::Script> const*, unsigned int)
Line
Count
Source
389
49.6k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Feature> const>::hb_sorted_array_t(OT::Record<OT::Feature> const*, unsigned int)
hb_sorted_array_t<OT::Record<OT::LangSys> const>::hb_sorted_array_t(OT::Record<OT::LangSys> const*, unsigned int)
Line
Count
Source
389
49.4k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
hb_sorted_array_t<OT::BaseScriptRecord const>::hb_sorted_array_t(OT::BaseScriptRecord const*, unsigned int)
Line
Count
Source
389
416k
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
Unexecuted instantiation: hb_sorted_array_t<OT::BaseLangSysRecord const>::hb_sorted_array_t(OT::BaseLangSysRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::FeatMinMaxRecord const>::hb_sorted_array_t(OT::FeatMinMaxRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Tag const>::hb_sorted_array_t(OT::Tag const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >::hb_sorted_array_t(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16>::hb_sorted_array_t(OT::HBGlyphID16*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord>::hb_sorted_array_t(OT::VariationSelectorRecord*, unsigned int)
390
  template <unsigned int length_>
391
201k
  constexpr hb_sorted_array_t (Type (&array_)[length_]) : hb_array_t<Type> (array_) {}
Unexecuted instantiation: hb_sorted_array_t<hb_aat_feature_mapping_t const>::hb_sorted_array_t<78u>(hb_aat_feature_mapping_t const (&) [78u])
hb_sorted_array_t<LangTag const>::hb_sorted_array_t<204u>(LangTag const (&) [204u])
Line
Count
Source
391
687
  constexpr hb_sorted_array_t (Type (&array_)[length_]) : hb_array_t<Type> (array_) {}
hb_sorted_array_t<LangTag const>::hb_sorted_array_t<779u>(LangTag const (&) [779u])
Line
Count
Source
391
1.13k
  constexpr hb_sorted_array_t (Type (&array_)[length_]) : hb_array_t<Type> (array_) {}
hb_sorted_array_t<LangTagRange const>::hb_sorted_array_t<137u>(LangTagRange const (&) [137u])
Line
Count
Source
391
985
  constexpr hb_sorted_array_t (Type (&array_)[length_]) : hb_array_t<Type> (array_) {}
Unexecuted instantiation: hb_sorted_array_t<sid_to_gid_t const>::hb_sorted_array_t<165u>(sid_to_gid_t const (&) [165u])
Unexecuted instantiation: hb_sorted_array_t<sid_to_gid_t const>::hb_sorted_array_t<86u>(sid_to_gid_t const (&) [86u])
hb_sorted_array_t<OT::OS2Range const>::hb_sorted_array_t<169u>(OT::OS2Range const (&) [169u])
Line
Count
Source
391
199k
  constexpr hb_sorted_array_t (Type (&array_)[length_]) : hb_array_t<Type> (array_) {}
392
393
  template <typename U,
394
      hb_enable_if (hb_is_cr_convertible(U, Type))>
395
  constexpr hb_sorted_array_t (const hb_array_t<U> &o) :
396
30.7M
    hb_array_t<Type> (o),
397
30.7M
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN3AAT11FeatureNameEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN20hb_aat_map_builder_t14feature_info_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
_ZN17hb_sorted_array_tIKN12hb_bit_set_t10page_map_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Line
Count
Source
396
30.5M
    hb_array_t<Type> (o),
397
30.5M
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN12hb_aat_map_t13range_flags_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN20hb_aat_map_builder_t15feature_event_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN20hb_aat_map_builder_t14feature_info_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
_ZN17hb_sorted_array_tIKN2OT11TableRecordEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Line
Count
Source
396
31.2k
    hb_array_t<Type> (o),
397
31.2k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tI9hb_pair_tIj17face_table_info_tEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Line
Count
Source
396
6.24k
    hb_array_t<Type> (o),
397
6.24k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIN2OT11TableRecordEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Line
Count
Source
396
6.24k
    hb_array_t<Type> (o),
397
6.24k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIjEC2IjTnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_jEE5valueEvE4typeELPv0EEERK10hb_array_tIS3_E
Line
Count
Source
396
6.24k
    hb_array_t<Type> (o),
397
6.24k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: _ZN17hb_sorted_array_tItEC2ItTnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_tEE5valueEvE4typeELPv0EEERK10hb_array_tIS3_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN2OT4cff113accelerator_t7gname_tEEC2IS3_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S3_EE5valueEvE4typeELPv0EEERK10hb_array_tIS7_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT6RecordINS0_6ScriptEEEEC2IS4_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S4_EE5valueEvE4typeELPv0EEERK10hb_array_tIS8_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT6RecordINS0_7FeatureEEEEC2IS4_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S4_EE5valueEvE4typeELPv0EEERK10hb_array_tIS8_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT6RecordINS0_7LangSysEEEEC2IS4_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S4_EE5valueEvE4typeELPv0EEERK10hb_array_tIS8_E
_ZN17hb_sorted_array_tI18hb_ot_name_entry_tEC2IS0_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S0_EE5valueEvE4typeELPv0EEERK10hb_array_tIS4_E
Line
Count
Source
396
254
    hb_array_t<Type> (o),
397
254
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIKN11hb_ot_map_t13feature_map_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Line
Count
Source
396
128k
    hb_array_t<Type> (o),
397
128k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIN19hb_ot_map_builder_t14feature_info_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Line
Count
Source
396
10.3k
    hb_array_t<Type> (o),
397
10.3k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIN11hb_ot_map_t13feature_map_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Line
Count
Source
396
4.07k
    hb_array_t<Type> (o),
397
4.07k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIN11hb_ot_map_t12lookup_map_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Line
Count
Source
396
2.17k
    hb_array_t<Type> (o),
397
2.17k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN11hb_ot_map_t13feature_map_tEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN2OT11HBGlyphID16EEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN2OT6Layout6Common11RangeRecordINS1_10SmallTypesEEEEC2IS5_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S5_EE5valueEvE4typeELPv0EEERK10hb_array_tIS9_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT11HBGlyphID16EEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN22hb_serialize_context_t8object_t6link_tEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Unexecuted instantiation: _ZN17hb_sorted_array_tI13lookup_size_tEC2IS0_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S0_EE5valueEvE4typeELPv0EEERK10hb_array_tIS4_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT14EncodingRecordEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
_ZN17hb_sorted_array_tI9hb_pair_tIjjEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Line
Count
Source
396
12.4k
    hb_array_t<Type> (o),
397
12.4k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
_ZN17hb_sorted_array_tIK9hb_pair_tIjjEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Line
Count
Source
396
31.2k
    hb_array_t<Type> (o),
397
31.2k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: _ZN17hb_sorted_array_tIKjEC2IjTnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S0_EE5valueEvE4typeELPv0EEERK10hb_array_tIS4_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN2OT20delta_row_encoding_tEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIPK11hb_vector_tIiLb0EEEC2IS3_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S3_EE5valueEvE4typeELPv0EEERK10hb_array_tIS7_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIK9hb_pair_tIjjEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
Unexecuted instantiation: _ZN17hb_sorted_array_tI9hb_pair_tIPK11hb_vector_tIN2OT7HBFixedINS2_7NumTypeILb1EsLj2EEELj14EEELb0EEjEEC2ISA_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_SA_EE5valueEvE4typeELPv0EEERK10hb_array_tISE_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIN2OT12AxisValueMapEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT16VertOriginMetricEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
_ZN17hb_sorted_array_tIN2OT10NameRecordEEC2IS1_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S1_EE5valueEvE4typeELPv0EEERK10hb_array_tIS5_E
Line
Count
Source
396
6.24k
    hb_array_t<Type> (o),
397
6.24k
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: _ZN17hb_sorted_array_tIKN2OT10UVSMappingEEC2IS2_TnPN12hb_enable_ifIXsr20hb_is_cr_convertibleIT_S2_EE5valueEvE4typeELPv0EEERK10hb_array_tIS6_E
398
  template <typename U,
399
      hb_enable_if (hb_is_cr_convertible(U, Type))>
400
  hb_sorted_array_t& operator = (const hb_array_t<U> &o)
401
  { hb_array_t<Type> (*this) = o; return *this; }
402
403
  /* Iterator implementation. */
404
405
  /* See comment in hb_array_of::operator != */
406
  bool operator != (const hb_sorted_array_t& o) const
407
0
  { return this->arrayZ != o.arrayZ || this->length != o.length; }
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::LangSys> const>::operator!=(hb_sorted_array_t<OT::Record<OT::LangSys> const> const&) const
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Script> const>::operator!=(hb_sorted_array_t<OT::Record<OT::Script> const> const&) const
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>::operator!=(hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const> const&) const
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::operator!=(hb_sorted_array_t<OT::UVSMapping const> const&) const
Unexecuted instantiation: hb_sorted_array_t<OT::EncodingRecord const>::operator!=(hb_sorted_array_t<OT::EncodingRecord const> const&) const
Unexecuted instantiation: hb_sorted_array_t<OT::VertOriginMetric const>::operator!=(hb_sorted_array_t<OT::VertOriginMetric const> const&) const
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16>::operator!=(hb_sorted_array_t<OT::HBGlyphID16> const&) const
408
409
  /* Faster range-based for loop without bounds-check. */
410
6.24k
  Type *begin () const { return this->arrayZ; }
Unexecuted instantiation: hb_sorted_array_t<unsigned int const>::begin() const
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16 const>::begin() const
Unexecuted instantiation: hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::begin() const
hb_sorted_array_t<OT::VariationSelectorRecord const>::begin() const
Line
Count
Source
410
6.24k
  Type *begin () const { return this->arrayZ; }
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::begin() const
Unexecuted instantiation: hb_sorted_array_t<OT::ClipRecord const>::begin() const
Unexecuted instantiation: hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::begin() const
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>::begin() const
411
6.24k
  Type *end () const { return this->arrayZ + this->length; }
Unexecuted instantiation: hb_sorted_array_t<unsigned int const>::end() const
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16 const>::end() const
Unexecuted instantiation: hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::end() const
hb_sorted_array_t<OT::VariationSelectorRecord const>::end() const
Line
Count
Source
411
6.24k
  Type *end () const { return this->arrayZ + this->length; }
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::end() const
Unexecuted instantiation: hb_sorted_array_t<OT::ClipRecord const>::end() const
Unexecuted instantiation: hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::end() const
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>::end() const
412
413
414
  hb_sorted_array_t sub_array (unsigned int start_offset, unsigned int *seg_count /* IN/OUT */) const
415
31.2k
  { return hb_sorted_array_t (((const hb_array_t<Type> *) (this))->sub_array (start_offset, seg_count)); }
Unexecuted instantiation: hb_sorted_array_t<AAT::FeatureName const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::LangSys> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Script> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Feature> const>::sub_array(unsigned int, unsigned int*) const
hb_sorted_array_t<OT::TableRecord const>::sub_array(unsigned int, unsigned int*) const
Line
Count
Source
415
31.2k
  { return hb_sorted_array_t (((const hb_array_t<Type> *) (this))->sub_array (start_offset, seg_count)); }
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::JstfLangSys> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::JstfScript> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_sorted_array_t<hb_ot_map_t::feature_map_t const>::sub_array(unsigned int, unsigned int*) const
416
  hb_sorted_array_t sub_array (unsigned int start_offset, unsigned int seg_count) const
417
  { return sub_array (start_offset, &seg_count); }
418
419
  hb_sorted_array_t truncate (unsigned length) const { return sub_array (0, length); }
420
421
  template <typename T>
422
  Type *bsearch (const T &x, Type *not_found = nullptr)
423
3.96M
  {
424
3.96M
    unsigned int i;
425
3.96M
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
3.96M
  }
Unexecuted instantiation: AAT::FeatureName const* hb_sorted_array_t<AAT::FeatureName const>::bsearch<hb_aat_layout_feature_type_t>(hb_aat_layout_feature_type_t const&, AAT::FeatureName const*)
Unexecuted instantiation: hb_aat_feature_mapping_t const* hb_sorted_array_t<hb_aat_feature_mapping_t const>::bsearch<unsigned int>(unsigned int const&, hb_aat_feature_mapping_t const*)
Unexecuted instantiation: hb_aat_map_builder_t::feature_info_t const* hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t const>::bsearch<hb_aat_map_builder_t::feature_info_t>(hb_aat_map_builder_t::feature_info_t const&, hb_aat_map_builder_t::feature_info_t const*)
OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const* hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::bsearch<unsigned int>(unsigned int const&, OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const*)
Line
Count
Source
423
2.94M
  {
424
2.94M
    unsigned int i;
425
2.94M
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
2.94M
  }
AAT::KernPair const* hb_sorted_array_t<AAT::KernPair const>::bsearch<AAT::hb_glyph_pair_t>(AAT::hb_glyph_pair_t const&, AAT::KernPair const*)
Line
Count
Source
423
152k
  {
424
152k
    unsigned int i;
425
152k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
152k
  }
hb_ot_map_t::feature_map_t const* hb_sorted_array_t<hb_ot_map_t::feature_map_t const>::bsearch<unsigned int>(unsigned int const&, hb_ot_map_t::feature_map_t const*)
Line
Count
Source
423
128k
  {
424
128k
    unsigned int i;
425
128k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
128k
  }
OT::VariationSelectorRecord const* hb_sorted_array_t<OT::VariationSelectorRecord const>::bsearch<unsigned int>(unsigned int const&, OT::VariationSelectorRecord const*)
Line
Count
Source
423
26.2k
  {
424
26.2k
    unsigned int i;
425
26.2k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
26.2k
  }
OT::EncodingRecord const* hb_sorted_array_t<OT::EncodingRecord const>::bsearch<OT::EncodingRecord>(OT::EncodingRecord const&, OT::EncodingRecord const*)
Line
Count
Source
423
75.3k
  {
424
75.3k
    unsigned int i;
425
75.3k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
75.3k
  }
Unexecuted instantiation: OT::CmapSubtableLongGroup const* hb_sorted_array_t<OT::CmapSubtableLongGroup const>::bsearch<unsigned int>(unsigned int const&, OT::CmapSubtableLongGroup const*)
OT::OS2Range const* hb_sorted_array_t<OT::OS2Range const>::bsearch<unsigned int>(unsigned int const&, OT::OS2Range const*)
Line
Count
Source
423
199k
  {
424
199k
    unsigned int i;
425
199k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
199k
  }
Unexecuted instantiation: OT::UnicodeValueRange const* hb_sorted_array_t<OT::UnicodeValueRange const>::bsearch<unsigned int>(unsigned int const&, OT::UnicodeValueRange const*)
OT::UVSMapping const* hb_sorted_array_t<OT::UVSMapping const>::bsearch<unsigned int>(unsigned int const&, OT::UVSMapping const*)
Line
Count
Source
423
26.2k
  {
424
26.2k
    unsigned int i;
425
26.2k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
26.2k
  }
Unexecuted instantiation: OT::BaseGlyphPaintRecord const* hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseGlyphPaintRecord const*)
Unexecuted instantiation: OT::BaseGlyphRecord const* hb_sorted_array_t<OT::BaseGlyphRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseGlyphRecord const*)
Unexecuted instantiation: OT::SVGDocumentIndexEntry const* hb_sorted_array_t<OT::SVGDocumentIndexEntry const>::bsearch<unsigned int>(unsigned int const&, OT::SVGDocumentIndexEntry const*)
Unexecuted instantiation: OT::ClipRecord const* hb_sorted_array_t<OT::ClipRecord const>::bsearch<unsigned int>(unsigned int const&, OT::ClipRecord const*)
Unexecuted instantiation: OT::cff1::accelerator_t::gname_t* hb_sorted_array_t<OT::cff1::accelerator_t::gname_t>::bsearch<OT::cff1::accelerator_t::gname_t>(OT::cff1::accelerator_t::gname_t const&, OT::cff1::accelerator_t::gname_t*)
OT::BaseScriptRecord const* hb_sorted_array_t<OT::BaseScriptRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseScriptRecord const*)
Line
Count
Source
423
416k
  {
424
416k
    unsigned int i;
425
416k
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
426
416k
  }
Unexecuted instantiation: OT::BaseLangSysRecord const* hb_sorted_array_t<OT::BaseLangSysRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseLangSysRecord const*)
Unexecuted instantiation: OT::FeatMinMaxRecord const* hb_sorted_array_t<OT::FeatMinMaxRecord const>::bsearch<unsigned int>(unsigned int const&, OT::FeatMinMaxRecord const*)
Unexecuted instantiation: sid_to_gid_t const* hb_sorted_array_t<sid_to_gid_t const>::bsearch<unsigned int>(unsigned int const&, sid_to_gid_t const*)
427
  template <typename T>
428
  const Type *bsearch (const T &x, const Type *not_found = nullptr) const
429
  {
430
    unsigned int i;
431
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
432
  }
433
  template <typename T>
434
  bool bfind (const T &x, unsigned int *i = nullptr,
435
        hb_not_found_t not_found = HB_NOT_FOUND_DONT_STORE,
436
        unsigned int to_store = (unsigned int) -1) const
437
69.8M
  {
438
69.8M
    unsigned pos;
439
440
69.8M
    if (bsearch_impl (x, &pos))
441
6.52M
    {
442
6.52M
      if (i)
443
6.52M
  *i = pos;
444
6.52M
      return true;
445
6.52M
    }
446
447
63.3M
    if (i)
448
63.2M
    {
449
63.2M
      switch (not_found)
450
63.2M
      {
451
26.7M
  case HB_NOT_FOUND_DONT_STORE:
452
26.7M
    break;
453
454
32.9M
  case HB_NOT_FOUND_STORE:
455
32.9M
    *i = to_store;
456
32.9M
    break;
457
458
3.60M
  case HB_NOT_FOUND_STORE_CLOSEST:
459
3.60M
    *i = pos;
460
3.60M
    break;
461
63.2M
      }
462
63.2M
    }
463
63.3M
    return false;
464
63.3M
  }
Unexecuted instantiation: bool hb_sorted_array_t<AAT::FeatureName const>::bfind<hb_aat_layout_feature_type_t>(hb_aat_layout_feature_type_t const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<hb_aat_feature_mapping_t const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t const>::bfind<hb_aat_map_builder_t::feature_info_t>(hb_aat_map_builder_t::feature_info_t const&, unsigned int*, hb_not_found_t, unsigned int) const
bool hb_sorted_array_t<hb_bit_set_t::page_map_t const>::bfind<hb_bit_set_t::page_map_t>(hb_bit_set_t::page_map_t const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
30.3M
  {
438
30.3M
    unsigned pos;
439
440
30.3M
    if (bsearch_impl (x, &pos))
441
1.51M
    {
442
1.51M
      if (i)
443
1.51M
  *i = pos;
444
1.51M
      return true;
445
1.51M
    }
446
447
28.8M
    if (i)
448
28.8M
    {
449
28.8M
      switch (not_found)
450
28.8M
      {
451
25.2M
  case HB_NOT_FOUND_DONT_STORE:
452
25.2M
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
3.60M
  case HB_NOT_FOUND_STORE_CLOSEST:
459
3.60M
    *i = pos;
460
3.60M
    break;
461
28.8M
      }
462
28.8M
    }
463
28.8M
    return false;
464
28.8M
  }
bool hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
2.94M
  {
438
2.94M
    unsigned pos;
439
440
2.94M
    if (bsearch_impl (x, &pos))
441
2.15M
    {
442
2.15M
      if (i)
443
2.15M
  *i = pos;
444
2.15M
      return true;
445
2.15M
    }
446
447
789k
    if (i)
448
789k
    {
449
789k
      switch (not_found)
450
789k
      {
451
789k
  case HB_NOT_FOUND_DONT_STORE:
452
789k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
789k
      }
462
789k
    }
463
789k
    return false;
464
789k
  }
bool hb_sorted_array_t<OT::HBGlyphID16 const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
3.33M
  {
438
3.33M
    unsigned pos;
439
440
3.33M
    if (bsearch_impl (x, &pos))
441
2.10M
    {
442
2.10M
      if (i)
443
2.10M
  *i = pos;
444
2.10M
      return true;
445
2.10M
    }
446
447
1.23M
    if (i)
448
1.23M
    {
449
1.23M
      switch (not_found)
450
1.23M
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
1.23M
  case HB_NOT_FOUND_STORE:
455
1.23M
    *i = to_store;
456
1.23M
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
1.23M
      }
462
1.23M
    }
463
1.23M
    return false;
464
1.23M
  }
bool hb_sorted_array_t<AAT::KernPair const>::bfind<AAT::hb_glyph_pair_t>(AAT::hb_glyph_pair_t const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
152k
  {
438
152k
    unsigned pos;
439
440
152k
    if (bsearch_impl (x, &pos))
441
99.1k
    {
442
99.1k
      if (i)
443
99.1k
  *i = pos;
444
99.1k
      return true;
445
99.1k
    }
446
447
53.6k
    if (i)
448
53.6k
    {
449
53.6k
      switch (not_found)
450
53.6k
      {
451
53.6k
  case HB_NOT_FOUND_DONT_STORE:
452
53.6k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
53.6k
      }
462
53.6k
    }
463
53.6k
    return false;
464
53.6k
  }
bool hb_sorted_array_t<hb_ot_map_t::feature_map_t const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
128k
  {
438
128k
    unsigned pos;
439
440
128k
    if (bsearch_impl (x, &pos))
441
20.6k
    {
442
20.6k
      if (i)
443
20.6k
  *i = pos;
444
20.6k
      return true;
445
20.6k
    }
446
447
108k
    if (i)
448
108k
    {
449
108k
      switch (not_found)
450
108k
      {
451
108k
  case HB_NOT_FOUND_DONT_STORE:
452
108k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
108k
      }
462
108k
    }
463
108k
    return false;
464
108k
  }
bool hb_sorted_array_t<hb_bit_set_t::page_map_t const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
81.1k
  {
438
81.1k
    unsigned pos;
439
440
81.1k
    if (bsearch_impl (x, &pos))
441
81.1k
    {
442
81.1k
      if (i)
443
81.1k
  *i = pos;
444
81.1k
      return true;
445
81.1k
    }
446
447
0
    if (i)
448
0
    {
449
0
      switch (not_found)
450
0
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
0
      }
462
0
    }
463
0
    return false;
464
0
  }
bool hb_sorted_array_t<OT::Record<OT::LangSys> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
49.4k
  {
438
49.4k
    unsigned pos;
439
440
49.4k
    if (bsearch_impl (x, &pos))
441
0
    {
442
0
      if (i)
443
0
  *i = pos;
444
0
      return true;
445
0
    }
446
447
49.4k
    if (i)
448
49.4k
    {
449
49.4k
      switch (not_found)
450
49.4k
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
49.4k
  case HB_NOT_FOUND_STORE:
455
49.4k
    *i = to_store;
456
49.4k
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
49.4k
      }
462
49.4k
    }
463
49.4k
    return false;
464
49.4k
  }
bool hb_sorted_array_t<OT::Record<OT::Script> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
49.6k
  {
438
49.6k
    unsigned pos;
439
440
49.6k
    if (bsearch_impl (x, &pos))
441
24.6k
    {
442
24.6k
      if (i)
443
24.6k
  *i = pos;
444
24.6k
      return true;
445
24.6k
    }
446
447
24.9k
    if (i)
448
24.9k
    {
449
24.9k
      switch (not_found)
450
24.9k
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
24.9k
  case HB_NOT_FOUND_STORE:
455
24.9k
    *i = to_store;
456
24.9k
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
24.9k
      }
462
24.9k
    }
463
24.9k
    return false;
464
24.9k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::Feature> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
bool hb_sorted_array_t<OT::TableRecord const>::bfind<OT::Tag>(OT::Tag const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
31.9M
  {
438
31.9M
    unsigned pos;
439
440
31.9M
    if (bsearch_impl (x, &pos))
441
309k
    {
442
309k
      if (i)
443
309k
  *i = pos;
444
309k
      return true;
445
309k
    }
446
447
31.6M
    if (i)
448
31.6M
    {
449
31.6M
      switch (not_found)
450
31.6M
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
31.6M
  case HB_NOT_FOUND_STORE:
455
31.6M
    *i = to_store;
456
31.6M
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
31.6M
      }
462
31.6M
    }
463
31.6M
    return false;
464
31.6M
  }
bool hb_sorted_array_t<OT::VariationSelectorRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
26.2k
  {
438
26.2k
    unsigned pos;
439
440
26.2k
    if (bsearch_impl (x, &pos))
441
0
    {
442
0
      if (i)
443
0
  *i = pos;
444
0
      return true;
445
0
    }
446
447
26.2k
    if (i)
448
26.2k
    {
449
26.2k
      switch (not_found)
450
26.2k
      {
451
26.2k
  case HB_NOT_FOUND_DONT_STORE:
452
26.2k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
26.2k
      }
462
26.2k
    }
463
26.2k
    return false;
464
26.2k
  }
bool hb_sorted_array_t<OT::EncodingRecord const>::bfind<OT::EncodingRecord>(OT::EncodingRecord const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
75.3k
  {
438
75.3k
    unsigned pos;
439
440
75.3k
    if (bsearch_impl (x, &pos))
441
12.5k
    {
442
12.5k
      if (i)
443
12.5k
  *i = pos;
444
12.5k
      return true;
445
12.5k
    }
446
447
62.8k
    if (i)
448
62.8k
    {
449
62.8k
      switch (not_found)
450
62.8k
      {
451
62.8k
  case HB_NOT_FOUND_DONT_STORE:
452
62.8k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
62.8k
      }
462
62.8k
    }
463
62.8k
    return false;
464
62.8k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::CmapSubtableLongGroup const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
bool hb_sorted_array_t<OT::OS2Range const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
199k
  {
438
199k
    unsigned pos;
439
440
199k
    if (bsearch_impl (x, &pos))
441
199k
    {
442
199k
      if (i)
443
199k
  *i = pos;
444
199k
      return true;
445
199k
    }
446
447
0
    if (i)
448
0
    {
449
0
      switch (not_found)
450
0
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
0
      }
462
0
    }
463
0
    return false;
464
0
  }
bool hb_sorted_array_t<OT::UnicodeValueRange const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
26.2k
  {
438
26.2k
    unsigned pos;
439
440
26.2k
    if (bsearch_impl (x, &pos))
441
0
    {
442
0
      if (i)
443
0
  *i = pos;
444
0
      return true;
445
0
    }
446
447
26.2k
    if (i)
448
0
    {
449
0
      switch (not_found)
450
0
      {
451
0
  case HB_NOT_FOUND_DONT_STORE:
452
0
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
0
      }
462
0
    }
463
26.2k
    return false;
464
26.2k
  }
bool hb_sorted_array_t<OT::UVSMapping const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
26.2k
  {
438
26.2k
    unsigned pos;
439
440
26.2k
    if (bsearch_impl (x, &pos))
441
0
    {
442
0
      if (i)
443
0
  *i = pos;
444
0
      return true;
445
0
    }
446
447
26.2k
    if (i)
448
26.2k
    {
449
26.2k
      switch (not_found)
450
26.2k
      {
451
26.2k
  case HB_NOT_FOUND_DONT_STORE:
452
26.2k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
26.2k
      }
462
26.2k
    }
463
26.2k
    return false;
464
26.2k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseGlyphRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::SVGDocumentIndexEntry const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::ClipRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::cff1::accelerator_t::gname_t>::bfind<OT::cff1::accelerator_t::gname_t>(OT::cff1::accelerator_t::gname_t const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::VertOriginMetric const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
bool hb_sorted_array_t<OT::BaseScriptRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
416k
  {
438
416k
    unsigned pos;
439
440
416k
    if (bsearch_impl (x, &pos))
441
0
    {
442
0
      if (i)
443
0
  *i = pos;
444
0
      return true;
445
0
    }
446
447
416k
    if (i)
448
416k
    {
449
416k
      switch (not_found)
450
416k
      {
451
416k
  case HB_NOT_FOUND_DONT_STORE:
452
416k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
416k
      }
462
416k
    }
463
416k
    return false;
464
416k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseLangSysRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::FeatMinMaxRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Tag const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::JstfLangSys> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::JstfScript> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
bool hb_sorted_array_t<LangTag const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
1.81k
  {
438
1.81k
    unsigned pos;
439
440
1.81k
    if (bsearch_impl (x, &pos))
441
692
    {
442
692
      if (i)
443
692
  *i = pos;
444
692
      return true;
445
692
    }
446
447
1.12k
    if (i)
448
1.12k
    {
449
1.12k
      switch (not_found)
450
1.12k
      {
451
1.12k
  case HB_NOT_FOUND_DONT_STORE:
452
1.12k
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
1.12k
      }
462
1.12k
    }
463
1.12k
    return false;
464
1.12k
  }
bool hb_sorted_array_t<LangTagRange const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Line
Count
Source
437
985
  {
438
985
    unsigned pos;
439
440
985
    if (bsearch_impl (x, &pos))
441
2
    {
442
2
      if (i)
443
2
  *i = pos;
444
2
      return true;
445
2
    }
446
447
983
    if (i)
448
983
    {
449
983
      switch (not_found)
450
983
      {
451
983
  case HB_NOT_FOUND_DONT_STORE:
452
983
    break;
453
454
0
  case HB_NOT_FOUND_STORE:
455
0
    *i = to_store;
456
0
    break;
457
458
0
  case HB_NOT_FOUND_STORE_CLOSEST:
459
0
    *i = pos;
460
0
    break;
461
983
      }
462
983
    }
463
983
    return false;
464
983
  }
Unexecuted instantiation: bool hb_sorted_array_t<sid_to_gid_t const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
465
  template <typename T, typename ...Ts>
466
  bool bsearch_impl (const T &x, unsigned *pos, Ts... ds) const
467
69.8M
  {
468
69.8M
    return hb_bsearch_impl (pos,
469
69.8M
          x,
470
69.8M
          this->arrayZ,
471
69.8M
          this->length,
472
69.8M
          sizeof (Type),
473
69.8M
          _hb_cmp_method<T, Type, Ts...>,
474
69.8M
          std::forward<Ts> (ds)...);
475
69.8M
  }
Unexecuted instantiation: bool hb_sorted_array_t<AAT::FeatureName const>::bsearch_impl<hb_aat_layout_feature_type_t>(hb_aat_layout_feature_type_t const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<hb_aat_feature_mapping_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t const>::bsearch_impl<hb_aat_map_builder_t::feature_info_t>(hb_aat_map_builder_t::feature_info_t const&, unsigned int*) const
bool hb_sorted_array_t<hb_bit_set_t::page_map_t const>::bsearch_impl<hb_bit_set_t::page_map_t>(hb_bit_set_t::page_map_t const&, unsigned int*) const
Line
Count
Source
467
30.3M
  {
468
30.3M
    return hb_bsearch_impl (pos,
469
30.3M
          x,
470
30.3M
          this->arrayZ,
471
30.3M
          this->length,
472
30.3M
          sizeof (Type),
473
30.3M
          _hb_cmp_method<T, Type, Ts...>,
474
30.3M
          std::forward<Ts> (ds)...);
475
30.3M
  }
bool hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
2.94M
  {
468
2.94M
    return hb_bsearch_impl (pos,
469
2.94M
          x,
470
2.94M
          this->arrayZ,
471
2.94M
          this->length,
472
2.94M
          sizeof (Type),
473
2.94M
          _hb_cmp_method<T, Type, Ts...>,
474
2.94M
          std::forward<Ts> (ds)...);
475
2.94M
  }
bool hb_sorted_array_t<OT::HBGlyphID16 const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
3.33M
  {
468
3.33M
    return hb_bsearch_impl (pos,
469
3.33M
          x,
470
3.33M
          this->arrayZ,
471
3.33M
          this->length,
472
3.33M
          sizeof (Type),
473
3.33M
          _hb_cmp_method<T, Type, Ts...>,
474
3.33M
          std::forward<Ts> (ds)...);
475
3.33M
  }
bool hb_sorted_array_t<AAT::KernPair const>::bsearch_impl<AAT::hb_glyph_pair_t>(AAT::hb_glyph_pair_t const&, unsigned int*) const
Line
Count
Source
467
152k
  {
468
152k
    return hb_bsearch_impl (pos,
469
152k
          x,
470
152k
          this->arrayZ,
471
152k
          this->length,
472
152k
          sizeof (Type),
473
152k
          _hb_cmp_method<T, Type, Ts...>,
474
152k
          std::forward<Ts> (ds)...);
475
152k
  }
bool hb_sorted_array_t<hb_ot_map_t::feature_map_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
128k
  {
468
128k
    return hb_bsearch_impl (pos,
469
128k
          x,
470
128k
          this->arrayZ,
471
128k
          this->length,
472
128k
          sizeof (Type),
473
128k
          _hb_cmp_method<T, Type, Ts...>,
474
128k
          std::forward<Ts> (ds)...);
475
128k
  }
bool hb_sorted_array_t<hb_bit_set_t::page_map_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
81.1k
  {
468
81.1k
    return hb_bsearch_impl (pos,
469
81.1k
          x,
470
81.1k
          this->arrayZ,
471
81.1k
          this->length,
472
81.1k
          sizeof (Type),
473
81.1k
          _hb_cmp_method<T, Type, Ts...>,
474
81.1k
          std::forward<Ts> (ds)...);
475
81.1k
  }
bool hb_sorted_array_t<OT::Record<OT::LangSys> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
49.4k
  {
468
49.4k
    return hb_bsearch_impl (pos,
469
49.4k
          x,
470
49.4k
          this->arrayZ,
471
49.4k
          this->length,
472
49.4k
          sizeof (Type),
473
49.4k
          _hb_cmp_method<T, Type, Ts...>,
474
49.4k
          std::forward<Ts> (ds)...);
475
49.4k
  }
bool hb_sorted_array_t<OT::Record<OT::Script> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
49.6k
  {
468
49.6k
    return hb_bsearch_impl (pos,
469
49.6k
          x,
470
49.6k
          this->arrayZ,
471
49.6k
          this->length,
472
49.6k
          sizeof (Type),
473
49.6k
          _hb_cmp_method<T, Type, Ts...>,
474
49.6k
          std::forward<Ts> (ds)...);
475
49.6k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::Feature> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
bool hb_sorted_array_t<OT::TableRecord const>::bsearch_impl<OT::Tag>(OT::Tag const&, unsigned int*) const
Line
Count
Source
467
31.9M
  {
468
31.9M
    return hb_bsearch_impl (pos,
469
31.9M
          x,
470
31.9M
          this->arrayZ,
471
31.9M
          this->length,
472
31.9M
          sizeof (Type),
473
31.9M
          _hb_cmp_method<T, Type, Ts...>,
474
31.9M
          std::forward<Ts> (ds)...);
475
31.9M
  }
bool hb_sorted_array_t<OT::VariationSelectorRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
26.2k
  {
468
26.2k
    return hb_bsearch_impl (pos,
469
26.2k
          x,
470
26.2k
          this->arrayZ,
471
26.2k
          this->length,
472
26.2k
          sizeof (Type),
473
26.2k
          _hb_cmp_method<T, Type, Ts...>,
474
26.2k
          std::forward<Ts> (ds)...);
475
26.2k
  }
bool hb_sorted_array_t<OT::EncodingRecord const>::bsearch_impl<OT::EncodingRecord>(OT::EncodingRecord const&, unsigned int*) const
Line
Count
Source
467
75.3k
  {
468
75.3k
    return hb_bsearch_impl (pos,
469
75.3k
          x,
470
75.3k
          this->arrayZ,
471
75.3k
          this->length,
472
75.3k
          sizeof (Type),
473
75.3k
          _hb_cmp_method<T, Type, Ts...>,
474
75.3k
          std::forward<Ts> (ds)...);
475
75.3k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::CmapSubtableLongGroup const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
bool hb_sorted_array_t<OT::OS2Range const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
199k
  {
468
199k
    return hb_bsearch_impl (pos,
469
199k
          x,
470
199k
          this->arrayZ,
471
199k
          this->length,
472
199k
          sizeof (Type),
473
199k
          _hb_cmp_method<T, Type, Ts...>,
474
199k
          std::forward<Ts> (ds)...);
475
199k
  }
bool hb_sorted_array_t<OT::UnicodeValueRange const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
26.2k
  {
468
26.2k
    return hb_bsearch_impl (pos,
469
26.2k
          x,
470
26.2k
          this->arrayZ,
471
26.2k
          this->length,
472
26.2k
          sizeof (Type),
473
26.2k
          _hb_cmp_method<T, Type, Ts...>,
474
26.2k
          std::forward<Ts> (ds)...);
475
26.2k
  }
bool hb_sorted_array_t<OT::UVSMapping const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
26.2k
  {
468
26.2k
    return hb_bsearch_impl (pos,
469
26.2k
          x,
470
26.2k
          this->arrayZ,
471
26.2k
          this->length,
472
26.2k
          sizeof (Type),
473
26.2k
          _hb_cmp_method<T, Type, Ts...>,
474
26.2k
          std::forward<Ts> (ds)...);
475
26.2k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseGlyphRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::SVGDocumentIndexEntry const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::ClipRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::cff1::accelerator_t::gname_t>::bsearch_impl<OT::cff1::accelerator_t::gname_t>(OT::cff1::accelerator_t::gname_t const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::VertOriginMetric const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
bool hb_sorted_array_t<OT::BaseScriptRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
416k
  {
468
416k
    return hb_bsearch_impl (pos,
469
416k
          x,
470
416k
          this->arrayZ,
471
416k
          this->length,
472
416k
          sizeof (Type),
473
416k
          _hb_cmp_method<T, Type, Ts...>,
474
416k
          std::forward<Ts> (ds)...);
475
416k
  }
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseLangSysRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::FeatMinMaxRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Tag const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::JstfLangSys> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::JstfScript> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
bool hb_sorted_array_t<LangTag const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
1.81k
  {
468
1.81k
    return hb_bsearch_impl (pos,
469
1.81k
          x,
470
1.81k
          this->arrayZ,
471
1.81k
          this->length,
472
1.81k
          sizeof (Type),
473
1.81k
          _hb_cmp_method<T, Type, Ts...>,
474
1.81k
          std::forward<Ts> (ds)...);
475
1.81k
  }
bool hb_sorted_array_t<LangTagRange const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Line
Count
Source
467
985
  {
468
985
    return hb_bsearch_impl (pos,
469
985
          x,
470
985
          this->arrayZ,
471
985
          this->length,
472
985
          sizeof (Type),
473
985
          _hb_cmp_method<T, Type, Ts...>,
474
985
          std::forward<Ts> (ds)...);
475
985
  }
Unexecuted instantiation: bool hb_sorted_array_t<sid_to_gid_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
476
};
477
template <typename T> inline hb_sorted_array_t<T>
478
hb_sorted_array (T *array, unsigned int length)
479
39.1M
{ return hb_sorted_array_t<T> (array, length); }
Unexecuted instantiation: hb_sorted_array_t<AAT::FeatureName const> hb_sorted_array<AAT::FeatureName const>(AAT::FeatureName const*, unsigned int)
hb_sorted_array_t<OT::HBGlyphID16 const> hb_sorted_array<OT::HBGlyphID16 const>(OT::HBGlyphID16 const*, unsigned int)
Line
Count
Source
479
3.34M
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const> hb_sorted_array<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const*, unsigned int)
Line
Count
Source
479
2.94M
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<AAT::KernPair const> hb_sorted_array<AAT::KernPair const>(AAT::KernPair const*, unsigned int)
Line
Count
Source
479
152k
{ return hb_sorted_array_t<T> (array, length); }
Unexecuted instantiation: hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> > hb_sorted_array<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Feature> const> hb_sorted_array<OT::Record<OT::Feature> const>(OT::Record<OT::Feature> const*, unsigned int)
hb_sorted_array_t<OT::Record<OT::LangSys> const> hb_sorted_array<OT::Record<OT::LangSys> const>(OT::Record<OT::LangSys> const*, unsigned int)
Line
Count
Source
479
49.4k
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<OT::Record<OT::Script> const> hb_sorted_array<OT::Record<OT::Script> const>(OT::Record<OT::Script> const*, unsigned int)
Line
Count
Source
479
49.6k
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<OT::TableRecord const> hb_sorted_array<OT::TableRecord const>(OT::TableRecord const*, unsigned int)
Line
Count
Source
479
31.9M
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<OT::VariationSelectorRecord const> hb_sorted_array<OT::VariationSelectorRecord const>(OT::VariationSelectorRecord const*, unsigned int)
Line
Count
Source
479
32.4k
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<OT::UVSMapping const> hb_sorted_array<OT::UVSMapping const>(OT::UVSMapping const*, unsigned int)
Line
Count
Source
479
26.2k
{ return hb_sorted_array_t<T> (array, length); }
hb_sorted_array_t<OT::EncodingRecord const> hb_sorted_array<OT::EncodingRecord const>(OT::EncodingRecord const*, unsigned int)
Line
Count
Source
479
81.6k
{ return hb_sorted_array_t<T> (array, length); }
Unexecuted instantiation: hb_sorted_array_t<OT::CmapSubtableLongGroup const> hb_sorted_array<OT::CmapSubtableLongGroup const>(OT::CmapSubtableLongGroup const*, unsigned int)
hb_sorted_array_t<OT::UnicodeValueRange const> hb_sorted_array<OT::UnicodeValueRange const>(OT::UnicodeValueRange const*, unsigned int)
Line
Count
Source
479
26.2k
{ return hb_sorted_array_t<T> (array, length); }
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord> hb_sorted_array<OT::VariationSelectorRecord>(OT::VariationSelectorRecord*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::BaseGlyphPaintRecord const> hb_sorted_array<OT::BaseGlyphPaintRecord const>(OT::BaseGlyphPaintRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::BaseGlyphRecord const> hb_sorted_array<OT::BaseGlyphRecord const>(OT::BaseGlyphRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::SVGDocumentIndexEntry const> hb_sorted_array<OT::SVGDocumentIndexEntry const>(OT::SVGDocumentIndexEntry const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::ClipRecord const> hb_sorted_array<OT::ClipRecord const>(OT::ClipRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::VertOriginMetric const> hb_sorted_array<OT::VertOriginMetric const>(OT::VertOriginMetric const*, unsigned int)
hb_sorted_array_t<OT::BaseScriptRecord const> hb_sorted_array<OT::BaseScriptRecord const>(OT::BaseScriptRecord const*, unsigned int)
Line
Count
Source
479
416k
{ return hb_sorted_array_t<T> (array, length); }
Unexecuted instantiation: hb_sorted_array_t<OT::BaseLangSysRecord const> hb_sorted_array<OT::BaseLangSysRecord const>(OT::BaseLangSysRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::FeatMinMaxRecord const> hb_sorted_array<OT::FeatMinMaxRecord const>(OT::FeatMinMaxRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Tag const> hb_sorted_array<OT::Tag const>(OT::Tag const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::JstfLangSys> const> hb_sorted_array<OT::Record<OT::JstfLangSys> const>(OT::Record<OT::JstfLangSys> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::JstfScript> const> hb_sorted_array<OT::Record<OT::JstfScript> const>(OT::Record<OT::JstfScript> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16> hb_sorted_array<OT::HBGlyphID16>(OT::HBGlyphID16*, unsigned int)
480
template <typename T, unsigned int length_> inline hb_sorted_array_t<T>
481
hb_sorted_array (T (&array_)[length_])
482
201k
{ return hb_sorted_array_t<T> (array_); }
Unexecuted instantiation: hb_sorted_array_t<hb_aat_feature_mapping_t const> hb_sorted_array<hb_aat_feature_mapping_t const, 78u>(hb_aat_feature_mapping_t const (&) [78u])
hb_sorted_array_t<OT::OS2Range const> hb_sorted_array<OT::OS2Range const, 169u>(OT::OS2Range const (&) [169u])
Line
Count
Source
482
199k
{ return hb_sorted_array_t<T> (array_); }
hb_sorted_array_t<LangTag const> hb_sorted_array<LangTag const, 204u>(LangTag const (&) [204u])
Line
Count
Source
482
687
{ return hb_sorted_array_t<T> (array_); }
hb_sorted_array_t<LangTag const> hb_sorted_array<LangTag const, 779u>(LangTag const (&) [779u])
Line
Count
Source
482
1.13k
{ return hb_sorted_array_t<T> (array_); }
hb_sorted_array_t<LangTagRange const> hb_sorted_array<LangTagRange const, 137u>(LangTagRange const (&) [137u])
Line
Count
Source
482
985
{ return hb_sorted_array_t<T> (array_); }
Unexecuted instantiation: hb_sorted_array_t<sid_to_gid_t const> hb_sorted_array<sid_to_gid_t const, 165u>(sid_to_gid_t const (&) [165u])
Unexecuted instantiation: hb_sorted_array_t<sid_to_gid_t const> hb_sorted_array<sid_to_gid_t const, 86u>(sid_to_gid_t const (&) [86u])
483
484
template <typename T>
485
inline bool hb_array_t<T>::operator == (const hb_array_t<T> &o) const
486
0
{
487
0
  if (o.length != this->length) return false;
488
0
  for (unsigned int i = 0; i < this->length; i++) {
489
0
    if (this->arrayZ[i] != o.arrayZ[i]) return false;
490
0
  }
491
0
  return true;
492
0
}
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const>::operator==(hb_array_t<OT::HBFixed<OT::NumType<true, short, 2u>, 14u> const> const&) const
Unexecuted instantiation: hb_array_t<int const>::operator==(hb_array_t<int const> const&) const
Unexecuted instantiation: hb_array_t<bool const>::operator==(hb_array_t<bool const> const&) const
493
template <>
494
inline bool hb_array_t<const char>::operator == (const hb_array_t<const char> &o) const
495
5.51k
{
496
5.51k
  if (o.length != this->length) return false;
497
5.51k
  return 0 == hb_memcmp (arrayZ, o.arrayZ, length);
498
5.51k
}
499
template <>
500
inline bool hb_array_t<const unsigned char>::operator == (const hb_array_t<const unsigned char> &o) const
501
0
{
502
0
  if (o.length != this->length) return false;
503
0
  return 0 == hb_memcmp (arrayZ, o.arrayZ, length);
504
0
}
505
506
507
/* Specialize hash() for byte arrays. */
508
509
#ifndef HB_OPTIMIZE_SIZE_MORE
510
template <>
511
inline uint32_t hb_array_t<const char>::hash () const
512
87.4k
{
513
  // https://github.com/harfbuzz/harfbuzz/pull/4228
514
87.4k
  return fasthash32(arrayZ, length, 0xf437ffe6 /* magic? */);
515
87.4k
}
516
517
template <>
518
inline uint32_t hb_array_t<const unsigned char>::hash () const
519
0
{
520
0
  // https://github.com/harfbuzz/harfbuzz/pull/4228
521
0
  return fasthash32(arrayZ, length, 0xf437ffe6 /* magic? */);
522
0
}
523
#endif
524
525
526
typedef hb_array_t<const char> hb_bytes_t;
527
typedef hb_array_t<const unsigned char> hb_ubytes_t;
528
529
530
531
#endif /* HB_ARRAY_HH */